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

Project1

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

[已经解决] 怎样去掉X键的菜单?

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
97 小时
注册时间
2010-10-16
帖子
175
跳转到指定楼层
1
发表于 2010-10-17 16:32:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
怎样去掉X键的菜单?
全部不要,换成按下X键进入存档(加个金钱显示也行)?{:4_84:}
感激不尽啊!

Lv3.寻梦者

孤独守望

梦石
0
星屑
3132
在线时间
1535 小时
注册时间
2006-10-16
帖子
4321

开拓者贵宾

2
发表于 2010-10-17 16:34:40 | 只看该作者
Scene_Map L215:
$scene = Scene_Menu.new
=>
$scene = Scene_Save.new

点评

什么?....我是脚本忙...  发表于 2010-10-17 16:37
菩提本非树,明镜本非台。回头自望路漫漫。不求姻缘,但求再见。
本来无一物,何处惹尘埃。风打浪吹雨不来。荒庭遍野,扶摇难接。
不知道多久更新一次的博客
回复 支持 反对

使用道具 举报

Lv3.寻梦者

可以吃的头衔

梦石
0
星屑
1010
在线时间
424 小时
注册时间
2010-10-17
帖子
602
3
发表于 2010-10-17 17:13:49 | 只看该作者
回复 小源创世 的帖子

