Coincreator

  • GM 8

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

  • Wieder mal ein Problem:

    ich hab einen Stein. Der schwebt. Wenn ich jetzt mit dem Player unten den Stein berühre, soll oben drauf eine Münze (Sprite hab ich) erscheinen.
    Wie bei Super Mario.

    Ich hab jetzt beim Player beim Event :event_collision: Stein

    GML-Quellcode

    1. instance_create (x=-17,y,obj_coin)
    2. relative=true


    Der Stein ist 16x16px gross.

    Aber jetzt das Problem:
    1. Die münze erscheint nicht auf dem Stein, sondern wahrscheinlich bei x=-17, y=0 (nicht zu sehen), das war ja vorhersehbar, aber wie sag ich dem Programm jetzt dass es eben vom Player aus gesehen x=-17 erscheint?
    2. Ich hab mal bei x und y 10 genommen, damit es sichtbar ist: Da erscheinen jetzt aber viele Münzen, nicht nur eine. Wieso?

    Ich raffs nicht! Ich probiere daran schon fast eine Stunde herum!
    Schul-Abschlussarbeit: Gamesammlung

    Made with: Game Maker 8 Pro
    Fertigstellung: Frühling 2011


    Fortschritt:
    Games: 5/20 (voraussichtlich 20)
    Gameübersicht-Fortschritt: 0%
  • Geht nicht:
    Unknown variable relativ

    Ich dachte s wär ein schreibfehler (was es wahrscheinlich auch ist) und habs in "relative" umgewandelt; dasselbe problem... :(
    Schul-Abschlussarbeit: Gamesammlung

    Made with: Game Maker 8 Pro
    Fertigstellung: Frühling 2011


    Fortschritt:
    Games: 5/20 (voraussichtlich 20)
    Gameübersicht-Fortschritt: 0%
  • Ich weiss jetzt nicht genau was du mit "...relative aber nicht von d&d auf gml übertragen oder?" meinst, aber ich will eigentlich nur, dass ein object bei x-17 (vom Spieler ausgesehen) erscheint, also wenn ich den Stein unten berühre, soll 17px über dem Spieler eine Münze erscheinen.
    Schul-Abschlussarbeit: Gamesammlung

    Made with: Game Maker 8 Pro
    Fertigstellung: Frühling 2011


    Fortschritt:
    Games: 5/20 (voraussichtlich 20)
    Gameübersicht-Fortschritt: 0%
  • O-kay jetzt ma ganz langsam, nochmal für dumme Leute.

    Wo soll ich das jetzt reinschreiben, und was soll ich löschen?
    Schul-Abschlussarbeit: Gamesammlung

    Made with: Game Maker 8 Pro
    Fertigstellung: Frühling 2011


    Fortschritt:
    Games: 5/20 (voraussichtlich 20)
    Gameübersicht-Fortschritt: 0%
  • Ich glaube Marvin meint du sollst diesen Code:

    GML-Quellcode

    1. instance_create (x-17,y,obj_coin)

    In das Player objekt und darin in das Colisions Event mit dem Block (Da würde ich es reinmachen.)

    Ist es dir wichtig das es mit GML ist? Wenn nähmlich das da oben nicht funktioniert machst du einfach stadessen diese Aktion rein:
    Create Instance:
    Bei X gibst du 17 ein und bei Y gibst du 0 ein und bei Relative machst du ein Hacken! dann gehts,
    Und bei dem Objekt nimmst du einfach die Münze.

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

  • @Rohkar : es funktioniert! Juhu!

    Das Problem geht aber noch weiter:

    1. Wie mache ich es, dass nur, wenn ich unten am Block ankomme, darauf eine Münze erscheint, und sonst aber nicht?

    2. Wie mache ich, dass nur EINE Münze erstellt wird?

    Gruss

    Goldendragon
    Schul-Abschlussarbeit: Gamesammlung

    Made with: Game Maker 8 Pro
    Fertigstellung: Frühling 2011


    Fortschritt:
    Games: 5/20 (voraussichtlich 20)
    Gameübersicht-Fortschritt: 0%
  • Also, das nur eine Münze raus kommt kann man ganz einfach mit D&D machen du musst nur ins Collisions Event mit dem Player_Object diese Aktionen rein machen:
    Create: X=0 Y=0 Relative=True Object=(Ein objekt das Genau so ist wie der Münzblock ist nur das im Collisionsevent nur ein Aktion ist das den Player stoppt! Die anderen werden Rausgemacht. Einfach nur das Player_Object kopieren und die Sachen die ich gesagt hab rausmachen!)
    Destroy: Self

    So, dass wird dann unten an das Ende des Collisionsevent mit dem Player_Object reingemacht!
    Ich hoffe es funktioniert schreib einfach das Ergebnis mir oder schreib es hier rein.
    MFG Rohkar
  • @ -$Marvin$-: Glaubs mir: Ich habs probiert! Man ey ich bin ein ANFÄNGER. NOOB! Brauchst du's noch deutlicher?

    @Rohkar: "ein Aktion ist das den Player stoppt" ?
    Ich hab von "Object=" bis "Destroy: Self" kP.
    Schul-Abschlussarbeit: Gamesammlung

    Made with: Game Maker 8 Pro
    Fertigstellung: Frühling 2011


    Fortschritt:
    Games: 5/20 (voraussichtlich 20)
    Gameübersicht-Fortschritt: 0%
  • wenn du willst das nur eins erstellt wird, dann machst du:

    Create event:

    GML-Quellcode

    1. besetzt = false // Variable wird auf falsch gesetzt


    Collisions event:

    GML-Quellcode

    1. if besetzt = true exit; // Wenn besetzt wahr ist, verlässt er das event
    2. instance_create (x-17,y,obj_coin) // Objekt erstellen
    3. besetzt = true // Besetzt variable wird auf wahr gesetzt.



    Sollte irgentwo oder irgendwann die münze verschwinden sollen, und dann später bei einer collision wieder so etwas erstellt werden soll, dann musst du bei dem event wo auch die münze zerstört wird schreiben:

    GML-Quellcode

    1. instance_destroy() // Das eigene Objekt zerstören
    2. if instance_destroy() besetzt = false // Wenn das eigene Objekt zerstört wird, dann wird variable wieder auf falsch gesetzt.


    Das muss aber im selben objekt sein! Weil würdest du die Var globalisieren, dann würde das nichmehr funzen :s
    mfg Salmi
  • Jetzt ist nur noch das Problem:
    Unknow Variable: besetzt
    Schul-Abschlussarbeit: Gamesammlung

    Made with: Game Maker 8 Pro
    Fertigstellung: Frühling 2011


    Fortschritt:
    Games: 5/20 (voraussichtlich 20)
    Gameübersicht-Fortschritt: 0%
  • das muss du dir merken: Wenn er eine unknown variable schreibt, dann hast du die falsch im create event eingegeben.

    Sind 2 objekte hier im spiel?
    Hast du ganz sicher die selben namen genommen? vll. verschrieben? (besezt statt besetzt,...)

    edit: zu den Unknown... Kann natürlich auch sein das du bei den anderen events nicht das gleiche dazugeschrieben hast... beim proggen kann schon ein falscher buchstabe n error auslösn o.o
    mfg Salmi

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

  • Ok jetzt funktionierts.
    Ich hab dich nicht richtig verstanden: Ich hab das besetzt = false im Create Event des Blockes eingesetzt.

    Aber jetzt gehts weiter:

    Ich möchte, dass der Player die Münze erst bekommt, wenn er sie oben holen geht.
    Jetzt war es so: Der Player hittet den Block, die Münze erschien ganz kurz (meistens nicht oben auf dem Block) und verschwand wieder. Dann war der Score: 10

    ???
    Schul-Abschlussarbeit: Gamesammlung

    Made with: Game Maker 8 Pro
    Fertigstellung: Frühling 2011


    Fortschritt:
    Games: 5/20 (voraussichtlich 20)
    Gameübersicht-Fortschritt: 0%