查看: 1523|回复: 3

[已经解决] 怎样判断Max exp?

[复制链接]
梦石
0
星屑
50
在线时间
69 小时
注册时间
2010-6-27
回帖
231
发表于 2012-1-16 00:58:13 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
怎样判断Max exp? 我想设置经验的百分比。

(?????)

梦石
0
星屑
872
在线时间
1327 小时
注册时间
2011-7-18
回帖
3036

贵宾

发表于 2012-1-16 01:19:18 | 显示全部楼层
本帖最后由 各种压力的猫君 于 2012-1-16 01:21 编辑

没有max exp这一说……

当前exp
$game_actors[编号].exp_s
下一等级的exp
$game_actors[编号].next_exp_s
距下一等级的exp
$game_actors[编号].next_rest_exp_s

$game_actors[编号]中的编号指数据库中设定的角色编号,
可以替换为$game_party.actors[n]表示当前队列中的第n号角色(n由0起)

注意这三个的返回值都是字符串(string)
要计算的话记得在后面加 .to_i 转化为整数型

(当前exp也可以直接用 $game_actors[编号].exp 获取)

点评

原来如此,RM有这定义的呀……  发表于 2012-1-16 07:25
我想使用的是事件判断  发表于 2012-1-16 02:00
回复

使用道具 举报

梦石
0
星屑
50
在线时间
69 小时
注册时间
2010-6-27
回帖
231
 楼主| 发表于 2012-1-16 01:59:26 | 显示全部楼层
我想用事件判断经验百分比 比如变量[1] 为经验百分比

点评

$game_actors[编号].next_exp_s/$game_actors[编号].next_rest_exp_s 不就可以了,事件里可以使用脚本  发表于 2012-1-16 02:17
回复

使用道具 举报

梦石
0
星屑
50
在线时间
28 小时
注册时间
2011-1-14
回帖
250
发表于 2012-1-16 07:12:10 | 显示全部楼层
本帖最后由 赤夜玄魔 于 2012-1-16 07:13 编辑
  1. class JingYan
  2.   def initialize(id)
  3.     lsa = Array.new(101)
  4.     actor = $data_actors[id]
  5.     lsa[1] = 0
  6.     lsb = 2.4 + actor.exp_inflation / 100.0
  7.     for i in 2..100
  8.       if i > actor.final_level
  9.       lsa[i] = 0
  10.       else
  11.       n = actor.exp_basis * ((i + 3) ** lsb) / (5 ** lsb)
  12.       lsa[i] = lsa[i-1] + Integer(n)
  13.       end
  14.     end
  15.     a = $game_actors[id]
  16.     lsc = a.level
  17.     lsd = a.exp
  18.     lsd = (lsd * 1.0)/ (lsa[lsc+1] * 1.0) *100
  19.     $game_variables[50] = lsd.to_i
  20.   end
  21. end
复制代码
前几天刚回答这问题……
脚本 MAIN前面插入脚本,输入以上脚本……

然后事件中调用:
JingYan.new(1)#里面的1是角色的编号,也就是ID。

之后 游戏中 的第 50 号变量就会成为你要的经验百分比了。。

点评

呃……我想说Game_Actor第94行有个定义……  发表于 2012-1-16 07:17
话说,熟人变少了,还是马甲变多了?
我将乘风而去,万丈深渊。新生命阻止我的冲动……好吧,我再活一年,但是……这是最后的一年……
……强烈支持国产游戏……

遵冥冥之意,然果有奇效!
我好像玩够了,该走了……

强烈反对国产脑残动画片在电视台播出……
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部