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

Project1

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

[已经过期] 在菜单中如何添加文本信息

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
107 小时
注册时间
2012-8-20
帖子
54
跳转到指定楼层
1
发表于 2013-4-25 18:38:59 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
如图,在金币后面增加一个窗口。输入文本信息。
我想要的脚本是这样的:设置一个不确定值(1-n)的变量M,当M=1时,显示“。。。。”;
当M=2时,显示“。。。。”;当M=3时.........
求完整脚本。虽然在主站找到了类似脚本。但都是零散的,不懂怎么弄。所以.........

QQ截图20130425**313.png (246.39 KB, 下载次数: 19)

QQ截图20130425**313.png

Lv1.梦旅人

梦石
0
星屑
50
在线时间
687 小时
注册时间
2012-10-29
帖子
1543
2
发表于 2013-4-25 19:18:12 | 只看该作者
本帖最后由 j433463 于 2013-4-25 20:54 编辑

是想要加一个说明窗口吧?就像物品/技能菜单上方的说明窗口?


如果是的话,在 Scene_Menu 找到:

RUBY 代码复制
  1. #--------------------------------------------------------------------------
  2.   # ● 开始处理
  3.   #--------------------------------------------------------------------------
  4.   def start
  5.     super
  6.     create_background
  7.     create_gold_window
  8.     create_coordinate_window
  9.     create_command_window
  10.     create_playtime_window
  11.     create_mapname_window
  12.     create_status_window
  13.   end


然后在 end 之前加上一行:

RUBY 代码复制
  1. create_help_window


再找:

RUBY 代码复制
  1. #--------------------------------------------------------------------------
  2.   # ● 指令“物品”
  3.   #--------------------------------------------------------------------------
  4.   def command_item
  5.     SceneManager.call(Scene_Item)
  6.   end


在这上方加一段:

RUBY 代码复制
  1. #--------------------------------------------------------------------------
  2.   # ● 生成说明视窗
  3.   #--------------------------------------------------------------------------
  4.   def create_help_window
  5.     @help_window = Window_Help.new(1)
  6.     @help_window.width = Graphics.width - @gold_window.width
  7.     @help_window.x = @gold_window.width
  8.     @help_window.y = Graphics.height - @gold_window.height
  9.     @help_window.set_text("")
  10.   end


这样就会有一个说明窗口在金钱窗口右边了,但因为 Window_Help 预设是全屏宽,改小宽度后窗口右边会有一个小三角,不太好看,

您也可以另外加一个 Window_Help2 脚本:

RUBY 代码复制
  1. #encoding:utf-8
  2. #==============================================================================
  3. # ■ Window_Help2
  4. #------------------------------------------------------------------------------
  5. #  显示指定说明文字的视窗
  6. #==============================================================================
  7.  
  8. class Window_Help2 < Window_Base
  9.   #--------------------------------------------------------------------------
  10.   # ● 初始化物件
  11.   #--------------------------------------------------------------------------
  12.   def initialize(line_number = 2)
  13.     super(0, 0, window_width, fitting_height(line_number))
  14.   end
  15.   #--------------------------------------------------------------------------
  16.   # ● 取得视窗的宽度
  17.   #--------------------------------------------------------------------------
  18.   def window_width
  19.     return Graphics.width - 160
  20.   end
  21.   #--------------------------------------------------------------------------
  22.   # ● 设定内容
  23.   #--------------------------------------------------------------------------
  24.   def set_text(text)
  25.     if text != @text
  26.       @text = text
  27.       refresh
  28.     end
  29.   end
  30.   #--------------------------------------------------------------------------
  31.   # ● 清除
  32.   #--------------------------------------------------------------------------
  33.   def clear
  34.     set_text("")
  35.   end
  36.   #--------------------------------------------------------------------------
  37.   # ● 重新整理
  38.   #--------------------------------------------------------------------------
  39.   def refresh
  40.     contents.clear
  41.     draw_text_ex(4, 0, @text)
  42.   end
  43. end


并且把原来的生成说明视窗中 Window_Help.new(1) 改成 Window_Help2.new(1)

这样,您在主菜单中就可以用

RUBY 代码复制
  1. @help_window.set_text("要显示的说明文字")


来控制窗口显示说明内容了,如果您是要显示一个变量的内容,"要显示的说明文字" 改为 $game_variables[变量编号]
修改劇本中,仔細審查原來的劇情大綱,覺得有點不太滿意,嘗試編寫不同主角不同主線的劇情,希望能寫得出來。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
107 小时
注册时间
2012-8-20
帖子
54
3
 楼主| 发表于 2013-4-25 21:37:30 | 只看该作者
j433463 发表于 2013-4-25 19:18
是想要加一个说明窗口吧?就像物品/技能菜单上方的说明窗口?

第一种符合我的意思,第二个大体上没问题,不过改变了其他的帮助窗口。不知能否添加if或者when语句,大概这样:
if $game_variables[7] =1
@help_window.set_text( "第一章")  
if $game_variables[7] =2
@help_window.set_text( "第二章")  
else
@help_window.set_text( “")  
虽然上面if语句有错,但大概思路是这样。不知能否做出。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
687 小时
注册时间
2012-10-29
帖子
1543
4
发表于 2013-4-25 22:37:34 | 只看该作者
本帖最后由 j433463 于 2013-4-25 22:42 编辑

case $game_variables[7]
when 1
  @help_window.set_text( "第一章")  
when 2
  @help_window.set_text( "第二章")
else
  @help_window.clear
end  

那要看您加在哪了,主菜单因为没有使用到 Window_Help,所以可以这样做,
如果在别的菜单窗口,譬如状态页或物品菜单,就可能与原本的 Window_Help 冲突到,
保险一点您可以把修改所用到的 @help_window 全改成 @help_window2 作为区别,
那么您用 @help_window2.set_text("第一章") 就不会有问题了。

点评

如果指 clear 有错,那请改成 set_text(""),这是初始设置的问题,没有执行过无法 clear,因为没有东西可以清除,所以用的地方不同,可能出现这个错误。   发表于 2013-4-26 13:09
加一点,这个case语句,貌似也有问题  发表于 2013-4-26 12:16
修改劇本中,仔細審查原來的劇情大綱,覺得有點不太滿意,嘗試編寫不同主角不同主線的劇情,希望能寫得出來。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
107 小时
注册时间
2012-8-20
帖子
54
5
 楼主| 发表于 2013-4-25 22:59:42 | 只看该作者
o,非常感谢
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-5-8 00:42

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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