Kategori:Spil Bruger-input

Fra HTX Arduino
(Omdirigeret fra Kategori:Mus i Processing)
Spring til navigation Spring til søgning

Det typiske bruger-input til et spil er enten musen eller tastaturet, og somme tider i kombination.

Muse-events

Beskrivelserne her tager udgangspunkt i eksemplerne på processing.org[1] og specielt i omtalen af musefunktioner på processing.org[2].

Den bedste måde at registrere hændelser på musen (muse-events) er ved at oprette event-handler funktioner, der kaldes når der sker noget med musen.

De to letteste at bruge er mousePressed() og mouseReleased(), der kaldes når musen hhv. trykkes ned og slippes igen. Her skal man være opmærksom på at det er alle museknapper der aktiverer de to funktioner, så hvis man kun ønsker at modtage venstre-klik, så skal man kigge på mouseButton, der kan være LEFT og RIGHT.

Man kan også bruge mouseClicked() der kommer efter både mousePressed() og Mouse Released(). Der er en væsentlig forskel, eventen kommer ikke hvis musen bevæges mens den er klikket - den holder stadig styr på hvilken museknap det er der er aktiveret.

To andre event-handlere der kan anvendes er mouseMoved() som kaldes hver gang musen flytter sig inde i program-vinduet, mens der ikke er museknapper aktiveret og mouseDragged() der kaldes hver gang musen flytter sig, mens en museknap er aktiveret.

Muse-variabler

De mest anvendelige variabler er mouseX og mouseY som tilsammen angiver hvor musen er henne i vinduet. Bevæger man musen uden for vinduet, så vil mouseX og mouseY bevare den sidste værdi de fik, mens musen var inden for vinduet.

Som nævnt er mouseButton anvendelig, hvis man ønsker at skelne mellem museknapperne, eller at man kun ønsker at registrere noget på venstreklik.

Der er også en variabel mousePressed, som giver status på om museknappen er trykket ned eller ej (true / false);

Keyboard-events

For at få det rigtige tidspunkt at aflæse keyboardet på, så er det bedst at anvende event-handlerne keyPressed(), keyReleased() og keyTyped().

keyPressed() aktiveres når alle taster trykkes ned, også Shift, Ctrl og funktionstaster.

keyReleased() aktiveres på samme måde som keyPressed(), men blot når tasten slippes.

keyTyped() aktives når en normal-tast er registreret helt (efter keyReleased()) - denne event-handler aktiveres ikke på special-taster (pile, funktioner, Shift, Ctrl osv.)

Keyboard-variabler

Keyboardets resultater kan aflæses i de 3 system-variabler key, keyCode og keyPressed.

key angiver den karakter de normale taster kommer med.

keyCode angiver en tal-kode for alle taster - de normale taster kommer først med den, når tasten er sluppet igen, mens special-taster kommer når de trykkes ned.

keyPressed er af typen boolean, og er true når en hvilken som helst tast er trykket ned.

Referencer

  1. Eksempler på processing.org
  2. Musefunktioner på processing.org
Spiludvikling - Processing
Bruger-input mousePressed() - mouseReleased() - mouseClicked() - mouseMoved() - mouseDragged() - mouseX og mouseY - mouseButton - mousePressed - keyPressed() - keyReleased() - keyTyped() - key - keyCode - keyPressed - Flere taster
Data-model Objekt Placering - Objekt Hastighed - Spilleplade - Flere Objekter - Array i Spil - 2-dimensionelt Array - Spil Hop - Highscore - Start-skærm
Visning Rektangel - Cirkel - Spilleplade - Grafikobjekter - Farver i Spil - Kollision
Spil-tid frameRate - Objekter i Bevægelse - Spilletid - Spil Opdatering - Udvikling i Tid
Objekter Objekter i Bevægelse


Programmering
Programmeringsbegreber Initialisering - Sekvens - Algoritme - Hexadecimal - Det Binære Talsystem - HEX-fil - ASCII - Interrupt - Events - Styresystem - Autocomplete - Selvstudie Programmering - Hour Of Code - Stepwise Improvement - Syntaks - Prog-links - Microcontroller - ChatGPT
Grundlæggende C C float - C double - C-løkker - Datatyper - Konstanter - Regnearter - Funktioner - Return - Returværdi - Rekursion - Semikolon
Variabel Typer boolean - byte - int - unsigned int - word - long - unsigned long - short - float - double - char - unsigned char - string - char array - String - object - Array - 2-dimensionelt Array - void
Program-klassikere Polling - State-machine - Trykknap - Forkant - Bagkant - Prel
Arduino Arduino til Programmering - C til Arduino - Programmering Shield - Arduino PC-software - Arduino Udviklingsmiljø - Arduino Pin Library - Funktion - Arduino Seriel - Arduino String - Arduino String Split - Arduino StateChangeDetection - setup() - loop() - Compilerdirektiver - Asynkron kommunikation - millis() - micros() - Scratch for Arduino - Send fra Arduino til Excel - [[]] - [[]]
Processing Grafik i Processing‎ - Keyboard i Processing - Mus i Processing‎ - Tid i Processing‎ - Draw() - Setup() - Tal Input til Processing - Syntaksfarvning - Kommunikation fra Arduino til Processing - Kommunikation fra Processing til Arduino
javaScript Javascript input‎ - Javascript output‎ - Javascript strukturer‎ - Javascript syntaks‎ - Tid i javaScript - Objekt‎ - AJAX
Serverprogrammering PHP - MySQL - Task Scheduler - WeMOS
PIC JAL - [[]]
Scratch for Arduino S4A Installation - S4A programmering - S4A undervisningsforløb - S4A begrænsninger
Program Dokumentation Algoritme - Flowchart - Pseudokode - Datastruktur - Dataabstraktion - Pulsplaner - Program-kommentar - Teori - Test - UML

Sider i kategorien "Spil Bruger-input"

De 15 følgende sider er i denne kategori, ud af i alt 15: