Project1

标题: 如何在战斗中对敌方打出三种不同类型的伤害 [打印本页]

作者: qq1049323397    时间: 2016-4-4 12:08
标题: 如何在战斗中对敌方打出三种不同类型的伤害
是这样的,我想制造一个拳师,他可以在打敌人时释放出拳,脚以及冲撞3中效果,这些都是包括在一个普通攻击内的,就是说你点攻击可以打敌人会随机有三个不同的效果,目前我是说做出了三个武器,除了特性和动画不同其他都一样,然后这三个武器我给力三个一样的人物,我比作1号2号3号,接着我用技能来触发公共事件,随机变量指定,比如说变量为1时1号2号人物离队,3号进队,他带着的是拳的武器,所以打出来拳的特性,可问题是我应该如何让这个公共事件在战斗中一直存在,并且能打出随机特性,谢谢大家了(´゚Д゚`)
作者: 紫苍焰    时间: 2016-4-5 08:11
本帖最后由 紫苍焰 于 2016-4-5 09:03 编辑

……
先用一个可以把攻击换成除了1号技能外其他技能的脚本。
然后复制1号技能攻击粘贴到别处,接着把这个复制的攻击给拳师让他的攻击默认是这个。
这个复制的攻击改一改伤害(或者干脆改成附加状态),添加一个公共事件,另外做三个技能,动画不同描述不同效果也不同。
先取一个1-3的随机数,然后条件分歧,如果1则1号技能,如果2则2号技能,3则三号技能。强制战斗指令,角色选拳师,目标选上一个目标(就是修改过的攻击技能的目标)。
大致上就是这个思路。
以下是范例。脚本还需要你自己去找。
Project1.zip (1.52 MB, 下载次数: 68)




以上。

作者: howhow1314    时间: 2016-4-5 10:58
本帖最后由 howhow1314 于 2016-4-5 11:43 编辑

RUBY 代码复制
  1. module Pyjiaoyi
  2.   Pigu = 1                                      #拳師職業id
  3.   Bangbang = [11,12,13]               #拳,腳,沖撞技能id
  4. end
  5.  
  6. class Game_Action
  7.   alias pyjiaoyi05042016_set_attack set_attack
  8.   def set_attack
  9.     return set_skill(Pyjiaoyi::Bangbang.sample) if subject.class == $data_classes[Pyjiaoyi::Pigu]
  10.     pyjiaoyi05042016_set_attack
  11.   end
  12.   alias pyjiaoyi05042016_attack? attack?
  13.   def attack?
  14.     return Pyjiaoyi::Bangbang.map {|id| $data_skills[id]}.include?(item) if  subject.class == $data_classes[Pyjiaoyi::Pigu]
  15.     pyjiaoyi05042016_attack?
  16.   end
  17. end
  18.  
  19. class Scene_Battle
  20.   def invoke_counter_attack(target, item)
  21.     @log_window.display_counter(target, item)
  22.     attack_skill = $data_skills[target.attack_skill_id]
  23.     attack_skill = $data_skills[Pyjiaoyi::Bangbang.sample] if target.class == $data_classes[Pyjiaoyi::Pigu]
  24.     @subject.item_apply(target, attack_skill)
  25.     refresh_status
  26.     @log_window.display_action_results(@subject, attack_skill)
  27.   end
  28. end


話說Game_Battler的attack_apply那邊也跟普通攻擊有關而我沒動到…因為全局搜索根本沒有用到attack_apply的地方…有誰知道是幹嘛用的





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