-
עכשיו בואו נדבר על תנאים מסובכים יותר שאתם יכולים לבדוק עם התוכנה שלכם
-
לצורך הדגמה, גרמת לשולחן העבודה להיראות כמו משחק ישן שפעם הייתי משחקת בו
-
ארבע-בריבוע.
-
ישנם ארבעה ריבועים, ואתה עומד באחד מהם ומקפיץ את הכדור באחרים.
-
אז אני אצייר אליפסה איפה שהעכבר שלי נמצא, וזה יהיה הכדור שלנו
-
אבל מה שאני רוצה לעשות זה להדגיש את הריבוע שבו נמצא הכדור על ידי ציור של ריבוע לבן מעליו.
-
אני יודעת שאני צריכה להשתמש בהצהרת if בשביל לעשות את זה, מכיוון שאני רוצה לעשות את זה פעם אחת, רק כשאני מעל הריבוע הזה
-
אז בואו נתחיל על ידי ציור הריבוע הזה.
-
אני פשוט אעתיק את פונקציית rect מפה, אבל אתן לה צבע מילוי אחר, מילוי לבן
-
יופי. עכשיו בואו נעטוף את זה עם הצהרת if
-
אתם רואים שזה משלים לי אוטומטית את הסוגרים המסולסלים כאן, אז אני צריך להעביר את זה פנימה
-
אוקיי. אז מתי אני רוצה להראות את הריבוע הזה?
-
ובכן, אני יודעת שאני רוצה שזה יהיה כשמיקום ה-x של העביר קטן מ-200 (mouseX < 200)
-
אז זה עובד, אבל אז אם אני ארד לכאן, הוא עדיין מופיע
-
זה אני גם צריכה לבדוק את mouseY
-
אז איך אני בודקת את שני הדברים?
-
בדיוק בשביל זה יש לנו את האופראטור "AND"
-
אנחנו משתמשים באופראטור "AND" כשאנחנו רוצים לבדוק מספר תנאים ביחד.
-
אז אנחנו פשוט כותבים את הסימנים && ואז כותבים את התנאי הבא שלנו, נוסיף: mouseY < 200
-
ועכשיו זה לא מופיע כשאני כאן וכן כשאני כאן! יאיי!
-
בואו נעשה את הריבוע הבא, רק בשביל להוכיח שזה עובד.
-
אנחנו רק צריכים לשנות פה כמה דברים.
-
ניקח את הריבוע הזה במקום, ונשנה את התנאים כך שזה לא יידלק.
-
הפעם, mouseX צריך להיות גדול יותר מ-200 ו-mouseY עדיין צריך להיות קטן מ-200.
-
יפייפה! תסתכלו על זה!
-
עכשיו, בארבע-בריבוע, כאשר הכדור פוגע בקצוות, אתם יודעים, הקווים האלו שבין הריבועים ובצדדים
-
אנחנו תמיד צועקים ״כדור על הקווים!״
-
אז אני רוצה לעשות את זה גם כאן. בואו נתחיל ונרשום ״EDGE BALL״.
-
ובואו נכתוב את זה באמצע ונעשה את זה אדום.
-
אז אני רק רוצה שזה ייקרה אם הכדור על הקצוות.
-
אנחנו נוסיף את זה ל-if שלנו
-
ונזיז את הקוד הזה לתוך ה-if
-
אז.. מתי אני רוצה שזה ייקרה?
-
יש קווים באמצע, והאמצע הוא מתי שהעכבר הוא בדיוק 200, אז mouseX == 200
-
בואו ננסה, האם אני אקבל את הטקסט שרציתי?
-
הנה זה! EDGE BALL!
-
אוקיי. המממ. אז זה עובד בקו האמצעי כאן.
-
אבל אני רוצה שזה יעבוד גם על הקו כאן.
-
אם כך, למעשה, אני רוצה ש-mouseY == 200, מכיוון שזה המיקום של הקו האמצעי.
-
אוקיי בואו נבדוק את זה... זה לא עובד. כלום לא עובד.
-
או, דבר אחד עובד, רק המרכז עצמו
-
אה, זה בגלל שהשתמשתי ב-"AND", אז זה ייקרה רק אם שני התנאים הם אמת, שזה ייקרה רק כשהעכבר במרכז.
-
מה שאני בעצם רוצה להגיד זה אם אחד מהתנאים נכון
-
בשביל זה נשתמש באופראטור ״OR"
-
אז אופראטור "OR״ נראה כך: ||
-
אנו קוראים להם צינורות, אני מניחה שמעולם לא השתמשתם בהם קודם
-
אם תחפשו אותם על המקלדת שלכם, הם בדרך כלל בצד ימין למעלה, באזור של לחצן האנטר
-
בתקווה שיש לכם אותם על המקלדת
-
יש? מעולה, אז בואו נראה איך זה עובד.
-
זה עובד פה, זה עובד פה, עובד גם פה וגם פה, יופי!
-
אנחנו יכולים להמשיך להוסיף עוד תנאים כאן
-
בעזרת AND ו-OR אתם יכולים לעשות כמה תנאים שרק תרצו
-
אם אתם צריכים לבדוק 6 תנאים שונים אתם יכולים לעשות גם את זה
-
עוד לא דאגנו לקצוות שלנו
-
בואו נגיד שאם mouseX קטן מ-3
-
אז זה יהיה ככה... הנה, הקצה הזה כאן
-
טוב מאוד
-
או ש-mouseX יהיה גדול מ-397 (mouseX>397)
-
והנה זה... יופי!
-
אז נמשיך לעשות את זה עבור כל הקצוות
-
יאיי! יש לנו את AND (&&) ויש לנו את OR (||) ועכשיו אתם יכולים לבנות מלא תנאים מסובכים בתוכנות שלכם.
-
וזה הכל, בגלל שהעולם הוא גם ככה מקום מסובך :) בהצלחה!