Das Deutsche Casio-Taschenrechner Forum wurde zum 31.12.2013 geschlossen und kann weiterhin als Nachschlagewerk verwendet werden.
Wer mehr erfahren möchte: Ein sehr guter Beitrag von Elias

Labyrinth programieren

Ideen sammeln, umsetzen, Fehler ausmerzen, Tipps holen und geben, Fragen stellen, Programmierprobleme lösen...

Labyrinth programieren

Beitragvon robin_cfx » Mi 21. Mär 2007, 18:30

mal wieder hi@all,
ich bin gerade dabei ein laybyrinth-spiel zu programieren.
dabei bin ich auf folgende "schwierigkeiten"gestossen:
1.die darstellung der einzelnen bildschirme(vorraussichtlich werde ich ein 5*5felder-labyrinth machen)
und 2.das umspringen in die anderen felder

1.:ich hab mir ueberlegt entweder die ganzen felder mit locate UND matrizen zu programieren(schnell braucht aber viel speicher)
oder nur als matrix speichern und dann in einem algortihmus zu einem bild "umzurechnen"
das hat aber den nachtteil das es ziemlich langsam ist,dafuer aber sehr viel weniger platz braucht

2.:zu den uebergängen in die anderen felder gäbe es die möglichkeit allen eingängen eine zahl zuweisen und diese in der matrix zu speichern(so gut wie unmöglich,da das labyrinth zu gross ist)
oder jedem feld(gespeichert in einer variable) eine zahl zuweisen und dann noch jedem eingang eine zahl(gespeichert in der matrix)

hilfen,verbesserungen und vorschläge sind erwünscht

gruss roobin


robin_cfx
 

Re: Labyrinth programieren

Beitragvon K.P.O. » Do 22. Mär 2007, 12:36

Also ich habe das jetzt so verstanden, dass du auf einen Bildschirm ein labyrint hast und dann zum nächsten bildschirm mit den weiterführenden labyrinth willst.
Hm dann nimmst du einfach eine 21x7 Felder Große matrix enstsprechend der Zeilen und Spalten im Textmodus. Der besten weg ist jedem Feldtyp eine zahl zuzuweisen also Freie Stellen z.B. eine 0 und Wänden eine 1.
#######
#o#ooooo
#o#o###
#oooooo#
#####o#
also wäre die matrix dafür entsprechend
1111111
1010000
1010111
1000001
1111101
sobald du an eine Null kommst die an einen Rand ist setzt du deine Bewegungsvariable einfach auf z.B. 1 wenn du von 21 kommst weißt schon was ich meine... Dann musst du aber auch noch variablen dafür machen auf welchen bildschirm du dich gerade befindest.

Nimm Locate und Matrix ist einfach VIEL schneller bei so einem spiel muss das schon sein...
Wenn ich das zu undeutlich erklärt habe dann sag kann gut sein dann mach ichs nochma ausführlich und so^^
K.P.O.
 

Re: Labyrinth programieren

Beitragvon kehrblech » Do 22. Mär 2007, 17:11

Mit den Übergängen hätt ich auch noch eine Idee:
Mach überall an die Ränder des Displays Wände, bis auf eine Stelle und frag immer ab, ob die Figur an den Rand gekommen ist.

Ach ja: warum machst du das nicht im Graphikmodus?
Da hat man mehr Felder und du brauchst keine Matrik weil du mit PxlTest einfach das nächste Feld abfragen kannst.

gruß jan

kehrblech
 

Re: Labyrinth programieren

Beitragvon robin_cfx » Do 22. Mär 2007, 19:03

ja,so wie K.P.O`s post hab ich ja schon angefangen und hab auch die ränder meist vollgemacht und dann ein teil freigelassen welcher dann als übertritt in das nächste feld diente.
@kehrblech:diese idee hatte ich auch schon,habe aber viele leute(auch "casio-profis") haben nicht gewusst was der befehl "pxltext"bringt;so auch ich
dann hab ich´s mal lieber gelassen und wollte nicht noch mehr unnötige themen öffnen^^
könnte jemand vllt ein prog ausschnitt posten der die funktionen von pxltext zeigt/erklärt?

danke im vorraus und auch danke auch an kehrblech

roobin
robin_cfx
 

Re: Labyrinth programieren

Beitragvon kehrblech » Do 22. Mär 2007, 19:48

Der PxlTest funktioniert ganz einfach:
Er fragt ab, ob an der Stelle der Pixel an oder aus ist

PxlTest(A,B)

liefert den Wert 1 wenn auf A,B der Pixel an ist und 0, wenn er aus ist.
Bsp:

ClrText
Locate 1,1,"Pixeltest"
For 1->T To 2000
Next
"X-Koordinate="?->B
"Y-Koordinate="?->A
ClrText
If PxlTest(A,B)=1
Then Locate 1,1,"Dort ist ein Pxl"
Else Locate 1,1,"Dort ist kein Pxl"
IfEnd

kehrblech
 

Re: Labyrinth programieren

Beitragvon robin_cfx » Do 22. Mär 2007, 21:34

ok,danke,ich werde schauen was ich in den nächsten mathestunden schaffe,werde dann auch entscheiden welche methode ich verwenden werde...
thx@all die mir geholfen haben

robin_cfx
 

Re: Labyrinth programieren

Beitragvon K.P.O. » Do 22. Mär 2007, 22:18

stacka!

Pxltest geht nur im grafikmodus und du machst offenbar im textmodus da musst du matrixabfrage machen, ansonsten lass ne schlange im grafikmodus schlängeln gibts aber eigentlich schon...

Machs mit matrixabfrage^^

Idee: mach irgendwas aktionreiches rein vielleicht muss man einen schlüssel finden um ne tür aufzumachen oder ein Zeitlimit oder so!


[geändert von K.P.O. am [TIME]1174598321[/TIME]]
K.P.O.
 

Re: Labyrinth programieren

Beitragvon robin_cfx » Sa 24. Mär 2007, 20:00

^^...,
hehe starke unschlüssigkeit,hast aber eigentlich recht es gibt schon genug snake und co spiele
zu deinem "action-vorschlag",werde es mir überlegen hatte aber eigntlich schon was in der art vor

tschüss@all
robin_cfx
 


Zurück zu Graphikrechner (CFX 9850 G/GB/GC; FX 9860 G/ GSD; FX 9750G; FX 7400G) ohne CAS

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 14 Gäste