Project1

标题: 可以随时调用的 是/否 选择窗口(更新至 1.3) [打印本页]

作者: 洛克人SZ    时间: 2007-12-22 02:27
标题: 可以随时调用的 是/否 选择窗口(更新至 1.3)
在需要向玩家询问 是/否 的时候可以用到的东西。
要显示选项窗口在地图画面或战斗画面中可以用显示对话的选项功能实现,在其他画面中就需要建立一个命令窗口,还要写相关的代码,比较麻烦。这个脚本在只需询问 是/否 两个选项的情况下只用一个简单的判断语句就可以完成,应该比较方便吧。

如果已经有类似的东西就请无视吧……

v 1.3: 在 enghao_lim 大人的提醒下继续精简代码
v 1.2: 除掉了一个BUG
v 1.1: 精简代码


  1. #================================================================
  2. #   可以随时调用的 是/否 选择窗口      by 洛克人SZ
  3. #   用法:                               v 1.3
  4. #     if yes_no("提示信息")
  5. #       选择 是 的情况下
  6. #     else
  7. #       选择 否 的情况下
  8. #     end
  9. #
  10. #   也可以用在事件中的条件分歧里。
  11. #================================================================


  12. def yes_no(info = "请选择:")
  13.   dummy_bitmap = Bitmap.new(608, 32)
  14.   dummy_bitmap.font.size = 22
  15.   strwidth = dummy_bitmap.text_size(info).width
  16.   dummy_bitmap.dispose
  17.   dummy_bitmap = nil
  18.   strwidth = 88 if strwidth < 88
  19.   strwidth = strwidth / 2 + strwidth + 32
  20.   strwidth = 640 if strwidth > 640
  21.   yes_no_window = Window_YesNoCommand.new(info, strwidth)
  22.   yes_no_window.visible = true
  23.   yes_no_window.active = true
  24.   loop do
  25.     Graphics.update
  26.     Input.update
  27.     yes_no_window.update
  28.     if yes_no_window.active != true
  29.       break
  30.     end
  31.   end
  32.   fhxx = yes_no_window.fhxx
  33.   yes_no_window.dispose
  34.   yes_no_window = nil
  35.   return fhxx
  36. end


  37. #==============================================================================
  38. # ■ Window_HorizSelectable
  39. #------------------------------------------------------------------------------
  40. #  拥有光标的移动以及滚动功能的窗口类。 (水平命令窗口专用)
  41. #==============================================================================

  42. class Window_HorizSelectable < Window_Base
  43.   #--------------------------------------------------------------------------
  44.   # ● 定义实例变量
  45.   #--------------------------------------------------------------------------
  46.   attr_reader   :index                    # 光标位置
  47.   attr_reader   :help_window              # 帮助窗口
  48.   attr_reader   :help_windowa             # 帮助窗口a
  49.   #--------------------------------------------------------------------------
  50.   # ● 初始化对像
  51.   #     x      : 窗口的 X 坐标
  52.   #     y      : 窗口的 Y 坐标
  53.   #     width  : 窗口的宽
  54.   #     height : 窗口的高
  55.   #--------------------------------------------------------------------------
  56.   def initialize(x, y, width, height)
  57.     super(x, y, width, height)
  58.     @index = -1
  59.   end
  60.   #--------------------------------------------------------------------------
  61.   # ● 设置光标的位置
  62.   #     index : 新的光标位置
  63.   #--------------------------------------------------------------------------
  64.   def index=(index)
  65.     @index = index
  66.     # 刷新帮助文本 (update_help 定义了继承目标)
  67.     if self.active and @help_window != nil
  68.       update_help
  69.     end
  70.     if self.active and @help_windowa != nil
  71.       update_helpa
  72.     end
  73.     # 刷新光标矩形
  74.     update_cursor_rect
  75.   end
  76.   #--------------------------------------------------------------------------
  77.   # ● 帮助窗口的设置
  78.   #     help_window : 新的帮助窗口
  79.   #--------------------------------------------------------------------------
  80.   def help_window=(help_window)
  81.     @help_window = help_window
  82.     # 刷新帮助文本 (update_help 定义了继承目标)
  83.     if self.active and @help_window != nil
  84.       update_help
  85.     end
  86.   end

  87.   def help_windowa=(help_windowa)
  88.     @help_windowa = help_windowa
  89.     # 刷新帮助文本 (update_help 定义了继承目标)
  90.     if self.active and @help_windowa != nil
  91.       update_helpa
  92.     end
  93.   end
  94.   #--------------------------------------------------------------------------
  95.   # ● 更新光标矩形
  96.   #--------------------------------------------------------------------------
  97.   def update_cursor_rect
  98.     # 光标位置不满 0 的情况下
  99.     if @index < 0
  100.       self.cursor_rect.empty
  101.       return
  102.     end
  103.     # 计算光标的宽度
  104.     cursor_width = self.width / @item_max - 32
  105.     # 计算光标坐标
  106.     x = @index % @item_max * (cursor_width + 32)
  107.     y = @index / @item_max * 32 - self.oy
  108.     # 更新光标矩形
  109.     self.cursor_rect.set(x, y, cursor_width, 32)
  110.   end
  111.   #--------------------------------------------------------------------------
  112.   # ● 刷新画面
  113.   #--------------------------------------------------------------------------
  114.   def update
  115.     super
  116.     # 可以移动光标的情况下
  117.     if self.active and @item_max > 0 and @index >= 0
  118.       # 方向键右被按下的情况下
  119.       if Input.repeat?(Input::RIGHT)
  120.         # 列数为 2 以上并且、光标位置在最后一个项目上的情况下
  121.         if @item_max >= 2 and @index == @item_max - 1 and
  122.           Input.trigger?(Input::RIGHT)
  123.           # 光标返回第一个项目
  124.           $game_system.se_play($data_system.cursor_se)
  125.           @index = 0
  126.         # 列数为 2 以上并且、光标位置在(项目数 - 1)之前的情况下
  127.         elsif @item_max >= 2 and @index < @item_max - 1
  128.           # 光标向右移动
  129.           $game_system.se_play($data_system.cursor_se)
  130.           @index += 1
  131.         end
  132.       end
  133.       # 方向键左被按下的情况下
  134.       if Input.repeat?(Input::LEFT)
  135.         # 列数为 2 以上并且、光标位置在 0 的情况下
  136.         if @item_max >= 2 and @index == 0 and
  137.           Input.trigger?(Input::LEFT)
  138.           # 光标移动到最后一个项目
  139.           $game_system.se_play($data_system.cursor_se)
  140.           @index = @item_max - 1
  141.         # 列数为 2 以上并且、光标位置在 0 之后的情况下
  142.         elsif @item_max >= 2 and @index > 0
  143.           # 光标向左移动
  144.           $game_system.se_play($data_system.cursor_se)
  145.           @index -= 1
  146.         end
  147.       end
  148.     end
  149.     # 刷新帮助文本 (update_help 定义了继承目标)
  150.     if self.active and @help_window != nil
  151.       update_help
  152.     end
  153.     # 刷新帮助文本 (update_help 定义了继承目标)
  154.     if self.active and @help_windowa != nil
  155.       update_helpa
  156.     end
  157.     # 刷新光标矩形
  158.     update_cursor_rect
  159.   end
  160. end



  161. #==============================================================================
  162. # ■ Window_YesNoCommand
  163. #------------------------------------------------------------------------------
  164. #  选择是或否的命令选择行窗口。
  165. #==============================================================================

  166. class Window_YesNoCommand < Window_HorizSelectable
  167.   #--------------------------------------------------------------------------
  168.   # ● 定义实例变量
  169.   #--------------------------------------------------------------------------
  170.   attr_reader   :fhxx
  171.   #--------------------------------------------------------------------------
  172.   # ● 初始化对像
  173.   #     info     : 窗口的提示信息
  174.   #     width    : 窗口的宽度
  175.   #     height   : 窗口的高度
  176.   #--------------------------------------------------------------------------
  177.   def initialize(info = "欢迎", width = 480, height = 96)
  178.     x = 320 - width / 2
  179.     y = 240 - height / 2
  180.     super(x, y, width, height)
  181.     self.visible = false
  182.     self.active = false
  183.     self.opacity = 200
  184.     self.contents = Bitmap.new(width - 32, height - 32)
  185.     @commands = ["是", "否"]
  186.     @item_max = @commands.size
  187.     @woff = (self.width - 32) / 4 - 19
  188.     @fhxx = false
  189.     refresh(info)
  190.     self.index = 0
  191.     self.z = 10000
  192.   end
  193.   #--------------------------------------------------------------------------
  194.   # ● 刷新
  195.   #--------------------------------------------------------------------------
  196.   def refresh(info)
  197.     self.contents.clear
  198.     self.contents.font.size = 22
  199.     self.contents.font.color = system_color
  200.     self.contents.draw_text(0, 0, self.width - 32, 32, info, 1)
  201.     for i in 0...@item_max
  202.       draw_item(i, normal_color)
  203.     end
  204.   end
  205.   #--------------------------------------------------------------------------
  206.   # ● 描绘项目
  207.   #     index : 项目编号
  208.   #--------------------------------------------------------------------------
  209.   def draw_item(index, color)
  210.     self.contents.font.color = color
  211.     x = self.width / @item_max * index + @woff
  212.     off = self.width / @item_max - 32
  213.     self.contents.draw_text(x, 32, 32, 32, @commands[index])
  214.   end
  215.   #--------------------------------------------------------------------------
  216.   # ● 项目无效化
  217.   #     index : 项目编号
  218.   #--------------------------------------------------------------------------
  219.   def disable_item(index)
  220.     draw_item(index, disabled_color)
  221.   end
  222.   #--------------------------------------------------------------------------
  223.   # ● 更新光标矩形
  224.   #--------------------------------------------------------------------------
  225.   def update_cursor_rect
  226.     # 光标位置不满 0 的情况下
  227.     if @index < 0
  228.       self.cursor_rect.empty
  229.       return
  230.     end
  231.     # 计算光标的宽度
  232.     cursor_width = self.width / @item_max - 32
  233.     # 计算光标坐标
  234.     x = @index % @item_max * (cursor_width + 32)
  235.     y = 32
  236.     # 更新光标矩形
  237.     self.cursor_rect.set(x, y, cursor_width, 32)
  238.   end
  239.   #--------------------------------------------------------------------------
  240.   # ● 刷新画面
  241.   #--------------------------------------------------------------------------
  242.   def update
  243.     super
  244.     # 按下取消键的情况下
  245.     if Input.trigger?(Input::B)
  246.       # 演奏确定 SE
  247.       $game_system.se_play($data_system.decision_se)
  248.       @fhxx = false
  249.       self.visible = false
  250.       self.active = false
  251.       return
  252.     end
  253.     # 按下确定键的情况下
  254.     if Input.trigger?(Input::C)
  255.       # 演奏确定 SE
  256.       $game_system.se_play($data_system.decision_se)
  257.       # 命令窗口的光标位置分支
  258.       case self.index
  259.       when 0  # 是
  260.         @fhxx = true
  261.         self.visible = false
  262.         self.active = false
  263.       when 1  # 否
  264.         @fhxx = false
  265.         self.visible = false
  266.         self.active = false
  267.       end
  268.       return
  269.     end
  270.   end
  271. end
