Aller au contenu
Top-Metin2.org - Vous êtes à la recherche d'un serveur Metin 2 ? ×
×
×
  • Créer...
  • 0

Problème avec ma Quest.


xSeRieSkiLls

Question

Version des files : 2012

Domaine (Base de données, Core, etc.) : SSH / Quest.

Votre niveau (débutant, intermédiaire, avancé) : Intermédiaire

 

Description du problème :

 

Voilà j'ai créé une quete qui permet par l'intermédiaire d'un item de sauvegarder certains lieux (un peu comme les parchemins) pour pouvoir s'y retéléporter par la suite, mais j'ai un petit soucis après un reboot je n'arrive plus à accéder à mon menu "Téléportation" qui contient les lieux sauvegardés pour s'y téléporter.

 

la quete :

 


quest parcho_tp begin
state start begin
	when 40004.use with pc.get_level() >= 50 begin
		local interdit = pc.get_empire()+pc.get_map_index()
		local l1 = (pc.getqf("xxx1")*100+pc.getqf("yyy1")*100) local l2 = (pc.getqf("xxx2")*100+pc.getqf("yyy2")*100) local l3 = (pc.getqf("xxx3")*100+pc.getqf("yyy3")*100)
		if l1+l2+l3 == 0 then
		lieu1 = "Vide"
			pc.setqf("xxx1",0) --78
			pc.setqf("yyy1",0) --73
			lieu2 = "Vide"
			pc.setqf("xxx2",0) --65
			pc.setqf("yyy2",0)
			lieu3 = "Vide"
			pc.setqf("xxx3",0)
			pc.setqf("yyy3",0)			
		end
		say_title("Parchemin de Téléportation")
		say("Ce parchemin très ancien vous permet de vous")
		say("téléporter vers 3 de vos lieux favoris que")
		say("vous aurez sauvegardé auparavant")
			local ch = select ("Nouv. Lieu", "Téléportation", "Réinitialisation", "Fermer")
				if ch == 1 then
					if l1+l2+l3 ==0 then
					if interdit == 22 or interdit == 42 or interdit== 3 or interdit == 43 or interdit == 4 or interdit == 24 then
						say("Vous etes en territoire ennemi, par conséquent")
						say("vous ne pouvez pas marquer ce lieu comme favori!")
						return
					end						
					say("Souhaitez vous sauvegarder un lieu favori ?")
					local sauv = select("Oui", "Non")
					if sauv == 2 then
						return						
					elseif sauv == 1 then
					pc.setqf("xxx1",pc.getx()*100) --72
					pc.setqf("yyy1",pc.gety()*100)
					say("Veuillez donner un nom à  ce lieu") --69
					lieu1 = input()
					end
					end

					if l1 >= 1 and l2 == 0 and l3 == 0 then
					if interdit == 22 or interdit == 42 or interdit== 3 or interdit == 43 or interdit == 4 or interdit == 24 then
						say("Vous etes en territoire ennemi, par conséquent")
						say("vous ne pouvez pas marquer ce lieu comme favori!")
						return
					end
					say("Souhaitez vous sauvegarder un lieu favori ?") --65
					local sauv0 = select("Oui", "Non")
					if sauv0 == 2 then
						return						
					elseif sauv0 == 1 then
					pc.setqf("xxx2",pc.getx()*100) --73
					pc.setqf("yyy2",pc.gety()*100)
					say("Veuillez donner un nom à  ce lieu")
					lieu2 = input()
					end
					end

					if l1 >= 1 and l2 >= 1 and l3 == 0 then
					if interdit == 22 or interdit == 42 or interdit== 3 or interdit == 43 or interdit == 4 or interdit == 24 then
						say("Vous etes en territoire ennemi, par conséquent")
						say("vous ne pouvez pas marquer ce lieu comme favori!") --6b
						return
					end
					say("Souhaitez vous sauvegarder un lieu favori ?") --69
					local sauv1 = select("Oui", "Non")
					if sauv1 == 2 then
						return						
					elseif sauv1 == 1 then
					pc.setqf("xxx3",pc.getx()*100)
					pc.setqf("yyy3",pc.gety()*100)
					say("Veuillez donner un nom à  ce lieu") --6c
					lieu3 = input()
					end
					end

					if l1 >= 1 and l2 ==0 and l3 >= 1 then
					if interdit == 22 or interdit == 42 or interdit== 3 or interdit == 43 or interdit == 4 or interdit == 24 then
						say("Vous etes en territoire ennemi, par conséquent")
						say("vous ne pouvez pas marquer ce lieu comme favori!") --6c
						return
					end
					say("Souhaitez vous sauvegarder un lieu favori ?")
					local sauv10 = select("Oui", "Non")
					if sauv10 == 2 then
						return						
					elseif sauv10 == 1 then
					pc.setqf("xxx2",pc.getx()*100)
					pc.setqf("yyy2",pc.gety()*100)
					say("Veuillez donner un nom à  ce lieu")
					lieu2 = input()
					end
					end

					if l1 == 0 and l2 == 0 and l3 >= 1 then
					if interdit == 22 or interdit == 42 or interdit== 3 or interdit == 43 or interdit == 4 or interdit == 24 then
						say("Vous etes en territoire ennemi, par conséquent")
						say("vous ne pouvez pas marquer ce lieu comme favori!")
						return
					end
					say("Souhaitez vous sauvegarder un lieu favori ?") --73
					local sauv001 = select("Oui", "Non")
					if sauv001 == 2 then
						return						
					elseif sauv001 == 1 then
					pc.setqf("xxx1",pc.getx()*100)
					pc.setqf("yyy1",pc.gety()*100)
					say("Veuillez donner un nom à  ce lieu")
					lieu1 = input()
					end
					end

					if l1 == 0 and l2 >= 1  and l3 == 0 then
					if interdit == 22 or interdit == 42 or interdit== 3 or interdit == 43 or interdit == 4 or interdit == 24 then
						say("Vous etes en territoire ennemi, par conséquent")
						say("vous ne pouvez pas marquer ce lieu comme favori!")
						return
					end
					say("Souhaitez vous sauvegarder un lieu favori ?")
					local sauv002 = select("Oui", "Non")
					if sauv002 == 2 then
						return						
					elseif sauv002 == 1 then
					pc.setqf("xxx1",pc.getx()*100)
					pc.setqf("yyy1",pc.gety()*100)
					say("Veuillez donner un nom à  ce lieu")
					lieu1 = input()
					end
					end

					if l1 == 0 and l2 >= 1  and l3 >= 1 then
					if interdit == 22 or interdit == 42 or interdit== 3 or interdit == 43 or interdit == 4 or interdit == 24 then
						say("Vous etes en territoire ennemi, par conséquent")
						say("vous ne pouvez pas marquer ce lieu comme favori!")
						return
					end
					say("Souhaitez vous sauvegarder un lieu favori ?")
					local sauv003 = select("Oui", "Non")
					if sauv003 == 2 then
						return						
					elseif sauv003 == 1 then
					pc.setqf("xxx1",pc.getx()*100)
					pc.setqf("yyy1",pc.gety()*100)
					say("Veuillez donner un nom à  ce lieu")
					lieu1 = input()
					end
					end

					if l1 >= 1 and l2 >= 1  and l3 >= 1 then
					say("Tous vos emplacements sont pleins, réinitialisez")
					say("d'abord un ou plusieurs emplacements avant de")
					say("pouvoir enregistrer un nouveau lieu favori !")
						return
					end



				elseif ch == 3 then
					say_title("Réinitialisation")
					say("Quel emplacement de lieu souhaitez-vous")
					say("réinitialiser ?")

					wait()
					say_title("Réinitialiser l'emplacement:")
						local empl = select ("1","2","3","Tous","Fermer")
						if empl == 1 then
							lieu1 = "Vide"
							pc.setqf("xxx1",0)
							pc.setqf("yyy1",0)
						elseif empl == 2 then
							lieu2 = "Vide"
							pc.setqf("xxx2",0)
							pc.setqf("yyy2",0)
						elseif empl == 3 then
							lieu3 = "Vide"
							pc.setqf("xxx3",0)
							pc.setqf("yyy3",0)
						elseif empl == 4 then
							lieu1 = "Vide"
							pc.setqf("xxx1",0)
							pc.setqf("yyy1",0)
							lieu2 = "Vide"
							pc.setqf("xxx2",0)
							pc.setqf("yyy2",0)
							lieu3 = "Vide"
							pc.setqf("xxx3",0)
							pc.setqf("yyy3",0)
						elseif empl == 5 then
							return	
						end
					say("Emplacement(s) réinitialisé(s), vous pourrez dès")
					say("maintenant assigner un nouveau lieu à  cet(ces)")
					say("emplacement(s) !")
						return

				elseif ch == 2 then
				say_title("Téléportation")
				say("Où souhaitez vous etre téléporté ?")							
					local seleclieu = select (lieu1, lieu2, lieu3, "Fermer")
						if seleclieu == 1 and l1 > 1 then
						pc.warp(pc.getqf("xxx1"),pc.getqf("yyy1"))

						elseif seleclieu == 2 and l2 > 1 then
						pc.warp(pc.getqf("xxx2"),pc.getqf("yyy2"))

						elseif seleclieu == 3 and l3 > 1 then
						pc.warp(pc.getqf("xxx3"),pc.getqf("yyy3"))							
						elseif seleclieu == 4 then
						return
						end

				elseif ch == 4 then
					return
				end
	end
