Project1

标题: 怎么样判定XX状态被驱散? [打印本页]

作者: zlpwb1666    时间: 2014-11-3 13:49
标题: 怎么样判定XX状态被驱散?
RT
例:我方牧师释放了一个持续回血BUFF,该技能设定如果该BUFF被驱散,则立刻恢复所有生命。
怎么样才能判定这样一个状态的存在?


作者: VIPArcher    时间: 2014-11-3 14:12
看不懂,就是说这个牧师放的这个技能可以附加一个持续恢复状态A。如果这个状态A消失的时候立刻恢复所有HP么?
作者: timiesea    时间: 2014-11-3 18:59
本帖最后由 timiesea 于 2014-11-3 19:01 编辑

  给楼主一个思路吧,这个有点复杂的样子,等待大触。

  楼主可以在脚本中把回复的相关代码给写好。然后新建一个方法,放到类里,例如:class A function B。然后在状态的备注里写上函数名,例如@<驱散 B>
  然后给每一个可能驱散状态的技能都设置一个备注,用来写明驱散的状态ID,如果是驱散全部状态则使用例如-1等一个字符来表示。例如:@<clear_state 1,2,3,4,5,>
  然后再写一个方法来识别这个备注(要使用正则表达式)。目的是知道哪一个技能会驱散什么状态,如果是驱散多个状态则存放到一个数组里。新建一个公共事件:写脚本,把技能ID传到一个变量,然后获取该技能的备注进行读取,然后识别出要驱散什么状态,并将状态ID存放到数组里,然后遍历这个数组,根据状态的ID,状态的备注中获取到要执行的函数然后执行,最后在代码中手动驱散这些状态(重要)。别忘了在技能的使用效果里调用这个公共事件。这样子做就可以达到效果了。还有,即使是技能想要驱散状态,也不能在使用效果里写了,我们要自己在代码里自行驱散。

  这个方法是很复杂,但是不仅仅可以实现楼主的所需要的效果,而且当状态自主解除时并不会触发效果。

  优点:实用;缺点:复杂,连我都有点不知道该怎么写呢。

  一句话:坑爹呢这是。。。
作者: zlpwb1666    时间: 2014-11-3 20:43
timiesea 发表于 2014-11-3 18:59
  给楼主一个思路吧,这个有点复杂的样子,等待大触。

  楼主可以在脚本中把回复的相关代码给写好。然 ...

谢谢,但是如果这样太复杂了,能否能在战斗里设置条件分歧呢?
作者: 3106345123    时间: 2014-11-4 13:08
首先某状态消失后自动附加另一状态可判定 XX状态被驱散 ,然后用事件or脚本写出当有某一状态时自动将血回满

即可




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