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

Project1

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

[RMVX发布] 假设灵魂加入菜单(以1号变量)

[复制链接]

Lv1.梦旅人

天空之神

梦石
0
星屑
156
在线时间
173 小时
注册时间
2009-5-3
帖子
612
跳转到指定楼层
1
发表于 2010-8-10 11:15:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
  1. #==============================================================================
  2. # ■ Window_Gold
  3. #------------------------------------------------------------------------------
  4. #  显示金钱的窗口。
  5. #==============================================================================

  6. class Window_Gold2 < Window_Base
  7.   #--------------------------------------------------------------------------
  8.   # ● 初始化对象
  9.   #     x : 窗口的 X 坐标
  10.   #     y : 窗口的 Y 坐标
  11.   #--------------------------------------------------------------------------
  12.   def initialize(x, y)
  13.     super(x, y, 160, WLH + 32)
  14.     refresh
  15.   end
  16.   #--------------------------------------------------------------------------
  17.   # ● 刷新
  18.   #--------------------------------------------------------------------------
  19.   def refresh
  20.      self.contents.draw_text(0, 0, 120, WLH,$game_variables[1],2) # 显示一号变量
  21.      self.contents.draw_text(0, 0, 120, WLH,"灵魂:",0)
  22.   end
  23. end
复制代码
  1. #==============================================================================
  2. # ■ Scene_Menu
  3. #------------------------------------------------------------------------------
  4. #  处理菜单画面的类。
  5. #==============================================================================

  6. class Scene_Menu < Scene_Base
  7.   #--------------------------------------------------------------------------
  8.   # ● 初始化对象
  9.   #     menu_index : 指令光标初期位置
  10.   #--------------------------------------------------------------------------
  11.   def initialize(menu_index = 0)
  12.     @menu_index = menu_index
  13.   end
  14.   #--------------------------------------------------------------------------
  15.   # ● 开始处理
  16.   #--------------------------------------------------------------------------
  17.   def start
  18.     super
  19.     create_menu_background
  20.     create_command_window
  21.     @gold_window = Window_Gold.new(0, 275)
  22.     @gold_window2 = Window_Gold2.new(0, 220)
  23.     @status_window = Window_MenuStatus.new(160, 0)
  24.   end
  25.   #--------------------------------------------------------------------------
  26.   # ● 结束处理
  27.   #--------------------------------------------------------------------------
  28.   def terminate
  29.     super
  30.     dispose_menu_background
  31.     @command_window.dispose
  32.     @gold_window.dispose
  33.     @gold_window2.dispose
  34.     @status_window.dispose
  35.   end
  36.   #--------------------------------------------------------------------------
  37.   # ● 更新画面
  38.   #--------------------------------------------------------------------------
  39.   def update
  40.     super
  41.     update_menu_background
  42.     @command_window.update
  43.     @gold_window.update
  44.     @status_window.update
  45.     if @command_window.active
  46.       update_command_selection
  47.     elsif @status_window.active
  48.       update_actor_selection
  49.     end
  50.   end
  51.   #--------------------------------------------------------------------------
  52.   # ● 生成指令窗口
  53.   #--------------------------------------------------------------------------
  54. def create_command_window
  55.     s1 = Vocab::item
  56.     s2 = Vocab::skill
  57.     s3 = Vocab::equip
  58.     s4 = Vocab::status
  59.     s5 = Vocab::save
  60.     s6 = "旧的回忆"
  61.     s7 = "公共事件调用1"
  62.     s8 = Vocab::game_end
  63.     @command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6,s7,s8])
  64.     @command_window.index = @menu_index
  65.     if $game_party.members.size == 0          # 同伴人数为 0 的情况下
  66.       @command_window.draw_item(0, false)     # 物品无效化
  67.       @command_window.draw_item(1, false)     # 特技无效化
  68.       @command_window.draw_item(2, false)     # 装备无效化
  69.       @command_window.draw_item(3, false)     # 状态无效化
  70.     end
  71.     if $game_system.save_disabled             # 禁止存档的情况下
  72.       @command_window.draw_item(4, false)     # 存档无效化
  73.     end
  74.   end
  75.   #--------------------------------------------------------------------------
  76.   # ● 更新指令选择
  77.   #--------------------------------------------------------------------------
  78.   def update_command_selection
  79.     if Input.trigger?(Input::B)
  80.       Sound.play_cancel
  81.       $scene = Scene_Map.new
  82.     elsif Input.trigger?(Input::C)
  83.       if $game_party.members.size == 0 and @command_window.index < 4
  84.         Sound.play_buzzer
  85.         return
  86.       elsif $game_system.save_disabled and @command_window.index == 4
  87.         Sound.play_buzzer
  88.         return
  89.       end
  90.       Sound.play_decision
  91.       case @command_window.index
  92.       when 0      # 物品
  93.         $scene = Scene_Item.new
  94.       when 1,2,3  # 特技、装备、状态
  95.         start_actor_selection
  96.       when 4      # 存档
  97.         $scene = Scene_File.new(true, false, false)
  98.       when 5    # 继续
  99.         $scene = Scene_File.new(false, false, false)
  100.       when 6      # 游戏结束
  101.         $scene = Scene_Map.new
  102.         $game_temp.common_event_id =001 #公共事件号
  103.       when 7      # 游戏结束
  104.         $scene = Scene_End.new
  105.       end
  106.     end
  107.   end
  108.   #--------------------------------------------------------------------------
  109.   # ● アクター選択の開始
  110.   #--------------------------------------------------------------------------
  111.   def start_actor_selection
  112.     @command_window.active = false
  113.     @status_window.active = true
  114.     if $game_party.last_actor_index < @status_window.item_max
  115.       @status_window.index = $game_party.last_actor_index
  116.     else
  117.       @status_window.index = 0
  118.     end
  119.   end
  120.   #--------------------------------------------------------------------------
  121.   # ● アクター選択の終了
  122.   #--------------------------------------------------------------------------
  123.   def end_actor_selection
  124.     @command_window.active = true
  125.     @status_window.active = false
  126.     @status_window.index = -1
  127.   end
  128.   #--------------------------------------------------------------------------
  129.   # ● アクター選択の更新
  130.   #--------------------------------------------------------------------------
  131.   def update_actor_selection
  132.     if Input.trigger?(Input::B)
  133.       Sound.play_cancel
  134.       end_actor_selection
  135.     elsif Input.trigger?(Input::C)
  136.       $game_party.last_actor_index = @status_window.index
  137.       Sound.play_decision
  138.       case @command_window.index
  139.       when 1  # スキル
  140.         $scene = Scene_Skill.new(@status_window.index)
  141.       when 2  # 装備
  142.         $scene = Scene_Equip.new(@status_window.index)
  143.       when 3  # ステータス
  144.         $scene = Scene_Status.new(@status_window.index)
  145.       end
  146.     end
  147.   end
  148. end
复制代码
顺带着教了设读档和调用公共事件

点评

这什么玩意?  发表于 2010-8-10 13:41

Lv4.逐梦者

醉啸 长风万里

梦石
0
星屑
6162
在线时间
6593 小时
注册时间
2007-12-16
帖子
4501

贵宾

2
发表于 2010-8-10 14:30:36 | 只看该作者
LZ这个级别的应该不会发这么简单的东西吧

还在龟速填坑中
回复 支持 反对

使用道具 举报

Lv1.梦旅人

天空之神

梦石
0
星屑
156
在线时间
173 小时
注册时间
2009-5-3
帖子
612
3
 楼主| 发表于 2010-8-10 15:04:11 | 只看该作者
帮帮菜鸟吧!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-21 19:48

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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