Schwert hiebe

  • GM 8

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Schwert hiebe

    Hey

    Wie kann ich Schwertanimationen reinbauen? das schwert lässt sich nur links und rechts schlagen, und mein charakter soll stehen bleiben, solange die animation nicht fertig ist...und wenn die animation fertig ist, bekommt er seine links oder rechts grafik wieder...und der gegner sollte kurz aufflashen wenn er getroffen wird...wie mache ich das alles?
  • Du kannst "sprite_index" in jedem beliebigen Event abfragen - sollte sich also z.B. mal ergeben, dass du ein Onjekt anhalten willst, so lange es ein bestimmtes Sprite besitzt, könntest du etwas in der Art von

    GML-Quellcode

    1. if sprite_index=sprite01{
    2. speed=0;
    3. direction=0;
    4. }

    benutzen, um das Objekt anzuhalten und seine Richtung zurückzusetzen. Strukturtechnisch wär's zwar geschickter, für diese Abfragen eine Extravariable zu erstellen, die auf verschiedene Werte zu setzen und dann anhand derer zu operieren, aber für den Anfang reicht's locker aus, das über sprite_index zu lösen.

    Zum Spritewechsel am Animationsende gibt's das "Animation End"-Event (zu finden unter "Other Events) - das Aufblitzen des Gegners könntest du über einen Spritewechsel im Kollisionsevent mit dem Schwert des Spielers (oder, wenn du dafür kein eigenes Objekt benutzt, mit dem Spieler selbst) lösen. Und weil du's ja nur "kurz" aufblinken lassen willst, heiz dir schonmal ein Alarm-Event vor. ;)

    P.S.:
    Du hast in deinem Profil übrigens noch keine Selbsteinschätzung erstellt - das ist zwar nicht verbindlich, aber hilft doch ganz gut dabei, dir besser auf deinen Wissensstand passende Antworten zu geben. Wenn du mit Variablen, Alarmen und Animations-Events noch nicht so viel anfangen kannst und in Code erstmal nur ein Gewurst aus Klammern und Kommas siehst, wirst du mit meinem Post wahrscheinlich nicht sofort die zündende Idee entwickeln. Mit einer Selbsteinschätzung anhand deiner GM-Erfahrung könnten wir besser beurteilen, wie wir dich an die Materie heranführen müssen - einem GML-Fortgeschrittenen muss man nur noch einen kleinen Schubs in die richtige Denkrichtung geben, während ein D&D-Einsteiger dann doch eher grundlegendere Hilfestellung braucht.
  • jetzt habe ich es doch geschafft....ich hatte vergessen ein if reinzuhauen wenn die Variable "Sword" true is....jetzt gehts...leider hängts noch an der Kollision und weiß net wie man ne maske erstellt bzw was die mir bringen soll!

    und ich möchte auch meine schwert taste (S) abschließen, damit ich nicht während der animation milliarden mal auf s drücken kann, sondern nur wieder freigeben, wenn die animation auch endet!

    und ich merke auch schon dass wenn ich auf ein gegner schlage, wird der sound effekt 20 mal auf einmal abgespielt...

    Dieser Beitrag wurde bereits 4 mal editiert, zuletzt von RTZF ()

  • Dann les dir mal das ganz durch:
    gm-d.de/help

    edit:
    Falls du das noch lesen solltest...

    Mal im Ernst: Wenn du wirklich jetzt GML lernen willst nutze die folgenden hilfreichen Links:
    GML- Einsteigerreferenz
    Die ist im Gegensatz zur Hilfe kein Nachschlagewerk sondern wirklich eine passende Lektüre wenn du GML lernen willst.

    Das nächste Problem ist, dass wir dir das nicht alles vormachen können. Du tust dir und uns anderen einen großen Gefallen wenn du dir erstmal die Funktionen von GM anschaust (in deinem Fall die D&D Funktionen unter dem Label "Move" und "Main1").

    Und wenn du eine Funktion nicht verstehst, dann ist die Hilfe die richtige Anlaufstelle um nachzuschlagen was sie bewirkt und wie du sie einsetzen solltet.

    Wenn du dich damit erstmal auskennst kannst du dein Problem wohl eigenständig lösen. Du solltest dir niemals irgendetwas zusammen kopieren wenn du selbst nicht verstehst was es bewirkt ;).

    Mach die oben genannten Schritte und schaue ob du es dann selbst schaffst.

    MfG xxskxx
    -

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von xxskxx ()

  • ich weiß nicht wie man das schwert schlag event nur einmal anzeigen lassen kann, dass man solange die animation läuft die taste wo das event aktiviert einfriert.

    ich weiß dass place_meeting() die aktion check object ist, das andere zeugs, kein plan.
  • 1.Wir sind keine Hellseher, wenn du vielleicht man deinen Bewegungs Code zeigen würdest, könnten wir dir weiter helfen
    2. Du fügst zu deiner Abfrage hinzu wo du prüfst ob eine Taste gedrückt wird noch eine Abfrage hinzu die sagt das wenn sprite_index zu dem Sprite(Player und Schwert) ist.
    3. Noch eine Abfrage ob sprite_index zu deinem Player und Schwert Skript ist und image_index grösser oder gleich zu deinen Bilder dieser Animation steht und setzt sprite_index zu deinem normalen Sprite oder dein Schwert.
    wupto.net/ Nicht meine Seite!
    We love Koalas.

    GM-D-Spam-o-Meter: 32%
  • GML-Quellcode

    1. vspeed = 0
    2. hspeed = 0
    3. image_index = 0
    4. speed = 0
    5. direction = 0
    6. if sprite_index = Right
    7. {
    8. speed = 0
    9. direction = 0
    10. sprite_index = Sword_right
    11. image_speed = 0.6
    12. }
    13. if sprite_index = Walk_right
    14. {
    15. speed = 0
    16. direction = 0
    17. sprite_index = Sword_right
    18. image_speed = 0.6
    19. }
    20. if sprite_index = Land_right
    21. {
    22. speed = 0
    23. direction = 0
    24. sprite_index = Sword_right
    25. image_speed = 0.6
    26. }
    27. if sprite_index = Left
    28. {
    29. speed = 0
    30. direction = 0
    31. sprite_index = Sword_left
    32. image_speed = 0.6
    33. }
    34. if sprite_index = Walk_left
    35. {
    36. speed = 0
    37. direction = 0
    38. sprite_index = Sword_left
    39. image_speed = 0.6
    40. }
    41. if sprite_index = Land_left
    42. {
    43. speed = 0
    44. direction = 0
    45. sprite_index = Sword_left
    46. image_speed = 0.6
    47. }
    48. if sprite_index = Sword_left
    49. {
    50. end
    51. if sprite_index = Sword_right
    52. {
    53. end
    Alles anzeigen


    das is drin, wenn man die S taste drückt...
  • Vl, wenn ichs richitig verstanden hab, so:


    GML-Quellcode

    1. if animisposs == 1 //es wird abgefragt ob die variable animisposs auf 1 ist
    2. {
    3. animisposs = 0;
    4. alarm[0] = //dauer des schlags; in alarm[0] wird animisposs auf 1 gesetzt
    5. vspeed = 0
    6. hspeed = 0
    7. speed = 0
    8. image_index = 0
    9. direction = 0
    10. if sprite_index = Right || sprite_index = Walk_right || sprite_index = Land_right
    11. {
    12. sprite_index = Sword_right
    13. image_speed = 0.6
    14. }
    15. else if sprite_index = Left || sprite_index = Walk_left || sprite_index = Land_left
    16. {
    17. sprite_index = Sword_left
    18. image_speed = 0.6
    19. }
    20. }
    Alles anzeigen


    //@Irrenhaus3: Ok, ich werds mir merken; aber wegen der fehlenden Selbsteinschätzung, dachte ich er kannte schon die Grundlagen und brauchte nur einen kleinen Denkanstoß......

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

  • auch das wusste ich nicht! zusammenfassen von ifs!
    ich habe hier alles aufgezählt...und den timer versteh ich auch nicht...number of steps? in was für ne einheit wird das gemacht? millisekunden? sekunden?

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

  • Ehrlich, Leute, wenn ich dieses Threads ansichtig werde, kommt in mir langsam echt das Bedürfnis auf, in einem Hochdruckstrahl geradewegs durch meine Zimmerdecke und bis zum Alpha Centauri zu kotzen. Ich les in den Technikforen generell immer recht häufig solche unfassbar hilfreichen Posts wie "Ist ja einfach, hätteste auch selbst drauf kommen können" oder "Mach das hier: <Ellenlanger, unkommentierter Code>, dann geht's." oder "Lies die Hilfe. <Link auf die Indexseite der Hilfe>" aber hier nervt's grad richtig. RTZF hat jetzt schon mehrmals erwähnt, dass er von GML keine Ahnung hat und erst noch in den GM eingeführt werden muss und trotzdem können es sich die Spezialisten unter uns nicht nehmen lassen, ihm entweder aus seiner Unwissenheit einen Strick zu drehen (obwohl sie sich selbst am Anfang ihrer Programmierkarriere meistens noch viel schlimmer angestellt hatten) oder ihm fertige, im besten Fall nicht mal getestete Codes vorzuklatschen, mit denen er wegen fehlendem GML-Verständnis nichts anfangen kann. So, wie's hier grade aussieht, wäre ihm besser geholfen, wenn er im Chat eine Schritt-für-Schritt-Lösung erbeten würde - und das kann's ja wohl echt nicht sein!
    Daher muss ich jetzt mal folgendes loswerden:

    Zuerst mal an RTZF selbst: Editier mal dein Profil und verpass dir somit eine Selbsteinschätzung. Das hilft bei allen weiteren Technikfragen wirklich ungemein dabei, dir auf deinen Wissensstand passende Lösungen zu geben - man muss es dann nämlich nicht mehr aus deinen Posts herauslesen. Was in diesem Fall passiert, merkst du ja gerade selber.
    Außerdem solltest du davon absehen, Posts sinnverfälschend umzueditieren (diesen hier zum Beispiel - da stand zum Zeitpunkt, als er erstellt wurde, noch was völlig anderes drin.) - sowas kann ganze Threads aus dem Kontext reißen und ist daher nicht gern gesehen.
    Im Bezug auf deine Art der Fragestellung leg ich dir auch mal diese paar Zeilen zu Herzen, die Niffel dermaleinst in fernen Tagen schrob und in denen recht präzise erklärt wird, welche Informationen man am besten wie in einen Technik-Thread packt, damit die Leute auch verstehen, was man von ihnen will. So erübrigen sich die meisten Anlaufschwierigkeiten für deinen Thread gleich von alleine. Und mit genügend Eigeninitiative und Lernbereitschaft erübrigen sich sogar die meisten Threads.
    Und abschließend: Wenn du von den Grundlagen des Programmierens noch wirklich gar nichts weißt, solltest du auf keinen Fall gleich in die GML brettern, da raufst du dir nur die Haare bis du rumrennst wie Captain Picard. Mach erst mal ein paar ganz simple Abfragen und Programme mit D&D. Gewöhn dich in den GM ein. Ich garantiere dir, dass du dein Problem mit den Schwertanimationen auch in D&D lösen kannst, wenn du nur die richtigen Aktionen benutzt. Fang nicht gleich mit der schwierigen Materie an, sondern mach dir den Einstieg erstmal so einfach wie möglich - gerade dafür ist der GM ja schließlich gedacht.

    An luky: Hättest du die Forenregeln mal selbst gelesen, wäre dir früher oder später mal der Punkt mit dem Aufspielen als Hilfsmoderator zu Augen gekommen. "Lies die Forenregeln <.<" ist nicht nur genau das, es ist auch noch völlig zusammenhanglos. Lies die Regeln. Ja, schön, und dann? Dann stößt er dabei vielleicht auf die Doppelpostregel und im besten Fall erkennt er, was du ihm sagen wolltest - aber die Chance dazu ist denkbar gering, wenn du ihn nicht mal drauf hinweist, was er falsch gemacht hat. Die Zeile suggeriert nur, dass er in deinen Augen irgendwas falsch gemacht hat - ob das ein großer Ansporn zur Besserung ist, bezweifle ich mal stark.
    Und Zweitens: "Kann man auch mit ner Variable machen" ist für einen Programmieranfänger eine, mit Verlaub, komplett nutzlose Hilfestellung. Dass man das kann, dürfte ihm von Anfang an klar gewesen sein - spätestens nach meinem Post, indem ich die Variante mit der Extravariable auch schon angesprochen hab - aber wie von ihm selbst ja mehrmals (und von mir in diesem Post jetzt auch einige Male) erwähnt, fehlt ihm das programmiertechnische Können dazu. Ich will dir hier wirklich nicht an den Karren fahren, aber wenn du sowieso nichts konstruktives einzubringen hast, dann spar dir den Post bitte ganz.
    Zu deinem vorgekauten Codeschnipsel im 2. Post wär außerdem zu sagen, dass es eigentlich nicht Sinn und Zweck der Technikforen ist, den Leuten Lösungen für ihre Probleme zusammenzucoden und hinzuschmieren, damit sie sie sich rauskopieren können. Das ist sicher nett gemeint und führt auch garantiert schneller ans Ziel, aber der Lernfaktor ist dabei gleich Null. Wenn der Code ausführlich und dem Wissensstand des Fragestellers entsprechend durchkommentiert oder in einem funktionierenden, selbsterklärenden Example verpackt ist, lassen wir das in der Regel durchgehen, aber so wie du's gemacht hast, ist das eigentlich unerwünscht. Wir wollen den Leuten hier immerhin das Proggen beibringen, nicht den Verwendungszweck von Strg+C und Strg+V.

    An xxskxx (und die üblichen Verdächtigen): Jeder weitere Post, der nichts weiter als einen sinnfreien Link auf die Indexseite der Hilfe und/oder die Suchfunktion enthält (spöttische Nebenbemerkungen fallen im Übrigen unter "nichts weiter"), wird ab sofort als Spam behandelt. Das gilt nicht nur für diesen Thread, sondern für die gesamten Technikforen. Wenn ihr auf die Hilfe verlinken wollt, dann sagt dem entsprechenden Fragesteller bitte auch dazu, in welchen Kapiteln er nachschlagen sollte. Ich weiß bisher nur von einer einzigen Person, die die Hilfedatei komplett von vorne bis hinten und am Stück durchgelesen hat. Ansonsten ist das glaub ich jedem zu viel Aufwand. Wenn man nicht mal weiß, wonach man suchen muss, holt man da nur eins raus: Die Meinung, man habe sich mit dem aktuellen Projekt total übernommen - auch, wenn das vielleicht gar nicht so ist - und damit einhergehend einen gewaltigen Motivationseinbruch. Und sowas muss echt nicht sein.

    So, das wär jetzt mal mein Wort zum Sonn Donnerstag. Entschuldigt meinen etwas grimmigen Tonfall, aber die Zustände in diesem Thread sind - oder, hoffentlich, waren - grad wirklich zum Davonrennen.
  • na gut...ich versuche mich zu bessern und fange lieber mit D&D an...ich habe halt jahrelang mit rpg maker meine games gemacht, leider war dieses programm wirklich übertrieben eingeschränkt, deshalb hab ich beschlossen auch dem Game Maker ne Chance zu geben, da in diesem Sinne Game Maker "mächtig" ist...

    es ist halt eine riesige umstellung für mich und entschuldige mich für meine ständige fragen.....


    naja...ich mach dann mal solang D&D und versuch was einfacheres....

    ich kann ja chara zum laufen und springen bringen und schwerkraft kann ich einbauen, nur halt die ganzen Facings Posen und Animationen,masken und kollision ohne dass er hängt kann ich nicht.

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von RTZF ()