Variable gibt Wert 0 aus (Fehler!)

  • GM 8

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

  • Variable gibt Wert 0 aus (Fehler!)

    Hallo zusammen

    Folgendes Problem...

    Beim Bodycheck soll unter anderem der Schmerzensgrad des Patienten angezeigt werden. Alle anderen Variablen funktionieren. Nur dieser Schmerz nicht. Es stehen lediglich zwei Nullen da.
    Ich poste die entsprechenden Code-Teile.


    obj_patient1
    CREATE EVENT

    Spoiler anzeigen

    GML-Quellcode

    1. global.bewusstsein = 3; //0: bewusstlos, 1: somnolent, 2: verwirrt, 3: klar
    2. global.bewusstsein_text = 0;
    3. global.atmung = 3 //0: apnoe, 1: bradypnoe, 2: tachypnoe, 3: normal
    4. global.atmung_text = 0;
    5. global.atemwege = 1 //0: verlegt, 1: frei
    6. global.atemwege_text = 0;
    7. global.kreislauf = 1; //0: instabil, 1: stabil
    8. global.kreislauf_text = 0;
    9. global.wunden = 2; //0: grosse wunde/blutung, 1: kleine wunde 2: keine wunde
    10. global.wunden_text = 0;
    11. global.schmerzen = 2; //0: starke schmerzen, 1: mittelstarke schmerzen, 2: leichte schmerzen, 3: keine schmerzen
    12. global.schmerzen_text = 0
    Alles anzeigen


    STEP EVENT
    Spoiler anzeigen

    GML-Quellcode

    1. //ANAMNESE
    2. global.anamnese = "Aua! Ich bin von der Leiter gestürzt. Nun schmerzt mein Rücken so sehr.#Keine Allergien. Keine Medikamente. Keine Vorerkrankungen";
    3. //BEWUSSTSEIN
    4. if (global.bewusstsein == 3) {
    5. global.bewusstsein_text = "Bewusstseinsklar. "
    6. }
    7. if (global.bewusstsein == 2) {
    8. global.bewusstsein_text = "Patient somnolent. ";
    9. }
    10. if (global.bewusstsein == 1) {
    11. global.bewusstsein_text = "Patient verwirrt. ";
    12. }
    13. if (global.bewusstsein == 0) {
    14. global.bewusstsein_text = "Patient bewusstlos. ";
    15. }
    16. //ATMUNG
    17. if (global.atmung == 3) {
    18. global.atmung_text = "Atmung normal. ";
    19. }
    20. if (global.atmung == 2) {
    21. global.atmung_text = "Tachypnoe. ";
    22. }
    23. if (global.atmung == 1) {
    24. global.atmung_text = "Bradypnoe. ";
    25. }
    26. if (global.atmung == 0) {
    27. global.atmung_text = "Apnoe. ";
    28. }
    29. //ATEMWEGE
    30. if (global.atemwege == 1) {
    31. global.atemwege_text = "Atemwege frei. ";
    32. }
    33. if (global.atemwege == 0) {
    34. global.atemwege_text = "Atemwege verlegt. ";
    35. }
    36. //KREISLAUF
    37. if (global.kreislauf == 1) {
    38. global.kreislauf_text = "Kreislauf stabil. ";
    39. }
    40. if (global.kreislauf == 0) {
    41. global.kreislauf_text = "Kreislauf instabil. ";
    42. //WUNDEN
    43. if (global.wunden == 0) {
    44. global.wunden_text = "Grosse Wunde / Blutung. ";
    45. }
    46. if (global.wunden == 1) {
    47. global.wunden_text = "Kleine Wunde. ";
    48. }
    49. if (global.wunden == 2) {
    50. global.wunden_text = "Keine Wunde. ";
    51. }
    52. //SCHMERZEN
    53. if (global.schmerzen == 0) {
    54. global.schmerzen_text = "Starke Schmerzen. ";
    55. }
    56. if (global.schmerzen == 1) {
    57. global.schmerzen_text = "Mittelstarke Schmerzen. ";
    58. }
    59. if (global.schmerzen == 2) {
    60. global.schmerzen_text = "Leichte Schmerzen. ";
    61. }
    62. if (global.schmerzen == 3) {
    63. global.schmerzen_text = "Keine Schmerzen. ";
    64. }
    65. }
    Alles anzeigen




    obj_behandlung_bodycheck
    DRAW EVENT

    Spoiler anzeigen

    GML-Quellcode

    1. if (bodycheckanzeigen == 1) {
    2. draw_set_font(fnt_bodycheck);
    3. draw_set_color(c_yellow);
    4. draw_text(view_xview[0]+0,view_yview[0]+0,string(global.bewusstsein_text) + string(global.atmung_text) + string(global.atemwege_text) + string(global.kreislauf_text) + string(global.wunden_text) + string(global.schmerzen_text));
    5. }


    FEHLER-SCREENSHOT




    Ich danke für eure Hilfe! :)
  • boxxar schrieb:

    Im Step Event fehlt in Zeile 58 die schließende Klammer }, die ist vermutlich nach Zeile 90 verrutscht. Der folgende Code wird deshalb nicht ausgeführt. Tipp: Gewöhne dir an, deinen Quelltext vernünftig einzurücken, dann sind solche Fehler einfacher zu sehen.

    Oh mann, danke! Das wurde im Editor gar nicht angezeigt. :D Thx! :D
  • Tipp nebenher, wenn du solche if/else Konstruktionen hast, kannst du auch einfach switch benutzen:

    GML-Quellcode

    1. switch(global.bewusstsein) {
    2. case 3:
    3. global.bewusstsein_text = "Bewusstseinsklar. ";
    4. break;
    5. case 2:
    6. global.bewusstsein_text = "Patient somnolent. ";
    7. break;
    8. case 1:
    9. global.bewusstsein_text = "Patient verwirrt. ";
    10. break;
    11. case 0:
    12. global.bewusstsein_text = "Patient bewusstlos. ";
    13. break;
    14. default:
    15. global.bewusstsein_text = "[Error] No text found";
    16. break;
    17. }
    Alles anzeigen


    oder wenn du einfach nur einem Wert einem Text zu ordnen willst, kannst du auch Arrays nutzen:

    GML-Quellcode

    1. global.bewusstsein_text[0] = "Patient bewusstlos. ";
    2. global.bewusstsein_text[1] = "Patient verwirrt. ";
    3. global.bewusstsein_text[2] = "Patient somnolent. ";
    4. global.bewusstsein_text[3] = "Bewusstseinsklar. ";


    GML-Quellcode

    1. var bewusstseinText;
    2. bewusstseinText = global.bewusstsein_text[global.bewusstsein];


    Der Code ist doch gleich viel kürzer und somit einfacherer zu warten (debuggen, etc).
    wupto.net/ Nicht meine Seite!
    We love Koalas.

    GM-D-Spam-o-Meter: 32%