|
| Usine de black974[Pause durée non détérminé] | |
|
+4Le Ziiigg Brandobscure001 S4suk3 Red-seeds 8 participants | |
Auteur | Message |
---|
Kitu
Messages : 6723
| Sujet: Re: Usine de black974[Pause durée non détérminé] Jeu 15 Déc - 17:52 | |
| Un petit screen serait sympa histoire de voir comment ça rend en jeu. | |
| | | Red-seeds
Messages : 69
| Sujet: Re: Usine de black974[Pause durée non détérminé] Jeu 15 Déc - 18:18 | |
| Images:- Spoiler:
(Lorsque que le choix est impossible: )(Lorsque qu'un choix est possible(via un interrupteur: )
On peut constater deux pixel d'écart,c'est parce-que j'avais fait une image trop petite =). De rien. | |
| | | Brandobscure001
Messages : 52
| Sujet: Re: Usine de black974[Pause durée non détérminé] Jeu 15 Déc - 18:20 | |
| Il y a une Erreur ! Screen : Edit : Mais c'est mon Manoir sur le Screen. | |
| | | Le Ziiigg
Messages : 1417
| Sujet: Re: Usine de black974[Pause durée non détérminé] Jeu 15 Déc - 18:27 | |
| Très sympa, bravo. | |
| | | Red-seeds
Messages : 69
| Sujet: Re: Usine de black974[Pause durée non détérminé] Mer 21 Déc - 12:07 | |
| [spoiler="AncienPost":e53c][quote:e53c="blackdzils"]Je vérifie sa. Voilà(J'avais décomposer mon script, et j'avais oublier une partie x).) Desolée. - Code:
-
#========================================================================================== #=================================Window_Scenar============================================ #========================================================================================== ######Auteur:Black974 ######Commencement du script:Jeudi 24Novembre 2011(24/11/11) ######Fin du script: 15Decembre 2011(15/12/11) ######Remerciment:Zanghter/Tasslehoff # http://rmd2.bbactif.com/forum ######Difficulté:Débutant ######N°1 ######Version:1.0 #(Partage autorisé, si vous indiqué l'auteur, les remerciements et le lien) #========================================================================================== =begin Permet de faire un système de choix pour par exemple, vos scenarios. Elle affiche trois fenêtres: -Une en haut, qui Guide le joueur -Une au milieu, pour que le joueur fasse son choix -Une en bas, qui fait un résumé de votre scenario.
La fenêtre du milieu peut contenir trois choix, tous contenu d'une image. Des interrupteurs peuvent être utiliser si vous voulez que le joueur ne peut pas choisir un choix. Si l'interrupteur est activé, le texte et l'image sera afficher. Sinon, une image sera afficher(pour montrer qu'on ne la pas débloqué), ainsi qu'un texte Rouge en Gras(ici, "IMPOSSIBLE POUR LE MOMENT" ). L'opacite de chaque fenêtre est configurable. Les textes sont configurables, ainsi que les interrupteurs et le nom des images. =end #========================================================================================== #=================================CONFIGURATION=========================================== #========================================================================================== module Modif module Blk #Copier/Coller ce script en dessous de materiel. #Pour appeller le script aller dans appel de script et mettez: # $scene = Scene_Scenar.new #(Sans le "#") #La largeur maximale du scenario doit être #149 en largeur et #160 en longeur. #Vos images doit-être dans le dossier Graphics/Pictures #Aucun largeur maximale requise pour l'image au fond. #Une modification ?Un problème ? #N'hésitez pas à me contacter par Mp ! ###################################Config_Titre/Lignes################################### Msg_H = "Choississez votre scenario" #Titre qui s'affiche au haut de la fenêtre (N'oubliez pas les " ") Text_NonD = "IMPOSSIBLE POUR LE MOMENT" #Texte Qui s'affichera lorsque le scenar ne sera pas débloqué Ligne1 = #La ligne 1.Attention ce n'est pas l'histoire 1 mais la ligne 1 ! { #A ne pas supprimer ! 1=> "Il y a très longtemps, notre monde était beau.Le coeur des personnes", #Histoire 1: ligne 1 2 => "Ici mettez l'histoire n°2(ligne1)", #Histoire 2: ligne 1 3 => "Ici mettez l'histoire n°3(ligne1)" ,#Histoire 3: ligne 1 } #A ne pas supprimer !
Ligne2 = { #A ne pas supprimer ! #Eviter des mettre trop de texte, sinon la fenêtre va les coupés. 1 => "créa de la verdure; leurs larmes remplissaient les mers,leurs joie créa de la lumière..", #Histoire 1: ligne 2 2 => "Ici mettez l'histoire n°2(ligne2)", #Histoire 2: ligne 2 3 => "Ici mettez l'histoire n°3(ligne2)", #Histoire 3: ligne 2 } #A ne pas supprimer ! Ligne3 = { #A ne pas supprimer ! 1 => "Oui, ce monde était merveilleux, inovent, miraculeux même....Mais un jour...", #Histoire 1: ligne 3 2 => "Ici mettez l'histoire n°2(ligne3)", #Histoire 2: ligne 3 3 => "Ici mettez l'histoire n°3(ligne3)", #Histoire 3: ligne 3 } Ligne4 = { #A ne pas supprimer ! 1 => "Il y avait trop de soleil, de mer, de verdure...Ces conséquences créa les monstres", #Histoire 1: ligne 3 2 => "Ici mettez l'histoire n°2(ligne4)", #Histoire 2: ligne 4 3 => "Ici mettez l'histoire n°3(ligne4)", #Histoire 3: ligne 4 } #A ne pas supprimer ! ##############################Config_Interrupteur &Teleportation##################################* #T_Map = [Choix1,Choix2,Choix3] #Choix1 = Le 1er choix dans la fenêtre(le premier scenario) #Choix2 = Le 2ème choix dans la fenêtre(le deuxième scenario) T_Map = [1, 2, 3] #Id de la map, ou le héros sera téléporté. T_Map_x = [24,8,5]#Dans le même ordre, position x de la map ou le héros sera téléporté T_Map_y = [26,38,32]#Dans le même ordre, postion y de la map ou le héros sera téléporté
Hist_int = [23,2,3]#ID des interrupteurs qui permet d'activer les choix du scenar # Hist_int = [Int_Hist1 , Int_Hist2 , Int_Hist3] #Int_Hist1 = L'ID de l'interrupteur de l'histoire 1.
#Exemple: #Le joueur choisi le 1er choix, si l'interrupteur "23" est activé, # il sera téléporter dans la map"1", donc la position x sera 24 et la position y sera 26 ##############################Config_Image et Opacite######################################### Opaci_fond = 120 #Opacite de l'image de fond. Opaci_hist = 255 #Opacite de la fenêtre qui affiche l'histoire Opaci_msg = 255 #Opacite de la fenêtre qui affiche Le message en haut Opaci_choix = 255 #Opacite de la fenêtre de choix. Image = "I_Scenar" #Nom de l'image de fond Scenar = [ #Ne pas supprimer "Scenario1", #Nom de l'image du scenario1 "Scenario2", #Nom de l'image du scenario2 "Scenario3", #Nom de l'image du scenario2 ]#Ne pas supprimer Scena_V = "ScenarioV" #Nom de l'image du Scenario Non débloqué. #========================================================================================== #==========================FIN DE LA CONFIGURATION ========================================= #==========================================================================================
end end WLH_2 = 165 class Scene_Scenar < Scene_Base #La scene Scenar hérite de la scene_base include Modif::Blk #On inclue la méthode
def start #Def de départ create_menu_background #On crée un background @commands_scenar = [] #Tableau pour les scenars @choix_scenar = [] #Tableau pour les choix @compteur = -1 #Le compteur sera égale à -1 for x in 1..3 i = nil @commands_scenar.push(i) end @choix_scenar = Window_Command_CS.new(500, @commands_scenar, 3,1,2) @choix_scenar.opacity = Opaci_choix @choix_scenar.x = Graphics.width/2 - 250 @choix_scenar.y = Graphics.height/2 - (50) - WLH_2/2 id = 0 ajout1 = 18 ajout2 = 18 if $game_switches[Hist_int[id]] == true @img1 = Sprite.new @img1.bitmap = Cache.picture(Scenar[id].to_s) @img1.opacity = 255 @img1.x = Graphics.width/2 - 250 + ajout1 @img1.y = Graphics.height/2 - (50) - WLH_2/2 +ajout2 @img1.z = 100 else @img1 = Sprite.new @img1.bitmap = Cache.picture(Scena_V.to_s) @img1.opacity = 240 @img1.x = Graphics.width/2 - 250 +ajout1 @img1.y = Graphics.height/2 - (50) - WLH_2/2 +ajout2 @img1.z = 100 end if $game_switches[Hist_int[1]] == true @img2 = Sprite.new @img2.bitmap = Cache.picture(Scenar[1].to_s) @img2.opacity = 240 @img2.x = Graphics.width/2 - 250 + 173 @img2.y = Graphics.height/2 - (50) - WLH_2/2 +18 @img2.z = 100 else @img2 = Sprite.new @img2.bitmap = Cache.picture(Scena_V.to_s) @img2.opacity = 240 @img2.x = Graphics.width/2 - 250 + 173 @img2.y = Graphics.height/2 - (50) - WLH_2/2 +18 @img2.z = 100 end if $game_switches[Hist_int[2]] == true @img3 = Sprite.new @img3.bitmap = Cache.picture(Scenar[2].to_s) @img3.opacity = 240 @img3.x = Graphics.width/2 - 250 + 165*2 @img3.y = Graphics.height/2 - (50) - WLH_2/2 +18 @img3.z = 100 else @img3 = Sprite.new @img3.bitmap = Cache.picture(Scena_V.to_s) @img3.opacity = 240 @img3.x = Graphics.width/2 - 250 + 165*2 @img3.y = Graphics.height/2 - (50) - WLH_2/2 +18 @img3.z = 100 end
@fond = Sprite.new @fond.bitmap = Cache.picture(Image.to_s) @fond.opacity = Opaci_fond @fene_msg = Window_Base.new (0,0,544,70) @fene_msg.opacity = Opaci_msg @fene_msg.contents.draw_text(0,0,544,70-24, Msg_H.to_s, 0) @fene_msg.z = 50 @fene_hist = Window_Scenar.new @fene_hist.opacity = Opaci_hist @fene_hist.z = 50 end
#----------------------------------------------------- #------Def Terminate------- #------------------------------------------------------ def terminate @fond.dispose @fene_hist.dispose @fene_msg.dispose @choix_scenar.dispose @img1.dispose @img2.dispose @img3.dispose end #Fin du def terminate #----------------------------------------------------- #------Def Update------- #------------------------------------------------------ def update @choix_scenar.update if Input.trigger?(Input::B) Sound.play_cancel $scene = Scene_Map.new elsif @fene_hist.set_action(@choix_scenar.index) #Aller à set_action end end #Fin de def update end#Fin de la class #============================================================================== #**Window_Scenar #==============================================================================
class Window_Scenar < Window_Base include Modif::Blk #On inclue la méthode def initialize super (0,280,544,139)#280...139) @action = nil refresh end
def set_action(num) @action = num refresh end def refresh case @action when 0
if Input.trigger?(Input::C) if $game_switches[Hist_int[0]] == true $game_map.setup(T_Map[0]) $game_player.moveto(T_Map_x[0], T_Map_y[0]) $scene = Scene_Map.new else Sound.play_buzzer end #If $game_switches end #If Input if $game_switches[Hist_int[0]] == true ecrire #Jouer la def else ecrire_NonD end #If $game_switches(2)
when 1 if Input.trigger?(Input::C) if $game_switches[Hist_int[1]] == true $game_map.setup(T_Map[1]) $game_player.moveto(T_Map_x[1], T_Map_y[1]) $scene = Scene_Map.new else Sound.play_buzzer end #If $game_switches end #If Input if $game_switches[Hist_int[1]] == true ecrire else ecrire_NonD end #If
when 2 if Input.trigger?(Input::C) if $game_switches[Hist_int[2]] == true $game_map.setup(T_Map[2]) $game_player.moveto(T_Map_x[2], T_Map_y[2]) $scene = Scene_Map.new else Sound.play_buzzer end #If $game_switches end #If Input if $game_switches[Hist_int[2]] == true ecrire else ecrire_NonD end #If
end #When end #Refresh
def ecrire_NonD self.contents.clear self.contents.font.color = Color.new(255,0,0,255) self.contents.font.bold = true self.contents.font.size = 54 self.contents.draw_text(0,0,544,110-15, Text_NonD.to_s, 0) self.contents.font.bold = false self.contents.font.size = 18 self.contents.font.color = Color.new(255,255,255,255) end
def ecrire self.contents.clear self.contents.draw_text(0,0,544,110-70, Ligne1[@action+1].to_s, 0) self.contents.draw_text(0,0,544,110-30, Ligne2[@action+1].to_s, 0) self.contents.draw_text(0,0,544,110+10, Ligne3[@action+1].to_s, 0) self.contents.draw_text(0,0,544,110+50, Ligne4[@action+1].to_s, 0) end
end #Class
#============================================================================== # ** Window_Selectable_Choix_Scenar #==============================================================================
class Window_Selectable_CS < Window_Base
include Modif::Blk #On inclue la méthode #-------------------------------------------------------------------------- # * Public Instance Variables #-------------------------------------------------------------------------- attr_reader :item_max # item count attr_reader :column_max # digit count attr_reader :index # cursor position attr_reader :help_window # help window #-------------------------------------------------------------------------- # * Object Initialization # x : window X coordinate # y : window Y coordinate # width : window width # height : window height # spacing : width of empty space when items are arranged horizontally #-------------------------------------------------------------------------- def initialize(x, y, width, height, spacing = 32) @item_max = 1 @column_max = 1 @index = -1 @spacing = spacing super(x, y, width, height) end #-------------------------------------------------------------------------- # * Create Window Contents #-------------------------------------------------------------------------- def create_contents self.contents.dispose self.contents = Bitmap.new(width - 32, [height - 32, row_max * WLH_2].max) end #-------------------------------------------------------------------------- # * Set Cursor Position # index : new cursor position #-------------------------------------------------------------------------- def index=(index) @index = index update_cursor call_update_help end #-------------------------------------------------------------------------- # * Get Row Count #-------------------------------------------------------------------------- def row_max return (@item_max + @column_max - 1) / @column_max end #-------------------------------------------------------------------------- # * Get Top Row #-------------------------------------------------------------------------- def top_row return self.oy / WLH_2 end #-------------------------------------------------------------------------- # * Set Top Row # row : row shown on top #-------------------------------------------------------------------------- def top_row=(row) row = 0 if row < 0 row = row_max - 1 if row > row_max - 1 self.oy = row * WLH_2 end #-------------------------------------------------------------------------- # * Get Number of Rows Displayable on 1 Page #-------------------------------------------------------------------------- def page_row_max return (self.height - 32) / WLH_2 end #-------------------------------------------------------------------------- # * Get Number of Items Displayable on 1 Page #-------------------------------------------------------------------------- def page_item_max return page_row_max * @column_max end #-------------------------------------------------------------------------- # * Get bottom row #-------------------------------------------------------------------------- def bottom_row return top_row + page_row_max - 1 end #-------------------------------------------------------------------------- # * Set bottom row # row : Row displayed at the bottom #-------------------------------------------------------------------------- def bottom_row=(row) self.top_row = row - (page_row_max - 1) end #-------------------------------------------------------------------------- # * Get rectangle for displaying items # index : item number #-------------------------------------------------------------------------- def item_rect(index) rect = Rect.new(0, 0, 0, 0) rect.width = (contents.width + @spacing) / @column_max - @spacing rect.height = WLH_2 rect.x = index % @column_max * (rect.width + @spacing) rect.y = index / @column_max * WLH_2 return rect end #-------------------------------------------------------------------------- # * Set Help Window # help_window : new help window #-------------------------------------------------------------------------- def help_window=(help_window) @help_window = help_window call_update_help end #-------------------------------------------------------------------------- # * Determine if cursor is moveable #-------------------------------------------------------------------------- def cursor_movable? return false if (not visible or not active) return false if (index < 0 or index > @item_max or @item_max == 0) return false if (@opening or @closing) return true end #-------------------------------------------------------------------------- # * Move cursor down # wrap : Wraparound allowed #-------------------------------------------------------------------------- def cursor_down(wrap = false) if (@index < @item_max - @column_max) or (wrap and @column_max == 1) @index = (@index + @column_max) % @item_max end end #-------------------------------------------------------------------------- # * Move cursor up # wrap : Wraparound allowed #-------------------------------------------------------------------------- def cursor_up(wrap = false) if (@index >= @column_max) or (wrap and @column_max == 1) @index = (@index - @column_max + @item_max) % @item_max end end #-------------------------------------------------------------------------- # * Move cursor right # wrap : Wraparound allowed #-------------------------------------------------------------------------- def cursor_right(wrap = false) if (@column_max >= 2) and (@index < @item_max - 1 or (wrap and page_row_max == 1)) @index = (@index + 1) % @item_max end end #-------------------------------------------------------------------------- # * Move cursor left # wrap : Wraparound allowed #-------------------------------------------------------------------------- def cursor_left(wrap = false) if (@column_max >= 2) and (@index > 0 or (wrap and page_row_max == 1)) @index = (@index - 1 + @item_max) % @item_max end end #-------------------------------------------------------------------------- # * Move cursor one page down #-------------------------------------------------------------------------- def cursor_pagedown if top_row + page_row_max < row_max @index = [@index + page_item_max, @item_max - 1].min self.top_row += page_row_max end end #-------------------------------------------------------------------------- # * Move cursor one page up #-------------------------------------------------------------------------- def cursor_pageup if top_row > 0 @index = [@index - page_item_max, 0].max self.top_row -= page_row_max end end #-------------------------------------------------------------------------- # * Frame Update #-------------------------------------------------------------------------- def update super if cursor_movable? last_index = @index if Input.repeat?(Input::DOWN) cursor_down(Input.trigger?(Input::DOWN)) end if Input.repeat?(Input::UP) cursor_up(Input.trigger?(Input::UP)) end if Input.repeat?(Input::RIGHT) cursor_right(Input.trigger?(Input::RIGHT)) end if Input.repeat?(Input::LEFT) cursor_left(Input.trigger?(Input::LEFT)) end if Input.repeat?(Input::R) cursor_pagedown end if Input.repeat?(Input::L) cursor_pageup end if @index != last_index Sound.play_cursor end end update_cursor call_update_help end #-------------------------------------------------------------------------- # * Update cursor #-------------------------------------------------------------------------- def update_cursor if @index < 0 # If the cursor position is less than 0 self.cursor_rect.empty # Empty cursor else # If the cursor position is 0 or more row = @index / @column_max # Get current row if row < top_row # If before the currently displayed self.top_row = row # Scroll up end if row > bottom_row # If after the currently displayed self.bottom_row = row # Scroll down end rect = item_rect(@index) # Get rectangle of selected item rect.y -= self.oy # Match rectangle to scroll position self.cursor_rect = rect # Refresh cursor rectangle end end #-------------------------------------------------------------------------- # * Call help window update method #-------------------------------------------------------------------------- def call_update_help if self.active and @help_window != nil update_help end end #-------------------------------------------------------------------------- # * Update help window (contents are defined by the subclasses) #-------------------------------------------------------------------------- def update_help end end
#========================================================= #============================================================================== # ** Window_Command_Choix_Scenar #==============================================================================
class Window_Command_CS< Window_Selectable_CS include Modif::Blk #On inclue la méthode attr_reader :commands # command
def initialize(width, commands, column_max = 1, row_max = 1, spacing = 32) super(0, 0, width, row_max * WLH_2 + 32, spacing) @commands = commands @item_max = commands.size @column_max = column_max refresh self.index = 0 end #-------------------------------------------------------------------------- # * Refresh #-------------------------------------------------------------------------- def refresh self.contents.clear for i in 0...@item_max draw_item(i) end end #-------------------------------------------------------------------------- # * Draw Item # index : item number # enabled : enabled flag. When false, draw semi-transparently. #-------------------------------------------------------------------------- def draw_item(index, enabled = true) rect = item_rect(index) rect.x += 4 rect.width -= 8 self.contents.clear_rect(rect) self.contents.font.color = normal_color self.contents.font.color.alpha = enabled ? 255 : 128 self.contents.draw_text(rect, @commands[index]) end end
Il est en effet beaucoup plus long, car il nécessite un copier coller de command et selection. J'essaiyerai de le réduire, en attendant celui-la doit être fonctionnelle. Eyb ! [spoiler="AncienPost":e53c][quote:e53c="blackdzils"] Shoy ! Juste un p'tit up pour vous dire que j'attends la version cracké US de VX Ace et je m'attaque au RGSS3. (Il me faudrait bien sure un peu de temps pour que j'arrive à m’adapter.Mais il est peu compliqué à apprendre). J'ignore si je continuerai à faire du RGSS2, p'tet si j'ai encore des demandes. Voili-voilou ! Voilà je vous partage un nouveau script, fait à partir d'une demande d'un autre forum, un simple press start en image
C'KOI ?
Permet d'afficher une image avant d'aller dans la fenêtre de choix. Lorsqu'on appuis sur entrée, l'image disparaît et la fenêtre de choix s'ouvre. Le ton de l'écran titre lors de "presse start" peut être modifiée. Possibilité de configurer le son, la position X/Y est l’opacité de l'image Risque d'incompatibilité avec d'autres scripts de menu L'image doit aller dans le dossier Graphics/Pictures.
CONFIGURATION Copier/Coller le script en dessous de matériel L'image doit être dans le dossier Graphics/Pictures et doit ce nommer Start_I(de base). Images/Script:
- Spoiler:
(La faute, a c'est pas moi qui l'a faite, je vous le confirme =)) Script Ici !
Eyb ! | |
| | | Le Ziiigg
Messages : 1417
| Sujet: Re: Usine de black974[Pause durée non détérminé] Mer 21 Déc - 14:33 | |
| Pour faire des vieux menus façon SNES-GBA c'est cool en effet Par contre le style du menu de choix après ne colle plus trop, généralement dans les jeux du style, on a une liste des sauvegardes, vides ou occupées et non un choix comme celui de base. | |
| | | S4suk3
Messages : 87
| Sujet: Re: Usine de black974[Pause durée non détérminé] Mer 21 Déc - 15:11 | |
| Ce serait aussi bien d'étudier les propriétés du MonkeyPatching aussi. là je vois beaucoup de réécriture inutile. | |
| | | Red-seeds
Messages : 69
| Sujet: Re: Usine de black974[Pause durée non détérminé] Mer 21 Déc - 15:18 | |
| C'est vrai...je devrais peut-être faire une compatibilité avec l'écran titre en image. Après pour aller dans la scene_save directement, ça va être simple. Je le ferai plus tard. S4s>Okay je vais voir ça de ce pas=). Merci | |
| | | Le Ziiigg
Messages : 1417
| Sujet: Re: Usine de black974[Pause durée non détérminé] Mer 21 Déc - 15:31 | |
| Ouvrir le menu de sauvegarde ok mais également faire en sorte de créer une nouvelle partie en cliquant sur une sauvegarde vierge | |
| | | S4suk3
Messages : 87
| Sujet: Re: Usine de black974[Pause durée non détérminé] Mer 21 Déc - 15:33 | |
| Exemple à l'arrache - Code:
-
# En ruby = Scene_Title = une constante, donc tu ne vas faire qu'ajouter des méthodes # Scene_Title en faisant ça class Scene_Title # Tu ne dois pas réécrire toutes les autres méthodes alias old_start start # tu fait une alias de l'ancienne méthode def start # Tu affiche ton image et tu test si la touche C est pressée # Si oui, tu utilise break #tu peux l'appeller old_start end end | |
| | | Red-seeds
Messages : 69
| Sujet: Re: Usine de black974[Pause durée non détérminé] Mer 21 Déc - 15:50 | |
| Mmm, je crois que j'ai compris. Je t'enverai un MP, si il y quelque chose que je comprends pas. Merci =). EDIT: - Code:
-
#========================================================================================== #=================================Press_Start Image============================================ #========================================================================================== ######Auteur:Black974(Pris de base le script de Gando) ######Commencement du script:Mardi 21Décembre 2011(21/12/11) ######Fin du script: 22Decembre 2011(22/12/11) ######Remerciment:Tiroflan/S4suk3 # http://rmd2.bbactif.com/forum # http://rpg-maker-vx.bbactif.com/ ######Difficulté:Débutant/Néophyte ######N°2 ######Version:1.1 #1.0 Création du script #1.1 Raccourci du script #========================================================================================== =begin Permet d'afficher une image avant d'aller dans la fenêtre de choix. Lorsqu'on appuis sur entrée, l'image disparait et la fenêtre de choix s'ouvre. -Le ton de l'écran titre lors de "press start" peut être modifié. -Possibilité de configurer le son, la position X/Y et l'opacite de l'image -Possibilité d'aller directement à la scene de sauvegarde après le press_start Risque d'incompatibilité avec d'autre script de menu L'image doit aller dans le dossier Graphics/Pictures #========================================================================================= Methode modifié: -start/update/terminate -Create_title_graphics -Open/Close window command Methodes Crées: -def post_start -Create_press_start =end #========================================================================================== #=================================CONFIGURATION=========================================== #========================================================================================== #Copier coller ce script en dessous de matériel #Une modification ?Un problème ? #N'hésitez pas à me contacter par Mp ! # CREDITS: Gando/Black974 #==========================================================================================
Press_Sound = "Decision2"#Son lorsque qu'on appuis sur Entrée dans press_start Return_Sound = "Cancel"#Son retour à la press_start I_Opacity = 255 #Opacite de l'image Pos_x = 0#Position X de l'image Pos_y = 0 #Position Yde l'image Ton_E = [-170,-50,-50,-50 ]#Ici le ton de l'écran (R,V,B,I) Save = true #Si true, après le press_start, aller à la fenêtre de sauvegarde.Sinon false class Scene_Title < Scene_Base alias old_start start alias pre_update update #-------------------------------------------------------------------------- # * Main Processing #-------------------------------------------------------------------------- def main if $BTEST # If battle test battle_test # Start battle test else # If normal play super # Usual main processing end end #-------------------------------------------------------------------------- # * Start processing #-------------------------------------------------------------------------- def start super old_start
create_press_start @press_start.visible = true @command_window.active = false @command_window.visible = false end #-------------------------------------------------------------------------- # * Termination Processing #-------------------------------------------------------------------------- def terminate super dispose_command_window snapshot_for_background dispose_title_graphic @press_start.dispose end #-------------------------------------------------------------------------- # * Frame Update #-------------------------------------------------------------------------- def update super pre_update if @command_window.active @command_window.update @press_start.update if @press_start.visible if Input.trigger?(Input::C) Audio.se_play("Audio/SE/" + Press_Sound, 80, 100) @press_start.visible = false @sprite.tone.set(0, 0, 0, 0) @command_window.active = true @command_window.visible = true open_command_window end end if Input.trigger?(Input::B) Audio.se_play("Audio/SE/" + Return_Sound, 80, 100) close_command_window @press_start.visible = true @sprite.tone.set(Ton_E[0], Ton_E[1], Ton_E[2], Ton_E[3]) @command_window.active = false @command_window.visible = false end end #-------------------------------------------------------------------------- # * Create Title Graphic #-------------------------------------------------------------------------- def create_title_graphic @sprite = Sprite.new @sprite.tone.set(0, 0, 0, 0) @sprite.bitmap = Cache.system("Title") end #-------------------------------------------------------------------------- # * Create "Press Start" window #-------------------------------------------------------------------------- def create_press_start @sprite.tone.set(Ton_E[0], Ton_E[1], Ton_E[2], Ton_E[3]) @press_start = Sprite.new @press_start.bitmap = Cache.picture("Start_I") @press_start.x = Pos_x @press_start.y = Pos_y @press_start.z = 100 @press_start.opacity = I_Opacity end
end
J'ignore si c'est comme sa que tu voulais que je fasse. EDIT:Nouvelle version merci encore à Tiroflan: http://textup.fr/11381mv | |
| | | S4suk3
Messages : 87
| Sujet: Re: Usine de black974[Pause durée non détérminé] Jeu 22 Déc - 8:44 | |
| C'est déjà plus court J'ai pas tout lu, mais je tiens juste a dire, par soucis de style, que l'inclusion du Module c'est pour débloquer des fonctionnalités d'héritages (mixins), sinon, pour définir un genre de configuration, autant garder l'espace nom défini par le module... | |
| | | Kaila
Messages : 4254
| Sujet: Re: Usine de black974[Pause durée non détérminé] Jeu 22 Déc - 8:55 | |
| Prends des noms plus personnels pour tes alias, sinon gare aux incompatibilités avec d'autres scripts si d'autres auteurs ont eu la bonne idée de les nommer pareil. Utilises "press_start_image_start start" plutôt que "old_start start". D'une manière générale, évites les "old_*", c'est beaucoup trop courant. | |
| | | Red-seeds
Messages : 69
| Sujet: Re: Usine de black974[Pause durée non détérminé] Jeu 22 Déc - 10:40 | |
| D'accord.Merci encore pour votre aide . J'en prendrai compte pour mes prochains scripts. En attendant, je re-re-redonne mon script: http://textup.fr/11395Nr | |
| | | S4suk3
Messages : 87
| Sujet: Re: Usine de black974[Pause durée non détérminé] Jeu 22 Déc - 11:20 | |
| - Citation :
- Utilises "press_start_image_start start" plutôt que "old_start start".
Moins courant mais beaucoup plus logique ... C'est un compromis complexe ... (qui prouve une fois de plus que le MonkeyPatching peut vraiment être une plaie) | |
| | | Red-seeds
Messages : 69
| Sujet: Re: Usine de black974[Pause durée non détérminé] Sam 24 Déc - 11:00 | |
| Shoy ! Juste pour dire que je suis en pause. J'ai actuellement, VX.Ace(ho le hackeur), et je vais looker un peu leurs script. Voili voilou, Eyb. | |
| | | Contenu sponsorisé
| Sujet: Re: Usine de black974[Pause durée non détérminé] | |
| |
| | | | Usine de black974[Pause durée non détérminé] | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |