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

Project1

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

[已经解决] 每天一问,这里传送的脚本怎么把背景透明掉?

[复制链接]

Lv1.梦旅人

梦石
0
星屑
70
在线时间
187 小时
注册时间
2006-9-3
帖子
175
跳转到指定楼层
1
发表于 2012-4-18 23:08:13 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 he11120 于 2012-4-18 23:35 编辑

如图,右边黑黑的变透明,能看见地图的那种!(好久没来提问好不习惯)
  1. #==============================================================================
  2. # 本脚本来自[url]www.66RPG.com[/url],使用和转载请保留此信息
  3. #==============================================================================
  4. #$scene = Scene_Fei.new
  5. #===============================================================
  6. # ■ Scene_Fei
  7. #------------------------------------------------------------------------------
  8. #  处理传送画面的类。
  9. #===============================================================
  10. class Window_Money < Window_Base
  11.   #--------------------------------------------------------------------------
  12.   # ● 初始化窗口
  13.   #--------------------------------------------------------------------------
  14.   def initialize
  15.     super(320, 1, 320, 64)
  16.     self.contents = Bitmap.new(width - 32, height - 32)
  17.     self.contents.clear
  18.     self.contents.font.color = normal_color
  19.     self.contents.draw_text(15, 0, 640, 32, "金钱不足!", 0)
  20.   end
  21. end

  22. class Window_No < Window_Base
  23.   #--------------------------------------------------------------------------
  24.   # ● 初始化窗口
  25.   #--------------------------------------------------------------------------
  26.   def initialize
  27.     super(320, 1, 320, 64)
  28.     self.contents = Bitmap.new(width - 32, height - 32)
  29.     self.contents.clear
  30.     self.contents.font.color = normal_color
  31.     self.contents.draw_text(15, 0, 640, 32, "等级不够,还是先练级吧。", 0)
  32.   end
  33. end

  34. class Scene_Fei
  35.   #include OPACITY_66RPG
  36.   #--------------------------------------------------------------------------
  37.   # ● 初始化对像
  38.   #     menu_index : 命令光标的初期位置
  39.   #--------------------------------------------------------------------------
  40.   def initialize(menu_index = 0)
  41.     @menu_index = menu_index
  42.   end
  43.   #--------------------------------------------------------------------------
  44.   # ● 主处理
  45.   #--------------------------------------------------------------------------
  46.   def main
  47.     #create_screen
  48.     # 生成命令窗口
  49.     s1 = "勇者大陆 需要等级:10 费用:1000金币"
  50.     s2 = "仙踪林   需要等级:10 费用:1000金币"
  51.     s3 = "冰风谷   需要等级:25 费用:1000金币"
  52.     s4 = "村4  费用:1000金币"
  53.     s5 = "村5  费用:2000金币"
  54.     s6 = "村6  费用:3000金币"
  55.     s7 = "村7  费用:3000金币"
  56.     s8 = "村8  费用:5000金币"
  57.     s9 = "村9  费用:5000金币"
  58.     s10 = "村10  费用:5000金币"
  59.     s11 = "村10  费用:5000金币"
  60.     s12 = "村10  费用:5000金币"
  61.     s13 = "村10  费用:5000金币"
  62.     s14 = "村10  费用:5000金币"  # 如果有更多的地图在这里添加按钮.
  63.     @command_window = Window_Command.new(320, [s1, s2, s3, s4, s5, s6,s7,s8,s9,s10,s11,s12,s13,s14]) #对应上面
  64.     @command_window.index = @menu_index
  65.     @command_window.opacity = 255
  66.     # 生成不够钱窗口
  67.     @money_window = Window_Money.new
  68.     @money_window.visible = false
  69.     # 生面未探索窗口
  70.     @no_window = Window_No.new
  71.     @no_window.visible = false
  72.     # 生成金钱窗口
  73.     @gold_window = Window_Gold.new
  74.     @gold_window.x = 320
  75.     @gold_window.y = 415
  76.     @gold_window.width = 320
  77.     # 执行过渡
  78.     Graphics.transition
  79.     # 主循环
  80.     loop do
  81.       # 刷新游戏画面
  82.       Graphics.update
  83.       # 刷新输入信息
  84.       Input.update
  85.       # 刷新画面
  86.       update
  87.       # 如果切换画面就中断循环
  88.       if $scene != self
  89.         break
  90.       end
  91.     end
  92.     # 准备过渡
  93.     Graphics.freeze
  94.     # 释放窗口
  95.     @command_window.dispose
  96.     @money_window.dispose
  97.     @no_window.dispose
  98.     @gold_window.dispose
  99.     #dispose_screen
  100.   end
  101.   #--------------------------------------------------------------------------
  102.   # ● 传送
  103.   #--------------------------------------------------------------------------
  104.   def Fei_item(id,money,mapid,x,y)
  105.     @id = id
  106.     @money = money
  107.     @mapid = mapid
  108.     @x = x
  109.     @y = y
  110.       if $game_switches[@id] == true  #如果觉得开关保贵那就把这句换成 $game_variables[编号] == 数值
  111.         if $game_party.gold > @money
  112.           $game_system.se_play($data_system.decision_se)
  113.           $game_party.gain_gold(-@money)
  114.           $game_map.setup(@mapid)
  115.           $game_player.moveto(@x,@y)
  116.           $game_player.refresh
  117.           $game_map.autoplay
  118.           $game_map.update
  119.           $scene = Scene_Map.new
  120.         else
  121.           $game_system.se_play($data_system.buzzer_se)
  122.           @money_window.visible = true
  123.           @command_window.active = false
  124.         end
  125.       else
  126.           $game_system.se_play($data_system.buzzer_se)
  127.           @no_window.visible = true
  128.           @command_window.active = false
  129.       end
  130.   end
  131.   #--------------------------------------------------------------------------
  132.   # ● 刷新画面
  133.   #--------------------------------------------------------------------------
  134.   def update
  135.     # 刷新窗口
  136.     @command_window.update
  137.     @gold_window.update
  138.     # 命令窗口被激活的情况下: 调用 update_command
  139.     if @command_window.active
  140.       update_command
  141.       return
  142.     end
  143.     if @money_window.visible
  144.       update_money
  145.       return
  146.     end
  147.     if @no_window.visible
  148.       update_no
  149.       return
  150.     end
  151.   end
  152.   #--------------------------------------------------------------------------
  153.   # ● 刷新画面 (命令窗口被激活的情况下)
  154.   #--------------------------------------------------------------------------
  155.   def update_command
  156.     # 按下 B 键的情况下
  157.     if Input.trigger?(Input::B)
  158.       # 演奏取消 SE
  159.       $game_system.se_play($data_system.cancel_se)
  160.       # 切换的地图画面
  161.       $scene = Scene_Map.new
  162.       return
  163.     end
  164.     # 按下 C 键的情况下
  165.     if Input.trigger?(Input::C)
  166.       # 命令窗口的光标位置分支
  167.       case @command_window.index
  168.         when 0
  169.           Fei_item(51,1000,3,22,16)   #这里就是传送的函数调用  Fei_item(开关,钱,地图ID,X坐标,Y坐标)
  170.         when 1
  171.           Fei_item(52,1000,32,9,30)      
  172.         when 2
  173.           Fei_item(53,1000,32,9,30)
  174.         when 3
  175.           Fei_item(54,1000,32,9,30)
  176.         when 4
  177.           Fei_item(55,1000,32,9,30)
  178.         when 5
  179.           Fei_item(56,1000,32,9,30)
  180.         when 6
  181.           Fei_item(57,1000,32,9,30)
  182.         when 7
  183.           Fei_item(58,1000,32,9,30)
  184.         when 8
  185.           Fei_item(59,1000,32,9,30)
  186.         when 9
  187.           Fei_item(60,1000,32,9,30)
  188.         when 10
  189.           Fei_item(58,1000,32,9,30)
  190.         when 11
  191.           Fei_item(59,1000,32,9,30)
  192.         when 12
  193.           Fei_item(60,1000,32,9,30)#如果上面添加多了按钮,这里也得添加.  相应复制就可以了.
  194.         when 13
  195.           Fei_item(60,1000,32,9,30)
  196.          when 14
  197.           Fei_item(60,1000,32,9,30)
  198.           end
  199.       return
  200.     end
  201.   end
  202.   #--------------------------------------------------------------------------
  203.   # ● 刷新画面
  204.   #--------------------------------------------------------------------------
  205.   def update_money
  206.     if Input.trigger?(Input::B)
  207.       $game_system.se_play($data_system.cancel_se)
  208.       @money_window.visible = false
  209.       @command_window.active = true
  210.       return
  211.     end
  212.     if Input.trigger?(Input::C)
  213.       $game_system.se_play($data_system.cancel_se)
  214.       @money_window.visible = false
  215.       @command_window.active = true
  216.       return
  217.     end
  218.   end
  219.   #--------------------------------------------------------------------------
  220.   # ● 刷新画面
  221.   #--------------------------------------------------------------------------
  222.   def update_no
  223.     if Input.trigger?(Input::B)
  224.       $game_system.se_play($data_system.cancel_se)
  225.       @no_window.visible = false
  226.       @command_window.active = true
  227.       return
  228.     end
  229.     if Input.trigger?(Input::C)
  230.       $game_system.se_play($data_system.cancel_se)
  231.       @no_window.visible = false
  232.       @command_window.active = true
  233.       return
  234.     end
  235.   end
  236. end