以下替换Scene_Map
  1. #==============================================================================
  2. # ■ Scene_Map
  3. #------------------------------------------------------------------------------
  4. #  处理地图画面的类。
  5. #==============================================================================

  6. class Scene_Map
  7.   #--------------------------------------------------------------------------
  8.   # ● 主处理
  9.   #--------------------------------------------------------------------------
  10.   def main
  11.     # 生成活动块
  12.     @spriteset = Spriteset_Map.new
  13.     # 生成信息窗口
  14.     @message_window = Window_Message.new
  15.     # 执行过渡
  16.     Graphics.transition
  17.     # 主循环
  18.     loop do
  19.       # 刷新游戏画面
  20.       Graphics.update
  21.       # 刷新输入信息
  22.       Input.update
  23.       # 刷新画面
  24.       update
  25.       # 如果画面切换的话就中断循环
  26.       if $scene != self
  27.         break
  28.       end
  29.     end
  30.     # 准备过渡
  31.     Graphics.freeze
  32.     # 释放活动块
  33.     @spriteset.dispose
  34.     # 释放信息窗口
  35.     @message_window.dispose
  36.     # 标题画面切换中的情况下
  37.     if $scene.is_a?(Scene_Title)
  38.       # 淡入淡出画面
  39.       Graphics.transition
  40.       Graphics.freeze
  41.     end
  42.   end
  43.   #--------------------------------------------------------------------------
  44.   # ● 刷新画面
  45.   #--------------------------------------------------------------------------
  46.   def update
  47.     # 循环
  48.     loop do
  49.       # 按照地图、实例、主角的顺序刷新
  50.       # (本更新顺序不会在的满足事件的执行条件下成为给予角色瞬间移动
  51.       #  的机会的重要因素)
  52.       $game_map.update
  53.       $game_system.map_interpreter.update
  54.       $game_player.update
  55.       # 系统 (计时器)、画面刷新
  56.       $game_system.update
  57.       $game_screen.update
  58.       # 如果主角在场所移动中就中断循环
  59.       unless $game_temp.player_transferring
  60.         break
  61.       end
  62.       # 执行场所移动
  63.       transfer_player
  64.       # 处理过渡中的情况下、中断循环
  65.       if $game_temp.transition_processing
  66.         break
  67.       end
  68.     end
  69.     # 刷新活动块
  70.     @spriteset.update
  71.     # 刷新信息窗口
  72.     @message_window.update
  73.     # 游戏结束的情况下
  74.     if $game_temp.gameover
  75.       # 切换的游戏结束画面
  76.       $scene = Scene_Gameover.new
  77.       return
  78.     end
  79.     # 返回标题画面的情况下
  80.     if $game_temp.to_title
  81.       # 切换到标题画面
  82.       $scene = Scene_Title.new
  83.       return
  84.     end
  85.     # 处理过渡中的情况下
  86.     if $game_temp.transition_processing
  87.       # 清除过渡处理中标志
  88.       $game_temp.transition_processing = false
  89.       # 执行过渡
  90.       if $game_temp.transition_name == ""
  91.         Graphics.transition(20)
  92.       else
  93.         Graphics.transition(40, "Graphics/Transitions/" +
  94.           $game_temp.transition_name)
  95.       end
  96.     end
  97.     # 显示信息窗口中的情况下
  98.     if $game_temp.message_window_showing
  99.       return
  100.     end
  101.     # 遇敌计数为 0 且、且遇敌列表不为空的情况下
  102.     if $game_player.encounter_count == 0 and $game_map.encounter_list != []
  103.       # 不是在事件执行中或者禁止遇敌中
  104.       unless $game_system.map_interpreter.running? or
  105.              $game_system.encounter_disabled
  106.         # 确定队伍
  107.         n = rand($game_map.encounter_list.size)
  108.         troop_id = $game_map.encounter_list[n]
  109.         # 队伍有效的话
  110.         if $data_troops[troop_id] != nil
  111.           # 设置调用战斗标志
  112.           $game_temp.battle_calling = true
  113.           $game_temp.battle_troop_id = troop_id
  114.           $game_temp.battle_can_escape = true
  115.           $game_temp.battle_can_lose = false
  116.           $game_temp.battle_proc = nil
  117.         end
  118.       end
  119.     end
  120.     # 按下 B 键的情况下
  121.     # 调试模式为 ON 并且按下 F9 键的情况下
  122.     if $DEBUG and Input.press?(Input::F9)
  123.       # 设置调用调试标志
  124.       $game_temp.debug_calling = true
  125.     end
  126.     # 不在主角移动中的情况下
  127.     unless $game_player.moving?
  128.       # 执行各种画面的调用
  129.       if $game_temp.battle_calling
  130.         call_battle
  131.       elsif $game_temp.shop_calling
  132.         call_shop
  133.       elsif $game_temp.name_calling
  134.         call_name
  135.       elsif $game_temp.menu_calling
  136.         call_menu
  137.       elsif $game_temp.save_calling
  138.         call_save
  139.       elsif $game_temp.debug_calling
  140.         call_debug
  141.       end
  142.     end
  143.   end
  144.   #--------------------------------------------------------------------------
  145.   # ● 调用战斗
  146.   #--------------------------------------------------------------------------
  147.   def call_battle
  148.     # 清除战斗调用标志
  149.     $game_temp.battle_calling = false
  150.     # 清除菜单调用标志
  151.     $game_temp.menu_calling = false
  152.     $game_temp.menu_beep = false
  153.     # 生成遇敌计数
  154.     $game_player.make_encounter_count
  155.     # 记忆地图 BGM 、停止 BGM
  156.     $game_temp.map_bgm = $game_system.playing_bgm
  157.     $game_system.bgm_stop
  158.     # 演奏战斗开始 SE
  159.     $game_system.se_play($data_system.battle_start_se)
  160.     # 演奏战斗 BGM
  161.     $game_system.bgm_play($game_system.battle_bgm)
  162.     # 矫正主角姿势
  163.     $game_player.straighten
  164.     # 切换到战斗画面
  165.     $scene = Scene_Battle.new
  166.   end
  167.   #--------------------------------------------------------------------------
  168.   # ● 调用商店
  169.   #--------------------------------------------------------------------------
  170.   def call_shop
  171.     # 清除商店调用标志
  172.     $game_temp.shop_calling = false
  173.     # 矫正主角姿势
  174.     $game_player.straighten
  175.     # 切换到商店画面
  176.     $scene = Scene_Shop.new
  177.   end
  178.   #--------------------------------------------------------------------------
  179.   # ● 调用名称输入
  180.   #--------------------------------------------------------------------------
  181.   def call_name
  182.     # 清除商店调用名称输入标志
  183.     $game_temp.name_calling = false
  184.     # 矫正主角姿势
  185.     $game_player.straighten
  186.     # 切换到名称输入画面
  187.     $scene = Scene_Name.new
  188.   end
  189.   #--------------------------------------------------------------------------
  190.   # ● 调用菜单
  191.   #--------------------------------------------------------------------------
  192.   def call_menu
  193.     # 清除商店调用菜单标志
  194.     $game_temp.menu_calling = false
  195.     # 已经设置了菜单 SE 演奏标志的情况下
  196.     if $game_temp.menu_beep
  197.       # 演奏确定 SE
  198.       $game_system.se_play($data_system.decision_se)
  199.       # 清除菜单演奏 SE 标志
  200.       $game_temp.menu_beep = false
  201.     end
  202.     # 矫正主角姿势
  203.     $game_player.straighten
  204.     # 切换到菜单画面
  205.     $scene = Scene_Menu.new
  206.   end
  207.   #--------------------------------------------------------------------------
  208.   # ● 调用存档
  209.   #--------------------------------------------------------------------------
  210.   def call_save
  211.     # 矫正主角姿势
  212.     $game_player.straighten
  213.     # 切换到存档画面
  214.     $scene = Scene_Save.new
  215.   end
  216.   #--------------------------------------------------------------------------
  217.   # ● 调用调试
  218.   #--------------------------------------------------------------------------
  219.   def call_debug
  220.     # 清除商店调用调试标志
  221.     $game_temp.debug_calling = false
  222.     # 演奏确定 SE
  223.     $game_system.se_play($data_system.decision_se)
  224.     # 矫正主角姿势
  225.     $game_player.straighten
  226.     # 切换到调试画面
  227.     $scene = Scene_Debug.new
  228.   end
  229.   #--------------------------------------------------------------------------
  230.   # ● 主角的场所移动
  231.   #--------------------------------------------------------------------------
  232.   def transfer_player
  233.     # 清除主角场所移动调试标志
  234.     $game_temp.player_transferring = false
  235.     # 移动目标与现在的地图有差异的情况下
  236.     if $game_map.map_id != $game_temp.player_new_map_id
  237.       # 设置新地图
  238.       $game_map.setup($game_temp.player_new_map_id)
  239.     end
  240.     # 设置主角位置
  241.     $game_player.moveto($game_temp.player_new_x, $game_temp.player_new_y)
  242.     # 设置主角朝向
  243.     case $game_temp.player_new_direction
  244.     when 2  # 下
  245.       $game_player.turn_down
  246.     when 4  # 左
  247.       $game_player.turn_left
  248.     when 6  # 右
  249.       $game_player.turn_right
  250.     when 8  # 上
  251.       $game_player.turn_up
  252.     end
  253.     # 矫正主角姿势
  254.     $game_player.straighten
  255.     # 刷新地图 (执行并行事件)
  256.     $game_map.update
  257.     # 在生成活动块
  258.     @spriteset.dispose
  259.     @spriteset = Spriteset_Map.new
  260.     # 处理过渡中的情况下
  261.     if $game_temp.transition_processing
  262.       # 清除过渡处理中标志
  263.       $game_temp.transition_processing = false
  264.       # 执行过渡
  265.       Graphics.transition(20)
  266.     end
  267.     # 执行地图设置的 BGM、BGS 的自动切换
  268.     $game_map.autoplay
  269.     # 设置画面
  270.     Graphics.frame_reset
  271.     # 刷新输入信息
  272.     Input.update
  273.   end
  274. end
