Vai al contenuto

Rilevato Ad-Blocker. Per favore disabilita il tuo adblocker quando navighi su makerando.com - Non c'è nessun annuncio invasivo.

  • Chatbox

    You don't have permission to chat.
    Load More

Recommended Posts

Nome Script: Title Screen Aqua
Versione: N/D
Autore/i: Zerbu

Informazioni:
Script che prende assoluto controllo sulla schermata del titolo :3

Istruzioni:
Inserite lo script sotto Material.
Istruzioni all'interno dello script.

Script:

#============================================================================
# ? Title Screen Aqua ?
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# This script gives you control over the title screen, from customizing
# its appearance to adding extra options to it~
#============================================================================

$imported = {} if $imported.nil?
$imported["zeaq_titlescreen"] = true

module ZEAQ
  module TitleScreen

    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    # ? Appearance Options ?
    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    # These options configure the appearance of the title screen. You can
    # customize these to make the title screen stand out!
    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    # Enable custom appearance?
    # If this setting is false, the font and Windowskin options will remain
    # unchanged from the default.
    CHANGE_APPEARANCE = false

    # Font Options
    FONT_FACE = ["VL Gothic", "Verdana", "Arial", "Courier"] # Font name
    FONT_SIZE = 24       # Font size used on the title screen
    FONT_COL = [255, 255, 255] # The colour of text ([red, blue, green])
    FONT_BOLD = false    # Whether or not text should appear bold
    FONT_ITALIC = false  # Whether or not text should appear italic
    FONT_SHADOW = false  # Whether or not text should have a shadow
    FONT_OUTLINE = true  # Whether or not text should have an outline
    FONT_OUT_COL = [0, 0, 0] # The colour of the outline ([red, blue, green])

    # Window Options
    WINDOWSKIN = "Window" # Windowskin used on the title screen
    OPACITY = 255         # Opacity (how visible) level of the Windowskin
    BACK_OPACITY = 200    # Opacity of the back of the Windowskin
    PADDING = 12          # The padding of text in the Window
    PADDING_BOTTOM = 12   # The bottom padding of text in the Window

    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    # ? Size and Position Options ?
    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    # These options configure the position of the window on the title screen.
    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    # Enable custom size and/or position?
    # If this setting is false, the position of the Window will remain
    # unchanged from the default.
    CHANGE_SIZE_POSITION = false

    # Size Options
    WINDOW_WIDTH = 175  # Window width; if 0, the default will be used

    # Position Options
    WINDOW_X = 20 # Window X position; if -1, the default will be used
    WINDOW_Y = 20 # Window Y position; if -1, the default will be used

    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    # ? Game Title Options ?
    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    # These options allow you to customize how the game title will be
    # displayed on the title screen, if you've chosen to display it.
    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    # Font Options
    NAME_FONT = ["VL Gothic", "Verdana", "Arial", "Courier"] # Font name
    NAME_SIZE = 48      # Font size used on the title screen
    NAME_COL = [255, 255, 255] # The colour of text ([red, blue, green])
    NAME_BOLD = true    # Whether or not text should appear bold
    NAME_ITALIC = true  # Whether or not text should appear italic
    NAME_SHADOW = true  # Whether or not text should have a shadow
    NAME_OUTLINE = true # Whether or not text should have an outline
    NAME_OUT_COL = [0, 0, 0] # The colour of the outline ([red, blue, green])

    # Position Options
    NAME_X = 0     # X movement from position on the screen
    NAME_Y = 68    # Y movement from top of the screen
    NAME_ALIGN = 1 # 0-Left; 1-Middle; 2-Right

    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    # ? Graphic and Sound Options ?
    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    # These options allow you to customize the graphic and sound on the title
    # screen using advanced options.
    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    # Here you can create a list of graphics that can be displayed on the title
    # screen. A random one from the list is shown every time the title screen
    # is shown, so you aren't stuck with just one graphic.
    # The format to use is: ["Title1", "Title2"],
    GRAPHICS = [
            ["Crystal", "Gargoyles"],
            ["CrossedSwords", "Dragons"],
            ["Fountain", ""],
            ["Gates", "Heroes"],
    ]

    # Here you can create a list of music to play on the title screen, and/or
    # add a BGS or ME to the title screen.
    #
    # The format to use is:
    # [["BGM", Volume, Pitch], ["BGS", Volume, "Pitch"], ["ME", Volume, Pitch]]
    #
    # If you don't want to use a BGS, ME or even don't want a BGM, but want
    # other sounds, set the one(s) you don't want to "nil"
    # [["BGM", Volume, Pitch], nil, nil] will produce a BGM only.
    # [["BGM", Volume, Pitch], ["BGS", Volume, "Pitch"], nil] will produce a BGM
    # and BGS.
    SOUNDS = [
            [["Theme2", 100, 100], ["Darkness", 100, 100], ["Shock", 100, 100]],
            [["Theme3", 100, 100], nil, nil],
            [["Theme4", 100, 100], ["Fire", 70, 100], nil],
            [["Theme5", 100, 100], nil, ["Victory2", 100, 100]],
    ]

    # This option sets whether sounds and graphics should be linked together. If
    # this is set to true, the first sound in the sounds list will always play
    # with the first graphic in the graphics list, the second sound with the
    # second graphic, and so on. If this is false, the graphics and sounds will
    # be randomized completely seperate from each other. If you enable this
    # option, you will need to have the same amount of graphics and sounds or
    # else the title screen could appear with no graphic or no sound.
    CONNECT_GRAPHICS_AND_SOUNDS = true

    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    # ? Title Screen Menu ?
    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    # This allows you to list the options that will appear on the title
    # screen, in the order they should appear. Scroll further down to define
    # your own custom options.
    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    MENU_OPTIONS = [
            :new_game,
            :continue,
            #:custom1,
            #:custom2,
            :shutdown,
    ]
    SHOW_CONTINUE = true # Show continue if there are no save files?

    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    # ? Normal Menu Options ?
    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    # These are the normal menu options that have their own scripts to run.
    # If you are using a script that is meant to add an option to the title
    # screen, you can add it here.
    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    # ID:    The name and method of the option to be called from the option
    #        above. This is also the name of the handler used.
    # Name:  The name to be displayed on the title menu.
    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    NORMAL_OPTIONS = {
            #--------------------------------#
            # ID        => "Name",           #
            #--------------------------------#
            :new_game   => "New Game",
            :continue   => "Continue",
            :shutdown   => "Shutdown",
    }

    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    # ? Extra Starting Positions ?
    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    # This allows you to add your own additional "New Game"-type options
    # where you can choose different starting positions.
    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    # ID:    The technical name of the extra option to be called from the
    #        option above.
    # Name:  The name to be displayed on the title menu.
    # Map:   The map where the players start when using this extra option.
    # Map X: The X position on the map.
    # Map Y: The Y position on the map.
    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    EXTRA_OPTIONS = {
            #---------------------------------------------------#
            # ID        => ["Name",           Map, MapX, MapY], #
            #---------------------------------------------------#
            :custom1    => ["Tutorial",       3,   10,   12  ],
            :custom2    => ["Credits",        4,   4,    2   ],
    }

    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    # ? Radial Animation Options ?
    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    # Here you can create an animation for the title screen background,
    # similar to RPG Maker VX's default battle system.
    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    # Enable?
    RADIAL_ANIMATION = false

    # Blur Options
    RADIAL_BLUR_ANGLE = 80 # Radial blur angle
    RADIAL_BLUR_DIVISION = 12 # Radial blur division (smoothness)

    # Wave Options
    WAVE_AMP = 8      # Wave amplitude
    WAVE_LENGTH = 240 # Wave frequency
    WAVE_SPEED = 120  # Wave speed

  end #TitleScreen
