幻想森林

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
12
返回列表 发新帖
楼主: 空下の音

[RMVX] [求助] “时间地点人物”游戏能不能做呢?

[复制链接]

38

主题

3468

帖子

1

积分

超级版主

传说中的Bunny火神~!

Rank: 8Rank: 8

积分
1
发表于 2007-10-11 23:25:41 | 显示全部楼层
在同一句里显示可以用事件脚本来显示文章。
我突然发现,我是一个很幸运的好人。老婆真好~ 点我进入JQ(激情)教程范例收集!
回复 支持 反对

使用道具 举报

1

主题

5

帖子

57

积分

②入门

积分
57
发表于 2007-10-14 08:02:34 | 显示全部楼层
参考参考~~

#===============================================================================
# from yangff
# 修改 by calvia
# $scene = Scene_Play.new
# 冲突:不可能
#===============================================================================
class Scene_Play
  def main
    @command = 1
    @help_window = Window_extHelp.new#calvia
    @timer_command = Window_Command.new(160,["1","2","3","4","5"])
    @place_command = Window_Command.new(160,["1","2","3","4","5"])
    @place_command.active = false
    @who_command = Window_Command.new(160,["1","2","3","4","5"])           
    @help_window.set_text("请选择时间")
    @who_command.active = false
    @help_window.y = 32 + 64 #calvia
    @timer_command.x = 80
    @timer_command.y =32 * 5#calvia
    @place_command.x = 80 + 160
    @place_command.y = 32 * 5#calvia
    @who_command.x = 80 + 160 + 160
    @who_command.y = 32 * 5#calvia
    ##########################################################calvia
    @who_command.index = -1
    @place_command.index = -1
    @who_command.back_opacity = 160
    @place_command.back_opacity = 160
    @timer_command.back_opacity = 160
    @help_window.back_opacity = 160
    @map = Spriteset_Map.new
    ##########################################################
    Graphics.transition
    loop do
      # 刷新游戏画面
      Graphics.update
      # 刷新输入信息
      Input.update
      # 刷新画面
      update
      # 如果画面被切换就中断循环
      if $scene != self
        break
      end
    end
    # 装备过渡
    Graphics.freeze
    # 释放命令窗口
    @timer_command.dispose
    @place_command.dispose
    @who_command.dispose
    @help_window.dispose
    @map.dispose#calvia
  end
  
  
  
  def update
    @help_window.update#calvia
    @timer_command.update
    @place_command.update
    @who_command.update
    @map.update#calvia
    if Input.trigger?(Input::C)
      case @command
        when 1
          @place_command.active = true
          @timer_command.active = false
          @place_command.index = 0##calvia
          case @timer_command.index
            when 0  # 1
              @hua = "今天,"
            when 1  # 2
              @hua = "半夜三更,"
            when 2  # 3
              @hua = "午夜凶铃,"
            when 3
              @hua = "中午,"
            when 4
              @hua = "世界灭亡的时候,"
          end
        @help_window.set_text("请选择地点")
        @command += 1
        
        when 2
          @place_command.active = false
          @who_command.active = true
          @who_command.index = 0#calvia
            case @place_command.index
            when 0  # 1
              @hua = @hua + "你马桶里,"
            when 1  # 2
              @hua = @hua + "我在大便堆里,"
            when 2  # 3
              @hua = @hua + "狗死在肯得基里,"
            when 3
              @hua = @hua + "大便在家门口,"
            when 4
              @hua = @hua + "阿尔西斯在火炉里,"
            end
              @help_window.set_text("请选择事件")
          @command += 1
         
        when 3
          @who_command.active = false
            case @who_command.index
            when 0  # 1
              @hua = @hua + "吃大便。"
            when 1  # 2
              @hua = @hua + "吃鸡块。"
            when 2  # 3
              @hua = @hua + "散步。"
            when 3
              @hua = @hua + "煮饭。"
            when 4
              @hua = @hua + "打架分钱。"
          end
           @help_window.set_text(@hua)
           @command = 4
          ########################################################calvia
          when 4
          @who_command.active = false
          @timer_command.active = true
          @place_command.active = false
          @place_command.index = -1
          @who_command.index = -1
          @command = 1
          #########################################################
          end
    end
    if Input.trigger?(Input::B)
      if @command == 1
      $scene = Scene_Map.new
    elsif @command == 2
      @command -= 1
                @place_command.active = false
          @timer_command.active = true
          @hua2 = ""
    @help_window.set_text("请选择时间")
  elsif @command == 4
      $scene = Scene_Map.new
  elsif @command == 3
   
      @command -= 1
          @place_command.active = true
          @who_command.active = false
          @hua2 = ""
        @help_window.set_text("请选择地点")
      end
    end
  end
