create_background abhängig von View!?

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

  • create_background abhängig von View!?

    Hallo!

    Ich bin grade dabei, einen Hintergrund auf Knopfdruck zu erstellen, der dem momentan sichtbarem Bild entspricht, also natürlich abhängig von meiner View.

    Nun hängt sich das Spiel aber plötzlich jedesmal auf, sobald ich folgende Zeile verwenden will:

    GML-Quellcode

    1. bg=background_create_from_screen(view_xview[view_current],view_yview[view_current],view_wview[view_current],view_hview[view_current],1,0,0);


    Hab schon rumprobiert, wenn ich zb

    GML-Quellcode

    1. bg=background_create_from_screen(0,0,800,480,1,0,0)

    mache geht das, sobald ich jedoch den View mit einbringen will hängt sich das Game auf.

    Woran liegts?! ?(
  • eigentlich musst du die variable bg doch erst zum einsatz bringen also mit dem code setzte du die variable bg ja nur auf den code also wie z.B. wenn du willste das im room Hallo steht und du das mit ner variable machen willst dann musst du

    GML-Quellcode

    1. text="Hallo"
    und dann im draw event

    GML-Quellcode

    1. draw_text(x,y,text)
    machen.
    Dieser Beitrag wurde 1993 mal editiert, zum letzten Mal von tricktickler: Morgen, 25:60

    Frag doch OnkelGoogle
  • Eigentlich ist der Code richtig... könnte es sein, dass du danach den Background zeichnest und dann sofort wieder das Bild als Background setzt und somit immer das selbe angezeigt wird?

    Dragoon
    int (*x(*x(int))[5])(int*);
    Confused? Yes, it's C!
  • es kan sein das ich falschliege, da ich immer fergesse was die funktionen view_wview bzw. _hview zurückgeben, aber ein meine das es durdie eingestellte höhe/breite ist. du müsstest also den script so umschreiben:

    GML-Quellcode

    1. bg=background_create_from_screen(view_xview,view_yview,
    2. viewe_xview+view_wview,view_yview+view_hview,1,0,0);

    übriens:
    warumm eigentlich immer sowas: view_yview[view_current] wen du nix dahinterschreibst wird sowieso immer der curentview genommen. die [ ] brauchst du nur wen du einen anderen view zur berechnung brauchst.
    :) Nobody is perfect (-:

    "Dummköpfe sind Denkerköpfen weit überlegen. Zahlenmäßig." Ernst Ferstl
  • @tricktickler: klar, das weiss ich, aber das game hängt sich ja schon auf sobald ich den bg der Variable zuweisen will.

    @Dragoon:
    Nee, ich hab in meinem Game als das Problem aufgetaucht ist mal probeweise ein Objekt erstelt, dass einfach beim drücken von P eben diese eine oben angegebene Zeile mit create_background ausführt, aber das Game hängt sich auf. So hab ich ja rausgefunden, dass es an eben dieser einen Codezeile liegt.

    Original von Nobody-86
    warumm eigentlich immer sowas: view_yview[view_current] wen du nix dahinterschreibst wird sowieso immer der curentview genommen. die [ ] brauchst du nur wen du einen anderen view zur berechnung brauchst.


    thx :)

    also hab das jetzt mal abgeändert:
    Im Press "P" (nicht Keyboard "P") Event steht folgender Code

    GML-Quellcode

    1. bg=background_create_from_screen(view_xview,view_yview,view_xview+20,view_yview+20,1,0,0);

    und sobald ich "P" drücke, hängt sich das Game auf :/.

    :headtouch: HILFE :headtouch:!!!!!
  • *löööö*, also nachdem ich jetzt den Code von Blackspark,bzw. Verwurster verwendet hab hat sich
    das Game erst aufgehängt und dann der PC neugestartet als ich probiert hab die Kontrolle über mein Windows wiederzuerlangen :lol:
    Obwohl mir der Code von euch sehr logisch vorkommt.Ich glaube auch dass das eigentlich funktionieren müsste, aber da is wohl bei mir irgendwo n Wurm drin...

    Wie auch immer, ich hab das ganze jetzt anderst gelöst;
    Der Effekt ist für ein Pausemenü gedacht, und da dachte ich halt ich nehme als Hintergrund für ebendieses einfach einen Hintergrund den ich direkt aus dem aktuellen Bild erstelle, aber das bin ich jetzt einfach umgangen indem ich

    GML-Quellcode

    1. bg_p=background_create_color(1,1,c_red,0);

    und

    GML-Quellcode

    1. draw_background_ext(bg_p,view_xview,view_yview,view_wview,view_hview,0,c_red,0.5);

    verwende.
    Der Effekt kommt ja aufs gleiche raus. Trotzdem danke für die (reichhaltige!) Hilfe!