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: Controllo Volume
Versione: 1.0.0
Autore/i: Ru/むっくRu, Elemental Crisis (traduzione inglese)

Informazioni:
Questo script permette di controllare le impostazioni del volume di gioco.

Istruzioni:
Inserite lo script sotto Material.

Script:



#===============================================================================
# ¡ Volume Control For RGSS3
#-------------------------------------------------------------------------------
#@2011/12/01@[member='Rusjbhlmi']/‚Þ‚Á‚­Ru
#-------------------------------------------------------------------------------
# English Translation By: Elemental Crisis (http://RPGMakerVXAce.com)
#-------------------------------------------------------------------------------
#@Adds the ability to change volume control. 
#
#@œ The following methods are added to the Audio Module
#@Audio.volBGM cc Maximum BGM volume setting.
#@Audio.volBGS cc Maximum BGS volume setting. 
#@Audio.volSE  cc Maximum SE volume setting. 
#@Audio.volME  cc  Maximum ME volume setting. 
#@Audio.volBGM=”’l ccSet BGM maximum volume (0-100)
#@Audio.volBGM=”’l cc Set BGS maximum volume (0-100)
#@Audio.volSE=”’l  cc Set SE maximum volume (0-100)
#@Audio.volME=”’l  cc Set ME maximum volume (0-100)
#
#@œ Volume control is added to the main menu.
#
#-------------------------------------------------------------------------------
# yKnown Issuesz
#@Created before VXAce's official release so unable to properly test. 
#-------------------------------------------------------------------------------

#==============================================================================
# œ Settings
#==============================================================================
module HZM_VXA
  module AudioVol
    # Display Volume Control on Main Menu?
    # @true  cc Display.
    # @false cc Don't Display.
    MENU_FLAG = true

    # Volume Control Name in Main Menu.
    MENU_NAME        = "Volume Settings" 

    # Volume Control Settings Name.
    CONFIG_BGM_NAME  = "BGM"
    CONFIG_BGS_NAME  = "BGS"
    CONFIG_SE_NAME   = "SE"
    CONFIG_ME_NAME   = "ME"
    CONFIG_EXIT_NAME = "Exit"

    # Volume Change Variation.
    # ADD_VOL_NORMAL cc Variation of Left/Right Keys.
    # ADD_VOL_HIGH   cc Variation of LR Key. 
    ADD_VOL_NORMAL = 5
    ADD_VOL_HIGH   = 25
  end
end

#==============================================================================
# ª @ Settings Above @ ª
# «     Script Below     «
#==============================================================================

# Additonal Methods. 
module Audio
  def self.volBGM=(vol)
    vol=100 if vol>100
    vol=0 if vol<0
    @hzmVolBGM = vol
  end
  def self.volBGS=(vol)
    vol=100 if vol>100
    vol=0 if vol<0
    @hzmVolBGS = vol
  end
  def self.volSE=(vol)
    vol=100 if vol>100
    vol=0 if vol<0
    @hzmVolSE = vol
  end
  def self.volME=(vol)
    vol=100 if vol>100
    vol=0 if vol<0
    @hzmVolME = vol
  end
  def self.volBGM
    @hzmVolBGM = 100  if @hzmVolBGM == nil
    return @hzmVolBGM
  end
  def self.volBGS
    @hzmVolBGS = 100  if @hzmVolBGS == nil
    return @hzmVolBGS
  end
  def self.volSE
    @hzmVolSE = 100  if @hzmVolSE == nil
    return @hzmVolSE
  end
  def self.volME
    @hzmVolME = 100  if @hzmVolME == nil
    return @hzmVolME
  end
end

# Playback
class << Audio
  alias hzm_Vol_Audio_bgm_play bgm_play
  def bgm_play(filename, volume=100, pitch=100, pos=0)
    volume = self.volBGM * volume / 100
    hzm_Vol_Audio_bgm_play(filename, volume, pitch, pos)
  end
  alias hzm_Vol_Audio_bgs_play bgs_play
  def bgs_play(filename, volume=100, pitch=100)
    volume = self.volBGS * volume / 100
    hzm_Vol_Audio_bgs_play(filename, volume, pitch)
  end
  alias hzm_Vol_Audio_se_play se_play
  def se_play(filename, volume=100, pitch=100)
    volume = self.volSE * volume / 100
    hzm_Vol_Audio_se_play(filename, volume, pitch)
  end
  alias hzm_Vol_Audio_me_play me_play
  def me_play(filename, volume=100, pitch=100)
    volume = self.volME * volume / 100
    hzm_Vol_Audio_me_play(filename, volume, pitch)
  end