复制代码

点评

- -,按X进入不了存档画面...  发表于 2010-10-20 12:59

评分

参与人数 1星屑 +200 收起 理由
fux2 + 200 半正确答案……

查看全部评分

回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
635
在线时间
244 小时
注册时间
2010-9-9
帖子
472
4
发表于 2010-10-17 22:18:43 | 只看该作者
回复 fux4 的帖子

如果找您的脚本,Scene_Save也需要修改
  1. #==============================================================================
  2. # ■ Scene_Save
  3. #------------------------------------------------------------------------------
  4. #  处理存档画面的类。
  5. #==============================================================================

  6. class Scene_Save < Scene_File
  7.   #--------------------------------------------------------------------------
  8.   # ● 初始化对像
  9.   #--------------------------------------------------------------------------
  10.   def initialize
  11.     super("要保存到哪个个记录?")
  12.   end
  13.   #--------------------------------------------------------------------------
  14.   # ● 确定时的处理
  15.   #--------------------------------------------------------------------------
  16.   def on_decision(filename)
  17.     # 演奏存档 SE
  18.     $game_system.se_play($data_system.save_se)
  19.     # 写入存档数据
  20.     file = File.open(filename, "wb")
  21.     write_save_data(file)
  22.     file.close
  23.       # 切换到地图画面
  24.       $scene = Scene_Map.new
  25.   end
  26.   #--------------------------------------------------------------------------
  27.   # ● 取消时的处理
  28.   #--------------------------------------------------------------------------
  29.   def on_cancel
  30.     # 演奏取消 SE
  31.     $game_system.se_play($data_system.cancel_se)
  32.     # 切换到地图画面
  33.     $scene = Scene_Map.new
  34.   end

  35.   #--------------------------------------------------------------------------
  36.   # ● 写入存档数据
  37.   #     file : 写入用文件对像 (已经打开)
  38.   #--------------------------------------------------------------------------
  39.   def write_save_data(file)
  40.     # 生成描绘存档文件用的角色图形
  41.     characters = []
  42.     for i in 0...$game_party.actors.size
  43.       actor = $game_party.actors[i]
  44.       characters.push([actor.character_name, actor.character_hue])
  45.     end
  46.     # 写入描绘存档文件用的角色数据
  47.     Marshal.dump(characters, file)
  48.     # 写入测量游戏时间用画面计数
  49.     Marshal.dump(Graphics.frame_count, file)
  50.     # 增加 1 次存档次数
  51.     $game_system.save_count += 1
  52.     # 保存魔法编号
  53.     # (将编辑器保存的值以随机值替换)
  54.     $game_system.magic_number = $data_system.magic_number
  55.     # 写入各种游戏对像
  56.     Marshal.dump($game_system, file)
  57.     Marshal.dump($game_switches, file)
  58.     Marshal.dump($game_variables, file)
  59.     Marshal.dump($game_self_switches, file)
  60.     Marshal.dump($game_screen, file)
  61.     Marshal.dump($game_actors, file)
  62.     Marshal.dump($game_party, file)
  63.     Marshal.dump($game_troop, file)
  64.     Marshal.dump($game_map, file)
  65.     Marshal.dump($game_player, file)
  66.   end
  67. end
复制代码

评分

参与人数 1星屑 +200 收起 理由
fux2 + 200 半正确答案……

查看全部评分

回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2025-2-20 10:09

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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