Project1

标题: 关于选项的脚本问题 [打印本页]

作者: wtlrm    时间: 2010-10-20 16:19
标题: 关于选项的脚本问题
      听高手们都说自己不研究脚本就一辈子都不会,所以自己正在学习,试着做了一个任务系统,但是发生了如下的问题. 就是这样的,文字不能去不显示。我用的脚本是自己研究柳柳的教程改的。相关脚本如下:
class Scene_Mession
#---------------
# 初始化
#---------------
def initialize
   if $game_variables[51] < 10
     s1 = "幽灵杀手:杀死100个幽灵(未完成)"
   else
     s1 = "幽灵杀手:杀死100个幽灵(已完成)"
   end
   @list_window = Window_Command1.new( 160, [ s1, ])
   
end

#---------------
# 主循环
#---------------  
def main
   # 执行过渡(格式,不用管)
   Graphics.transition
   # 主循环(格式,不用管)
   loop do
     # 刷新游戏画面(格式,不用管)
     Graphics.update
     # 刷新键盘按键的情报(格式,不用管)
     Input.update
     
     
     # 刷新内容
     update
     
     
     # 如果画面被切换的话就中断循环(格式,不用管)
     if $scene != self
       break
     end
   end
   # 过渡(格式,不用管)
   Graphics.freeze   
   
   # 释放内存
   @list_window.dispose
   
end

#---------------
# 刷新
#---------------  
def update
   # 选项窗口的光标控制功能
   @list_window.update
   
   # 如果按下ESC的时候
   if Input.trigger?(Input::B)
     # 播放“嘟”的一声
     $game_system.se_play($data_system.cancel_se)
     # 返回地图
     $scene = Scene_Map.new
     # 完毕
     return
   end
   
end

end
这是第一个

第二个在下面



#==============================================================================
# ■ Window_Command
#------------------------------------------------------------------------------
#  一般的命令选择行窗口。
#==============================================================================

class Window_Command1 < Window_Selectable
  #--------------------------------------------------------------------------
  # ● 初始化对像
  #     width    : 窗口的宽
  #     commands : 命令字符串序列
  #--------------------------------------------------------------------------
  def initialize(width, commands)
    # 由命令的个数计算出窗口的高
    super(0, 0, 700,700)
    @item_max = commands.size
    @commands = commands
    self.contents = Bitmap.new(width - 32, @item_max * 32)
    refresh
    self.index = 0
  end
  #--------------------------------------------------------------------------
  # ● 刷新
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    for i in 0...@item_max
      draw_item(i, normal_color)
    end
  end
  #--------------------------------------------------------------------------
  # ● 描绘项目
  #     index : 项目编号
  #     color : 文字色
  #--------------------------------------------------------------------------
  def draw_item(index, color)
    self.contents.font.color = color
    rect = Rect.new(4, 32 * index, self.contents.width - 8 , 32)
    self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
    self.contents.draw_text(rect, @commands[index])
  end
  #--------------------------------------------------------------------------
  # ● 项目无效化
  #     index : 项目编号
  #--------------------------------------------------------------------------
  def disable_item(index)
    draw_item(index, disabled_color)
  end
end

请问我需要改动什么 来让 文字可以全部显示出来?
作者: fux4    时间: 2010-10-20 18:49
回复 wtlrm 的帖子


    描绘项目写的很清楚了,把rect改大就可以了
作者: wtlrm    时间: 2010-10-20 19:14
回复 fux4 的帖子
呃 能详细点么  我现在对脚本还不是太明白

   
作者: wtlrm    时间: 2010-10-20 19:31
回复 fux4 的帖子

哦  我研究明白了
self.contents = Bitmap.new(width - 32, @item_max * 32)
把这行改掉就行了 谢谢
   




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