view_left,view_top...

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

  • view_left,view_top...

    Hi liebes Team.

    Hier schreibt wieder einmal (ein gar nicht so lieber) Karli, der lange weg war. Zwar war er kurz dazwischen hier, versprach, bald auf alle PNs zu antworten und schlich sich dann wieder fort. Ja, er ist tatsächlcih ein Mistkerl...

    Das hat viele Gründe - Grund 1 mein Job, Grund 2 meine Hobbys (es sind viel zu viele - darum mach ich nichts ordentlich), Grund 3 mein Pc mit Boot-Virus, der mir nicht einmal erlaubt, diesen neu aufzusetzen. Tja, bin eben leider kein Doogie Howser...

    Und dennoch bin ich arrogant genug, eine Frage zu stellen. Vergebt mir...

    Nun, Jahre später, habe ich beschlossen, meine angefangenen GM-Projekte endlich zu "vollenden". Da "Jumping Gustav 3" ein recht ungeschickt programmiertes GM5-File ist, habe ich begonnen, ihn mit Hilfe der 6er Version "upzudaten". Hoch lebe Copy & Paste...

    Leider funktioniert die Copy&Paste-Geschichte nicht bei jedem Script.
    Es geht um ein Beispiel wie:

    draw_background_scaled(background0,view_left,view_top,2)
    for (i=0; i< room_width; i+=90){draw_background(background_level01,i+(view_left/2)+396,200)};


    Während Version 5 dieses Script (im Draw Event) versteht, streikt Version 6. Sie dürfte "view_left" und "view_top" gar nicht kennen, da sie nicht blau markiert sind. Ist das richtig? Wenn ja, habe ich bei sehr vielen Scripts ein Riesenproblem...

    Bitte helft mir - wie könnte ich dieses Script der 6er Version anpassen?
    Wär ich doch bloss nicht ein lebenslänglicher GM-Anfänger.
    Wirklich verstehen werde ich den ganzen Mist nie.
    Aber ich möchte endlich mein JG3 fertig machen (die 5er Version sah gar nicht so schlecht aus)...

    Danke vielmals und viele Grüsse,
    Karli.
  • draw_background_stretched(back,x,y,w,h) Draws the background stretched to the indicated region.

    eigentlich gibts ne gamemaker help datei (oder die deutsche übersetztung auf dieser seite)!
    Dragoon
    int (*x(*x(int))[5])(int*);
    Confused? Yes, it's C!
  • Keine Ahnung. Zeigte mir einfach eine Fehlermeldung.

    Inzwischen habe ich mich in aller Ruhe hingesetzt, verglichen mit Examples, ein bisserl nachgedacht (tut zwar weh, aber hin und wieder probier ich es auch) und habe die Sache anders gelöst.

    Und zwar mit einem Script-Aufruf im Draw-Event.

    Script lautet in meinem Fall:
    draw_background(background_index[0],view_xview[0],view_yview[0])
    draw_background_tiled(bg_level01_hg,view_xview[0]/1.15,view_yview[0])
    draw_background_tiled(bg_level01_vg,view_xview[0]/1.5,view_yview[0]+240)

    Ist also recht einfach.
    Dank Deines Hinweises ("draw background") bin ich mit Hilfe der deutschen Help-Files (ist eben immer schwierig, etwas zu finden, wenn man gar nicht genau weiss, was man sucht) weitergekommen.

    Nun habe ich nur noch - versprochen - EIN Problem.

    Es ist die Sache mit dem "tiled" (draw_background_tiled)

    Was in aller Welt muss ich tun, damit der nur die EINE Achse "tiled"? Also ich hätte gerne das Hintergrund-Bild wiederholt - nicht aber in der y-Achse.

    Bitte helft mir nur noch dieses eine Mal, dann habe ich das bescheuerte Gerüst so gut wie fertig...

    Danke vielmals & schöne Grüsse.
  • draw_background_tiled_ext(back,x,y,xscale,yscale,color,alpha)
    und das wäre warscheinlich dein code:
    draw_background_tiled_ext(bg_01,view_xview[0],view_yview[0],1,view_hview,c_white,1)
    Dragoon

    EDIT: benötigt gm registrierung
    int (*x(*x(int))[5])(int*);
    Confused? Yes, it's C!

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

  • Funktioniert leider auch nicht.

    Um Euch nicht länger zu quälen, habe ich das gmd-File hochgeladen.
    Von den (bereits fertigen) 10 Levels, animierten Sprites usw. ist hier nichts zu sehen - dadurch ist die Datei nur 266kb gross.

    Bittesehr:
    kht.tv.co.at/jg3_geruest.gm6

    Zu Beginn öffnet sich das Info-Fenster, in dem ich noch einmal auf mein Problem hinweise...

    Würde mich bestialisch freuen, wenn das jemand korrigiert. Der Fehler kann nur in einer Zeile liegen (steht in der Info zu Beginn)...

    Danke vielmals und viele Grüsse.
  • hier ein script, das nur nach rechts tiled:

    GML-Quellcode

    1. //Script: draw_background_htiled(background, x, y)
    2. bg_width = background_get_width(argument0);
    3. for(c = 0; c < ceil(room_width/bg_width); c++) {
    4. draw_background(argument0, (argument1 mod bg_width - bg_width) mod bg_width + bg_width * c, argument2);
    5. }
  • Sodala.

    Nach einem interessanten Gespräch im gestrigen Abend-Chat (ich schaff´s eben nicht ´mal, das Script dort einzufügen, wo es hingehört) hat mir das nette Team geholfen. Danke allen Beteiligten - vorallem Agnahim.

    Genauso wollte ich es haben!
    Supi hoch 12.

    Und nun kann ich weitermachen.

    Das File auf meinem Server ist gelöscht und mein momentanes Problem gelöst.

    Nochmals Riesendank und bis bald;
    Grüsse,
    Karli.