end #ZEAQ

class Window_TitleCommand < Window_Command
  alias zeaq_titlescreen_initialize initialize
  def initialize
    zeaq_titlescreen_initialize
    if ZEAQ::TitleScreen::CHANGE_APPEARANCE
      self.windowskin     = Cache.system(ZEAQ::TitleScreen::WINDOWSKIN)
      self.opacity        = ZEAQ::TitleScreen::OPACITY
      self.back_opacity   = ZEAQ::TitleScreen::BACK_OPACITY
      self.padding        = ZEAQ::TitleScreen::PADDING
      self.padding_bottom = ZEAQ::TitleScreen::PADDING_BOTTOM
    end
  end
  alias zeaq_titlescreen_draw_item draw_item
  def draw_item(index)
    if ZEAQ::TitleScreen::CHANGE_APPEARANCE
      contents.font.name      = ZEAQ::TitleScreen::FONT_FACE
      contents.font.size      = ZEAQ::TitleScreen::FONT_SIZE
      contents.font.color     = Color.new(ZEAQ::TitleScreen::FONT_COL[0], ZEAQ::TitleScreen::FONT_COL[1], ZEAQ::TitleScreen::FONT_COL[2])
      contents.font.bold      = ZEAQ::TitleScreen::FONT_BOLD
      contents.font.italic    = ZEAQ::TitleScreen::FONT_ITALIC
      contents.font.shadow    = ZEAQ::TitleScreen::FONT_SHADOW
      contents.font.outline   = ZEAQ::TitleScreen::FONT_OUTLINE
      contents.font.out_color = Color.new(ZEAQ::TitleScreen::FONT_OUT_COL[0], ZEAQ::TitleScreen::FONT_OUT_COL[1], ZEAQ::TitleScreen::FONT_OUT_COL[2])
    end
    zeaq_titlescreen_draw_item(index)
  end
  alias zeaq_titlescreen_window_width window_width
  def window_width
    if ZEAQ::TitleScreen::WINDOW_WIDTH != 0 && ZEAQ::TitleScreen::CHANGE_SIZE_POSITION
      return ZEAQ::TitleScreen::WINDOW_WIDTH
    else
      zeaq_titlescreen_window_width
    end
  end
  def update_placement
    if ZEAQ::TitleScreen::WINDOW_X != -1 && ZEAQ::TitleScreen::CHANGE_SIZE_POSITION
      self.x = ZEAQ::TitleScreen::WINDOW_X
    else
      self.x = (Graphics.width - width) / 2
    end
    if ZEAQ::TitleScreen::WINDOW_Y != -1 && ZEAQ::TitleScreen::CHANGE_SIZE_POSITION
      self.y = ZEAQ::TitleScreen::WINDOW_Y
    else
      self.y = (Graphics.height * 1.6 - height) / 2
    end
  end
  def make_command_list
    ZEAQ::TitleScreen::MENU_OPTIONS.each{|n|
      if ZEAQ::TitleScreen::NORMAL_OPTIONS[n]
        if n == :continue && !continue_enabled && ZEAQ::TitleScreen::SHOW_CONTINUE
          add_command(ZEAQ::TitleScreen::NORMAL_OPTIONS[n], n, false)
        else
          add_command(ZEAQ::TitleScreen::NORMAL_OPTIONS[n], n, true)
        end
      end
      if ZEAQ::TitleScreen::EXTRA_OPTIONS[n]
        add_command(ZEAQ::TitleScreen::EXTRA_OPTIONS[n][0], :zeaq_command, true, ZEAQ::TitleScreen::EXTRA_OPTIONS[n])
      end
    }
  end
