Problem Obj. Stoppt unabsichtlich

  • GM 8

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

  • Problem Obj. Stoppt unabsichtlich

    Hi Leute.

    Wie kann ich folgenden fehler beheben.

    Ich lasse ein Objekt ( obj_ball) spawen. Das ist solid. Und es bewegt sich z.b. von oben nach unten.
    nun hab ich das Obj_ Player( Nicht solid) das auf Obj_ball schießen kann. Der Schuss(nicht solid) den Obj_Player erzeugt. bleibt sozusagen an obj_player dran. Dieser Schuss führt über das Draw_event einen Script aus. Der wiederum " stretcht " den Schuss in die länge und testest mittles "if place_free" , ob sich Gegner ( obj_ball ) in seiner Line befinden.
    Nun zu meinem Problem,... Wenn ich mit meinem OBj_player ins Obj_ball " hineinfliege" , hört der Ball auf sich nach unten zu bewegen. Der stopp mit seiner bewegung sobald der Schuss ihn berührert.
    Wie bekomme ich das hin das er nicht seine Bewegung unterbricht.
  • Never ever : solid bei bewegenden Objekten!
    Generell ist das benutzen von solid eine schlechte Praktik. Wenn du da dein eigenes System machst ist das um Welten besser. Wie ich es verstanden habe änderst du x_ bzw. y_scale des objekts um dann für eine Kollision zu testen?
    wie wäre es denn wenn du garkein obj_schuss erstellst sondern statt dessen nur eine Lienie per draw_line() malst und die Kollision wie folgt testest :

    GML-Quellcode

    1. //in obj_player
    2. var col;
    3. col = collision_line( x, y, x+lengthdir_x(SCHUSSLAENGE,image_angle), y+lengthdir_y(SCHUSSLAENGE,image_angle), obj_ball, true, true);
    4. if (col != noone) {
    5. //TREFFER
    6. //col hält die id des balls
    7. }
    132 little bugs in the code. 132 little bugs. Fix a few, set the compiler to stew, 172 little bugs in the code... :vogel: