Hilfe beim Spiel
Hilfe beim Spiel
Ich bzw. Wir müssen in einer Gruppe ein einfaches Spiel mit PureBasic programmieren.
Wir wollen so einen Jump&Run dingens mache.
Wir haben schon boxen definiert und auch leitern.
Außerdem drei Boxen die als Ebenen dienen. Durch diese soll man nur über die Leiter Gelangen, aber dafür müssen wir machen das er die Boxen nicht durchqueren kannn, aber das bekommen wir leider nicht hin.
Wir wollen so einen Jump&Run dingens mache.
Wir haben schon boxen definiert und auch leitern.
Außerdem drei Boxen die als Ebenen dienen. Durch diese soll man nur über die Leiter Gelangen, aber dafür müssen wir machen das er die Boxen nicht durchqueren kannn, aber das bekommen wir leider nicht hin.

Glaskugel defekt...
Da wäre jetzt etwas Code erforderlich. Und was meinst du mit "Boxen" ?
PureBasic 6.21 (Windows x86/x64) | Windows11 Pro x64 | AsRock B850 Steel Legend Wifi | R7 9800x3D | 64GB RAM | GeForce RTX 5080 | ThermaltakeView 270 TG ARGB | build by vannicom
Wieso Glaskugel?
Ich denke, er meint ein typisches Platform-Spiel, z.B. sowas hier http://www.lemon64.com/games/details.php?ID=3979
Ich denke, er meint ein typisches Platform-Spiel, z.B. sowas hier http://www.lemon64.com/games/details.php?ID=3979


ZeHa hat bisher kein Danke erhalten.
Klicke hier, wenn Du wissen möchtest, woran ihm das vorbeigeht.
-
- Beiträge: 17389
- Registriert: 10.11.2004 03:22
grundsätzlich könnte ihr sowas über koordinatenchecks lösen...
wenn die Unterkante von dem Player freisteht, also sich an der Koordinate kein Objekt der Umgebung befindet,
dann beginnt er zu fallen, also man bewegt ihn nach unten, indem man auf die y-koordinate was draufrechnet.
wenn die unterkante überdeckt wird, bewegt man ihn nach oben.
damit kann er dann schrägen hinauflaufen.
für blockierende elemente checkt ihr links und rechts, und in eurem fall oben,
ob sich da eine blockade befindet, dann kann er sich in der richtung nicht weiterbewegen.
und wenn genug vom player an einer leiter ist, also wahrscheinlich auch am besten die füße testen,
dann kann man ihn auch mit dem pfeil hochbewegen und nicht nur jumpen.
und die leiter muss eben mit priorität vor dem block behandelt werden,
also wenn er auf ner leiter ist, wird der block garnicht mehr gecheckt.
das sollte erstmal als Laola-Lattenzaun reichen....

wenn die Unterkante von dem Player freisteht, also sich an der Koordinate kein Objekt der Umgebung befindet,
dann beginnt er zu fallen, also man bewegt ihn nach unten, indem man auf die y-koordinate was draufrechnet.
wenn die unterkante überdeckt wird, bewegt man ihn nach oben.
damit kann er dann schrägen hinauflaufen.
für blockierende elemente checkt ihr links und rechts, und in eurem fall oben,
ob sich da eine blockade befindet, dann kann er sich in der richtung nicht weiterbewegen.
und wenn genug vom player an einer leiter ist, also wahrscheinlich auch am besten die füße testen,
dann kann man ihn auch mit dem pfeil hochbewegen und nicht nur jumpen.
und die leiter muss eben mit priorität vor dem block behandelt werden,
also wenn er auf ner leiter ist, wird der block garnicht mehr gecheckt.
das sollte erstmal als Laola-Lattenzaun reichen....

Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Der Weise weiß, dass er ein Narr ist.
Eine gute Idee wäre es auch, erstmal alles aus einzelnen Blöcken aufzubauen und die Figur immer exakt 1 Block laufen zu lassen (z.B. so wie bei Chips Challenge). Das ist dann zwar ein wenig ruckelig, aber es eignet sich ganz gut, um erstmal grundsätzlich was übers Spieleprogrammieren zu lernen. Später kann man das dann entsprechend ausbauen, da geht vieles dann wie von allein (mit ein bißchen Nachdenken natürlich).
Wie viel Zeit habt ihr denn? Dein Posting klang so, als würdet ihr das irgendwie als Projektarbeit machen.
Wie viel Zeit habt ihr denn? Dein Posting klang so, als würdet ihr das irgendwie als Projektarbeit machen.


ZeHa hat bisher kein Danke erhalten.
Klicke hier, wenn Du wissen möchtest, woran ihm das vorbeigeht.
-
- Beiträge: 17389
- Registriert: 10.11.2004 03:22
> Ich bin eigentlich der Grafikdesigner also mit Photoshop, das hat aber auch schon nicht geklappt , das in PUreBasic einzufügen.
sollte kein problem sein.
du musst nur in PS das Bild in einem Grafikformat speichern, das von PB unterstützt wird.
am besten PNG oder BMP.
für PNG den UsePNGImageDecoder() benutzen.
sollte kein problem sein.
du musst nur in PS das Bild in einem Grafikformat speichern, das von PB unterstützt wird.
am besten PNG oder BMP.
für PNG den UsePNGImageDecoder() benutzen.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Der Weise weiß, dass er ein Narr ist.
Jetzt mal Konkret ....
Ich möchte wissen wie man das macht das die Spielfigur in unserem Falle auch erstmal eine Box an einer Anderen Box, wie z.B. am Rand Rechts Aprallt also der RandRechts undurchlässig ist ? .. 
Ich meine insgesamt wie macht man Boxen oder Circles undurchlässig
Code: Alles auswählen
Global RandRechts=Box (0,0,10,480,$009900)

Ich meine insgesamt wie macht man Boxen oder Circles undurchlässig
-
- Beiträge: 17389
- Registriert: 10.11.2004 03:22
also, das ist konkret mal kein korrekter Code.TeamBaba hat geschrieben:Jetzt mal Konkret ....
Code: Alles auswählen
Global RandRechts=Box (0,0,10,480,$009900)
wazu packst du den Rückgabewert in eine Variable, wozu machst du die Global, und vor allem wieso an dieser Stelle?
der Drawing befehl muss mitten in einem Draw-Zugriff mitten in der Hauptschleife stehen,
das ist auf gar keinen Fall der Platz wo man irgendetwas als Global definiert.
also, ggf solltet ihr ein strukturiertes Array erstellen, wo alle Objekte drin abgespeichert sind.
ich bezweifel allerdings, dass ich es innerhalb einer einzigen woche schaffe, euch was halbwegs brauchbares beizubringen.
euch Code vorzukauen den ihr dann abschreiben könntet wäre nicht sinnvoll.
vielleicht solltet ihr euch ein wesentlich einfacheres Projekt erwählen,
ein Jump&Run gehört zu den schwierigeren Dingen weil es eine wesentlich
komplexere Objekt-Map-Interaktion benötigt als andere Genres.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Der Weise weiß, dass er ein Narr ist.