end

class Scene_Title < Scene_Base
  alias zeaq_titlescreen_start start
  def start
    if ZEAQ::TitleScreen::CONNECT_GRAPHICS_AND_SOUNDS
      if ZEAQ::TitleScreen::GRAPHICS.size >= ZEAQ::TitleScreen::SOUNDS.size
        @random_value = rand(ZEAQ::TitleScreen::GRAPHICS.size)
      else
        @random_value = rand(ZEAQ::TitleScreen::SOUNDS.size)
      end
    end
    zeaq_titlescreen_start
  end
  def create_background
    if @random_value
      graphic = ZEAQ::TitleScreen::GRAPHICS[@random_value]
    else
      graphic = ZEAQ::TitleScreen::GRAPHICS[rand(ZEAQ::TitleScreen::GRAPHICS.size)]
    end
    @sprite1 = Sprite.new
    @sprite1.bitmap = Cache.title1(graphic[0])
    if ZEAQ::TitleScreen::RADIAL_ANIMATION
      @sprite1.bitmap.radial_blur(ZEAQ::TitleScreen::RADIAL_BLUR_ANGLE, ZEAQ::TitleScreen::RADIAL_BLUR_DIVISION)
      @sprite1.wave_amp = ZEAQ::TitleScreen::WAVE_AMP
      @sprite1.wave_length = ZEAQ::TitleScreen::WAVE_LENGTH
      @sprite1.wave_speed = ZEAQ::TitleScreen::WAVE_SPEED
    end
    @sprite2 = Sprite.new
    @sprite2.bitmap = Cache.title2(graphic[1])
    center_sprite(@sprite1)
    center_sprite(@sprite2)
  end
  def draw_game_title
    @foreground_sprite.bitmap.font.name = ZEAQ::TitleScreen::NAME_FONT
    @foreground_sprite.bitmap.font.size = ZEAQ::TitleScreen::NAME_SIZE
    @foreground_sprite.bitmap.font.color = Color.new(ZEAQ::TitleScreen::NAME_COL[0], ZEAQ::TitleScreen::NAME_COL[1], ZEAQ::TitleScreen::NAME_COL[2])
    @foreground_sprite.bitmap.font.bold = ZEAQ::TitleScreen::NAME_BOLD
    @foreground_sprite.bitmap.font.italic = ZEAQ::TitleScreen::NAME_ITALIC
    @foreground_sprite.bitmap.font.shadow = ZEAQ::TitleScreen::NAME_SHADOW
    @foreground_sprite.bitmap.font.outline = ZEAQ::TitleScreen::NAME_OUTLINE
    @foreground_sprite.bitmap.font.out_color = Color.new(ZEAQ::TitleScreen::NAME_OUT_COL[0], ZEAQ::TitleScreen::NAME_OUT_COL[1], ZEAQ::TitleScreen::NAME_OUT_COL[2])
    rect = Rect.new(ZEAQ::TitleScreen::NAME_X, ZEAQ::TitleScreen::NAME_Y, Graphics.width, ZEAQ::TitleScreen::NAME_SIZE)
    @foreground_sprite.bitmap.draw_text(rect, $data_system.game_title, ZEAQ::TitleScreen::NAME_ALIGN)
  end
  def play_title_music
    RPG::BGS.stop
    RPG::ME.stop
    if @random_value
      sound = ZEAQ::TitleScreen::SOUNDS[@random_value]
    else
      sound = ZEAQ::TitleScreen::SOUNDS[rand(ZEAQ::TitleScreen::SOUNDS.size)]
    end
    RPG::BGM.stop if !sound[0].nil?
    if !sound[2].nil?
      RPG::ME.new(sound[2][0], sound[2][1], sound[2][2]).play
    end
    if !sound[0].nil?
      RPG::BGM.new(sound[0][0], sound[0][1], sound[0][2]).play
    end
    if !sound[1].nil?
      RPG::BGS.new(sound[1][0], sound[1][1], sound[1][2]).play
    end
  end
  def zeaq_titlescreen_command
    n = @command_window.current_ext
    DataManager.create_game_objects
    $game_party.setup_starting_members
    $game_map.setup(n[1])
    $game_player.moveto(n[2], n[3])
    $game_player.refresh
    Graphics.frame_count = 0
    close_command_window
    fadeout_all
    $game_map.autoplay
    SceneManager.goto(Scene_Map)
  end
  alias zeaq_titlescreen_create_command_window create_command_window
    def create_command_window
    zeaq_titlescreen_create_command_window
    @command_window.set_handler(:zeaq_command, method(:zeaq_titlescreen_command))
  end
  alias zeaq_titlescreen_update update
  def update
    zeaq_titlescreen_update
    if ZEAQ::TitleScreen::RADIAL_ANIMATION
      @sprite1.update
    end
  end