复制代码
...........

Lv1.梦旅人

梦石
0
星屑
55
在线时间
461 小时
注册时间
2008-11-19
帖子
607
2
发表于 2012-4-18 23:24:17 | 只看该作者
本帖最后由 sai90306 于 2012-4-19 00:27 编辑

幫您改好了 請用用看
RUBY 代码复制
  1. #==============================================================================
  2. # 本脚本来自[url]www.66RPG.com[/url],使用和转载请保留此信息
  3. #==============================================================================
  4. #$scene = Scene_Fei.new
  5. #===============================================================
  6. # ■ Scene_Fei
  7. #------------------------------------------------------------------------------
  8. #  处理传送画面的类。
  9. #===============================================================
  10. class Window_Money < Window_Base
  11.   #--------------------------------------------------------------------------
  12.   # ● 初始化窗口
  13.   #--------------------------------------------------------------------------
  14.   def initialize
  15.     super(320, 1, 320, 64)
  16.     self.contents = Bitmap.new(width - 32, height - 32)
  17.     self.contents.clear
  18.     self.contents.font.color = normal_color
  19.     self.contents.draw_text(15, 0, 640, 32, "金钱不足!", 0)
  20.   end
  21. end
  22.  
  23. class Window_No < Window_Base
  24.   #--------------------------------------------------------------------------
  25.   # ● 初始化窗口
  26.   #--------------------------------------------------------------------------
  27.   def initialize
  28.     super(320, 1, 320, 64)
  29.     self.contents = Bitmap.new(width - 32, height - 32)
  30.     self.contents.clear
  31.     self.contents.font.color = normal_color
  32.     self.contents.draw_text(15, 0, 640, 32, "等级不够,还是先练级吧。", 0)
  33.   end
  34. end
  35.  
  36. class Scene_Fei
  37.   #include OPACITY_66RPG
  38.   #--------------------------------------------------------------------------
  39.   # ● 初始化对像
  40.   #     menu_index : 命令光标的初期位置
  41.   #--------------------------------------------------------------------------
  42.   def initialize(menu_index = 0)
  43.     @menu_index = menu_index
  44.   end
  45.   #--------------------------------------------------------------------------
  46.   # ● 主处理
  47.   #--------------------------------------------------------------------------
  48.   def main
  49.     @back_map = Spriteset_Map.new
  50.  
  51.     #create_screen
  52.     # 生成命令窗口
  53.     s1 = "勇者大陆 需要等级:10 费用:1000金币"
  54.     s2 = "仙踪林   需要等级:10 费用:1000金币"
  55.     s3 = "冰风谷   需要等级:25 费用:1000金币"
  56.     s4 = "村4  费用:1000金币"
  57.     s5 = "村5  费用:2000金币"
  58.     s6 = "村6  费用:3000金币"
  59.     s7 = "村7  费用:3000金币"
  60.     s8 = "村8  费用:5000金币"
  61.     s9 = "村9  费用:5000金币"
  62.     s10 = "村10  费用:5000金币"
  63.     s11 = "村10  费用:5000金币"
  64.     s12 = "村10  费用:5000金币"
  65.     s13 = "村10  费用:5000金币"
  66.     s14 = "村10  费用:5000金币"  # 如果有更多的地图在这里添加按钮.
  67.     @command_window = Window_Command.new(320, [s1, s2, s3, s4, s5, s6,s7,s8,s9,s10,s11,s12,s13,s14]) #对应上面
  68.     @command_window.index = @menu_index
  69.     @command_window.opacity = 150
  70.     # 生成不够钱窗口
  71.     @money_window = Window_Money.new
  72.     @money_window.visible = false
  73.     # 生面未探索窗口
  74.     @no_window = Window_No.new
  75.     @no_window.visible = false
  76.     # 生成金钱窗口
  77.     @gold_window = Window_Gold.new
  78.     @gold_window.x = 320
  79.     @gold_window.y = 415
  80.     @gold_window.width = 320
  81.     # 执行过渡
  82.     Graphics.transition
  83.     # 主循环
  84.     loop do
  85.       # 刷新游戏画面
  86.       Graphics.update
  87.       # 刷新输入信息
  88.       Input.update
  89.       # 刷新画面
  90.       update
  91.       # 如果切换画面就中断循环
  92.       if $scene != self
  93.         break
  94.       end
  95.     end
  96.     # 准备过渡
  97.     Graphics.freeze
  98.     # 释放窗口
  99.     @command_window.dispose
  100.     @money_window.dispose
  101.     @no_window.dispose
  102.     @gold_window.dispose
  103.     #dispose_screen
  104.     @back_map.dispose
  105.   end
  106.   #--------------------------------------------------------------------------
  107.   # ● 传送
  108.   #--------------------------------------------------------------------------
  109.   def Fei_item(id,money,mapid,x,y)
  110.     @id = id
  111.     @money = money
  112.     @mapid = mapid
  113.     @x = x
  114.     @y = y
  115.       if $game_switches[@id] == true  #如果觉得开关保贵那就把这句换成 $game_variables[编号] == 数值
  116.         if $game_party.gold > @money
  117.           $game_system.se_play($data_system.decision_se)
  118.           $game_party.gain_gold(-@money)
  119.           $game_map.setup(@mapid)
  120.           $game_player.moveto(@x,@y)
  121.           $game_player.refresh
  122.           $game_map.autoplay
  123.           $game_map.update
  124.           $scene = Scene_Map.new
  125.         else
  126.           $game_system.se_play($data_system.buzzer_se)
  127.           @money_window.visible = true
  128.           @command_window.active = false
  129.         end
  130.       else
  131.           $game_system.se_play($data_system.buzzer_se)
  132.           @no_window.visible = true
  133.           @command_window.active = false
  134.       end
  135.   end
  136.   #--------------------------------------------------------------------------
  137.   # ● 刷新画面
  138.   #--------------------------------------------------------------------------
  139.   def update
  140.     # 刷新窗口
  141.     @command_window.update
  142.     @gold_window.update
  143.     # 命令窗口被激活的情况下: 调用 update_command
  144.     if @command_window.active
  145.       update_command
  146.       return
  147.     end
  148.     if @money_window.visible
  149.       update_money
  150.       return
  151.     end
  152.     if @no_window.visible
  153.       update_no
  154.       return
  155.     end
  156.   end
  157.   #--------------------------------------------------------------------------
  158.   # ● 刷新画面 (命令窗口被激活的情况下)
  159.   #--------------------------------------------------------------------------
  160.   def update_command
  161.     # 按下 B 键的情况下
  162.     if Input.trigger?(Input::B)
  163.       # 演奏取消 SE
  164.       $game_system.se_play($data_system.cancel_se)
  165.       # 切换的地图画面
  166.       $scene = Scene_Map.new
  167.       return
  168.     end
  169.     # 按下 C 键的情况下
  170.     if Input.trigger?(Input::C)
  171.       # 命令窗口的光标位置分支
  172.       case @command_window.index
  173.         when 0
  174.           Fei_item(51,1000,3,22,16)   #这里就是传送的函数调用  Fei_item(开关,钱,地图ID,X坐标,Y坐标)
  175.         when 1
  176.           Fei_item(52,1000,32,9,30)      
  177.         when 2
  178.           Fei_item(53,1000,32,9,30)
  179.         when 3
  180.           Fei_item(54,1000,32,9,30)
  181.         when 4
  182.           Fei_item(55,1000,32,9,30)
  183.         when 5
  184.           Fei_item(56,1000,32,9,30)
  185.         when 6
  186.           Fei_item(57,1000,32,9,30)
  187.         when 7
  188.           Fei_item(58,1000,32,9,30)
  189.         when 8
  190.           Fei_item(59,1000,32,9,30)
  191.         when 9
  192.           Fei_item(60,1000,32,9,30)
  193.         when 10
  194.           Fei_item(58,1000,32,9,30)
  195.         when 11
  196.           Fei_item(59,1000,32,9,30)
  197.         when 12
  198.           Fei_item(60,1000,32,9,30)#如果上面添加多了按钮,这里也得添加.  相应复制就可以了.
  199.         when 13
  200.           Fei_item(60,1000,32,9,30)
  201.          when 14
  202.           Fei_item(60,1000,32,9,30)
  203.           end
  204.       return
  205.     end
  206.   end
  207.   #--------------------------------------------------------------------------
  208.   # ● 刷新画面
  209.   #--------------------------------------------------------------------------
  210.   def update_money
  211.     if Input.trigger?(Input::B)
  212.       $game_system.se_play($data_system.cancel_se)
  213.       @money_window.visible = false
  214.       @command_window.active = true
  215.       return
  216.     end
  217.     if Input.trigger?(Input::C)
  218.       $game_system.se_play($data_system.cancel_se)
  219.       @money_window.visible = false
  220.       @command_window.active = true
  221.       return
  222.     end
  223.   end
  224.   #--------------------------------------------------------------------------
  225.   # ● 刷新画面
  226.   #--------------------------------------------------------------------------
  227.   def update_no
  228.     if Input.trigger?(Input::B)
  229.       $game_system.se_play($data_system.cancel_se)
  230.       @no_window.visible = false
  231.       @command_window.active = true
  232.       return
  233.     end
  234.     if Input.trigger?(Input::C)
  235.       $game_system.se_play($data_system.cancel_se)
  236.       @no_window.visible = false
  237.       @command_window.active = true
  238.       return
  239.     end
  240.   end
  241. end
���

点评

受教!下次再来~~嘿嘿  发表于 2012-4-19 01:14
其實只是在你原代碼的"def main"下面加一行" @back_map = Spriteset_Map.new" 然後再"#dispose_screen"下面加一行"@back_map.dispose" 而已   发表于 2012-4-19 00:26
back_sprite.opacity = 0?  发表于 2012-4-19 00:08
啊对,你真聪明。  发表于 2012-4-18 23:32
...LZ要改的該不會是後面的那一大塊黑色?  发表于 2012-4-18 23:29
回复

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
130
在线时间
0 小时
注册时间
2012-4-19
帖子
2
3
发表于 2012-4-19 15:16:51 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-9-24 13:17

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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