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

Project1

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

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

[复制链接]

Lv1.梦旅人

梦石
0
星屑
1094
在线时间
14 小时
注册时间
2017-3-12
帖子
3
跳转到指定楼层
1
发表于 2017-3-13 15:34:43 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式

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

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

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

点评

【警告】版规A-8 弃帖/提问后不管  发表于 2017-3-23 13:53

Lv2.观梦者

梦石
0
星屑
644
在线时间
830 小时
注册时间
2016-7-24
帖子
649

开拓者

2
发表于 2017-3-13 19:13:57 | 只看该作者
本帖最后由 QQ蚊子湯 于 2017-3-13 19:16 编辑

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

首先來看看 Window_TitleCommand 這個窗口類吧


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

RUBY 代码复制
  1. def make_command_list
  2.     add_command(Vocab::new_game, :new_game)
  3.     add_command(Vocab::continue, :continue, continue_enabled)
  4.     add_command("畫冊", :abcde)
  5.     add_command(Vocab::shutdown, :shutdown)
  6.   end


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

RUBY 代码复制
  1. def add_command(name, symbol, enabled = true, ext = nil)
  2.     @list.push({:name=>name, :symbol=>symbol, :enabled=>enabled, :ext=>ext})
  3.   end

這些參數代表的意義:
name    : 指令名稱
symbol  : 對應的符號
enabled : 有效狀態的標志
ext     : 任意的延伸資料

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

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

默認窗口的類基本上都只有看的功能,所以要能夠運行剛才添加的指令必須要在繪製本窗口的場景中定義
來看看繪製窗口的方法吧
RUBY 代码复制
  1. def create_command_window
  2.     @command_window = Window_TitleCommand.new
  3.     @command_window.set_handler(:new_game, method(:command_new_game))
  4.     @command_window.set_handler(:continue, method(:command_continue))
  5.     @command_window.set_handler(:shutdown, method(:command_shutdown))
  6.     @command_window.set_handler(:abcde, method(:command_abcde))
  7.   end

剛才的Window_TitleCommand窗口就是因應這條指令而生,並且讓他成為一個叫做@command_window的實體
RUBY 代码复制
  1. @command_window = Window_TitleCommand.new

我們可以直接對實體@command_window進行操作,並使用自身的方法
例如set_handler方法他是來自父類的父類Window_Selectable的方法
RUBY 代码复制
  1. def set_handler(symbol, method)
  2.     @handler[symbol] = method
  3.   end


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


最後我們只要定義一個新的方法來執行這個操作就可以了
例如我在此處定義了command_abcde方法
並由此指令傳遞
RUBY 代码复制
  1. @command_window.set_handler(:abcde, method(:command_abcde))

裡面執行 p 123
當你完成你的畫冊窗口或場景時可以用這個方法來執行他

点评

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

评分

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

查看全部评分

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

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-17 07:24

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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