Project1

标题: 請問選項可以給予時間限制? [打印本页]

作者: ninesound    时间: 2013-2-2 23:37
标题: 請問選項可以給予時間限制?
請問有辦法設定選項時
給予時間限制嗎?

例如選項有AB兩個選項
三秒後要是沒選 自動跳B選項

請問如何做到
作者: Sion    时间: 2013-2-3 13:29
本帖最后由 Sion 于 2013-2-3 14:08 编辑
  1. # 选择窗口计时选择说明:
  2. # 开启对应开关(默认为1),在指定帧数(默认60)内未作出选择,则自动选择光标所在选项

  3. class Window_ChoiceList
  4.   alias choice_window_initialize initialize
  5.   def initialize(message_window)
  6.     choice_window_initialize(message_window)
  7.     @fvck_time = 0
  8.   end
  9.   alias choice_window_call_ok_handler call_ok_handler
  10.   def call_ok_handler
  11.     @fvck_time = 0
  12.     choice_window_call_ok_handler
  13.   end
  14.   alias choice_window_call_cancel_handler call_cancel_handler
  15.   def call_cancel_handler
  16.     @fvck_time = 0
  17.     choice_window_call_cancel_handler
  18.   end
  19.   def call_time_out_handler
  20.     @fvck_time += 1
  21.     return if @fvck_time < 120  #设置强制选择等待帧数
  22.     @fvck_time = 0
  23.     Sound.play_ok
  24.     Input.update
  25.     deactivate
  26.     $game_message.choice_proc.call(index) #你也可以在这里修改index为0、1、2……设置强制选择的选项
  27.     close                              #0代表选项1,1代表选项2以此类推
  28.   end
  29. end

  30. class Scene_Map
  31.   alias choice_window_update update
  32.   def update
  33.     choice_window_update
  34.     if $game_switches[1] #设置开启选择计时的公共开关
  35.       if @message_window.choice_window.active
  36.         @message_window.choice_window.call_time_out_handler
  37.       end
  38.     end
  39.   end
  40. end

  41. class Window_Message; attr_reader :choice_window; end
复制代码
不得不吐槽一下,代码里用@,@到对应的ID代码就出错了,**……
作者: ninesound    时间: 2013-2-3 15:53
Sion 发表于 2013-2-3 13:29
不得不吐槽一下,代码里用@,@到对应的ID代码就出错了,**……

先謝謝分享腳本

不過這個要怎麼使用呀?




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1