Project1

标题: 如何设置一种特殊的状态(正文详说) [打印本页]

作者: 莎莎利亚夏特    时间: 2013-3-15 23:00
标题: 如何设置一种特殊的状态(正文详说)
本帖最后由 莎莎利亚夏特 于 2013-3-15 23:02 编辑

如何弄出释放一种技能使自身获得“普通攻击和特定技能暂时性能给攻击目标附加状态和属性伤害” 的状态?

举例:我发动“枪械重组——破魔弹【技能A】”,这时候我获得“装填破魔弹”【状态A】,然后这个状态能使我“普通攻击和特定技能暂时性能给攻击目标附加状态和属性伤害”【附加光属性伤害(属性伤害A)和沉默效果(状态B)】

注:这个状态解除后,“普通攻击和特定技能暂时性能给攻击目标附加状态和属性伤害效果也移除”【即普通攻击和特定技能不再给攻击目标附加。】
作者: clear仔    时间: 2013-3-17 15:33
GAME_BATTLER3里,应用技能效果里,装态变化里加上
if skill_id == #你要的技能ID
user.state_add (#给使用者加的状态ID)
elsif user.state?(#状态ID)and skill_id == #特定技能有某状态后可以附加的状态的技能ID(晕了)
self.state_add(#给对向加的状态ID)
end

再转到属性修正里,在前面加一句
if user.state? (角色状态ID) and skill_id == #技能ID
skill.element_id == #属性ID
end
我真是晕了,话说你要那么多效果干嘛........
因为普通攻击默认是不附加状态和属性的,所以我写不出来
此脚本没测试过,再加上本人为新人,有冲突也不要怪我
作者: 莎莎利亚夏特    时间: 2013-3-21 12:23
本帖最后由 莎莎利亚夏特 于 2013-3-21 12:25 编辑

抱歉,在某个RPG游戏看见过,不知道VX可不可以。话说楼上的那个句子我已经用了很久了,就是用那个语句写了半天老在冲突,做不出这种效果,所以我决定不走状态路线,走计算路线了。
作者: 瑕妹子    时间: 2013-3-21 13:27
本帖最后由 瑕妹子 于 2013-3-21 13:31 编辑

LZ试试这样吧,LS的写法似乎存在几个小问题
  1. if obj.is_a?(RPG::Skill) and obj.id == x  #在那一段脚本中是无法直接识别skill的,这一句是判断使用的技能是不是“枪械重组——破魔弹”,x就是枪械重组——破魔弹的ID
  2. user.add_state(x)   #使用者附加那个状态。
  3. end
复制代码
这样就完成第一步了。
第二个效果分为两个部分,一个是普通攻击,一个是技能攻击。
普通攻击附加效果的实现方法:
  1. if attacker.state?(x)   #判断攻击者是否具有某个状态
  2.   damage +=yy   #不知道LZ光属性伤害是怎么定义的,所以就笼统地用yy表示
  3.   self.add_state(x)  #受攻击的一方被附加沉默状态。
  4. end
复制代码
这样普通攻击的效果就出来了,技能的大同小异,
RUBY 代码复制
  1. if [x,y],include?(obj.id) and obj.is_a?(RPG:Skill) #x,y是LZ说得特定的技能,数目可以随意,x,y是技能的ID
  2.   if user.state?(x)
  3.     damage += yy
  4.     self.add_state(x)
  5.   end
  6. end

代码段的插入位置:
在Game_Battle中找到
  1. def make_attack_damage_value(attacker)
复制代码
  1. damage /=100
复制代码
下插入普通攻击效果那一段,
而其他的有关技能的则在
  1. def make_obj_damage_value(user, obj)
复制代码
中的
  1. damage /=100
复制代码
下插入就可以了。记住不要漏掉了某个"end"
一个"if"一个"end"哦。
作者: 莎莎利亚夏特    时间: 2013-3-21 21:14
瑕妹子 发表于 2013-3-21 13:27
LZ试试这样吧,LS的写法似乎存在几个小问题这样就完成第一步了。
第二个效果分为两个部分,一个是普通攻击 ...

谢谢,表示这个断头台属于JP技能但只能放一次,居然能多次释放,我蛋疼了,那个脚本是某个帖子引用的,结果就这么蛋疼了。

JP槽用光了,不能再次释放,我想做这种机制的技能,但是遵循这个脚本的基础上我修改了下,但是还是不起效,我真的是脚本菜鸟到极点了……虽然没冲突,但也不起效果。不知道怎么修复它,JAES VX2.1脚本见原帖http://rpg.blue/thread-207419-1-1.html

我不知道该在哪里加入JP技能的变量名=0,然后reture false。不清楚哪个是判定……貌似原脚本就有这个问题。解决了这个,基本上脚本问题就全搞定了,地图绘制是个巨大的工程,小屋做得太多了……
作者: 莎莎利亚夏特    时间: 2013-3-24 11:48
本帖最后由 莎莎利亚夏特 于 2013-3-24 13:27 编辑
瑕妹子 发表于 2013-3-21 13:27
LZ试试这样吧,LS的写法似乎存在几个小问题这样就完成第一步了。
第二个效果分为两个部分,一个是普通攻击 ...


YY是指代什么还是就是YY这两个字母?我去,,慢慢来,我先去修复下HP消耗脚本跟JP技能的冲突。




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