end

# Add To Menu.
if HZM_VXA::AudioVol::MENU_FLAG
  class Window_MenuCommand
    alias hzm_Vol_Window_MenuCommand_add_original_commands add_original_commands
    def add_original_commands
      hzm_Vol_Window_MenuCommand_add_original_commands
      add_command(HZM_VXA::AudioVol::MENU_NAME, :hzm_vxa_vol)
    end
  end

  class Scene_Menu
    alias hzm_Vol_create_command_window create_command_window
    def create_command_window
      hzm_Vol_create_command_window
      @command_window.set_handler(:hzm_vxa_vol, method(:hzm_vxa_vol))
    end
    def hzm_vxa_vol
      SceneManager.call(HZM_VXA::AudioVol::Scene_VolConfig)
    end
  end
end

# Volume Chage Window
module HZM_VXA
  module AudioVol

    class Window_VolConfig < Window_Command
      def initialize
        super(0, 0)
        self.x = (Graphics.width - self.window_width)/2
        self.y = (Graphics.height - self.window_height)/2
      end
      def make_command_list
        add_command(HZM_VXA::AudioVol::CONFIG_BGM_NAME,  :bgm)
        add_command(HZM_VXA::AudioVol::CONFIG_BGS_NAME,  :bgs)
        add_command(HZM_VXA::AudioVol::CONFIG_SE_NAME,   :se)
        add_command(HZM_VXA::AudioVol::CONFIG_ME_NAME,   :me)
        add_command(HZM_VXA::AudioVol::CONFIG_EXIT_NAME, :cancel)
      end
      def draw_item(index)
        super
        return unless index < 4
        case index
        when 0
          vol = Audio.volBGM
        when 1
          vol = Audio.volBGS
        when 2
          vol = Audio.volSE
        when 3
          vol = Audio.volME
        end
        draw_text(item_rect_for_text(index), vol, 2)
      end
      def volAdd(index, val)
        case index
        when 0
          Audio.volBGM += val
          now = RPG::BGM.last 
          Audio.bgm_play('Audio/BGM/' + now.name, now.volume, now.pitch, now.pos) if now
        when 1
          Audio.volBGS += val
        when 2
          Audio.volSE += val
        when 3
          Audio.volME += val
        end
        Sound.play_cursor
        redraw_item(index)
      end
      def cursor_left(wrap = false)
        volAdd(@index, -HZM_VXA::AudioVol::ADD_VOL_NORMAL)
      end
      def cursor_right(wrap = false)
        volAdd(@index,  HZM_VXA::AudioVol::ADD_VOL_NORMAL)
      end
      def cursor_pageup
        volAdd(@index,  -HZM_VXA::AudioVol::ADD_VOL_HIGH)
      end
      def cursor_pagedown
        volAdd(@index,  HZM_VXA::AudioVol::ADD_VOL_HIGH)
      end
    end
    class Scene_VolConfig < Scene_MenuBase
      def start
        super
        @command_window = Window_VolConfig.new
        @command_window.viewport = @viewport
        @command_window.set_handler(:cancel,   method(:return_scene))
      end
      def terminate
        super
        @command_window.dispose
      end
    end
  end
end

