跳转到内容

AvernumScript/附录/物品、特殊物品和金币调用

来自维基教科书,开放世界的开放书籍

void change_coins(short coin_amount)

[编辑 | 编辑源代码]
根据coin_amount(可以为负数)更改队伍拥有的金币数量。如果数字为负数,则金币被扣除。如果队伍的金币不够,则不会扣除任何金币。

void change_spec_item(short which_item,short how_many)

[编辑 | 编辑源代码]
更改队伍拥有的特殊物品which_item的数量,增加或减少how_many个。如果how_many为负数,则特殊物品which_item的数量将减少how_many个。如果你尝试拿走比队伍拥有的物品数量更多的物品,队伍将只剩下0个该物品。

void char_give_item(short which_char_or_group,short which_item)

[编辑 | 编辑源代码]
尝试将which_char_or_group类型的物品which_item交给角色。如果你对一个组调用char_give_item(),会给每个组成员一个该物品。该物品不会自动识别。如果角色没有足够的空间来拿取物品,则不会发生任何事情,游戏会提示“无法拿取物品”。


注意:该调用是在场景格式版本2中添加的,仅与 Mac 版本 1.1 或更高版本或 Windows 版本 1.0 或更高版本一起使用。

short char_has_item(short which_char,short which_item)

[编辑 | 编辑源代码]

返回值

0 – 角色which_char没有类型为which_item的物品。
1 – 角色which_char类型为which_item的物品。

short char_has_item_of_class_equip(char char_num,short which_class,short take_item)

[编辑 | 编辑源代码]

返回值

0 – 没有队伍成员没有具有特殊类别which_class的物品。
1 – 至少有一个队伍成员具有特殊类别which_class的物品。

take_item的值是

0 没有特殊类别为which_class的物品被拿走。
1 一个特殊类别为which_class的物品被拿走。


注意:该调用是在场景格式版本2中添加的,仅与 Mac 版本 1.1 或更高版本或 Windows 版本 1.0 或更高版本一起使用。

void char_take_item(short which_char_or_group,short which_item)

[编辑 | 编辑源代码]
尝试从which_char_or_group处拿取一个类型为which_item的物品。(如果物品有电荷,它会拿取1个电荷)。

short coins_amount()

[编辑 | 编辑源代码]
返回队伍拥有的金币数量。

short has_item(short which_item)

[编辑 | 编辑源代码]

返回值

0 – 角色which_char没有类型为which_item的物品。
1 – 角色which_char类型为which_item的物品。

short has_item_of_class(short which_class,short take_item)

[编辑 | 编辑源代码]

返回值

0 – 队伍没有具有特殊类别which_class的物品。
1 – 队伍具有特殊类别which_class的物品。

take_item的值是

0 没有特殊类别为which_class的物品被拿走。
1 一个特殊类别为which_class的物品被拿走。

short has_num_of_item(short which_item)

[编辑 | 编辑源代码]
返回队伍拥有多少个which_item类型的物品。如果队伍没有which_item类型的物品,则返回0。如果所讨论的物品有电荷,则此调用将返回电荷总数。

short has_special_item(short which_item)

[编辑 | 编辑源代码]
返回队伍拥有的特殊物品which_item的数量,如果他们没有,则返回0。

short item_of_class_on_spot(short loc_x,short loc_y,short what_class)

[编辑 | 编辑源代码]

返回值

0 – 城镇空间 {loc_x,loc_y} 上 **没有** 特殊类别 what_class 的物品。
1 – 城镇空间 {loc_x,loc_y} 上 **有** 特殊类别 what_class 的物品。


注意: 如果 what_class 为 -1,则如果空间上有任何物品,则返回 1,否则返回 0。

void move_item_on_spot(short loc_x,short loc_y,short dest_x,short dest_y)

[编辑 | 编辑源代码]
将城镇空间 {loc_x,loc_y} 上的所有物品移动到 {dest_x,'dest_y}。


注意: 如果 dest_x 为负值,则该空间上的物品会被直接销毁。

short pay_coins(short coin_amount)

[编辑 | 编辑源代码]
尝试从队伍中取走 coin_amount 枚金币。

返回值

0 – 队伍 **没有** 足够的金币。
1 – 队伍 **有** 足够的金币。

void put_item_on_spot(short loc_x,short loc_y,short what_item)

[编辑 | 编辑源代码]
将类型为 what_item 的物品放置在城镇空间 {loc_x,loc_y} 上。如果该空间是容器,物品不会被放到容器内。

short reward_give(short which_item)

[编辑 | 编辑源代码]
尝试将编号为 which_item 的物品送给队伍。如果队伍无法容纳它,则尝试将物品放置在他们脚下。(将物品放在他们脚下只在室内有效)。

返回值

0 – 将奖励送给队伍 **失败** 了。
1 – 将奖励送给队伍 **成功** 了。

short take_all_of_item(short which_item)

[编辑 | 编辑源代码]
从队伍中取走所有编号为 which_item 的物品,并返回取走的物品数量。如果给出的物品带有电量,则返回取走的总电量。

short take_all_of_item_class(short which_class,short gold_to_pay)

[编辑 | 编辑源代码]
从队伍中取走所有特殊类别为 which_class 的物品,并为每个取走的物品给予队伍 gold_to_pay 枚金币。

返回值

0 – 队伍 **没有** 该类型的物品。
1 – 队伍 **有** 该类型的物品。


注意: 如果取走的物品带有电量,则会为每个取走的电量支付金币。

void take_item(short which_item)

[编辑 | 编辑源代码]
在队伍的库存中搜索,直到找到类型为 which_item 的物品并取走它。(如果物品带有电量,则会取走一个电量。)

short take_item_of_class_on_spot(short loc_x,short loc_y,short what_class)

[编辑 | 编辑源代码]
如果城镇空间 {loc_x,loc_y} 上有特殊类别 what_class 的物品,则返回 1,否则返回 0。
  • 如果该空间上有该类型的物品,则会销毁其中一个。(如果物品带有电量,则会取走一个电量。)
  • 如果 what_class-1,则会销毁城镇空间 {loc_x,loc_y} 上的所有物品,如果销毁了物品,则返回 TRUE

void take_num_of_item(short which_item,short num_to_take)

[编辑 | 编辑源代码]
从队伍中取走 num_to_take 个类型为 which_type 的物品。


注意: 如果队伍中该类型的物品少于 num_to_take 个,则会全部取走。
如果物品带有电量,则会取走这些电量。

void take_special_item(short which_item)

[编辑 | 编辑源代码]
从队伍中取走 **1** 个编号为 which_item 的特殊物品。如果队伍中没有该特殊物品,则该调用不会执行任何操作。
华夏公益教科书