תכנות לילדים באמצעות Game Maker/פק-מן/צעד 5: נקודות: הבדלים בין גרסאות בדף

תוכן שנמחק תוכן שנוסף
יונת (שיחה | תרומות)
אין תקציר עריכה
 
יונת (שיחה | תרומות)
מ תיקון: מוחקים מופעים ולא אובייקטים
שורה 18:
* להציב מופעים של האובייקט הזה ברחבי החדר, בין קירות המבוך. עצה: בשביל להוסיף הרבה מופעים בבת אחת, אפשר לגרור את העכבר בזמן שמחזיקים את מקש Shift לחוץ.}}
 
=== מחיקת אובייקטיםמופעים ===
 
הדבר השני שצריך לעשות זה לתכנת את פקמן לאכול נקודות כשהוא מגיע אליהן. בשביל זה נוסיף לאובייקט פקמן את ארוע ההתנגשות בנקודה. [[תמונה:gmaker_collision.png]]
 
הפעולה שצריך לעשות בארוע הזה היא מחיקת אובייקטמופע, שנמצאת בלשונית main1 [[תמונה:gmaker_destroy_button.png]] .
 
[[תמונה:gmaker_destroy_dialog.png|left]] בחלון אפשרויות הפעולה כמעט אין מה למלא - אין שדות. אבל הפעם נשתמש באפשרות שעד עכשיו התעלמנו ממנה, למרות שהיא מופיעה ברוב הפעולות: Applies to (אַפְּלַייז טוּ) - מתייחס אל, האפשרות לקבוע על איזה אובייקטמופע לבצע את הפעולה. שלושת הערכים שאפשר לבחור ביניהם הם:
 
'''Self''' (סֵלְף) - עצמי. הפעולה תתבצע על האובייקטהמופע עצמו. אם נבחר שפעולת המחיקה תתבצע על האובייקט עצמו, אז פקמן יהיה זה שיימחק מהמשחק ברגע שהוא יגיע לנקודה. (נסו ותראו!)<br>
עד עכשיו כל הפעולות שביצענו פעלו על האובייקט עצמו, ולכן תמיד השארנו את הבחירה הזו.
 
שורה 35:
 
{{בדיקת משחק|עכשיו הנקודות אמורות להמחק כשפקמן עובר.}}
{{הארה|התנגשות היא תמיד בין שני אובייקטיםמופעים, ואפשר לטפל בארוע ההתנגשות בכל אחד משניהם. למה לעשות זאת דווקא באובייקט פקמן? הרי אפשר להוסיף לאובייקט הנקודה ארוע התנגשות בפקמן, ואז פעולת המחיקה תוכל להתבצע על האובייקט עצמו (Self) ולא על האובייקט האחר.
 
כששני אובייקטיםמופעים מתנגשים, לרוב עדיף להוסיף את ארוע ההתנגשות ''לאובייקט שיש לו פחות מופעים'' במשחק. (במקרה שלנו, יש רק מופע אחד של פקמן, אבל יש עשרות נקודות.) הסיבה היא שאם מוסיפים לאובייקט ארוע התנגשות, Game Maker עובר על כל אחד מהמופעים שלו ובודק לגבי כל אחד מהם עם מי הוא מתנגש.
 
לוקח יותר זמן לבדוק עשרות מופעים מאשר לבדוק רק אחד או שניים, לכן עדיף להוסיף את ארוע ההתנגשות לאובייקט שיש לו רק מופע אחד או רק מעט מופעים.}}
שורה 51:
[[תמונה:gmaker_instances_dialog.png|left]]
בחלון אפשרויות הפעולה יש שלושה שדות:
* {{מונח|/object|אוֹבְּגֵ'קְט - אובייקט}}: מופעים של איזה אובייקט צריך לספור. במקרה שלנו, אנחנו רוצים לבדוק את מספר המופעים של אובייקט הנקודה.
* number (נַמְבֵּר) - מספר: איזה מספר מופעים לבדוק. אנחנו רוצים לבדוק מתי לא נשארו יותר נקודות בכלל, כלומר: 0 מופעים.
* operation (אוֹפֵּרֵיישֵן) - פעולת ההשוואה: האם לבדוק אם מספר המופעים שווה, קטן יותר, או גדול יותר מאשר המספר שכתבנו בשדה number. את השדה הזה נשאיר על Equal to (אִיקְוּאֵל טוּ) - שווה.