Teacher's Guide
move_forward()
ไวยากรณ์
player.move_forward([number of steps])
ฟังก์ชันนี้ใช้เพื่อให้ผู้เล่นเดินไปข้างหน้าตามทิศทางที่เขากำลังเผชิญ โดยที่ไม่มีการชนที่ขัดขวางเส้นทางของผู้เล่น คุณสามารถกำหนดจำนวนก้าวที่ต้องการให้ฟังก์ชันนี้ทำซ้ำ หรือปล่อยว่างไว้ก็จะทำการดำเนินการเพียงครั้งเดียว
หากฟังก์ชันไม่ได้รับอาร์กิวเมนต์ใด ๆ มันจะทำให้ผู้เล่นเดินไปข้างหน้าหนึ่งก้าว
ตัวอย่าง
player.move_forward(3)
โค้ดนี้จะทำให้ผู้เล่นเดินไปข้างหน้า 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])
ฟังก์ชันนี้ใช้เพื่อให้ผู้เล่นสร้างวัตถุที่ระบุในอาร์กิวเมนต์ของฟังก์ชัน มีวัตถุที่จำกัดที่สามารถสร้างได้ด้วยฟังก์ชันนี้ และมีข้อกำหนดบางประการที่เกี่ยวข้องกับการสร้างวัตถุแต่ละประเภท วัตถุจะถูกสร้างขึ้นด้านหน้าทิศทางที่ผู้เล่นกำลังเผชิญ โดยที่พื้นที่ดังกล่าวไม่ได้ถูกครอบครองโดยวัตถุอื่น หรือวัตถุนั้นไม่สามารถสร้างบนประเภทพื้นดินที่กำหนดได้
| Object | Cost | Argument | Description |
|---|---|---|---|
| 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)
ฟังก์ชันนี้ใช้เพื่อให้ผู้เล่นผสมวัตถุต่าง ๆ เข้าด้วยกันเพื่อสร้างวัตถุใหม่ โดยมักใช้ในการผสมวัตถุดิบเพื่อทำอาหาร เครื่องดื่ม หรือสารประกอบต่าง ๆ
| Combination | Ingredients |
|---|---|
| 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)
ฟังก์ชันนี้ใช้เพื่อปลูกวัตถุลงในดิน โดยปกติจะใช้สำหรับปลูกพืช ฟังก์ชันนี้ใช้ dictionary โดยรับอาร์กิวเมนต์ 2 ตัว คือ ชื่อของ dictionary และ key ภายใน dictionary
ตัวอย่าง
player.plant(seeds, "Eggplant")
player.water()
ในโค้ดด้านบน ผู้เล่นปลูกเมล็ดมะเขือม่วงลงในดินและจากนั้นรดน้ำ

write()
ไวยากรณ์
await player.write(message)
อนุญาตให้แสดงข้อความออกมา นี่เป็นฟังก์ชัน async ที่อนุญาตให้มีป๊อปอัปแสดงข้อความที่ส่งเข้ามาในฟังก์ชัน โปรแกรมจะหยุดทำงานจนกว่าข้อความจะถูกปิด
ตัวอย่าง
await player.write("Hello World")
ในโค้ดด้านบน มีการแสดงป๊อปอัปข้อความที่มีข้อความ "Hello World" โดยโปรแกรมจะหยุดจนกว่าผู้เล่นจะปิดข้อความ

read()
ไวยากรณ์
await player.read()
อนุญาตให้แสดงข้อความออกมา นี่เป็นฟังก์ชัน async ที่อนุญาตให้มีป๊อปอัปแสดงข้อความที่ได้รับการบันทึกไว้ล่วงหน้าในระดับ โปรแกรมจะหยุดจนกว่าข้อความจะถูกปิด
ตัวอย่าง
await player.read()
ในโค้ดด้านบน มีการแสดงป๊อปอัปข้อความที่บันทึกไว้ล่วงหน้าในระดับ โดยโปรแกรมจะหยุดจนกว่าผู้เล่นจะปิดข้อความ

question()
ไวยากรณ์
await player.question(question)
อนุญาตให้แสดงข้อความพร้อมคำถาม yes หรือ no ซึ่งเป็นฟังก์ชัน async ที่อนุญาตให้แสดงป๊อปอัปข้อความพร้อมตัวเลือก ซึ่งจะส่งคืนตัวแปร Boolean ตามการเลือก
ตัวอย่าง
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
ในโค้ดด้านบน มีการแสดงป๊อปอัปข้อความที่มีคำถามพร้อมปุ่ม Yes และ No โดยโปรแกรมจะหยุดจนกว่าผู้เล่นจะทำการเลือก

display()
ไวยากรณ์
await player.display("message")
อนุญาตให้แสดงข้อความออกมา นี่เป็นฟังก์ชันแบบ async ที่อนุญาตให้มีป๊อปอัปแสดงข้อความที่ไม่มีข้อมูลที่บันทึกไว้ล่วงหน้า ถูกออกแบบมาเพื่อใช้แสดงข้อมูลดิบที่ไม่สามารถเขียนสคริปต์ได้อย่างถูกต้อง โปรแกรมจะหยุดจนกว่าข้อความจะถูกปิด โดยที่หากมีการตั้งค่าไว้ภายใน จะไม่สามารถรวมเนื้อหาสคริปต์ใด ๆ ได้
ตัวอย่าง
await player.display("Whatever I want to put here")
ในโค้ดด้านบน มีการแสดงป๊อปอัปข้อความด้วยข้อความที่คุณกำหนด ไม่ว่าจะเป็นอะไรก็ตาม ในกรณีนี้จะแสดง "Whatever I want to put here"
