[Aide] Super script customisable
Merci infiniment, Raytwo! La BGM s'appelera... Menu Effectivement, je parle de BGM.
Bon, je file tester ton script!
Aïe! une petite erreur à la ligne 45
Je t'envoie l'image de l'erreur lorsqu'on sort du menu
Pour le nom de BGM, il n'y a aucun problème. J'ai compris qu'il fallait la nommer tera
C'est à télécharger.
Bon, je file tester ton script!
Aïe! une petite erreur à la ligne 45
Je t'envoie l'image de l'erreur lorsqu'on sort du menu
Pour le nom de BGM, il n'y a aucun problème. J'ai compris qu'il fallait la nommer tera
C'est à télécharger.
Je suis celui qui marquera toute une génération!
Ligne 30, essaie de remplacer
Audio.bgm_play("Audio/BGM/" + Fond::Titre)
par
Audio.bgm_play("Audio/BGM/ [nom de ta bgm]", 100, 100)
Bien entendu, remplace le "[nom de ta bgm]" par le nom de ta bgm et sans les crochets.
Exemple ton fichier musique se nomme Destati, alors ça fera :
Audio.bgm_play("Audio/BGM/Destati", 100, 100)
Le module ici n'est pas nécessaire, il faut juste que ton bgm se trouve dans le dossier des BGM de ton projet.
La première valeur 100 est le niveau du volume de la BGM, l'autre valeur 100 est le pitch du BGM (que tu peux changer de 0 à 100). J'espère que ça va marcher.
EDIT : ok je suis nul mdr ! Ne PAS suivre ce conseil !!! xD
Audio.bgm_play("Audio/BGM/" + Fond::Titre)
par
Audio.bgm_play("Audio/BGM/ [nom de ta bgm]", 100, 100)
Bien entendu, remplace le "[nom de ta bgm]" par le nom de ta bgm et sans les crochets.
Exemple ton fichier musique se nomme Destati, alors ça fera :
Audio.bgm_play("Audio/BGM/Destati", 100, 100)
Le module ici n'est pas nécessaire, il faut juste que ton bgm se trouve dans le dossier des BGM de ton projet.
La première valeur 100 est le niveau du volume de la BGM, l'autre valeur 100 est le pitch du BGM (que tu peux changer de 0 à 100). J'espère que ça va marcher.
EDIT : ok je suis nul mdr ! Ne PAS suivre ce conseil !!! xD
Dernière modification par Darxenas le mer. févr. 23, 2011 6:18 am, modifié 1 fois.
Désolé pour le dérangement Darxenas, mais j'avais compris...
à présent, je suis en train d'apprendre le Ryby sur ce site:
http://www.ruby-lang.org/fr/documentation/quickstart/2/
à présent, je suis en train d'apprendre le Ryby sur ce site:
http://www.ruby-lang.org/fr/documentation/quickstart/2/
Je suis celui qui marquera toute une génération!
Oula qu'est-ce que c'est que cette erreur héhé
Non non Darx, faut pas remplacer, justement, c'est une question de facilité. Tout en haut du script se trouve :
Sauf que le "tera", tu peux le remplacer par "menu" si ça te chante, c'est justement pour un remplacement facile. Tu changes le nom entre guillemets et tu dois pas aller trafiquer dans le script pour changer la musique !
Petite question : As-tu mis une musique sur ta map? C'est p'tet ça le problème.
Quoique non, je viens encore de tester le script à l'instant sans mettre de musique sur la map, et il a très bien fonctionné.
Et même si je fais une faute dans le titre de la musique, je reçois au minimum une erreur me disant que le fichier n'existe pas.
En faites l'erreur est écrite comme si la fonction bgm_play n'existe pas, c'est louche. Essaye le script sur un autre projet pour voir.
Non non Darx, faut pas remplacer, justement, c'est une question de facilité. Tout en haut du script se trouve :
Code : Tout sélectionner
#==============================================================================
# ** Scene_Menu
#------------------------------------------------------------------------------
# This class performs the menu screen processing.
#==============================================================================
class Scene_Menu < Scene_Base
# Ajout de Raytwo - Module Fond
module Fond
# Insérer le titre du BGM entre les guillements
Titre = "tera"
end
Petite question : As-tu mis une musique sur ta map? C'est p'tet ça le problème.
Quoique non, je viens encore de tester le script à l'instant sans mettre de musique sur la map, et il a très bien fonctionné.
Et même si je fais une faute dans le titre de la musique, je reçois au minimum une erreur me disant que le fichier n'existe pas.
En faites l'erreur est écrite comme si la fonction bgm_play n'existe pas, c'est louche. Essaye le script sur un autre projet pour voir.
Tu as quoi d'autre comme scripts dans ton projet?
Car un ami à moi qui avait mis plusieurs scripts bugués dans son projet n'arrivait pas non plus à ajouter un de mes scripts à cause des autres qui avaient des problèmes.
Mais j'trouve ça louche comme erreur. Faudra p'tet attendre un passage du Kayz pour trouver une solution sinon. Désolé ^^'
Car un ami à moi qui avait mis plusieurs scripts bugués dans son projet n'arrivait pas non plus à ajouter un de mes scripts à cause des autres qui avaient des problèmes.
Mais j'trouve ça louche comme erreur. Faudra p'tet attendre un passage du Kayz pour trouver une solution sinon. Désolé ^^'
Effectivement, j'ai la même erreur sur un autre projet. J'vais essayer de corriger ça.
Edit : EVIDEMMENT, j'ai oublié un script ! Pardon !!!
Le voici de suite ! ( Scene_map )
Edit : EVIDEMMENT, j'ai oublié un script ! Pardon !!!
Le voici de suite ! ( Scene_map )
Code : Tout sélectionner
#==============================================================================
# ** Scene_Map
#------------------------------------------------------------------------------
# This class performs the map screen processing.
#==============================================================================
class Scene_Map < Scene_Base
#--------------------------------------------------------------------------
# * Start processing
#--------------------------------------------------------------------------
def start
super
$game_map.refresh
@spriteset = Spriteset_Map.new
@message_window = Window_Message.new
end
#--------------------------------------------------------------------------
# * Execute Transition
#--------------------------------------------------------------------------
def perform_transition
if Graphics.brightness == 0 # After battle or loading, etc.
fadein(30)
else # Restoration from menu, etc.
Graphics.transition(15)
end
end
#--------------------------------------------------------------------------
# * Termination Processing
#--------------------------------------------------------------------------
def terminate
super
if $scene.is_a?(Scene_Battle) # If switching to battle screen
@spriteset.dispose_characters # Hide characters for background creation
end
snapshot_for_background
@spriteset.dispose
@message_window.dispose
if $scene.is_a?(Scene_Battle) # If switching to battle screen
perform_battle_transition # Execute pre-battle transition
end
end
#--------------------------------------------------------------------------
# * Basic Update Processing
#--------------------------------------------------------------------------
def update_basic
Graphics.update # Update game screen
Input.update # Update input information
$game_map.update # Update map
@spriteset.update # Update sprite set
end
#--------------------------------------------------------------------------
# * Frame Update
#--------------------------------------------------------------------------
def update
super
$game_map.interpreter.update # Update interpreter
$game_map.update # Update map
$game_player.update # Update player
$game_system.update # Update timer
@spriteset.update # Update sprite set
@message_window.update # Update message window
unless $game_message.visible # Unless displaying a message
update_transfer_player
update_encounter
update_call_menu
update_call_debug
update_scene_change
end
end
#--------------------------------------------------------------------------
# * Fade In Screen
# duration : time
# If you use Graphics.fadeout directly on the map screen, a number of
# problems can occur, such as weather effects and parallax scrolling
# being stopped. So instead, perform a dynamic fade-in.
#--------------------------------------------------------------------------
def fadein(duration)
Graphics.transition(0)
for i in 0..duration-1
Graphics.brightness = 255 * i / duration
update_basic
end
Graphics.brightness = 255
end
#--------------------------------------------------------------------------
# * Fade Out Screen
# duration : time
# As with the fadein above, Graphics.fadein is not used directly.
#--------------------------------------------------------------------------
def fadeout(duration)
Graphics.transition(0)
for i in 0..duration-1
Graphics.brightness = 255 - 255 * i / duration
update_basic
end
Graphics.brightness = 0
end
#--------------------------------------------------------------------------
# * Player Transfer Processing
#--------------------------------------------------------------------------
def update_transfer_player
return unless $game_player.transfer?
fade = (Graphics.brightness > 0)
fadeout(30) if fade
@spriteset.dispose # Dispose of sprite set
$game_player.perform_transfer # Execute player transfer
$game_map.autoplay # Automatically switch BGM and BGS
$game_map.update
Graphics.wait(15)
@spriteset = Spriteset_Map.new # Recreate sprite set
fadein(30) if fade
Input.update
end
#--------------------------------------------------------------------------
# * Encounter Processing
#--------------------------------------------------------------------------
def update_encounter
return if $game_player.encounter_count > 0 # Check steps
return if $game_map.interpreter.running? # Event being executed?
return if $game_system.encounter_disabled # Encounters forbidden?
troop_id = $game_player.make_encounter_troop_id # Determine troop
return if $data_troops[troop_id] == nil # Troop is invalid?
$game_troop.setup(troop_id)
$game_troop.can_escape = true
$game_temp.battle_proc = nil
$game_temp.next_scene = "battle"
preemptive_or_surprise
end
#--------------------------------------------------------------------------
# * Determine Preemptive Strike and Surprise Attack Chance
#--------------------------------------------------------------------------
def preemptive_or_surprise
actors_agi = $game_party.average_agi
enemies_agi = $game_troop.average_agi
if actors_agi >= enemies_agi
percent_preemptive = 5
percent_surprise = 3
else
percent_preemptive = 3
percent_surprise = 5
end
if rand(100) < percent_preemptive
$game_troop.preemptive = true
elsif rand(100) < percent_surprise
$game_troop.surprise = true
end
end
#--------------------------------------------------------------------------
# * Determine if Menu is Called due to Cancel Button
#--------------------------------------------------------------------------
def update_call_menu
if Input.trigger?(Input::B)
return if $game_map.interpreter.running? # Event being executed?
return if $game_system.menu_disabled # Menu forbidden?
$game_temp.menu_beep = true # Set SE play flag
$game_temp.next_scene = "menu"
end
end
#--------------------------------------------------------------------------
# * Determine Bug Call Due to F9 key
#--------------------------------------------------------------------------
def update_call_debug
if $TEST and Input.press?(Input::F9) # F9 key during test play
$game_temp.next_scene = "debug"
end
end
#--------------------------------------------------------------------------
# * Execute Screen Switch
#--------------------------------------------------------------------------
def update_scene_change
return if $game_player.moving? # Is player moving?
case $game_temp.next_scene
when "battle"
call_battle
when "shop"
call_shop
when "name"
call_name
when "menu"
call_menu
when "save"
call_save
when "debug"
call_debug
when "gameover"
call_gameover
when "title"
call_title
else
$game_temp.next_scene = nil
end
end
#--------------------------------------------------------------------------
# * Switch to Battle Screen
#--------------------------------------------------------------------------
def call_battle
@spriteset.update
Graphics.update
$game_player.make_encounter_count
$game_player.straighten
$game_temp.map_bgm = RPG::BGM.last
$game_temp.map_bgs = RPG::BGS.last
RPG::BGM.stop
RPG::BGS.stop
Sound.play_battle_start
$game_system.battle_bgm.play
$game_temp.next_scene = nil
$scene = Scene_Battle.new
end
#--------------------------------------------------------------------------
# * Switch to Shop Screen
#--------------------------------------------------------------------------
def call_shop
$game_temp.next_scene = nil
$scene = Scene_Shop.new
end
#--------------------------------------------------------------------------
# * Switch to Name Input Screen
#--------------------------------------------------------------------------
def call_name
$game_temp.next_scene = nil
$scene = Scene_Name.new
end
#--------------------------------------------------------------------------
# * Switch to Menu Screen
#--------------------------------------------------------------------------
def call_menu
if $game_temp.menu_beep
Sound.play_decision
$game_temp.menu_beep = false
end
$game_temp.map_bgm = RPG::BGM.last
$game_temp.map_bgs = RPG::BGS.last
RPG::BGM.stop
RPG::BGS.stop
$game_temp.next_scene = nil
$scene = Scene_Menu.new
end
#--------------------------------------------------------------------------
# * Switch to Save Screen
#--------------------------------------------------------------------------
def call_save
$game_temp.next_scene = nil
$scene = Scene_File.new(true, false, true)
end
#--------------------------------------------------------------------------
# * Switch to Debug Screen
#--------------------------------------------------------------------------
def call_debug
Sound.play_decision
$game_temp.next_scene = nil
$scene = Scene_Debug.new
end
#--------------------------------------------------------------------------
# * Switch to Game Over Screen
#--------------------------------------------------------------------------
def call_gameover
$game_temp.next_scene = nil
$scene = Scene_Gameover.new
end
#--------------------------------------------------------------------------
# * Switch to Title Screen
#--------------------------------------------------------------------------
def call_title
$game_temp.next_scene = nil
$scene = Scene_Title.new
fadeout(60)
end
#--------------------------------------------------------------------------
# * Execute Pre-battle Transition
#--------------------------------------------------------------------------
def perform_battle_transition
Graphics.transition(80, "Graphics/System/BattleStart", 80)
Graphics.freeze
end
end