| 赞 | 72 |
| VIP | |
| 好人卡 | |
| 积分 | 23 |
| 经验 | |
| 最后登录 | 2022-3-9 |
| 在线时间 | 4033 小时 |
…あたしは天
- 梦石
- 0
- 星屑
- 2308
- 在线时间
- 4033 小时
- 注册时间
- 2010-10-4
- 回帖
- 10548
 
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有账号?注册会员
×
本帖最后由 taroxd 于 2015-2-9 15:50 编辑
[pre lang="ruby" line="1"]
#----------------------------------------------------------------------------
# ● 快进对话
#----------------------------------------------------------------------------
module Taroxd::FastMessage
KEY = :CTRL # 按此键快进对话
ENABLED = $TEST # true: 启用; $TEST: 仅测试模式; false: 不启用
SPEED = 3 # 文字快进速度。可以为小数,但不能小于 1。
@counter = 0
# 是否在输出一个字符后等待。show_fast: 是否快进
def self.wait?(show_fast)
!show_fast && !Input.press?(KEY) || (@counter += 1) % SPEED < 1
end
# 已经进入等待输入的情况下,是否继续等待输入
def self.keep_pause?
[:B, :C, KEY].none? { |k| Input.trigger?(k) }
end
# 尚未进入等待输入的情况下,是否跳过等待输入
def self.skip_pause?
Input.press?(KEY)
end
end
class Window_Message < Window_Base
FastMessage = Taroxd::FastMessage
def input_pause
return if FastMessage.skip_pause?
self.pause = true
wait(10)
Fiber.yield while FastMessage.keep_pause?
Input.update
self.pause = false
end
def wait_for_one_character
update_show_fast
Fiber.yield if FastMessage.wait?(@show_fast || @line_show_fast)
end
end if Taroxd::FastMessage::ENABLED
[/pre]
|
|