thérapie
Messages : 103
| Sujet: Ajout d'une commande dans le script de quête [RESOLU] Mer 2 Mar - 15:10 | |
| Bonjours à tous Bon d'abord merci de lire ce topic et désolé je savais pas trop où le mettre. J'utilise le script de quêtes suivant : - Spoiler:
- Code:
-
=begin #----Script créé par Josué Alvarez (RPG-Man)---# Bon, quelques explications s'imposent :
=== Dans "def initialize" on doit avoir : === (Pour en rajouter) @id_switch_qX = Y Avec X : numéro de la quête Avec Y : ID du switch qui fait que la quête est terminée
@id_switch_qdX = Y Avec X : numéro de la quête avec Y : ID du switch qui fait que la quête est débloquée
=== Dans "Def create_command_window", on doit avoir : === #---- Quête 1 ----# if $game_switches[@id_switch_qd1] == true s1 = "Nom quête 1" else s1 = "Quête_1 (vérouillée)" end #---- Quête 2 ----# if $game_switches[@id_switch_qd2] == true s2 = "Nom quête 2" else s2 = "Quête_2 (vérouillée)" end #---- Quête 3 ----# if $game_switches[@id_switch_qd3] == true s3 = "Nom quête 3" else s3 = "Quête_3 (vérouillée)" end @command_window = Window_Command.new(160, [s1, s2, s3])
Si vous rajoutez une quête, rajoutez pour que ça donne ça: === Dans "Def create_command_window", on doit avoir : === #---- Quête 1 ----# if $game_switches[@id_switch_qd1] == true s1 = "Nom quête 1" else s1 = "Quête_1 (vérouillée)" end #---- Quête 2 ----# if $game_switches[@id_switch_qd2] == true s2 = "Nom quête 2" else s2 = "Quête_2 (vérouillée)" end #---- Quête 3 ----# if $game_switches[@id_switch_qd3] == true s3 = "Nom quête 3" else s3 = "Quête_3 (vérouillée)" end #---- Quête 4 ----# if $game_switches[@id_switch_qd4] == true s4 = "Nom quête 4" else s4 = "Quête_4 (vérouillée) end @command_window = Window_Command.new(160, [s1, s2, s3, s4 ]) #(NE PAS OUBLIER DE RAJOUTER ICI!!)
=== Dans "texte_quete" : === A chaque fois qu'une quête est rajoutée, il faut rajouter (au bon endroit, mais ça se voir) when (numero de la quete, SANS PARENTHESES!!) @image_b.bitmap = Cache.picture("Nom de l'image")
== Dans "def image_c" === Si vous avez rajouté des quêtes : when (numéro de la quete -1, vous verrez c'est à la suite) if $game_switches[@id_switch_qX] == true #Avec X le n° de la quete @image_c.bitmap = Cache.picture("Quete_ter")
=== Dans def image_d === Si vous avez rajouté des quêtes : when (numéro de la quete -1, vous verrez c'est à la suite) if $game_switches[@id_switch_qdX] == false # Avec X numéro de la quête @image_c.bitmap = Cache.picture("Quete_cache")
=== Dans "def update_command_selection" :=== Si vous avez rajouté une quête, rajoutez : when (numéro de la quete -1, vous verrez c'est à la suite) @image_a = (Le même n° que dans when) texte_quete image_c image_d NE PAS OUBLIER LES IMAGES QUI VONT AVEC !!!! =end #================================================================ #Classe Scene_Quete par RPG-Man #================================================================ class Scene_Quete def main start picture_back perform_transition Input.update loop do Graphics.update Input.update update break if $scene != self end Graphics.update pre_terminate Graphics.freeze terminate end
def initialize(menu_index = 0) @menu_index = menu_index picture_back texte_quete image_c #---- Switches quetes débloquées ---# @id_switch_qd1 = 29 @id_switch_qd2 = 37 @id_switch_qd3 = 40 @id_switch_qd4 = 43 @id_switch_qd5 = 45 @id_switch_qd6 = 48 @id_switch_qd7 = 50 @id_switch_qd8 = 52 @id_switch_qd9 = 57 @id_switch_qd10 = 59 @id_switch_qd11 = 61 @id_switch_qd12 = 69 @id_switch_qd13 = 72 @id_switch_qd14 = 74 @id_switch_qd15 = 78 @id_switch_qd16 = 91 @id_switch_qd17 = 999 @id_switch_qd18 = 999 @id_switch_qd19 = 999 @id_switch_qd20 = 999 #---- Switches quetes terminées ---# @id_switch_q1 = 30 @id_switch_q2 = 38 @id_switch_q3 = 41 @id_switch_q4 = 44 @id_switch_q5 = 46 @id_switch_q6 = 49 @id_switch_q7 = 51 @id_switch_q8 = 53 @id_switch_q9 = 58 @id_switch_q10 = 60 @id_switch_q11 = 62 @id_switch_q12 = 70 @id_switch_q13 = 73 @id_switch_q14 = 75 @id_switch_q15 = 79 @id_switch_q16 = 92 @id_switch_q17 = 999 @id_switch_q18 = 999 @id_switch_q19 = 999 @id_switch_q20 = 999
end
def create_menu_background @menuback_sprite = Sprite.new @menuback_sprite.bitmap = $game_temp.background_bitmap @menuback_sprite.color.set(16, 16, 16, 128) update_menu_background end
def dispose_menu_background @menuback_sprite.dispose end
def update_menu_background end
def perform_transition Graphics.transition(10) end
def start create_menu_background create_command_window picture_back texte_quete image_c end
def pre_terminate @command_window.close @picture_back = nil begin @command_window.update Graphics.update end end def terminate dispose_menu_background @command_window.dispose
end
def update update_menu_background @command_window.update texte_quete if @command_window.active update_command_selection elsif @status_window.active update_actor_selection picture_back end end
#============================================= #---- Image fond ----# #============================================= def picture_back #~ @picture_back = Sprite.new #~ @picture_back.bitmap = Cache.picture("Menu_quetes") end #============================================= #---- Affichage des noms des quetes ----# #============================================= def create_command_window #---- Quête 1 ----# if $game_switches[@id_switch_qd1] == true s1 = "Coupeur d'arbres" else s1 = "Quête (vérouillée)" end #---- Quête 2 ----# if $game_switches[@id_switch_qd2] == true s2 = "Un jeu d'enfant" else s2 = "Quête (vérouillée)" end #---- Quête 3 ----# if $game_switches[@id_switch_qd3] == true s3 = "Chasse aux ailes" else s3 = "Quête (vérouillée)" end #---- Quête 4 ----# if $game_switches[@id_switch_qd4] == true s4 = "La devinette" else s4 = "Quête (vérouillée)" end #---- Quête 5 ----# if $game_switches[@id_switch_qd5] == true s5 = "Vole à Tercia" else s5 = "Quête (vérouillée)" end #---- Quête 6 ----# if $game_switches[@id_switch_qd6] == true s6 = "Le cadeau" else s6 = "Quête (vérouillée)" end #---- Quête 7 ----# if $game_switches[@id_switch_qd7] == true s7 = "Commande d'arme" else s7 = "Quête (vérouillée)" end #---- Quête 8 ----# if $game_switches[@id_switch_qd8] == true s8 = "Sale Champignon" else s8 = "Quête (vérouillée)" end #---- Quête 9 ----# if $game_switches[@id_switch_qd9] == true s9 = "Drôle d'ours" else s9 = "Quête (vérouillée)" end #---- Quête 10 ----# if $game_switches[@id_switch_qd10] == true s10 = "Drôle de lézards" else s10 = "Quête (vérouillée)" end #---- Quête 11 ----# if $game_switches[@id_switch_qd11] == true s11 = "Jeux d'enfants" else s11 = "Quête (vérouillée)" end #---- Quête 12 ----# if $game_switches[@id_switch_qd12] == true s12 = "Sauver le chat" else s12 = "Quête (vérouillée)" end #---- Quête 13 ----# if $game_switches[@id_switch_qd13] == true s13 = "La flemme" else s13 = "Quête (vérouillée)" end #---- Quête 14 ----# if $game_switches[@id_switch_qd14] == true s14 = "Griffonnier" else s14 = "Quête (vérouillée)" end #---- Quête 15 ----# if $game_switches[@id_switch_qd15] == true s15 = "Sacrifice ?" else s15 = "Quête (vérouillée)" end #---- Quête 16 ----# if $game_switches[@id_switch_qd16] == true s16 = "Mon arme" else s16 = "Quête (vérouillée)" end #---- Quête 17 ----# if $game_switches[@id_switch_qd17] == true s17 = "Quête 17" else s17 = "Quête (vérouillée)" end #---- Quête 18 ----# if $game_switches[@id_switch_qd18] == true s18 = "Quête 18" else s18 = "Quête (vérouillée)" end #---- Quête 19 ----# if $game_switches[@id_switch_qd19] == true s19 = "Quête 19" else s19 = "Quête (vérouillée)" end #---- Quête 20 ----# if $game_switches[@id_switch_qd20] == true s20 = "Quête 20" else s20 = "Quête (vérouillée)" end @command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6, s7, s8, s9,s10,s11,s12,s13,s14,s15,s16,s17,s18,s19,s20]) @command_window.index = @menu_index @command_window.openness = 0 @command_window.open end #============================================= #---- Affichage de l'image de quête ----# #============================================= def texte_quete if @image_b == nil @image_b = Sprite.new @image_b.opacity = 255 case @image_a when 0 @image_b.bitmap = Cache.picture("Quete_1") when 1 @image_b.bitmap = Cache.picture("Quete_2") when 2 @image_b.bitmap = Cache.picture("Quete_3") when 3 @image_b.bitmap = Cache.picture("Quete_4") when 4 @image_b.bitmap = Cache.picture("Quete_5") when 5 @image_b.bitmap = Cache.picture("Quete_6") when 6 @image_b.bitmap = Cache.picture("Quete_7") when 7 @image_b.bitmap = Cache.picture("Quete_8") when 8 @image_b.bitmap = Cache.picture("Quete_9") when 9 @image_b.bitmap = Cache.picture("Quete_10") when 10 @image_b.bitmap = Cache.picture("Quete_11") when 11 @image_b.bitmap = Cache.picture("Quete_12") when 12 @image_b.bitmap = Cache.picture("Quete_13") when 13 @image_b.bitmap = Cache.picture("Quete_14") when 14 @image_b.bitmap = Cache.picture("Quete_15") when 15 @image_b.bitmap = Cache.picture("Quete_16") when 16 @image_b.bitmap = Cache.picture("Quete_17") when 17 @image_b.bitmap = Cache.picture("Quete_18") when 18 @image_b.bitmap = Cache.picture("Quete_19") when 19 @image_b.bitmap = Cache.picture("Quete_20") end end end #============================================= #---- Affichage de l'image lorsque la quête est réussie ----# #============================================= def image_c if @image_c == nil @image_c = Sprite.new case @image_a when 0 if $game_switches[@id_switch_q1] == true @image_c.bitmap = Cache.picture("Quete_ter") end when 1 if $game_switches[@id_switch_q2] == true @image_c.bitmap = Cache.picture("Quete_ter") end when 2 if $game_switches[@id_switch_q3] == true @image_c.bitmap = Cache.picture("Quete_ter") end when 3 if $game_switches[@id_switch_q4] == true @image_c.bitmap = Cache.picture("Quete_ter") end when 4 if $game_switches[@id_switch_q5] == true @image_c.bitmap = Cache.picture("Quete_ter") end when 5 if $game_switches[@id_switch_q6] == true @image_c.bitmap = Cache.picture("Quete_ter") end when 6 if $game_switches[@id_switch_q7] == true @image_c.bitmap = Cache.picture("Quete_ter") end when 7 if $game_switches[@id_switch_q8] == true @image_c.bitmap = Cache.picture("Quete_ter") end when 8 if $game_switches[@id_switch_q9] == true @image_c.bitmap = Cache.picture("Quete_ter") end when 9 if $game_switches[@id_switch_q10] == true @image_c.bitmap = Cache.picture("Quete_ter") end when 10 if $game_switches[@id_switch_q11] == true @image_c.bitmap = Cache.picture("Quete_ter") end when 11 if $game_switches[@id_switch_q12] == true @image_c.bitmap = Cache.picture("Quete_ter") end when 12 if $game_switches[@id_switch_q13] == true @image_c.bitmap = Cache.picture("Quete_ter") end when 13 if $game_switches[@id_switch_q14] == true @image_c.bitmap = Cache.picture("Quete_ter") end when 14 if $game_switches[@id_switch_q15] == true @image_c.bitmap = Cache.picture("Quete_ter") end when 15 if $game_switches[@id_switch_q16] == true @image_c.bitmap = Cache.picture("Quete_ter") end when 16 if $game_switches[@id_switch_q17] == true @image_c.bitmap = Cache.picture("Quete_ter") end when 17 if $game_switches[@id_switch_q18] == true @image_c.bitmap = Cache.picture("Quete_ter") end when 18 if $game_switches[@id_switch_q19] == true @image_c.bitmap = Cache.picture("Quete_ter") end when 19 if $game_switches[@id_switch_q20] == true @image_c.bitmap = Cache.picture("Quete_ter") end
end end end #================================================ #---- Affichage de l'image cachant la quête non débloquée ----# #================================================ def image_d if @image_d == nil @image_d = Sprite.new case @image_a when 0 if $game_switches[@id_switch_qd1] == false @image_c.bitmap = Cache.picture("Quete_cache") @image_b.dispose end when 1 if $game_switches[@id_switch_qd2] == false @image_c.bitmap = Cache.picture("Quete_cache") @image_b.dispose end when 2 if $game_switches[@id_switch_qd3] == false @image_c.bitmap = Cache.picture("Quete_cache") @image_b.dispose end when 3 if $game_switches[@id_switch_qd4] == false @image_c.bitmap = Cache.picture("Quete_cache") @image_b.dispose end when 4 if $game_switches[@id_switch_qd5] == false @image_c.bitmap = Cache.picture("Quete_cache") @image_b.dispose end when 5 if $game_switches[@id_switch_qd6] == false @image_c.bitmap = Cache.picture("Quete_cache") @image_b.dispose end when 6 if $game_switches[@id_switch_qd7] == false @image_c.bitmap = Cache.picture("Quete_cache") @image_b.dispose end when 7 if $game_switches[@id_switch_qd8] == false @image_c.bitmap = Cache.picture("Quete_cache") @image_b.dispose end when 8 if $game_switches[@id_switch_qd9] == false @image_c.bitmap = Cache.picture("Quete_cache") @image_b.dispose end when 9 if $game_switches[@id_switch_qd10] == false @image_c.bitmap = Cache.picture("Quete_cache") @image_b.dispose end when 10 if $game_switches[@id_switch_qd11] == false @image_c.bitmap = Cache.picture("Quete_cache") @image_b.dispose end when 11 if $game_switches[@id_switch_qd12] == false @image_c.bitmap = Cache.picture("Quete_cache") @image_b.dispose end when 12 if $game_switches[@id_switch_qd13] == false @image_c.bitmap = Cache.picture("Quete_cache") @image_b.dispose end when 13 if $game_switches[@id_switch_qd14] == false @image_c.bitmap = Cache.picture("Quete_cache") @image_b.dispose end when 14 if $game_switches[@id_switch_qd15] == false @image_c.bitmap = Cache.picture("Quete_cache") @image_b.dispose end when 15 if $game_switches[@id_switch_qd16] == false @image_c.bitmap = Cache.picture("Quete_cache") @image_b.dispose end when 16 if $game_switches[@id_switch_qd17] == false @image_c.bitmap = Cache.picture("Quete_cache") @image_b.dispose end when 17 if $game_switches[@id_switch_qd18] == false @image_c.bitmap = Cache.picture("Quete_cache") @image_b.dispose end when 18 if $game_switches[@id_switch_qd19] == false @image_c.bitmap = Cache.picture("Quete_cache") @image_b.dispose end when 19 if $game_switches[@id_switch_qd20] == false @image_c.bitmap = Cache.picture("Quete_cache") @image_b.dispose end
end end end #================================================ #---- Sélection ----# #================================================ def update_command_selection if Input.trigger?(Input::B) Sound.play_cancel $scene = Scene_Menu.new @picture_back = nil @image_b = nil @image_a = nil @image_c = nil #Réussie @image_d = nil #Cache image elsif Input.trigger?(Input::C) Sound.play_decision if @image_b != nil and @image_c != nil and @image_d != nil @image_b.dispose @image_c.dispose @image_d.dispose end @image_a = nil @image_c = nil @image_d = nil @image_b = nil case @command_window.index when 0 @image_a = 0 texte_quete image_c image_d when 1 @image_a = 1 texte_quete image_c image_d when 2 @image_a = 2 texte_quete image_c image_d when 3 @image_a = 3 texte_quete image_c image_d when 4 @image_a = 4 texte_quete image_c image_d when 5 @image_a = 5 texte_quete image_c image_d when 6 @image_a = 6 texte_quete image_c image_d when 7 @image_a = 7 texte_quete image_c image_d when 8 @image_a = 8 texte_quete image_c image_d when 9 @image_a = 9 texte_quete image_c image_d when 10 @image_a = 10 texte_quete image_c image_d when 11 @image_a = 11 texte_quete image_c image_d when 12 @image_a = 12 texte_quete image_c image_d when 13 @image_a = 13 texte_quete image_c image_d when 14 @image_a = 14 texte_quete image_c image_d when 15 @image_a = 15 texte_quete image_c image_d when 16 @image_a = 16 texte_quete image_c image_d when 17 @image_a = 17 texte_quete image_c image_d when 18 @image_a = 18 texte_quete image_c image_d when 19 @image_a = 19 texte_quete image_c image_d end end end end
Ce script marche comme je le désirerez mis à part un point assez problématique -_-" : Une fois un certain nombre de quête débloqué la fenêtre continu mais pas normalement, enfaite elle continue comme si l'écran n'avait aucune limite ==" Voilà l'exemple en image : - Spoiler:
Ça ne ce voit pas mais mon curseur et sur la 18/19 quêtes à peu près xD Donc j'aurais aimé que quelqu'un prenne le temps de rajouter le module dans le script car zang' m'avais passé un bout de code à mettre dans les RGSS2 de base mais sans résultats... Bref je ne sais pas si c'est très rapide ou ultra long (ni vraiment comment faire ~~J'espère qu'il ne vous faut pas refaire le script U_U) Merci de ne pas me filer un lien en me disant "Nan mais tu t'en bas les stéches ! J'ai un meilleur script de quête -> lien" Car vous comprenez bien que je serez forcé de refaire tout mon système de quêtes dans mon projet. Bye et merci d'avance
Dernière édition par thérapie le Mer 2 Mar - 16:27, édité 1 fois | |
|
thérapie
Messages : 103
| Sujet: Re: Ajout d'une commande dans le script de quête [RESOLU] Mer 2 Mar - 16:27 | |
| Bon... Désolé du double post mais je suis obligé pour upper le topic xD En faite j'ai posté ce problème sur plusieurs sites histoire d'être rapidement exaucé et puis nairda a trouvé la solution Il faut rajouté : - Code:
-
@command_window.height = 416 Juste après : - Code:
-
@command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6, s7, s8, s9,s10,s11,s12,s13,s14,s15,s16,s17,s18,s19,s20]) @command_window.index = @menu_index Le problème est donc résolu (ça me fait bizarre de me répondre à moi même :/) Bye et merci quand à tous ! | |
|
Kitu
Messages : 6723
| Sujet: Re: Ajout d'une commande dans le script de quête [RESOLU] Mer 2 Mar - 16:34 | |
| Ravi de t'avoir aidé. | |
|
Contenu sponsorisé
| Sujet: Re: Ajout d'une commande dans le script de quête [RESOLU] | |
| |
|