regedit

metallman

New member
regedit

בניתי משחק ששומר ב-regedit. הבעיה שלי היא: אני רוצה להפעיל לולאה שתרוץ עד ה- NULL כדי למצוא את הניקוד הגבוה ביותר (בשביל השיא). ואני לא יודע איך אני כותב לולאה שתרוץ עד ה..NULL שנמצא ב- NANE ..ובקיצור!! אם מישהו יוכל לכתוב לולאה כזו אודה מקרב לב.
 

nscom2k

New member
אני לא יודע מה זה REGEDIT אבל...

אולי תיתן הסבר מאוד קצר אך אתה שומר את השיא, כלומר מבנה שמירת התוצאות ניתן אולי פונקציה שתבצע את הפעולה הרצויה
 

vbgames

New member
איפה בעצם הבעיה שלך?

אם אתה יודע לשמור ב REGEDIT אז אתה כנראה גם יודע לקרוא ממנו. אז הבעיה שלך היא לעשות לולאה, או לדעת מתי הערך NULL. בעקרון תעשה do while getsetting(x,y,z)<>"" bla = getsetting(x,y,z) loop אם תתן יותר פרטים תקבל גם הסבר יותר טוב...
 

The Guardian

New member
קודם כל

קודם כל לא קוראים לזה Regedit אלא Registry Regedit זאת פשוט הפקודה שמפעילה את העורך של זה..:)
 

metallman

New member
אני יודע לכתוב ולקרוא לשם ומשם אבל.

אתה צודק... אני לא יודע מתי הערך NULL מגיע בלולאה ולאיזה נתון אכניס אותו בשפת C אני משתמש ב CHAR אבל כאן?! ובקיצור אני לא יודע איך אני יוצר לולאה שתקרא את כל השיאים של השחקנים. שהרי הניקוד הוא INT ואני מגיע ל..NULL בסוף מרשימה. למשל 23 45 6 66 NULL אם הבנת אותי אז אחלה בתודה מראש
 

vbgames

New member
לפי מה שקראתי שעשית למטה

ה Key לא צריך להיות שם השחקן, עדיף שהוא יהיה שם המשתמש. תשמור את שם השחקן כשה Key הוא Name1 וה Value הוא השם שלו. ואת הניקוד תשמור כשה Key הוא Score1 וה Value הוא הניקוד. ובמקום 1 תשנה למקום של השחקן. ואז לא תיהיה לך בעיה, תעשה לולאה: i=1 do while getsetting(strprog,strsec,Name + trim(str(i))) <> "" thename=getsetting(strprog,strsection,Name + trim(str(i))) thescore=getsetting(strprog,strsection,Score + trim(str(i))) i=i+1 loop אוקיי? אם לא טוב אז תכתוב פה את הקוד של מה שעשית
 
למעלה