Delphi-PRAXiS
Seite 3 von 9     123 45     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Delphi Pac-Man Hilfe (https://www.delphipraxis.net/184622-pac-man-hilfe.html)

Popov 11. Apr 2015 14:51

AW: Pac-Man Hilfe
 
Zuerst musst du mir erklären was in den einzelnen StringGrids steht? Wieso ist der eine 24x24 Zellen groß, der andere 48x48?

Ansonsten habe ich dir bereits einen Tipp gegeben: wo PackMan war, da gibt es keine Punkte mehr. Und wenn ich mir das zweite StringGrid angucke, steht da nichts, wo PackMan noch nicht war, 1, wo PackMan gerade ist und 0, wo PackMan schon war. Schlussfolgerung: wo in StringGrid nichts steht, da sind noch Punkte.

Außerdem:

"Warum wir über die StringGrids gehen weiß ich auch nicht genau.. ich hab den Plan nicht gemacht...."

Das ist doch auch dein Projekt, du warst doch bei der Planung dabei.

Aber nur damit du verstehst wie deine Bitte klingt...

"Kannst du mir nen Tipp geben, wie ich es mit Hilfe eines StringGrids bewältigen Könnte die Punkte rein zu bekommen? "

Ich versuche die Bitte mal zu übersetzten. Stellt euch vor ihr währt KFZ-Designer Azubis und ihr hättet die Aufgabe bekommen ein Auto zu bauen. Einer aus euer Gruppe erinnerst sich an seinen Opa, der war Bauer, und im Schuppen steht noch ein Heuwagen. Der hat vier Räder, ein Auto hat auch vier Räder, also ist ein Heuwagen doch schon eine gute Grundlage für ein Auto. Da spart man sich etwas Arbeit, eine Art Karosserie ist da, Räder sind dran, also schon fast ein Auto.

Nun habt ihr die Leitern demontiert und die Deichsel. Ihr habt paar Sitze eingebaut, vielleicht schon eine Lenkvorrichtung, mit der sich die vorderen Räder drehen lassen. Eventuell liegt schon ein alter Dieselmotor vom Schrottplatz schon auf dem Wagen. Und nun kommt ihr mit der Frage, wie man daraus ein Auto machen kann.

Nur damit man das versteht, irgendwas wird man schon daraus machen können, aber der Ansatz ist schwierig. Ihr habt euch am Anfang sehr einfach gemacht und nun wird es schwieriger.

Bjoerk 11. Apr 2015 15:07

AW: Pac-Man Hilfe
 
Zitat:

Zitat von Zwinge112 (Beitrag 1297240)
naja das Problem hierbei ist, dass die anderen ihre Teile alle schon fertig haben.... nur meiner mit den Punkten fehlt jetzt noch......

Verständlich. Zweckmäßiger wäre es jedoch die anderen davon zu überzeugen ein PacManGrid zu entwerfen? Ist nicht sooo schwer.

Popov 11. Apr 2015 16:09

AW: Pac-Man Hilfe
 
Liste der Anhänge anzeigen (Anzahl: 1)
@Zwinge112

Ich hab mir den Code angeguckt und muss sagen, ich blick da nicht durch. Lassen wir das mit dem StringGrid usw. Das ist ein Teil für sich, das meine ich jetzt nicht. Ich meine die Logik die hinter dem ganzen Steckt. Ich hab mich nun eine halbe Stunde mit dem Code auseinandergesetzt und hab keine Ahnung was deine Kollegen da gemacht haben.

Wenn di nun meinen ihren Part erledigt zu haben und nun bist du dran, dann darfst du denen einen schönen Gruß von mir bestellen und sagen: Schrott basteln und den dann umrechnen, so dass ein Teil funktioniert, bedeutet nicht fertig zu sein.

Es gibt zwei StringGrids, FeldFac und FeldMauer. FeldPac hat 24 Spalten und 24 Zeilen. Das entspricht der Aufteilung der Grafik. Auch die hat 24x24 Felder. FeldMauer hat dagegen 47 Spalten und 47 Zeilen. Also 1 Spalte und eine Zeile zu wenig.

Wozu nun FeldMauer doppelt so viele Spalten und Felder hat, weiß ich nicht. Vor allem wird jede zweite Spalte und jedes zweite Zeile nicht genutzt. Nun ist in dem StringGrid 0 eine Mauer, 1 ist frei. Da das StringGrid zu groß ist, steht die 1 für Frei nur jede zweite Spalte und Zeile. Somit muss man zwischen FeldMauer und FeldPac umrechnen. Wie auch immer, ich hab mal die FeldMauer StringGrid visualisiert (siehe Bild unten in der großen Grafik). Dann habe ich versucht die FeldMauer Wege in FeldPac nachzuzeichnen (siehe die 9-er). Natürlich, mit etwas mehr Zeit bekommt man den Umrechnungsfaktor raus. Aber momentan habe ich keine Lust dazu. Wozu ist FeldMauer überhaupt so groß.

Also, das das schon mal klein wenig funktioniert, bedeutet es nicht, dass die Kollegen fertig sind.

Am besten alles zurück. Meinetwegen sollen die das mit den StringGrids lassen, aber dann sollten beide StringGrid gleich sein. Weil so wie es ist habe ich keine Ahnung wie man dein Problem lösen sollte.

Mavarik 11. Apr 2015 17:57

AW: Pac-Man Hilfe
 
Eine sehr gute Anleitung findet man HIER.

Inkl. Erklärung wie die Geister funktionieren...

- Link
- Link

Zitat:

Zitat von Bjoerk (Beitrag 1297100)
Als "mitlesendender 10%-Profi" frage ich mich, weshalb diese Zwischenzustände?:gruebel:

Siehe 2. Link hier ist auch nochmal die Draw Routine erklärt, wie alles gezeichnet wird.

Popov 11. Apr 2015 20:40

AW: Pac-Man Hilfe
 
Liste der Anhänge anzeigen (Anzahl: 1)
Der Code hat mir keine Ruhe gelassen, denn bisher habe ich für alles eine Lösung gefunden. Aber hier konnte ich ich keine finden.

Sag mal, die Gruppe mit der du das zusammen machst, sind das Freunde von dir oder so Jungs die noch eine Rechnung mit dir offen habe? Sagen wir mal so, was da produziert wurde ist kaum zu gebrauchen. Es wurde viel gemacht, aber im Grunde nur Schrott. Klar, man kann da eine Figur bewegen, mehr aber auch nicht. Selbst mach einer halben Stunde konnte ich zwischen den beiden Grids keine vernünftige Verbindung herstellen. Ich glaube das kann man auch nicht. Die FeldMauer StringGrid war so nutzlos, dass ich innerhalb von fünf Minuten einen Code geschrien habe der mit aus der Grafik die Daten bringt (weiß ist 0, rot ist 1). Glaub mir, das was dir deine Kollegen gegeben haben ist nutzlos. Klar, sie haben ihren Teil gemacht (den Heuwagen besorgt und den Dieselmotor) und nun wollen sie, dass du aus deren nutzlosem Code etwas macht (aus dem Heuwagen ein Auto).

Das Bild ist Schrott. Ignorieren wir mal die Größe 505x504, aber das Ergebnis ist ein Feld von 21x21. Etwas untypisch. Einfach hingemalt ohne überlegung.

Das PackMan.Bild ist Schrott. Ist 20x20 und passt nicht richtig ins Bild.

Beide StringGrids sind Schrott. Die passen nicht zueinander. Es reicht um eine Figur zu bewegen, aber nicht um Daten zu speichern.

Da ich mit dem StringGrid nichts anzufangen wusste, habe ich mir am Anfang zum Spaß die Daten aus der Grafik geholt. Dann paar Verbesserungen gemacht, den unnötigen Schrott entfernt, die FeldMauer StringGrid auch. Dann die Steuerung auf FeldPac umgestellt. Im Grunde hatte es auch keinen Sinn mit der alten Grafik zu arbeiten, denn die war unnütz. Wie gesagt, deine Kollegen haben ihren Part gemacht, aber nicht unbedingt ein Schritt weiter gedacht, so dass du es erweitern kannst. Also habe ich auch die Grafik neu gezeichnet. Damit war es möglich auch Punkte einzubauen.

Eigentlich wollte ich das Ergebnis hier veröffentlichen, aber dann dachte ich mir, dass du selber schuld bist. Wer so an ein Projekt ran geht, also die Kollegen zuerst machen lassen und sich komplett raushalten, braucht sich nicht wundern, wenn er unnützen Schrott bekommt.

Abschließend ein Tipp: der Code den du hast ist wertlos. Du hast zwei Möglichkeiten: du gehst zu den Kollegen und ihr macht alles neu, der du gehst zu Lehrer und sagst, dass du Schrott bekommen hast und damit nichts anzufangen weißt.

Sir Rufo 12. Apr 2015 00:05

AW: Pac-Man Hilfe
 
Zitat:

Zitat von Mavarik (Beitrag 1297250)
Eine sehr gute Anleitung findet man HIER.

Inkl. Erklärung wie die Geister funktionieren...

- Link
- Link

Zitat:

Zitat von Bjoerk (Beitrag 1297100)
Als "mitlesendender 10%-Profi" frage ich mich, weshalb diese Zwischenzustände?:gruebel:

Siehe 2. Link hier ist auch nochmal die Draw Routine erklärt, wie alles gezeichnet wird.

Man sieht auch sehr schön das Raster und könnte das sehr einfach mit einer PaintBox und einer ImageList (und einer Hand voll Bildchen) nachbauen - ok, man würde wohl für das ein oder andere eine eigene ImageList nehmen (PacMan, Geister, Früchte), (Rahmen, Punkte), (Zahlen, Buchstaben).

Das Labyrinth und die Punkte lassen sich aber sehr simpel mit einer PaintBox und einer ImageList darstellen. Die Spiellogik liefert der Anzeige nur noch einen Index für die Zelle und das Bild der ImageList wird dann dort gezeichnet.

Mavarik 12. Apr 2015 07:53

AW: Pac-Man Hilfe
 
Zitat:

Zitat von Sir Rufo (Beitrag 1297280)
Das Labyrinth und die Punkte lassen sich aber sehr simpel mit einer PaintBox und einer ImageList darstellen. Die Spiellogik liefert der Anzeige nur noch einen Index für die Zelle und das Bild der ImageList wird dann dort gezeichnet.

Da man eigentlich immer 4 Kachel painten muss einfach die Grafik doppelt halten im OR-Modus die Bilder Geister und Pac-Man malen und an vorhergehender Position aus der Kopie restaurieren....

Das ganz ist in Z80 nicht mal 4KB... ( Und ich kann es immer noch lesen... :-D )

Habe leider noch nicht die Sound-Daten gefunden...

himitsu 12. Apr 2015 08:23

AW: Pac-Man Hilfe
 
Als vor 5 Jahren der Pacman 30 wurde, da gab es erstmal das Spiel von Google.
https://www.google.de/search?q=pacma...GdgagE#clb=clb
Und dafür hatte man sich extra den originalen Quellcode, samt der Sounddaten und dem originalen Bewegunsmuster der Geister, rausgesucht und der wurde auch überall verlinkt.
Hab jetzt nicht nachgesehn, aber die Wiki weiß bestimmt auch wo der sich befindet.

Mavarik 12. Apr 2015 08:48

AW: Pac-Man Hilfe
 
Zitat:

Zitat von himitsu (Beitrag 1297294)
Hab jetzt nicht nachgesehn, aber die Wiki weiß bestimmt auch wo der sich befindet.

Hab doch die "wichtigsten" Links gepostet... :roll:

himitsu 12. Apr 2015 09:09

AW: Pac-Man Hilfe
 
Den zweiten Link (pacmandossier) hatte ich wohl nicht richtig erwischt, beim Anklicken ... der erklärt das ja ganz schön ausführlich.

Aber da geht es doch nur um die Geister?

Authentischer wäre es bestimmt, wenn man den Sound quasi auch live "generiert" (lässt sich alles im originalen Quellcode abgucken), aber im Notfall.
http://www.classicgaming.cc/classics/pacman/sounds.php


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:47 Uhr.
Seite 3 von 9     123 45     Letzte »    

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz