Simple Klicksteuerung wird falsch ausgeführt-edit1

  • Allgemein

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

  • Simple Klicksteuerung wird falsch ausgeführt-edit1

    salü miteinander!
    ich arbeite per dnd an einem simplen klickspiel für windows.
    es geht darum, dass ich durch klicken eine spielfigur bewege (sie läuft in die richtung des clicks).
    also im raum ist ein spielerobjekt (eine figur) und ein objekt, dass nur zum kontrollieren existiert (sozusagen der controller).
    angefangen habe ich im controller-objekt mit dem event maus-global, left_release dass die figur dorthin geht, wo mouse_x & y sind.
    getestet, funktioniert. freude.

    1. frage: ich nehme ein neues objekt rein: eine rote bodenplatte. wenn man auf diese drückt, bewegt sich die spielerfigur 9 anstatt 4 speed bei der normalen clickbewegung.
    nochmals getestet und geht... aber halt!
    wenn man auf die rechte seite der roten platte klickt, passiert nichts!
    sprite angeschaut, kollision ist auf ganzes sprite und trotzdem funktioniert es nicht... an was könnte das liegen?

    2. frage: wollte noch ein hinderniss einbauen bei der man auf draufklick es verschwinden lassen kann (ohne die richtung der spielfigur zu beeinflussen).
    also hab ich folgendes per dnd zusammengeklickt:
    hat es kein hinderniss (check object) bei click auf mousex&y
    start block
    hat es keine rote bodenplatte auf mousex&y
    normal bewegen
    endblock

    sollte also implizieren, dass die bewegung nicht ausgeführt wird, wenn ein hinderniss dort ist. tut es aber...
    wie kann man da was machen, dass es funzt?

    arbeite per dnd und ohne coden, schreibe auch hier recht abgehackt da ich nur mit einer hand schreib (schulterbruch)... hoffe man verstehts trotzdem
    edit: zur besseren verständlichkeit kurz überarbeitet
    grüsse

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

  • zur zweiten frage ist es ganz einfach
    wenn du das mit global left release machst musst du vor dem dnd Code
    erst abfragen ob sich die Maus nicht über dem Hindernis ist.
    ich kann überhaupt nicht dnd versuche es aber trozdem:

    :event_mouse:
    :action_ifvariable:
    variable: mouse_x
    value: Hindernis.x
    operation: equal to
    Not: häckchen
    :action_ifvariable:
    variable: mouse_y
    value: Hindernis.y
    operation: equal to
    Not: häckchen
    :action_begin:
    hier dann den Code fürs Hinderniss
    :action_end:
    :action_else:
    hier dann den Code zum hinlaufen

    hoffe ich habe es richtig gemacht
    Ein Bug ist mehr als nur ein Bug, es ist ein... Käfer!
    Egal, wie gut du eine Mauer baust, sie fällt um.... der klügere gibt nach :D

    Willst du mit mir auf Discord Chatten/Quatschen?
    Meine Husi's Tutorial Reihe
  • danke für eure antworten!
    ich hab jetzt recht lange rumprobiert und wieder fragen:
    die figur bewegt sich nun dank step towards im step-event zur maus und stoppt dann.
    jetzt geht es um hindernisse.
    wenn ich auf ein hinderniss klicke, dann wird die instanz gekillt (des hindernisses).
    dabei will ich natürlich nicht, dass die figur dahin bewegt (weil man ja drauf geklickt hat).
    deshalb wie oben gesagt zwei if not ein hinderniss dort ist dann geh dorthin für x und y gemacht.
    funktioniert nicht.
    ich denke ich weiss auch wieso, weiss aber nicht wie umgehen:
    wenn ich aufs hinderniss klicke, wird nur der exakte target_x und target_y genommen. das hinderniss 64x64 ist pixel gross, deshalb müsste es auch dies beinhalten.
    beispiel: hinderniss ist auf 255x233, ich klicke auf 257x233 (was auf dem hinderniss wäre, jedoch nicht zu der mausabfrage passt) - die spielfigur läuft dazu.
    was kann man da machen?

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

  • Benutzer online 1

    1 Besucher