end


#########################################################################calvia
#==============================================================================
# ■ Window_Help
#------------------------------------------------------------------------------
#  特技及物品的说明、角色的状态显示的窗口。
#==============================================================================

class Window_extHelp < Window_Base
  #--------------------------------------------------------------------------
  # ● 初始化对像
  #--------------------------------------------------------------------------
  def initialize
    super(80, 0, 480, 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, text, align)
      @text = text
      @align = align
      @actor = nil
    end
    self.visible = true
  end
  #--------------------------------------------------------------------------
  # ● 设置角色
  #     actor : 要显示状态的角色
  #--------------------------------------------------------------------------
  def set_actor(actor)
    if actor != @actor
      self.contents.clear
      draw_actor_name(actor, 4, 0)
      draw_actor_state(actor, 140, 0)
      draw_actor_hp(actor, 284, 0)
      draw_actor_sp(actor, 460, 0)
      @actor = actor
      @text = nil
      self.visible = true
    end
  end
  #--------------------------------------------------------------------------
  # ● 设置敌人
  #     enemy : 要显示名字和状态的敌人
  #--------------------------------------------------------------------------
  def set_enemy(enemy)
    text = enemy.name
    state_text = make_battler_state_text(enemy, 112, false)
    if state_text != ""
      text += "  " + state_text
    end
    set_text(text, 1)
  end
end
回复 支持 反对

使用道具 举报

1

主题

5

帖子

57

积分

②入门

积分
57
发表于 2007-10-14 08:03:34 | 显示全部楼层
或者

