敲门

敲门

让玩家可以敲击内门和外门,当房主在家时会应门。

游戏玩法机制

[youtube]PYrZSzXxUVI[/youtube]

概述

这个模组允许玩家敲击NPC房间的门或NPC房屋的锁门,会播放敲门声(默认为"axchop")并敲击设定的次数(默认为3次)。

如果NPC在家,它们会走到门口,打开门,等待指定时间(默认为200个游戏刻),然后返回起点并继续执行它们之前正在进行的动画活动。

默认情况下,尝试打开一扇可兼容的锁着门会变成敲门。该覆盖功能可在配置文件中禁用,而敲门可通过在面向门时按下快捷键(默认为回车键)来执行。

如果NPC已经在移动中,他们不会开门。

对于外门,农夫会自动移开一个瓷砖的距离,为NPC让出空间。

如果一个房间被多个NPC拥有,模组将检查所有拥有者,并随机选择房间内的一位。

如果你安装了关门模组,NPC 会在返回起点前关闭室内门。

配置

你可以在配置中修改以下内容:

  • 敲击按钮
  • 敲门声
  • 敲门声次数
  • 敲击声音间隔
  • 游戏中的回答延迟(以游戏刻为单位)
  • 游戏tick中的等待时间
  • 是否唤醒正在睡眠的NPC

注释

模组通过地块行为来确定内门的所有者,因此对于罗宾和德米特里厄斯来说,行为是"Door Robin Demetrius",它会从这两个名字中选择一个所有者。

该模组使用一个简单的格子检测算法,从门后的格子开始,以确定房间内都有谁。

外部门只有在门动作代码中提及所有者姓名时才有效,因为这决定了哪个NPC会开门。例如,"LockedDoorWarp 7 9 LeahHouse 1000 1800 Leah 500" 会找到Leah并检查她是否在屋内。

这个模组将允许你敲门家具,但不会触发NPC开门。

技术

需要SMAPI。

实现了一个通用模组配置菜单的接口,用于在游戏中更改配置设置。

代码位于 https://github.com/aedenthorn/StardewValleyMods。

我所有的星露谷物语模组列表可在https://www.nexusmods.com/stardewvalley/articles/895找到。