Teacher's Guide
move_forward()
תחביר
player.move_forward([number of steps])
פונקציה זו משמשת להזיז את השחקן קדימה בכיוון שהוא פונה, בתנאי שאין התנגשות החוסמת את מסלול תנועתו. ניתן להגדיר את מספר הצעדים שהפונקציה תבצע, או להשאיר את הפרמטר ריק והפעולה תתבצע פעם אחת בלבד.
אם לא מועברים לפונקציה ארגומנטים, היא תזיז את השחקן קדימה בצעד אחד.
דוגמה
player.move_forward(3)
קוד זה יגרום לשחקן לנוע שלושה צעדים קדימה במפה.

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

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

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

speak()
תחביר
player.speak([string to speak])
פונקציה זו משמשת לגרום לשחקן להקריא מחרוזת שמצוינת כארגומנט של הפונקציה. במשחק, הודעה זו מוצגת על המסך מעל ראש השחקן.
דוגמה
player.speak("Hello World")
קוד זה יציג את המשפט "Hello World" מעל ראש השחקן.

build()
תחביר
player.build([object to build])
פונקציה זו משמשת לגרום לשחקן לבנות עצם שמצויין כארגומנט של הפונקציה. קיימת בחירה מוגבלת של עצמים שהשחקן יכול לבנות באמצעות פונקציה זו וישנם תנאים מסוימים הקשורים לבניית כל עצם. העצם ייבנה לפני השחקן, בכיוון הפנייה שלו, בתנאי שהאזור אינו תפוס על ידי עצם אחר או שהעצם אינו יכול להיבנות בסוג השטח עליו הוא נבנה.
| עצם | עלות | ארגומנט | תיאור |
|---|---|---|---|
| Bridge | 4 logs | "bridge" | בונה גשר למעבר |
| Grain Stack | 4 grain | Class Object Name | יוצר ערימת דגן |
| Wood Road | 4 planks | Class Object Name | מוסיף שביל עץ |
| Stone Road | 4 stone | Class Object Name | מוסיף שביל אבן |
| Big Green house | 4 planks | Class Object Name | בונה בית עופות (ירוק גדול) |
| Small Blue house | 4 planks | Class Object Name | בונה בית עופות (כחול קטן) |
| Big Orange house | 4 planks | Class Object Name | בונה בית עופות (כתום גדול) |
| Small Red house | 4 planks | Class Object Name | בונה בית עופות (אדום קטן) |
דוגמה
player.build("bridge")
קוד זה יגרום לשחקן לבנות גשר מולו בכיוון שהוא פונה.

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

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

open()
תחביר
player.open()
פונקציה זו משמשת לפתיחת דלתות ומכולות, דבר שיכול להיות שימושי למעבר דרך כניסות או לפתיחת מכולות לצורך לקיחה או הצבת עצמים.
דוגמה
player.turn_left()
player.open()
player.move_forward()
קוד זה יגרום לשחקן לפנות שמאלה כדי לפתוח דלת, ולאחר מכן לעבור דרכה.

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

place()
תחביר
player.place(object)
פונקציה זו משמשת להצבת עצם, פריט או משתנה במיקום שבו מותר להציב עצמים. לרוב זה משמש לאחסון פריטים במכולה או להצבת עצמים במיקומים מוגדרים.
דוגמה
wheat = 6
player.place(wheat)
קוד זה מדגים כיצד השחקן שומר מספר במשתנה בשם wheat ולאחר מכן משתמש בפונקציה place() כדי להציב את המשתנה במיקום שהוקצה.

combine()
תחביר
player.combine(mixture)
פונקציה זו משמשת לגרום לשחקן לשלב עצמים שונים יחד ליצירת עצם חדש לגמרי. לרוב משתמשים בה לשילוב מרכיבים ליצירת אוכל, משקה או חומרים.
| שילוב | מרכיבים |
|---|---|
| Radish Dressing | 3 milk, 2 cream, 3 lettuce, 5 radish |
| Fruit Juice | 1 water, 1 empty jar, 1 orange, 1 peach, 1 pear, 1 apple |
| Grape Juice | 1 grape, 1 empty jar |
| Berry Milk | 1 milk, (1 red berry or 1 strawberry) |
| Salad | 2 carrot, 2 tomato, 6 lettuce, 2 cucumber |
דוגמה
player.combine(jar)
קוד זה יגרום לשחקן לקחת את כל הפריטים ברשימה בשם “jar” ולשלב אותם ליצירת פריט/עצם חדש.

plant()
תחביר
player.plant(dictionary,key)
פונקציה זו משמשת לשתילת עצמים באדמה, והיא שמורה לרוב לשתילת גידולים. פונקציה זו משתמשת במילונים, כאשר היא מקבלת שני ארגומנטים: את שם המילון ואת מפתח המילון.
דוגמה
player.plant(seeds, "Eggplant")
player.water()
בקוד שלמעלה, השחקן שותל זרעי חציל בקרקע ולאחר מכן משקה אותם.

write()
תחביר
await player.write(message)
מציג הודעה. זוהי פונקציה אסינכרונית שמציגה תיבה קופצת עם הודעה שהועלתה לפונקציה. התוכנית נעצרת עד לסגירת ההודעה.
דוגמה
await player.write("Hello World")
בקוד שלמעלה, הודעה קופצת מוצגת עם הטקסט "Hello World", והתוכנית נעצרת עד שהשחקן סוגר את ההודעה.

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

question()
תחביר
await player.question(question)
מציג הודעה עם שאלה המכילה אפשרויות כן או לא. זוהי פונקציה אסינכרונית שמציגה תיבה קופצת עם הודעה מסופקת ומחזירה משתנה בוליאני בהתאם לתשובה.
דוגמה
async def question_function():
answer = await player.question("Question you would like to ask")
if answer:
# Actions to take if answer is Yes
else:
# Actions to take if answer is No
בקוד שלמעלה, הודעה קופצת מוצגת עם שאלה הכוללת כפתורי "כן" ו"לא", והתוכנית נעצרת עד שהשחקן יבצע בחירה.

display()
תחביר
await player.display("message")
מציג הודעה. זוהי פונקציה אסינכרונית שמציגה תיבה קופצת עם הודעה ללא נתונים מוקלטים מראש. הפונקציה מיועדת להצגת נתונים גולמיים שלא ניתן לתסריט כראוי. התוכנית נעצרת עד לסגירת ההודעה. כאשר מוגדרת פנימית, אין אפשרות לכלול תסריט כדי לאפשר הצגת כל תוכן.
דוגמה
await player.display("Whatever I want to put here")
בקוד שלמעלה, הודעה קופצת מוצגת עם כל הודעה שתבחר, ללא תלות בתוכן. במקרה זה, מוצגת ההודעה "Whatever I want to put here".
