设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 3845|回复: 30
打印 上一主题 下一主题

[有事请教] 求大佬帮忙改一下以前VA版主帮我弄的脚本内容

[复制链接]

Lv3.寻梦者

梦石
0
星屑
3023
在线时间
140 小时
注册时间
2018-1-22
帖子
137
1
发表于 2020-5-18 12:26:36 | 显示全部楼层
才疏学浅,不知道这样可否实现你希望的功能?

  1. for (i = 0; i < $dataActors.length; i++) {
  2.     if ($gameActor.actor(i).isStateAffected(2) && $gameActors.actor(i).equips().contains($dataArmors[1])) {
  3.         $gameActors.actor(i).addState(3);
  4.     } else removeState(3);
  5. };

  6. for (i = 0; i < $dataActors.length; i++) {
  7.     if ($gameActor.actor(i).isBattleMember()) {
  8.         switch ($gameParty.deadMembers().length) {
  9.             case 1:
  10.                 $gameActor.actor(i).equips().contains($dataArmors[1]) ? $gameActors.actor(i).addState(3) : $gameActors.actor(i).removeState(3);
  11.             break;

  12.             case 2:
  13.                 $gameActor.actor(i).equips().contains($dataArmors[1]) ? $gameActors.actor(i).addState(4) : $gameActors.actor(i).removeState(4);
  14.             break;

  15.             case 3:
  16.                 $gameActor.actor(i).equips().contains($dataArmors[1]) ? $gameActors.actor(i).addState(5) : $gameActors.actor(i).removeState(5);
  17.             break;
  18.         };
  19.     };
  20. };
复制代码

点评

其实好像我不清楚应该把这段加入到哪里?  发表于 2020-5-18 15:15

评分

参与人数 1+1 收起 理由
raisewing + 1 先塞糖

查看全部评分

自分自身の神様になること
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3023
在线时间
140 小时
注册时间
2018-1-22
帖子
137
2
发表于 2020-5-18 17:13:34 | 显示全部楼层
你不是要加在Game_BattlerBase里面吗?我也不太清楚你是要在什么情况下触发这些判定。

我的建议是,最好用YEP_AutoPassive插件,专门为被动状态定制的,可以在状态备注里加上判定条件,包括有无装备,是否死亡等等。最方便的是可以直接在武器/护甲的备注里绑定你想要的状态,装备上这个武器/护甲就自动附加对应的状态。如果你英文好的话可以去他主页看视频教程 http://www.yanfly.moe/wiki
不好的话简书也有中文翻译的文字教程,简单易懂

点评

我加进去了报错,我试试yep插件看  发表于 2020-5-18 17:31

评分

参与人数 1+1 收起 理由
raisewing + 1 塞糖

查看全部评分

自分自身の神様になること
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3023
在线时间
140 小时
注册时间
2018-1-22
帖子
137
3
发表于 2020-5-20 01:22:50 | 显示全部楼层
本帖最后由 526396987 于 2020-5-20 01:26 编辑

你重新定义一个新状态,比如说20号状态,什么都不要设置,图标也不要有,然后给武器/装备的备注栏里加上<Passive State: 20>,意思就是给这个武器/装备附加上20号状态,最后在这个20号状态的备注里加上下面这段:(这样做就不用判断装备是否在身上了,因为脱下装备后这个状态自动移除,而这个状态的作用就是根据死亡人数来添加别的状态)
  1. <Custom Passive Condition>
  2. if ($gameParty.deadMember().length === 1) {
  3.     user.addState(3);
  4.     user.removeState(4);
  5.     user.removeState(5);
  6.     condition = true;
  7. } else if ($gameParty.deadMember().length === 2) {
  8.     user.addState(4);
  9.     user.removeState(3);
  10.     user.removeState(5);
  11.     condition = true;
  12. } else if ($gameParty.deadMember().length === 3) {
  13.     user.addState(5);
  14.     user.removeState(3);
  15.     user.removeState(4);
  16.     condition = true;
  17. } else {
  18.     user.removeState(3);
  19.     user.removeState(4);
  20.     user.removeState(5);
  21.     condition = false;
  22. }
  23. </Custom Passive Condition>
复制代码



点评

这个队友阵亡加能力,好用!  发表于 2020-5-21 15:19
应该是$gameParty.deadMembers().length 你试试这个,最后少了个s,看看行不行  发表于 2020-5-20 19:42
$gameParty.deadMember is not a function是什么原因?  发表于 2020-5-20 16:10
我是想强化人物属性翻倍,我去试试。  发表于 2020-5-20 13:06
而且还有一点,param[]这种,指的是装备的属性,不是你人物的属性,因为前面的对象的$dataArmor而不是$gameActor,看你是要强化装备属性还是人物属性  发表于 2020-5-20 01:37

评分

参与人数 1+1 收起 理由
raisewing + 1 塞糖

查看全部评分

自分自身の神様になること
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3023
在线时间
140 小时
注册时间
2018-1-22
帖子
137
4
发表于 2020-5-21 20:31:19 | 显示全部楼层
raisewing 发表于 2020-5-21 16:05
再请教一下另外一条。当装备1号护甲时,装备者如果处于(2号状态)中毒状态时,自动添加3号状态全能力强 ...

之前根据死亡成员数量强化属性的可行吗?
给1号护甲加上备注<Passive State: 3>,然后在3号状态里加上备注: (如果无效请告诉我,我再试试)
  1. <Custom Passive Condition>
  2. if (user.isStateAffected(2)) {
  3.     condition = true;
  4. } else {
  5.     condition = false;
  6. }
  7. </Custom Passive Condition>
复制代码



点评

好用,真香!~~~  发表于 2020-5-21 21:15

评分

参与人数 1+1 收起 理由
raisewing + 1 塞糖

查看全部评分

自分自身の神様になること
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-5-4 11:26

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表