Скриптописание в реальном времени. Хм, напоминает олимпиаду которую я феерично завалил, ну да ладно. Вот правка:
Код:
module RudeMode
BitmapOnAS = "" #тут можно написать имя картинки (она должна лежать в папке Graphics\System), которая мигнет в правом нижнем
#углу во время автосейва, к примеру "save" (Да, можно без разрешения)
BitmapOnAS_width = 0 #тут нужно указать её ширину
BitmapOnAS_height = 0 #а тут высоту
end
$BitmapForAutoSave = nil
class Scene_Save < Scene_File
def on_savefile_ok
super
if (@index != 0)
if DataManager.save_game(@index)
on_save_success
else
Sound.play_buzzer
end
else
Sound.play_buzzer
end
end
end
class Window_SaveFile < Window_Base
def refresh
contents.clear
change_color(normal_color)
if (@file_index != 0)
name = Vocab::File + " #{@file_index}"
else
name = "Автосохранение"
end
draw_text(4, 0, 200, line_height, name)
@name_width = text_size(name).width
draw_party_characters(152, 58)
draw_playtime(0, contents.height - line_height, contents.width - 4, 2)
end
end
class Scene_File < Scene_MenuBase
alias orig_item_max item_max
def item_max
return orig_item_max + 1
end
end
module DataManager
def self.make_filename(index)
if (index == 0)
sprintf("AutoSave.rvdata2", index + 1)
else
sprintf("Save%02d.rvdata2", index + 1)
end
end
def self.save_file_exists?
!Dir.glob('Save*.rvdata2').empty? || !Dir.glob('AutoSave.rvdata2').empty?
end
end
class Game_Interpreter
def autoSave_game
if (SceneManager.scene.class == Scene_Map)
$BitmapForAutoSave = Graphics.snap_to_bitmap
SceneManager.call(Scene_AutoSave)
end
end
end
class Scene_AutoSave < Scene_Base
def start
super
@background_sprite = Sprite.new
@background_sprite.bitmap = $BitmapForAutoSave
$BitmapForAutoSave = nil
if (RudeMode::BitmapOnAS != "")
@img_Save = Sprite.new(Viewport.new(Graphics.width-42, Graphics.height-42, RudeMode::BitmapOnAS_width, RudeMode::BitmapOnAS_height))
@img_Save.bitmap = Cache.system(RudeMode::BitmapOnAS)
end
DataManager.save_game(0)
return_scene
end
end
И пока писал вот что еще вспомнил: упаковщик мейкера не пакует в архив игры файлы сохранения, однако файл автосейва он "не за того" воспринимает и таки упаковывает. Так что перед созданием архива с игрой либо удаляй файл автосейва вручную, либо удали/закомментируй вот эту часть:
Код:
def self.make_filename(index)
if (index == 0)
sprintf("AutoSave.rvdata2", index + 1)
else
sprintf("Save%02d.rvdata2", index + 1)
end
end
Социальные закладки