Project1

标题: 如何在开始界面中增加一个选项 作者信息? [打印本页]

作者: 007007114    时间: 2012-9-12 10:13
标题: 如何在开始界面中增加一个选项 作者信息?
在Scene_title下已经成功生成了4个选项 新游戏 继续 退出 和作者信息,通过when 0 1 2 3分别控制,请问when 3之后应该如何写?
自己写了一个脚本 请问如何在when 3之后调用?
class Scene_Author< Window_Base
#--------------------------------------------------------------------------
  # ● 初始化对像
  #--------------------------------------------------------------------------
  def initialize
    super(0, 0, 320, 64)
    self.contents = Bitmap.new(width - 32, height - 32)
  end
  #--------------------------------------------------------------------------
  # ● 设置文本
  #     text  : 窗口显示的字符串
  #     align : 对齐方式 (0..左对齐、1..中间对齐、2..右对齐)
  #--------------------------------------------------------------------------
  def set_text(text, align = 0)
    # 如果文本和对齐方式的至少一方与上次的不同
    if text != @text or align != @align
      # 再描绘文本
      self.contents.clear
      self.contents.font.color = normal_color
      self.contents.draw_text(4, 0, self.width - 40, 32, "whd", 1)
      @text = text
      @align = align
      @actor = nil
    end
    self.visible = true
  end
end  

dsu_plus_rewardpost_czw
作者: zxcgood2009    时间: 2012-9-12 14:17
本帖最后由 zxcgood2009 于 2012-9-12 14:22 编辑

when 3 下面是
      $scene = Scene_zuozhe.new
新建一个Scene ,名字是Scene_zuozhe,改成你要的一样就行了。
    内容如下:
class Scene_zuozhe
  #--------------------------------------------------------------------------
  # ● 主处理
  #--------------------------------------------------------------------------
  def main
    @zuozhe = Window_zuozhe.new  #新建作者窗口
    # 执行过渡
    Graphics.transition
    # 主循环
    loop do
      # 刷新游戏画面
      Graphics.update
      # 刷新输入信息
      Input.update
      # 刷新画面
      update
      # 如果切换画面就中断循环
      if $scene != self
        break
      end
    end
    # 准备过渡
    Graphics.freeze
    # 释放窗口
    @zuozhe.dispose     #释放作者窗口
    end
  #--------------------------------------------------------------------------
  # ● 刷新画面
  #--------------------------------------------------------------------------
  def update
    # 刷新窗口
    @zuozhe.update    #刷新作者窗口
    # 按下 B 键的情况下
    if Input.trigger?(Input::B)
      # 演奏取消 SE
      $game_system.se_play($data_system.cancel_se)
      # 切换的地图画面
      $scene = Scene_Title.new     #返回标题画面
      return
    end
  end
end





然后新建一个Window 名字是Window_zuozhe
内容是



class Window_zuozhe < Window_Base
  #--------------------------------------------------------------------------
  # ● 初始化对像
  #     actor : 角色
  #--------------------------------------------------------------------------
  def initialize
    super(0, 0, 640, 480)
    self.contents = Bitmap.new(width - 32, height - 32)
    refresh
  end
  #--------------------------------------------------------------------------
  # ● 刷新
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    self.contents.draw_text(320, 48, 80, 32, "我是作者")
  end
end
就行了。
就和你自己写的差不多。
这是我做的工程 Project1.zip (204.78 KB, 下载次数: 47)




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