你有一个宠物,但是它的名字是什么呢?来问问看吧。
简介
农民想知道宠物的名字。
但你的宠物还没有事件处理函数!
使用 pet.on("eventName", functionName) 为 "hear" 和 sayName 设置一个新的事件
默认代码
# 农民想知道宠物的名字。
# 使用这个函数作为"hear"事件的处理函数。
def sayName(event):
# 宠物会在函数调用时按顺序说这些。
pet.say("我名叫狂兽。")
pet.say("不过我的朋友们叫我毛球。")
# 使用pet.on("eventName", functionName)来添加事件监听函数给宠物
# 在这里使用"hear" sayName及pet.on()
# 你这次不需要说任何东西!
# 农民会进行交谈。
概览
事件处理函数是监控特定事件的函数。
事件处理函数可以使用 .on() 方法为特定单位创建,例如你的 pet !
使用 pet.on("eventType", functionName) 会在 "eventType" 相应的事件发生时调用 functionName 对应的函数。当然, "eventType" 在这里并不实际存在,它只是泛指。下面来看一个实际的例子:
注意: "eventType" 不要加 () !这里只是指向函数,而并非实际调用函数。
# 这定义了一个名为performTrick的函数!
def performTrick(event):
# 这个函数被调用时,宠物会执行相应动作。
pet.trick()
# 使用.on()方法,宠物会等待"hear"事件发生来运行performTrick。
pet.on("hear", performTrick)
"hear" 事件会在单位听到声音时发生!只要有人在离单位足够近的位置使用 .say("string") 方法,事件就会发起,处理函数就会被调用,函数内的代码就会被执行!
这一关里,农民和奶牛在说话,每次他们说话时,猫咪都会发声回应。
记住: pet.on("hear", sayName) 说的是:" 宠物在 (on) 听到 ("hear") 声音时运行sayName"。"
好伙伴的名字 A 解法
# 农民想知道宠物的名字。
# 使用这个函数作为"hear"事件的处理函数。
def sayName(event):
# 宠物会在函数调用时按顺序说这些。
pet.say("我名叫狂兽。")
pet.say("不过我的朋友们叫我毛球。")
# 使用pet.on("eventName", functionName)来添加事件监听函数给宠物
# 在这里使用"hear" sayName及pet.on()
pet.on("hear", sayName)
# 你这次不需要说任何东西!
# 农民会进行交谈。