Unterschied von String und integer...

  • GM 8

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

  • Unterschied von String und integer...

    hey, ich möchte folgendes drawn:

    draw_text(view_xview[0]+500,view_yview[0]+10, string(zeit)+' Zeit')
    'Zeit' Wird auch gedrawt, doch string (zeit) nicht.

    string ist ja normal nur für zeichen, aber was muss ich stattdessen nehmen? In einem andren spiel von mir gings so:

    draw_text(view_xview[0]+90,view_yview[0]+15 , 'Fuel: ' +string(round (global.fuel)));

    global.fuel war auch nur ne zahl...
    und ich weiß nicht wie ich integer normal schreiben soll? Ich weiß nur was get_integer macht^^

    danke - wie immer - schonmal für eure antworten...
    mfg Salmi
  • Der Game Maker hat zwei Datentypen die reals und die strings. Die reals können nur Zahlen beinhalten (42, 3.1415926, true(hat ein Wert von 1, man kann also auch 1 schreiben)). String können nur Zeichen beinhalten("Hello World!", "Hello"+" World!"). Der Game Maker bietet dabei zwei Funktionen um einen real zu einen string zu machen und einen string zu einen real.
    Diese Funktionen nenne sich real und string.

    Du kannst reals einfach mit string(42) zu einen String machen. Ich würde nun mal gucken welchen Wert zeit und z.B. mit Debug abfragen (im Q Press Event show_message(string(zeit)) oder so) raus finden.
    wupto.net/ Nicht meine Seite!
    We love Koalas.

    GM-D-Spam-o-Meter: 32%
  • global.fuel war auch nur ne zahl...
    und ich weiß nicht wie ich integer normal schreiben soll? Ich weiß nur was get_integer macht^^

    Da der Game Maker mit Variants afaik Arbeitet, wird bei einer Variable erst bei einer Wertzufeisung der Typ festgelegt. Also brauchst du dich darum nicht selbst kümmern, vielmehr kannst du es gar nicht.

    So ganz versteh ich dein Problem jedoch nicht. Wenn es sich bei der Variable zeit um eine Zahl handelt, und nicht um einen String wird das mit string(x) in einen Text umgewandelt. Deswegen sollte das auch funktionieren.

    Vielleicht wäre der Error welcher erscheint ganz Sinnvoll mit durchzugeben. Überprüfnochmal ob du der Variable, bevor du sie Zeichnest , einen Wert zuweist.

    Mfg.,
    Mokoyobi
    木曜日 (Mokuyōbi)
  • hmm danke erstmal für eure antworten...

    mein problem: draw_text(view_xview[0]+500,view_yview[0]+10, string(zeit)+' Zeit')
    hier wierd keine error message angezeigt, ich habe der variable vorher auch einen wert zugeteilt, aber er schreibt nunmal nur Zeit, also das in ' ' steht. das vorherige ignoriert er einfach.

    naja ich schreibs mal so:
    create event: zeit = 0
    step event: zeit += 1
    draw event ohne if abfrage: draw_text(view_xview[0]+500,view_yview[0]+10, string(zeit)+' Zeit')

    hmm.. und ...
    dieser code ging bei einem anderen spiel:
    "draw_text(view_xview[0]+90,view_yview[0]+15 , 'Fuel: ' +string(round (global.fuel)));"
    den hab ich als test bei dem andren eingefügt und dort wird ebenfalls nur "Fuel:" angezeigt...
    mfg Salmi
  • Der Game Maker hats nicht so mit Fehlernachrichten, leider. Der ignoriert oft einfach sowas.
    Ich kann nur sagen, dass es für mich funktioniert. Vielleicht hast du irgendwo einen Leichtsinnsfehler eingebaut.
    Wenn du den nicht selber findest, lad doch mal deine Datei hoch. Vielleicht können wir dir dann helfen.
  • Nochmal in kurz:

    - Variablen im GM sind immer Strings oder Reals (Zeichenketten oder Zahlen)
    - durch spätestens eine Zuweisung wird festgelegt, was sie sind (gilt nicht für built-in Variablen wie hspeed, die sind vordefiniert)
    - will man sie nachher als das jeweils andere benutzen, muss man real(variablenname) bzw. string(variablenname) benutzen. Für eine x-Koordinate wäre dies also z.B. immer show_message(string(x));
  • hmm lustig es funktioniert einfach nich :s...
    egal ob mit real oder string...

    jetzt zeigt er (aus welchen Grund auch immer) aber einen error.. der war vorher noch nicht und das problem gabs allgemein noch nich...

    Spoiler anzeigen
    ERROR in
    action number 1
    of Draw Event
    for object obj_draw:

    Error in code at line 23:
    draw_text(view_xview[0]+500,view_yview[0]+10, real(zeit) + 'Zeit')
    ^
    at position 61: Wrong type of arguments to +.


    was ist da falsch bei dem +? ohne dem gehts ja auch nicht ^^

    hehe, jetzt is das prob nimmer da... aber es wird einfach nicht angezeigt ._.
    mfg Salmi
  • das sollte er ja auch nicht... aber er soll beide anzeigen, und ich glaube mal das es ja anders nich geht?

    Edit: hmmmm... lol xDD
    wenn ich den code in ein andres objekt einfüg wo sonst noch kein code is gehts nich.
    wenn ich den code in n andres, komplett neues spiel einsetz, dann gehts... löl?^^
    mfg Salmi
  • copyboy schrieb:

    Salmi schrieb:

    wenn ich den code in n andres, komplett neues spiel einsetz, dann gehts... löl?^^
    Ich sagte nicht umsonst, dass es nicht schlecht wäre, wenn du uns deine Datei geben würdest :P
    das ist mir auch bewusst, aber meine codes sind (obwohl ich noch nicht weit bin) eigenartig xD

    naja wie auch immer^^: file-upload.net/download-3339212/wspiel.gmk.html
    mfg Salmi
  • Wenn du mit einen Font schreibst, denn du nur auf "Letters" (sprich: 65-122) eingestellt hast, kann der natürlich sich die Zahlen nicht iwo herklauen :)

    Einfach mal bei deinem Font "FirmenNamen" bei Charakter Range auf All drücken, dann kannst du Buchstaben, Zahlen sowie sonderzeichen schreiben.

    Mfg.,
    Mokuyobi
    木曜日 (Mokuyōbi)
  • aah stimmt xDD danke :thumbup:
    Das erklärt auch warum es auch nicht im anderen objekt gegangen ist^^...
    aber mir kommts ernsthaft so vor, das ich den code sogar (aus verzweiflung xD) oberhalb der font einstellung gesetzt hab :o... Naja wie auch immer, jetzt funktionierts^^. danke.
    mfg Salmi
  • Benutzer online 6

    6 Besucher