Ajout d'une commande dans le script de quête [résolu]
Mer 2 Mar 2011 - 15:15
Bonjours à tous Bon d'abord merci de lire ce topic et désolé je savais pas trop où le mettre (c'est pas une demande de script mais c'est un bug sur un script car il n'est pas assez poussé enfin vous verrez).
J'utilise le script de quêtes suivant :
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 :
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
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
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:
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
Re: Ajout d'une commande dans le script de quête [résolu]
Mer 2 Mar 2011 - 16:26
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é :
Bye et merci quand à tous !
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
- 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
Bye et merci quand à tous !
- driccMembre
- Nombre de messages : 2760
Localisation : Lille
Distinction : Altruiste - Incarnation de la Patience [Mist']
Date d'inscription : 10/08/2009
Re: Ajout d'une commande dans le script de quête [résolu]
Mer 2 Mar 2011 - 16:33
Tiens, justement un des scripts que j'avais identifié pour le projet du forum :
http://rpgmakervx.1fr1.net/t10277-choix-du-script-de-quete
J'ai eu un peu de mal à tester vu que tu ne n'avais pas donné les images mais je me suis débrouillé .
Et j'avais trouvé exactement la meme solution
http://rpgmakervx.1fr1.net/t10277-choix-du-script-de-quete
J'ai eu un peu de mal à tester vu que tu ne n'avais pas donné les images mais je me suis débrouillé .
Et j'avais trouvé exactement la meme solution
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
|
|