Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   15-Puzzle (https://www.delphipraxis.net/139908-15-puzzle.html)

Satty67 8. Sep 2009 10:11

Re: 15-Puzzle
 
Die ganz einfachen Spielchen sind doch immer noch die schönsten...

Zitat:

Zitat von himitsu
Eine Option zum verauchen der Pfeiltasten wäre wirklich toll,
aber es war dennoch schön, daß man auch die Maus nutzen kann

Glaube nicht, dass das Rauchen der Pfeiltasten wirklich den Kick bringt. Aber wenn die weggeraucht sind, sollte wirklich eine Mouse-Steuerung da sein.

Medium 8. Sep 2009 10:14

Re: 15-Puzzle
 
Du bringst mich auf eine Idee wie ich meinen tristen Büroalltag aufwerten könnte... :gruebel:

*zündel*

himitsu 8. Sep 2009 10:34

Re: 15-Puzzle
 
verTauSchen :oops:

und das mit der Maus geht ja schon :)

xZise 8. Sep 2009 11:30

Re: 15-Puzzle
 
Hallo,
nettes Spiel, aber die Zeilen 87 und 88 sind problematisch:
Delphi-Quellcode:
TButton(findcomponent('piece_' + IntToStr(field[x, y]))).Left := (x - 1) * 50;
TButton(findcomponent('piece_' + IntToStr(field[x, y]))).Top := (y - 1) * 50;
Es geht zwar an sich, aber statt TButton solltest du TImage nehmen.

Und was hälst du davon dir eine TImage Nachfahrenklasse zu erstellen, die Zum Beispiel die X/Y Pos speichert?
Delphi-Quellcode:
TSwapImage = class(TImage)
public
  property X : Integer read GetX write SetX
  property Y : Integer read GetY write SetY
end;

procedure TSwapImage.SetX(Value : Integer)
begin
  // "Verbesserte" Variante... Die verhindert eine falsche Eingabe. Ansonsten kannst du natürlich auf Min/Max verzichten
  Left := Max(Min(Value, 4), 0) * 50;
end;
Außerdem könntest du da dann auch "ihren" Wert speichern.

Und vielleicht solltest du verhindern "FindComponent" zu verwenden und stattdessen vielleicht die T(Swap)Image-Objekte in einer TObjectList zu speichern?

Außerdem sollte man mit einem Klick alle entsprechend verschieben...
Also wenn wir in der Reihe haben:
2304
Das man auf die 2 Klickt und er dann hat:
0234

MfG
xZise

Christian18 8. Sep 2009 11:42

Re: 15-Puzzle
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,

ich hab das Spielchen auch mal getestet und einen kleinen Bug gefunden.

1. Wenn die Pause aktiviert ist, lassen sich die Kästchen mit den Pfeiltasten trotzdem verschieben. So kann man einen neuen Rekord von 0 Sekunden aufstellen.

2. Wenn die Pause aktiviert ist, sollte sich das Programm die Zeit merken und nicht immer wieder bei 0 anfangen die Sekunden zu zählen. Auch dies ermöglicht einen rekord von 0 sekunden.

PS: Ich hab mal einen neuen Rekord im Screenshot gemacht. :-) 6 Sekunden, Neuer Rekord!!!

Christian18 8. Sep 2009 12:06

Re: 15-Puzzle
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,

ich bins nochmal. Ich wollte gerade nochmal ohne Pause spielen um zu schauen wie schnell ich bin. Also auf richtiger weise.

jetzt ist mir aufgefallen, dass der Zug zähler wohl auch net richtig funzt. Hatte das wärend des Spielens nicht angeschaut. viel mir nur zum schluss auf, deshalb kann ich den fehler nicht wirklich lokalisieren. aber ich haben 100pro mehr als 3 züge benötigt.

edit:

aber sonst eine tolle pausen beschäftigung. echt tolle idee mit den pfeiltasten.

mfg christian18

Angel4585 8. Sep 2009 12:23

Re: 15-Puzzle
 
Ich bin zu dumm für dieses Spiel.
Ich will immer das weisse Quadrat noch oben schieben, dabei gehts dann nach unten wenn ich nach oben drück.
Ne Einstellung um die Tasten invertiert nutzen zu können wäre Klasse :D

Edit:
trotzdem geschafft :D

---------------------------
Information
---------------------------
Gelöst!

Benötigte Zeit: 160 Sekunden
Benötigte Züge: 112
---------------------------
OK
---------------------------


Ne Onlinehighscore wäre nicht schlecht :D

False Pretense 8. Sep 2009 14:39

Re: 15-Puzzle
 
Zitat:

Zitat von Daniel G
Macht n super Eindruck. Thumbs up! Aber zum Lösen fehlt mir die Geduld. Mr. Green

Danke! :-D
Achwas, das kriegst du schon noch hin! Wenn man das erstmal gelöst hat, weiß man, dass sich die Geduld gelohnt hat! *gg*


Zitat:

Zitat von Medium
Du hast 260millisekunden pro Zug geschafft!? Und nebenbei noch den aktuellen Zustand des Brettes erfasst? My lovely mister singing club :shock: Ich werd wohl doch alt.

Von den 58 Zügen hab ich mir natürlich nicht jeden angeschaut. Meistens löse ich das so, dass ich ein 2x2 Viereck mit dem weißen Feld im Auge behalte und die Teile durch schnelles Drücken von z.B. Links + oben rotieren lasse. Aber die Zeit müsste so hinkommen, auf meiner Spielekonsole schaffe ich auch immer um die 15 Sekunden. Ein Fehler in der Zeitnahme ist es meiner Meinung nach eher nicht.

@: Tonic1024 und Angel4585 und himitsu:
Alles klar, die Tastenvertauschtopion werde ich für euch einbauen! :)


Zitat:

Zitat von Tonic1024
Ausserdem fänd ich es nett wenn das Bitmap in die exe kompiliert würde. Für custom-zwecke (falls das deine Absicht war) könntest du ein alternatives Bitmap per Menü laden.

mh..., eine gute Idee. Ich werd's mir überlegen. Danke :)

@Christian18:
Danke für die Bugreports. Ich werde die Bugs natürlich gleich mal fixen :D
btw: 49 Sekunden sind doch schon echt gut ^^

@ xZise:
Oh, ok, das TButton bei findcomponent hab ich wohl vergessen zu ändern, denn vor den Images hab ich alles mit Buttons gemacht. Danke für den Hinweis.
Das mit der TImage Nachfahrenklasse werde ich mir überlegen, an sich ist die Idee echt gut.
Dass man mit einem Klick alle nachfolgenden Teile verschieben kann, hab ich mir auch schon überlegt. Kommt auf jedenfall noch rein :D

DerAndereMicha 22. Dez 2009 08:21

Re: 15-Puzzle
 
Hallo,

tolles Spiel, ich bin schon sehr lange Fan.

Um so mehr hab ich mich gefreut, daß es auch endlich mal ne Delphi-Version davon gibt - und dazu macht Sie auch noch nen guten Eindruck. Klasse !

Das einzige, was ich noch beheben würde, sind die Speicher-Leaks. Schreib doch einfach mal

Delphi-Quellcode:
 pic_field.Free;
 pieces.Free;
ins OnDestroy-Ereignis Deiner Main-Form ;-)

Gruß
Micha

kingsusu 27. Dez 2009 23:14

Re: 15-Puzzle
 
- cool! :thumb:

Wie hast du so ein cooles Design hinbekommen?


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:54 Uhr.
Seite 2 von 3     12 3      

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