设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 57|回复: 7
打印 上一主题 下一主题

[有事请教] 关于经验获取显示的问题

[复制链接]

Lv3.寻梦者

梦石
0
星屑
1822
在线时间
104 小时
注册时间
2017-9-5
帖子
181
跳转到指定楼层
1
发表于 6 天前 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
原本游戏默认战斗后的经验显示是不计算角色经验获取率的,例如史莱姆经验是3,角色经验获取率是500%,实际获得经验应该是15,但战斗后显示仍旧获得经验3,就出现了违和感
我自己改了改,但怎么都觉得不对劲,变成全队获得经验总数了,我只想要主角实际获得的经验与显示经验值对上
def self.display_exp
    if $game_troop.exp_total > 0
      text = sprintf(Vocab::ObtainExp, ($game_troop.exp_total * $game_party.members.inject(0) { |r, a| r += a.exr }).to_i))
      $game_message.add('\.' + text)
    end
  end

Lv5.捕梦者

梦石
0
星屑
36286
在线时间
10744 小时
注册时间
2009-3-15
帖子
4829
2
发表于 5 天前 | 只看该作者
本帖最后由 soulsaga 于 2025-4-14 07:40 编辑

?????
你想实现什么效果呀

点评

就是无论特殊能力里的经验获取率怎么变动,战斗结束后,左上方消息显示经验值,都与主角实际获得的经验值相同  发表于 5 天前
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
36286
在线时间
10744 小时
注册时间
2009-3-15
帖子
4829
3
发表于 5 天前 | 只看该作者
本帖最后由 soulsaga 于 2025-4-14 09:18 编辑

获得经验10
加成2人555%+120%
显示获得经验76

RUBY 代码复制
  1. text = sprintf(Vocab::ObtainExp, ($game_troop.exp_total*$game_party.battle_members.inject(0) { |r, a| r += a.exr }).to_i)

点评

这还是全队经验,战斗结束后显示主角+所有队友一共获得的经验值,我想要的是只显示主角的  发表于 5 天前
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1822
在线时间
104 小时
注册时间
2017-9-5
帖子
181
4
 楼主| 发表于 5 天前 | 只看该作者
soulsaga 发表于 2025-4-14 08:54
获得经验10
加成2人555%+120%
显示获得经验76

啊,大佬,不用麻烦了,已经成功了
是我犯傻了,不需要去费力确定谁是主角,只要设定为计算首位队员的exr就行了

点评

抱歉,一开始脑子没转过来,麻烦大佬帮忙了  发表于 5 天前
原来你是只要一个人呀..我想也是..根本不用那么麻烦呀  发表于 5 天前
回复 支持 反对

使用道具 举报

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

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2025-4-19 17:51

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表