复制代码

作者: 洛克人SZ    时间: 2007-12-22 02:27
标题: 可以随时调用的 是/否 选择窗口(更新至 1.3)
在需要向玩家询问 是/否 的时候可以用到的东西。
要显示选项窗口在地图画面或战斗画面中可以用显示对话的选项功能实现,在其他画面中就需要建立一个命令窗口,还要写相关的代码,比较麻烦。这个脚本在只需询问 是/否 两个选项的情况下只用一个简单的判断语句就可以完成,应该比较方便吧。

如果已经有类似的东西就请无视吧……

v 1.3: 在 enghao_lim 大人的提醒下继续精简代码
v 1.2: 除掉了一个BUG
v 1.1: 精简代码


  1. #================================================================
  2. #   可以随时调用的 是/否 选择窗口      by 洛克人SZ
  3. #   用法:                               v 1.3
  4. #     if yes_no("提示信息")
  5. #       选择 是 的情况下
  6. #     else
  7. #       选择 否 的情况下
  8. #     end
  9. #
  10. #   也可以用在事件中的条件分歧里。
  11. #================================================================


  12. def yes_no(info = "请选择:")
  13.   dummy_bitmap = Bitmap.new(608, 32)
  14.   dummy_bitmap.font.size = 22
  15.   strwidth = dummy_bitmap.text_size(info).width
  16.   dummy_bitmap.dispose
  17.   dummy_bitmap = nil
  18.   strwidth = 88 if strwidth < 88
  19.   strwidth = strwidth / 2 + strwidth + 32
  20.   strwidth = 640 if strwidth > 640
  21.   yes_no_window = Window_YesNoCommand.new(info, strwidth)
  22.   yes_no_window.visible = true
  23.   yes_no_window.active = true
  24.   loop do
  25.     Graphics.update
  26.     Input.update
  27.     yes_no_window.update
  28.     if yes_no_window.active != true
  29.       break
  30.     end
  31.   end
  32.   fhxx = yes_no_window.fhxx
  33.   yes_no_window.dispose
  34.   yes_no_window = nil
  35.   return fhxx
  36. end


  37. #==============================================================================
  38. # ■ Window_HorizSelectable
  39. #------------------------------------------------------------------------------
  40. #  拥有光标的移动以及滚动功能的窗口类。 (水平命令窗口专用)
  41. #==============================================================================

  42. class Window_HorizSelectable < Window_Base
  43.   #--------------------------------------------------------------------------
  44.   # ● 定义实例变量
  45.   #--------------------------------------------------------------------------
  46.   attr_reader   :index                    # 光标位置
  47.   attr_reader   :help_window              # 帮助窗口
  48.   attr_reader   :help_windowa             # 帮助窗口a
  49.   #--------------------------------------------------------------------------
  50.   # ● 初始化对像
  51.   #     x      : 窗口的 X 坐标
  52.   #     y      : 窗口的 Y 坐标
  53.   #     width  : 窗口的宽
  54.   #     height : 窗口的高
  55.   #--------------------------------------------------------------------------
  56.   def initialize(x, y, width, height)
  57.     super(x, y, width, height)
  58.     @index = -1
  59.   end
  60.   #--------------------------------------------------------------------------
  61.   # ● 设置光标的位置
  62.   #     index : 新的光标位置
  63.   #--------------------------------------------------------------------------
  64.   def index=(index)
  65.     @index = index
  66.     # 刷新帮助文本 (update_help 定义了继承目标)
  67.     if self.active and @help_window != nil
  68.       update_help
  69.     end
  70.     if self.active and @help_windowa != nil
  71.       update_helpa
  72.     end
  73.     # 刷新光标矩形
  74.     update_cursor_rect
  75.   end
  76.   #--------------------------------------------------------------------------
  77.   # ● 帮助窗口的设置
  78.   #     help_window : 新的帮助窗口
  79.   #--------------------------------------------------------------------------
  80.   def help_window=(help_window)
  81.     @help_window = help_window
  82.     # 刷新帮助文本 (update_help 定义了继承目标)
  83.     if self.active and @help_window != nil
  84.       update_help
  85.     end
  86.   end

  87.   def help_windowa=(help_windowa)
  88.     @help_windowa = help_windowa
  89.     # 刷新帮助文本 (update_help 定义了继承目标)
  90.     if self.active and @help_windowa != nil
  91.       update_helpa
  92.     end
  93.   end
  94.   #--------------------------------------------------------------------------
  95.   # ● 更新光标矩形
  96.   #--------------------------------------------------------------------------
  97.   def update_cursor_rect
  98.     # 光标位置不满 0 的情况下
  99.     if @index < 0
  100.       self.cursor_rect.empty
  101.       return
  102.     end
  103.     # 计算光标的宽度
  104.     cursor_width = self.width / @item_max - 32
  105.     # 计算光标坐标
  106.     x = @index % @item_max * (cursor_width + 32)
  107.     y = @index / @item_max * 32 - self.oy
  108.     # 更新光标矩形
  109.     self.cursor_rect.set(x, y, cursor_width, 32)
  110.   end
  111.   #--------------------------------------------------------------------------
  112.   # ● 刷新画面
  113.   #--------------------------------------------------------------------------
  114.   def update
  115.     super
  116.     # 可以移动光标的情况下
  117.     if self.active and @item_max > 0 and @index >= 0
  118.       # 方向键右被按下的情况下
  119.       if Input.repeat?(Input::RIGHT)
  120.         # 列数为 2 以上并且、光标位置在最后一个项目上的情况下
  121.         if @item_max >= 2 and @index == @item_max - 1 and
  122.           Input.trigger?(Input::RIGHT)
  123.           # 光标返回第一个项目
  124.           $game_system.se_play($data_system.cursor_se)
  125.           @index = 0
  126.         # 列数为 2 以上并且、光标位置在(项目数 - 1)之前的情况下
  127.         elsif @item_max >= 2 and @index < @item_max - 1
  128.           # 光标向右移动
  129.           $game_system.se_play($data_system.cursor_se)
  130.           @index += 1
  131.         end
  132.       end
  133.       # 方向键左被按下的情况下
  134.       if Input.repeat?(Input::LEFT)
  135.         # 列数为 2 以上并且、光标位置在 0 的情况下
  136.         if @item_max >= 2 and @index == 0 and
  137.           Input.trigger?(Input::LEFT)
  138.           # 光标移动到最后一个项目
  139.           $game_system.se_play($data_system.cursor_se)
  140.           @index = @item_max - 1
  141.         # 列数为 2 以上并且、光标位置在 0 之后的情况下
  142.         elsif @item_max >= 2 and @index > 0
  143.           # 光标向左移动
  144.           $game_system.se_play($data_system.cursor_se)
  145.           @index -= 1
  146.         end
  147.       end
  148.     end
  149.     # 刷新帮助文本 (update_help 定义了继承目标)
  150.     if self.active and @help_window != nil
  151.       update_help
  152.     end
  153.     # 刷新帮助文本 (update_help 定义了继承目标)
  154.     if self.active and @help_windowa != nil
  155.       update_helpa
  156.     end
  157.     # 刷新光标矩形
  158.     update_cursor_rect
  159.   end
  160. end



  161. #==============================================================================
  162. # ■ Window_YesNoCommand
  163. #------------------------------------------------------------------------------
  164. #  选择是或否的命令选择行窗口。
  165. #==============================================================================

  166. class Window_YesNoCommand < Window_HorizSelectable
  167.   #--------------------------------------------------------------------------
  168.   # ● 定义实例变量
  169.   #--------------------------------------------------------------------------
  170.   attr_reader   :fhxx
  171.   #--------------------------------------------------------------------------
  172.   # ● 初始化对像
  173.   #     info     : 窗口的提示信息
  174.   #     width    : 窗口的宽度
  175.   #     height   : 窗口的高度
  176.   #--------------------------------------------------------------------------
  177.   def initialize(info = "欢迎", width = 480, height = 96)
  178.     x = 320 - width / 2
  179.     y = 240 - height / 2
  180.     super(x, y, width, height)
  181.     self.visible = false
  182.     self.active = false
  183.     self.opacity = 200
  184.     self.contents = Bitmap.new(width - 32, height - 32)
  185.     @commands = ["是", "否"]
  186.     @item_max = @commands.size
  187.     @woff = (self.width - 32) / 4 - 19
  188.     @fhxx = false
  189.     refresh(info)
  190.     self.index = 0
  191.     self.z = 10000
  192.   end
  193.   #--------------------------------------------------------------------------
  194.   # ● 刷新
  195.   #--------------------------------------------------------------------------
  196.   def refresh(info)
  197.     self.contents.clear
  198.     self.contents.font.size = 22
  199.     self.contents.font.color = system_color
  200.     self.contents.draw_text(0, 0, self.width - 32, 32, info, 1)
  201.     for i in 0...@item_max
  202.       draw_item(i, normal_color)
  203.     end
  204.   end
  205.   #--------------------------------------------------------------------------
  206.   # ● 描绘项目
  207.   #     index : 项目编号
  208.   #--------------------------------------------------------------------------
  209.   def draw_item(index, color)
  210.     self.contents.font.color = color
  211.     x = self.width / @item_max * index + @woff
  212.     off = self.width / @item_max - 32
  213.     self.contents.draw_text(x, 32, 32, 32, @commands[index])
  214.   end
  215.   #--------------------------------------------------------------------------
  216.   # ● 项目无效化
  217.   #     index : 项目编号
  218.   #--------------------------------------------------------------------------
  219.   def disable_item(index)
  220.     draw_item(index, disabled_color)
  221.   end
  222.   #--------------------------------------------------------------------------
  223.   # ● 更新光标矩形
  224.   #--------------------------------------------------------------------------
  225.   def update_cursor_rect
  226.     # 光标位置不满 0 的情况下
  227.     if @index < 0
  228.       self.cursor_rect.empty
  229.       return
  230.     end
  231.     # 计算光标的宽度
  232.     cursor_width = self.width / @item_max - 32
  233.     # 计算光标坐标
  234.     x = @index % @item_max * (cursor_width + 32)
  235.     y = 32
  236.     # 更新光标矩形
  237.     self.cursor_rect.set(x, y, cursor_width, 32)
  238.   end
  239.   #--------------------------------------------------------------------------
  240.   # ● 刷新画面
  241.   #--------------------------------------------------------------------------
  242.   def update
  243.     super
  244.     # 按下取消键的情况下
  245.     if Input.trigger?(Input::B)
  246.       # 演奏确定 SE
  247.       $game_system.se_play($data_system.decision_se)
  248.       @fhxx = false
  249.       self.visible = false
  250.       self.active = false
  251.       return
  252.     end
  253.     # 按下确定键的情况下
  254.     if Input.trigger?(Input::C)
  255.       # 演奏确定 SE
  256.       $game_system.se_play($data_system.decision_se)
  257.       # 命令窗口的光标位置分支
  258.       case self.index
  259.       when 0  # 是
  260.         @fhxx = true
  261.         self.visible = false
  262.         self.active = false
  263.       when 1  # 否
  264.         @fhxx = false
  265.         self.visible = false
  266.         self.active = false
  267.       end
  268.       return
  269.     end
  270.   end
  271. end
