赞 | 6 |
VIP | 4 |
好人卡 | 58 |
积分 | 5 |
经验 | 58579 |
最后登录 | 2024-6-30 |
在线时间 | 1478 小时 |
Lv2.观梦者
- 梦石
- 0
- 星屑
- 508
- 在线时间
- 1478 小时
- 注册时间
- 2011-9-17
- 帖子
- 1316
|
加入新窗口:
在Scene_Menu的start内,将下面的代码加入最后一行(即end上面)
- @my_window = Window_Base.new(x,y,w,h)
复制代码
其中x,y指窗口左上角坐标,w,h指窗口宽和高
推荐这么写:(具体效果,试试就知道了)
- @my_window = Window_Base.new(0,@command_window.height,@command_window.width,Graphics.height - @command_window.height - @gold_window.height)
复制代码
然后是往窗口里面写入文字
使用draw_text方法
由于是年月日,是需要更新的,于是要放在update方法里面
于是在Scene_Menu里面写入
- def update
- super
- @my_window.contents.clear
- @my_window.draw_text(x,y,w,h,"XXXXX" +$game_variables[A].to_s+"XXXXXX",0/1/2)
- end
复制代码 draw_text()中的x,y,w,h与上面相同的意思(但是注意X,Y变成相对于左上角的坐标)即将内容写入由他们确定的矩形区域内
推荐为
- 0,0,@my_window.contents_width,@my_window.contents_height
复制代码
0/1/2分别指左/中/右对齐(默认为左,最好居中)
XXXXX就是你想要写入的内容,至于你想要加入的变量,
用“XXXX” + $game_variables[A].to_s + “YYYYY” (A指的是变量编号)加入字符串中,可以加多个
倘若需要换行或者其他控制方式,使用draw_text_ex(x,y,"string") 这里就不介绍了
这样就行了,但是性能会不好,特别是字符串长的时候…因为更新时不管字符串内容变没变都会clear然后重写,于是需要判据…
不过就这样吧,反正没多大区域
另外吐槽一下,如果是显示当前现实时间的话……没有必要使用变量,Time.now即可……
如果是指特设的游戏时间最好也做丰富一点啊,就一排字不行啊
|
|