Maken van een Pixel scherm In Batch (5 / 9 stap)

Stap 5: Inzicht in de Code: de Setup en LawLoop


Het programma script heeft twee hoofdgedeelten, LawLoop en ScreenLoop.  De eerste, LawLoop, is verantwoordelijk voor het opzetten van het programma tot de functie.  Zij moet aanwijzen welk symbool wat en de beginwaarden die vorm het scherm, en vervolgens alle de honderden variabelen stelt om hun juiste symbolen bevatten.  Het kijkt als dit:

uitschakelen
titel scherm
kleur 0a

set/a breedte = 40
set/a hoogte = 20
lastlaw-set/a = % van de breedte * hoogte %
bottombarrier-set/a = % lastlaw % - breedte %
set/a wet = 0
sidea-set/a = breedte % + 1
sideb-set/a = breedte % * 2

set marker = O
set blok = #
Stel leeg =-
instellen achter = leeg %
set/a plaats = 222
ECHO.
titel scherm % breedte %x % hoogte
: LawLoop
als % recht % == % lastlaw % goto ObjectPlace
set/a wet = % + 1 van de wet

als % recht % LEQ % breedte % ()
set v wet % = procent barrière
goto LawLoop
)

als % recht % GTR % bottombarrier % ()
set v wet % = procent barrière
goto LawLoop
)

als % recht % == % sidea % (
set v wet % = procent barrière
sidea-set/a = % sidea % + % van de breedte
goto LawLoop
)

als % recht % == % sideb % (
set v wet % = procent barrière
sideb-set/a = % sideb % + % van de breedte
ECHO *
goto LawLoop
) anders ()
set v wet % = leeg %
goto LawLoop
)

: ObjectPlace

set v plaats % = procent marker

Het eerste deel is verantwoordelijk voor het aanwijzen van de betekenis van de symbolen en de beginwaarden % sidea % % sideb %, plaats % en % van de wet.

set/a breedte = 40
set/a hoogte = 20
lastlaw-set/a = % van de breedte * hoogte %
bottombarrier-set/a = % lastlaw % - breedte %
set/a wet = 0
sidea-set/a = breedte % + 1
sideb-set/a = breedte % * 2

set marker = O
set blok = #
Stel leeg =-
instellen achter = leeg %
set/a plaats = 222
ECHO.

In het script, zijn symbolen door variabelen aangewezen.  De cursor is marker %, en zoals ik het, marker geschreven heb % = O.  Verderop in de code, wanneer u van v343 naar v344 verplaatsen en het programma v344 met ingesteld moet op weergave van O, de cursor-symbool, gebeurt er dus met behulp van

set v344 = % van de markering

Sinds marker % = O, % v344% bevat ook O.  Ik doe dit zodat als u wijzigen het symbool voor een bepaalde functie wilt, bijvoorbeeld om te gebruiken zodat de cursor in plaats van O, u alleen moet O @ in deze bovenste stukje code wijzigen in plaats van te jagen door middel van het script voor elke regel die zich met de cursor bezighoudt.

* Opmerking: het programma kan niet begrijpen een spatie (spatiebalk) als een symbool.  Als u een gebruikt, wordt het programma zal verpletteren.  Ik gebruik "-" in plaats daarvan, en het maakt het scherm gemakkelijk te lezen.

Een ander belangrijk kenmerk van dit deel van de code is de breedte van de % en % hoogte % variabelen, die bevatten, derp, de breedte en hoogte van het scherm en instellen van het scherm en verplaats de cursor door het hele programma worden gebruikt.

LawLoop is de belangrijkste stuk van de installatiefase.  Haar taak is om nemen de variabele van elke pixel op het scherm, van v1% naar v800% voor onze 40 x 20-scherm, en zet deze met het passende symbool.  Het doet dit op basis van het nummer van de variabele, dat is waarom alle pixels heten "v #."  recht % begint bij 0 en telt omhoog, waardoor de eerste variabele v1.  De code werkt als volgt:

set v wet % = procent-symbool

Aan het begin, wet % gelijk is aan 1, dus deze regel echt zegt

instellen van v1 = symbool %

wordt wat het als symbool/vervolgens voorwaarden aanbesteding met symbool %.  Na instelling v1, de code loops en voegt 1 tot wet %.  Nu % recht % = 2 en de code leest

instellen van v2 = symbool %

recht % blijft tellen omhoog totdat de laatste variabele, v800 voor 40 x 20 wordt bereikt, op dat moment de code springt naar ScreenLoop en begint te lopen.

