WEBVTT 00:00:02.757 --> 00:00:06.313 ווהו! אנימציה נוספת. הפעם יש לנו כדור נע לאורך המסך, 00:00:06.390 --> 00:00:09.502 ואתם חברים יודעים לעשות את זה. 00:00:09.502 --> 00:00:14.126 יש לנו משתנה, "X", שמסמל את המיקום של הכדור, משתנה "Speed" שמסמל את המרחק שהכדור זז בכל פעם 00:00:14.126 --> 00:00:17.417 ולולאת ה-draw המוכרת, בה אנו מציירים מחדש את הרקע כל פעם מחדש 00:00:17.417 --> 00:00:23.195 מגדירים צבעי רקע ומציירים את האליפסה במיקום X, ובכל פעם מחדש, 00:00:23.195 --> 00:00:26.282 אנחנו נשנה את ה-"X" לערך "X" הישן, בתוספת הערך "Speed". אם אני מקטינה את הערך "Speed", 00:00:26.282 --> 00:00:38.210 אתם יכולים לראות שזה זז לאט יותר. אני יכולה לשים ערך שלילי, כך שזה יזוז לאחור, או שאני יכולה לשים אפס ואז הכדור יפסיק לזוז. 00:00:38.210 --> 00:00:40.481 אבל כל עוד ערך המהירות אינו שווה לאפס, 00:00:40.481 --> 00:00:43.840 בסופו של דבר הכדור יהיה מחוץ למסך. 00:00:43.840 --> 00:00:48.180 ואני תמיד יכולה ללחוץ על הכפתור "אתחל" כדי להחזיר אותו, אבל אתם יודעים, אחרי זמן מה, זה קצת משעמם. 00:00:48.365 --> 00:00:52.697 אתה מאתחל, ומאתחל... 00:00:52.697 --> 00:00:55.738 אבל מה אתם אומרים על זה - כשהכדור מגיע לקצה הימני של המסך, 00:00:55.738 --> 00:00:58.429 במקום לצאת מהקצה של המסך כמו שזה עושה עכשיו, אני רוצה שזה יסתובב. 00:00:58.429 --> 00:01:10.325 ואני יודעת איך אני יכולה לסובב את הכדור, אני יכולה פשוט להגדיר את הערך "Speed" כ- (5-). אם אני מגדירה את המהירות בערך שלילי, הכדור ינוע אחרונית. 00:01:10.448 --> 00:01:12.858 אבל הנה הבעיה. 00:01:12.858 --> 00:01:18.243 אני רוצה לשנות את המהירות של הכדור רק אם הוא מגיע לקצה הימני. 00:01:18.243 --> 00:01:25.919 המממ... אני חושב שכבר ציינתי את זה. אני רוצה לשנות את המהירות רק אם (IF) הכדור הגיע לקצה הימני. 00:01:25.919 --> 00:01:29.633 זה נקרא - "הצהרת IF". 00:01:29.633 --> 00:01:32.810 עד עכשיו, נתנו למחשב הוראות לרוץ לא משנה מה קורה. 00:01:32.810 --> 00:01:39.527 "הצהרות IF" הן דרך לומר - "היי חבר, אני רוצה להריץ את הקוד הזה, אבל רק תחת הנסיבות הספציפיות האלה", 00:01:39.527 --> 00:01:42.524 "אז תשנה את המהירות של הכדור רק אם הוא מגיע לקצה הימני". 00:01:42.524 --> 00:01:45.858 וכך זה נראה בקוד. 00:01:45.858 --> 00:01:50.947 כל מה שצריך לעשות זה להקליד "IF" ואז סוגריים (), ואז גרשיים " ". 00:01:50.947 --> 00:01:54.343 בתוך הסוגריים נקליד את התנאי. 00:01:54.343 --> 00:01:57.100 בתוך הגרשיים נקליד את הקוד שאנו רוצים שירוץ. 00:01:57.100 --> 00:02:03.014 ככה זה עובד - "אם התנאי הזה נכון, אז הקוד הזה ירוץ. אם התנאי לא נכון, אל תטרח". 00:02:03.014 --> 00:02:10.393 אז במקרה שלנו, התנאי הוא שהכדור יגיע לקצה הימני . איך אנחנו יכולים לדעת אם הכדור הגיע לקצה הימני? 00:02:10.393 --> 00:02:22.994 יש לנו את הערך "X" שאומר לנו איפה הכדור נמצא, ואני יודעת שהקצה של שולחן העבודה הוא בנקודה 400 על ציר ה-X, אז בואו נראה. 00:02:22.994 --> 00:02:30.459 כשערך "X" גדול מ-400, אנו יודעים שהכדור עבר את הקצה הימני. 00:02:30.459 --> 00:02:33.037 אז בואו נראה איך זה עובד. 00:02:33.037 --> 00:02:45.311 ובקוד שאנחנו צריכים להריץ, כמו שאמרנו קודם, אנו נשנה את המהירות. המהירות תהיה מינוס חמש (5-). נלחץ על "אתחל" ונראה מה קורה. 00:02:45.311 --> 00:02:47.518 הפעם, כשהכדור מגיע לקצה הימני של המסך, הוא חוזר אחורנית! ייאייי!! 00:02:47.611 --> 00:02:50.553 ואז זה ממשיך מחוץ למסך. 00:02:50.553 --> 00:02:52.668 אבל זה בסדר, כי אנחנו נעשה את אותו הדבר גם בצד השני. אז הפעם, אנחנו רוצים לבדוק מתי הכדור מגיע לקצה השמאלי. 00:02:52.668 --> 00:03:03.047 וכאן ערך "X" יהיה שלילי, ומה שאנחנו רוצים לעשות זה בעצם להפוך את המהירות לערך חיובי, לכן מהירות מקבלת את הערך 5. 00:03:03.047 --> 00:03:08.108 יופי, ועכשיו אנחנו נלחץ על "אתחל", והפעם... 00:03:08.108 --> 00:03:11.715 בוינג... 00:03:11.715 --> 00:03:13.815 בוינג... 00:03:13.815 --> 00:03:14.422 בוינג... 00:03:14.499 --> 00:03:16.686 יש! זה עובד. 00:03:16.686 --> 00:03:21.403 אני יודעת שאנחנו בודקים אם הכדור עובר את הקצוות, אבל זה מרגיש כאילו זה עובר קצת את הקצוות. 00:03:21.619 --> 00:03:25.335 ואם אתם זוכרים, שני הערכים הללו שולטים במיקום בו מצוייר מרכז האליפסה. 00:03:25.550 --> 00:03:36.897 אז עכשיו, ברגע שהמרכז מגיע לקצה, חצי מהאליפסה עוברת את הקצה. 00:03:36.897 --> 00:03:47.307 אז אם אנחנו רוצים לתקן את זה, אנחנו צריכים לעצור את האליפסה קצת קודם. אז אם הקצה שלנו נמצא פה, ב-400, ואנחנו רוצים לעצור את האליפסה כשהיא מגיעה לכאן, 00:03:47.307 --> 00:03:58.639 ואנחנו יכולים לראות מהקריאות לפונקציה שרוחב האליפסה הוא 50, זה אומר שהמרחק מהמרכז לקצה הוא 25. 00:03:58.639 --> 00:04:06.868 אנחנו רוצים לעצור את האליפסה כשהמרכז מגיע ל-375, מכיוון שזה 400 מינוס 25. 00:04:06.868 --> 00:04:10.980 במקום לבדוק אם הערך "X" גדול מ-400, אנחנו הולכים לבדוק אם "X" גדול מ-375. 00:04:10.980 --> 00:04:15.568 במקום לבדוק עבור "X" קטן מ-0, אני אבדוק אם "X" קטן מ-25. 00:04:15.568 --> 00:04:19.568 ועכשיו זה מושלם! יאיי! תראו את הכדור קופץ.