Project1

标题: 设置战斗背景图片后,游戏总是在2-3场战斗之后停止响应 [打印本页]

作者: 风雨之神    时间: 2012-1-21 12:16
标题: 设置战斗背景图片后,游戏总是在2-3场战斗之后停止响应


战斗背景是按照如下脚本设置的,就是添加区域,区域名与背景图片名相同即可。
但添加了这个脚本之后,每次运行游戏,都会在2-3场战斗之后以上图的情况停止响应。
这个如何解决?
我的电脑是酷睿T6400CPU,3G内存,09年7月装的win7偷跑版
  1. #==============================================================================
  2. # 随机渐变,区域控制战斗背景图 by 沉影不器
  3. #------------------------------------------------------------------------------
  4. # 功能描述: ① 使用区域名称定义不同的战斗背景图
  5. #              如果没有找到背景图,则使用RMVX默认眩晕背景
  6. #           ② 进入战斗时,随机使用渐变效果
  7. # 使用方法: ① 复制脚本,插入到Main之前
  8. #           ② 在Graphics文件夹下新建Battlebacks文件夹用于存放战斗背景图
  9. #              您也可以在脚本第16行自行设定路径
  10. #           ③ 准备与区域名称相同的战斗背景图到您设定的战斗背景图文件夹内
  11. #           ④ 在Graphics文件夹下新建Transitions文件夹用于存放渐变图
  12. #              您也可以在脚本第17行自行设定路径
  13. #           ⑤ 在脚本第18行设定战斗背景图的后缀名
  14. #           ⑥ 在脚本第19行设定是否直接用地图做战斗图
  15. #------------------------------------------------------------------------------
  16.   B_PATH = "Graphics/Battlebacks/"      # 设定战斗背景图存储路径
  17.   T_PATH = "Graphics/Transitions/"      # 设定渐变图存储路径
  18.   EXTNAME = ".jpg"                      # 设定战斗背景图后缀名
  19.   DIRECT_MAP = false                    # 设定是否直接用地图做战斗图
  20. #==============================================================================
  21. module Cache
  22.   #--------------------------------------------------------------------------
  23.   # ● 获取战斗背景图
  24.   #     filename : 文件名
  25.   #     hue      : 色相变化值
  26.   #--------------------------------------------------------------------------
  27.   def self.battleback(filename, hue)
  28.     load_bitmap(B_PATH, filename, hue)
  29.   end
  30. end

  31. #==============================================================================
  32. # ■ Spriteset_Battle
  33. #------------------------------------------------------------------------------
  34. #  处理战斗画面的活动块的类。本类在 Scene_Battle 类
  35. # 的内部使用。
  36. #==============================================================================
  37. class Spriteset_Battle
  38.   #--------------------------------------------------------------------------
  39.   # ● 生成战斗背景活动块
  40.   #--------------------------------------------------------------------------
  41. def create_battleback
  42.    for area in $data_areas.values
  43.      break if $game_player.in_area?(area)
  44.    end
  45.    @battleback_sprite = Sprite.new(@viewport1)
  46.    if area != nil and FileTest.exist?(B_PATH+area.name+EXTNAME) and !DIRECT_MAP
  47.      @battleback_sprite.bitmap = Cache.battleback(area.name, 0)
  48.    else
  49.      source = $game_temp.background_bitmap
  50.      bitmap = Bitmap.new(640, 480)
  51.      bitmap.stretch_blt(bitmap.rect, source, source.rect)
  52.      bitmap.radial_blur(90, 12) unless DIRECT_MAP
  53.      @battleback_sprite.bitmap = bitmap
  54.      @battleback_sprite.ox = 320
  55.      @battleback_sprite.oy = 240
  56.      @battleback_sprite.x = 272
  57.      @battleback_sprite.y = 176
  58.      @battleback_sprite.wave_amp = 8 unless DIRECT_MAP
  59.      @battleback_sprite.wave_length = 240 unless DIRECT_MAP
  60.      @battleback_sprite.wave_speed = 120 unless DIRECT_MAP
  61.    end
  62.   end
  63. end

  64. #==============================================================================
  65. # ■ Scene_Title
  66. #------------------------------------------------------------------------------
  67. #  处理标题画面的类。
  68. #==============================================================================
  69. class Scene_Title < Scene_Base
  70.   #--------------------------------------------------------------------------
  71.   # ● 载入战斗测试用的数据库
  72.   #--------------------------------------------------------------------------
  73.   alias bg_load load_bt_database
  74.   def load_bt_database
  75.     bg_load
  76.     $data_areas = load_data("Data/Areas.rvdata")
  77.   end
  78. end

  79. #==============================================================================
  80. # ■ Scene_Map
  81. #------------------------------------------------------------------------------
  82. #  处理地图画面的类。
  83. #==============================================================================
  84. class Scene_Map < Scene_Base
  85.   #--------------------------------------------------------------------------
  86.   # ● 执行战斗前变换
  87.   #--------------------------------------------------------------------------
  88.   def perform_battle_transition
  89.     file = Dir.entries(T_PATH)
  90.     file.delete(".");file.delete("..")
  91.     file_index = rand(file.size)
  92.     Graphics.transition(80, T_PATH + file[file_index], 80)
  93.     Graphics.freeze
  94.   end
  95. end
复制代码
dsu_plus_rewardpost_czw
作者: 零の使魔    时间: 2012-1-21 13:35
这个可以肯定不是脚本错误,应该是系统兼容性错误吧,虽然我不知道VX是否存在该问题,不过还是建议你先用兼容模式运行下。

如果不行的话,换机子试试
作者: 风雨之神    时间: 2012-1-21 14:08
看来是我的机器兼容问题了,换了台电脑就不报错了




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