装饰助手非官方版

一个修改版的beancounter导演助手,用于修复永久锁定物品的bug。 由ArchGaden更新 使用方法: 要解锁一个永久锁定的物品,打开控制台(~键)并点击该物品。你应该能看到物品名称和

这是对 beancounter 的 Director's Assistant 的修改版本,修复了永久锁定物体的错误。

由 ArchGaden 更新。

用法:

要解锁一个永久锁定的物品,请打开控制台(~键)并点击该物品。你应该能看到物品名称和一些数字。使用以下命令:

Lock 10

一旦你离开控制台,物品就会解锁。物品会保持原位直到你触碰它... 所以只需敲击或拾起再放下即可。数字 10 无关紧要,任何 1 到 100 的数字都适用。这是用于锁定门和容器的控制台锁定命令。我更新了脚本以检测物品是否处于「锁定」状态。通过「锁定」物品,脚本能判断出你想要解锁它... 多么讽刺啊。我使用 lock 命令是因为我猜我们不会用装饰助手来放置门和容器.. 如果你真这么做了?.. 请回退到 1.1 版本,否则就要忍受没有锁的日子。

警告:我没有使用 OBSE,因此尚未测试该版本。不过改动非常简单,应该不会有问题。

V 1.11

对脚本进行了细微修改以解决物品永久锁定问题。许多用户报告了一个 bug:当锁定物品被拾取又放下后,会重新回到原本的锁定位置。在我测试时,所有尝试锁定的物品都会出现这种情况。原版 1.1 脚本会创建一个隐形脚本物品,用于将目标物品固定在锁定位置/旋转状态。因此每锁定一个物品,就会生成一个虚拟物品来强制目标归位。按设计当你拾取锁定物品时,这个虚拟物品应该被移除。脚本原本会检测目标位置,如果是 0,0,0(表示物品位于玩家背包等容器内)就会删除虚拟物品。但由于某些原因,部分物品无法正确返回 0,0,0 坐标。我尝试改用 GetContainer 条件检测位置,但对故障物品仍会返回错误值。最终解决方案是:当虚拟物品脚本检测到目标物品处于 LOCKED 状态时,立即自我销毁。

我更新了 bcPlaceItem,移除了区块:

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
如果 目标.GetPos X == 0
   如果 目标.GetPos Y == 0 && 目标.GetPos Z == 0
      设置 目标 为 0
      ;MessageBox "我得走了!!"
   结束 If
结束 If
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

并将其替换为:

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
如果 目标被锁定
   目标.解锁
   设置 目标 为 0
结束 If
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

这更像是一种变通方法,但确实会产生一个不错的副作用:

在您「锁定」一个物品以解锁它之前(多么讽刺啊),目标物品在被丢弃到其被冻结的单元格中时,总是会回到原位。

顺便提一下,如果你想分配一个助手目标,可以使用控制台命令:

Set bcDecoratorQuest.Target to XXXXXXXX

其中 XXXXXXXX 是您在控制台中点击物品时看到的 8 位数字编号。

这对于设置您可能不想移动的物品目标非常有用。