1 of 19

תנועה, מראה, דמויות

2 of 19

זה מחסן הבלוקים שלנו.

בלוק הוא בעצם פעולה

שניתן לגרור באמצעות העכבר

אל תוך העורך, שנמצא משמאל.

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

זו הבמה. כאן מה שאנחנו

מתכנתים מתעורר לחיים!

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

זוכרים את המסך של סקראץ'

שראינו ביחידה הקודמת?

3 of 19

דמויות

אחרי שהבנו באופן כללי מאוד איך סקראץ' עובד, הגיע הזמן להיכנס לפרטים. היום נתחיל בבסיס - דמויות! הדמויות בסקראץ' הן בעצם כל תמונה או ציור שנרצה להשתמש בהם בתוכנה שלנו (באמצעות האלגוריתם, זוכרים?).

וברגע שיש לנו דמות, ואנו יכולים "להורות" לה לעשות כל מיני דברים - אפשר לעשות אנימציה! לדוגמה:

4 of 19

אז מי הן הדמויות? אפשר להשתמש בדמויות שסקראץ' מציע לנו, ואפשר ליצור דמויות משלנו! בואו נראה איך לעשות זאת:

מעבר עם העכבר מעל הכפתור הכחול של החתול עם סימן הפלוס

יפתח תפריט קטן שיאפשר לנו:

  • לחפש במאגר הדמויות של סקראץ' (זכוכית המגדלת)�
  • לצייר דמות בעצמנו (המכחול)�
  • לקבל דמות מהמאגר בהפתעה (הכוכבים)�
  • להעלות דמות מהמחשב �(איקון העלאה, הכי למעלה בתפריט)

5 of 19

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

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

6 of 19

הוספנו דמות, הידד!

מה עכשיו?

שימו לב!

בסקראץ' התכנות נכתב סביב הדמויות. לכן, אם הוספנו כמה דמויות, נצטרך לסמן ברשימת הספרייטים/דמויות את הדמות שנרצה לתכנת עכשיו, ואז יופיע בעורך הקוד שלנו הקוד שמתייחס לדמות הנוכחית (או שיהיה שם פשוט מסך ריק, כי עוד לא כתבנו כלום)

איך מסמנים דמות?

לוחצים עליה בתוך הרשימה:

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

7 of 19

נערוך קצת את תצוגת הדמות שלנו:

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

שם הדמות

מיקום

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

מיקום - קובעים אותו באמצעות "x" ו-"y".

אין סיבה להיבהל! אלו בעצם הערכים שיקבעו היכן תהיה מונחת הדמות שלנו על הבמה.

אז - איך עובדים המספרים האלה?

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

8 of 19

הצלחתם? יופי! הנה המפה הרשמית, כדי לעזור למי שעדיין מבולבל. למפה כזו קוראים "מערכת צירים". הציר האופקי (זה ש"שוכב") נקרא "ציר X",

והציר האנכי ("עומד") נקרא "ציר Y".

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

הסבר למפה: אם נבחר 0,0 (כלומר נציב 0 ב-X וגם ב-Y), הדמות תמוקם בדיוק במרכז הבמה. ככל שנציב מספר גדול יותר ב-X הדמות תמוקם ימינה, ומספר גדול יותר ב-Y יעלה את הדמות למעלה.

שימו לב: כדי למקם את הדמות משמאל או למטה, יש להשתמש במספרים שליליים.

9 of 19

נמשיך בקביעת המאפיינים של הדמות

הצגה

גודל

כיוון

מבולבלים? מזל שהחבר'ה הנחמדים שבנו את סקראץ' באו לעזרתנו. תראו מה מופיע במסך ברגע שלוחצים על המספר כדי לשנות כיוון:

יופי, עברנו על המאפיינים של הדמות. עכשיו, נסו אתם לשנות את גודל הדמות שלכם ואת הכיוון שלה, כך שהיא תסתכל למטה ו"תתפוס" כמחצית מרוחב הבמה.

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

פשוטו כמשמעו, קביעת גודל הדמות.

מאפיין זה מאפשר לקבוע את הזווית שאליה פונה הדמות.

10 of 19

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

בואו ננסה! גררו את אחד הבלוקים (לבחירתכם) אל עורך הקוד, ואז לחצו עליו עם העכבר.

11 of 19

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

לדוגמה, כך נראה חתוליקו במצב הזה:

12 of 19

הצלחתם? יופי.

ומה עם החברים שיושבים לצידכם, גם הם כבר מתכנתים מקצועיים?