Wat het scherm kijkt als zodra instellen als/dan verklaringen hangt.  Het programma maakt gebruik van de % wet % getallen om te bepalen welke pixel wat moet bevatten.  Er zijn twee secties van dit. de belangrijkste LawLoop en ObjectPlace.

: LawLoop
als % recht % == % lastlaw % goto ObjectPlace
set/a wet = % + 1 van de wet

als % recht % LEQ % breedte % ()
set v wet % = procent barrière
goto LawLoop
)

als % recht % GTR % bottombarrier % ()
set v wet % = procent barrière
goto LawLoop
)

als % recht % == % sidea % (
set v wet % = procent barrière
sidea-set/a = % sidea % + % van de breedte
goto LawLoop
)

als % recht % == % sideb % (
set v wet % = procent barrière
sideb-set/a = % sideb % + % van de breedte
ECHO *
goto LawLoop
) anders ()
set v wet % = leeg %
goto LawLoop
)

LawLoop is ontworpen om het maken van de basisprincipes van het scherm: een rand aan van barrière symbolen omliggende lege ruimte.  Het heeft vier belangrijkste stukjes code bijhouden van de bouw van de segmenten van de barrière rond de grens met behulp van de variabele % wet % en als/dan verklaringen.  De eerste twee belemmeren de boven- en onderkant door belemmeringen in elke variabele met een % wet % nummer dat op de bovenste of de onderste regel van het scherm geplaatst.  Voor onze 40 x 20-scherm, is de bovenste regel opgebouwd uit de pixels met % wet % nummers 1-40 (40 variabele per lijn) en de onderkant van getallen 761-800, zodat het programma in beslag

Als % % LEQ % breedte recht

en

Als % GTR % bottombarrier recht %

het instellen van een barrière op pixels in de boven- en onderste regel van het scherm.

De geleiderails zijn gemaakt met behulp van de % sidea % en % sideb % variabelen.  % sidea % regelt de linkerkant en is oorspronkelijk ingesteld op de % wet % nummer van de variabele van de vuist op de tweede regel (de eerste regel heeft zijn verzorgd met de verklaring van de LEQ).  Wanneer recht % is gelijk aan sidea %, het programma die eerste pixel ingesteld als een barrière, dan voegt 40% sidea % zodat zoals % wet % verhoogt het zal de eerste pixel van de derde regel ingesteld als een barrière, na welke een ander 40 is toegevoegd aan % sidea % voor de eerste pixel van de vierde regel, en zo verder tot de % wet % nummer plaatsen een variabele in de laatste regel van het scherm , op welk punt de GTR-instructie overneemt.  % sideb % werkt op dezelfde manier, aanwijzing van de laatste pixel op elke regel als een barrière en de rechter grens te maken.

Het laatste deel van de setup is ObjectPlace, waarin variabelen bevat symbolen voor de cursor en eventuele andere initiële voorwaarden.

: ObjectPlace
set v plaats % = procent marker

Deze regel wordt welke pixel heeft de % wet % aantal gelijk is aan de waarde % ruimte, de ruimtelijke plaats van de cursor, met het symbool voor het aanwijzen van de cursor.  U moet het programma van dit deel van de code zelf, met behulp van verklaringen als dit een omgeving te creëren op het scherm, zoals belemmeringen in het midden van het scherm.  Voor iets als het spel later, kon u verscheidene verschillende batchbestanden met lijsten van voorwaarden maken van verschillende niveaus en gebruiken "call level1.bat" Setup het niveau.

Gerelateerde Artikelen

Maken van een pull-down groen scherm muur

Maken van een pull-down groen scherm muur

met behulp van een groen scherm voor speciale effecten en fotografie is niets nieuws.  Helaas, het kan moeilijk zijn om een grote instellen.  In het verleden heb ik 10-20 minuten gewoon om mijn groen scherm.  Ik nodig ten minste één andere persoon om
Maken van een Pi thema laden scherm

Maken van een Pi thema laden scherm

Hallo allemaal!Het heeft een lange tijd niet geweest omdat we Pi day dit jaar vierden, en vandaag ga ik het maken van een thema laderscherm van Pi. Ik zal met behulp van HTML en CSS te maken. Gebruik het in al uw Pi en math thema websites!Stap 1: Hoe
Maken van een enorme 4096 LED-Display voor Retro Pixel kunst

Maken van een enorme 4096 LED-Display voor Retro Pixel kunst

