Teacher's Guide

move_forward()

语法

player.move_forward([number of steps])

此函数用于让玩家沿着其所面向的方向前进,前提是没有碰撞阻挡玩家的行进路线。你可以指定函数重复执行的步数,也可以留空,此时只执行一次操作。

如果函数未传入任何参数,则玩家将前进一步。

示例

player.move_forward(3)

此代码将使玩家在地图上向前移动三步。

move forward


turn_left()

语法

player.turn_left()

此函数用于让玩家向左转,使其当前方向向左改变。

示例

player.turn_left()
player.move_forward()

此代码将使玩家朝当前面向的左侧转身,并随后向该方向前进。

turn left


turn_right()

语法

player.turn_right()

此函数用于让玩家向右转,使其当前方向向右改变。

示例

player.turn_right()
player.move_forward()

此代码将使玩家朝当前面向的右侧转身,并随后向该方向前进。

turn right


push()

语法

player.push()

此函数用于在玩家所面向的方向上推动一个物体,前提是该方向上没有碰撞阻挡物体的行进路径。

示例

player.turn_left()
player.push()

此代码将使玩家左转,并在其面向的方向上推动一个可移动物体。

push


speak()

语法

player.speak([string to speak])

此函数用于使玩家喊出函数参数中指定的字符串。在游戏中,这表现为字符串显示在玩家头顶上。

示例

player.speak("Hello World")

此代码将在玩家头顶显示“Hello World”。

speak


build()

语法

player.build([object to build])

此函数用于让玩家建造参数中指定的物体。玩家可使用此函数建造的物体种类有限,并且每种物体都有特定的建造要求。只要建造区域未被其他物体占用,并且所在地形允许建造,物体将会在玩家所面向的方向前建造出来。

物体花费参数描述
桥梁4 根原木"bridge"建造一座桥以便通行
谷物堆4 份谷物Class Object Name生成一个谷物堆
木路4 块木板Class Object Name添加一段木质通道
石路4 块石头Class Object Name添加一段石质通道
大绿色房屋4 块木板Class Object Name建造鸡舍
小蓝色房屋4 块木板Class Object Name建造鸡舍
大橙色房屋4 块木板Class Object Name建造鸡舍
小红色房屋4 块木板Class Object Name建造鸡舍

示例

player.build("bridge")

此代码将在玩家所面向的方向前建造一座桥梁。

build

water()

语法

player.water()

此函数可用于对游戏中的物体浇水,例如灌溉庄稼或补充水槽。在游戏中,通常用于农业种植和家庭经营。

示例

player.water()

使用此代码,玩家可以在所面向的方向上给物体浇水。

water


collect()

语法

player.collect(string)

此函数用于收集那些不能直接计入库存的资源。通常用于补充可能耗尽的库存物品,例如为水壶注水。

示例

player.collect("water")
player.turn_left()
player.water()

此代码将使玩家从所面向的水源中收集水,然后左转给其他物体浇水。

collect


open()

语法

player.open()

此函数用于打开门和容器,这对于穿过入口或打开容器以拾取或放置物体非常有用。

示例

player.turn_left()
player.open()
player.move_forward()

此代码将使玩家左转打开一扇门,然后穿过该门。

open


close()

语法

player.close()

此函数用于关闭门和容器,这在关闭身后的门或在放置物品后关闭容器时非常有用。

示例

player.open()
player.collect("item")
player.close()

此代码将使玩家打开一个箱子,拾取一个物品,然后关闭该箱子。

close


place()

语法

player.place(object)

此函数用于将物体、物品或变量放置在允许放置物体的位置。通常用于将物品存放于容器中或在指定位置放置物体。

示例

wheat = 6
player.place(wheat)

此代码示例演示了玩家将数字存入名为 wheat 的变量中,然后使用 place() 函数将该变量放置在指定位置。

place


combine()

语法

player.combine(mixture)

此函数用于让玩家将不同的物体组合在一起,从而生成一个全新的物体。通常用于将各种原料混合制成食品、饮料或其他物质。

组合原料
萝卜调味汁3 milk, 2 cream, 3 lettuce, 5 radish
果汁1 water, 1 empty jar, 1 orange, 1 peach, 1 pear, 1 apple
葡萄汁1 grape, 1 empty jar
浆果牛奶1 milk, (1 red berry or 1 strawberry)
沙拉2 carrot, 2 tomato, 6 lettuce, 2 cucumber

示例

player.combine(jar)

此代码将使玩家将名为 “jar” 的列表中的所有项目组合在一起,生成一个新的物品/对象。

combine


plant()

语法

player.plant(dictionary,key)

此函数用于将物体种植至地面,通常用于种植农作物。该函数使用字典,接收两个参数:字典名称和字典键。

示例

player.plant(seeds, "Eggplant")
player.water()

在上述代码中,玩家在土壤中种植了茄子种子,然后浇水。

plant


write()

语法

await player.write(message)

允许显示一条消息,这是一种 async 异步函数,可以弹出窗口显示传递给函数的消息。程序将在消息关闭前暂停。

示例

await player.write("Hello World")

在上述代码中,会弹出一条消息 “Hello World”,程序将在玩家关闭该消息前暂停。

plant


read()

语法

await player.read()

允许显示一条消息,这是一种 async 异步函数,可以弹出窗口显示预先记录在关卡中的消息。程序将在消息关闭前暂停。

示例

await player.read()

在上述代码中,会弹出一条预先录入关卡的消息,程序将在玩家关闭该消息前暂停。

plant


question()

语法

await player.question(question)

允许显示一条包含 是 或 否 问题的消息,这是一个 async 异步函数,会弹出一个问题消息,并根据玩家输入生成一个布尔值。

示例

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

在上述代码中,会弹出一个带有“是”和“否”按钮的问题消息,程序将在玩家做出选择前暂停。

plant


display()

语法

await player.display("message")

允许显示一条消息,这是一个异步函数,可以弹出窗口显示没有预先编码数据的消息。它用来显示无法通过脚本处理的原始数据。程序将在消息关闭前暂停。内部设置时,不可包含任何脚本内容,以确保能够显示任意信息。

示例

await player.display("Whatever I want to put here")

在上述代码中,会弹出一个消息窗口,显示你传入的任意消息。在此例中,它显示 "Whatever I want to put here"。

plant


Codebook | 教师指南