Wie programmiert man auf PROCESSING ein Art Frage Antwort Spiel?

2 Antworten

Das solltest du selbst programmieren.

Als Speicheraggregat solltest du so eine Liste oder ein Array verwenden. Für dessen Elementtyp erstellst du dir eine neue Klasse:

class QuestionInfo {

int rightAnswerIndex;
String[] answers;
String question;

// etc.
}

(S. für Klassen hier: https://processing.org/reference/class.html)

Wenn du hingegen erwartest, dass der Nutzer eine Antwort selbst eingeben muss, ohne Optionen vorgegeben zu bekommen, gestaltet sich deine Klasse natürlich simpler als oben.

Die Antwortboxen sowie den Next-Button kannst du dir jeweils als Rechtecke zeichnen lassen. Wie du Text auf dem Bildschirm ausgibst, setze ich ebenso voraus, ansonsten gibt es die Dokumentation.

Nach Klick auf dem Screen musst du dann noch überprüfen, in welchen x- und y-Intervall sich die Mausposition jeweils befand. Die Rechtecke deiner Antwortboxen sowie dein Button geben diese Intervalle vor, die zu überprüfen sind.

Um bei den Fragen weiterzukommen, speicherst du dir einfach den aktuellen Index und setzt diesen mit jedem Buttonklick höher. Beim darauffolgenden Draw-Call kannst du so bestimmen, welche Frage nun gerendert werden soll.

Ist ganz ez...

Int frageNummer = 1;
if(frageNummer == 1 && mousePressed && HIER DIE COORDINATEN EINTRAGEN, DIE MWN ANTWORTKÄSTCHEN ZUGESCHRIEBEN SIND){
textSize(50);
text("Richtig", COORDINATEN);
frageNummer = NÄCHSTE FRAGE;
}

Das halt für jede Frage machen

pondycherry1999  10.05.2017, 21:34

Ergänzung: if(frageNummer == 1){ die Auswahlmöglichkeiten...(gezeich); DER TEXT DET OBEN STEHT KOMMT JETZT... BEI DEM IF ABER OHNE "frageNummer = 1"

0
pondycherry1999  10.05.2017, 21:47

PS. bin erfahrener processing Programmierer....hab abwr vor 2 Monaten mit Java angefangen...

0
regex9  11.05.2017, 22:22
@pondycherry1999

Dafür, dass du dich als erfahren bezeichnest, ist dein Code aber noch zu fehlerhaft. Würde man den Anweisungen in deinem Platzhaltern wirklich Folge leisten, würde man auf eine fehlerhafte if-Kondition kommen. Wenn, müssen die Koordinaten mit etwas verglichen werden. Am besten wäre der Check, ob sich die geklickte Koordinate innerhalb eines Bereichs befindet.

0