Project1

标题: 询问两个关于MV的问题 [打印本页]

作者: 月下耶鲁夫    时间: 2017-2-21 01:03
标题: 询问两个关于MV的问题
本帖最后由 月下耶鲁夫 于 2017-2-21 08:39 编辑

1、请问如何让一个角色离队,然后下一个入队的角色继承这个角色的等级?(数据库中两个不同的角色)
2、请问MV目前有可以战斗换人的脚本吗?我找了一晚上,找了一个无法用https://rpg.blue/forum.php?mod=v ... amp;_dsign=7c599d0f,或者我可以用VIP定制一个这个功能的插件吗?
作者: 枫叶的北方    时间: 2017-2-21 10:55
继承等级的办法是在该成员加入队伍的时候的事件里,用变量判定主角等级,然后用提升等级->提升变量来提升等级。
事件
//变量判定等级
◆控制变量:#0016 主角等级判定 = 哈罗德 的 等级
//因为角色初始等级为1,所以添加等级的时候-1才会让等级与主角相等,而不是高1级
◆控制变量:#0016 主角等级判定 -= 1
//增加队员
◆更改队伍成员:添加 特罗茜
//提升等级
◆更改等级:整个队伍, + {主角等级判定}
//因为等级提升,HP\MP上限都会提升,所以有可能不是满血状态
◆恢复全体:特罗茜
作者: sonicdonggua    时间: 2017-2-22 01:30
战斗换人的话可以使用Yanfly_Party的插件。
另外,随便找一个非战斗场景换人的插件,最好是有Scene_Party的,在window_Actorcommand上加入
Window_ActorCommand.prototype.addPartyCommand = function() {
    this.addCommand(TextManager.formation, 'formation');
};
Window_ActorCommand.prototype.makeCommandList下加入
    this.addPartyCommand
Scene_Battle.prototype.createActorCommandWindow 加入
this._actorCommandWindow.setHandler('party',   this.commandParty.bind(this));

Scene_Battle.prototype.commandParty = function() {
    this._partyWindow.refresh();
    this._partyWindow.show();
    this._partyWindow.activate();
};
或者
Scene_Battle.prototype.commandParty = function() {
    SceneManager.push(Scene_Party);
};
当然,Scene_与Window_是如何定义的你需要自己去查原来的脚本定义。不过一般都是Scene_Party或Scene_Foramtion,看具体情况
这样每个角色行动时都可以选择重新组队
如果喜欢在队伍命令中插入,ActorCommand换成PartyCommand就行
作者: lirn    时间: 2017-2-22 15:02
http://www.jianshu.com/p/96a3f87a06f5

这里吧,虽然不是原作者地址
作者: 带路急先锋    时间: 2017-2-22 20:53
怎么才能在游戏里,查看一些变量数值呢?
作者: 月下耶鲁夫    时间: 2017-2-23 00:39
本帖最后由 月下耶鲁夫 于 2017-2-23 01:04 编辑

按照你给到的方法,然后插入了下那些代码:
进入战斗这样了


按照你先前说的几处修改如下:



3图对应位置你给到的两种方法我都试了

作者: sonicdonggua    时间: 2017-2-23 10:54
本帖最后由 sonicdonggua 于 2017-2-23 10:59 编辑
月下耶鲁夫 发表于 2017-2-23 00:39
按照你给到的方法,然后插入了下那些代码:
进入战斗这样了


你插错位置了。我的建议还是不要在原文中改动,新建一个js文件作为插件载入。
Window_PartyCommand.prototype.makeCommandList = function() {
    this.addCommand(TextManager.fight,  'fight');
    this.addCommand(TextManager.formation, 'formation');
    this.addCommand(TextManager.escape, 'escape', BattleManager.canEscape());
};
Scene_Battle.prototype.createPartyCommandWindow = function() {
    this._partyCommandWindow = new Window_PartyCommand();
    this._partyCommandWindow.setHandler('fight',  this.commandFight.bind(this));
    this._partyCommandWindow.setHandler('formation',  this.commandFormation.bind(this));
    this._partyCommandWindow.setHandler('escape', this.commandEscape.bind(this));
    this._partyCommandWindow.deselect();
    this.addWindow(this._partyCommandWindow);
};
Scene_Battle.prototype.commandFormation = function() {
    SceneManager.push(???); //???代表你下载的选择角色插件内置的scene
};
上面写的比较乱,你试试这个。但前提你得先看看你下载的插件内建的是Scene_什么
作者: 月下耶鲁夫    时间: 2017-2-23 12:18
本帖最后由 月下耶鲁夫 于 2017-2-23 21:18 编辑
sonicdonggua 发表于 2017-2-23 10:54
你插错位置了。我的建议还是不要在原文中改动,新建一个js文件作为插件载入。
Window_PartyCommand.proto ...


先前按照你说的位置填写的呀……
下面这个是我用的换人插件,是你所说的内置scene的插件吗?
这个插件按你新写的代码,那么(???)应该填写什么?

YEP_PartySystem.7z (9.42 KB, 下载次数: 55)


增加新插件后,按钮多出了换人的选项,但是点了之后黑屏






欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1