Creare Videogiochi - Game Developer
[SCRIPT] Fino a 99 slot di salvataggio! - Versione stampabile

+- Creare Videogiochi - Game Developer (https://www.making-videogames.net/giochi)
+-- Forum: Rpg Maker Italia (https://www.making-videogames.net/giochi/Forum-Rpg-Maker-Italia)
+--- Forum: Rpg Maker Vx (https://www.making-videogames.net/giochi/Forum-Rpg-Maker-Vx)
+---- Forum: Script Rpg Maker Vx (https://www.making-videogames.net/giochi/Forum-Script-Rpg-Maker-Vx)
+---- Discussione: [SCRIPT] Fino a 99 slot di salvataggio! (/thread-SCRIPT-Fino-a-99-slot-di-salvataggio)



[SCRIPT] Fino a 99 slot di salvataggio! - lavezzinapoli7 - 24-06-2011

Descrizione
Aumenta il numero di slot disponibili per il salvataggio fino ad un massimo di 99 slot

Autore
ERZENGEL

Istruzioni per l'uso
Inserire sopra Main,per cambiare numero di slot disponibile sostituire Codice:
Codice:
SAVE_MAX= 99con il numero di slot desiderato

Script:
[spoiler]
Codice:
#==============================================================================
# ** More saveslots (v1.0 by ERZENGEL)
#------------------------------------------------------------------------------
#    The value of the saveslots can be set
#==============================================================================

# value of the saveslots
SAVE_MAX = 99

#==============================================================================
class Window_SaveFile
#--------------------------------------------------------------------------
def initialize(file_index, filename)
   super(0, 56 + file_index % SAVE_MAX * 90, 544, 90)
   @file_index = file_index
   @filename = filename
   load_gamedata
   refresh
   @selected = false
end
#--------------------------------------------------------------------------
end
#==============================================================================
class Scene_File
#--------------------------------------------------------------------------
def start  
   super
   @file_max = SAVE_MAX
   create_menu_background
   @help_window = Window_Help.new
   create_savefile_windows
   if @saving
     @index = $game_temp.last_file_index
     @help_window.set_text(Vocab::SaveMessage)
   else
     @index = self.latest_file_index
     @help_window.set_text(Vocab::LoadMessage)
   end
   @savefile_windows[@index].selected = true
   @page_file_max = ((416 - @help_window.height) / 90).truncate
   for i in 0...@file_max
     window = @savefile_windows[i]
     if @index > @page_file_max - 1
       if @index < @file_max - @page_file_max - 1
         @top_row = @index
         window.y -= @index * window.height
       elsif @index >= @file_max - @page_file_max
         @top_row = @file_max - @page_file_max
         window.y -= (@file_max - @page_file_max) * window.height
       else
         @top_row = @index
         window.y -= @index * window.height
       end
     end
     window.visible = (window.y >= @help_window.height and
     window.y < @help_window.height + @page_file_max * window.height)
   end
end
#--------------------------------------------------------------------------
def create_savefile_windows
   @top_row = 0
   @savefile_windows = []
   for i in 0...@file_max
     @savefile_windows.push(Window_SaveFile.new(i, make_filename(i)))
   end
end
#--------------------------------------------------------------------------
def cursor_down(wrap)
   if @index < @file_max - 1 or wrap
     @index = (@index + 1) % @file_max
     for i in 0...@file_max
       window = @savefile_windows[i]
       if @index == 0
         @top_row = 0
         window.y = @help_window.height + i % @file_max * window.height
       elsif @index - @top_row > @page_file_max - 1
         window.y -= window.height
       end
       window.visible = (window.y >= @help_window.height and
         window.y < @help_window.height + @page_file_max * window.height)
     end
     if @index - @top_row > @page_file_max - 1
       @top_row += 1
     end
   end
end
#--------------------------------------------------------------------------
def cursor_up(wrap)
   if @index > 0 or wrap
     @index = (@index - 1 + @file_max) % @file_max
     for i in 0...@file_max
       window = @savefile_windows[i]
       if @index == @file_max - 1
         @top_row = @file_max - @page_file_max
         window.y = @help_window.height + i % @file_max * window.height
         window.y -= (@file_max - @page_file_max) * window.height
       elsif @index - @top_row < 0
         window.y += window.height
       end
       window.visible = (window.y >= @help_window.height and
         window.y < @help_window.height + @page_file_max * window.height)
     end
     if @index - @top_row < 0
       @top_row -= 1
     end
   end
end
#--------------------------------------------------------------------------  
end
#==============================================================================
[/spoiler]


___________________________________________________________
*EDIT by Johnny 97*: Script inserito fra i tag code e spoiler. Quando ci sono pezzi di codice, è bene inserirli fra i tag code, per rendere tutto più ordinato e semplice da leggere. Inoltre, se è abbastanza grande, come lo sono quasi tutti gli script, è meglio inserire lo script fra i tag code e spoiler, così da poter permettere lo scorrimento della pagina più facilmente.