end

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Crea un account o accedi per lasciare un commento

You need to be a member in order to leave a comment

Crea un account

Iscriviti per un nuovo account nella nostra comunità. È facile!

Registra un nuovo account

Accedi

Sei già registrato? Accedi qui.

Accedi Ora

  • Contenuti simili

    • Da MrSte
      Autore/i: Vincent
       
      Versione: 1.0
       
      Informazioni: Questo piccolo Script toglie il Menu Standard per aggiungere una sola scritta con il nome "Pausa"
       
      Screenshot:


       
      Istruzioni
      Installate lo Script nella sezione "Materiale" è possibile anche personalizzare la scritta "Pausa" basta solo inserire l'immagine nella cartella Graphics/Pictures e cambiare sulla linea 27 la scritta da "false" a "true"
       
      Script


       
    • Da Ally
      Nome Script: Title Screen Skip (se il file save non esiste)
      Versione: N/D
      Autore/i: bStefan

      Informazioni:
      Piccolissimo script che salta il titolo se un file di salvataggio non viene trovato ^^

      Istruzioni:
      Inserite lo script sotto Material.

      Script:


      #===================================== # by bStefan aka. regendo # please give credit if used # for use with RMVX ACE #===================================== # Skips Title screen if there is no # save file to be found. #===================================== # implement over Main or directly # into SceneManager #===================================== module SceneManager         def self.run                 DataManager.init                 Audio.setup_midi if use_midi?                 if DataManager.save_file_exists? == false #-                         DataManager.setup_new_game            # |                         $game_map.autoplay                    # |                         SceneManager.goto(Scene_Map)          # | new code                 else                                      # |                         @scene = first_scene_class.new        # / this line not                 end                                       #-                 @scene.main while @scene         end end
    • Da Ally
      Nome Script: Saltare il Titolo
      Versione: N/D
      Autore/i: JV Master

      Informazioni:
      Piccolo script che vi trasperterò alla prima mappa di gioco facendovi saltare il titolo.
      Utile se si vuole fare un titolo su mappa o creare prima una breve introduzione.

      Istruzioni:
      Inserite lo script sotto Material.

      Script:


      #============================================================================== # Skip Title Screen                                           JV Master Script #------------------------------------------------------------------------------ # Skip Title Screen, going to first game map. #============================================================================== #============================================================================== # Scene Title #============================================================================== class Scene_Title < Scene_Base   def start     SceneManager.clear     Graphics.freeze     DataManager.setup_new_game     $game_map.autoplay     SceneManager.goto(Scene_Map)   end   def terminate     SceneManager.snapshot_for_background     Graphics.fadeout(Graphics.frame_rate)   end end #==============================================================================
    • Da Ally
      Nome Script: Game Over con Scelte
      Versione: N/D
      Autore/i: bStefan

      Informazioni:
      Lo script da la possibilità nel Game Over di riavviare una battaglia, caricare un salvaggio, tornare al titolo, o di uscire semplicemente dal gioco.


      Istruzioni:
      Inserite lo script sotto Material.
      Per customizzare lo script in alcune opzioni, seguite qui sotto come fare:
      - Per modificare la posizione della finestra, fate riferimento alle righe 82-83
      - Per modificare la larghezza della finestra, fate riferimento alla riga 47
      - Se si vogliono inserire più colonne, fate riferimento alla riga 40 (si avrà bisogno anche delllo script qui di seguito):
      http://rpgmkr.net/forum/colonne-multiple-in-command-window-t2429.html
      - Se volete altri comandi, modificate make_command_list e create_command_window aggiungendo anche i metodi richiesti
      - Se volete eliminare la possibilità di riavviare la battaglia, fate riferimento alla riga 34

      Script:


      #================================================= # by bStefan aka. regendo # please give credit if used # for use with RMVX ACE #================================================= # GameOver with choices #================================================= # adds four choices to Scene_Gameover: # : Retry Battle (if you lost the battle) # : Load Savegame (if there is a savefile) # : Return to Title # : Quit Game #================================================= # implement over Main # implement under Multiple_Cols_in_Command_Window # if existant #================================================= module Regendo unless @scripts @scripts = Hash.new def self.contains?(key) @scripts[key] == true end end @scripts["GameOver_Window"] = true module GameOver_Window def self.multiple_cols? return false unless Regendo::contains?("Horizontal_Command") USE_MULTIPLE_COLUMNS end #======= #CONFIG #======= RETRY = true #if false, Retry Battle function will not be aviable #============================================== #requires Horizontal_Command script by regendo #============================================== if Regendo::contains?("Horizontal_Command") USE_MULTIPLE_COLUMNS = true #use Horizontal_Command Script? COLUMNS = 2 #requires ^ set to true end #================================================= #only used if not using Horizontal_Command Script #================================================= WINDOW_WIDTH = 225 end end if Regendo::GameOver_Window::multiple_cols? class Window_GameOver < Window_HorizontalCommand #more than one column possible end else class Window_GameOver < Window_Command #only one column end end class Window_GameOver def initialize if Regendo::GameOver_Window::multiple_cols? if Regendo::GameOver_Window::COLUMNS super(0, 0, Regendo::GameOver_Window::COLUMNS) else super(0, 0) end else super(0, 0) end update_placement self.openness = 0 open end unless Regendo::GameOver_Window::multiple_cols? def window_width Regendo::GameOver_Window::WINDOW_WIDTH end end def update_placement self.x = (Graphics.width - width) / 2 self.y = (Graphics.height - height) / 1.1 end #====================================== # add your own to this list # also requires changes at # Scene_Gameover#create_command_window #====================================== def make_command_list add_command("Retry Battle", :tryagain) if SceneManager.scene.is_defeat? add_command("Load Savestate", :load, load_enabled) add_command(Vocab::to_title, :to_title) add_command(Vocab::shutdown, :shutdown) end def load_enabled DataManager.save_file_exists? end end class Scene_Gameover < Scene_Base attr_reader :command_window alias start_old start def start start_old create_command_window end def pre_terminate super close_command_window end def update super end #====================================== # add your own to this list # also requires changes at # Window_GameOver#make_command_list # and requires adding your own methods #====================================== def create_command_window @command_window = Window_GameOver.new @command_window.set_handler(:tryagain, method(:command_retry)) if is_defeat? @command_window.set_handler(:load, method(:command_load)) @command_window.set_handler(:to_title, method(:goto_title)) @command_window.set_handler(:shutdown, method(:command_shutdown)) end def close_command_window @command_window.close if @command_window update until @command_window.close? end def command_load close_command_window fadeout_all SceneManager.call(Scene_Load) end def goto_title close_command_window fadeout_all SceneManager.goto(Scene_Title) end def command_shutdown close_command_window fadeout_all SceneManager.exit end def command_retry fadeout_all SceneManager.goto(Scene_Battle) BattleManager.setup(@troop_id, @can_escape, @can_lose) $game_party.members.each do |actor| actor.recover_all end $game_troop.members.each do |enemy| enemy.recover_all end BattleManager.bmgs_by_regendo(@map_bgm, @map_bgs) BattleManager.play_battle_bgm Sound.play_battle_start end def is_defeat (b = true) @defeat = b end def is_defeat? Regendo::GameOver_Window::RETRY ? @defeat : false end def battle_setup (troop_id, can_escape = true, can_lose = false) @troop_id = troop_id @can_escape = can_escape @can_lose = can_lose end def bgms_setup(map_bgm, map_bgs) @map_bgm = map_bgm @map_bgs = map_bgs end end module BattleManager class << self alias_method :setup_old, :setup end def self.setup(troop_id, can_escape = true, can_lose = false) self.setup_old(troop_id, can_escape = true, can_lose = false) @troop_id = troop_id end def self.bmgs_by_regendo(map_bgm, map_bgs) @map_bgm = map_bgm @map_bgs = map_bgs end def self.process_defeat $game_message.add(sprintf(Vocab::Defeat, $game_party.name)) wait_for_message if @can_lose revive_battle_members replay_bgm_and_bgs SceneManager.return else SceneManager.goto(Scene_Gameover) SceneManager.scene.is_defeat #this is new SceneManager.scene.battle_setup(@troop_id, @can_escape, @can_lose) #this also SceneManager.scene.bgms_setup(@map_bgm, @map_bgs) #and this end battle_end(2) return true end end
    • Da Ally
      Nome Script: Game Over con scelta
      Versione: N/D
      Autore/i: regendo
       
      Informazioni:
      Questo script aggiunge una finestra nella scena del Game Over, che da la possibilità di uscire dal gioco, di ritornare al titolo o di caricare una partita.
       
      Screenshot:
       
       
       
      Istruzioni:
      Inserite lo script sotto Material.
       
      Se volete poi cambiare posizione della finestra, fare riferimento alle linee 26 e 27, mentre se volete allargarla, fate riferimento alla linea 22.
       

       
      Script:
       

      # by bStefan aka. regendo # please give credit if used # for use with RMVX ACE #============================================ # GameOver with choices #============================================ # adds three choices to Scene_Gameover: # Load Savegame, Return to Title, Quit Game # implement over Main #============================================ class Window_GameOver < Window_Command def initialize super(0, 0) update_placement self.openness = 0 open end def window_width return 225 end def update_placement self.x = (Graphics.width - width) / 2 self.y = (Graphics.height - height) / 1.1 end def make_command_list add_command("Load Savestate", :load, load_enabled) add_command(Vocab::to_title, :to_title) add_command(Vocab::shutdown, :shutdown) end def load_enabled DataManager.save_file_exists? end end class Scene_Gameover < Scene_Base alias start_old start def start start_old create_command_window end def pre_terminate super close_command_window end def update super end def create_command_window @command_window = Window_GameOver.new @command_window.set_handler(:load, method(:command_load)) @command_window.set_handler(:to_title, method(:goto_title)) @command_window.set_handler(:shutdown, method(:command_shutdown)) end def close_command_window @command_window.close if @command_window update until @command_window.close? end def command_load close_command_window fadeout_all SceneManager.call(Scene_Load) end def goto_title close_command_window fadeout_all SceneManager.goto(Scene_Title) end def command_shutdown close_command_window fadeout_all SceneManager.exit end end
×