赞 | 406 |
VIP | 0 |
好人卡 | 11 |
积分 | 390 |
经验 | 242285 |
最后登录 | 2024-11-26 |
在线时间 | 5719 小时 |
Lv5.捕梦者
- 梦石
- 0
- 星屑
- 39021
- 在线时间
- 5719 小时
- 注册时间
- 2006-11-10
- 帖子
- 6619
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
咱会用的随机写法就是rand 但是这个有个缺陷, 就是当它在循环调用的情况下, 随机出来的数值非常接近....
如图, 咱模仿火纹的升级系统, 升级时候的属性点根据成长度随机增加
然而, 尽管成长度不同, 只要一起升级, 那加点情况就几乎一样..... 多的时候一样多,少的时候一样少, 有区别的也就是几个成长度相差较大的属性........
def up(actor)
@f = []
a = actor.maxhp成长 / 100
b = actor.maxhp成长 % 100 > rand(20) + rand(80) ? 1:0
@f.push(a+b)
a = actor.atk成长 / 100
b = actor.atk成长 % 100 > rand(30)+rand(70) ? 1:0
@f.push(a+b)
a = actor.maxsp成长 / 100
b = actor.maxsp成长 % 100 > rand(70)+rand(30) ? 1:0
@f.push(a+b)
a = actor.pdef成长 / 100
b = actor.pdef成长 % 100 > rand(45)+ rand(55) ? 1:0
@f.push(a+b)
a = actor.eva成长 / 100
b = actor.eva成长 % 100 > rand(65)+rand(35) ? 1:0
@f.push(a+b)
a = actor.agi成长 / 100
b = actor.agi成长 % 100 > rand(10)+rand(90) ? 1:0
@f.push(a+b)
a = actor.str成长 / 100
b = actor.str成长 % 100 > rand(60)+rand(40) ? 1:0
@f.push(a+b)
a = actor.mdef成长 / 100
b = actor.mdef成长 % 100 > rand(75)+rand(25) ? 1:0
@f.push(a+b)
a = actor.luk成长 / 100
b = actor.luk成长 % 100 > rand(15)+rand(85) ? 1:0
@f.push(a+b)
a = actor.int成长 / 100
b = actor.int成长 % 100 > rand(50)+rand(50) ? 1:0
@f.push(a+b)
a = actor.dex成长 / 100
b = actor.dex成长 % 100 > rand(65)+rand(35) ? 1:0
@f.push(a+b)
@f.push(0)
end
这个是我写的加点方法, 为了加大随机数 把 rand(100)拆成两份一起rand 但是效果并不大
有大大传授下更优化的随机数写法么? |
|