![]() |
Re: Memory für "Anfänger"
Ich finde die "Lösung" auch nicht gerade elegant, außerdem ist der Source viel zu lang, das kann man auch ganz anders machen.
|
Re: Memory für "Anfänger"
tja jetzt weiß ich nur nicht wie ich es programmieren soll. entweder im Turbo Pascal style oder in der eleganten aber für ihn unverständlichen Form :(
|
Re: Memory für "Anfänger"
Wenn ihm die Form unverständlich ist, sollte er kein Delphi lehren.
|
Re: Memory für "Anfänger"
Ich habe mir die PDF von Michael Puff mal zu Gemüte geführt. Aber irgendwie begreife ich deine Implementierung nicht so ganz. Dafür besitze ich sicher noch nicht das Grundwissen. Da muss ich mich wohl noch ein bisschen mit befassen...
Nun habe ich mir versichern lassen, das ich mein Memory Spiel leider mit TImage's entwickeln soll. Kann man das mit TList verknüpfen oder bleibt mir da nichts andres übrig als so einen uralter Turbo-Pascal Code zu entwickeln? Könnte man das so in der Art programmieren? es erschlägt einen nur, weil der Quellcode ziemlich lang ist :( ![]() |
Re: Memory für "Anfänger"
Ich habe mir eben den Spaß gemacht und das Spiel auch mal programmiert (mit 6 TImages): 119 Zeilen inkl. dem letzten "end.", und das ließe sich bestimmt auch noch kürzen ;)
|
Re: Memory für "Anfänger"
Ich muss nochmal auf meine Frage zurück kommen.
Wie verwende ich z.B. den Image.Tag wie auf Seite 4 gefordert? |
Re: Memory für "Anfänger"
Die Tag-Eigenschaft steht Dir zur freien Verfügung (ist eine Integer). Du könntest nun also, wenn Du ein Image aufdeckst, dessen Tag z.B. auf 1 setzen und beim Verdecken wieder auf 0. Nun prüfst du, welchen Tag das angeklickte Image hat (bei 1 ist es bereits aufgedeckt). Allerdings ist das eigentlich gar nicht nötig.
|
Re: Memory für "Anfänger"
Zitat:
Angenommen man verwendet den tag, muss ich es sicher mit einer if-anweisung erledigen. Wie implementiere ich denn sowas? ich kann ja schlecht schreiben "if image.tag=0 then...". |
Re: Memory für "Anfänger"
Zitat:
|
Re: Memory für "Anfänger"
hm irgendwie haut das mit dem mischen nicht so ganz hin :( der legt manchen karten einfach dreimal aus und nicht nur zweimal.
Code:
Nummer muss doch ein Array sein, definiere ich ihn richtig?
Bild: Array[1..3] of String; //Bildernamen
Platz: Array[1..6] of Integer; //Bildnummer Nummer: Array[1..6] of Integer; Zufall: Integer;
Code:
Anzahl:=6;
randomize; // Zufallszahlengenerator aktivieren while Anzahl > 0 do { Die Karten mischen } begin zufall := random(Anzahl)+1; // eine Karte aus dem Stapel ziehen Nummer[Anzahl]:= Platz[zufall]; // und auf letzten freien Platz auslegen for k := zufall to Anzahl-1 do // restliche Karten einen Platz nach vorn begin Platz[k] := Platz[k+1]; end; Anzahl := Anzahl - 1; // Der Stapel ist nun kleiner geworden end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:31 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz