Seite 2 von 2

Re: Basic Ghost

Verfasst: 16.05.2010 18:05
von kswb73
Das die Wandkollision nicht funktioniert wundert mich nicht. Ist nämlich garnicht drin. (Orginalcode)

Zum einfügen lösche bei

Code: Alles auswählen

PlayerX+MoveX
PlayerY+MoveY
PlayerX+MoveX

Dann füge nach der for Schleife (for x=0 to #W bis next x) folgenden Code ein:

Code: Alles auswählen

PlayerX+MoveX
    Hit=0
    For x=0 To #W
      For y=0 To #H
        If Feld(x,y)=1
          If BoxKolli(x*TileW,y*TileH,TileW,TileH,PlayerX,PlayerY,PlayerW,PlayerH)
          Hit=1
            If MoveX<0
            PlayerX=X*TileW+TileW
            ElseIf MoveX>0
            PlayerX=X*TileW-PlayerW
            EndIf
          EndIf
        EndIf
      Next y
    Next x
Der sinn hinter der doppelten Abfrage ist das der Spieler erst auf der Y-Achse bewegt wird und dann auf der X-Achse. würde man beide Teile in einem machen und schräg geben eine Mauer laufen, so würde man an eine Ecke platziert werden.

@Josef Sniatecki: Interessanter Lösung. Seh ich mir bei zeiten mal genauer an.
Edit Fang mal bei deinem Enumeration mal mit 1 an sonst ist #Collision_Top=#False, was zu Fehlern führt. Wenn man gegen eine Wand läuft und gleichzeitig nach oben läuft (PlayerY-...), bleibt man hängen.

Re: Basic Ghost

Verfasst: 17.05.2010 20:46
von Marvin133
Vielen Dank für eure Mühe :allright:
Echt Klasse das ihr sowas hinbekommen habt,muss mal sehen wie ich das einbaue,bin da leider nicht ganz so geschickt wie ehrfahrene von eucht,aber ich lern dazu :mrgreen:

Re: Basic Ghost

Verfasst: 20.05.2010 21:09
von Marvin133
Sag mal hast du die collisionsroutine von qmetrica? :mrgreen:

und eine frage habe ich noch ob du evtl mit mir zusammen arbeiten würdest einen level editor aufzubauen wo man die grafiken selbst anpassen kann und so
und vllt noch einen levelloader ,der ein format dees editors als ganzes level lädt.

Mfg. Marvin133 :bounce:

Re: Basic Ghost

Verfasst: 21.05.2010 16:14
von Josef Sniatecki
Naja, könnte ich... nur die Zeit ist leider nicht da. :mrgreen: Schon für GMetrica selbst habe ich sehr wenig Zeit, weshalb ich erst in den Sommerferien weiterproggen kann. Es stehen gerade eine Menge Kursarbeiten an und die will ich nicht verhauen. :wink:

Mal sehen ob ich in den Ferien genug Lust habe. Ich bin eher so der Typ der seine eigenen Sachen programmiert und für andere Projekte einfach keine Lust bekommt :mrgreen:. Außerdem ist der Quellcode des Editors in GMetrica größer als die Engine selbst. Da steckt ne Menge Arbeit, Objekte und Tiles dynamisch anzulegen und danach für ein Spiel statisch verfügbar zu machen.
Sag mal hast du die collisionsroutine von qmetrica? :mrgreen:
So ist es :)

Gruß Josef

Re: Basic Ghost

Verfasst: 25.07.2010 17:41
von Marvin133
So dasproblem hat sich schon von selbsterklärt :mrgreen:

Re: Basic Ghost

Verfasst: 02.08.2010 10:00
von oh... well?!
wow. Hab's zwar noch noch gespielt, aber nach dem Screenshot sieht das mal nach nem richtig coolen super mario ähnlichen jump and run aus. Mit diesem retro nintendo typischen, schlichten aber genialen Design. :allright: