Project1

标题: 请教如何制作一个死亡时自动复活并回满血的技能? [打印本页]

作者: zhujunjie988788    时间: 2017-4-28 18:26
标题: 请教如何制作一个死亡时自动复活并回满血的技能?
用了YEP 的Auto Passive States,但不知道为啥没效果,求正确方法,万分感谢
作者: zhujunjie988788    时间: 2017-4-28 19:19
用Auto Passive States貌似实现了类似效果,但会反复生效,怎么才能只生效一次呢
作者: raketenfaust02    时间: 2017-4-28 20:40
zhujunjie988788 发表于 2017-4-28 19:19
用Auto Passive States貌似实现了类似效果,但会反复生效,怎么才能只生效一次呢 ...

YEP.56 – Limited Skill Uses
作者: Ajucaqiu    时间: 2017-4-29 00:20
给你个思路,而且肯定行的办法。
在死亡状态下编辑,当角色处于x状态时,死亡或生命为0时获得mhp的生命值,然后移除x状态
作者: sonicdonggua    时间: 2017-4-29 00:24
<Custom Respond Effect>
if (target.hp <= 0 ){
target._hp += target.mhp;
target.removeState(95);
}
</Custom Respond Effect>
用BuffStateCore就行,95是欲使用的状态
作者: zhujunjie988788    时间: 2017-4-29 00:42
呃,用了你们说的方法是实现了,但怎么在战斗开始时自动给角色按上这个技能效果?一旦用了Auto Passive States 自动被动状态   又是无限死循环
作者: Ajucaqiu    时间: 2017-4-29 00:54
zhujunjie988788 发表于 2017-4-29 00:42
呃,用了你们说的方法是实现了,但怎么在战斗开始时自动给角色按上这个技能效果?一旦用了Auto Passive Sta ...

依我看被动不变不可能达到,要么是丢弃被动依附的装备或者技能,再想办法获得。要么就利用事件判断角色是否有复活的技能。有的话站前给他加个状态复活后移除,不过有点麻烦。
作者: sonicdonggua    时间: 2017-4-29 02:25
本帖最后由 sonicdonggua 于 2017-4-29 02:26 编辑

<Custom Passive Condition>
if (user._undead === 1) {
    condition = true;
} else {
    condition = false;
}
</Custom Passive Condition>
<Custom Battle Effect>
target._undead = 1;
</Custom Battle Effect>

