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

Project1

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

[已经过期] 怎么样让制作的选项拥有翻页效果(已经过期)

[复制链接]

Lv4.逐梦者

梦石
0
星屑
12157
在线时间
4435 小时
注册时间
2014-4-11
帖子
5955

开拓者

跳转到指定楼层
1
发表于 2016-9-23 13:07:22 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式

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

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

x
本帖最后由 yang1zhi 于 2016-9-24 13:54 编辑

只是翻页的话,还是有方法制作。
不过我是想要默认的那种翻页效果。
就是窗口下面还有内容,会显示个三角形,按下去会向上滚动。
按上会向上滚动。

有人说用OY加减。可是这样移上去后,下面的内容并没有显示出来。而且按上的时候OY会回零。



算了,不要了。发现我写的伪的效果已经看不出是伪的了。

Lv1.梦旅人

梦石
0
星屑
50
在线时间
168 小时
注册时间
2007-7-26
帖子
477
3
发表于 2016-9-23 15:14:45 | 只看该作者
本帖最后由 cmmd1 于 2016-9-23 15:17 编辑

RUBY 代码复制
  1. #==============================================================================
  2. # ■ 多选项脚本
  3. #------------------------------------------------------------------------------
  4. #    v 1.0 by enghao_lim
  5. #    理论性无限突破四个选项的脚本
  6. #------------------------------------------------------------------------------
  7. #
  8. # 使用方法:
  9. #
  10. #  1. 在事件里使用【脚本】:多选项(选项数组,取消时执行的选项)
  11. #     
  12. #         选项数组例子:@c = ["选项一","选项二"..."选项100"]
  13. #         所有选项必须是文字,即被 "" 符包括。
  14. #        
  15. #         取消时执行的选项:代表 ESC (也就是B键) 按下时执行的选项
  16. #         不填写 或 为0 时,代表选项不可被取消。
  17. #         此值不可大过选项的数量,否者会出错。
  18. #        
  19. #  2. 使用条件分歧:选项场合(选项编号)来执行选中选项后执行的事件。
  20. #     具体请看范例。
  21. #
  22. #  3. for 脚本党:
  23. #     获取 被选中的选项 的 index :$game_temp.choice_result
  24. #        
  25. #  4. 范例里已经有各种 多选项 的利用方法,自个儿都觉得多选项也挺好用的。
  26. #  
  27. #  5. 如有神马 bug ,请通知我,谢谢,感谢阅读。
  28. #
  29. #==============================================================================
  30.  
  31. #==============================================================================
  32. # ■ Game_Temp
  33. #------------------------------------------------------------------------------
  34. #  临时资料记录器。
  35. #==============================================================================
  36. class Game_Temp
  37.   #--------------------------------------------------------------------------
  38.   # ● 读写器
  39.   #--------------------------------------------------------------------------
  40.   attr_accessor :choice_result
  41.   attr_accessor :choice_last
  42.   #--------------------------------------------------------------------------
  43.   # ● 初始化
  44.   #--------------------------------------------------------------------------
  45.   alias initialize0 initialize
  46.   def initialize
  47.     initialize0
  48.     @choice_result = -1
  49.     @choice_last = -1
  50.   end
  51. end
  52.  
  53. #==============================================================================
  54. # ■ Interpreter
  55. #------------------------------------------------------------------------------
  56. #  事件处理器。
  57. #==============================================================================
  58. class Interpreter
  59.   #--------------------------------------------------------------------------
  60.   # ● 多选项
  61.   #--------------------------------------------------------------------------
  62.   def 多选项(选项, 取消 = 0)
  63.     取消 = 取消 == "取消" ? 选项.size + 1 : 取消
  64.     MultiChoice(选项,取消)
  65.   end
  66.   #--------------------------------------------------------------------------
  67.   # ● 获取选择的选项
  68.   #--------------------------------------------------------------------------
  69.   def 选项场合(n)
  70.     if n == "取消"
  71.       return ($game_temp.choice_last + 1) == $game_temp.choice_result
  72.     end
  73.     return $game_temp.choice_result == (n - 1)
  74.   end
  75.   #--------------------------------------------------------------------------
  76.   # ● 多选项执行
  77.   #--------------------------------------------------------------------------
  78.   def MultiChoice(choice,cancel = 4)
  79.     # 设置信息结束后待机和返回调用标志
  80.     @message_waiting = true
  81.     $game_temp.message_proc = Proc.new { @message_waiting = false }
  82.     # 设置选项设置
  83.     $game_temp.choice_max = choice.size
  84.     $game_temp.choice_last = choice.size - 1
  85.     $game_temp.choice_cancel_type = cancel
  86.     $game_temp.choice_start = 0
  87.     $game_temp.message_text = ""
  88.     $game_temp.choice_proc = Proc.new { |n| $game_temp.choice_result = n }
  89.     # 设置选择选项
  90.     for c in choice
  91.       $game_temp.message_text += c + "\n"
  92.     end
  93.   end
  94. end
  95.  
  96. #==============================================================================
  97. # ■ Window_Message
  98. #------------------------------------------------------------------------------
  99. #  对话框。
  100. #==============================================================================
  101. class Window_Message
  102.   #--------------------------------------------------------------------------
  103.   # ● 重置窗口
  104.   #--------------------------------------------------------------------------
  105.   alias reset_window_0 reset_window
  106.   def reset_window
  107.     # 默认重置法
  108.     reset_window_0
  109.     # 还原 ox 和 oy
  110.     self.ox = self.oy = 0
  111.     # 重新生成 bitmap
  112.     if $game_temp.choice_max > 4
  113.       self.contents.dispose
  114.       self.contents = Bitmap.new(self.width-32,$game_temp.choice_max*32)
  115.     else
  116.       self.contents.dispose
  117.       self.contents = Bitmap.new(self.width-32,self.height-32)
  118.     end
  119.   end
  120.   #--------------------------------------------------------------------------
  121.   # ● 刷新光标矩形
  122.   #--------------------------------------------------------------------------
  123.   def update_cursor_rect
  124.     if @index >= 0
  125.       if $game_temp.choice_start == 0
  126.         super
  127.         rect = self.cursor_rect
  128.         self.cursor_rect.set(8,rect.y,@cursor_width,rect.height)
  129.       else
  130.         n = $game_temp.choice_start + @index
  131.         self.cursor_rect.set(8, n * 32, @cursor_width, 32)
  132.       end
  133.     else
  134.       self.cursor_rect.empty
  135.     end
  136.   end
  137. end


回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
280
在线时间
1374 小时
注册时间
2005-10-16
帖子
5113

贵宾

2
发表于 2016-9-23 14:47:30 | 只看该作者
是要类似windows的滚动条吗?

点评

我现在做了个伪的,就是每动一下就刷新窗口重新排  发表于 2016-9-23 19:01
类似是类似,不过一个是键盘,一个是鼠标的。  发表于 2016-9-23 19:00
我只个搬答案的
叔叔我已经当爹了~
婚后闪人了……
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-27 04:23

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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