#===============================================================================
# from yangff
# 修改 by calvia
# $scene = Scene_Play.new
# 冲突:不可能
#===============================================================================
class Scene_Play
  def main
    @command = 1
    @help_window = Window_extHelp.new#calvia
    @timer_command = Window_Command.new(160,["1","2","3","4","5"])
    @place_command = Window_Command.new(160,["1","2","3","4","5"])
    @place_command.active = false
    @who_command = Window_Command.new(160,["1","2","3","4","5"])           
    @help_window.set_text("请选择时间")
    @who_command.active = false
    @help_window.y = 32 + 64 #calvia
    @timer_command.x = 80
    @timer_command.y =32 * 5#calvia
    @place_command.x = 80 + 160
    @place_command.y = 32 * 5#calvia
    @who_command.x = 80 + 160 + 160
    @who_command.y = 32 * 5#calvia
    ##########################################################calvia
    @who_command.index = -1
    @place_command.index = -1
    @who_command.back_opacity = 160
    @place_command.back_opacity = 160
    @timer_command.back_opacity = 160
    @help_window.back_opacity = 160
    @map = Spriteset_Map.new
    ##########################################################
    Graphics.transition
    loop do
      # 刷新游戏画面
      Graphics.update
      # 刷新输入信息
      Input.update
      # 刷新画面
      update
      # 如果画面被切换就中断循环
      if $scene != self
        break
      end
    end
    # 装备过渡
    Graphics.freeze
    # 释放命令窗口
    @timer_command.dispose
    @place_command.dispose
    @who_command.dispose
    @help_window.dispose
    @map.dispose#calvia
  end
  
  
  
  def update
    @help_window.update#calvia
    @timer_command.update
    @place_command.update
    @who_command.update
    @map.update#calvia
    if Input.trigger?(Input::C)
      case @command
        when 1
          @place_command.active = true
          @timer_command.active = false
          @place_command.index = 0##calvia
          case @timer_command.index
            when 0  # 1
              x = rand(4)
              case x
              when 0
              @hua = "今天,"
              when 1
              @hua = "半夜三更,"
              when 2
              @hua = "午夜凶铃,"
              when 3
              @hua = "中午,"
              when 4
              @hua = "世界灭亡的时候,"
              end
            when 1  # 2
              x = rand(4)
              case x
              when 0
              @hua = "今天,"
              when 1
              @hua = "半夜三更,"
              when 2
              @hua = "午夜凶铃,"
              when 3
              @hua = "中午,"
              when 4
              @hua = "世界灭亡的时候,"
              end
            when 2  # 3
              x = rand(4)
              case x
              when 0
              @hua = "今天,"
              when 1
              @hua = "半夜三更,"
              when 2
              @hua = "午夜凶铃,"
              when 3
              @hua = "中午,"
              when 4
              @hua = "世界灭亡的时候,"
              end
            when 3
              x = rand(4)
              case x
              when 0
              @hua = "今天,"
              when 1
              @hua = "半夜三更,"
              when 2
              @hua = "午夜凶铃,"
              when 3
              @hua = "中午,"
              when 4
              @hua = "世界灭亡的时候,"
              end
            when 4
              x = rand(4)
              case x
              when 0
              @hua = "今天,"
              when 1
              @hua = "半夜三更,"
              when 2
              @hua = "午夜凶铃,"
              when 3
              @hua = "中午,"
              when 4
              @hua = "世界灭亡的时候,"
              end
          end
        @help_window.set_text("请选择地点")
        @command += 1
        
        when 2
          @place_command.active = false
          @who_command.active = true
          @who_command.index = 0#calvia
            x = rand(4)
            case @place_command.index
            when 0  # 1
              case x
              when 0
              @hua = @hua + "你马桶里,"
              when 1
              @hua = @hua + "我在大便堆里,"
              when 2
              @hua = @hua + "狗死在肯得基里,"
              when 3
              @hua = @hua + "大便在家门口,"
               
              when 4
              @hua = @hua + "阿尔西斯在火炉里,"
              end
            when 1  # 2
              case x
              when 0
              @hua = @hua + "你马桶里,"
              when 1
              @hua = @hua + "我在大便堆里,"
              when 2
              @hua = @hua + "狗死在肯得基里,"
              when 3
              @hua = @hua + "大便在家门口,"
               
              when 4
              @hua = @hua + "阿尔西斯在火炉里,"
              end
            when 2  # 3
              case x
              when 0
              @hua = @hua + "你马桶里,"
              when 1
              @hua = @hua + "我在大便堆里,"
              when 2
              @hua = @hua + "狗死在肯得基里,"
              when 3
              @hua = @hua + "大便在家门口,"
               
              when 4
              @hua = @hua + "阿尔西斯在火炉里,"
              end
            when 3
              case x
              when 0
              @hua = @hua + "你马桶里,"
              when 1
              @hua = @hua + "我在大便堆里,"
              when 2
              @hua = @hua + "狗死在肯得基里,"
              when 3
              @hua = @hua + "大便在家门口,"
               
              when 4
              @hua = @hua + "阿尔西斯在火炉里,"
              end
            when 4
              case x
              when 0
              @hua = @hua + "你马桶里,"
              when 1
              @hua = @hua + "我在大便堆里,"
              when 2
              @hua = @hua + "狗死在肯得基里,"
              when 3
              @hua = @hua + "阿尔西斯在火炉里,"
              when 4
              @hua = @hua + "大便在家门口,"
              end
            end
              @help_window.set_text("请选择事件")
          @command += 1
         
        when 3
          @who_command.active = false
            x = rand(4)
            case x
            when 0  # 1
              @hua = @hua + "吃大便。"
            when 1  # 2
              @hua = @hua + "吃鸡块。"
            when 2  # 3
              @hua = @hua + "散步。"
            when 3
              @hua = @hua + "煮饭。"
            when 4
              @hua = @hua + "打架分钱。"
          end
           @help_window.set_text(@hua)
           @command = 4
          ########################################################calvia
          when 4
          @who_command.active = false
          @timer_command.active = true
          @place_command.active = false
          @place_command.index = -1
          @who_command.index = -1
          @command = 1
          #########################################################
          end
    end
    if Input.trigger?(Input::B)
      if @command == 1
      $scene = Scene_Map.new
    elsif @command == 2
      @command -= 1
                @place_command.active = false
          @timer_command.active = true
          @hua2 = ""
    @help_window.set_text("请选择时间")
  elsif @command == 4
      $scene = Scene_Map.new
  elsif @command == 3
   
      @command -= 1
          @place_command.active = true
          @who_command.active = false
          @hua2 = ""
        @help_window.set_text("请选择地点")
      end
    end
  end
