查看: 14383|回复: 8

[已经解决] 求按键跳过对话或者加速对话的方法

[复制链接]
梦石
0
星屑
50
在线时间
75 小时
注册时间
2011-6-14
回帖
15
发表于 2013-4-3 10:47:12 | 显示全部楼层 |阅读模式

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

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

×
本帖最后由 shellingford57 于 2013-4-3 21:23 编辑

本来想做全按键——判断当按下某个键时跳转标签到某处。但是对话中人家根本不理我的按键判定啊悲愤TAT
也考虑过用脚本但是不会代入那个/>的效果……
实在萎了……
梦石
0
星屑
50
在线时间
687 小时
注册时间
2012-10-29
回帖
1526
发表于 2013-4-3 11:01:22 | 显示全部楼层
也许可以试着在 Window_Massage 脚本中 def update_show_fast 这个地方做手脚,加上一行:
  1. 要做的动作 if Input.trigger?(:X)
复制代码
这个既然可以按 :C 快进,那应该也可以按 :X 做指定动作。
修改劇本中,仔細審查原來的劇情大綱,覺得有點不太滿意,嘗試編寫不同主角不同主線的劇情,希望能寫得出來。
回复

使用道具 举报

梦石
1
星屑
23236
在线时间
9564 小时
注册时间
2012-6-19
回帖
7018

开拓者短篇九导演组冠军

发表于 2013-4-3 14:38:52 | 显示全部楼层
本帖最后由 喵呜喵5 于 2013-4-5 12:39 编辑

[pre lang="ruby" line="1"]=begin

===============================================================================
  快进对话 By喵呜喵5
===============================================================================
【说明】
相当简单的脚本,按住按键快速显示对话
第一次写脚本,可能有BUG,咱不负责修正……
修改了默认Window_Message中的
[update_show_fast][wait_for_one_character][input_pause]
因此会与修改了相同内容的其他脚本不兼容

=end

#==============================================================================
#  设定部分
#==============================================================================

module M5faMes
  BUT = Input::CTRL  #这里设置对话快进的按键,默认为CTRL
end

#==============================================================================
#  设定结束
#==============================================================================

#==============================================================================
#  脚本部分
#==============================================================================

class Window_Message < Window_Base
  
  def update_show_fast
    @show_fast = true if Input.trigger?(:C)||Input.press?(M5faMes::BUT)
  end
  def wait_for_one_character
    update_show_fast
    Fiber.yield unless @show_fast || @line_show_fast||Input.press?(M5faMes::BUT)
  end
  def input_pause
    self.pause = true
    wait(10)
    Fiber.yield until Input.trigger?(:B) || Input.trigger?(:C)||Input.press?(M5faMes::BUT)
    Input.update
    self.pause = false
  end
  
end

#==============================================================================
#  脚本结束
#==============================================================================[/pre]
回复

使用道具 举报

梦石
0
星屑
50
在线时间
75 小时
注册时间
2011-6-14
回帖
15
 楼主| 发表于 2013-4-3 18:32:12 | 显示全部楼层
喵呜喵5 发表于 2013-4-3 14:38
=begin
===============================================================================
  快进对话 By ...

非常感谢!后面那个脚本确实实现了加速对话,但是想要切换到下一个对话还是要按下空格才行,我再仔细研究研究,多谢楼上两位了!
回复

使用道具 举报

梦石
1
星屑
23236
在线时间
9564 小时
注册时间
2012-6-19
回帖
7018

开拓者短篇九导演组冠军

发表于 2013-4-3 19:25:21 来自手机 | 显示全部楼层
shellingford57 发表于 2013-4-3 18:32
非常感谢!后面那个脚本确实实现了加速对话,但是想要切换到下一个对话还是要按下空格才行,我再仔细研究 ...

嗯?不能切到下一句对话?测试的时候正常的啊

是[按住]Ctrl键不是[按下]Ctrl键哟
回复

使用道具 举报

梦石
0
星屑
50
在线时间
75 小时
注册时间
2011-6-14
回帖
15
 楼主| 发表于 2013-4-3 21:22:34 | 显示全部楼层
喵呜喵5 发表于 2013-4-3 19:25
嗯?不能切到下一句对话?测试的时候正常的啊

是[按住]Ctrl键不是[按下]Ctrl键哟 ...

是一直按住的。所以我在看是不是我有其他什么和对话框有关的脚本发生了冲突……
回复

使用道具 举报

梦石
1
星屑
23236
在线时间
9564 小时
注册时间
2012-6-19
回帖
7018

开拓者短篇九导演组冠军

发表于 2013-4-3 21:33:37 来自手机 | 显示全部楼层
shellingford57 发表于 2013-4-3 21:22
是一直按住的。所以我在看是不是我有其他什么和对话框有关的脚本发生了冲突…… ...

切换对话的方法在“def input_pause”中,请搜索这个关键字
比较简单粗暴的方法是直接把本脚本放在main以上其他脚本以下……
回复

使用道具 举报

梦石
0
星屑
50
在线时间
75 小时
注册时间
2011-6-14
回帖
15
 楼主| 发表于 2013-4-4 10:33:00 | 显示全部楼层
喵呜喵5 发表于 2013-4-3 21:33
切换对话的方法在“def input_pause”中,请搜索这个关键字
比较简单粗暴的方法是直接把本脚本放在main以 ...

我一般新插脚本都是MAIN上面其他脚本下面的。。。


def input_pause的话,windowsmessage里有一段

#--------------------------------------------------------------------------
  # ● 处理输入等待
  #--------------------------------------------------------------------------
  def input_pause
    self.pause = true
    wait(10)
    Fiber.yield until Input.trigger?(:B) || Input.trigger?(:C)
    Input.update
    self.pause = false
  end

你的脚本里有一段
def input_pause
    self.pause = true
    wait(10)
    Fiber.yield until Input.trigger?(:B) || Input.trigger?(:C)||Input.press?(M5faMes::BUT)
    Input.update
    self.pause = false
  end
end

我就是没看懂那个M5faMes::BUT是啥TAT
回复

使用道具 举报

梦石
0
星屑
50
在线时间
687 小时
注册时间
2012-10-29
回帖
1526
发表于 2013-4-4 12:13:14 | 显示全部楼层
shellingford57 发表于 2013-4-4 10:33
我一般新插脚本都是MAIN上面其他脚本下面的。。。

[pre lang="ruby" line="1"]#==============================================================================
#  设定部分
#==============================================================================
module M5faMes
  BUT = Input::CTRL
  #这里设置对话快进的按键,默认为CTRL
end[/pre]

没注意到这个?
修改劇本中,仔細審查原來的劇情大綱,覺得有點不太滿意,嘗試編寫不同主角不同主線的劇情,希望能寫得出來。
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部