Project1

标题: 如何使某状态仅在N个目标之间生效。 [打印本页]

作者: 疯狂异形    时间: 2011-10-3 02:23
标题: 如何使某状态仅在N个目标之间生效。
问题是:如何使某状态仅在N个目标之间生效。
例1——拉尔夫被邪恶生物添加上了“加速”状态,这个状态仅在邪恶生物与拉尔夫之间生效,虽然拉尔夫的速度因为该“加速”状态,现在比邪恶生物快了;但是在攻击其他目标时,会获得负数的绝对速度修正值

例2——梅西给自己和敌人凯撒添加了“狂暴”状态,因此梅西与凯撒相互攻击时攻击力都会提高,而在运算该伤害时,因为“狂暴”的附加效果:降低防御力25%,因此梅西与凯撒对彼此造成的最终伤害值还会提高。
  但是,在梅西面对另外一只怪物“青蛇”时,她的攻击力、防御力不变,就好象“狂暴”状态消失一样,尽管这个状态要等到N回合后才消散。

问题:如何使某状态仅在N个目标之间生效。dsu_plus_rewardpost_czw
作者: MSQ    时间: 2011-10-3 10:57
首先,我要说你用的脚本和问题有点没有头绪。
例二我明白,只是例一的速度……如果是默认的回合制,在速度判定前,系统如何知道你要攻击哪个怪?就算是你打了那个邪恶生物,获得了速度加成,那你下回合结果去打了别的怪了呢?cp制我了解的不深,到我见过的都是行动条满了才行动,那么就和默认一样了~~当然,你用的是先选怪,再等行动条那就当我没说~~我只是好奇~~=W=

好了,进入正题。
其实很简单,但也很麻烦。你要给自己和敌人同时附加两个状态,之后调用公共事件,利用条件的分歧对己方和敌方一一进行判断。当敌人和己方同时满足条件时,属性修改。

缺点:如果我方两人同时对两个敌人用了该技能,不就变成可以额外打敌人了吗?
解决方法:新建多个同名同图标的状态,一一对应。不过工程量貌似太大了吧~~=A=
作者: 疯狂异形    时间: 2011-10-3 11:31
是的,我在设立这个问题的时候有自己独立思考过一段时间。
但是也只找到一点苗头。
使两个某状态仅在两个目标之间生效是一个几乎不可能的项目,正如例1中的共通状态“加速”,可以用状态本身的效果进行加速,但是如何使设定“在面对其他敌人时,该状态失效”生效呢?是不是应该首先判定受影响的某方所指目标是否为另一个受到影响的角色,然后设立:T——不变;F——使该状态消失,结算后再添加回去。嗯……好像不对啊!这些都不是系统本身能够做到的事情,完全无法判定目标啊……

后记:真的是很混乱啊,不仅是文章,更是我的思维,可能是最近生活所致吧……一团糟啊一团糟。
作者: MSQ    时间: 2011-10-3 11:43
疯狂异形 发表于 2011-10-3 11:31
是的,我在设立这个问题的时候有自己独立思考过一段时间。
但是也只找到一点苗头。
使两个某状态仅在两个目 ...

指定敌人时,属性可以修改,但是速度……这个除非是在行动条开始之前就进行修正,而且应该只有我说的那个优于行动条先选目标的战斗模式才可以呀~~就算脚本也无力~~毕竟关乎系统问题。

可以说速度问题与攻击防御不在一个层次上呀~~
作者: galaxys    时间: 2011-10-3 22:09
除非状态本身带有“状态施加者”这个参数,然后你就可以取这个参数来进行判断。貌似这个的工程量会比较大……
作者: 各种压力的猫君    时间: 2011-10-3 22:19
我很诧异这个双认可怎么做到的……
作者: 疯狂异形    时间: 2011-10-4 07:12
认可我方:使用者判定
认可敌方:我的前一个目标




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