查看: 3018|回复: 1

[已经解决] 如何在战斗事件内操控帮助窗口?

[复制链接]
梦石
0
星屑
3670
在线时间
357 小时
注册时间
2018-9-4
回帖
261
发表于 2018-11-25 14:39:50 | 显示全部楼层 |阅读模式

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

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

×
本帖最后由 Mono_kyrin 于 2018-11-25 15:23 编辑

在Scene_Battle内有如下定义,这个帮助窗口主要是为了显示正在使用的技能名字或物品名字。
最初的想法是:一些战斗内只执行一次的效果就做成只显示一个名字实际则是一个战斗事件的“伪技能”效果,免得占用公共事件槽位。
[pre lang="ruby"]$help_window = Window_Help.new
$help_window.back_opacity = 160
$help_window.visible = false[/pre]
游戏内部运行显示都是正常的。

但是如果我在战斗事件里这么写的话:
[pre lang="ruby"]脚本:$help_window.set_text("自定义文本",1)
# 这里是要执行的事件
脚本:$help_window.visible = false[/pre]
没有任何报错,但是执行完事件以后就会直接卡死,请问是什么情况

附上set_text方法的定义:
[pre lang="ruby"]
#--------------------------------------------------------------------------
# ● 设置文本
#     text  : 窗口显示的字符串
#     align : 对齐方式 (0..左对齐、1..中间对齐、2..右对齐)
#--------------------------------------------------------------------------
  def set_text(text, align = 0)
    # 如果文本和对齐方式的至少一方与上次的不同
    if text != @text or align != @align
      # 再描绘文本
      self.contents.clear
      self.contents.font.size = 14
      self.contents.font.color = normal_color
      self.contents.draw_text1(4, -10, self.width - 40, 32, text, align)
      @text = text
      @align = align
      @actor = nil
    end
    self.visible = true
  end[/pre]

另外Fuki v6也会卡死,这是断了我的后路啊
[pre lang="ruby"]显示文章:自定义文本
# 这里是要执行的事件
[/pre]
梦石
0
星屑
9862
在线时间
580 小时
注册时间
2017-9-28
回帖
203
发表于 2018-11-26 09:09:11 | 显示全部楼层
在 visible = false 那行下面多打一句 true 或者注释
  1. # 这里是要执行的事件
  2. $help_window.visible = false
  3. # 随便打一行注释
复制代码

这是 RGSS1 的一个 BUG,参考图书馆。

评分

参与人数 1星屑 +30 收起 理由
guoxiaomi + 30 认可答案

查看全部评分

喵喵喵
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部