复制代码

作者: Eclair    时间: 2007-12-22 05:25
提示: 作者被禁止或删除 内容自动屏蔽
作者: Cross    时间: 2007-12-22 05:30
提示: 作者被禁止或删除 内容自动屏蔽
作者: enghao_lim    时间: 2007-12-22 05:45
很好,很强大。
继续努力。{/hx}
作者: 洛克人SZ    时间: 2007-12-22 18:50
以下引用Eclair于2007-12-21 21:25:13的发言:

有一些地方似乎可以优化下~
Selectable不需要全部复制滴~
做成类的继承吧~


class Window_***** < Window_Selectable


然后在里面重新设置和原来的Selectable不同的函数(def)就可以了,会省去很多很多的空间呢。


使用的这个“Window_HorizSelectable”类实际上并不是专为这个窗口写的,所有的水平命令窗口都会用到,要做其他的水平选项窗口时就不用重复劳动了。
还有,“Window_HorizSelectable”的“updata”里边用的是光标的水平无限循环,无法与
“Window_Selectable”的“updata”内容兼容,直接继承会造成光标无法移动的情况。
不过,还是将“Window_HorizSelectable”的部分水平命令窗口用不到的内容精简掉了。
(请看顶楼)

最后,感谢 Eclair 大人的提醒与 enghao_lim 大人的鼓励。
作者: 风雪优游    时间: 2007-12-27 04:54
……怎么使用?
作者: enghao_lim    时间: 2007-12-27 05:35
楼主,@column_max 改成2后,可以使脚本更简洁。
作者: 洛克人SZ    时间: 2007-12-28 23:13
以下引用风雪优游于2007-12-26 20:54:46的发言:

