Project1

标题: 如何用脚本设置状态对自身的触发率? [打印本页]

作者: 77777741    时间: 2011-9-19 22:17
提示: 作者被禁止或删除 内容自动屏蔽
作者: 各种压力的猫君    时间: 2011-9-20 00:48
本帖最后由 各种压力的猫君 于 2011-9-20 01:47 编辑
很多技能不能共同使用一个公共事件

脚本不懂 = = 改起来应该很麻烦……
所以咱来解决不能共同使用一个公共事件好了。

【纯事件】
方案①:技能调用不同的公共事件,里面写上变量操作然后调用公用的公共事件;
方案②:技能附加不同的状态,调用同一个公共事件,公共时间里面判断状态。

【事件脚本(原脚本微量修改)】
Scene_Battle 3 约172-175 行(代码框里的6-9行):
  1.   #--------------------------------------------------------------------------
  2.   # ● 刷新画面 (角色命令回合 : 选择特技)
  3.   #--------------------------------------------------------------------------
  4.   def update_phase3_skill_select
  5.     ………………
  6.     # 按下 C 键的情况下
  7.     if Input.trigger?(Input::C)
  8.       # 获取特技选择窗口现在选择的特技的数据
  9.       @skill = @skill_window.skill
  10.       ………………
复制代码
Scene_Battle 4 约327-328行(代码框里的5-6行):
  1.   #--------------------------------------------------------------------------
  2.   # ● 生成特技行动结果
  3.   #--------------------------------------------------------------------------
  4.   def make_skill_action_result
  5.     # 获取特技
  6.     @skill = $data_skills[@active_battler.current_action.skill_id]
  7.     ………………
复制代码
这两个脚本中分别找到:
  1. @skill = @skill_window.skill
复制代码
  1. @skill = $data_skills[@active_battler.current_action.skill_id]
复制代码
每个下面加上一行
  1. $skill_id = @skill.id
复制代码
[至此脚本修改完毕]
技能调用同一个公共事件,公共事件里面照下面的方法判断:





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