end
end

 

Message d'erreur, capture d'écran :

 

Donc quand je clique sur le menu "Téléportation" j'attéris sur ça :

 

Hidden Content

    Give reaction to this post to see the hidden content.

 

et je ne peux plus rien faire je reste bloqué, obligé de me déconnecter/reconnecter pour revenir à la normale.

Voilà, j'espère que vous pourrez m'aider.

Merci.

 

PS : Je vous prie de ne pas "voler" la quest au passage, sachant que je la partagerai une fois terminée ;)

 

En postant ma demande d'aide, j'affirme avoir lu et accepté le règlement des demandes d'aides.

Modifié par Funky Emulation
Core X - External 2 Internal
Lien vers le commentaire
Partager sur d’autres sites

  • Réponses 11
  • Créé
  • Dernière réponse

Meilleurs contributeurs dans cette question

Meilleurs contributeurs dans cette question

11 réponses à cette question

Messages recommandés

  • 0

Essaye ceci :):

 

quest parcho_tp begin
   state start begin
       when 40004.use with pc.get_level() >= 50 begin
           local interdit = pc.get_empire()+pc.get_map_index()
           local l1 = (pc.getqf("xxx1")*100+pc.getqf("yyy1")*100) local l2 = (pc.getqf("xxx2")*100+pc.getqf("yyy2")*100) local l3 = (pc.getqf("xxx3")*100+pc.getqf("yyy3")*100)
           if l1+l2+l3 == 0 then
           lieu1 = "Vide"
               pc.setqf("xxx1",0) --78
               pc.setqf("yyy1",0) --73
               lieu2 = "Vide"
               pc.setqf("xxx2",0) --65
               pc.setqf("yyy2",0)
               lieu3 = "Vide"
               pc.setqf("xxx3",0)
               pc.setqf("yyy3",0)            

			say_title("Parchemin de Téléportation")
			say("Ce parchemin très ancien vous permet de vous")
			say("téléporter vers 3 de vos lieux favoris que")
			say("vous aurez sauvegardé auparavant")
               local ch = select ("Nouv. Lieu", "Téléportation", "Réinitialisation", "Fermer")
                   if ch == 1 then
                       if l1+l2+l3 ==0 then
						if interdit == 22 or interdit == 42 or interdit== 3 or interdit == 43 or interdit == 4 or interdit == 24 then
							say("Vous etes en territoire ennemi, par conséquent")
							say("vous ne pouvez pas marquer ce lieu comme favori!")
							return
						end
                       end                        
                       say("Souhaitez vous sauvegarder un lieu favori ?")
                       local sauv = select("Oui", "Non")
                       if sauv == 2 then
                           return                        
                       elseif sauv == 1 then
						pc.setqf("xxx1",pc.getx()*100) --72
						pc.setqf("yyy1",pc.gety()*100)
						say("Veuillez donner un nom à  ce lieu") --69
						lieu1 = input()
                       end

                       if l1 >= 1 and l2 == 0 and l3 == 0 then
						if interdit == 22 or interdit == 42 or interdit== 3 or interdit == 43 or interdit == 4 or interdit == 24 then
							say("Vous etes en territoire ennemi, par conséquent")
							say("vous ne pouvez pas marquer ce lieu comme favori!")
							return
						end
                       end
                       say("Souhaitez vous sauvegarder un lieu favori ?") --65
                       local sauv0 = select("Oui", "Non")
                       if sauv0 == 2 then
                           return                        
                       elseif sauv0 == 1 then
						pc.setqf("xxx2",pc.getx()*100) --73
						pc.setqf("yyy2",pc.gety()*100)
						say("Veuillez donner un nom à  ce lieu")
						lieu2 = input()
                       end

                       if l1 >= 1 and l2 >= 1 and l3 == 0 then
						if interdit == 22 or interdit == 42 or interdit== 3 or interdit == 43 or interdit == 4 or interdit == 24 then
							say("Vous etes en territoire ennemi, par conséquent")
							say("vous ne pouvez pas marquer ce lieu comme favori!") --6b
							return
						end
                       end
                       say("Souhaitez vous sauvegarder un lieu favori ?") --69
                       local sauv1 = select("Oui", "Non")
                       if sauv1 == 2 then
                           return                        
                       elseif sauv1 == 1 then
						pc.setqf("xxx3",pc.getx()*100)
						pc.setqf("yyy3",pc.gety()*100)
						say("Veuillez donner un nom à  ce lieu") --6c
						lieu3 = input()
                       end

                       if l1 >= 1 and l2 ==0 and l3 >= 1 then
						if interdit == 22 or interdit == 42 or interdit== 3 or interdit == 43 or interdit == 4 or interdit == 24 then
							say("Vous etes en territoire ennemi, par conséquent")
							say("vous ne pouvez pas marquer ce lieu comme favori!") --6c
							return
						end
                       end
                       say("Souhaitez vous sauvegarder un lieu favori ?")
                       local sauv10 = select("Oui", "Non")
                       if sauv10 == 2 then
                           return                        
                       elseif sauv10 == 1 then
						pc.setqf("xxx2",pc.getx()*100)
						pc.setqf("yyy2",pc.gety()*100)
						say("Veuillez donner un nom à  ce lieu")
						lieu2 = input()
                       end

                       if l1 == 0 and l2 == 0 and l3 >= 1 then
						if interdit == 22 or interdit == 42 or interdit== 3 or interdit == 43 or interdit == 4 or interdit == 24 then
							say("Vous etes en territoire ennemi, par conséquent")
							say("vous ne pouvez pas marquer ce lieu comme favori!")
							return
						end
                       end
                       say("Souhaitez vous sauvegarder un lieu favori ?") --73
                       local sauv001 = select("Oui", "Non")
                       if sauv001 == 2 then
                           return                        
                       elseif sauv001 == 1 then
						pc.setqf("xxx1",pc.getx()*100)
						pc.setqf("yyy1",pc.gety()*100)
						say("Veuillez donner un nom à  ce lieu")
						lieu1 = input()
                       end

                       if l1 == 0 and l2 >= 1  and l3 == 0 then
						if interdit == 22 or interdit == 42 or interdit== 3 or interdit == 43 or interdit == 4 or interdit == 24 then
							say("Vous etes en territoire ennemi, par conséquent")
							say("vous ne pouvez pas marquer ce lieu comme favori!")
							return
						end
                       end
                       say("Souhaitez vous sauvegarder un lieu favori ?")
                       local sauv002 = select("Oui", "Non")
                       if sauv002 == 2 then
                           return                        
                       elseif sauv002 == 1 then
						pc.setqf("xxx1",pc.getx()*100)
						pc.setqf("yyy1",pc.gety()*100)
						say("Veuillez donner un nom à  ce lieu")
						lieu1 = input()
                       end

                       if l1 == 0 and l2 >= 1  and l3 >= 1 then
						if interdit == 22 or interdit == 42 or interdit== 3 or interdit == 43 or interdit == 4 or interdit == 24 then
							say("Vous etes en territoire ennemi, par conséquent")
							say("vous ne pouvez pas marquer ce lieu comme favori!")
							return
						end
                       end
                       say("Souhaitez vous sauvegarder un lieu favori ?")
                       local sauv003 = select("Oui", "Non")
                       if sauv003 == 2 then
                           return                        
                       elseif sauv003 == 1 then
						pc.setqf("xxx1",pc.getx()*100)
						pc.setqf("yyy1",pc.gety()*100)
						say("Veuillez donner un nom à  ce lieu")
						lieu1 = input()
                       end

                       if l1 >= 1 and l2 >= 1  and l3 >= 1 then
						say("Tous vos emplacements sont pleins, réinitialisez")
						say("d'abord un ou plusieurs emplacements avant de")
						say("pouvoir enregistrer un nouveau lieu favori !")
						return
                       end

                   elseif ch == 3 then
                       say_title("Réinitialisation")
                       say("Quel emplacement de lieu souhaitez-vous")
                       say("réinitialiser ?")                       
                       wait()
                       say_title("Réinitialiser l'emplacement:")
                           local empl = select ("1","2","3","Tous","Fermer")
                           if empl == 1 then
                               lieu1 = "Vide"
                               pc.setqf("xxx1",0)
                               pc.setqf("yyy1",0)
                           elseif empl == 2 then
                               lieu2 = "Vide"
                               pc.setqf("xxx2",0)
                               pc.setqf("yyy2",0)
                           elseif empl == 3 then
                               lieu3 = "Vide"
                               pc.setqf("xxx3",0)
                               pc.setqf("yyy3",0)
                           elseif empl == 4 then
                               lieu1 = "Vide"
                               pc.setqf("xxx1",0)
                               pc.setqf("yyy1",0)
                               lieu2 = "Vide"
                               pc.setqf("xxx2",0)
                               pc.setqf("yyy2",0)
                               lieu3 = "Vide"
                               pc.setqf("xxx3",0)
                               pc.setqf("yyy3",0)
                           elseif empl == 5 then
                               return    
                           end
						say("Emplacement(s) réinitialisé(s), vous pourrez dès")
						say("maintenant assigner un nouveau lieu à  cet(ces)")
						say("emplacement(s) !")
                           return
					end

                   elseif ch == 2 then
					say_title("Téléportation")
					say("Où souhaitez vous etre téléporté ?")                            
                       local seleclieu = select (lieu1, lieu2, lieu3, "Fermer")
                           if seleclieu == 1 and l1 > 1 then
							pc.warp(pc.getqf("xxx1"),pc.getqf("yyy1"))

                           elseif seleclieu == 2 and l2 > 1 then
							pc.warp(pc.getqf("xxx2"),pc.getqf("yyy2"))

                           elseif seleclieu == 3 and l3 > 1 then									
							pc.warp(pc.getqf("xxx3"),pc.getqf("yyy3")) 

                           elseif seleclieu == 4 then
							return
                           end

                   elseif ch == 4 then
                       return
                   end
			end
		end
       end
   end