……怎么使用?

使用方法应该在脚本里已经说的很清楚了吧……
1 楼也有使用方法……

以下引用enghao_lim于2007-12-26 21:35:12的发言:

楼主,@column_max 改成2后,可以使脚本更简洁。


的确如此,不过不修改这个主要是考虑到其他的水平选项窗口。
作者: enghao_lim    时间: 2007-12-28 23:15
以下引用洛克人SZ于2007-12-28 15:13:03的发言:
的确如此,不过不修改这个主要是考虑到其他的水平选项窗口。

那在def 定义时,顺便连 Column 也算了,这样就可以做到完全自动化计算,代码更加精简。
作者: 洛克人SZ    时间: 2007-12-28 23:40
以下引用enghao_lim于2007-12-28 15:15:41的发言:
那在def 定义时,顺便连 Column 也算了,这样就可以做到完全自动化计算,代码更加精简。


其实水平选项窗口中 @column_max 已经没有用处了,因为不用考虑多行的问题,而单行时直接设置 @item_max 就可以了。已经在 enghao_lim 大人的提醒下修改了。(顶楼)
作者: 洛克人SZ    时间: 2008-1-2 21:49
自己稍微顶一下………………
作者: tiaozao999    时间: 2008-1-2 22:07
不错,收下了。
作者: Eclair    时间: 2008-1-28 19:23
提示: 作者被禁止或删除 内容自动屏蔽
作者: cZooCz    时间: 2008-1-30 01:52
说下····默认RMXP中不是有选项的功能了吗····你这个有虾米有······说明下用法···




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