
家具展示框架
允许你把家具标记为拥有可见存储栏位。
查看大图这个模组是一个框架,允许你将特定的家具指定为拥有“插槽”,你可以在这些插槽中放置普通物品用于展示。
要在家具上放置物品,请在手持待放置物品时,在插槽上点击鼠标左键。
要将物品从展示家具上取下,请在带有物品的插槽上点击鼠标右键。
你可以在配置文件中更改这些按键。
如果一个插槽中已有与待放置物品不同的物品(或相同但品质不同的物品),它们会被互换。
如果一个插槽中已有相同品质的相同物品,物品数量将增加到该物品的最大堆叠数。
目前,只有普通的原版物品(ObjectInformation.json 中的任何物品)可以放置展示(一旦新版本的星露谷物语物品框架发布,这应该会有所改进)。
使用此框架的模组:
创建展示家具
要将家具指定为具有插槽,请使用 Content Patcher,例如:
{
"Format": "1.23.0",
"Changes": [
{
"Action": "EditData",
"Target": "Mods/aedenthorn.FurnitureDisplayFramework/dictionary",
"Entries": {
"Luxury Table": {
"slots": [
{
"slotRect": {
"X": 1,
"Y": 6,
"Width": 9,
"Height": 9
},
"itemRect": {
"X": 2,
"Y": 6,
"Width": 9,
"Height": 9
}
},
{
"slotRect": {
"X": 11,
"Y": -4,
"Width": 10,
"Height": 10
},
"itemRect": {
"X": 11,
"Y": -3,
"Width": 9,
"Height": 9
}
},
{
"slotRect": {
"X": 11,
"Y": 15,
"Width": 10,
"Height": 10
},
"itemRect": {
"X": 11,
"Y": 14,
"Width": 9,
"Height": 9
}
},
{
"slotRect": {
"X": 21,
"Y": 6,
"Width": 9,
"Height": 9
},
"itemRect": {
"X": 20,
"Y": 6,
"Width": 9,
"Height": 9
}
}
]
}
}
}
]
}
这样会为豪华桌子添加四个插槽。
键
键必须是家具的全名或未限定的 ItemId。如果家具有多个旋转方向,你可以使用以下语法为每个旋转方向进行配置:
<家具名称>:<旋转索引>
例如,对于冬季餐桌,你需要为以下条目进行配置:
Winter Dining Table:0 和 Winter Dining Table:2
多个桌子或旋转方向可以通过用逗号分隔多个名称来共享同一配置,例如:
"Winter Dining Table:0,Festive Dining Table:0"
值
每个插槽有两个矩形:
- slotRect:指定家具的可点击部分。
- itemRect:指定家具上展示物品的部分。
矩形尺寸基于缩放前的实际家具纹理大小。
矩形坐标相对于家具的边界框(家具占用的地块)的左上角,而不是纹理本身。因此,豪华桌子的边界框是 32x32(2 个地块 x 2 个地块,缩放前每个地块是 16x16)。这就是为什么我在上面的示例中为顶部插槽使用了负的 Y 值。
技术细节
需要 SMAPI,使用 Harmony。
兼容 Mod Updater 以实现自动更新。
代码位于 https://github.com/aedenthorn/StardewValleyMods。
如果你想要投诉、寻求帮助或帮助我测试我的模组,可以访问 我的 Discord 服务器。
我所有星露谷物语模组的列表可在 https://www.nexusmods.com/stardewvalley/articles/895 找到。
正在加载版本记录…
正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。