Swing Rope (schwingendes Seil)

      Swing Rope (schwingendes Seil)

      Hi Leute

      Hier im Form hat einer nach eine schwingende Kette gefrag. Dies gibt es zwar hier schon einmal, aber das war aber nie nach meinen Geschmack.
      Habe vor ein paar Jahre auf einer Game Maker Seite in Brasilien ein J & R Spiel gefunden wo ein swing Rope mit im Spiel war. Und das alles ohne Physikmodul. Das Seil schwingt mathematisch.
      Durch die Frage vom User ist mir das wieder eingefallen.
      Also hier das swing Rope für den GM 8.1
      swing Rope.zip

      Gruss Drachen
      Hallo.

      kann man es auch machen das man mit einem Knopf die kugel wieder fallen lest?

      habe gemacht wen ich mit mein player dranspringe das er sich da festhält nur wie lasse ich es loss?
      Mein Game und meine seite: riataliaxeas.npage.de/

      Spoiler anzeigen
      Zeit zurückspulen, Tag-/Nacht-System, Begleiter mit Boni, Shop, Dungeon und Licht-/Schatteneffekte, 3D-Fake-Natur und mehr...Termin: Mitte 2016
      :!:
      Also hab mir das nicht angeguckt, aber strukturell möchte ich auf deine Frage antworten:
      Knopfdrücke kann man leicht abfragen über

      GML-Quellcode

      1. if (keyboard_check(vk_anykey)) //wenn du irgendeine Taste drückst, kannst du natürlich anpassen
      2. { ... //so in etwa das Gegenteil von dem, um ranzuspringen
      3. }


      Ich gebe dir erneut den Tipp: Befasse dich mit Logik und der Frage: Was hängt wie zusammen?? Dann findest du auch die richtigen Ansätze :)
      GML lernen geht leicht :)
      1. http://www.gm-d.de/help/ (deutsch)
      2. gm-d.de/wbb/index.php/Thread/2270/ (Einsteiger-Referenz)
      3. docs.yoyogames.com/ (Hilfe auf Englisch von GM:S)
      mit dem: if (keyboard_check(vk_anykey)) //wenn du irgendeine Taste drückst, kannst du natürlich anpassen
      { ... //so in etwa das Gegenteil von dem, um ranzuspringen
      }

      habe ich auch bereits gemacht und verstanden aber was ist das gegenteil ...
      _________________________________________________________________________
      das is das evet. wen der spieler mit dem seil colidiert dann...

      if (other.id.deactivate == 0)
      {
      rope_node = other.id;
      }


      und was muss ich da endern also so geht es nicht.
      if (keyboard_check(vk_anykey))

      {
      rope_node = other.id;
      }


      Mein Game und meine seite: riataliaxeas.npage.de/

      Spoiler anzeigen
      Zeit zurückspulen, Tag-/Nacht-System, Begleiter mit Boni, Shop, Dungeon und Licht-/Schatteneffekte, 3D-Fake-Natur und mehr...Termin: Mitte 2016
      :!:

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Ritalia“ ()

      Das Gegenteil meint, dass du, wenn du zum Beispiel an das Seil ranspringst mit x+=10 beim Gegenteil wieder in der X-Position wieder 10 runter musst => x-=10
      --> Es kommt halt (meiner Meinung nach ) drauf an, wie du das ranspringen und dran bleiben realisiert hast.

      Edit: Mist, einfach zu langsam
      GML lernen geht leicht :)
      1. http://www.gm-d.de/help/ (deutsch)
      2. gm-d.de/wbb/index.php/Thread/2270/ (Einsteiger-Referenz)
      3. docs.yoyogames.com/ (Hilfe auf Englisch von GM:S)

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Sk.Info.k.P.“ ()

      DANKE :) und der download link ist weiter oben zu sehen , kanst das ja mal anschauen wen du magst !
      ich werde es morgen gleich mal testen !!!!
      gute nacht !!!
      Mein Game und meine seite: riataliaxeas.npage.de/

      Spoiler anzeigen
      Zeit zurückspulen, Tag-/Nacht-System, Begleiter mit Boni, Shop, Dungeon und Licht-/Schatteneffekte, 3D-Fake-Natur und mehr...Termin: Mitte 2016
      :!:
      Hmmm aber wo trage ich das ein?

      ich mache bei meinem spieler ein :

      Press Butten R event und mache da ein code rein .

      if (other.id.deactivate == 0)
      {
      rope_node = other.id;
      }

      wo Trage ich dann das ein bez endere es:
      => x-=10 ???

      verstehe ich nicht -.-

      wen ich es anstelle von dem eintrage:
      == 0) kommt ne fehlermeldung.
      Mein Game und meine seite: riataliaxeas.npage.de/

      Spoiler anzeigen
      Zeit zurückspulen, Tag-/Nacht-System, Begleiter mit Boni, Shop, Dungeon und Licht-/Schatteneffekte, 3D-Fake-Natur und mehr...Termin: Mitte 2016
      :!:
      Ok anders: Wie realisierst du es, dass du ranspringst und dran bleibst? Oder ist das mit dem Beispiel mit drin?

      GML lernen geht leicht :)
      1. http://www.gm-d.de/help/ (deutsch)
      2. gm-d.de/wbb/index.php/Thread/2270/ (Einsteiger-Referenz)
      3. docs.yoyogames.com/ (Hilfe auf Englisch von GM:S)
      also Normal ist es in der version von dragon gans oben

      Hier der Downlaod:
      gm-d.de/wbb/index.php/Attachment/15552-swing-Rope-zip/


      im text eine kugel . ich habe den code der kugel:

      if (other.id.deactivate == 0)

      {

      rope_node = other.id;

      }

      auf mein Player gelegt und wen ich das seil berühre in dem ich mit W hochspringe , bleibe ich an dem Seil hängen und schwinge .

      also mit dem code bleibe ich an dem seil !

      die anderen 2 codes die im seil selber sind ist der für das schwingen selbst und den winkel und die länge vom seil.

      ich habe bei meinem player wie beschrieben mit der Taste S angenommen das ich es losslassen will und dann den code reingezogen in das press S event .

      und das ist der: selbe wie oben.
      if (other.id.deactivate == 0)

      {

      rope_node = other.id;

      }
      das ich an dem hänge sobald ich es berühre nur weis ich nicht wie ich das gegenteil hinbekomme wen ich es losslassen will .
      Mein Game und meine seite: riataliaxeas.npage.de/

      Spoiler anzeigen
      Zeit zurückspulen, Tag-/Nacht-System, Begleiter mit Boni, Shop, Dungeon und Licht-/Schatteneffekte, 3D-Fake-Natur und mehr...Termin: Mitte 2016
      :!:

      Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Ritalia“ ()

      Wie du vielleicht aus meinem Profil erkannt hast, nutze ich Studio, da nützt mir eine .gm81 Datei nicht so viel...

      Geht es zufällig, wenn du schreibst

      GML-Quellcode

      1. rope_node != other.id; //!= meint ungleich


      Ansonsten weiß ich da jetzt auch erstmal nicht weiter. Nur eine Bitte: Benutz mal die GML-Tags zum schreiben von Code, sieht viel hübscher aus :)
      GML lernen geht leicht :)
      1. http://www.gm-d.de/help/ (deutsch)
      2. gm-d.de/wbb/index.php/Thread/2270/ (Einsteiger-Referenz)
      3. docs.yoyogames.com/ (Hilfe auf Englisch von GM:S)
      leider nicht das "!" ausrufe ungleich macht die zeile 3 gleich rot -.-

      1. if (other.id.deactivate =0)
      2. {
      3. rope_node != other.id; Error
      4. }



      Mein Game und meine seite: riataliaxeas.npage.de/

      Spoiler anzeigen
      Zeit zurückspulen, Tag-/Nacht-System, Begleiter mit Boni, Shop, Dungeon und Licht-/Schatteneffekte, 3D-Fake-Natur und mehr...Termin: Mitte 2016
      :!:
      Noch eine letzte Idee, bei der ich aber auch nicht weiß, ob's es dann funktionieren könnte. Du stellst deine If-Bedingung auf 1. Sprich:

      GML-Quellcode

      1. if (other.id.deactivate =0 && keyboard_check((ord)'S'))
      2. {other.id.deactivate = 1
      3. }


      Übrigens: :)
      GML lernen geht leicht :)
      1. http://www.gm-d.de/help/ (deutsch)
      2. gm-d.de/wbb/index.php/Thread/2270/ (Einsteiger-Referenz)
      3. docs.yoyogames.com/ (Hilfe auf Englisch von GM:S)
      Habe alle variation ausprobiert mit deinem code aber nichts hilft

      if (other.id.deactivate =0 && keyboard_check((ord)'S'))
      {other.id.deactivate = 1
      }


      der wirt sofort auf zeile 1 als fehler angeshen und dann habe ich in so gemacht:

      if (other.id.deactivate =0
      {other.id.deactivate = 1 <------ Da war dann der fehler ..
      }


      der Fux hatt immer leicht reden aber Helfen kann er auch nicht aber Laute Töne spucken, so leicht ist das nicht wie er meint !
      zumindes Hilfst du mir und auch dank an Irrenhaus3.

      ev kann ein anderer die Lösung noch rausfinden wie das geht...
      Mein Game und meine seite: riataliaxeas.npage.de/

      Spoiler anzeigen
      Zeit zurückspulen, Tag-/Nacht-System, Begleiter mit Boni, Shop, Dungeon und Licht-/Schatteneffekte, 3D-Fake-Natur und mehr...Termin: Mitte 2016
      :!:

      Ritalia schrieb:

      der Fux hatt immer leicht reden aber Helfen kann er auch nicht aber Laute Töne spucken, so leicht ist das nicht wie er meint !
      zumindes Hilfst du mir und auch dank an Irrenhaus3.

      Ganz ruhig, er hat jetzt gar nichts mehr gesagt und das von davor existiert nicht mehr!

      Ritalia schrieb:

      ev kann ein anderer die Lösung noch rausfinden wie das geht...

      Das wünshc ich dir auch und vielleicht findest du ja auch noch heraus, wie man den GML-Tag benutzt ^^
      GML lernen geht leicht :)
      1. http://www.gm-d.de/help/ (deutsch)
      2. gm-d.de/wbb/index.php/Thread/2270/ (Einsteiger-Referenz)
      3. docs.yoyogames.com/ (Hilfe auf Englisch von GM:S)
      ich schreibe dir wen du magst das ergebniss ^^

      und ja er hängt in mir noch tief und ich kann in nicht leiden tut mir leid wegen meiner art -.-
      Mein Game und meine seite: riataliaxeas.npage.de/

      Spoiler anzeigen
      Zeit zurückspulen, Tag-/Nacht-System, Begleiter mit Boni, Shop, Dungeon und Licht-/Schatteneffekte, 3D-Fake-Natur und mehr...Termin: Mitte 2016
      :!:
      Hi Ritalia

      Der Code ist aber nur eine Stütze, es kann sein das du den Code im laufe deiner Programmierung anpssen mußt.

      Im Create Event der Kugel (Beispiel)

      GML-Quellcode

      1. /// Variabeln setzen
      2. rope_node = noone;
      3. taste_down = false;


      Im End Step Event der Kugel (Beispiel)

      GML-Quellcode

      1. /// Mit dem Seil schwingen
      2. if (rope_node <> noone && taste_down==false)
      3. {
      4. x = rope_node.x;
      5. y = rope_node.y;
      6. }

      Im End Step Event der Kugel (Beispiel)

      GML-Quellcode

      1. ///Tastaur
      2. if (keyboard_check(vk_down))
      3. {
      4. taste_down = true;
      5. if (rope_node <> noone)
      6. {
      7. rope_node.deactivate = 1;
      8. rope_node = noone;
      9. }
      10. y +=5
      11. }
      12. if (keyboard_check_released(vk_down))
      13. {
      14. taste_down = false;
      15. }


      Statt meiner y +=5 kannst du hier natürlich deinen Gravitationscode einbauen. So das deine Figur automatisch nach unten fällt.

      Gruss Drachen
      Drachen ich habe noch nie jemanden gesehen der den <> Operator benutzt. Benutze doch bitte den gleichbedeutenden Operator !=, welcher auch dokumentiert ist. Das hat mich etwas verwirrt und das soll dann ein Anfänger verstehen?

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Chris987“ ()

      Super es Klappt

      aber was schade ist wen man einmal drangesprungen ist und sich fallen lest das man dan nicht wieder dran springen kann


      aber zumindes geht es endlich !!!!!!!!!!!!!!
      Mein Game und meine seite: riataliaxeas.npage.de/

      Spoiler anzeigen
      Zeit zurückspulen, Tag-/Nacht-System, Begleiter mit Boni, Shop, Dungeon und Licht-/Schatteneffekte, 3D-Fake-Natur und mehr...Termin: Mitte 2016
      :!:
      Hi Chris987

      Den Operator <> kenn ich noch aus meiner Basic Programmierzeiten, somit war das für mich jetzt nichts unbekanntes. Zumal die Routine nicht von mir stammt. Wie ich am Anfang schon geschrieben habe, habe ich die Routine auf eine Brasilien Game Maker Seite gefunden. Aber ich gebe dir Recht, in der heutigen Welt des programmierens hat sich sehr viel verändert. Ich hätte es umschreiben sollen, aber ich habe nicht daran gedacht weil es für mich logisch war.

      Gruss Drachen

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Drachen“ ()