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

Project1

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

[已经解决] 大佬帮忙看下代码 为啥能力值变化后的数值不显示

[复制链接]

Lv2.观梦者

梦石
0
星屑
927
在线时间
152 小时
注册时间
2018-3-16
帖子
70
跳转到指定楼层
1
发表于 2022-11-27 20:34:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
class Window_EquipStatus < Window_Base#装备界面 状态栏
  def draw_item(dx, dy, param_id)
    draw_param_name(dx + 4, dy, param_id) #描绘能力值
    draw_current_param(dx + 64, dy, param_id) if @actor #描绘 能力值 当前数值
    draw_right_arrow(dx + 110, dy)   #描绘 →
    draw_new_param(dx + 132, dy, param_id) if @temp_actor#描绘变化后的能力值
    reset_font_settings
  end
  def draw_param_name(dx, dy, param_id)
    contents.font.size = YEA::LIMIT::EQUIP_FONT
    change_color(system_color)
    draw_text(dx, dy, contents.width, line_height, Vocab::param(param_id))
  end
  def draw_current_param(dx, dy, param_id)
    change_color(normal_color)
    draw_text(0, dy, dx+48, line_height, @actor.param(param_id).group, 2)
    reset_font_settings
  end
  def draw_new_param(dx, dy, param_id)
    contents.font.size = YEA::LIMIT::EQUIP_FONT
    new_value = @temp_actor.param(param_id)
  change_color(param_change_color(new_value - @actor.param(param_id)))
    draw_text(0, dy, contents.width-4, line_height, new_value.group, 2)
    reset_font_settings
  end
end

Lv6.析梦学徒

老鹰

梦石
40
星屑
34740
在线时间
6740 小时
注册时间
2012-5-26
帖子
3259

极短24评委极短23参与极短22参与极短21评委老司机慢点开短篇十吟唱者组别冠军开拓者剧作品鉴家

2
发表于 2022-11-27 21:11:19 | 只看该作者
如果是一行一个属性,那没看到问题,draw_text(0, dy, contents.width-4, line_height, new_value.group, 2) 和默认的 draw_text(x, y, 32, line_height, new_value, 2) 是相同的
确保 数字的group 方法返回的是数字?

有没有别的地方覆盖了 draw_new_param

有没有成功生成 @temp_actor
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
927
在线时间
152 小时
注册时间
2018-3-16
帖子
70
3
 楼主| 发表于 2022-11-27 21:36:12 | 只看该作者
百里_飞柳 发表于 2022-11-27 21:11
如果是一行一个属性,那没看到问题,draw_text(0, dy, contents.width-4, line_height, new_value.group, 2 ...

知道了,是因为把 SCENE_EQUIP 的 CREATE_HELP_WINDOW 这行屏蔽了 不过这是为什么呀?本来我是想把装备和物品界面的 帮助窗口屏蔽掉,屏蔽掉装备界面的属性变化就不显示了。
回复 支持 反对

使用道具 举报

Lv6.析梦学徒

老鹰

梦石
40
星屑
34740
在线时间
6740 小时
注册时间
2012-5-26
帖子
3259

极短24评委极短23参与极短22参与极短21评委老司机慢点开短篇十吟唱者组别冠军开拓者剧作品鉴家

4
发表于 2022-11-27 21:54:20 | 只看该作者
因为 状态窗口的绑定临时角色 @status_window.set_temp_actor(temp_actor) 是在 Window_EquipItem 的update_help里
如果没有帮助窗口,物品选择窗口就不会调用 update_help 了,也就导致状态窗口没有 @actor_temp,也就没有装备后的数值了
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
927
在线时间
152 小时
注册时间
2018-3-16
帖子
70
5
 楼主| 发表于 2022-11-27 22:11:35 | 只看该作者
百里_飞柳 发表于 2022-11-27 21:54
因为 状态窗口的绑定临时角色 @status_window.set_temp_actor(temp_actor) 是在 Window_EquipItem 的update ...

soga,按照大佬的点拨,我在SCENE_equip里重新定义下了 help_window = help_window.new,并设置透明为0 完美解决,既显示了变化值,帮助窗口也看不到了。
大佬!强!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-24 00:24

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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