# Reading/Saving
class << DataManager
  alias hzm_Vol_make_save_contents make_save_contents
  def make_save_contents
    contents = hzm_Vol_make_save_contents
    contents[:hzm_vxa_vol]   = {
      :bgm => Audio.volBGM,
      :bgs => Audio.volBGS,
      :se  => Audio.volSE,
      :me  => Audio.volME
    }
    contents
  end
  alias hzm_Vol_extract_save_contents extract_save_contents
  def extract_save_contents(contents)
    hzm_Vol_extract_save_contents(contents)
    Audio.volBGM = contents[:hzm_vxa_vol][:bgm]
    Audio.volBGS = contents[:hzm_vxa_vol][:bgs]
    Audio.volSE  = contents[:hzm_vxa_vol][:se]
    Audio.volME  = contents[:hzm_vxa_vol][:me]
  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: Galv
       
      Versione: 1.9
       
      Informazioni: Questo Script consente di aggiungere l'Effetto dei passi attraverso le Regioni, si possono anche aggiungere più suoni per i passi
       
      Download Demo
       
      http://www.mediafire.com/download/oajaf02bhnbk4x3/Region%20Effects%20v.1.9.zip
    • Da Ally
      Nome Script: Audio Pump Up: FMOD Ex
      Versione: 1.4
      Autore/i: Hiretsukan, Cowlol, mikb89
       
      Informazioni:
      Porting per VX Ace dell'FMOD Ex Audio di Hiretsukan riscritto da Cowlol per Rpg Maker XP.
      Lo script originale consente di riprodurre audio di diversi formati tramite la libreria FMOD. Sfruttando questa, anche altre funzioni aggiuntive incluse nella libreria sono possibili. La feature 'innovativa' era quella di riprodurre audio partendo da una posizione determinata, cosa che però in VX Ace è già integrata. Quindi niente di particolare su questo campo.
      Il mio porting, oltre ad offrire una maggiore integrazione (ad esempio l'audio viene zittito se disattivato dai settaggi di F1) consente di sfruttare sia il sistema audio standard che il nuovo, cosa pensata per ragioni di compatibilità.
      Inoltre, cosa più importante, consente di avere canali audio multipli, virtualmente infiniti, che possono essere controllati anche senza usare codice.
      Una variabile indicherà il canale corrente. Tutti i suoni e le musiche utilizzeranno quello.
      Il canale 0 corrisponde al sistema standard, i canali dall'1 in poi utilizzano FMOD.
      Consiglio comunque di non esagerare coi canali, credo un 3, 4 bastino, nella maggior parte dei casi.
      Nell'audio FMOD si possono usare anche effetti chiamati DSP come eco, riverbero, tremolo, equalizzatori ecc.
       
      Istruzioni:
      Copiare lo script normalmente sotto Modules e sopra Main.
      È richiesta per funzionare la libreria FMOD, che altro non è che un file .dll da mettere dentro la cartella System dove sta l'RGSS30X.dll (non Graphics\System!!!).
      Per usarlo basta scegliere la variabile del canale dalle configurazioni e cambiare il suo valore.
      Eventuali funzioni aggiuntive (tipo FMod.bgm_set_loop_points(first, second)) possono essere sfruttate con dei Call script, ma attualmente non sono presenti funzioni così utili da meritare spiegazioni apposite.
      Ulteriori informazioni si trovano dentro la demo.
       
      Script:
      Visibile su Pastebin.
      Demo:
      Demo multilingua v. 1.4 con FMOD 0.4.40.5 inclusa (3.37MB)
      http://www.mediafire...mwqys4h1a2rh0c2
       
      Libreria FMOD 0.4.18.3 (versione leggera, che non supporta tutte le funzioni):
      http://www.mediafire...nb17boudfmuwo3d
       
      Libreria FMOD 0.4.40.5 (ultima versione al momento del post):
      http://www.mediafire...ybuas9ervddetp2
       
      Potete scaricare l'ultima versione della libreria (purtroppo assieme al developer kit) dal sito ufficiale di FMOD: http://www.fmod.org/[/indent]
       
      Note dell'Autore:
      Importante: FMOD ha la sua licenza, consultatela quindi sul sito ufficiale se dovete farci qualcosa di particolare. Lo script inoltre è originario di Hiretsukan e Cowlol, tenetelo in conto nei crediti e leggete la licenza, scritta da non so chi dei due, presente fra i commenti nello script (sempre nel caso abbiate qualche scopo particolare, tipo di lucro).
    • Da Ally
      Nome Script: Audio Pump Up: FMOD Ex
      Versione: 1.4
      Autore/i: Hiretsukan, Cowlol, mikb89

      Informazioni:
      Porting per VX dell'FMOD Ex Audio di Hiretsukan riscritto da Cowlol per Rpg Maker XP.
      Lo script originale consente di riprodurre audio di diversi formati tramite la libreria FMOD. Sfruttando questa, anche altre funzioni aggiuntive incluse nella libreria, come quella di riprodurre audio partendo da una posizione determinata, sono possibili.
      Il mio porting consente in più di sfruttare sia il sistema audio standard che il nuovo, cosa pensata per ragioni di compatibilità.
      Inoltre, cosa più importante, consente di avere canali audio multipli, virtualmente infiniti, che possono essere controllati anche senza usare codice.
      Una variabile indicherà il canale corrente. Tutti i suoni e le musiche utilizzeranno quello.
      Il canale 0 corrisponde al sistema standard, i canali dall'1 in poi utilizzano FMOD.
      Consiglio comunque di non esagerare coi canali, credo un 3, 4 bastino, nella maggior parte dei casi.[/indent]

      Nell'audio FMOD si possono usare anche effetti chiamati DSP come eco, riverbero, tremolo, equalizzatori ecc.

      Istruzioni:
      Copiare lo script normalmente sotto Modules e sopra Main.
      Sarebbe buono anche inserire questa riga:
      FMod::dispose dentro il Main, prima di "rescue", per una corretta chiusura della libreria e dei file audio.

      È richiesta per funzionare la libreria FMOD, che altro non è che un file .dll da inserire dove si trovano il Game.exe e l'RGSS20X.dll del vostro progetto.

      Per usarlo basta scegliere la variabile del canale dalle configurazioni e cambiare il suo valore.
      Eventuali funzioni aggiuntive (tipo FMod.bgm_set_loop_points(first, second) o FMod.bgs_position) possono essere sfruttate con dei Call script.
      In particolare FMod.bgm_set_position(new_pos, c) consente di impostare la posizione del BGM (o anche BGS, certo) in riproduzione. new_pos è la posizione desiderata, in millisecondi (credo!) mentre c è il canale da 1 in su. Se volete operare sul canale corrente basta mettere $game_variables[APU::CURRENT_CHANNEL_VARIABLE] al suo posto. Esempio:
      FMod.bgm_set_position(33, $game_variables[APU::CURRENT_CHANNEL_VARIABLE])  Ulteriori informazioni si trovano dentro la demo.

      Script:
      Visibile su Pastebin .

      Demo:
      Demo multilingua v. 1.4 con FMOD 0.4.40.5 inclusa (3.17MB)
      http://www.mediafire...4hzgpf2cvkjnmdr

      Libreria FMOD 0.4.18.3 (versione leggera, che non supporta tutte le funzioni):
      http://www.mediafire...nb17boudfmuwo3d

      Libreria FMOD 0.4.40.5 (ultima versione al momento del post):
      http://www.mediafire...ybuas9ervddetp2

      Potete scaricare l'ultima versione della libreria (purtroppo assieme al developer kit) dal sito ufficiale di FMOD: http://www.fmod.org/


      Note dell'Autore:
      Importante: FMOD ha la sua licenza, consultatela quindi sul sito ufficiale se dovete farci qualcosa di particolare. Lo script inoltre è originario di Hiretsukan e Cowlol, tenetelo in conto nei crediti e leggete la licenza, scritta da non so chi dei due, presente fra i commenti nello script (sempre nel caso abbiate qualche scopo particolare, tipo di lucro).
    • Da Ally
      Titolo: Musica Personalizzata nel Menù
      Versione: N/D
      Autore/i: Raziel
       
      Informazioni:
      Permette di far eseguire il BGM che preferite
      quando si entra nel Menù
       
      Istruzioni:
      Come al solito create una niova classe sopra Main e incollateci lo script. Poi nello script dove vi è scritto BGM = "001-Battle01", sostituite "001-Battle01" con il nome del vostro file musicale preferito.
       
      Script:

      class Scene_Menu BGM = "001-Battle01" alias raz_music_menu_main main alias raz_music_menu_uc update_command def main $game_temp.map_bgm = $game_system.playing_bgm Audio.bgm_play("Audio/BGM/" + BGM, 100, 100) raz_music_menu_main end def update_command if Input.trigger?(Input:: $game_system.se_play($data_system.cancel_se) $scene = Scene_Map.new Audio.bgm_stop $game_system.bgm_play($game_temp.map_bgm) return end raz_music_menu_uc end end Demo:Nessuna Demo
       
      Incompatibilita:
      N/D
×