בעיה בבניית המשחק סנייק - תכנות - HWzone פורומים
עבור לתוכן
  • צור חשבון

בעיה בבניית המשחק סנייק


stalbetman

Recommended Posts

שלום רב,

אני בונה את משחק הסנייק (כמו בפלפאונים) למחשב, כפרוייקט גמר לבית הספר.

ונתקלתי בבעיה.

עשיתי שהנחש ינוע בתוך מלבן שקבעתי, כלומר ציירתי מלבן ובתוכו הנחש נע.

עשיתי לולאת while שכל עוד הנחש לא יצא מהגבולות הוא ימשיך לזוז, אבל כאן מגיעה הבעיה, שדרל אגב

קרתה לי אחרי שהוספתי בדיקה לארבע כפתורים שממוקמים לי במשחק שיפעלו תוך כדי הזזת הנחש, כי אלו כפתורים של:

save,pause,new game, return ולכן אני צריך שהם יפעלו במהלך המשחק,

הבעיה היא כזאת:

כאשר אני מגיע לגבול כלומר נפסל, המשחק מסתיים וזורק אותי לעמוד של התפריט, כלומר עמוד אחד לפני המשחק.

חשבתי כיצד לעשות שהוא לא יצא לי אלא ישאר במשחק, ורק כאשר אני ילחץ return הוא יחזור, אבל לא הצלחתי לחשוב על דרך לפתור זאת.

למישהו יש אפשרות לעזור לי בדרך החשיבה, או לכתוב לי את פתרון בשפת התיכנות עצמה ©, אני יודע שזה אמור לי אחרי

ה- while של הנחש צריך להיות לולאה נוספת של while שבה אני עושה בדיקה קצרה כך שהמשחק לא יזרק עמוד אחד אחורה.

תודה מראש לכל העוזרים!

קישור לתוכן
שתף באתרים אחרים

אני לא מכיר את הקוד שלך, אבל לא הבנתי באמת מה הבעיה, אחרי ה WHILE הזה, לעשות עוד WHILE שמחכה ללחיצה של איזושהי אות וכשיש הוא מפסיק (ואז אני מבין שהוא יזרק לתפריט)?

קישור לתוכן
שתף באתרים אחרים

הקוד לא חשוב, העיקר שתיתן לי דרך להבין כיצד לעשות את זה,

יש while ראשי שמבצע בתוכו את תנועת הנחש, והלולאה הזו מפסיקה כאשר הנחש הגיע לגבול של המשחק (כמו בפלפאון שהוא מגיע לגבול הוא נפסל),

ומיד שהוא מגיע לגבול ונפסל בלי שום לחיצה ושום אות הוא נזרק דף אחורה, כלומר לתפריט הראשי שנמצא עמוד לפני המשחק,

אני רוצה מיד אחרי ה- while לבצע בדיקה כלשהי לוו דווקא לולאה נוספת יכול להיות גם if שיגרום למשחק שהוא מגיע לגבול להיעצר,

ובמידה והוקש הכפתור return הוא יחזור עמוד אחד אחורה.

קישור לתוכן
שתף באתרים אחרים

באמת צריך להכיר את הקוד שלך.

נראה לי שחסר לך קצת ידע ב- EVENTS .

כדי שלאחר שהשחקן נפסל לא תחזור לתפריט הראשי אתה צריך לחכות ל -EVENT אחר כל פעם.

כלומר לחיצה על כפתור התחל תתחיל את המשחק וכשהוא מסתיים התוכנית הראשית עדיין מחכה ל-EVENT נוסף ולא מסיימת

כך שרק שהמשתמש ילחץ על CLOSE ,RETURN או EXIT אז תסיים את התוכנית.

פשוט צריך להכיר יותר טוב איך יוצרים חלון חדש ומשייכים לו EVENTS .

הנה דוגמא שאני עשיתי. שים לב שכאן אני משתמש ב- THREAD שאחרי על ביצוע המשחק:

http://www2.mta.ac.il/~amitz/downloads/Pong.zip

קישור לתוכן
שתף באתרים אחרים

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

×
  • צור חדש...