end


#########################################################################calvia
#==============================================================================
# ■ Window_Help
#------------------------------------------------------------------------------
#  特技及物品的说明、角色的状态显示的窗口。
#==============================================================================

class Window_extHelp < Window_Base
  #--------------------------------------------------------------------------
  # ● 初始化对像
  #--------------------------------------------------------------------------
  def initialize
    super(80, 0, 480, 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, text, align)
      @text = text
      @align = align
      @actor = nil
    end
    self.visible = true
  end
  #--------------------------------------------------------------------------
  # ● 设置角色
  #     actor : 要显示状态的角色
  #--------------------------------------------------------------------------
  def set_actor(actor)
    if actor != @actor
      self.contents.clear
      draw_actor_name(actor, 4, 0)
      draw_actor_state(actor, 140, 0)
      draw_actor_hp(actor, 284, 0)
      draw_actor_sp(actor, 460, 0)
      @actor = actor
      @text = nil
      self.visible = true
    end
  end
  #--------------------------------------------------------------------------
  # ● 设置敌人
  #     enemy : 要显示名字和状态的敌人
  #--------------------------------------------------------------------------
  def set_enemy(enemy)
    text = enemy.name
    state_text = make_battler_state_text(enemy, 112, false)
    if state_text != ""
      text += "  " + state_text
    end
    set_text(text, 1)
  end
end
回复 支持 反对

使用道具 举报

32

主题

1176

帖子

10216万

积分

⑥精研

大家都爱好少年

积分
102162186
发表于 2007-10-15 14:46:56 | 显示全部楼层
[s:5] LS还真做出来了,鼓掌……
说起来最近想回归RMXP了……SIGH
战,然后死!
回复 支持 反对

使用道具 举报

550

主题

9117

帖子

214748万

积分

超级版主

如同神一般的存在,腿神!拖后腿的神~~

Rank: 8Rank: 8

积分
2147483647
发表于 2007-10-15 18:04:41 | 显示全部楼层
我最敬佩的不是有技术的达人们。。。。正是这种勤劳人啊!!!!!!! [s:7]
我就是你们的神,庶民们,追随我吧!跟着我一起拖后腿!
回复 支持 反对

使用道具 举报

32

主题

1176

帖子

10216万

积分

⑥精研

大家都爱好少年

积分
102162186
发表于 2007-10-15 18:12:56 | 显示全部楼层
懒人纯飘过
战,然后死!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|幻想森林

GMT+8, 2026-6-20 18:38 , Processed in 0.010708 second(s), 17 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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