Project1
标题:
怎么样实现特殊商店,不能出售武器,只能出售道具
[打印本页]
作者:
55808888
时间:
2023-5-6 15:16
标题:
怎么样实现特殊商店,不能出售武器,只能出售道具
如题,我做了一个特殊商店,希望里面只能出售道具,武器和防具不能出售,怎么实现?
作者:
小秋橙
时间:
2023-5-6 17:31
我说说思路吧,首先商店界面Scene_Menu中有下面的函数负责显示所有的道具类别:
Scene_Shop.prototype.createCategoryWindow = function() {
this._categoryWindow = new Window_ItemCategory();
this._categoryWindow.setHelpWindow(this._helpWindow);
this._categoryWindow.y = this._dummyWindow.y;
this._categoryWindow.hide();
this._categoryWindow.deactivate();
this._categoryWindow.setHandler('ok', this.onCategoryOk.bind(this));
this._categoryWindow.setHandler('cancel', this.onCategoryCancel.bind(this));
this.addWindow(this._categoryWindow);
};
而其中第一行的new Window_ItemCategory()则默认会生成【物品、武器、防具、重要物品】四类,也就是下面的函数:
Window_ItemCategory.prototype.makeCommandList = function() {
this.addCommand(TextManager.item, 'item');
if ($gameSwitches.value(1)) return; // 本行为新增内容,表示当开关1开启时不再执行下面三行
this.addCommand(TextManager.weapon, 'weapon');
this.addCommand(TextManager.armor, 'armor');
this.addCommand(TextManager.keyItem, 'keyItem');
};
那么为了实现楼主想要的效果,可以在第二个函数中进行条件判断,比如某某开关打开的话则只生成【物品】不生成另外三个,然后在进入和退出这个特殊商店前后改变该开关。
第二个函数位于rpg_windows.js的第1888行左右。
作者:
55808888
时间:
2023-5-10 12:06
小秋橙 发表于 2023-5-6 17:31
我说说思路吧,首先商店界面Scene_Menu中有下面的函数负责显示所有的道具类别:
Scene_Shop.prototype.crea ...
大神你说的我看懂了,但是我用的是Drill_SceneShop自定义商店插件,里面的这段代码被改掉了,这个怎么破?
Scene_Shop.prototype.createCategoryWindow = function() {
var data = {
"x": DrillUp.g_SSh_category_x,
"y": DrillUp.g_SSh_category_y,
"width": DrillUp.g_SSh_category_width,
"height": DrillUp.g_SSh_category_height,
"fontsize": DrillUp.g_SSh_category_fontsize,
"slideMoveType": DrillUp.g_SSh_category_slideAnim['slideMoveType'],
"slideTime": DrillUp.g_SSh_category_slideAnim['slideTime'],
"slideDelay": DrillUp.g_SSh_category_slideAnim['slideDelay'],
"slidePosType": DrillUp.g_SSh_category_slideAnim['slidePosType'],
"slideX": DrillUp.g_SSh_category_slideAnim['slideX'],
"slideY": DrillUp.g_SSh_category_slideAnim['slideY'],
"slideAbsoluteX": DrillUp.g_SSh_category_slideAnim['slideAbsoluteX'],
"slideAbsoluteY": DrillUp.g_SSh_category_slideAnim['slideAbsoluteY'],
"layoutType": DrillUp.g_SSh_category_layout['layoutType'],
"layoutX": DrillUp.g_SSh_category_layout['layoutX'],
"layoutY": DrillUp.g_SSh_category_layout['layoutY'],
"layoutSrc": DrillUp.g_SSh_category_layout['layoutSrc'],
"layoutSrcFile": DrillUp.g_SSh_category_layout['layoutSrcFile'],
作者:
monkeyjess
时间:
2023-12-8 00:41
drill插件里面物品自定义分类设置,在备注栏里设定开关。可以在商店里隐藏该类物品 实现你的功能。
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1