Project1
标题:
脚本内在哪设定了回避率、命中率和暴击率
[打印本页]
作者:
ROMB板
时间:
2012-6-24 20:06
标题:
脚本内在哪设定了回避率、命中率和暴击率
本帖最后由 Luciffer 于 2012-6-28 09:09 编辑
还有暴击率
在哪更改
如果不同的人物拥有不同回避和命中又怎么改 dsu_plus_rewardpost_czw
作者:
铅笔描绘的思念
时间:
2012-6-24 20:55
本帖最后由 铅笔描绘的思念 于 2012-6-24 21:05 编辑
在Game_Actor中def cri def eva def hit 就是了。。
比如说会心一击率的话。。
#--------------------------------------------------------------------------
# ● 获取会心一击率
#--------------------------------------------------------------------------
def cri
n = 4 # 初始值4
n += 4 if actor.critical_bonus#如果角色频发暴击勾了话+4
for weapon in weapons.compact
n += 4 if weapon.critical_bonus#如果武器频发暴击勾了话+4
end
return n #返回n值为cri
end
复制代码
就像这样
#--------------------------------------------------------------------------
# ● 获取会心一击率
#--------------------------------------------------------------------------
def cri
n = 4 # 初始值4
n += 4 if actor.critical_bonus#如果角色频发暴击勾了话+4
for weapon in weapons.compact
n += 4 if weapon.critical_bonus#如果武器频发暴击勾了话+4
end
n += 4 if actor.id == 2 #2号角色再加4
n += actor.name.split(/#/)[1].to_i if actor.name.split(/#/)[1].to_i != nil
#这样是在角色名称后加 #n 获取n这个数 在加n。。。不过这样需要再在Window_Base draw_actor_name改一下
return n #返回n值为cri
end
复制代码
作者:
yychchhh
时间:
2012-6-24 21:55
就是在数据库中设置,跟脚本没关系。
数据库----人物
作者:
a364774426
时间:
2012-6-24 22:16
def hit
#if two_swords_style
# n1 = weapons[0] == nil ? 95 : weapons[0].hit
# n2 = weapons[1] == nil ? 95 : weapons[1].hit
# n = [n1, n2].min
#else
# n = weapons[0] == nil ? 95 : weapons[0].hit
#end
n= 80+agi*0.025
if n > 85 #agi = 200
n=(agi*0.025-5)/0.025*0.01+85 #n=90 agi=700
end
if n>90
n= (agi-700)*0.005+90
end
if n>100
n=100 #agi = 2700
end
return n
end
#--------------------------------------------------------------------------
# ● 获取闪躲率
#--------------------------------------------------------------------------
def eva
n = agi*0.01
if n>10
n= (agi - 1000)*0.008 + 10
end
if n>30 #agi>3500
n=(agi - 3500)*0.005 + 30
end
if n>40 #agi>5500
n=(agi - 5500)*0.004 + 40
end
if n>50 #agi>8000
n=(agi - 8000)*0.002 + 50
end
if n>70
n=(agi - 18000) * 0.001 + 70
end
if n>100
n= 100
end
for item in armors.compact do n += item.eva end
return n
end
复制代码
如上在GAME_ACTOR中修改定义,要不同的角色具有不同的命中率和回避率,加一个分歧即可
if @actor_id == 1
n = XXXXXX
end
if @actor_id == 2
n = YYYYY
end
return n
复制代码
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1