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。
#===============================================================================
class Game_Party
#----------------------------------------------------------------------------
def weapon_property(weapon_id, var_id)
weapon = $data_weapons[weapon_id]
$game_variables[var_id] += weapon.atk > 0 ? 1:0
$game_variables[var_id] += weapon.pdef > 0 ? 1:0
$game_variables[var_id] += weapon.mdef > 0 ? 1:0
$game_variables[var_id] += weapon.str_plus > 0 ? 1:0
$game_variables[var_id] += weapon.dex_plus > 0 ? 1:0
$game_variables[var_id] += weapon.agi_plus > 0 ? 1:0
$game_variables[var_id] += weapon.int_plus > 0 ? 1:0
$game_variables[var_id] += weapon.element_set != nil ?
weapon.element_set.size : 0
$game_variables[var_id] += weapon.plus_state_set != nil ?
weapon.plus_state_set.size : 0
$game_variables[var_id] += weapon.minus_state_set != nil ?
weapon.minus_state_set.size : 0
return $game_variables[var_id]
end
#----------------------------------------------------------------------------
def armor_property(armor_id, var_id)
armor = $data_armors[armor_id]
$game_variables[var_id] += armor.pdef > 0 ? 1:0
$game_variables[var_id] += armor.mdef > 0 ? 1:0
$game_variables[var_id] += armor.str_plus > 0 ? 1:0
$game_variables[var_id] += armor.dex_plus > 0 ? 1:0
$game_variables[var_id] += armor.agi_plus > 0 ? 1:0
$game_variables[var_id] += armor.int_plus > 0 ? 1:0
$game_variables[var_id] += armor.auto_state_id > 0 ? 1:0
$game_variables[var_id] += armor.guard_element_set != nil ?
armor.guard_element_set.size : 0
$game_variables[var_id] += armor.guard_state_set != nil ?
armor.guard_state_set.size : 0
return $game_variables[var_id]
end
end
#===============================================================================
复制代码
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1