Heute hab ich ein simples kleines Spiel programmiert. Hier der Quellcode plus die Erklärungen in […]
Heute war in beim BurgerKing essen. Und während ich geduldig auf meinen Hambuger + 2 Cheeseburger + 0,4 Cola wartete kam ich auf die Idee ein kleines Spiel für den TR zu programmieren.
Um es zu spielen benötigt man 2 Personen. Man legt den Taschenrechner zwischen sich.
Der eine kontrolliert seine Wand mit der 9 und 3, der andere mit der 7 und der 1.
PROGRAM:PINGO ClrHome Disp "Pingo" Disp "CODE BY DUBBEL" ClrHome [hier evt. noch weitere Informationen und Anleitung ausgeben lassen] 0->A [Geschwindigkeit mit der sich der Ball nach oben/unten bewegt] 1->B [Geschwindigkeit mit der sich der Ball nach rechts/links bewegt] 5->C [Position des Balles auf der Y-Achse] 8->D [Position des Balles auf der X-Achse] 4->E [Position der oberen Wand auf der Y-Achse] 5->F [Position der unteren Wand auf der Y-Achse] Pause Lbl A If (B=1):Then [wenn der rechte Spieler dran ist (Ball bewegt sich nach rechts)] If (G=74):Then [wenn die 9 gedrückt wurde] If (E > 1):Then [Kollisionsabfrage] E-1->E:F-1->F End End If (G=94):Then [wenn die 3 gedrückt wurde] If (F < 8):Then [Kollisionsabfrage] E+1->E:F+1->F End End End If (B=-1):Then [Wiederholung nur eben für die beiden anderen Tasten] If (G=72):Then If (E>2):Then E-1->E:F-1->F End End If (G=92):Then If (F<7):Then E+1->E:F+1->F End End End ClrHome Output(E,16,"O") [Rechte Wände] Output(F,16,"O") Output(E,1,"O") Output(F,1,"O") Output(1,1,"----------------") [Begrenzung oben/unten] Output(8,1,"----------------") If (C=E and (D=15 or D=2)):Then B*-1->B:1->A [kollision mit Wänden] End If (C=F and (D=15 or D=2)):Then B*-1->B:1->A End If (C=2 or C=7):Then A*-1->A [Kollision mit Wänden oben/unten] [A*-1->A stand hier nocheinmal - muss entfernt werden] End If (D=16 or D=1):Then Output(4,4,"GAME OVER") If(D=16):Then Output(6,7,"LINKS") Else Output(6,6,"RECHTS") End Output(7,3,"HAT GEWONNEN") PAUSE prgmPINGO End Output(1,D,"I") Output(1,D,"I") Output(C,D,"+") C+A->C:D+B->D [Update Positionen - hier vor vorher ein Fehler] Output(C,D,"*") getKey->G [Tastendrücke werden abgefangen] Goto A
Nik wegen deinem Programm . vlt 25->A getkey A:then prgmName ?
Hallo , bei mir kommt auch error domain in Zeile 41 ?
oder generel bei den output zeilen ab 40 bis 44 -.- bitte hilfe :)
also ich habe die buchstaben e und f zu 1 umgeändert jetzt klappt es aber ich sehe die 2 balken links und rechts net ^^
Ich möchte ein Spiel programmieren. Wie kann ich das machen: ”Wenn Pfeil nach oben gedrückt, dann starte das Programm PRGMname”
Würde mich über eine Antwort freuen :)
mit was gebe ich das pfeil nach rechts ein
mfg feroo
Hi feroo,
mit dem Knopf “STO” (store, speichern) direkt über dem ON/OFF Knopf unten links.
mfg Hauke
Hat jemand nen Screenshot? ;>
thx
dummadida von dsds
nej, leeder ned
Wo gibt es “and”
Danke schon im Voraus
Locke
Bei Test->Logic. Test ist zu erreichen mit 2nd+MATH. Da stehen alle logischen Operatoren. Wenn du sonst Befehle nicht findest hilft auch der Catalog unter 2nd+0 :)
Edit: Ich finds übrigens klasse, dass du mithilfst wenn andere Kommentatoren Probleme haben! :D
Man hilft sich halt :D
Und an der Stelle auch mal n´Lob an dich, ich könnte schlecht bei Fehlern helfen, wenn es diesen Blog mit den super Erklärungen nicht gäbe,
ich schätze das ganze wieß ich eh nur von diesen Tutorials :D
leider hat das nichts gebracht vieleicht hätte ich sagen sollen dass mein rechner ein problem mit dem B hat und nicht mit dem minus aber danke für deine antwort
Hmm… ist aus der Ferne schwer zu sagen, überprüfe am besten noch mal die Zeilen drumherum…
Erstmal coole Seite! Aber bei mir kommt immer Error Syntax und dann geht er zu dem B*-1!(das ist relativ am Ende) Was mache ich falsch? Benutze Ti- 84 plus Silver edition
Es gibt ja zwei Arten von Minus. Einmal z.B. 5-5, da wird 5 von 5 abgezogen. Aber wenn man nur die Zahl -5 schreiben will, dann nutzt man das “kleine Minus” als Vorzeichen, das man ganz unten links neben dem ENTER findet. Hast du da vielleicht einen Fehler? Ansonsten ist das von hier aus relativ schwer festzustellen.
hey dubbel könntest du vlt so ein ähnliches spiel enwickeln für den ti 82 stats wie der link es zeigt :https://www.youtube.com/watch?v=PAA-tKk1ty0
hey bubbel ds spiel is cool aber wenn man ein nach unten geht mit den wänden bleibt der ball immer drin hättest du ne idde wie man das anders machen könnte
Ähm,also ich habe vorhin ein spiel per computer auf meinen voyage draufgeladen…aber ich finde es nicht mehr wieder…
wie michael gesagt muss man die nur einen nach unten halten und der ball bleibt immer noch dirin …
aber rtrotzdem und cooles spiel!!!!
daumen hoch !
und schon wiedr das nächste problem -.-, sry ne das ich nerve…….
wenn ich das spiel jetz spiel dann geht dert ball imer den gleichen weg wenn ich anfange halt geh ich mit den wänden einen nach unten
der ball geht zu gegner nach unten dann geht er auch die selbe stlle wie beim gener also mmuss ich die wände nur parralell 3 nach unten setteln und das wars hättest du einne tipp ? und wei macht man die kugel langsamer?
hey , es funktioniert der fehler war das ich das eine auf zeile 55 nich entfernt habe aber weißt du wie man die kugel langsamer kriegt?
DANGGE FÜR DEINE HILFE
dake sehr soger ! unglaublich wie schnell du geantwortest hast !
aber leider hätte ich da noch ne frage wenn es dir nix ausmacht
ich hab da wie bei zeile t2 und 74 das glecihe eingegeben aba er meint das sei immer noch flasch . wäre schön wenn du ne idee hättest warum
und ich hab das programmien hier zum erstmal gesehen und war sofort begeistert darüber ! ich arbeite grad in einem spiel wo man 25 rätsel lösen muss und hätte dazu auch eine frage kann man auch wörter in variabeln hinzufügen , so etwa ( geht das):
wort->A geht das ?
danke im vorraus
grüße aga
Der Domain Fehler besagt, dass du mit Qutput versuchst etwas außerhalb des Bildschirms zu zeichnen.
Der Bildschirm ist glaube ich 8×16 Zeichen groß, oder so, d.h. die Koordinaten dürfen nicht größer als das sein.
Das Zeichen nach dem A in Zeile 54 ist ein Mal. Also A mal Minus Eins.
Ich hoffe, ich konnte dir weiterhelfen :)
hi, also erstmal großen respekt von mir für diese tollen seite,
ich hab nur eine frage mein rechner (ti-82 stats ti basic) hat ein problem auf zeile 72 und das gleiche auf 74 ich weiß nicht woran das liegen könnte und wollte fragen auf der zeile 54 wie du das zeichen nach dem ertsen A machst ?
immer wenn er mir den fehler auf ziele 72 & 74 , kleines bespiel:
fehler:
domain
1:goto
2:quit
was heißt eigentlich auch der fehler ,,domain,, ?
würde mich über ne antwort freuen, deine seite is unter meine top 10 nur als info , tolle seite
Ja, danke, du konntest viel helfen. Allerdings bin ich nicht sicher ob ich auf dem CAS auch mit Koordinaten arbeiten kann. Auf dem CAS gibt es ein extra Programmeditor und da kann man die Befehle per Menu raussuchen. und sehr viele gibt es da nicht. Naja versuchs mal auf dem CAS umzusetzen, sonst lass ichs halt. Trotzdem Danke
Grüsse Leander
Mit -> sind die Pfeile gemeint, mit denen man Variablen ihren Wert zuweisen kann. Mehr Informationen darüber findest du auf
https://archive.haukeluebbers.de/2008/12/ti-basic-tutorial-3/
Eigentlich ist das nur ein Zeichen, aber ich habs hier einfach als Minus und größer als dargestellt.
Leider kenne ich mich mit dem TI Nspire CAS nicht aus, da ich nur den TI83-Plus habe. Hast du auch in der “zweiten Ebene” der Tasten gesucht, also wenn man 2nd drückt?
https://www.acdca.ac.at/material/nspire/nspire_progkurz.pdf Hier ist nochmal ein Link zu einem tutorial über das Programmieren mit dem Nspire :)
Und nein, Disp ist nicht das gleiche wie Output, da man dort nicht die Koordinaten angeben kann, wo das Zeichen ausgegeben werden soll. Disp schreibt den Text immer in eine neue Zeile…
Hoffe, ich konnte dir helfen.
Hi
ich hab da mal ne frage. hast du das spiel als programm oder als funktion gespeichert? oder als etwas anderes?
da ist noch was, ich hab den TI Nspire CAS und da gibt es befehle wie ‘output’ oder ‘ClrHome’ nicht, und diese ‘->’ auch nicht. kann ich das mit dem output auch mit ‘disp’ lösen oder geht das nicht? und was bedeuten diese ‘->’?
Danke zum Voraus für deine Hilfe
Grüsse Leander
Hi,
danke für das Spiel. Hab nur eine Kleinigkeit: Wenn man die (beweglichen) Wände an einer bestimmten stelle stehen lässt, muss man nichtsmehr tun, um den Ball drinzuhalten. Die Position ist für beide eins weiter unten als die Startposition. Ist das ein Tippfehler oder habt ihr das auch?
Grüße, Michael