Du har allerede lært at definere og bruge dine egne variable.
Nu skal vi lære om to specielle variable:
mouseX og mouseY.
Du behøver ikke selv at definere disse to variable,
og faktisk skal du aldrig gøre det, for de eksisterer allerede.
Ser du, programmet sætter automatisk værdien af disse variable i baggrunden,
og sørger for at værdien af mouseX er altid x positionen af din musemarkør,
og at værdien af mouseY er altid y positionen af din musemarkør.
Det gør det rigtig nemt at lave seje, interaktive ting
baseret på musen's position.
Lad os se på den ellipse jeg tegner her.
Lige nu, tegner jeg den altid ved 200, 200.
Hvis jeg bruger mouseX og mouseY, disse specielle variable,
så kan jeg faktisk tegne den ved mouseX og mouseY.
Hvis jeg så nu forsøger at bevæge musen over tegneområdet, kan du se
at ellipsen altid bliver tegnet hvor min musemarkør er --
så den følger min muse rundt.
Det er ret sejt; kan du se hvad jeg tegner? Juhuuu!
Hvis du bruger mouseX og mouseY, skal du sørge for at
du bruger dem inde i draw-funktionen
for se hvad der sker
hvis vi flytter disse to linjer kode uden for draw = function ().
Kan du se?
Nu vil koden her kun blive kørt én gang,
så den her ellipse bliver kun tegnet en gang,
og den bliver tegnet der hvor musen nu lige var
helt, helt i starten af programmet
Det er derfor vi bliver nødt til bruge dem inde i draw = function ().
fordi draw = function () er den funktion
der bliver kaldt igen og igen mens vores program kører.
Så vi vil have at når den bliver kaldt, så ser den på den nuværende værdi
af mouseX og mouseY, og derefter tegnet den ellipsen på den position.
Hvis du tænker over det, så er det lidt ligesom en animation --
det ændrer sig over tid, bare på en anden måde.
Okay, nu kan vi gøre alle mulige sjove ting.
Hvad hvis, i stedet for at tegne den ved mouseX og mouseY,
så tegne vi den stadig ved mouseX, men holdt mouseY fast ved 300?
Nu kan du se at ellipsen kun følger mit x koordinat,
og ignorer hvad jeg gør i y-retningen.
Hvad nu hvis jeg går tilbage, og tegner ved mouseX og mouseY*,
men fjerner baggrunden, bare ved at udkommentere det?
Woo! Se nu, jeg har fået en funky malerpensel!
Det er ret sejt.
Eller, jeg kunne endda ændre disse variable.
Lad os få baggrunden tilbage.
Jeg ændrer de variable her, mouseX og mouseY,
og ser hvad der sker.
Nu føles det hele rigtig, rigtig mærkeligt.
Jeg kan styre med musen, men der sker det modsatte
af hvad jeg forventer den gør.
Men det er sejt, du kunne måske forestille dig et helt spil
der handler om at tegne noget eller gøre noget
mens man bruger inverteret musestyring
Det var alt om mouseX og mouseY -- faktisk ret sjovt. Hav det godt!