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

Project1

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

[已经过期] 如何实现如图的功能?

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
25 小时
注册时间
2008-11-8
帖子
145
跳转到指定楼层
1
发表于 2011-1-25 13:01:04 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x




如何把那个红色的信息框去掉,然后设置好物品和系统,还有按“金钱”就把金钱数显示在一张图片上?
这是我自己改的脚本,改到晕了,不会改,高人相助—_—|||
  1. #==============================================================================
  2. class Scene_Menu
  3.   #--------------------------------------------------------------------------
  4.   # ● 初始化对像
  5.   #     menu_index : 命令光标的初期位置
  6.   #--------------------------------------------------------------------------
  7.   def initialize(menu_index = 0)
  8.     @menu_index = menu_index
  9.   end
  10.   #--------------------------------------------------------------------------
  11.   # ● 主处理
  12.   #--------------------------------------------------------------------------
  13.   def main
  14.     #############################
  15.     #@backsp2 = Sprite.new
  16.     #@backsp2.bitmap = Bitmap.new("Graphics/menu/状态.png")
  17.     #@backsp2.x = 0
  18.     #@backsp2.y = 0
  19.     #@backsp2.z = 16
  20.     ############################
  21.    
  22.     # 生成命令窗口
  23.     @command_window = Window_Command.new(250,["状态", "招式", "物品", "系统","金钱"])
  24.     @command_window.windowskin = RPG::Cache.windowskin("nil")
  25.     @command_window.width = 800
  26.     @command_window.height = 600
  27.     @command_window.y = -16
  28.    
  29.     @command_window.x = -15
  30.     @command_window.z = 15
  31.     @command_window.opacity = 0
  32.     @command_window.index = @menu_index
  33.     #================================================================
  34.     @command_window.contents = Bitmap.new("Graphics/menu/状态.png")
  35.     #================================================================
  36.     # 同伴人数为 0 的情况下
  37.     if $game_party.actors.size == 0
  38.       # 物品、特技、装备、状态无效化
  39.       @command_window.disable_item(0)
  40.       @command_window.disable_item(1)
  41.       @command_window.disable_item(2)
  42.       @command_window.disable_item(3)
  43.     end
  44.     # 禁止存档的情况下
  45.     if $game_system.save_disabled
  46.       # 存档无效
  47.       @command_window.disable_item(4)
  48.     end
  49.    
  50.     # 生成状态窗口
  51.     @status_window = Window_MenuStatus.new
  52.     # 执行过渡
  53.     #=============================================================
  54.     case @menu_index
  55.     when 0
  56.       @command_window.contents = Bitmap.new("Graphics/menu/状态.png")
  57.     when 1
  58.       @command_window.contents = Bitmap.new("Graphics/menu/招式.png")
  59.     when 2
  60.       @command_window.contents = Bitmap.new("Graphics/menu/物品.png")
  61.     when 3
  62.       @command_window.contents = Bitmap.new("Graphics/menu/系统.png")
  63.         when 4
  64.       @command_window.contents = Bitmap.new("Graphics/menu/金钱.png")
  65.       end
  66.     #====================================================================
  67.     Graphics.transition
  68.     # 主循环
  69.     loop do
  70.       # 刷新游戏画面
  71.       Graphics.update
  72.       # 刷新输入信息
  73.       Input.update
  74.       # 刷新画面
  75.       update
  76.       # 如果切换画面就中断循环
  77.       if $scene != self
  78.         break
  79.       end
  80.     end
  81.     # 准备过渡
  82.     Graphics.freeze
  83.     # 释放窗口
  84.     @command_window.dispose
  85.    
  86.     @status_window.dispose
  87.     #@backsp2.dispose
  88.   end
  89.   #--------------------------------------------------------------------------
  90.   # ● 刷新画面
  91.   #--------------------------------------------------------------------------
  92.   def update
  93.     # 刷新窗口
  94.     @command_window.update
  95.    
  96.     #@status_window.update
  97.     #=============================================================
  98.     case @command_window.index
  99.     when 0
  100.       @command_window.contents = Bitmap.new("Graphics/menu/状态.png")
  101.     when 1
  102.       @command_window.contents = Bitmap.new("Graphics/menu/招式.png")
  103.     when 2
  104.       @command_window.contents = Bitmap.new("Graphics/menu/物品.png")
  105.     when 3
  106.       @command_window.contents = Bitmap.new("Graphics/menu/系统.png")
  107.     when 4
  108.       @command_window.contents = Bitmap.new("Graphics/menu/金钱.png")
  109.       end
  110.     #====================================================================
  111.     # 命令窗口被激活的情况下: 调用 update_command
  112.     if @command_window.active
  113.       update_command
  114.       return
  115.     end
  116.     # 状态窗口被激活的情况下: 调用 update_status
  117.     if @status_window.active
  118.       update_status
  119.       return
  120.     end
  121.   end
  122.   #--------------------------------------------------------------------------
  123.   # ● 刷新画面 (命令窗口被激活的情况下)
  124.   #--------------------------------------------------------------------------
  125.   def update_command
  126.     # 按下 B 键的情况下
  127.     if Input.trigger?(Input::B)
  128.       # 演奏取消 SE
  129.       $game_system.se_play($data_system.cancel_se)
  130.       # 切换的地图画面
  131.       $scene = Scene_Map.new
  132.       return
  133.     end
  134.     # 按下 C 键的情况下
  135.     if Input.trigger?(Input::C)
  136.       # 同伴人数为 0、存档、游戏结束以外的场合
  137.       if $game_party.actors.size == 0 and @command_window.index < 5
  138.         # 演奏冻结 SE
  139.         $game_system.se_play($data_system.buzzer_se)
  140.         return
  141.       end
  142.       # 命令窗口的光标位置分支
  143.       case @command_window.index
  144.       when 0  # 状态
  145.         # 演奏确定 SE
  146.         $game_system.se_play($data_system.decision_se)
  147.         # 激活状态窗口
  148.         @command_window.active = false
  149.         @status_window.active = true
  150.         @status_window.index = 0
  151.         
  152.       when 1  # 招式
  153.         # 演奏确定 SE
  154.         $game_system.se_play($data_system.decision_se)
  155.         # 激活状态窗口
  156.         @command_window.active = false
  157.         @status_window.active = true
  158.         @status_window.index = 0
  159.       when 2  # 物品
  160.         # 演奏确定 SE
  161.         $game_system.se_play($data_system.decision_se)
  162.         # 切换到物品画面
  163.         $scene = Scene_Menu_Item.new
  164.       when 3  # 菜单物品
  165.         # 演奏确定 SE
  166.         $game_system.se_play($data_system.decision_se)
  167.         # 切换到物品画面
  168.         $scene = Scene_Menu_System.new
  169.       when 4  # 金钱
  170. if Input.trigger?(Input::C)
  171.   @gold_window = Window_Gold.new
  172.   @gold_window.x = 210
  173.   @gold_window.y = 205
  174.     #优先级
  175.     @gold_window.z = 9999
  176.     #透明度
  177.     @gold_window.opacity = 0
  178.      $game_screen.pictures[2].show("显示金钱", 1, 320, 240, 100, 100, 255, 0)
  179.       if Input.trigger?(Input::B)
  180.         $game_screen.pictures[2].erase  
  181.       end
  182.     end
  183.       when 5   #存档
  184.         # 禁止存档的情况下
  185.         if $game_system.save_disabled
  186.           # 演奏冻结 SE
  187.           $game_system.se_play($data_system.buzzer_se)
  188.           return
  189.         end
  190.         # 演奏确定 SE
  191.         $game_system.se_play($data_system.decision_se)
  192.         # 切换到存档画面
  193.         $scene = Scene_Save.new
  194.       when 6  # 游戏结束
  195.         # 演奏确定 SE
  196.         $game_system.se_play($data_system.decision_se)
  197.         # 切换到游戏结束画面
  198.         $scene = Scene_End.new
  199.       end
  200.       return
  201.     end
  202.   end
  203.   #--------------------------------------------------------------------------
  204.   # ● 刷新画面 (状态窗口被激活的情况下)
  205.   #--------------------------------------------------------------------------
  206.   def update_status
  207.     # 按下 B 键的情况下
  208.     if Input.trigger?(Input::B)
  209.       # 演奏取消 SE
  210.       $game_system.se_play($data_system.cancel_se)
  211.       # 激活命令窗口
  212.       @command_window.active = true
  213.       @status_window.active = false
  214.       @status_window.index = -1
  215.       return
  216.     end
  217.     # 按下 C 键的情况下
  218.     if Input.trigger?(Input::C)
  219.       # 命令窗口的光标位置分支
  220.       case @command_window.index
  221.       when 0  # 状态
  222.         # 演奏确定 SE
  223.         $game_system.se_play($data_system.decision_se)
  224.         # 切换到状态画面
  225.         $scene = Scene_Status.new(@status_window.index)
  226.       when 1  # 特技
  227.         # 本角色的行动限制在 2 以上的情况下
  228.         if $game_party.actors[@status_window.index].restriction >= 2
  229.           # 演奏冻结 SE
  230.           $game_system.se_play($data_system.buzzer_se)
  231.           return
  232.         end
  233.         # 演奏确定 SE
  234.         $game_system.se_play($data_system.decision_se)
  235.         # 切换到特技画面
  236.         $scene = Scene_Skill.new(@status_window.index)
  237.       when 2  # 装备
  238.         # 演奏确定 SE
  239.         $game_system.se_play($data_system.decision_se)
  240.         # 切换的装备画面
  241.         $scene = Scene_Equip.new(@status_window.index)
  242.       when 3  # 状态
  243.         # 演奏确定 SE
  244.         $game_system.se_play($data_system.decision_se)
  245.         # 切换到状态画面
  246.         $scene = Scene_Status.new(@status_window.index)
  247.       end
  248.       return
  249.     end
  250.   end
  251. end

  252. #-------------------------物品·二级菜单--------------------------------------
  253. class Scene_Menu_Item
  254.   #--------------------------------------------------------------------------
  255.   # ● 初始化对像
  256.   #     menu_index : 命令光标的初期位置
  257.   #--------------------------------------------------------------------------
  258.   def initialize(menu_index = 0)
  259.     @menu_index = menu_index
  260.   end
  261.   #--------------------------------------------------------------------------
  262.   # ● 主处理
  263.   #--------------------------------------------------------------------------
  264.   def main
  265.     #############################
  266.     @backsp2 = Sprite.new
  267.     @backsp2.bitmap = Bitmap.new("Graphics/menu/物品.png")
  268.     @backsp2.x = 0
  269.     @backsp2.y = -20
  270.     @backsp2.z = 14
  271.     ############################
  272.    
  273.     # 生成命令窗口
  274.     @command_window = Window_Command.new(250,["装备", "物品"])
  275.     @command_window.windowskin = RPG::Cache.windowskin("nil")
  276.     @command_window.width = 800
  277.     @command_window.height = 600
  278.     @command_window.y = -16
  279.     @command_window.x = -15
  280.     @command_window.z = 12
  281.     @command_window.opacity = 0
  282.     @command_window.index = @menu_index
  283.     #================================================================
  284.     @command_window.contents = Bitmap.new("Graphics/menu/菜单物品.png")
  285.     #================================================================
  286.     # 同伴人数为 0 的情况下
  287.     # 禁止存档的情况下
  288.     # 生成金钱窗口
  289.     @gold_window = Window_Gold.new
  290.     @gold_window.x = 0
  291.     @gold_window.y = 60
  292.     @gold_window.opacity = 0
  293.     # 生成状态窗口
  294.     @status_window = Window_MenuStatus.new
  295.     # 执行过渡
  296.     #=============================================================
  297.     case @menu_index
  298.     when 0
  299.       @command_window.contents = Bitmap.new("Graphics/menu/菜单物品.png")
  300.     when 1
  301.       @command_window.contents = Bitmap.new("Graphics/menu/菜单装备.png")
  302.     end
  303.     #====================================================================
  304.     Graphics.transition
  305.     # 主循环
  306.     loop do
  307.       # 刷新游戏画面
  308.       Graphics.update
  309.       # 刷新输入信息
  310.       Input.update
  311.       # 刷新画面
  312.       update
  313.       # 如果切换画面就中断循环
  314.       if $scene != self
  315.         break
  316.       end
  317.     end
  318.     # 准备过渡
  319.     Graphics.freeze
  320.     # 释放窗口
  321.     @command_window.dispose
  322.     @gold_window.dispose
  323.     @status_window.dispose
  324.     @backsp2.dispose
  325.   end
  326.   #--------------------------------------------------------------------------
  327.   # ● 刷新画面
  328.   #--------------------------------------------------------------------------
  329.   def update
  330.     # 刷新窗口
  331.     @command_window.update
  332.     @gold_window.update
  333.     @status_window.update
  334.     #=============================================================
  335.     case @command_window.index
  336.     when 0
  337.       @command_window.contents = Bitmap.new("Graphics/menu/菜单物品.png")
  338.     when 1
  339.       @command_window.contents = Bitmap.new("Graphics/menu/菜单装备.png")
  340.     end
  341.     #====================================================================
  342.     # 命令窗口被激活的情况下: 调用 update_command
  343.     if @command_window.active
  344.       update_command
  345.       return
  346.     end
  347.     # 状态窗口被激活的情况下: 调用 update_status
  348.     if @status_window.active
  349.       update_status
  350.       return
  351.     end
  352.   end
  353.   #--------------------------------------------------------------------------
  354.   # ● 刷新画面 (命令窗口被激活的情况下)
  355.   #--------------------------------------------------------------------------
  356.   def update_command
  357.     # 按下 B 键的情况下
  358.     if Input.trigger?(Input::B)
  359.       # 演奏取消 SE
  360.       $game_system.se_play($data_system.cancel_se)
  361.       # 切换的地图画面
  362.       $scene = Scene_Menu.new(2)
  363.       return
  364.     end
  365.     # 按下 C 键的情况下
  366.     if Input.trigger?(Input::C)
  367.       # 同伴人数为 0、存档、游戏结束以外的场合
  368.       if $game_party.actors.size == 0 and @command_window.index < 5
  369.         # 演奏冻结 SE
  370.         $game_system.se_play($data_system.buzzer_se)
  371.         return
  372.       end
  373.       # 命令窗口的光标位置分支
  374.       case @command_window.index
  375.       when 0  # 物品
  376.          # 演奏确定 SE
  377.         $game_system.se_play($data_system.decision_se)
  378.         # 切换到物品画面
  379.         $scene = Scene_Item.new
  380.       when 1  # 装备
  381.         # 演奏确定 SE
  382.         $game_system.se_play($data_system.decision_se)
  383.         # 激活状态窗口
  384.         @command_window.active = false
  385.         @status_window.active = true
  386.         @status_window.index = 0
  387.       end
  388.       return
  389.     end
  390.   end
  391.   #--------------------------------------------------------------------------
  392.   # ● 刷新画面 (状态窗口被激活的情况下)
  393.   #--------------------------------------------------------------------------
  394.   def update_status
  395.     # 按下 B 键的情况下
  396.     if Input.trigger?(Input::B)
  397.       # 演奏取消 SE
  398.       $game_system.se_play($data_system.cancel_se)
  399.       # 激活命令窗口
  400.       @command_window.active = true
  401.       @status_window.active = false
  402.       @status_window.index = -1
  403.       return
  404.     end
  405.     # 按下 C 键的情况下
  406.     if Input.trigger?(Input::C)
  407.       # 命令窗口的光标位置分支
  408.       case @command_window.index
  409.       when 1  # 特技
  410.         # 演奏确定 SE
  411.         $game_system.se_play($data_system.decision_se)
  412.         # 切换的装备画面
  413.         $scene = Scene_Equip.new(@status_window.index)
  414.       end
  415.       return
  416.     end
  417.   end
  418. end
  419. #-------------------------系统·二级菜单--------------------------------------
  420. class Scene_Menu_System
  421.   #--------------------------------------------------------------------------
  422.   # ● 初始化对像
  423.   #     menu_index : 命令光标的初期位置
  424.   #--------------------------------------------------------------------------
  425.   def initialize(menu_index = 0)
  426.     @menu_index = menu_index
  427.   end
  428.   #--------------------------------------------------------------------------
  429.   # ● 主处理
  430.   #--------------------------------------------------------------------------
  431.   def main
  432.     #############################
  433.     @backsp2 = Sprite.new
  434.     @backsp2.bitmap = Bitmap.new("Graphics/menu/系统.png")
  435.     @backsp2.x = 0
  436.     @backsp2.y = 0
  437.     @backsp2.z = 10
  438.     ############################
  439.     # 生成命令窗口
  440.     @command_window = Window_Command.new(250,["存储", "读取","离开"])
  441.     @command_window.windowskin = RPG::Cache.windowskin("nil")
  442.     @command_window.width = 800
  443.     @command_window.height = 600
  444.     @command_window.y = -16
  445.     @command_window.x = -15
  446.     @command_window.z = 13
  447.     @command_window.opacity = 0
  448.     @command_window.index = @menu_index
  449.     #================================================================
  450.     @command_window.contents = Bitmap.new("Graphics/menu/储存.png")
  451.     #================================================================
  452.     # 生成金钱窗口
  453.     @gold_window = Window_Gold.new
  454.     @gold_window.x = 0
  455.     @gold_window.y = 60
  456.     @gold_window.opacity = 0
  457.     # 执行过渡
  458.     #=============================================================
  459.     case @menu_index
  460.     when 0
  461.       @command_window.contents = Bitmap.new("Graphics/menu/储存.png")
  462.     when 1
  463.       @command_window.contents = Bitmap.new("Graphics/menu/读取.png")
  464.     when 2
  465.       @command_window.contents = Bitmap.new("Graphics/menu/离开.png")
  466.     end
  467.     #====================================================================
  468.     Graphics.transition
  469.     # 主循环
  470.     loop do
  471.       # 刷新游戏画面
  472.       Graphics.update
  473.       # 刷新输入信息
  474.       Input.update
  475.       # 刷新画面
  476.       update
  477.       # 如果切换画面就中断循环
  478.       if $scene != self
  479.         break
  480.       end
  481.     end
  482.     # 准备过渡
  483.     Graphics.freeze
  484.     # 释放窗口
  485.     @command_window.dispose
  486.     @gold_window.dispose
  487.     @backsp2.dispose
  488.   end
  489.   #--------------------------------------------------------------------------
  490.   # ● 刷新画面
  491.   #--------------------------------------------------------------------------
  492.   def update
  493.     # 刷新窗口
  494.     @command_window.update
  495.     @gold_window.update
  496.     #=============================================================
  497.     case @command_window.index
  498.     when 0
  499.       @command_window.contents = Bitmap.new("Graphics/menu/储存.png")
  500.     when 1
  501.       @command_window.contents = Bitmap.new("Graphics/menu/读取.png")
  502.     when 2
  503.       @command_window.contents = Bitmap.new("Graphics/menu/离开.png")
  504.     end
  505.     #====================================================================
  506.     # 命令窗口被激活的情况下: 调用 update_command
  507.     if @command_window.active
  508.       update_command
  509.       return
  510.     end
  511.     # 状态窗口被激活的情况下: 调用 update_status
  512.     if @status_window.active
  513.       update_status
  514.       return
  515.     end
  516.   end
  517.   #--------------------------------------------------------------------------
  518.   # ● 刷新画面 (命令窗口被激活的情况下)
  519.   #--------------------------------------------------------------------------
  520.   def update_command
  521.     # 按下 B 键的情况下
  522.     if Input.trigger?(Input::B)
  523.       # 演奏取消 SE
  524.       $game_system.se_play($data_system.cancel_se)
  525.       # 切换的地图画面
  526.       $scene = Scene_Menu.new(3)
  527.       return
  528.     end
  529.     # 按下 C 键的情况下
  530.     if Input.trigger?(Input::C)
  531.       # 同伴人数为 0、存档、游戏结束以外的场合
  532.       if $game_party.actors.size == 0 and @command_window.index < 5
  533.         # 演奏冻结 SE
  534.         $game_system.se_play($data_system.buzzer_se)
  535.         return
  536.       end
  537.       # 命令窗口的光标位置分支
  538.       case @command_window.index
  539.       when 0  # 存储
  540.         if $game_system.save_disabled
  541.           # 演奏冻结 SE
  542.           $game_system.se_play($data_system.buzzer_se)
  543.           return
  544.         end
  545.          # 演奏确定 SE
  546.         $game_system.se_play($data_system.decision_se)
  547.         $scene = Scene_Save.new
  548.       when 1  # 读取
  549.          # 演奏确定 SE
  550.         $game_system.se_play($data_system.decision_se)
  551.         $scene = Scene_Load.new
  552.       when 2  # 离开
  553.          # 演奏确定 SE
  554.         $game_system.se_play($data_system.decision_se)
  555.         $scene = nil
  556.       end
  557.       return
  558.     end
  559.   end
  560. end
复制代码


keshom于2011-1-26 12:34补充以下内容:
顶一下,怎么还没有人回答呢?
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

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

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

GMT+8, 2025-7-21 13:58

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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