ГлавнаяФорумRPG MakerСкрипты/ПлагиныRPG Maker VX ACEВопросы по скриптам ACEПонижение fps (Custom Title Scene)
Войти на сайт
×
ТЕМА: Понижение fps (Custom Title Scene)
Понижение fps (Custom Title Scene) 10 года 1 мес. назад #74228
|
Всем привет , сразу к делу
ВНИМАНИЕ: Спойлер! [ Нажмите, чтобы развернуть ][ Нажмите, чтобы скрыть ] #----------------------------------------------------------------------------
# * [ACE] Custom Title Scene
module VARS
# Настройка слайдов и мелодий.
BGM = 1 # Количество мелодий.
SLIDE = 4 # Количество слайдов.
UPD = 5 # Скорость обновления слайдов.
SPD = 3 # Скорость смены логотипов.
# Настройка логотипов.
LOGO_SHOW = true # true/false - Показывать/ не показывать логотип.
LOGO_1 = "Logo1"
LOGO_2 = "Logo2"
LOGO_3 = "Logo3"
LOGO_4 = "Logo4"
LOGO_5 = "Logo5"
LOGO_6 = "Logo6"
LOGO_7 = "Logo7"
LOGO_8 = "Logo8"
#Названия картинок команд.
NEW = "New_Game" # Название картинки команды новой игры.
LOAD = "Load_Game" # Название картинки команды загрузки сохранения.
CAPTIONS = "Captions_Game" # Название картинки команды титров
ENDS = "End_Game" # Название картинки команды выхода из игры.
# Расположение пунктов меню.
# Координаты Новой Игры. Важно! Минимальное значение Y это 210.
NEW_X = 132
NEW_Y = 210
# Координаты Загрузки.
LOAD_X = 132
LOAD_Y = 255
# Координаты Выхода.
END_X = 132
END_Y = 360
# Координаты Титров.
CAPTIONS_X = 132
CAPTIONS_Y = 310
# Порядок расположения пунктов меню: 0 - первая команда, 1 - вторая, 2 - третья.
POS = [
0, # Новая игра
1, # Загрузить игру
2, # Титры
3 # Выйти из игры
]
end
###########################################################################
class Scene_Logo < Scene_Base
def main
start
end
def start
if VARS::LOGO_SHOW
sprite = Sprite.new
sprite.bitmap = Cache.system(VARS::LOGO_1)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_2)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_3)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_4)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_5)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_6)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_7)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_8)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_1)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_2)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_3)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_4)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_5)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_6)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_7)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_8)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_1)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_2)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_3)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_4)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_5)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_6)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_7)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_8)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_1)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_2)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_3)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_4)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_5)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_6)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_7)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_8)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_1)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_2)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_3)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_4)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_5)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_6)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_7)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_8)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.dispose
@bgm_count = VARS::BGM
@get_next_bgm = (rand(@bgm_count) + 1).to_i
Audio.bgm_play("Audio/BGM/Title/#{@get_next_bgm}", 100)
$bgm_on = false
SceneManager.goto(Scene_Title)
else
$bgm_on = true
SceneManager.goto(Scene_Title)
end
end
end
module SceneManager
def self.first_scene_class
$BTEST ? Scene_Battle : Scene_Logo
end
end
class Scene_Title < Scene_Base
def start
super
SceneManager.clear
Graphics.freeze
get_var
create_background
create_command_new_game
create_command_load_game
create_command_captions_game
create_command_end_game
var_ini
play_title_music if $bgm_on
$bgm_on = true
@load_scene = false
end
def terminate
super
SceneManager.snapshot_for_background
dispose_background
dispose_command
end
def update
super
to_select
opacity_command
@time += 1
create_background if @time == @upd_rate
end
def get_var
@bgm_count = VARS::BGM
@slide_count = VARS::SLIDE
@upd_rate = VARS::UPD
end
def create_background
@sprite1 = Sprite.new
@get_next_pic = ((rand(@slide_count) + 1).to_i).to_s
@sprite1.bitmap = Cache.title1(@get_next_pic)
center_sprite(@sprite1)
@time = 0
end
def dispose_background
@sprite1.bitmap.dispose
@sprite1.dispose
end
def center_sprite(sprite)
sprite.ox = sprite.bitmap.width / 2
sprite.oy = sprite.bitmap.height / 2
sprite.x = Graphics.width / 2
sprite.y = Graphics.height / 2
end
def play_title_music
@get_next_bgm = (rand(@bgm_count) + 1).to_i
Audio.bgm_play("Audio/BGM/Title/#{@get_next_bgm}", 100)
RPG::BGS.stop
RPG::ME.stop
return
end
def var_ini
opacity_command
if DataManager.save_file_exists?
@index = VARS::POS[1]
else
@index = VARS::POS[0]
end
@item_max = 4
@col_max = 1
end
def create_command_new_game
@new_game = Sprite.new
@new_game.bitmap = Bitmap.new("Graphics/System/#{VARS::NEW}")
@new_game.x = VARS::NEW_X
@new_game.y = VARS::NEW_Y
return
end
def create_command_load_game
@load_game = Sprite.new
@load_game.bitmap = Bitmap.new("Graphics/System/#{VARS::LOAD}")
@load_game.x = VARS::LOAD_X
@load_game.y = VARS::LOAD_Y
return
end
#
def create_command_captions_game
@captions_game = Sprite.new
@captions_game.bitmap = Bitmap.new("Graphics/System/#{VARS::CAPTIONS}")
@captions_game.x = VARS::CAPTIONS_X
@captions_game.y = VARS::CAPTIONS_Y
return
end
#
def create_command_end_game
@end_game = Sprite.new
@end_game.bitmap = Bitmap.new("Graphics/System/#{VARS::ENDS}")
@end_game.x = VARS::END_X
@end_game.y = VARS::END_Y
return
end
def opacity_command
if @load_scene
@new_game.opacity = 0
@load_game.opacity = 0
@captions_game.opacity = 0
@end_game.opacity = 0
else
@new_game.opacity = 255 if @index == VARS::POS[0]
@new_game.opacity = 155 if @index != VARS::POS[0]
@load_game.opacity = 255 if @index == VARS::POS[1]
@load_game.opacity = 155 if @index != VARS::POS[1]
@captions_game.opacity = 255 if @index == VARS::POS[2]
@captions_game.opacity = 155 if @index != VARS::POS[2]
@end_game.opacity = 255 if @index == VARS::POS[3]
@end_game.opacity = 155 if @index != VARS::POS[3]
end
end
def dispose_command
@new_game.bitmap.dispose
@new_game.dispose
@load_game.bitmap.dispose
@load_game.dispose
@captions_game.bitmap.dispose
@captions_game.dispose
@end_game.bitmap.dispose
@end_game.dispose
end
def to_down
if @index < (@item_max - @col_max)
Sound.play_cursor
@index = (@index + @col_max)
else
if @index == (@item_max - @col_max)
Sound.play_cursor
@index = 0
end
end
end
def to_up
if @index >= @col_max
Sound.play_cursor
@index = (@index - @col_max)
else
if @index < @col_max
Sound.play_cursor
@index = 3
end
end
end
def to_select
to_up if Input.repeat?(:UP)
to_down if Input.repeat?(:DOWN)
command_new_game if Input.press?(:C) && @index == VARS::POS[0]
command_continue if Input.press?(:C) && @index == VARS::POS[1]
command_captions_game if Input.press?(:C) && @index == VARS::POS[2]
command_shutdown if Input.press?(:C) && @index == VARS::POS[3]
end
def command_new_game
Sound.play_ok
DataManager.setup_new_game
@new_game.opacity = 0
@load_game.opacity = 0
@captions_game.opacity = 0
@end_game.opacity = 0
fadeout_all
$game_map.autoplay
SceneManager.goto(Scene_Map)
end
def command_continue
if DataManager.save_file_exists?
Sound.play_ok
@new_game.opacity = 0
@load_game.opacity = 0
@captions_game.opacity = 0
@end_game.opacity = 0
SceneManager.call(Scene_Load)
else
Sound.play_buzzer
end
end
def command_captions_game
begin
SceneManager.call(Scene_SlideShow)
setup_slideshow
end
end
def command_shutdown
Sound.play_ok
@new_game.opacity = 0
@load_game.opacity = 0
@captions_game.opacity = 0
@end_game.opacity = 0
fadeout_all
SceneManager.exit
end
end yadi.sk/d/m2dvwZIxbjuYh - ссылка на демку |
Последнее редактирование: 10 года 1 мес. назад от Cerberus.
Администратор запретил публиковать записи гостям.
|
Понижение fps (Custom Title Scene) 10 года 1 мес. назад #74229
|
не смотрел демку, но советую проверить, а удаляешь ли ты картинки после использования? а то они все грузятся в память, грузятся...
213 МБ - ты издеваешься?)) решение: не парь Cache, попробуй управлять памятью сам: #Вырву кусок, который все равно повторяется
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_1)
Graphics.fadein(1)
sprite.bitmap.dispose# это и есть удаление. перед загрузкой новой картинки выполняй dispose для прошлой |
Последнее редактирование: 10 года 1 мес. назад от DeadElf79.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Frog434
|
Понижение fps (Custom Title Scene) 10 года 1 мес. назад #74255
|
Это у меня логотип и он работает нормально.
А вот оригинал скрипта - ВНИМАНИЕ: Спойлер! [ Нажмите, чтобы развернуть ][ Нажмите, чтобы скрыть ] module VARS
# Настройка слайдов и мелодий.
BGM = 10 # Количество мелодий.
SLIDE = 10 # Количество слайдов.
UPD = 650 # Скорость обновления слайдов.
SPD = 105 # Скорость смены логотипов.
# Настройка логотипов.
LOGO_SHOW = true # true/false - Показывать/ не показывать логотип.
LOGO_1 = "Logo1" # Название первого логотипа.
LOGO_2 = "Logo2" # Название второго логотипа.
#Названия картинок команд.
NEW = "New_Game" # Название картинки команды новой игры.
LOAD = "Load_Game" # Название картинки команды загрузки сохранения.
ENDS = "End_Game" # Название картинки команды выхода из игры.
# Расположение пунктов меню.
# Координаты Новой Игры. Важно! Минимальное значение Y это 210.
NEW_X = 12
NEW_Y = 210
# Координаты Загрузки.
LOAD_X = 12
LOAD_Y = 265
# Координаты Выхода.
END_X = 8
END_Y = 315
# Порядок расположения пунктов меню: 0 - первая команда, 1 - вторая, 2 - третья.
POS = [
0, # Новая игра
1, # Загрузить игру
2 # Выйти из игры
]
end
###########################################################################
class Scene_Logo < Scene_Base
def main
start
end
def start
if VARS::LOGO_SHOW
@bgm_count = VARS::BGM
@get_next_bgm = (rand(@bgm_count) + 1).to_i
Audio.bgm_play("Audio/BGM/Title/#{@get_next_bgm}", 100)
$bgm_on = false
sprite = Sprite.new
Graphics.wait(25)
Graphics.fadeout(0)
sprite.bitmap = Cache.system(VARS::LOGO_1)
Graphics.fadein(30)
Graphics.wait(VARS::SPD)
Graphics.fadeout(30)
sprite.bitmap = Cache.system(VARS::LOGO_2)
Graphics.fadein(30)
Graphics.wait(VARS::SPD)
Graphics.fadeout(30)
sprite.dispose
SceneManager.goto(Scene_Title)
else
$bgm_on = true
SceneManager.goto(Scene_Title)
end
end
end
module SceneManager
def self.first_scene_class
$BTEST ? Scene_Battle : Scene_Logo
end
end
class Scene_Title < Scene_Base
def start
super
SceneManager.clear
Graphics.freeze
get_var
create_background
create_command_new_game
create_command_load_game
create_command_end_game
var_ini
play_title_music if $bgm_on
$bgm_on = true
@load_scene = false
end
def terminate
super
SceneManager.snapshot_for_background
dispose_background
dispose_command
end
def update
super
to_select
opacity_command
@time += 1
create_background if @time == @upd_rate
end
def get_var
@bgm_count = VARS::BGM
@slide_count = VARS::SLIDE
@upd_rate = VARS::UPD
end
def create_background
@sprite1 = Sprite.new
@get_next_pic = ((rand(@slide_count) + 1).to_i).to_s
@sprite1.bitmap = Cache.title1(@get_next_pic)
center_sprite(@sprite1)
@time = 0
end
def dispose_background
@sprite1.bitmap.dispose
@sprite1.dispose
end
def center_sprite(sprite)
sprite.ox = sprite.bitmap.width / 2
sprite.oy = sprite.bitmap.height / 2
sprite.x = Graphics.width / 2
sprite.y = Graphics.height / 2
end
def play_title_music
@get_next_bgm = (rand(@bgm_count) + 1).to_i
Audio.bgm_play("Audio/BGM/Title/#{@get_next_bgm}", 100)
RPG::BGS.stop
RPG::ME.stop
return
end
def var_ini
opacity_command
if DataManager.save_file_exists?
@index = VARS::POS[1]
else
@index = VARS::POS[0]
end
@item_max = 3
@col_max = 1
end
def create_command_new_game
@new_game = Sprite.new
@new_game.bitmap = Bitmap.new("Graphics/System/#{VARS::NEW}")
@new_game.x = VARS::NEW_X
@new_game.y = VARS::NEW_Y
return
end
def create_command_load_game
@load_game = Sprite.new
@load_game.bitmap = Bitmap.new("Graphics/System/#{VARS::LOAD}")
@load_game.x = VARS::LOAD_X
@load_game.y = VARS::LOAD_Y
return
end
def create_command_end_game
@end_game = Sprite.new
@end_game.bitmap = Bitmap.new("Graphics/System/#{VARS::ENDS}")
@end_game.x = VARS::END_X
@end_game.y = VARS::END_Y
return
end
def opacity_command
if @load_scene
@new_game.opacity = 0
@load_game.opacity = 0
@end_game.opacity = 0
else
@new_game.opacity = 255 if @index == VARS::POS[0]
@new_game.opacity = 155 if @index != VARS::POS[0]
@load_game.opacity = 255 if @index == VARS::POS[1]
@load_game.opacity = 155 if @index != VARS::POS[1]
@end_game.opacity = 255 if @index == VARS::POS[2]
@end_game.opacity = 155 if @index != VARS::POS[2]
end
end
def dispose_command
@load_game.bitmap.dispose
@load_game.dispose
@new_game.bitmap.dispose
@new_game.dispose
@end_game.bitmap.dispose
@end_game.dispose
end
def to_down
if @index < (@item_max - @col_max)
Sound.play_cursor
@index = (@index + @col_max)
else
if @index == (@item_max - @col_max)
Sound.play_cursor
@index = 0
end
end
end
def to_up
if @index >= @col_max
Sound.play_cursor
@index = (@index - @col_max)
else
if @index < @col_max
Sound.play_cursor
@index = 2
end
end
end
def to_select
to_up if Input.repeat?(:UP) or Input.repeat?(:LEFT)
to_down if Input.repeat?(:DOWN) or Input.repeat?(:RIGHT)
command_continue if Input.press?(:C) && @index == VARS::POS[1]
command_new_game if Input.press?(:C) && @index == VARS::POS[0]
command_shutdown if Input.press?(:C) && @index == VARS::POS[2]
end
def command_new_game
Sound.play_ok
DataManager.setup_new_game
@new_game.opacity = 0
@load_game.opacity = 0
@end_game.opacity = 0
fadeout_all
$game_map.autoplay
SceneManager.goto(Scene_Map)
end
def command_continue
if DataManager.save_file_exists?
Sound.play_ok
@new_game.opacity = 0
@load_game.opacity = 0
@end_game.opacity = 0
SceneManager.call(Scene_Load)
else
Sound.play_buzzer
end
end
def command_shutdown
Sound.play_ok
@new_game.opacity = 0
@load_game.opacity = 0
@end_game.opacity = 0
fadeout_all
SceneManager.exit
end
end И там память грузят картинки меняющиеся постоянно в самом меню , SLIDE = 10 # Количество слайдов. UPD = 650 # Скорость обновления слайдов . Вот переменные отвечающие за эти картинки |
Последнее редактирование: 10 года 1 мес. назад от DeadElf79.
Администратор запретил публиковать записи гостям.
|
Понижение fps (Custom Title Scene) 10 года 1 мес. назад #74256
|
Вот конкретнее :
ВНИМАНИЕ: Спойлер! [ Нажмите, чтобы развернуть ][ Нажмите, чтобы скрыть ] def create_background @sprite1 = Sprite.new @get_next_pic = ((rand(@slide_count) + 1).to_i).to_s @sprite1.bitmap = Cache.title1(@get_next_pic) center_sprite(@sprite1) @time = 0 end |
Администратор запретил публиковать записи гостям.
|
Понижение fps (Custom Title Scene) 10 года 1 мес. назад #74262
|
И если я сюда добавлю @sprite1.bitmap.dispose , то меняющиеся картинки в меню (анимация) пропадает вообще, т.е фона нет
|
Администратор запретил публиковать записи гостям.
|
Понижение fps (Custom Title Scene) 10 года 1 мес. назад #74265
|
Готово.
Обнови метод start: def start
super
@sprite1 = Sprite.new # вырезаем из create_background
...# пропустим эти строки
end И еще вот метод create_background: def create_background
@get_next_pic = ((rand(@slide_count) + 1).to_i).to_s
@sprite1.bitmap = Cache.title1(@get_next_pic)
center_sprite(@sprite1)
@time = 0
end У тебя все время создается новый спрайт, а старый с его картинкой не удаляется. Удалять и создавать его каждый раз - дорого для скорости, так что сделаем дешевле - просто создаем его один раз и меняем только bitmap. |
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Frog434
|
Понижение fps (Custom Title Scene) 10 года 1 мес. назад #74273
|
def start
super
@sprite1 = Sprite.new
SceneManager.clear
Graphics.freeze
get_var
create_command_new_game
create_command_load_game
create_command_captions_game
create_command_end_game
var_ini
play_title_music if $bgm_on
$bgm_on = true
@load_scene = false
end def create_background
@get_next_pic = ((rand(@slide_count) + 1).to_i).to_s
@sprite1.bitmap = Cache.title1(@get_next_pic)
center_sprite(@sprite1)
@time = 0
end def update
super
to_select
opacity_command
@time += 1
create_background if @time == @upd_rate
end |
Администратор запретил публиковать записи гостям.
|
Понижение fps (Custom Title Scene) 10 года 1 мес. назад #74277
|
Попробуй поменять местами строку со @sprite1 и SceneManager.clear
|
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Frog434
|
Понижение fps (Custom Title Scene) 10 года 1 мес. назад #74300
|
Изменил , ничего не поменялось , а если прописать
def update
super
to_select
opacity_command
#@time += 1
create_background if @time == @upd_rate
end |
Администратор запретил публиковать записи гостям.
|
Понижение fps (Custom Title Scene) 10 года 1 мес. назад #74303
|
полный код. я не знаю, почему у меня он работает, а у тебя - нет.
#----------------------------------------------------------------------------
# * [ACE] Custom Title Scene
module VARS
# Настройка слайдов и мелодий.
BGM = 1 # Количество мелодий.
SLIDE = 4 # Количество слайдов.
UPD = 4 # Скорость обновления слайдов.
SPD = 3 # Скорость смены логотипов.
# Настройка логотипов.
LOGO_SHOW = true # true/false - Показывать/ не показывать логотип.
LOGO_1 = "Logo1"
LOGO_2 = "Logo2"
LOGO_3 = "Logo3"
LOGO_4 = "Logo4"
LOGO_5 = "Logo5"
LOGO_6 = "Logo6"
LOGO_7 = "Logo7"
LOGO_8 = "Logo8"
#Названия картинок команд.
NEW = "New_Game" # Название картинки команды новой игры.
LOAD = "Load_Game" # Название картинки команды загрузки сохранения.
CAPTIONS = "Captions_Game" # Название картинки команды титров
ENDS = "End_Game" # Название картинки команды выхода из игры.
# Расположение пунктов меню.
# Координаты Новой Игры. Важно! Минимальное значение Y это 210.
NEW_X = 132
NEW_Y = 210
# Координаты Загрузки.
LOAD_X = 132
LOAD_Y = 255
# Координаты Выхода.
END_X = 132
END_Y = 360
# Координаты Титров.
CAPTIONS_X = 132
CAPTIONS_Y = 310
# Порядок расположения пунктов меню: 0 - первая команда, 1 - вторая, 2 - третья.
POS = [
0, # Новая игра
1, # Загрузить игру
2, # Титры
3 # Выйти из игры
]
end
###########################################################################
class Scene_Logo < Scene_Base
def main
start
end
def start
if VARS::LOGO_SHOW
sprite = Sprite.new
sprite.bitmap = Cache.system(VARS::LOGO_1)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_2)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_3)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_4)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_5)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_6)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_7)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_8)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_1)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_2)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_3)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_4)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_5)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_6)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_7)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_8)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_1)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_2)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_3)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_4)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_5)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_6)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_7)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_8)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_1)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_2)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_3)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_4)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_5)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_6)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_7)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_8)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_1)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_2)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_3)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_4)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_5)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_6)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_7)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.bitmap = Cache.system(VARS::LOGO_8)
Graphics.fadein(1)
Graphics.wait(VARS::SPD)
sprite.dispose
@bgm_count = VARS::BGM
@get_next_bgm = (rand(@bgm_count) + 1).to_i
Audio.bgm_play("Audio/BGM/Title/#{@get_next_bgm}", 100)
$bgm_on = false
SceneManager.goto(Scene_Title)
else
$bgm_on = true
SceneManager.goto(Scene_Title)
end
end
end
module SceneManager
def self.first_scene_class
$BTEST ? Scene_Battle : Scene_Logo
end
end
class Scene_Title < Scene_Base
def start
super
SceneManager.clear
Graphics.freeze
get_var
@sprite1 = Sprite.new
create_background
create_command_new_game
create_command_load_game
create_command_captions_game
create_command_end_game
var_ini
play_title_music if $bgm_on
$bgm_on = true
@load_scene = false
end
def terminate
super
SceneManager.snapshot_for_background
dispose_background
dispose_command
end
def update
super
to_select
opacity_command
@time += 1
create_background if @time == @upd_rate
end
def get_var
@bgm_count = VARS::BGM
@slide_count = VARS::SLIDE
@upd_rate = VARS::UPD
end
def create_background
@get_next_pic = ((rand(@slide_count) + 1).to_i).to_s
@sprite1.bitmap = Cache.title1(@get_next_pic)
center_sprite(@sprite1)
@time = 0
end
def dispose_background
@sprite1.bitmap.dispose
@sprite1.dispose
end
def center_sprite(sprite)
sprite.ox = sprite.bitmap.width / 2
sprite.oy = sprite.bitmap.height / 2
sprite.x = Graphics.width / 2
sprite.y = Graphics.height / 2
end
def play_title_music
@get_next_bgm = (rand(@bgm_count) + 1).to_i
Audio.bgm_play("Audio/BGM/Title/#{@get_next_bgm}", 100)
RPG::BGS.stop
RPG::ME.stop
return
end
def var_ini
opacity_command
if DataManager.save_file_exists?
@index = VARS::POS[1]
else
@index = VARS::POS[0]
end
@item_max = 4
@col_max = 1
end
def create_command_new_game
@new_game = Sprite.new
@new_game.bitmap = Bitmap.new("Graphics/System/#{VARS::NEW}")
@new_game.x = VARS::NEW_X
@new_game.y = VARS::NEW_Y
return
end
def create_command_load_game
@load_game = Sprite.new
@load_game.bitmap = Bitmap.new("Graphics/System/#{VARS::LOAD}")
@load_game.x = VARS::LOAD_X
@load_game.y = VARS::LOAD_Y
return
end
#
def create_command_captions_game
@captions_game = Sprite.new
@captions_game.bitmap = Bitmap.new("Graphics/System/#{VARS::CAPTIONS}")
@captions_game.x = VARS::CAPTIONS_X
@captions_game.y = VARS::CAPTIONS_Y
return
end
#
def create_command_end_game
@end_game = Sprite.new
@end_game.bitmap = Bitmap.new("Graphics/System/#{VARS::ENDS}")
@end_game.x = VARS::END_X
@end_game.y = VARS::END_Y
return
end
def opacity_command
if @load_scene
@new_game.opacity = 0
@load_game.opacity = 0
@captions_game.opacity = 0
@end_game.opacity = 0
else
@new_game.opacity = 255 if @index == VARS::POS[0]
@new_game.opacity = 155 if @index != VARS::POS[0]
@load_game.opacity = 255 if @index == VARS::POS[1]
@load_game.opacity = 155 if @index != VARS::POS[1]
@captions_game.opacity = 255 if @index == VARS::POS[2]
@captions_game.opacity = 155 if @index != VARS::POS[2]
@end_game.opacity = 255 if @index == VARS::POS[3]
@end_game.opacity = 155 if @index != VARS::POS[3]
end
end
def dispose_command
@new_game.bitmap.dispose
@new_game.dispose
@load_game.bitmap.dispose
@load_game.dispose
@captions_game.bitmap.dispose
@captions_game.dispose
@end_game.bitmap.dispose
@end_game.dispose
end
def to_down
if @index < (@item_max - @col_max)
Sound.play_cursor
@index = (@index + @col_max)
else
if @index == (@item_max - @col_max)
Sound.play_cursor
@index = 0
end
end
end
def to_up
if @index >= @col_max
Sound.play_cursor
@index = (@index - @col_max)
else
if @index < @col_max
Sound.play_cursor
@index = 3
end
end
end
def to_select
to_up if Input.repeat?(:UP)
to_down if Input.repeat?(:DOWN)
command_new_game if Input.press?(:C) && @index == VARS::POS[0]
command_continue if Input.press?(:C) && @index == VARS::POS[1]
command_captions_game if Input.press?(:C) && @index == VARS::POS[2]
command_shutdown if Input.press?(:C) && @index == VARS::POS[3]
end
def command_new_game
Sound.play_ok
DataManager.setup_new_game
@new_game.opacity = 0
@load_game.opacity = 0
@captions_game.opacity = 0
@end_game.opacity = 0
fadeout_all
$game_map.autoplay
SceneManager.goto(Scene_Map)
end
def command_continue
if DataManager.save_file_exists?
Sound.play_ok
@new_game.opacity = 0
@load_game.opacity = 0
@captions_game.opacity = 0
@end_game.opacity = 0
SceneManager.call(Scene_Load)
else
Sound.play_buzzer
end
end
def command_captions_game
begin
SceneManager.call(Scene_SlideShow)
setup_slideshow
end
end
def command_shutdown
Sound.play_ok
@new_game.opacity = 0
@load_game.opacity = 0
@captions_game.opacity = 0
@end_game.opacity = 0
fadeout_all
SceneManager.exit
end
end |
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Frog434
|
Понижение fps (Custom Title Scene) 10 года 1 мес. назад #74306
|
Сравнил 2 кода , оказалось что одну строчку поставил в #.
А так огромное спасибоhttp://rpg-maker.info/forum/ace/59713-ponizhenie-fps-custom-title-scene/reply/74303 |
Администратор запретил публиковать записи гостям.
|
Модераторы: NeKotZima
Время создания страницы: 0.313 секунд