Problem das eigentlich nicht da ist

  • Problem das eigentlich nicht da ist

    Schaut euch mal bitte die 3 Scripts an und sagt mir, arum die Auflösung nicht hochgezählt wird. Man sollte dann zwischen den Auflösungen 1024x768 (standart), 1280x960, 640x480 und 800x600 durchschalten können.

    Im Menüobjekt im Createevent (der Writeteil kommt später raus):

    GML-Quellcode

    1. ini_open("Options.ini")
    2. ini_write_real("Einstellungen","Farbtiefe",32)
    3. ini_write_real("Einstellungen","Taktfrequenz",60)
    4. ini_write_real("Einstellungen","h_Aufloesung",1024)
    5. ini_write_real("Einstellungen","v_Aufloesung",768)
    6. Farbtiefe = ini_read_real("Einstellungen","Farbtiefe",32)
    7. Taktfrequenz = ini_read_real("Einstellungen","Taktfrequenz",60)
    8. h_Aufloesung = ini_read_real("Einstellungen","h_Aufloesung",1024)
    9. v_Aufloesung = ini_read_real("Einstellungen","v_Aufloesung",768)
    10. display_set_all(h_Aufloesung,v_Aufloesung,Taktfrequenz,Farbtiefe)
    11. ini_close()
    Alles anzeigen


    Im Optionsobjekt im Createevent:

    GML-Quellcode

    1. ini_open("Options.ini")
    2. Farbtiefe = ini_read_real("Einstellungen","Farbtiefe",32)
    3. Taktfrequenz = ini_read_real("Einstellungen","Taktfrequenz",60)
    4. h_Aufloesung = ini_read_real("Einstellungen","h_Aufloesung",1024)
    5. v_Aufloesung = ini_read_real("Einstellungen","v_Aufloesung",768)
    6. Aufloesung_moment = h_Aufloesung //habe ich auch schon mit Aufloesung_moment = 1024 probiert!


    Im A(uflösungs)-Tasten-Event:

    GML-Quellcode

    1. if Aufloesung_moment = 1024
    2. {
    3. Aufloesung_moment = 1280
    4. h_Aufloesung = 1280
    5. v_Aufloesung = 960
    6. }
    7. if Aufloesung_moment = 1280
    8. {
    9. Aufloesung_moment = 640
    10. h_Aufloesung = 640
    11. v_Aufloesung = 480
    12. }
    13. if Aufloesung_moment = 640
    14. {
    15. Aufloesung_moment = 800
    16. h_Aufloesung = 800
    17. v_Aufloesung = 600
    18. }
    19. if Aufloesung_moment = 800
    20. {
    21. Aufloesung_moment = 1024
    22. h_Aufloesung = 1024
    23. v_Aufloesung = 768
    24. }
    Alles anzeigen


    Das Drawevent zeichnet die Variablen h_Aufloesung und v_Aufloesung
  • roflmao^^ sorry .... war nicht bös gemeint ;)
    du änderst die variable und fragst sie danach sofort ab, änderst sie wieder und so weiter bis sie am schluss wieder so ist wie am anfang!
    schreibe am ende des setzten der auflösung (3. script):

    GML-Quellcode

    1. exit;


    Xmas-Dragoon

    (das ist mir auch scho passiert^^)
    Edit: so wär das dann:

    GML-Quellcode

    1. if (Aufloesung_moment = 1024)
    2. {
    3. Aufloesung_moment = 1280;
    4. h_Aufloesung = 1280;
    5. v_Aufloesung = 960;
    6. exit;
    7. }
    8. if (Aufloesung_moment = 1280)
    9. {
    10. Aufloesung_moment = 640;
    11. h_Aufloesung = 640;
    12. v_Aufloesung = 480;
    13. exit;
    14. }
    15. if (Aufloesung_moment = 640)
    16. {
    17. Aufloesung_moment = 800;
    18. h_Aufloesung = 800;
    19. v_Aufloesung = 600;
    20. exit;
    21. }
    22. if (Aufloesung_moment = 800)
    23. {
    24. Aufloesung_moment = 1024;
    25. h_Aufloesung = 1024;
    26. v_Aufloesung = 768;
    27. exit;
    28. }
    Alles anzeigen
    int (*x(*x(int))[5])(int*);
    Confused? Yes, it's C!

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

  • Ne, der erste Script wird beim Start geladen, der Teil wo die Daten verändert werden kommt noch raus, da steht dann nur noch der readteil drin. Die 2 anderen sind im Optionsmenü eingebaut. Da ist noch ein 3., was die einstellungen speichert. Aber das funktioniert noch nicht so ganz.
  • Ne, so wie oben aber es gab irgendwie Unklarheiten. Auf jeden Fall geht es jetzt wo ich beim nächsten Problem bin, der Speicherscript geht net und ein weiteres Problem ist auch da. Das eine Kann ich beheben aber bei eiem Habe ich Probleme.

    GML-Quellcode

    1. if Snake.Punkte = 25
    2. {
    3. if room = Level1
    4. {
    5. Raum = 2
    6. room_goto(Level2)
    7. sound_play(Aplaus)
    8. exit
    9. }
    10. if room = Level2
    11. {
    12. Raum = 3
    13. room_goto(Level3)
    14. sound_play(Aplaus)
    15. exit
    16. }
    17. }
    Alles anzeigen

    Der Script stimmt schon mal.
    Im Drawevent des gleichen Raumes wird ein Quadrat gezeichnet, dessen x1-Wert 448-Raum*86.4 definiert ist. Leider bringt ein Verändern der Variable Raum keine veränderung.
  • ich glaube das liegt daran, dass der GM bei der Funktion: "ini_write_real" nicht genau reinschreibt...
    schau dir mal die ini an... dementsprechend kann er dann die auflösung nicht in zb "799,9999934x599,999992342" ändern!
    Sorry, falls ich dein prob falsch verstandne habe, bin grad in Eile!
  • Benutzer online 2

    2 Besucher