关于全自定义商店界面
相关插件
核心插件:
◆Drill_CoreOfWindowAuxiliary 系统 - 窗口辅助核心
◆Drill_CoreOfWaitressSprite 主菜单 - 服务员核心
主要插件如下:
◆Drill_SenceShop 面板 - 全自定义商店界面
◆Drill_SceneLimitedShop 面板 - 限量商店
由于插件内容非常多,这里只针对 全自定义商店界面 进行说明。
快速区分
商店界面 | 限量商店 | |
特点 | 默认的商店模式,可多买。 | 只能购买,一个一个买,且限量。 |
结构 | 7个窗口 + 1个按钮组 + 1个服务员 | 4个窗口 + 1个按钮组 + 1个服务员 |
参数 | ![]() | ![]() |
插件关系
商店插件之间的关系如下:(两个商店界面功能相似,但实际并没有任何关系。)
商店界面
结构/流程
注意,流程是程序内部无法改变的固定业务逻辑结构,你可以换界面、换外皮,但是无法改变流程,除非新写插件。
默认购买流程
购买物品关系了6个窗口(空白窗口不算)。购买流程中看到的窗口如下:
![H:\rpg mv 箱\U$A{ZEGK4XY6KUSYNZS~3]L.jpg](./images/关于全自定义商店界面/关于全自定义商店界面-004.jpg) ![H:\rpg mv 箱\Q8DRR~[IRZPLFCSXBQQTFS.jpg
1).进入界面 > 帮助窗口 + 金钱窗口 + 选项窗口 + 空白窗口
2).点击购买 > 帮助窗口 + 金钱窗口 + 选项窗口 + 购买窗口 + 持有数窗口
3).选择一个物品 > 帮助窗口 + 金钱窗口 + 选项窗口 + 物品数量窗口 + 持有数窗口
4).购买完毕 > 返回流程2)
默认出售流程
出售物品流程关系了7个窗口(空白窗口不算)。出售流程中看到的窗口如下:
![H:\rpg mv 箱\U$A{ZEGK4XY6KUSYNZS~3]L.jpg](./images/关于全自定义商店界面/关于全自定义商店界面-007.jpg) ![H:\rpg mv 箱\AEZPJ%S%QPX0{H4@}9]H~32.jpg](./images/关于全自定义商店界面/关于全自定义商店界面-008.jpg) ![H:\rpg mv 箱\N`_F_2C]LSZRE3OSB4~P%0K.jpg](./images/关于全自定义商店界面/关于全自定义商店界面-009.jpg)
1).进入界面 > 帮助窗口 + 金钱窗口 + 选项窗口 + 空白窗口
2).点击出售 > 帮助窗口 + 金钱窗口 + 选项窗口 + 出售类型窗口 + 出售窗口
3).选择一个类型 > 帮助窗口 + 金钱窗口 + 选项窗口 + 出售类型窗口 + 出售窗口
4).选择一个物品 > 帮助窗口 + 金钱窗口 + 选项窗口 + 物品数量窗口 + 持有数窗口
5).出售完毕 > 返回流程3)
插件的购买流程
购买物品关系了6个窗口,其中选项窗口变成了选项按钮组,并且添加了服务员。购买流程中看到的插件内容如下:
1).进入界面 > 服务员 + 金钱窗口 + 持有数窗口 + 选项按钮组
2).点击购买 > 服务员 + 金钱窗口 + 持有数窗口 + 购买窗口 + 帮助窗口 +(选项按钮)
3).选择一个物品 > 服务员 + 金钱窗口 + 持有数窗口 + 购买窗口 + 物品数量窗口 + 帮助窗口 +(选项按钮)
4).购买完毕 > 返回流程2)
插件的出售流程
出售物品关系了7个窗口,其中选项窗口变成了选项按钮组,并且添加了服务员。出售流程中看到的插件内容如下:
1).进入界面 > 服务员 + 金钱窗口 + 持有数窗口 + 选项按钮组
2).点击出售 > 服务员 + 金钱窗口 + 持有数窗口 + 出售类型窗口
3).选择一个类型 > 服务员 + 金钱窗口 + 持有数窗口 + 出售窗口 + 帮助窗口 +(选项按钮)
4).选择一个物品 > 服务员 + 金钱窗口 + 持有数窗口 + 出售窗口 + 物品数量窗口 + 帮助窗口 +(选项按钮)
5).出售完毕 > 返回流程3)
价格变动
无论是购买还是出售,他们的公式是一样的:
这里的出售额外价格,用-5,因为如果为正数,便宜的东西可能反而能卖到更多的钱。
注意,倍率计算后,小数点后面只要有值,即使是5.01块,就会取顶按6块钱算。通过倍率计算/价格调整后的最小价格为1。
由于变量不能表示小数,这里的倍率变量取千分之一。假设变量[49]值为 1100 ,则倍率为 110.0%,也就是1.10。
注意,由于物品是可以批量购买多个的,所以该商店不支持越买越贵功能。
物品兑换
使用指令切换商店后,只是把 金钱 换成了 樱桃(38号物品)交易。倍率/额外价格还是原来的,你需要手动调整新的倍率/额外价格。
示例中,购买和出售的倍率调成了一样的,所以购买然后卖出不会损失樱桃。
根据倍率计算,高效HP药水原价72。 72*0.05+0 = 3.6 -> 4。
(倍率计算后,小数点后面只要存在位数,就会进1位)
另外,交换商店的”\I[546]”可以直接写成文字:
服务员
服务员可以对以下情况作出不同gif动作:
"欢迎光临":刚进入界面时触发。
"购买一个物品":玩家购买了一个物品时触发。
"出售一个物品":玩家出售了一个物品时触发。
"余额不足":玩家买不起时点击购买触发。
"余额不足(交换物)":玩家物品不足时点击购买触发。
配置中稍微有些绕,你可以参考示例中的配置,多试试就能熟悉。
其它说明
物品类型
商店界面的购买窗口 不区分 物品类型。
但是商店的出售窗口 会区分 物品类型。
下面使用的是扩展插件:
◆Drill_ItemCategory 控件 - 物品类型
该插件也可以在 不使用全自定义商店插件 时单独运行。效果为下图:
持有数窗口
持有数窗口这里被缩放得非常小,只有金钱窗口那么大。
实际上,默认的持有数窗口还显示增加的装备的能力值的数据,由于窗口遮挡关系,设置的高度太小,这些数据都被遮住了。
(如果你需要显示这些数据,可以调高该窗口宽度)
另外,持有数窗口的用语设置,在编辑器中 数据库>用语 设置,插件中 不提供 编辑。