Bijgewerkt maart 2016 ***Er zijn een paar manieren waarop u kunt gaan over dit project, bouwen alles vanaf nul of maak gebruik van een kit versie. Ik zal beide methoden in dit Instructable dekken. Dit Instructable omvat de installatie van een 64 x 64
Het maken van een Locker Batch-bestand.

Het maken van een Locker Batch-bestand.

Dit is een echt eenvoudig project dat je voor de lol uitproberen moet.Stap 1: Gebruik een tekst Editor.U moet worden met behulp van een teksteditor, u hoeft niet te al.Als u één download Notepad ++ nodig hier.Stap 2: Start nieuwe.Laat maken van een n
Van het scherm voor mij: het maken van een prop

Van het scherm voor mij: het maken van een prop

In dit, mijn eerste instructible, ik in detail te beschrijven hoe ik (met hulp) een variatie op een prop van de BBC-show Torchwood gemaakt.  De prop in kwestie is de "Vortex Manipulator" gevonden op de pols van Captain Jack Harkness.  Hieronder
Maken van een spel in Kladblok en nog veel veel meer

Maken van een spel in Kladblok en nog veel veel meer

Dit is mijn eerste instructable. Zo hebt u please suggesties commentaar. Laat aan de slag!Als we alle het woord Kladblok horen denken we aan sommige saai nutteloos toepassingen te noteren van spullen. Goed Kladblok is veel meer dan dat.. We kunnen co
Het maken van een nep-ID - kopiëren en wijzigen van uw kaart

Het maken van een nep-ID - kopiëren en wijzigen van uw kaart

In dit Instructable, ik zal u tonen hoe te maken van een duplicaat van in principe elke ID of andere soort kaart. Ik zal ook de methoden voor het wijzigen van deze kaart voor een soort van nieuwheid doel schetsen.U ziet ik zeg de nieuwigheid - dit is
Maken van een Blog met behulp van Blogger.com

Maken van een Blog met behulp van Blogger.com

de volgende instructies zal u tonen hoe maak je een blog met behulp van Blogger.com.U zult een e-mailadres van Google te gebruiken Blogger.comStap 1: Aanmelden voor Blogger 1. Ga naar www.blogger.com2. Voer je Google Email en wachtwoord in het vak Aa
Maken van een 3D-Printer met behulp van een CNC-router - de "Deltabot"

Maken van een 3D-Printer met behulp van een CNC-router - de "Deltabot"

Een andere mogelijke titel zou "Maak een 3D machine met behulp van een 2D machine."Dit Instructable is over het gebruik van een CNC-router en 2D-ontwerpen voor het maken van een 3D-Printer van Delta.In mijn onderzoek over 3D printers voor hobbyi
Maken van een Panorama in Photoshop (GoPro of reguliere camera's)

Maken van een Panorama in Photoshop (GoPro of reguliere camera's)

Disclaimer: Ik ben niet een Photoshop Master of iets. Ik ga proberen te geven op wat ik weet, maar als u wilt dat ingewikkeld materiaal om te werken, ik weet niet hoeveel van een hulp zal ik!Als een heads up maakte ik deze handleiding voor de fotowed
Maken van een 2.5D Parallax film

Maken van een 2.5D Parallax film

Dit instructable is te tonen de stappen voor het maken van een eenvoudige 2.5D parallax film met behulp van GIMP en Blender.Stap 1: Ontleden installatiekopie zonder submappen Voor dit project, ik gebruikte de Sgt Pepper hoes (maar gewijzigd als onder
Bouwen van een pixel nanobot

Bouwen van een pixel nanobot

helpen bij de voorbereiding jezelf voor nanotechnologie. In de nabije toekomst kan u het opbouwen van zeer kleine robots om te opereren in de microscopische en zelfs moleculaire en cellulaire ruimte.Hebt u een oude computer waarop snelle Basic of een
Maken van een Online Business Card

Maken van een Online Business Card

bent u BUSINESS?Zoals ik doe je bedrijf? Ik ben zo zakelijke dat ik nodig een visitekaartje dat er altijd was, dus mijn zakenpartners zaken met mij altijd doen kon omdat mijn bedrijf zo zakelijke heb ik niet altijd tijd om te geef ze mijn visitekaart
Het maken van een echte 3D videocamera systeem met instelbare houder

Het maken van een echte 3D videocamera systeem met instelbare houder

ik ben 3D video's schieten voor een paar maanden nu, en het ging heel goed. Maar er een groot probleem was: de houder van de videocamera. Het was een stuk aluminium met enkele gaten in het (6mm en 8mm 2,36 "en 3.15"). Ik maakte enkele mooie 3D v