<Custom Respond Effect>
if (target._undead === 1 && target._hp <= o){
target._hp += target.mhp;
target._undead = 0;
}
</Custom Respond Effect>
未测试
作者: zhujunjie988788    时间: 2017-4-30 00:01
sonicdonggua 发表于 2017-4-29 02:25
if (user._undead === 1) {
    condition = true;
} else {

试了下,貌似不行,可能是我的方法不对?
作者: doranikofu    时间: 2017-5-1 02:36
YEP的buffstatescore里面有一个
custom battle effect是在战斗开始时生效一次的
让被动技能在战斗开始给人物加状态x
在状态x影响下可以复活一次 然后复活之后清除这个状态x

如果用这个的话要当心中途换人的情况
作者: zhujunjie988788    时间: 2017-5-8 23:40
doranikofu 发表于 2017-5-1 02:36
YEP的buffstatescore里面有一个
custom battle effect是在战斗开始时生效一次的
让被动技能在战斗开始给人 ...

请教能否帮忙写个范例?- -我研究了好久也还是不行,大神谢谢了
作者: doranikofu    时间: 2017-5-9 09:59
本帖最后由 doranikofu 于 2017-5-9 12:43 编辑

YEP有一个类似的教程是用装备判定的
有装备x的时候自动复活然后扔掉这个装备
  1. <Custom Apply Effect>
  2. if (target.isActor()) {
  3.   var ring = $dataArmors[1541];
  4.   if (target.hasArmor(ring)) {
  5.     target.discardEquip(ring);
  6.     target.startAnimation(42);
  7.     var hp = Math.floor(target.mhp * 0.25);
  8.     target.gainHp(hp);
  9.     target.startDamagePopup();
  10.   }
  11. }
  12. </Custom Apply Effect>
复制代码


按lz这种要做技能的话,可以用技能附加状态AAA

状态AAA只是一个flag 记得设定成死亡不清楚 需要YEP的state category插件
JAVASCRIPT 代码复制
  1. <Category: Bypass Death Removal>


然后把死亡状态设置成这样 需要YEP的buff states core
JAVASCRIPT 代码复制
  1. <Custom Apply Effect>
  2. if (target.isStateAffected(XXX)) {//如果有flag状态
  3.   target.performCollapse();
  4.   if (target.isActor()) {
  5.   target.startAnimation(XXX, true);//复活动画 镜像显示
  6.   } else {
  7.   target.startAnimation(XXX, false);//复活动画 非镜像显示
  8.   }
  9.   BattleManager.actionWaitForAnimation();
  10. target.gainHp(target.mhp); //回复满血
  11. target.startDamagePopup();//显示回复
  12.  
  13. target.removeState(AAA);//清除AAA状态
  14.  
  15. }
  16. </Custom Apply Effect>

作者: zhujunjie988788    时间: 2017-5-9 21:38
doranikofu 发表于 2017-5-9 09:59
YEP有一个类似的教程是用装备判定的
有装备x的时候自动复活然后扔掉这个装备

非常感谢大神,用这个方法确实可行,但恕我愚钝,要想在战斗一开始自动给某个角色加上状态,是否还是需要Auto Passive States呢?但一用这个就无限死循环,永久自动复活,还请麻烦大神再指点我一下,怎么解决,谢谢了
作者: zhujunjie988788    时间: 2017-5-9 21:49
custom battle effect 这个应该怎么用呢?加了这个技能在战斗开始就会自动加到角色身上去吗?能麻烦懂的大神们帮忙写个范例吗?谢谢了
作者: doranikofu    时间: 2017-5-10 13:28
被动状态不会清除所以不能随便用
被动状态写这个就行
  1. <Custom Battle Effect>
  2. target.addState(xxx); //flag状态
  3. </Custom Battle Effect>
复制代码


唯一的问题就是这种做法如果有中途换人的插件的话,中途上场这个代码不生效,没想到特别好的办法就懒的管了
作者: zhujunjie988788    时间: 2017-5-10 15:12
doranikofu 发表于 2017-5-10 13:28
被动状态不会清除所以不能随便用
被动状态写这个就行

<Custom Battle Effect>
target.addState(xxx); //flag状态
</Custom Battle Effect>

这段加在哪里?角色还是职业的注释里?
作者: zhujunjie988788    时间: 2017-5-11 00:20
各位大神帮帮忙吧,小弟研究时间太短,怎么都搞不定
<Custom Battle Effect>
target.addState(xxx); //flag状态
</Custom Battle Effect>
这段在各个地方都试着加了一下,但都没效果,战斗开始并不会自动给角色加上,请教大神原因。。。谢谢了
作者: soulsaga    时间: 2017-5-11 18:33
本帖最后由 soulsaga 于 2017-5-11 18:35 编辑

http://tm.lucky-duet.com/viewtopic.php?f=5&t=1849
ゲームオーバー復活プラグイン
ゲームオーバーになったときに、ゲームオーバー画面を出してから復活させることができる
プラグインです。
作者: zhujunjie988788    时间: 2017-5-13 11:45
厚脸皮自顶,求帮助
<Custom Battle Effect>
target.addState(482); //flag状态
</Custom Battle Effect>
这段写在哪里才能在战斗开始时自动给角色加上状态?
作者: zhujunjie988788    时间: 2017-5-15 09:51
<Custom Battle Effect>
target.addState(482); //flag状态
</Custom Battle Effect>

是我写错了吗?不管是挂在人物身上还是状态里,都不生效啊。。。哭死




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