end 

Lien vers le commentaire
Partager sur d’autres sites

  • 0
  • Retraité

Je doute que le setskin t'aidera mais oui en effet tu n'auras plus cette fenêtre.

setskin(NOWINDOW) = setskin(0)

 

Cette fonction est simple d'utilisation et est facile à comprendre :

Automatiquement et ce à chaque action, une fenêtre s'affiche ( les barres noires ), le setskin ira tout simplement "enlever " cette fenêtre.

( Pour exemple ton mag, le setskin permet de ne pas afficher cette fenêtre et d'arriver sur le magasin, enlève-le et regarde ce que ça fait )

Utile pour les quêtes et les actions passifs.

You can't be immortal,
But you can make people remember
you for thousands of years...

Lien vers le commentaire
Partager sur d’autres sites

  • 0

Oui du coup c'est pas ce qu'il me faut je veux garder cette fenetre, mais le problème c'est (d'après moi) le texte stocké dans les variables qui ne répond plus (après un reboot) puisque quand j'ouvre le menu "Téléportation" c'est du texte enregistré dans la partie "Nouveau Lieu" qui s'ouvre (normalement) et donc à l'aide de variables.

Lien vers le commentaire
Partager sur d’autres sites

  • 0

Pourquoi "up" sachant que je te t'ai montré la solution et que désormais ça marche ? Seul souci c'est lors du reboot et ça m'étonnerait que quelqu'un puisse y faire quelque chose. Dernière alternative, les event flag sauf que ça va devenir dur à gérer et que ça va être du n'importe quoi.

Lien vers le commentaire
Partager sur d’autres sites

  • 0
  • Retraité

Bonjour,

 

Le sujet contient la balise [glow=#800000][Résolu][/glow] ou reste sans réponse depuis deux semaines ou plus, de ce fait il a été déplacé dans la section "Résolu ou sans réponse".

 

Cordialement.

Lien vers le commentaire
Partager sur d’autres sites

Invité
Ce sujet ne peut plus recevoir de nouvelles réponses.


  • brilliantdiscord_widget
  • Flux d'Activité

    1. 2

      Demande d'aide

    2. 2

      Demande d'aide

    3. 2

      Demande d'aide

    4. 161

      VDI - Server Files 2016 - Team FE

    5. 1

      Problème de modification du coffre de l'apprenti

  • En ligne récemment

    • Aucun utilisateur enregistré regarde cette page.

Information importante

Conditions d’utilisation / Politique de confidentialité / Règles / Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.