עכשיו, לפנינו שאלה מעניינת: האם כל מי שהצליח השתמש בדיוק באותן פקודות? בדקו זאת ביניכם.

13 of 19

שאלה מאתגרת: האם תוכלו להגדיר את ההבדל המהותי בין שתי הדוגמאות האלה? האם הן תמיד יבצעו את אותו הדבר?

מקווים ששמתם לב שיש כמה דרכים שונות לכתוב את האלגוריתם המבוקש (זה שמטרתו היא למקם את הדמות על הגב צמוד לרצפה). הנה שתי דוגמאות שלנו (כמובן, יש עוד דרכים):

14 of 19

אתגר

האם תוכלו להציע בדיקה פשוטה שתאמת את מה שקבעתם בנוגע לכל פקודה?

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

ערכים מוחלטים

ערכים יחסיים

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

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

ערכים יחסיים מתייחסים למיקום הנוכחי של הדמות (ולכוון הנוכחי, וכו').

15 of 19

פעמים רבות נרצה להשתמש בפקודות יחסיות. לדוגמה, נוכל ליצור תנועה של דמות במשחק (חשבו מה קורה לדמות במשחק מחשב כשאתם לוחצים על כפתור "ימינה" - היא זזה באופן יחסי למיקום הנוכחי שלה). �אבל - לא נרצה שבכל פעם שהקוד רץ, הוא יתחיל מהמקום שבו הסתיימה התנועה בהרצה הקודמת, נכון? (תחשבו שהדמות שלכם במשחק המחשב תתחיל לזוז מהמקום שבו היא בדיוק "מתה" בניסיון הקודם).

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

אם הבלוקים האלה יופיעו בתחילת הקוד שלנו, תמיד תתחיל הדמות מאותו מצב.

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

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

16 of 19

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

אתגר

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

נסו לגרום לדמות שלכם לומר לכם משהו אישי, לדוגמה, "שלום נגה, את מתכנתת מצוינת!"

17 of 19

טיפ

במסך שמציג את הדמויות, עמדו עם העכבר על הדמות בלי ללחוץ. אם התמונה מתחלפת - סימן שלדמות הזאת מצורפות כמה תלבושות, ושאפשר ליצור לה אנימציה

רוצים לדעת משהו מגניב? באמצעות הבלוקים של "מראה" אפשר גם להחליף את התלבושת של הדמות! למה הכוונה?

ובכן, כמה מהדמוית מגיעות בצירוף כמה "תלבושות". תלבושת היא בעצם תמונה נוספת, שבדרך כלל מאפשרת יצירה של אנימציה לדמות. בדקו אם לדמות שבחרתם מצורפות כמה תלבושות - פשוט גררו את בלוק ה "התלבושת הבאה" ולחצו עליו. האם התחלפה התלבושת? מעולה! אתם יכולים להמשיך ללחוץ על הבלוק ולהבין איך נראית אנימציה. �לא התחלפה? נסו לבחור דמות אחרת

18 of 19

רמה 1

שנו את מאפייני ה"דמות" הכדור כך שיכנס אל תוך הסל. אין צורך בבלוקים של קו

רמה 2

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

רמה 3

לדוד משה יש חווה - אבל איזה בלגאן הולך שם!

עזרו לדוד משה לארגן את החווה. כתבו קוד עבור כל דמות כך ש: הדב יראה כאילו הוא עומד (רמז - תלבושות) מחוץ לאסם חד הקרן יתהלך לו על השביל הלבן והקאנטור (חצי איש חצי סוס) - הוא לא קשור לכאן, אז כדאי שהוא יהיה בלתי נראה

היכנסו לסביבת מגרש המשחקים, פתחו פרויקט חדש�והעלו את קובץ התרגול (קובץ-העלה פרויקט מהמחשב שלך).

19 of 19

איך להוסיף דמות (התפריט הקטן שנפתח וחיפוש במאגר הדמויות).

איך לערוך את מאפייני הדמות (גודל, מיקום, שם, כיוון, הצגה).

לכל דמות ישנו הקוד שלה - בוחרים באמצעות לחיצה על סמל הדמות ברשימת "הדמויות שלי".

ההבדל בין פקודות יחסיות לפקודות מוחלטות.

אתחול - קביעה של ערכים התחלתיים בתחילת הקוד.

אפשר להשתמש בבלוקים המגניבים של "מראה" ו"תנועה" כדי לעשות פה מסיבה של ממש!

נסכם מה למדנו, כדי שתוכלו להתחיל לשחק:

"מערכת הצירים" - המפה שלפיה אפשר למקם את הדמות על הבמה.

סיכום