Ну а если вдруг по какой-то причине не получится, посмотри на вот этот скрипт:
Код:
#==============================================================================
# ** ExBattle_Background версия 2.00
#------------------------------------------------------------------------------
# Скрипт, позволяющий устанавливать фон любого экрана битвы.
#==============================================================================
# Настройки для карт.
# ID карт и значение фона для них.
EXBTL_BACKGR_MAP = {
1 => "Ocean",
2 => "Mountains",
}
# Настройки для областей.
# ID областей и значение фона для них.
EXBTL_BACKGR_AREA = {
1 => "Ocean",
2 => "Mountains",
}
# Настройки для тайлов.
# ID тайлов и значение фона для них.
EXBTL_BACKGR_TILE = {
1 => "Ocean",
2 => "Mountains",
}
# Значение по умолчанию.
# Устанавливает графику, если для карты или области нет настройки.
EXBTL_BACKGR_DEFAULT = ""
# Задник.
# Устанавливает задник экрана для отображения графики фона.
# (0:нет 1:экран карты)
EXBTL_BACKGR_BACK = 1
# Позиция.
# Позиция показываемой графики (0:верх 1:центр 2:центр экрана 3:низ).
EXBTL_BACKGR_POSITION = 0
# Пол в битве.
# Определяет показывать ли графику пола в битве.
# (0:нет 1:показывать)
EXBTL_BACKGR_FLOOR = 0
# Папка графики.
# Папка с графикой для фона (Graphic/xxx/).
# (0:System 1:Parallaxes 2:Pictures)
EXBTL_BACKGR_FOLDER = 1
#------------------------------------------------------------------------------
class Spriteset_Battle
#--------------------------------------------------------------------------
# * Создаёт спрайт фона
#--------------------------------------------------------------------------
alias _exbbackgr_create_battleback create_battleback
def create_battleback
source = $game_temp.background_bitmap
bitmap = Bitmap.new(640, 480)
if EXBTL_BACKGR_BACK == 1
bitmap.stretch_blt(bitmap.rect, source, source.rect)
end
@battleback_sprite = Sprite.new(@viewport1)
@battleback_sprite.bitmap = bitmap
@battleback_sprite.ox = 320
@battleback_sprite.oy = 240
@battleback_sprite.x = 272
@battleback_sprite.y = 176
fixed = false
unless $BTEST
for area in $data_areas.values
if $game_player.in_area?(area) and EXBTL_BACKGR_AREA.has_key?(area.id)
src_source = EXBTL_BACKGR_AREA[area.id]
fixed = true
end
end
unless fixed
if EXBTL_BACKGR_MAP.has_key?($game_map.map_id)
src_source = EXBTL_BACKGR_MAP[$game_map.map_id]
fixed = true
end
end
# Получение тега из тайла
# Номер переменной из скрипта расширения тайлов KGC, метод get_player_terrain_tag(x)
unless fixed
if EXBTL_BACKGR_TILE.has_key?($game_variables[19])
src_source = EXBTL_BACKGR_TILE[$game_variables[19]]
fixed = true
end
end
end
unless fixed
if EXBTL_BACKGR_DEFAULT != ""
src_source = EXBTL_BACKGR_DEFAULT
fixed = true
end
end
if fixed
case EXBTL_BACKGR_FOLDER
when 0
src_bitmap = Cache.system(src_source)
when 1
src_bitmap = Cache.parallax(src_source)
when 2
src_bitmap = Cache.picture(src_source)
end
x = (640 - src_bitmap.width) / 2
case EXBTL_BACKGR_POSITION
when 0
y = 64
when 1
y = (416 - src_bitmap.height) / 2
when 2
y = (480 - src_bitmap.height) / 2 + 32
when 3
y = 480 - src_bitmap.height
end
@battleback_sprite.bitmap.blt(x, y, src_bitmap, src_bitmap.rect)
src_bitmap.dispose
end
end
#--------------------------------------------------------------------------
# * Создание спрайта пола битвы
#--------------------------------------------------------------------------
alias _exbbackgr_create_battlefloor create_battlefloor
def create_battlefloor
_exbbackgr_create_battlefloor
@battlefloor_sprite.opacity = 0 if EXBTL_BACKGR_FLOOR == 0
end
end
Социальные закладки