Project1

标题: 怎么计算武器所附带的所有属性的个数 [打印本页]

作者: 木许许    时间: 2013-4-7 21:11
标题: 怎么计算武器所附带的所有属性的个数
本帖最后由 木许许 于 2013-4-22 00:21 编辑

计算某件武器一共有多少属性,然后把个数代入一个变量
作者: 芯☆淡茹水    时间: 2013-4-7 22:35
是属性项目数还是属性值?
作者: 木许许    时间: 2013-4-8 10:19
芯☆淡茹水 发表于 2013-4-7 22:35
是属性项目数还是属性值?

是项目数
作者: 小和尚    时间: 2013-4-8 12:41
我有一个事件的办法..但是很麻烦.. 首先武器的属性在数据库中应该是已经定好的.. 所以= = 通过变量一个一个的计.. 然后需要时直接调用..如果游戏过程中属性数量有变化 那就在变化完在相应的变量后加上变化值
作者: 芯☆淡茹水    时间: 2013-4-8 20:48
应LZ要求写了下面这段脚本。

说明:假如是某件武器,它的增加人物力量的属性大于 0,(也就是该项存在,有效)。指定的变量会加 1 。如果该武器的附加状态的属性存在的话,指定变量
          会加  该武器附加状态的个数  。 其他的  攻击力,增加四项属性,属性攻击,,,,等,都一样。武器的属性项目越多,变量值越大。
          防具同上。

使用方法:复制下面脚本,插入到 main 前。
                 要代入变量某武器或防具的属性项目数,在事件 ——》脚本,输入:1,武器:$game_party.weapon_property(weapon_id, var_id)
                                                                                                                           2,防具:$game_party.armor_property(armor_id, var_id)


                  括号里,逗号前面写入想要代入项目数的武器/防具ID;逗号后写入代入的变量ID。
  1. #===============================================================================
  2. class Game_Party
  3.   #----------------------------------------------------------------------------
  4.   def weapon_property(weapon_id, var_id)
  5.     weapon = $data_weapons[weapon_id]
  6.     $game_variables[var_id] += weapon.atk      > 0 ? 1:0
  7.     $game_variables[var_id] += weapon.pdef     > 0 ? 1:0
  8.     $game_variables[var_id] += weapon.mdef     > 0 ? 1:0
  9.     $game_variables[var_id] += weapon.str_plus > 0 ? 1:0
  10.     $game_variables[var_id] += weapon.dex_plus > 0 ? 1:0
  11.     $game_variables[var_id] += weapon.agi_plus > 0 ? 1:0
  12.     $game_variables[var_id] += weapon.int_plus > 0 ? 1:0
  13.     $game_variables[var_id] += weapon.element_set != nil ?
  14.                                weapon.element_set.size : 0
  15.     $game_variables[var_id] += weapon.plus_state_set != nil ?
  16.                                weapon.plus_state_set.size : 0
  17.     $game_variables[var_id] += weapon.minus_state_set != nil ?
  18.                                weapon.minus_state_set.size : 0
  19.     return $game_variables[var_id]
  20.   end
  21.   #----------------------------------------------------------------------------
  22.   def armor_property(armor_id, var_id)
  23.     armor = $data_armors[armor_id]
  24.     $game_variables[var_id] += armor.pdef     > 0 ? 1:0
  25.     $game_variables[var_id] += armor.mdef     > 0 ? 1:0
  26.     $game_variables[var_id] += armor.str_plus > 0 ? 1:0
  27.     $game_variables[var_id] += armor.dex_plus > 0 ? 1:0
  28.     $game_variables[var_id] += armor.agi_plus > 0 ? 1:0
  29.     $game_variables[var_id] += armor.int_plus > 0 ? 1:0
  30.     $game_variables[var_id] += armor.auto_state_id > 0 ? 1:0
  31.     $game_variables[var_id] += armor.guard_element_set != nil ?
  32.                                armor.guard_element_set.size : 0
  33.     $game_variables[var_id] += armor.guard_state_set != nil ?
  34.                                armor.guard_state_set.size : 0
  35.     return $game_variables[var_id]
  36.   end
  37. end
  38. #===============================================================================
复制代码





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