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

Project1

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

[已经解决] 使用脚本显示文字,怎么在一行显示完后再次执行

[复制链接]

Lv3.寻梦者

梦石
0
星屑
1237
在线时间
163 小时
注册时间
2019-10-4
帖子
217
跳转到指定楼层
1
发表于 2023-2-11 22:53:55 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
$game_temp.message_text = "你想要的文字"
$game_temp.message_text = "我不想要的文字"
使用事件指令,脚本框执行之后,第一行会被第二行文字,覆盖,直接显示"我不想要的文字"。第一行显示不出来。
我想要的效果是,显示了第一行文字,然后在,显示第二行文字。

Lv4.逐梦者

梦石
3
星屑
7095
在线时间
589 小时
注册时间
2019-9-15
帖子
113

R考场第七期金奖

2
发表于 2023-2-12 03:54:50 | 只看该作者
本帖最后由 Cupidk爱呗茶 于 2023-2-12 13:15 编辑

如果是在事件脚本中可以用
RUBY 代码复制
  1. 脚本1
  2. $game_temp.message_text = "你想要的文字"
  3. @message_waiting = true
  4. $game_temp.message_proc = Proc.new { @message_waiting = false }
  5. 脚本2
  6. $game_temp.message_text = "你想要的文字2"

这也是RMXP默认系统留下的用法  (ps 记得分成两条 每条事件指令都会更新阻塞 写在一起赋值会被覆盖)
大体含义为@message_waiting为true的时候默认系统会无限等待用户输入 使得让我们后面的代码延后执行 Proc.new用来修改用户输入完成后@message_waiting的数值 用来判断是否可以结束阻塞状态

不是事件中执行的话因为没有自带的解释器阻塞 直接赋值代码写在一起无论如何都会被覆盖  所以就需要实现我们自己的阻塞命令 原理和事件中的执行也算是差不多的
RUBY 代码复制
  1. $game_temp.message_text = "你想要的文字"
  2. switch = true
  3. $game_temp.message_proc = Proc.new { switch = false }
  4. while(switch) do Graphics.update ; Input.update ; $scene.update end
  5. $game_temp.message_text = "你想要的文字2"

最后使用时可以进行简单的包装
RUBY 代码复制
  1. # 作用于事件
  2. class Interpreter
  3.   def _message(msg) # _message("你想要的文字")
  4.     @message_waiting = true
  5.     $game_temp.message_text = msg
  6.     $game_temp.message_proc = Proc.new { @message_waiting = false }
  7.   end  
  8. end  
  9.  
  10. # 作用于非事件全局使用 当前场景必须拥有Window_Message.new
  11. class Game_Temp  
  12.   def message_show(msg) #$game_temp.message_show("你想要的文字")
  13.     @message_text = msg ; switch = true
  14.     @message_proc = Proc.new { switch = false }
  15.     while(switch) do Graphics.update ; Input.update ; $scene.update end
  16.   end  
  17. end

事件中

非事件中

评分

参与人数 3星屑 +100 +3 收起 理由
RyanBern + 100 + 1 认可答案
契约师Vi + 1 认可答案
陈大帅帅帅哥 + 1 精品文章

查看全部评分

********
回复 支持 2 反对 0

使用道具 举报

Lv5.捕梦者 (版主)

梦石
1
星屑
23963
在线时间
3338 小时
注册时间
2011-7-8
帖子
3925

开拓者

3
发表于 2023-2-12 10:21:15 | 只看该作者
本帖最后由 guoxiaomi 于 2023-2-12 10:25 编辑

建议用文字加强脚本来解决问题
熟悉rgss和ruby,xp区版主~
正在填坑:《膜拜组传奇》讲述膜拜组和学霸们的故事。
已上steam:与TXBD合作的Reformers《变革者》
* 战斗调用公共事件 *
* RGSOS 网络脚本 *
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-4-30 03:19

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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