מה נלמד?
מה זה "אירוע"?
אירוע הוא דבר - מה שקורה.
בדרך כלל תוכנות שאנחנו כותבים מגיבות לדברים שקורים.
לדוגמה, כשאני משתמש במחשבון, התוכנה של המחשבון מאזינה לאירוע "לחיצה על מספר" כדי להוסיף אותו לחישוב שלה. הדוגמה הזאת עוסקת באירוע שהוא חלק מהקלט.
מה זה "אירוע"?
נבחן את תפריט האירועים בסקראץ'.
האירוע יכול להיות קלט שאנחנו מכניסים:
לחיצה על מקש כלשהו במקלדת או לחיצה על דמות.
האירוע יכול להיות גם התרחשות אחרת על המסך,
לדוגמה, שינוי רקע.
אירוע קלט
ננסה בעצמנו!
בשיעור זה נבנה משחק מבוך.
נתחיל בפתיחה: �פתחו את הפרויקט מבוך ארנב וגזר שלב 1.
"אני רעב!"
"בוא תתפוס אותי"
מטרתכם לערוך את הקוד כך שכאשר השחקן ילחץ על מקש ה"רווח", יתרחשו הדברים:
הארנב יאמר: "אני רעב!"
והגזר יאמר: "בוא תתפוס אותי".
הרקע ישתנה לרקע של מבוך. הארנב והגזר יתמקמו בשני קצות המבוך, בגדלים המתאימים למבוך.
מתקשים? בשקף הבא ננסה לעזור בתכנון האלגוריתם המתאים. �*ראו פתרון ארנב וגזר שלב 1
תכנון אלגוריתם לביצוע התרגיל:
אז מה בעצם אנחנו צריכים?
דמויות הארנב והגזר צריכות להיות מוגדרות כך שכאשר נלחץ על מקש רווח =>
הדמויות נמצאות במיקום התחלתי ובגודל התחלתי, ויאמרו את המשפטים שלהן (בלבני "מראה").
לאחר מכן גודל הדמויות ומיקומן צריכים להשתנות.
נוכל להגדיר את הרקע ההתחלתי ואת שינוי הרקע בקוד של הארנב או של הגזר.
תכנון אלגוריתם לביצוע התרגיל:
אירוע יכול גם להיות לא קשור לקלט. בפעילות הבאה הרקע משתנה כל שלוש שניות.
כאשר הרקע במשחק משתנה, נרצה שהארנב יקפוץ מעלה ומטה שלוש פעמים.
נסו זאת בעצמכם! כנסו לסביבת הלמידה של מדעי המחשב ורובוטיקה עבדו על הפרוייקטים
רמה למתחילים
(עם רמזים)
הכנו כבר את רוב הלבנים שתצטרכו
רמה למתקדמים
(בלי רמזים)
תוכלו לצפות בקובץ הפתרון
אירועים - למה זה טוב?
לפעמים אפשר לפתור בעיית תכנון גם בלי קשר לאירוע. לדוגמה, לקבוע שהארנב יקפוץ שלוש פעמים כל כמה שניות.
תוכלו לחשוב למה פתרון כזה יהיה בעייתי?
אירועים - למה זה טוב?
אם היינו מגדירים לדמות הארנב שיקפוץ בשמחה כל כמה שניות,
היינו מקבלים את אותה התוצאה - כרגע.
אבל מה היה קורה אם פתאום היינו עושים שינוי כלשהו במשחק?
לדוגמה, משנים את התנאי שלפיו הרקע מתחלף לא בכל שלוש שניות אלא באקראי?
בעצם, על ידי זה שהתנינו (יצרנו התניה, מלשון תנאי) את קפיצת הארנב בהתחלפות הרקע,
יצרנו אלגוריתם יציב יותר. כעת, גם אם נשכלל את המשחק, האלגוריתם הזה ימשיך לעבוד.
זה עיקרון חשוב מאוד בתכנות - לשמור על קוד יציב, שיש בו היגיון.
שולטים בעזרת המקשים
בלחיצה על התפריט הפנימי שבתוך הבלוק,
תוכלו לבחור מקשים שונים.
הוסיפו אירועים כך שלחיצה על החיצים למעלה ולמטה תניע את הארנב למעלה ולמטה.
חשבו: באילו בלוקים תשתמשו?
"כאשר נלחץ מקש רווח"
תרגיל מבוך ארנב וגזר שלב 2
פתרון מבוך ארנב וגזר שלב 2
אתחול לפני אירוע
זוכרים שלמדנו על "אתחול ערכים" ?
כדי לוודא שהמשחק שלנו תמיד יתחיל באותם ערכים התחלתיים.
חשוב לזכור שברגע שיצרנו אירוע
(לדוגמה, לחצנו על דמות כלשהי)
הקוד שמאזין לאותו אירוע יתחיל לפעול
(ואם יש כמה מקומות שמאזינים לאירוע, קשה לדעת מה יפעל קודם).
לכן,
אם יש ערכים שחשוב לאתחל, עלינו לעשות זאת קודם לכן.
אתחול לפני אירוע
מה האירוע שמתחיל את המשחק שלכם?
לחיצה על הדגל הירוק? על מקש רווח? על הדמות?
לא משנה מה בחרתם, כדי שתמיד המשחק יתחיל מאותה נקודה תצטרכו לאתחל את הערכים.
קבעו שהארנב והגזר יתחילו תמיד מאותה נקודה.
הארנב מהפתח העליון של המבוך.
הגזר מפתח היציאה של המבוך.
מוכנים? עכשיו בונים את המשחק
במשחק שלנו - הארנב נע במבוך לעבר הגזר. לארנב אסור לגעת בקירות.
אם הארנב נוגע בקירות - עליו לתת חיווי של פסילה (החליטו אתם מה יהיה החיווי) ולחזור להתחלה. את הנגיעה בקירות מזהים באלגוריתם אנו מציעים כנגיעה בצבע של הקירות.
אם הארנב מצליח לעבור את כל המבוך ולגעת בגזר - תנו חיווי של הצלחה.
את הנגיעה בגזר מזהים באלגוריתם אנו מציעים כנגיעה בצבע של הגזר.
מוכנים? עכשיו בונים את המשחק
תוספות למתקדמים:
הוסיפו את החלק שכתבנו בתחילת השיעור
(השיחה בין הארנב לגזר והשתנות הרקע, כך שיופיע בתחילת המשחק)
אם הארנב הגיע לגזר, החליפו את הרקע לרקע הקודם והגדילו את הארנב והגזר.
מבוך ארנב וגזר שלב 3 פתרון
צלילים
משחק בלי אפקטים של מוזיקה הוא משחק לא שלם. איך עושים את זה?
זוכרים איך מוסיפים דמות? בדרך דומה מאוד מוסיפים גם צליל!
לחצו על כרטיסיית ה"צלילים" שנמצאת ליד כרטיסיות ה"קוד" וה"תלבושות".
צלילים
לאחר שפתחתם את תפריט הצלילים של הדמות תוכלו לבחור בין כמה אפשרויות:
למצוא צלילים שנמצאים כבר במאגר הסקראץ'
לתת למערכת לבחור בשבילכם צליל בהפתעה
להעלות קבצים מהמחשב
להקליט את עצמכם (זכרו לחבר מיקרופון למחשב!)
צלילים
תוכלו לערוך את הצליל שלכם.
יש כאן אפקטים שונים - עמעום, להפוך את כיוון הצליל
(נסו זאת בהקלטה של עצמכם!) ועוד.
שחקו בצליל עד שתגיעו לצליל הרצוי לכם.
צלילים
איך משלבים את הצליל בקוד שלכם?
תנו שם לצליל שבחרתם.
בעזרת השם הזה תוכלו לכתוב שורות בקוד שיבקשו לנגן את הצליל.
צלילים
עכשיו בחרו בתפריט צלילים.
בעזרת הבלוק "נגן צליל" תוכלו לקבוע איזה צליל יתנגן.
בתוך הבלוק נפתח תפריט פנימי ובו כל הצלילים שמשויכים לדמות הזאת.
תוכלו לקבוע גם את עוצמת הקול ואפקטים קוליים.
צלילים
נמשיך במשחק המבוך שלנו.
הקליטו צליל משלכם או מצאו אחד שמתאים לכם
מרחבי האינטרנט שיתנגן כאשר הארנב מגיע לגזר.
הוסיפו צליל אחר כאשר הארנב נוגע בקירות המבוך ונפסל.
מבוך ארנב וגזר שלב הצלילים פתרון
סיכום
אז מה היה לנו?
הבנו מהו אירוע בתוכנית שלנו.
הבנו כיצד לשלוט בדמויות שלנו בעזרת המקשים.
למדנו להוסיף צלילים למשחקים שלנו! איזה כיף!
למדנו שחשוב לאתחל את התכנית לפני אירוע.