zerowMolécule
Messages : 94 Age : 28 Loisirs : Making et lire Date d'inscription : 25/12/2010
Caractéristiques du membre Evolution: Atome Job: Graphiste/Scenariste XP: (20/20)
| Sujet: Script Scene-Bonus Mar 28 Déc 2010 - 21:41 | |
| Boujour les Zarokiens le script que je vous presente sers a avoir une nouvelle option a l'écran titre nommer "Bonus" on seront entreposer des images qu'on débloque peut a peut en avançant dans le jeux Merci a Chronoos Crée un nouveau script au dessus de Main et nommer le "Scène Bonus" vous aller avoir besoin de quelque image voila - Spoiler:
- Spoiler:
- Spoiler:
- Spoiler:
- Spoiler:
- Spoiler:
- Spoiler:
Les images sont a mettre dans Graphics/Pictures - Spoiler:
#============================================================================== # Scene Bonus #------------------------------------------------------------------------------ #==============================================================================
$nb_sauvegardes=3 # Le script gére 4 sauvegardes mais on peut diminuer. $nb_cases_ver=8 # Le nombre de cases à la verticale $nb_cases_hor=9 # Le nombre de cases à l'horizontale
$nb_var_begin=0 # Numéro de la première variables utilisée pour les bonus
$shift_x=0 # Ecartement entre les icones en X $shift_y=0 # Ecartement entre les icones en Y $shift_corner_x=5 # Ecartement entre la première icone et le bord de la fenêtre en X $shift_corner_y=5 # Ecartement entre la première icone et le bord de la fenêtre en Y $shift_corner_cursor_x=30 # Ecartement entre la première position du curseur et le bord de la fenêtre en X $shift_corner_cursor_y=30 # Ecartement entre la première position du curseur et le bord de la fenêtre en Y
$color_background=Color.new(255, 255, 255) # Couleur derrière l'image de fond $img_background="bonuslay" # Image de fond $img_lock="bonuslock" # Image si bonus bloqué $img_cursor="curseur" # Image du curseur pour selectionner
$img_arrow_left="bonusleft" # Image flêche gauche $img_arrow_right="bonusright" # Image flêche droite
$img_file=[] $img_file[0]="bonusfile1" # Image en haut à droite lorsque l'on est dans le fichier 1 $img_file[1]="bonusfile2" # Image en haut à droite lorsque l'on est dans le fichier 2 $img_file[2]="bonusfile3" # Image en haut à droite lorsque l'on est dans le fichier 3 $img_file[3]="" # Image en haut à droite lorsque l'on est dans le fichier 4
#============================================================================== # ¦ Icônes #------------------------------------------------------------------------------ # Tableaux contenant les icônes #==============================================================================
# Declaration des tableaux contenant les icones, un par sauvegarde. # Pour gérer différent bonus par sauvegarde $ticons_1=[] $ticons_2=[] $ticons_3=[] $ticons_4=[] $path_icons="" # Adresse des icones, si différent des autres images # On met ci-dessous le chemin pour toutes les icônes 8*9 # L'index s'utilise comme un bande desinée, du haut à gauche vers le bas à droite.
#-------------------------------------------------------------------------- # Tableau des icônes sauvegarde 1 #-------------------------------------------------------------------------- $ticons_1[0]= "" $ticons_1[1]= "" $ticons_1[2]= "" $ticons_1[3]= "" $ticons_1[4]= "" $ticons_1[5]= "" $ticons_1[6]= "" $ticons_1[7]= "" $ticons_1[8]= ""
$ticons_1[9]= "" $ticons_1[10]="" $ticons_1[11]="" $ticons_1[12]="" $ticons_1[13]="" $ticons_1[14]="" $ticons_1[15]="" $ticons_1[16]="" $ticons_1[17]=""
$ticons_1[18]="" $ticons_1[19]="" $ticons_1[20]="" $ticons_1[21]="" $ticons_1[22]="" $ticons_1[23]="" $ticons_1[24]="" $ticons_1[25]="" $ticons_1[26]=""
$ticons_1[27]="" $ticons_1[28]="" $ticons_1[29]="" $ticons_1[30]="" $ticons_1[31]="" $ticons_1[32]="" $ticons_1[33]="" $ticons_1[34]="" $ticons_1[35]=""
$ticons_1[36]="" $ticons_1[37]="" $ticons_1[38]="" $ticons_1[39]="" $ticons_1[40]="" $ticons_1[41]="" $ticons_1[42]="" $ticons_1[43]="" $ticons_1[44]=""
$ticons_1[45]="" $ticons_1[46]="" $ticons_1[47]="" $ticons_1[48]="" $ticons_1[49]="" $ticons_1[50]="" $ticons_1[51]="" $ticons_1[52]="" $ticons_1[53]=""
$ticons_1[54]="" $ticons_1[55]="" $ticons_1[56]="" $ticons_1[57]="" $ticons_1[58]="" $ticons_1[59]="" $ticons_1[60]="" $ticons_1[61]="" $ticons_1[62]=""
$ticons_1[63]="" $ticons_1[64]="" $ticons_1[65]="" $ticons_1[66]="" $ticons_1[67]="" $ticons_1[68]="" $ticons_1[69]="" $ticons_1[70]="" $ticons_1[71]=""
#-------------------------------------------------------------------------- # Tableau des icônes sauvegarde 2 #-------------------------------------------------------------------------- $ticons_2[0]= "" $ticons_2[1]= "" $ticons_2[2]= "" $ticons_2[3]= "" $ticons_2[4]= "" $ticons_2[5]= "" $ticons_2[6]= "" $ticons_2[7]= "" $ticons_2[8]= ""
$ticons_2[9]= "" $ticons_2[10]="" $ticons_2[11]="" $ticons_2[12]="" $ticons_2[13]="" $ticons_2[14]="" $ticons_2[15]="" $ticons_2[16]="" $ticons_2[17]=""
$ticons_2[18]="" $ticons_2[19]="" $ticons_2[20]="" $ticons_2[21]="" $ticons_2[22]="" $ticons_2[23]="" $ticons_2[24]="" $ticons_2[25]="" $ticons_2[26]=""
$ticons_2[27]="" $ticons_2[28]="" $ticons_2[29]="" $ticons_2[30]="" $ticons_2[31]="" $ticons_2[32]="" $ticons_2[33]="" $ticons_2[34]="" $ticons_2[35]=""
$ticons_2[36]="" $ticons_2[37]="" $ticons_2[38]="" $ticons_2[39]="" $ticons_2[40]="" $ticons_2[41]="" $ticons_2[42]="" $ticons_2[43]="" $ticons_2[44]=""
$ticons_2[45]="" $ticons_2[46]="" $ticons_2[47]="" $ticons_2[48]="" $ticons_2[49]="" $ticons_2[50]="" $ticons_2[51]="" $ticons_2[52]="" $ticons_2[53]=""
$ticons_2[54]="" $ticons_2[55]="" $ticons_2[56]="" $ticons_2[57]="" $ticons_2[58]="" $ticons_2[59]="" $ticons_2[60]="" $ticons_2[61]="" $ticons_2[62]=""
$ticons_2[63]="" $ticons_2[64]="" $ticons_2[65]="" $ticons_2[66]="" $ticons_2[67]="" $ticons_2[68]="" $ticons_2[69]="" $ticons_2[70]="" $ticons_2[71]=""
#-------------------------------------------------------------------------- # Tableau des icônes sauvegarde 3 #-------------------------------------------------------------------------- $ticons_3[0]= "" $ticons_3[1]= "" $ticons_3[2]= "" $ticons_3[3]= "" $ticons_3[4]= "" $ticons_3[5]= "" $ticons_3[6]= "" $ticons_3[7]= "" $ticons_3[8]= ""
$ticons_3[9]= "" $ticons_3[10]="" $ticons_3[11]="" $ticons_3[12]="" $ticons_3[13]="" $ticons_3[14]="" $ticons_3[15]="" $ticons_3[16]="" $ticons_3[17]=""
$ticons_3[18]="" $ticons_3[19]="" $ticons_3[20]="" $ticons_3[21]="" $ticons_3[22]="" $ticons_3[23]="" $ticons_3[24]="" $ticons_3[25]="" $ticons_3[26]=""
$ticons_3[27]="" $ticons_3[28]="" $ticons_3[29]="" $ticons_3[30]="" $ticons_3[31]="" $ticons_3[32]="" $ticons_3[33]="" $ticons_3[34]="" $ticons_3[35]=""
$ticons_3[36]="" $ticons_3[37]="" $ticons_3[38]="" $ticons_3[39]="" $ticons_3[40]="" $ticons_3[41]="" $ticons_3[42]="" $ticons_3[43]="" $ticons_3[44]=""
$ticons_3[45]="" $ticons_3[46]="" $ticons_3[47]="" $ticons_3[48]="" $ticons_3[49]="" $ticons_3[50]="" $ticons_3[51]="" $ticons_3[52]="" $ticons_3[53]=""
$ticons_3[54]="" $ticons_3[55]="" $ticons_3[56]="" $ticons_3[57]="" $ticons_3[58]="" $ticons_3[59]="" $ticons_3[60]="" $ticons_3[61]="" $ticons_3[62]=""
$ticons_3[63]="" $ticons_3[64]="" $ticons_3[65]="" $ticons_3[66]="" $ticons_3[67]="" $ticons_3[68]="" $ticons_3[69]="" $ticons_3[70]="" $ticons_3[71]=""
#-------------------------------------------------------------------------- # Tableau des icônes sauvegarde 4 #-------------------------------------------------------------------------- $ticons_4[0]= "" $ticons_4[1]= "" $ticons_4[2]= "" $ticons_4[3]= "" $ticons_4[4]= "" $ticons_4[5]= "" $ticons_4[6]= "" $ticons_4[7]= "" $ticons_4[8]= ""
$ticons_4[9]= "" $ticons_4[10]="" $ticons_4[11]="" $ticons_4[12]="" $ticons_4[13]="" $ticons_4[14]="" $ticons_4[15]="" $ticons_4[16]="" $ticons_4[17]=""
$ticons_4[18]="" $ticons_4[19]="" $ticons_4[20]="" $ticons_4[21]="" $ticons_4[22]="" $ticons_4[23]="" $ticons_4[24]="" $ticons_4[25]="" $ticons_4[26]=""
$ticons_4[27]="" $ticons_4[28]="" $ticons_4[29]="" $ticons_4[30]="" $ticons_4[31]="" $ticons_4[32]="" $ticons_4[33]="" $ticons_4[34]="" $ticons_4[35]=""
$ticons_4[36]="" $ticons_4[37]="" $ticons_4[38]="" $ticons_4[39]="" $ticons_4[40]="" $ticons_4[41]="" $ticons_4[42]="" $ticons_4[43]="" $ticons_4[44]=""
$ticons_4[45]="" $ticons_4[46]="" $ticons_4[47]="" $ticons_4[48]="" $ticons_4[49]="" $ticons_4[50]="" $ticons_4[51]="" $ticons_4[52]="" $ticons_4[53]=""
$ticons_4[54]="" $ticons_4[55]="" $ticons_4[56]="" $ticons_4[57]="" $ticons_4[58]="" $ticons_4[59]="" $ticons_4[60]="" $ticons_4[61]="" $ticons_4[62]=""
$ticons_4[63]="" $ticons_4[64]="" $ticons_4[65]="" $ticons_4[66]="" $ticons_4[67]="" $ticons_4[68]="" $ticons_4[69]="" $ticons_4[70]="" $ticons_4[71]=""
#============================================================================== # ¦ Images #------------------------------------------------------------------------------ # Tableaux contenant les images #==============================================================================
# Declaration des tableaux contenant les images, un par sauvegarde. # Pour gérer différent bonus par sauvegarde $timages_1=[] $timages_2=[] $timages_3=[] $timages_4=[] $path_images="" # Adresse des images bonus, si différent des autres images # On met ci-dessous le chemin pour toutes les imgaes 8*9 # L'index s'utilise comme un bande desinée, du haut à gauche vers le bas à droite.
#-------------------------------------------------------------------------- # Tableau des images sauvegarde 1 #-------------------------------------------------------------------------- $timages_1[0]= "" $timages_1[1]= "" $timages_1[2]= "" $timages_1[3]= "" $timages_1[4]= "" $timages_1[5]= "" $timages_1[6]= "" $timages_1[7]= "" $timages_1[8]= ""
$timages_1[9]= "" $timages_1[10]="" $timages_1[11]="" $timages_1[12]="" $timages_1[13]="" $timages_1[14]="" $timages_1[15]="" $timages_1[16]="" $timages_1[17]=""
$timages_1[18]="" $timages_1[19]="" $timages_1[20]="" $timages_1[21]="" $timages_1[22]="" $timages_1[23]="" $timages_1[24]="" $timages_1[25]="" $timages_1[26]=""
$timages_1[27]="" $timages_1[28]="" $timages_1[29]="" $timages_1[30]="" $timages_1[31]="" $timages_1[32]="" $timages_1[33]="" $timages_1[34]="" $timages_1[35]=""
$timages_1[36]="" $timages_1[37]="" $timages_1[38]="" $timages_1[39]="" $timages_1[40]="" $timages_1[41]="" $timages_1[42]="" $timages_1[43]="" $timages_1[44]=""
$timages_1[45]="" $timages_1[46]="" $timages_1[47]="" $timages_1[48]="" $timages_1[49]="" $timages_1[50]="" $timages_1[51]="" $timages_1[52]="" $timages_1[53]=""
$timages_1[54]="" $timages_1[55]="" $timages_1[56]="" $timages_1[57]="" $timages_1[58]="" $timages_1[59]="" $timages_1[60]="" $timages_1[61]="" $timages_1[62]=""
$timages_1[63]="" $timages_1[64]="" $timages_1[65]="" $timages_1[66]="" $timages_1[67]="" $timages_1[68]="" $timages_1[69]="" $timages_1[70]="" $timages_1[71]=""
#-------------------------------------------------------------------------- # Tableau des images sauvegarde 2 #-------------------------------------------------------------------------- $timages_2[0]= "" $timages_2[1]= "" $timages_2[2]= "" $timages_2[3]= "" $timages_2[4]= "" $timages_2[5]= "" $timages_2[6]= "" $timages_2[7]= "" $timages_2[8]= ""
$timages_2[9]= "" $timages_2[10]="" $timages_2[11]="" $timages_2[12]="" $timages_2[13]="" $timages_2[14]="" $timages_2[15]="" $timages_2[16]="" $timages_2[17]=""
$timages_2[18]="" $timages_2[19]="" $timages_2[20]="" $timages_2[21]="" $timages_2[22]="" $timages_2[23]="" $timages_2[24]="" $timages_2[25]="" $timages_2[26]=""
$timages_2[27]="" $timages_2[28]="" $timages_2[29]="" $timages_2[30]="" $timages_2[31]="" $timages_2[32]="" $timages_2[33]="" $timages_2[34]="" $timages_2[35]=""
$timages_2[36]="" $timages_2[37]="" $timages_2[38]="" $timages_2[39]="" $timages_2[40]="" $timages_2[41]="" $timages_2[42]="" $timages_2[43]="" $timages_2[44]=""
$timages_2[45]="" $timages_2[46]="" $timages_2[47]="" $timages_2[48]="" $timages_2[49]="" $timages_2[50]="" $timages_2[51]="" $timages_2[52]="" $timages_2[53]=""
$timages_2[54]="" $timages_2[55]="" $timages_2[56]="" $timages_2[57]="" $timages_2[58]="" $timages_2[59]="" $timages_2[60]="" $timages_2[61]="" $timages_2[62]=""
$timages_2[63]="" $timages_2[64]="" $timages_2[65]="" $timages_2[66]="" $timages_2[67]="" $timages_2[68]="" $timages_2[69]="" $timages_2[70]="" $timages_2[71]=""
#-------------------------------------------------------------------------- # Tableau des images sauvegarde 3 #-------------------------------------------------------------------------- $timages_3[0]= "" $timages_3[1]= "" $timages_3[2]= "" $timages_3[3]= "" $timages_3[4]= "" $timages_3[5]= "" $timages_3[6]= "" $timages_3[7]= "" $timages_3[8]= ""
$timages_3[9]= "" $timages_3[10]="" $timages_3[11]="" $timages_3[12]="" $timages_3[13]="" $timages_3[14]="" $timages_3[15]="" $timages_3[16]="" $timages_3[17]=""
$timages_3[18]="" $timages_3[19]="" $timages_3[20]="" $timages_3[21]="" $timages_3[22]="" $timages_3[23]="" $timages_3[24]="" $timages_3[25]="" $timages_3[26]=""
$timages_3[27]="" $timages_3[28]="" $timages_3[29]="" $timages_3[30]="" $timages_3[31]="" $timages_3[32]="" $timages_3[33]="" $timages_3[34]="" $timages_3[35]=""
$timages_3[36]="" $timages_3[37]="" $timages_3[38]="" $timages_3[39]="" $timages_3[40]="" $timages_3[41]="" $timages_3[42]="" $timages_3[43]="" $timages_3[44]=""
$timages_3[45]="" $timages_3[46]="" $timages_3[47]="" $timages_3[48]="" $timages_3[49]="" $timages_3[50]="" $timages_3[51]="" $timages_3[52]="" $timages_3[53]=""
$timages_3[54]="" $timages_3[55]="" $timages_3[56]="" $timages_3[57]="" $timages_3[58]="" $timages_3[59]="" $timages_3[60]="" $timages_3[61]="" $timages_3[62]=""
$timages_3[63]="" $timages_3[64]="" $timages_3[65]="" $timages_3[66]="" $timages_3[67]="" $timages_3[68]="" $timages_3[69]="" $timages_3[70]="" $timages_3[71]=""
#-------------------------------------------------------------------------- # Tableau des images sauvegarde 4 #-------------------------------------------------------------------------- $timages_4[0]= "" $timages_4[1]= "" $timages_4[2]= "" $timages_4[3]= "" $timages_4[4]= "" $timages_4[5]= "" $timages_4[6]= "" $timages_4[7]= "" $timages_4[8]= ""
$timages_4[9]= "" $timages_4[10]="" $timages_4[11]="" $timages_4[12]="" $timages_4[13]="" $timages_4[14]="" $timages_4[15]="" $timages_4[16]="" $timages_4[17]=""
$timages_4[18]="" $timages_4[19]="" $timages_4[20]="" $timages_4[21]="" $timages_4[22]="" $timages_4[23]="" $timages_4[24]="" $timages_4[25]="" $timages_4[26]=""
$timages_4[27]="" $timages_4[28]="" $timages_4[29]="" $timages_4[30]="" $timages_4[31]="" $timages_4[32]="" $timages_4[33]="" $timages_4[34]="" $timages_4[35]=""
$timages_4[36]="" $timages_4[37]="" $timages_4[38]="" $timages_4[39]="" $timages_4[40]="" $timages_4[41]="" $timages_4[42]="" $timages_4[43]="" $timages_4[44]=""
$timages_4[45]="" $timages_4[46]="" $timages_4[47]="" $timages_4[48]="" $timages_4[49]="" $timages_4[50]="" $timages_4[51]="" $timages_4[52]="" $timages_4[53]=""
$timages_4[54]="" $timages_4[55]="" $timages_4[56]="" $timages_4[57]="" $timages_4[58]="" $timages_4[59]="" $timages_4[60]="" $timages_4[61]="" $timages_4[62]=""
$timages_4[63]="" $timages_4[64]="" $timages_4[65]="" $timages_4[66]="" $timages_4[67]="" $timages_4[68]="" $timages_4[69]="" $timages_4[70]="" $timages_4[71]=""
#============================================================================== # ¦ Scene_Tilte #------------------------------------------------------------------------------ # Ecran principale #============================================================================== class Scene_Title #-------------------------------------------------------------------------- # Ecran titre #-------------------------------------------------------------------------- def main if $BTEST battle_test return end # Chargement des données $data_actors = load_data("Data/Actors.rxdata") $data_classes = load_data("Data/Classes.rxdata") $data_skills = load_data("Data/Skills.rxdata") $data_items = load_data("Data/Items.rxdata") $data_weapons = load_data("Data/Weapons.rxdata") $data_armors = load_data("Data/Armors.rxdata") $data_enemies = load_data("Data/Enemies.rxdata") $data_troops = load_data("Data/Troops.rxdata") $data_states = load_data("Data/States.rxdata") $data_animations = load_data("Data/Animations.rxdata") $data_tilesets = load_data("Data/Tilesets.rxdata") $data_common_events = load_data("Data/CommonEvents.rxdata") $data_system = load_data("Data/System.rxdata") # Démarrage du système de jeu $game_system = Game_System.new # Nouveau sprite @sprite = Sprite.new # I;portation de l'image d'écran titre @sprite.bitmap = RPG::Cache.title($data_system.title_name) # Liste des choix disponibles s1 = "Nouvelle partie" s2 = "Charger une partie" s3 = "Bonus" s4 = "Quitter" # Déclaration de la fenêtre contenant les choix @command_window = Window_Command.new(192, [s1, s2, s3, s4]) @command_window.back_opacity = 160 @command_window.x = 320 - @command_window.width / 2 @command_window.y = 288 # On regarde s'il existe une sauvegarde. @continue_enabled = false for i in 0..3 if FileTest.exist?("Sauvegarde#{i+1}.rxdata") @continue_enabled = true end end # On place le curseur automatiquement sur continuer si une aprtie existe if @continue_enabled @command_window.index = 1 else @command_window.disable_item(1) end # $game_system.bgm_play($data_system.title_bgm) # Audio.me_stop Audio.bgs_stop # transition pour afficher le menu Graphics.transition # boucle du menu loop do # Rafraichissement de l'affichage Graphics.update # Rafraichissement de l'état du clavie Input.update # Appel de la fonction Update update # Si aucune scène n'ai en cours, on break if $scene != self break end end # On freeze l'écran Graphics.freeze # On libère la boite de selection @command_window.dispose # On libère les prite @sprite.bitmap.dispose @sprite.dispose end
#-------------------------------------------------------------------------- # Update #-------------------------------------------------------------------------- def update # Mise à jour de la boite de selection @command_window.update # if Input.trigger?(Input::C) # case @command_window.index when 0 # Nouvelle partie command_new_game when 1 # Continuer command_continue when 2 # Bonus command_bonus when 3 # Exit command_shutdown end end end
#-------------------------------------------------------------------------- # Command : Bonus #-------------------------------------------------------------------------- def command_bonus $scene = Scene_Bonus.new end end# !Scene_Title
#============================================================================== # ¦ Scene_Bonus #------------------------------------------------------------------------------ # Scene avec les bonus #============================================================================== class Scene_Bonus
#-------------------------------------------------------------------------- # Méthode pour initialiser les variables #-------------------------------------------------------------------------- def initialize @debug = false # Variable qui active quelque debugs
# Les variables de position @pos_x = 0 # Position du curseur en X @pos_y = 0 # Position du curseur en Y
@refresh_cursor = true # Egal à true si besoin de refraichir la position du curseur @refresh_file = true # Egal à true si besoin de refraichir le tableau si on change d'onglet @save_exist = false # Egal a true si la sauvegarde existe @save_file = 1 # Numéro de la sauvegarde en cours @table_icons =[] # Tableau de sprites @icons_exist = false # A ne pas toucher, elle sert à libérer toutes les icones SI elle on était créer end def main # Arreter la musique Audio.bgm_stop
# Chargement de l'image de fond
# Création de nouveaux srpites background = Sprite.new sprite = Sprite.new
# Associer un bitmap faisant la taille de la fenêtre RMXP background.bitmap = Bitmap.new(640, 480)
# Remplissage de l'image de fond en Blanc background.bitmap.fill_rect(0, 0, 640, 480, $color_background)
# Remplissage de l'image dans le sprite sprite.bitmap = RPG::Cache.picture($img_background)
# On affiche le fond sans changement brutale Graphics.transition
loop do # Mettre à jour la gestion du clavier Graphics.update Input.update update if (@refresh_file == true) load_variables display_icons @refresh_file = false end if (@refresh_cursor == true) update_cursor @refresh_cursor = false end # On sort de la boucle si on a changer de scene if $scene != self # On libere les images background.dispose sprite.dispose @cursor.dispose break end end end# !main
#-------------------------------------------------------------------------- # Mise à jour et interpretation des entrées #-------------------------------------------------------------------------- def update # C Touche entrer if Input.trigger?(Input::C) if (@debug == true) print "x=", @pos_x.to_s, "y=", @pos_y.to_s end if (@save_exist && $game_variables[$nb_var_begin+@pos_x+@pos_y*$nb_cases_hor]) # Effet sonor du curseur (SE) $game_system.se_play($data_system.cursor_se) display_bonus elsif # Effer sonor buzzer (SE) $game_system.se_play($data_system.buzzer_se) end return end
# B Touche échap if Input.trigger?(Input::B) # On appel la méthod pour sortir du menu on_cancel return end
# Y Touche S if Input.trigger?(Input::Y) # On appel la page précédente
if (@save_file > 1) # Effet sonor du curseur (SE) $game_system.se_play($data_system.cursor_se) @save_file = (@save_file-1) @refresh_file = true elsif # Effer sonor buzzer (SE) $game_system.se_play($data_system.buzzer_se) end return end
# Z Touche D if Input.trigger?(Input::Z) # On appel la page suivante if (@save_file < $nb_sauvegardes) # Effet sonor du curseur (SE) $game_system.se_play($data_system.cursor_se) @save_file = (@save_file+1) @refresh_file = true elsif # Effer sonor buzzer (SE) $game_system.se_play($data_system.buzzer_se) end return end
# Touche directionelle Bas gardée appuyer. if Input.repeat?(Input::DOWN) # Si on reste appuyé sur la touche bas, on ne peux passer du bas vers le haut, # Mais si on appuye une fois su bas avec le cusreur en bas, on revient en haut. if Input.trigger?(Input::DOWN) or @pos_y < $nb_cases_ver-1 # Effet sonor du curseur (SE) $game_system.se_play($data_system.cursor_se) # On remet à jour ca position dans les variables @pos_y = (@pos_y + 1) % $nb_cases_ver # On active refresh_cursor pour repositionner le curseur @refresh_cursor = true return end end
# Touche directionelle Haut gardée appuyer. if Input.repeat?(Input::UP) # Si on reste appuyé sur la touche haut, on ne peux passer du haut vers le bas, # Mais si on appuye une fois su haut avec le cusreur en haut, on revient en bas. if Input.trigger?(Input::UP) or @pos_y > 0 # Effet sonor du curseur (SE) $game_system.se_play($data_system.cursor_se) # On remet à jour ca position dans les variables @pos_y = (@pos_y + $nb_cases_ver - 1) % $nb_cases_ver # On active refresh_cursor pour repositionner le curseur @refresh_cursor = true return end end
# Touche directionelle Droite gardée appuyer. if Input.repeat?(Input::RIGHT) # Si on reste appuyé sur la touche droite, on ne peux passer du bas vers le haut, # Mais si on appuye une fois su bas avec le cusreur en bas, on revient en haut. if Input.trigger?(Input::RIGHT) or @pos_x < $nb_cases_hor-1 # Effet sonor du curseur (SE) $game_system.se_play($data_system.cursor_se) # On remet à jour ca position dans les variables @pos_x = (@pos_x + 1) % $nb_cases_hor # On active refresh_cursor pour repositionner le curseur @refresh_cursor = true return end end
# Touche directionelle Gauche gardée appuyer. if Input.repeat?(Input::LEFT) # Si on reste appuyé sur la touche gauche, on ne peux passer du haut vers le bas, # Mais si on appuye une fois su haut avec le cusreur en haut, on revient en bas. if Input.trigger?(Input::LEFT) or @pos_x > 0 # Effet sonor du curseur (SE) $game_system.se_play($data_system.cursor_se) # On remet à jour ca position dans les variables @pos_x = (@pos_x + $nb_cases_hor - 1) % $nb_cases_hor # On active refresh_cursor pour repositionner le curseur @refresh_cursor = true return end end end# !update
#-------------------------------------------------------------------------- # Chargement des variables de la sauvegarde #-------------------------------------------------------------------------- def load_variables
filename = "Sauvegarde#{@save_file}.rxdata"
unless FileTest.exist?(filename) # Si la sauvegarde n'existe pas # Effer sonor buzzer (SE) $game_system.se_play($data_system.buzzer_se) @save_exist = false if (@debug == true) print filename, "n n'existe pas..." end return end
if (@debug == true) print filename, "n exist" end
@save_exist = true # On ouvre la sauvegarde file = File.open(filename, "rb") # On y recupere les variables globale $game_variables = Marshal.load(file) # On referme la sauvegarde file.close end# !load_variables
#-------------------------------------------------------------------------- # Afficher le tableau d'icônes et image #-------------------------------------------------------------------------- def display_icons
if (@icons_exist==true) i = 0 # Boucle pour libérer toutes les icônes de la page while (i < ($nb_cases_hor*$nb_cases_ver)) do @table_icons[i].dispose i+=1 end @img_file.dispose @refresh_cursor = true end @img_file = Sprite.new @img_file.bitmap = RPG::Cache.picture($img_file[@save_file-1]) @icons_exist = true
# Affichage des flêches gauche et droite # Gestion gauche if (@img_arrow_left) @img_arrow_left.dispose end if (@save_file > 1) # flêche gauche affichée @img_arrow_left = Sprite.new @img_arrow_left.bitmap = RPG::Cache.picture($img_arrow_left) end # Gestion droite if (@img_arrow_right) @img_arrow_right.dispose end if (@save_file < $nb_sauvegardes) # flêche droite affichée @img_arrow_right = Sprite.new @img_arrow_right.bitmap = RPG::Cache.picture($img_arrow_right) end # Double boucle pour parcourir tout le tableau plus facilement, avec x et y. i = 0 y = 0 while (y < $nb_cases_ver) do x = 0 while (x < $nb_cases_hor) do
if (@save_exist==false) # On regarde quel tableau prendre @table_icons[i]=Sprite.new # Remplissage de l'image dans le sprite @table_icons[i].bitmap = RPG::Cache.picture($path_icons+$img_lock)
elsif (@save_file==1) @table_icons[i]=Sprite.new # Remplissage de l'image dans le sprite if ((!$ticons_1[i].empty?) && ($game_variables[$nb_var_begin+i])) @table_icons[i].bitmap = RPG::Cache.picture($path_icons+$ticons_1[i]) elsif @table_icons[i].bitmap = RPG::Cache.picture($path_icons+$img_lock) end
elsif (@save_file==2) @table_icons[i]=Sprite.new # Remplissage de l'image dans le sprite if ((!$ticons_2[i].empty?) && ($game_variables[$nb_var_begin+i])) @table_icons[i].bitmap = RPG::Cache.picture($path_icons+$ticons_2[i]) elsif @table_icons[i].bitmap = RPG::Cache.picture($path_icons+$img_lock) end
elsif (@save_file==3) @table_icons[i]=Sprite.new # Remplissage de l'image dans le sprite if ((!$ticons_3[i].empty?) && ($game_variables[$nb_var_begin+i])) @table_icons[i].bitmap = RPG::Cache.picture($path_icons+$ticons_3[i]) elsif @table_icons[i].bitmap = RPG::Cache.picture($path_icons+$img_lock) end
elsif (@save_file==4) @table_icons[i]=Sprite.new # Remplissage de l'image dans le sprite if ((!$ticons_4[i].empty?) && ($game_variables[$nb_var_begin+i])) @table_icons[i].bitmap = RPG::Cache.picture($path_icons+$ticons_4[i]) elsif @table_icons[i].bitmap = RPG::Cache.picture($path_icons+$img_lock) end end # Exeption au cas où l'icône serait plus petite que 50, pour la centrer shift_center_x=(50 - @table_icons[i].bitmap.width)/2 shift_center_y=(50 - @table_icons[i].bitmap.height)/2
# Coordonnées de l'icône @table_icons[i].x=$shift_corner_x+x*50 + shift_center_x @table_icons[i].y=$shift_corner_y+y*50 + shift_center_y i+=1 x+=1 end y+=1 end end# !display_icons
#-------------------------------------------------------------------------- # Afficher le curseur #-------------------------------------------------------------------------- def update_cursor
# On libere l'ancien curseur if (@cursor) @cursor.dispose end
# On recupere l'image du curseur @cursor = Sprite.new @cursor.bitmap = RPG::Cache.picture($img_cursor)
# Coordonnées de l'icône @cursor.x=$shift_corner_cursor_x+@pos_x*($shift_x+50) @cursor.y=$shift_corner_cursor_y+@pos_y*($shift_y+50) end# !update_cursor
#-------------------------------------------------------------------------- # Afficher le bonus #-------------------------------------------------------------------------- def display_bonus
if (@save_file==1) file = $path_images+$timages_1[@pos_x+@pos_y*$nb_cases_hor] elsif (@save_file==2) file = $path_images+$timages_2[@pos_x+@pos_y*$nb_cases_hor] elsif (@save_file==3) file = $path_images+$timages_3[@pos_x+@pos_y*$nb_cases_hor] elsif (@save_file==4) file = $path_images+$timages_4[@pos_x+@pos_y*$nb_cases_hor] end
if (file.empty?) # S'il n'y a pas d'image # Effer sonor buzzer (SE) $game_system.se_play($data_system.buzzer_se) return end
if (@debug == true) # Debug qui affiche le path de l'image print file end
# On recupere l'image du bonus bonus = Sprite.new bonus.bitmap = RPG::Cache.picture(file)
# Exeption au cas où l'icône serait plus petite que l'écran, pour la centrer shift_center_x=(640 - bonus.bitmap.width)/2 shift_center_y=(480 - bonus.bitmap.height)/2
# Coordonnées de l'image bonus.x=shift_center_x bonus.y=shift_center_y
loop do # Mettre à jour la gestion du clavier Graphics.update Input.update # B Touche échap if Input.trigger?(Input::B) # Effet sonor d'annulation $game_system.se_play($data_system.cancel_se) bonus.dispose return end end end# !update_cursor
#-------------------------------------------------------------------------- # Méthode pour sortir du menu bonus #-------------------------------------------------------------------------- def on_cancel
# Liberation de toutes les images utilisées i = 0 # Boucle pour libérer toutes les icônes de la page while (i < ($nb_cases_hor*$nb_cases_ver)) do @table_icons[i].dispose i+=1 end @img_file.dispose if (@img_arrow_left) @img_arrow_left.dispose end if (@img_arrow_right) @img_arrow_right.dispose end # Effet sonor d'annulation $game_system.se_play($data_system.cancel_se) # scene = menu principale $scene = Scene_Title.new end# !on_cancel
end# !Scene_Bonus
Utilisation: Activez les variables globales en jeu, et profitez des bonus dans le menu principale. Les bonus utilisent beaucoup de variables, donc il y'a une variables dans le script qui vous permet de choisir depuis quelle variable du jeu vous commencez à utilisé les bonus Commentaires: Il faut que les images soit dans "./Graphics/Pictures". Dans le script, ne pas mettre l'extension derrière les noms des images. Vous trouverez diverses variables utiles pour personnaliser facilement la fenêtre. La taille nickel des icones est de 50*50, si vous mettez en dessous, l'icone sera centrée, au dessus aussi, mais bien calculer son coup :p Pas de taille max ou mini pour els images, elles seront centrées. Vous pouvez organisé les icones et les images dans des répertoire différents, Il suffit de mettre le chemin entre les "" derrière les variables: $path_icons="" et $path_images="". J'espere que sa vas vous servir ! ^^
Dernière édition par zerow le Mar 28 Déc 2010 - 22:28, édité 1 fois |
|
Redlagoon
Messages : 1430 Age : 32 Loisirs : Ordi-Théâtre-Guitare Date d'inscription : 31/12/2009
Caractéristiques du membre Evolution: Atome Job: psychologue de Zarok ^^ XP: (20/20)
| Sujet: Re: Script Scene-Bonus Mar 28 Déc 2010 - 22:09 | |
| Tu nous dit que nous allons avoir besoins de quelques images....
Des précision sur le pourquoi et le comment s'il te plait! + l'auteur de ce script. |
|