Project1

标题: [已解决]请教一次性遗忘所有技能和释放就遗忘该技能的方法 [打印本页]

作者: 明智光秀    时间: 2020-6-21 02:27
标题: [已解决]请教一次性遗忘所有技能和释放就遗忘该技能的方法
本帖最后由 明智光秀 于 2020-6-22 01:57 编辑

事件里的技能增减只能一个一个学习或遗忘,一次遗忘50号以内的技能要写50个。。。然后技能效果里只有学习没有遗忘,试了下调用公共事件遗忘好像每个技能都得弄一个公共事件才行(要分别指定遗忘的技能),请问有更好的方法实现这两样嘛?或者脚本或插件?
作者: MCCF    时间: 2020-6-21 08:51
本帖最后由 MCCF 于 2020-6-21 17:18 编辑
  1. for(var i = 1; i <= 50; i++) $gameActors.actor(id).forgetSkill(i);
复制代码

作者: 2503304633    时间: 2020-6-21 14:12
本帖最后由 2503304633 于 2020-6-21 14:15 编辑

第二个问题好解决,在技能效果里设置公共事件,公共事件遗忘该技能即可。
第一个问题要么脚本里做一个循环
$gameActors.actor(actorId).forgetSkill(n);这是遗忘技能语句,我不会js语法,你可以做一个循环


作者: 芯☆淡茹水    时间: 2020-6-21 15:14
本帖最后由 芯☆淡茹水 于 2020-6-21 15:27 编辑

批量?
给 Game_Actor 加个这个方法
  1. Game_Actor.prototype.batchForgetSkills = function() {
  2.     Array.prototype.slice.call(arguments, 0).forEach(this.forgetSkill.bind(this));
  3. };
复制代码

1 号角色批量遗忘技能就 $gameActors.actor(1).batchForgetSkills(2,4,5,7,8,22,26,99);
括号里随便写多少个技能

使用了就忘记技能,可以这样
JAVASCRIPT 代码复制
  1. Game_Actor.prototype.useItem = function(item) {
  2.     Game_Battler.prototype.useItem.call(this, item);
  3.     DataManager.isSkill(item) && this.forgetSkill(item.id);
  4. };

作者: zwlele1980    时间: 2020-8-8 18:47
芯☆淡茹水 发表于 2020-6-21 15:14
批量?
给 Game_Actor 加个这个方法

请问 大佬   施放一次 就自动遗忘的技能 怎么做啊  就是一个技能施放一次后就自动遗忘
作者: zwlele1980    时间: 2020-8-8 18:49
请问你   施放一次就 遗忘该技能的方法 找到了没有啊 谢谢
作者: zwlele1980    时间: 2020-8-11 10:04
zwlele1980 发表于 2020-8-8 18:49
请问你   施放一次就 遗忘该技能的方法 找到了没有啊 谢谢

代码都不知道怎么用 脚本调用还好点。  我现在用yep技能核心插件 让技能在 战斗界面隐藏 ,还是谢谢你。




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