Project1
标题:
怎样通过修改代码跳过战斗时的队伍命令和角色命令?
[打印本页]
作者:
靖康之变KK100
时间:
2020-7-24 20:54
标题:
怎样通过修改代码跳过战斗时的队伍命令和角色命令?
为了追求更简洁的战斗,想做成进入战斗直接展示技能界面(类似Evenicle2)
选择技能后就直接选择敌人打过去,跳过前面的两层选项(队伍命令PartyCommandSelection,角色命令ActorCommandSelection)
然后把普攻、防御和逃跑直接做成技能
捣鼓了好久只能把队伍命令跳过了(就是刚开始选战斗和逃跑的):
【把Scene_Battle 里的 startPartyCommandSelection 前三行复制到 changeInputWindow 里面,
changeInputWindow的条件语句改成直接执行 startActorCommandSelection 那句,
因为刚开始_actor是-1,所以要判断一下把BattleManager.selectNextCommand()加上巴拉巴拉……】本人东拼西凑的代码最多就走到这里了
接下来因为不知道从角色命令(选择攻击、技能、防御、道具等等的窗口)到技能窗口(_skillWindow)中间到底经历了什么,
所以尝试修改代码一直失败,所以来向大佬们求助了
请教:
1、这个设想有没有现成插件可以实现?(看了YEP和MOG,基本排除这两个可能)
2、最后使用道具的选项没办法做成技能,能不能和SkillList一起放在同一个窗口?
3、有没有关于系统代码的详细教程或者手册可以参考学习?(找了F1帮助,没有或没找到细化到Scene_Battle、BattleManager这样的)
作者:
远去之情
时间:
2020-7-24 21:53
直接做成ARPG不就行了,连进入战斗画面都省了。
按1攻击,2防御,3456技能。7喝药
想法略奇葩,楼主一定是做饭烧菜一锅炖,整理衣物什么的,衣裤鞋帽通通丢一起的人
省事!
作者:
靖康之变KK100
时间:
2020-7-27 14:02
想破头也没找到其他的方法,暂时只能做到这样了
// JavaScript source code
/*:
* @plugindesc 简洁战斗
* @author 靖康
* @help
* 将分布式的战斗窗口整合成一个,战斗直接打开技能窗口
* 攻击、防御和逃跑命令需要额外加在技能里。目前没办法使用道具,除非想办法把道具加入技能
* 技能类型被妥协了,也就是只能使用1号技能类型了,切换技能类型不会做
*
* 垃圾小白代码,几乎没有兼容性
*/
Scene_Battle.prototype.changeInputWindow = function() {
if (BattleManager.isInputting()) {
if (!BattleManager.actor()) {BattleManager.selectNextCommand();}
this.refreshStatus();
this._statusWindow.deselect();
this._statusWindow.open();//取消队伍命令,把它额外做了的工作搬出来
this._statusWindow.select(BattleManager.actor().index());//选定将要行动的角色
this._skillWindow.setStypeId(1);//不知道怎么读取角色技能类型,直接设为1
this.commandSkill();//选中技能时的回调
//this.startActorCommandSelection();
/* if (BattleManager.actor()) {
this.startActorCommandSelection();
} else {
this.startPartyCommandSelection();
}*/
} else {
this.endCommandSelection();
}
};
Scene_Battle.prototype.commandSkill = function() {
this._skillWindow.setActor(BattleManager.actor());
//this._skillWindow.setStypeId(this._actorCommandWindow.currentExt());//移到外面做,其实并没有什么意义
this._skillWindow.refresh();
this._skillWindow.show();
this._skillWindow.activate();
};
Scene_Battle.prototype.onSkillCancel = function() { //取消你的取消
//this._skillWindow.hide();
//this._actorCommandWindow.activate();
//this._skillWindow.setStypeId(1);//把取消改为查看下一个技能类型?
};
复制代码
基本实现了直接打开技能,但技能类型判定实在不会就直接阉割了
作者:
岸波白野
时间:
2021-5-30 09:37
靖康之变KK100 发表于 2020-7-27 14:02
想破头也没找到其他的方法,暂时只能做到这样了
万分感谢您的分享和思路!!太感谢了,我也是想要这样的效果,研究了好几天。这个非常实用。
不需要理会楼上这种没理解别人需求就开始阴阳怪气的
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1