对象属性
2021-12-03

每个对象(事物)都有多个属性(对象的状态、对象拥有的物品数量)。
属性的三种操作:前提条件,后果影响,自动触发。
(1)前提条件:
输入:心情大于60,体力大于40,去公园
下次再输入去公园,如果心情小于60,或体力小于40,那么“去公园”这件事就无法执行,电脑会回答不满足条件。
(2)后果影响
输入:写作业,心情减20
现在心情已经减了20,以后每次输入写作业,心情都会减20
那么现在再输入去公园,就无法执行了,因为心情减20后,心情不足60了,不符合去公园的前提条件。
输入:玩游戏,心情加30
以后每次输入“玩游戏”,心情都会加30。现在心情恢复到60以上了,再输入去公园,又可以执行了。
(3)自动触发
输入:自动:心情小于10,睡觉
注意:自动触发前面要写“自动:”如果不写,就成了前提条件。
以后只要心情发生变化,且变化到10以下,就会自动执行事件“睡觉”。也就是说,只有刚刚改变了的属性,才会自动判断是否自动触发事件。否则即便满足自动触发的条件,也不会触发事件,这是为了避免频繁的自动触发。
由于现在心情还大于10,不能自动触发“睡觉”。那么反复输入写作业,每输入一次,心情就减20。直到心情减到10以下时,就会自动执行“睡觉”。

说明1:心情、体力等就是对象的属性。用户可以自定义属性:用户输入的话语中,如果出现了表中没有的属性,就会自动添加为新属性。那么新创建的属性的初始值是多少?最初话语里属性后面的数字就作为初始值。
说明2:前面输入的话语(心情大于60)里,并没有对象。其实省略对象,默认就是指电脑阿玉。
要指定对象应该这样写:猫的心情大于60,猫的心情加20。就是说明对象的属性。
说明3:可以一次写多个前提条件,或多个后果影响。
如果写了多个前提条件(逗号隔开),就必须全部满足,才算满足条件。
如果写了多个后果影响(逗号隔开),每个影响都会执行。
说明4:前提条件操作符:大于、小于、等于、为。例如心情大于50。
后果影响操作符:加、减、为。例如心情减10。
说明5:如果一个数值,上限是100,应在数值后面加星号*,例如心情大于30*,表示心情的最大上限是100。如果超过100,按100算。再例如体力加40*,表示属性体力的最大上限为100。如果不加星号,则不设上限。属性的最小值低于0时,按0算。

商店系统:在虚拟世界的商店,阿玉给自己买东西
首先输入:去商店
背景图片为商店的情况下,才可以买东西
输入:买XX
例如输入买苹果,属性的物品就会增加苹果,如果已经有苹果,苹果数量加1。
虚拟商店中,每件物品都是10元。阿玉的金钱数量,会因为买东西而减少。阿玉的金钱数量也会每天补充,最大上限为1000。
输入不含买字的话语,就自动离开商店。
切换场景,还可以输入:回家、去学校。

查找对象的属性和对象的事件:
对象分析栏目下,有查找对象,输入对象名称。
如果之前教过:猫的心情大于90,猫玩耍。而且前面已经教过关于猫的事件(例如猫吃鼠),那么查找对象猫,就会显示猫的属性和事件。