Project1
标题:
如何才能给每个地图设置不同的战斗背景?
[打印本页]
作者:
炫火杀
时间:
2011-8-31 16:39
标题:
如何才能给每个地图设置不同的战斗背景?
情况是这样的:咱想做一个校园的游戏,准备多拍一点战斗背景图,结果一开电脑就发现不知道怎么替换,请各位帮帮忙啊
dsu_plus_rewardpost_czw
作者:
昔日辉煌灬
时间:
2011-8-31 16:45
本帖最后由 昔日辉煌灬 于 2011-8-31 16:48 编辑
在你的地图上创建一个区域,区域名就是你要的战斗背景名 战斗背景在 Graphics里 战斗背景这个文件夹 里面
#==============================================================================
# 随机渐变,区域控制战斗背景图 by 沉影不器
#------------------------------------------------------------------------------
# 功能描述: ① 使用区域名称定义不同的战斗背景图
# 如果没有找到背景图,则使用RMVX默认眩晕背景
# ② 进入战斗时,随机使用渐变效果
# 使用方法: ① 复制脚本,插入到Main之前
# ② 在Graphics文件夹下新建Battlebacks文件夹用于存放战斗背景图
# 您也可以在脚本第16行自行设定路径
# ③ 准备与区域名称相同的战斗背景图到您设定的战斗背景图文件夹内
# ④ 在Graphics文件夹下新建Transitions文件夹用于存放渐变图
# 您也可以在脚本第17行自行设定路径
# ⑤ 在脚本第18行设定战斗背景图的后缀名
# ⑥ 在脚本第19行设定是否直接用地图做战斗图
#------------------------------------------------------------------------------
B_PATH = "Graphics/战斗背景/" # 设定战斗背景图存储路径
EXTNAME = ".png" # 设定战斗背景图后缀名
DIRECT_MAP = false # 设定是否直接用地图做战斗图
#==============================================================================
module Cache
#--------------------------------------------------------------------------
# ● 获取战斗背景图
# filename : 文件名
# hue : 色相变化值
#--------------------------------------------------------------------------
def self.battleback(filename, hue)
load_bitmap(B_PATH, filename, hue)
end
end
#==============================================================================
# ■ Spriteset_Battle
#------------------------------------------------------------------------------
# 处理战斗画面的活动块的类。本类在 Scene_Battle 类
# 的内部使用。
#==============================================================================
class Spriteset_Battle
#--------------------------------------------------------------------------
# ● 生成战斗背景活动块
#--------------------------------------------------------------------------
def create_battleback
for area in $data_areas.values
break if $game_player.in_area?(area)
end
@battleback_sprite = Sprite.new(@viewport1)
if area != nil and FileTest.exist?(B_PATH+area.name+EXTNAME) and !DIRECT_MAP
@battleback_sprite.bitmap = Cache.battleback(area.name, 0)
else
source = $game_temp.background_bitmap
bitmap = Bitmap.new(544, 416)
bitmap.stretch_blt(bitmap.rect, source, source.rect)
bitmap.radial_blur(90, 12) unless DIRECT_MAP
@battleback_sprite.bitmap = bitmap
@battleback_sprite.ox = 320
@battleback_sprite.oy = 240
@battleback_sprite.x = 272
@battleback_sprite.y = 176
@battleback_sprite.wave_amp = 8 unless DIRECT_MAP
@battleback_sprite.wave_length = 240 unless DIRECT_MAP
@battleback_sprite.wave_speed = 120 unless DIRECT_MAP
end
end
end
#==============================================================================
# ■ Scene_Title
#------------------------------------------------------------------------------
# 处理标题画面的类。
#==============================================================================
class Scene_Title < Scene_Base
#--------------------------------------------------------------------------
# ● 载入战斗测试用的数据库
#--------------------------------------------------------------------------
alias bg_load load_bt_database
def load_bt_database
bg_load
$data_areas = load_data("Data/Areas.rvdata")
end
end
复制代码
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1