Project1

标题: 本以为解决了,还是那个受伤系统 [打印本页]

作者: yanglibin0409    时间: 2011-11-2 12:37
标题: 本以为解决了,还是那个受伤系统
本帖最后由 yanglibin0409 于 2011-11-2 12:38 编辑

基本思路,就是在行走中或是战斗中 我方任何一个角色(全体)的HP小于35% 则为轻伤, 几大能力相应缩水。我用的是状态法 轻伤 状态, 比如都 缩水到70%并 命中率下降。

    当任何一个角色 HP下雨15%时,同样状态法 重伤状态 ,能力缩水到30%这样。


问题1: 如果我用的是  公共事件 ,用 $game_variables[1] = 100 * $game_party.members[0].hp / $game_party.members[0].maxhp  这个指令来判断,第一角色的hp,但只能限于1个人,如果先设定了members[1]、members[2].这样,如果游戏中
members[1]、members[2].还没加入,就会出现错误 “undefined method 'hp' for  nil :NilClass”.

能不能用某些方法 或者是脚本 直接自动生成 当 "任何一个人"hp <35% 时(或者在菜单出现的角色) , 各能力相应降低,或者直接对满足条件的个体触发 某个状态,如 “轻伤”?


问题2:
问题1中的解决方法,必须是全局有效的,战斗中也要有效。
dsu_plus_rewardpost_czw
作者: Rion幻音    时间: 2011-11-2 15:01
  1. for i in 1..$game_party.members.size
  2.   aid = i - 1
  3.   ahp = 100 * $game_party.members[aid].hp / $game_party.members[aid].maxhp
  4.   if ahp <= 35
  5.     if  ahp <= 15
  6.       $game_party.members[aid].add_state(15%hp时的状态ID)
  7.     else
  8.       $game_party.members[aid].add_state(35%hp时的状态ID)
  9.     end
  10.   end
  11. end
复制代码





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