String_delete Problem, es wird nichts angezeigt.

  • GM 8

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

  • String_delete Problem, es wird nichts angezeigt.

    Hey, habe ein merkwürdiges Problem.

    Ich will hier einen Teil meines derzeitigen Raumnamens anzeigen lassen. Der Raum heißt r_1, ich will, dass es nur die 1 anzeigt.

    GML-Quellcode

    1. level1 = string(room_caption)
    2. level2 = string_delete(level1,0,2)
    3. draw_set_alpha(0.8)
    4. draw_set_color(c_white)
    5. draw_set_font(f_16)
    6. draw_text(view_wview[0]/2,16,level2)



    Jetzt wird aber garnichts angezeigt, mit den string_delete-Zahlen habe ich auch schon rumgespielt, keine Veränderungen.
    Husi012 hat mich nicht mehr in seiner Signatur, ich bin trotzdem noch fame.
  • versuch mal

    GML-Quellcode

    1. level2 = string_copy(level1,2,string_length(level1))

    anstatt

    GML-Quellcode

    1. level2 = string_delete(level1,0,2)
    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
  • dann ist warscheinlich level1 nicht lang genug,
    schau nochmal nach, ob du wirklich r_1 in level1 hast
    ich bezweifele das nämlich.
    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
  • husi012 schrieb:

    versuch mal

    GML-Quellcode

    1. level2 = string_copy(level1,2,string_length(level1))

    anstatt

    GML-Quellcode

    1. level2 = string_delete(level1,0,2)


    Ich schätze das von husi ist vom Ansatz her nicht falsch,
    aber versuch mal statt string_length(level1) einfach nur 1 einzusetzen, oder string_length(level1)-1.
    Ist ungetestet, aber vielleicht bringt es dich weiter.
  • hmm selbst wenn ich level1 anzeigen lasse steht da nichts, ich lasse es auf android laufen. liegts daran?

    Edit:

    Habe es jetzt so gelöst, dass ich nur room anzeigen lasse und eine Zahl addiere, bis ich die Zahl sehe wo ich will.
    Husi012 hat mich nicht mehr in seiner Signatur, ich bin trotzdem noch fame.
  • RLP schrieb:

    Ich schätze das von husi ist vom Ansatz her nicht falsch,
    aber versuch mal statt string_length(level1) einfach nur 1 einzusetzen, oder string_length(level1)-1.
    Ist ungetestet, aber vielleicht bringt es dich weiter.

    :D
    Typischer Fehler, wenn ich nicht teste
    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
  • Könnte es sein dass du deinem Raum einfach keine Caption gegeben hast?
    room_caption ist nämlich optional und kann eingestellt werden.
    Willst du den Namen des Raums haben dann versuchs mal mit room_get_name(room)
    Dann sollte der string auch nich mehr leer sein und es müsste mit Husi's Code gehen

    Allerdings würde ich um die 1 zu bekommen einfach string_replace_all(level1,"r_","") benutzen anstatt da irgendwie abzuzählen und son quatsch. (Vorrausgesetzt alle räume heißen r_*)
    Und die Variablen immer neuzusetzen kann man sich doch auch sparen.

    Somit resultiert:

    GML-Quellcode

    1. draw_set_alpha(0.8)
    2. draw_set_color(c_white)
    3. draw_set_font(f_16)
    4. draw_text(view_wview[0]/2,16,string_replace_all(room_get_name(room),"r_",""))


    Achtung: Ungetestet

    -Pac
    Sorm ist Schuld

    Edit: Doch ist er
  • Okey, danke! So funkionierts:

    GML-Quellcode

    1. level1 = room_get_name(room)
    2. level2 = string_delete(level1,1,2)
    3. draw_set_alpha(0.3)
    4. draw_set_color(c_white)
    5. draw_set_font(f_22)
    6. draw_text(view_wview[0]/2,18,level2)
    7. draw_set_alpha(1)

    Pacmangamer ich glaube du hast das mit dem Addieren falsch verstanen. room gibt ja immer die Raumnummer sprich Raum 1 ist 0, Raum 2 ist 1 und wenn Raum 1 jetzt level 1 ist, dann muss man nur 1 mal die 1 addieren.
    Husi012 hat mich nicht mehr in seiner Signatur, ich bin trotzdem noch fame.
  • Benutzer online 1

    1 Besucher