Pistenraupen Simulator Surface problem

  • GM 6
  • Pistenraupen Simulator Surface problem

    Ich bin neu hier und brauche hilfe!

    Ich bin gerade an einem Pistenraupen Simulator, die Welt usw habe ich schon gemacht.
    aber jetzt muss nur noch der Weg markiert werden(z.B. rot) wo die Pistenraupe her gefahren ist. habs schon mit Surfaces probiert hat aber nicht geklappt.
    habe ich was falsch gemacht ?( ?( . Außerdem soll wenn man einen bestimmten teil abgefahren hat z.B. die Hälfte soll man punkte bekommen.
    danke schon mal im voraus!!

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

  • wenn ich das richtig verstanden habe willst du eine linie hinter deinem objekt erstellen oder?
    also da kannst du entweder andauernd ein objekt erstellen oder hin und wieder und diese mit einer linie verbinden



    zum zweiten du kannst verschiedene objekte erstellen und wenn dein spieler diese berührt wird bei einer variable etwas hinzugefürgt
    und wenn diese größer als 10 oder so ist bekommt dein spieler punkte

    hilf das irgendwie ?(

    so ganz versteh ich auch nicht dein problem

    EDIT:sowas wie domis4 meint da braucht man dann nur ne path

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

  • meinst du mit "her gefahren ist" eher "bisher gefahren ist"?

    Wenn ja dann wären der Performance wegen Surfaces besser.
    Weist du wie man mit Surfaces umgeht?
    Wenn ja dann lass den Untergrund einmal auf die surface zeichnen und ab dann in einem Controlerobject selbst zeichnen, also die Surface, so sieht es aus als ob der Normale Hintergrund da wäre.
    Dann muss du nur noch inws Step event deiner raupe gehen und dort diese linie, punkte oder Sprites 8wie auch immer der weg aussehen soll) zeichnen.


    Also mit

    surface_set_target(back_surface);
    draw_circle(x,y,4,false);
    surface_reset_target();

    Willst du auf diese Drachen und -eier klicken?
    Sie werden sich freuen ;)
  • danke für die schnellen antworten :)

    @virus27
    das mit der linie ist schon nicht schlecht. aber die linie soll so groß sein wie das objekt. die überfahrene fläche soll sich verändern!

    @domis4
    eigenlich soll meine schneeraupe nicht einer linie folgen denn man fährt diese ja selbst!.

    EDIT: nein ich weiß nich wirklich wie man mit surfaces umgeht
  • Ok, dann benutz statt draw-circle,das hier:

    len ---> halbe Länge der raupe
    width --> Breite des tanks

    draw_line_width(x+lengthdir_x(len,direction+180),y+lengthdir_x(len,direction+180),x+lengthdir_x(len,direction),y+lengthdir_x(len,direction),width);


    EDIT: Dann lies dir im Manual das kapitel durch, es ist nicht so schwer, wenn dus nicht hinkriegst kann ich den code posten.

    Willst du auf diese Drachen und -eier klicken?
    Sie werden sich freuen ;)
  • War, essen, sorry, ich poste gleich code.

    Wenn man es so macht, mit Objekten wird das Spiel ziemlich schnell laggen, ich meine bei einem Speed von 30 werden 30 Objecte pro Sekunde erstellt, das verlangsamt extrem.

    Ich poste gleich nen Code..


    EDIT: oh, du benutzt GM6?? Das ist doof, ich weis nicht ob die funktionen übereinstimmen?
    Naja ich poste trotzdem.


    Ok, in ein Controler Object das immer im Raum ist:

    Creation event:

    GML-Quellcode

    1. globalvar back_surface;
    2. back_surface = surface_create(room_width,room_height);
    3. surface_set_target(back_surface);
    4. draw_clear_alpha(c_black,0):
    5. draw_background(background_index[0],0,0);
    6. surface_reset_target();

    Dann ins Draw event:

    GML-Quellcode

    1. draw_surface(back_surface,0,0):

    Dann ins step event (nicht draw event!) der raupe:

    GML-Quellcode

    1. len ---> halbe Länge der raupe // du must hier die halbe Länge der Raupt eingeben
    2. width --> Breite der Raupe // hier die Breite
    3. surface_set_target(back_surface);
    4. draw_line_width(x+lengthdir_x(len,direction+180),y+lengthdir_x(len,direction+180),x+lengthdir_x(len,direction),y+lengthdir_x(len,direction),width);
    5. surface_reset_target();


    Das sollte gehen denk ich xD

    Das controler Object muss eine Größere Depth haben als alle objecte die den Untergrund zeichnen und dr raupe.

    Willst du auf diese Drachen und -eier klicken?
    Sie werden sich freuen ;)

    Dieser Beitrag wurde bereits 6 mal editiert, zuletzt von DragonGamer ()

  • Ob du es glaubst oder nicht, die Überschrift eines Themas sollte zusammenfassen, worum es geht. Ganz grob. Nicht wie dringend dein Anliegen ist. Bei mir hast du jedenfalls gleich einen schlechten Eindruck gemacht, und ich glaube das geht vielen anderen ähnlich. Merke dir das für dein nächstes Thema, ich werde dir so nicht helfen ;)
  • Im grunde ist das das gleiche as ich gepostet hab, nur das ich noch den Hintergund am Anfang auf die Surface zeichnen wollte, damit dieses nicht verdeckt wird, aber eigentlich ists überflüssig wenn man die Surface transparent macht.

    Willst du auf diese Drachen und -eier klicken?
    Sie werden sich freuen ;)