Project1

标题: 关于窗口 [打印本页]

作者: 夏季冰川    时间: 2009-10-18 14:13
标题: 关于窗口
在Window_Status里缩小窗口大小后:
super(60, 40, 520, 400)
按下Esc后窗口背后就出了这个黑屏,请问如何把这个黑屏变成地图背景

作者: 奶油Da蛋糕    时间: 2009-10-18 14:15
本帖最后由 奶油Da蛋糕 于 2009-10-18 14:16 编辑
  1. class Scene_Status < Scene_Base
  2. alias main_cake main
  3. def main
  4. @spriteset = Spriteset_Map.new
  5. main_cake
  6. @spriteset.dispose
  7. end
  8. end
复制代码
插入在脚本编辑器的MAIN前
作者: 悠悠炸弹    时间: 2009-10-18 14:17
本帖最后由 悠悠炸弹 于 2009-10-18 14:18 编辑

在main的下边生成spriteset就行了~
别忘了释放

def main
   # 生成地图窗口
   @spriteset = Spriteset_Map.new
--------------------省略----------------------
# 释放地图窗口
   @spriteset.dispose
end

--------------------------------很长的分割线---------------------------
啊~被抢沙发了..........
算了- -
作者: 夏季冰川    时间: 2009-10-18 14:23
蛋糕的那个报错:

作者: 「旅」    时间: 2009-10-18 14:27
0.0蛋糕把VX掺进来了……去掉 < Scene_Base试试。
作者: 夏季冰川    时间: 2009-10-18 14:30
嗯,谢谢,解决了。
作者: 悠悠炸弹    时间: 2009-10-18 14:31
偶还是觉得修改默认脚本比外挂的好........................
作者: 夏季冰川    时间: 2009-10-18 14:33
偶还是觉得修改默认脚本比外挂的好........................
悠悠炸弹 发表于 2009-10-18 14:31

你那个,我好像用不了,是在main后面插入?那怎么运行?
作者: 悠悠炸弹    时间: 2009-10-18 14:38
本帖最后由 悠悠炸弹 于 2009-10-18 14:42 编辑

不是插入main前边,而是直接对Scene_Status进行修改..................
对了,如果你其他窗口也想有地图背景的,也可以这样改
基本上都是修改Scene_XXX的.
把整段Scene_Status贴出来,其实就是多加了那两句.
  1. #==============================================================================
  2. # ■ Scene_Status
  3. #------------------------------------------------------------------------------
  4. #  处理状态画面的类。
  5. #==============================================================================

  6. class Scene_Status
  7.   #--------------------------------------------------------------------------
  8.   # ● 初始化对像
  9.   #     actor_index : 角色索引
  10.   #--------------------------------------------------------------------------
  11.   def initialize(actor_index = 0, equip_index = 0)
  12.     @actor_index = actor_index
  13.   end
  14.   #--------------------------------------------------------------------------
  15.   # ● 主处理
  16.   #--------------------------------------------------------------------------
  17.   def main
  18.     # 生成地图窗口★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
  19.     @spriteset = Spriteset_Map.new
  20.     # 获取角色
  21.     @actor = $game_party.actors[@actor_index]
  22.     # 生成状态窗口
  23.     @status_window = Window_Status.new(@actor)
  24.     # 执行过渡
  25.     Graphics.transition
  26.     # 主循环
  27.     loop do
  28.       # 刷新游戏画面
  29.       Graphics.update
  30.       # 刷新输入信息
  31.       Input.update
  32.       # 刷新画面
  33.       update
  34.       # 如果画面被切换的话就中断循环
  35.       if $scene != self
  36.         break
  37.       end
  38.     end
  39.     # 准备过渡
  40.     Graphics.freeze
  41.     # 释放窗口
  42.     @status_window.dispose
  43.     # 释放地图窗口★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
  44.    @spriteset.dispose
  45.   end
  46.   #--------------------------------------------------------------------------
  47.   # ● 刷新画面
  48.   #--------------------------------------------------------------------------
  49.   def update
  50.     # 按下 B 键的情况下
  51.     if Input.trigger?(Input::B)
  52.       # 演奏取消 SE
  53.       $game_system.se_play($data_system.cancel_se)
  54.       # 切换到菜单画面
  55.       $scene = Scene_Menu.new(3)
  56.       return
  57.     end
  58.     # 按下 R 键的情况下
  59.     if Input.trigger?(Input::R)
  60.       # 演奏光标 SE
  61.       $game_system.se_play($data_system.cursor_se)
  62.       # 移至下一位角色
  63.       @actor_index += 1
  64.       @actor_index %= $game_party.actors.size
  65.       # 切换到别的状态画面
  66.       $scene = Scene_Status.new(@actor_index)
  67.       return
  68.     end
  69.     # 按下 L 键的情况下
  70.     if Input.trigger?(Input::L)
  71.       # 演奏光标 SE
  72.       $game_system.se_play($data_system.cursor_se)
  73.       # 移至上一位角色
  74.       @actor_index += $game_party.actors.size - 1
  75.       @actor_index %= $game_party.actors.size
  76.       # 切换到别的状态画面
  77.       $scene = Scene_Status.new(@actor_index)
  78.       return
  79.     end
  80.   end
  81. end
复制代码

作者: 夏季冰川    时间: 2009-10-18 14:44
9# 悠悠炸弹
这样不行,黑框还在.
作者: 悠悠炸弹    时间: 2009-10-18 14:51
本帖最后由 悠悠炸弹 于 2009-10-18 14:53 编辑

为啥我没问题=_=|||

QQ截图未命名.PNG (47.13 KB, 下载次数: 2)

QQ截图未命名.PNG

作者: 牛肉面    时间: 2009-10-18 14:52
啊,那个头盔,那个枪,好熟悉,我就有
作者: 夏季冰川    时间: 2009-10-18 14:54
本帖最后由 夏季冰川 于 2009-10-18 14:55 编辑

12# 牛肉面
冒险岛的icon,766就有下载.

9# 悠悠炸弹
不好意思,刚才你在编辑的时候打快了,谢谢,可以了.
作者: tommay    时间: 2009-10-18 14:54
建议好好看看“半透明菜单”的脚本
作者: 凌辰    时间: 2009-10-18 15:00
我怎么记得前几天我刚刚解答过这个问题……
悠悠说的没错,其实就是多加了2句而已。

置顶资源贴里的《新人学RGSS大集合》里有这个内容。
作者: 夏季冰川    时间: 2009-10-18 15:00
14# tommay
谢谢,找到这一段了:
  1. module XRXS_MP7_Module
  2.   def create_spriteset
  3.     @spriteset = Spriteset_Map.new
  4.   end
  5.   def dispose_spriteset
  6.     @spriteset.dispose
  7.   end
  8. end
复制代码

作者: tommay    时间: 2009-10-18 15:15
16# 夏季冰川


不仅如此,还有上面的alias;include
要是真正看透看懂了,以后遇到这种问题尽可以举一反三,学到的知识远比解决一个具体问题来得多得多
作者: 夏季冰川    时间: 2009-10-18 15:26
17# tommay
谢谢,如果我能看懂就好了,F1我看了不下5遍,6R上学脚本的教程看了很多版本,但是关
于能不能看懂,还是跟个人有关.
作者: tommay    时间: 2009-10-18 16:01
18# 夏季冰川


看不懂就问嘛,有关脚本语法方面的问题我想很多人愿意回答吧,最起码我就比较喜欢




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1