查看: 1724|回复: 3

[已经解决] 怎么创建一个图册窗口

[复制链接]
梦石
0
星屑
1094
在线时间
14 小时
注册时间
2017-3-12
回帖
0
发表于 2017-3-13 15:34:43 | 显示全部楼层 |阅读模式

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

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

×
如何在开始游戏的界面里创建一个画册窗口

点评

【警告】版规A-8 弃帖/提问后不管  发表于 2017-3-23 13:53
梦石
0
星屑
644
在线时间
830 小时
注册时间
2016-7-24
回帖
644

开拓者

发表于 2017-3-13 19:13:57 | 显示全部楼层
本帖最后由 QQ蚊子湯 于 2017-3-13 19:16 编辑

要在標題畫面增加功能的意思嗎!

首先來看看 Window_TitleCommand 這個窗口類吧
htrshjytjyjjd.jpg

緊接著看一下製作窗口指令的方法
make_command_list 這個方法是本類的父類Window_Command中被初始化的
窗口指令在這裡被添加

[pre lang="ruby"]  def make_command_list
    add_command(Vocab::new_game, :new_game)
    add_command(Vocab::continue, :continue, continue_enabled)
    add_command("畫冊", :abcde)
    add_command(Vocab::shutdown, :shutdown)
  end[/pre]

add_command方法也是來自父類Window_Command的方法
看一下定義吧

[pre lang="ruby"]  def add_command(name, symbol, enabled = true, ext = nil)
    @list.push({:name=>name, :symbol=>symbol, :enabled=>enabled, :ext=>ext})
  end[/pre]
這些參數代表的意義:
name    : 指令名稱
symbol  : 對應的符號
enabled : 有效狀態的標志
ext     : 任意的延伸資料

其中enabled和ext 參數因為設置了默認值所以可以省略
機智的人應該已經能看出如何依樣畫葫蘆添加了

接下來看一下Scene_Title場景的類吧

默認窗口的類基本上都只有看的功能,所以要能夠運行剛才添加的指令必須要在繪製本窗口的場景中定義
來看看繪製窗口的方法吧
[pre lang="ruby"]  def create_command_window
    @command_window = Window_TitleCommand.new
    @command_window.set_handler(:new_game, method(:command_new_game))
    @command_window.set_handler(:continue, method(:command_continue))
    @command_window.set_handler(:shutdown, method(:command_shutdown))
    @command_window.set_handler(:abcde, method(:command_abcde))
  end[/pre]
剛才的Window_TitleCommand窗口就是因應這條指令而生,並且讓他成為一個叫做@command_window的實體
[pre lang="ruby"]@command_window = Window_TitleCommand.new[/pre]
我們可以直接對實體@command_window進行操作,並使用自身的方法
例如set_handler方法他是來自父類的父類Window_Selectable的方法
[pre lang="ruby"]  def set_handler(symbol, method)
    @handler[symbol] = method
  end[/pre]

我們利用這個方法使剛才的傳入symbol參數能夠執行動作並且執行method參數的方法


最後我們只要定義一個新的方法來執行這個操作就可以了
例如我在此處定義了command_abcde方法
並由此指令傳遞
[pre lang="ruby"]@command_window.set_handler(:abcde, method(:command_abcde))[/pre]
裡面執行 p 123
當你完成你的畫冊窗口或場景時可以用這個方法來執行他

点评

好有耐心。。这个时候我以为祭上CG鉴赏模式脚本就OK。。。  发表于 2017-3-13 19:49

评分

参与人数 2星屑 +270 梦石 +1 收起 理由
RaidenInfinity + 250 + 1 版主认可的答案
魔法丶小肉包 + 20 精品文章赞一个=w=

查看全部评分

2016/07/17 加入RPG製作,勿忘初衷!
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部