Project1

标题: [脚本初学]关于创建窗口和刷新的问题 [打印本页]

作者: 774741359    时间: 2013-1-23 16:49
标题: [脚本初学]关于创建窗口和刷新的问题
今天下午弄了一下午脚本。
唔,终于把怎么创建一个窗口弄会了。
不过貌似,窗口创建出来刷新有点问题。
具体是这样的:
我在物品窗口的右侧新建了一个窗口

就是想选中物品的时候右侧的窗口显示注释栏里的内容。
(关于注释栏的内容有沉影不器大大的脚本)
可是,这一步具体怎么做不会了。
求教~ 忙活一下午了。
作者: 就是我    时间: 2013-1-23 18:00
本帖最后由 就是我 于 2013-1-23 18:53 编辑

这个要牵扯到窗口内容的描绘,
呐,你可以到这里去看看:
http://rpg.blue/thread-110411-1-1.html
(这是基础哦)
但是呢,RM原本是不支持自动换行的,
所以要请在main之前插入这段脚本:
  1. class Window_Base < Window
  2.   #--------------------------------------------------------------------------
  3.   # * 描绘自动换行文字
  4.   #    出自叶子的任务系统,有所修改.
  5.   #--------------------------------------------------------------------------
  6.   def chenge_special_character(text, x=0, y=0)
  7.     # 记录换行时y坐标最小加值
  8.     min_y = 0
  9.     # 限制文字处理
  10.     begin
  11.       last_text = text.clone
  12.     #  text.gsub!(/\\[Vv]\[([0-9]+)\]/) { $game_variables[$1.to_i] }
  13.     end until text == last_text
  14.     text.gsub!(/\\[Nn]\[([0-9]+)\]/) do
  15.       $game_actors[$1.to_i] != nil ? $game_actors[$1.to_i].name : ""
  16.     end
  17.     # c 获取 1 个字 (如果不能取得文字就循环)
  18.     while ((c = text.slice!(/./m)) != nil)
  19.       # \\ 的情况下
  20.       if c == "\000"
  21.         # 还原为本来的文字
  22.         c = "\\"
  23.       end
  24.       # 另起一行文字的情况下
  25.       if c == "\n"
  26.         y += [WLH, min_y].max
  27.         min_y = 0
  28.         x = 0
  29.         # 下面的文字
  30.         next
  31.       end
  32.       # 自动换行处理
  33.       if x + self.contents.text_size(c).width > self.contents.width
  34.         y += [WLH, min_y].max
  35.         min_y = 0
  36.         x = 0
  37.       end
  38.       # 描绘文字
  39.       self.contents.draw_text(x, y, 40, WLH, c)
  40.       # x 为要描绘文字的加法运算
  41.        x += self.contents.text_size(c).width
  42.     end
  43.   end
  44. end
复制代码
然后在窗口中使用
  1. chenge_special_character(描绘内容, 起始x坐标, 起始y坐标)
复制代码
就可以描绘了。
p.s:关于那个自动换行脚本,是出自叶子的任务系统滴,链接在这
http://rpg.blue/forum.php?mod=viewthread&tid=76639
作者: 774741359    时间: 2013-1-23 18:38
就是我 发表于 2013-1-23 18:00
这个要牵扯到窗口内容的描绘,
呐,你可以到这里去看看:
http://rpg.blue/thread-110411-1-1.html

感谢您的回答




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1