spieler wegschieben

  • spieler wegschieben

    Hallo,
    hoffe ihr habt dieses Thema noch nicht bearbeitet. (hab nichts in der sufu gefunden)

    Und zwar programmiere ich grad ein Game wo am Boden Fässer von links nach rechts rollen und der Spieler muss über sie drüberspringen um nicht überrollt zu werden.
    Die Fässer hab ich schon, den Spieler auch.

    +Jetzt soll der Spieler auf die Fässer draufspringen können, soll sich aber nicht mit ihnen mitbewegen.
    +Der Spieler soll auch von hinten an ein Fass rangehen können (dh. wenn sich der Spieler schneller als das Fass bewegt und hinter einem Fass nachläuft, dass er nicht durchs Fass durchläuft.)
    +Und wenn ein Fass den Spieler überrollt soll es ihm ein Leben abziehen.

    Das schwierige daran ist nur das sich die Fässer nicht immer gleich schnell bewegen, weil ich eine random funktion eingebaut habe.

    Wäre nett wenn ihr mir bei meinem kleinen Problem helfen könntet!

    danke im voraus
    mfg domi

    [Zusammengeschoben durch CAS]

    schade dass mir keiner hilft.... :heul:
  • also:

    im collision event vom player mit nem fass:

    GML-Quellcode

    1. if vspeed>0 //wenn er von oben runterkommt
    2. {
    3. with other instance_destroy() //wird das fass zerstört
    4. }
    5. else if speed>other.speed //wenn er von hinten ans fass kommt
    6. {
    7. x=xprevious //wird er auf die vorige position zurückgesetzt
    8. }
    9. if speed<other.speed //wenn er von vorne aufs fass kommt
    10. {
    11. if alarm[0]>0 lives-=1 //wird ihm ein leben abgezogen
    12. alarm[0]=2*room_speed
    13. }
    Alles anzeigen


    ich bin mal davon ausgegangen, dass es von der seite is(wie bei soldat oda nem andren jump'n run)


  • okay danke erstmals...

    dass von oben und dass von vorne hab ich schon gemacht.
    Nur kapier ich nicht wie du das meinst mit

    else if speed>other.speed //wenn er von hinten ans fass kommt
    {
    x=xprevious //wird er auf die vorige position zurückgesetzt

    ...ich möchte einfach, dass wenn er von hinten ans Fass läuft und er schneller läuft als das Fass, dass er, wenn er das Fass berührt die gleiche Geschwindigkeit hat wie dass Fass. Nur weiß ich nicht mit welcher "formel?" ich abfrage wie schnell sich das Fass bewegt da sich ja nicht alle Fässer gleich schnell bewegen.(random funktion)

    mfg
  • So ich hab jetzt mal eine große Bitte!
    und zwar funktioniert etwas noch nicht bei meinem kleinen game und ich weiß nicht was der Fehler sein könnte, drum wäre es nett wenn ihr euch das ganze mal anseht und ausbessert:

    ich habe die datei und ein bild zur veranschaulichung hochgeladen.

    Ich möchte dass wenn man das Fass von oben trifft der Spieler auf dem Fass stehen bleibt, aber nicht mit ihm mitrollt, also wenn es weiterrollt dass der Spieler runterfällt.

    Wenn man von hinten an das Fass rangeht dann soll man, wenn man schneller als das Fass geht, die gleiche geschw. keit haben wie das Fass um nicht in das Fass hindurchzugehen.

    Wenn man von vorne das Fass berührt, es einen "überrollt" so soll man ein Leben verlieren und value.hit= 1 werden für ca. 3 sekunden.
    Nach den 3 sek. soll wieder value.hit=0 werden

    ...ich hoffe ihr könnt mit meiner wagen beschreibung irgendwas anfangen, thx

    mfg domi
    Bilder
    • gm hilfe.JPG

      52,36 kB, 443×668, 119 mal angesehen
    Dateien

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von domi ()

  • ja. ich hab deine engine als grundlage genommen!

    also das draufspringen funktioniert ja schon, nur das von den beiden seiten geht noch nicht.
    Und das hast du bei deiner engine auch nicht mithineingemacht, nämlich dass einen eine horizontal bewegte platformen wegschiebt wenn man daneben steht, oder irre ich mich da?

    mfg

    EDIT: sry, hab mich geirrt das hast du schon eingebaut!

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von domi ()

  • Also so schwer ist das doch nicht, das man da so nen Aufstand machen muss ><

    Du machst es so...
    Wenn spieler weiter rechts ist als das Fass(dafür muss man x kontrollieren), dann verliert der spieler leben.
    Wenn spieler weiter links ist als das Fass und es dann berührt(ebenfalls mit x prüfen), dann was weiß ist. Wird das fass schneller oder sonst was..hm, hab mal rest gelsen >< setze den player speed = dem fass speed. wenn er das fass nciht mehr von links berührt wird speed wieder normal..
    Aktuelles Projekt: Aufbau - Strategiespiel.
    Aktueller Entwicklungsschritt: Planung | Grundengine entwickeln.

    Wichtig ist nicht, besser zu sein als alle anderen.
    Wichtig ist, besser zu sein als du gestern warst.