Jump to content
×
×
  • Create New...
  • 0

PetGui quête qui n’apparaît pas


Great
 Share

Question

[Message d'introduction]

 

Version des files : 2012

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

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

 

Description du problème : Quête non visible InGame

Comment reproduire le problème : Installer le système petgui

Recherches et tests effectué : Recherche de tutoriel français pour installer le système PetGui et recherche de la quête en français.

Résultat des recherches et tests : Sans succès

 

Message d'erreur, capture d'écran : Aucun messages d'erreurs

 

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

 

Salut all !

 

Donc voilà j'ai vu sur un forum allemand le système de PetGui que j'ai voulu installé par la suite.

Tout c'est bien déroulé (enfin presque), j'ai réussi à implanté dans le client (dans le game.py) puis le dds et la barre d'exp en .tga mais mon problème vient de la quête, je ne vois pas la quête InGame alors que je l'ai bien mise, la quête se nomme pets.quest elle est bien présente dans local_list j'ai bien mit les fonctions dans quest_functions puis j'ai bien reload comme il faut (sh quest.sh etcc j'ai reboot et tout) mais rien à faire je ne la vois pas ig.

 

Donc voici la quête (elle est en allemand bien sur):

 

quest pets begin 
   state start begin     

       function givebonus(x) 
           local y,boni = {53,54,1},pets.bonusliste() 
           table.foreach(boni[x],function(i,l)  cmdchat("HaustierBonus"..i.." "..l.."") affect.add_collect(y[i],l,60*60*24*365*60) end ) 
           cmdchat("HaustierLevel "..pc.getqf('petlevel').."") 
           cmdchat("HaustierName "..pc.get_name().."") 
           pc.setqf("petruf",1)                 
       end 
       function bonusliste() 
           return { 
               [1] = {200,100,500}, 
               [2] = {250,150,1000}, 
               [3] = {300,200,1500}, 
               [4] = {350,250,2000}, 
               [5] = {400,300,3000}, 
           } 
       end     
       function removebonus(x) 
           local y,boni = {53,54,1},pets.bonusliste() 
           table.foreach(boni[x],function(i,l) affect.remove_collect(y[i],l,60*60*24*365*60) end ) 
           horse.unsummon() 
           pc.setqf("petruf",0) 
           horse.set_level("21") 
           cmdchat("HidePetGui") 
           cleartimer("bugcheck") 
       end         

       when 53001.use begin 
           if pc.is_mount() then 
               say_title("Entschuldigung") 
               say("Bitte steige von deinem Mount ab!") 
               return 
           end 
           if pc.getqf('petlevel') == 0 then 
               pc.setqf('petlevel',1) 
           end 
           if pc.getqf("petruf") == 0 then 
               local Horselevel = 29-pc.getqf('petlevel') 
               horse.set_level(Horselevel) 
               horse.unsummon()  horse.summon() 
               chat("Dein Haustier wurde gerufen.") 
               pets.givebonus(pc.getqf('petlevel')) 
               local expprocent1 = {20, 80, 160, 350, 400} 
               cmdchat("PetProcentExp "..(pc.getqf("exp")/expprocent1[pc.getqf("petlevel")]).."")                 
               cmdchat("ShowPetGui") 
               loop_timer("bugcheck", 0.2) 
           elseif pc.getqf("petruf") == 1 then         
               pets.removebonus(pc.getqf('petlevel')) 
               chat("Dein Haustier verabschiedet sich nun.") 
           end         
       end 


       when kill with pc.getqf("petruf") == 1 begin 
           if pc.getqf("petlevel") == 5 then 
               return 
           end     
           if not npc.is_pc() then 
               pc.setqf("exp",pc.getqf("exp")+1) 
               local exp2up = {2000, 8000, 16000, 35000, 40000} 
               local expprocent = {20, 80, 160, 350, 400} 
               cmdchat("PetProcentExp "..(pc.getqf("exp")/expprocent[pc.getqf("petlevel")]).."") 
               if pc.getqf("exp") == exp2up[pc.getqf("petlevel")] then 
                   if pc.getqf("petlevel") == 4 then 
                       say_title("Herzlichen Glückwunsch") 
                       say("Dein Haustier erreicht Level "..(pc.getqf("petlevel")+1).."") 
                       say_reward("Dies war das letzte Level!") 
                   end 
                   say_title("Herzlichen Glückwunsch") 
                   say("Dein Haustier erreicht Level "..(pc.getqf("petlevel")+1).."") 
                   say("Rufe dein Pet bitte erneut!") 
                   pc.setqf("petlevel",pc.getqf("petlevel")+1) 
                   pc.setqf("exp",0) 
                   pets.removebonus(pc.getqf('petlevel')) 
               end 
           end 
       end 

       -- Bugschutz 

       when bugcheck.timer begin 
           if pc.count_item(53001) == 0 then 
               say_title("Buguser") 
               say("Bugusing festgestellt!") 
               pets.removebonus(pc.getqf('petlevel')) 
           end 
       end 

       when login or logout or disconnect with pc.getqf("petruf") == 1 begin 
           pets.removebonus(pc.getqf('petlevel')) 
           chat("Dein Haustier ist nicht mitgekommen...") 
           chat("Rufe es erneut!")     
       end         

   end     
end  

 

Merci à ceux qui vont essayé de m'aidé !

Link to comment
Share on other sites

  • Answers 11
  • Created
  • Last Reply

Top Posters For This Question

Top Posters For This Question

11 answers to this question

Recommended Posts

  • 0

As-tu installer le système dans le python aussi ?

 

Tiens je l'ai trouve sur epvp

 

 #START_PETGUI BY DASKUCHEN
       PetGuiBg = ui.AniImageBox()
       PetGuiBg.AddFlag("not_pick")
       PetGuiBg.AppendImage("d:/ymir work/ui/petgui.dds")
       self.PetGuiBg = PetGuiBg

       self.PetGuiBg.SetPosition(wndMgr.GetScreenWidth()-460,5)

       self.PetName = ui.TextLine()
       self.PetName.SetDefaultFontName()
       self.PetName.SetPosition((wndMgr.GetScreenWidth()-394)+120, 43)
       self.PetName.SetText("Haustierbesitzer:   NONE")
       self.PetName.SetOutline()

       self.PetLevel = ui.TextLine()
       self.PetLevel.SetDefaultFontName()
       self.PetLevel.SetPosition((wndMgr.GetScreenWidth()-517)+120, 15)
       self.PetLevel.SetText("Haustierlevel:    NONE")
       self.PetLevel.SetOutline()

       self.PetBonus1 = ui.TextLine()
       self.PetBonus1.SetDefaultFontName()
       self.PetBonus1.SetPosition((wndMgr.GetScreenWidth()-460)+120, 63)
       self.PetBonus1.SetText("1. Bonus:    NONE")
       self.PetBonus1.SetOutline()

       self.PetBonus2 = ui.TextLine()
       self.PetBonus2.SetDefaultFontName()
       self.PetBonus2.SetPosition((wndMgr.GetScreenWidth()-460)+120, 84)
       self.PetBonus2.SetText("2. Bonus:    NONE")
       self.PetBonus2.SetOutline()

       self.PetBonus3 = ui.TextLine()
       self.PetBonus3.SetDefaultFontName()
       self.PetBonus3.SetPosition((wndMgr.GetScreenWidth()-460)+120, 103)
       self.PetBonus3.SetText("3. Bonus:    NONE")
       self.PetBonus3.SetOutline()            

       PetExpBar = ui.AniImageBox()
       PetExpBar.AddFlag("not_pick")
       PetExpBar.AppendImage("d:/ymir work/ui/pattern/charbar_main_yellow.tga")
       PetExpBar.SetPercentage(0,1)
       self.PetExpBar = PetExpBar

       self.PetExpBar.SetPosition((wndMgr.GetScreenWidth()-465)+65, 125)    

       self.PetExpLabel = ui.TextLine()
       self.PetExpLabel.SetDefaultFontName()
       self.PetExpLabel.SetPosition((wndMgr.GetScreenWidth()-465)+150, 125)
       self.PetExpLabel.SetText("0%")
       self.PetExpLabel.SetOutline()    

       ##CLOSE_PETGUI BY DASKUCHEN 

 

Lien du design a mettre dans etc : Design du pets

Link to comment
Share on other sites

  • 0

Oui j'ai déjà installé le python et donc je penses que c'est la quete qui foire ? Mais c'est pas censé faire comme le KillGui ?

 

Merci Daye j'attend ta quête alors.

Link to comment
Share on other sites

  • 0

Je n'ai pas beaucoup regardé cette quête mais apparemment la gui s'ouvre lorsque tu clic sur l'item ayant comme ID "53001" assure toi de cliquer sur le bon item.

 

when 53001.use begin
Link to comment
Share on other sites

  • 0

Hélas j'ai déjà essayé Craven ^^ j'avais vu le when 53001.use begin j'ai alors prit l'item 53001 qui correspond au phoenix de feu mais toujours aucun résultat le petgui ne s'affiche pas...

Link to comment
Share on other sites

  • 0
  • Retraité

Petit coup d'oeil rapide : le cmdchat("show...") m'a l'air pas très correcte au niveau python.

Il te manque pas du code pyhon ?

 

Et si c'est un pet, pourquoi tu utilises use ?

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

Link to comment
Share on other sites

  • 0

Si il n'y a pas tout le code python ici mais voilà tout le code que j'ai mit dans mon game.py comme indiqué sur le tuto allemand :

 

En dessous de la ligne :

self.SetSize(wndMgr.GetScreenWidth(), wndMgr.GetScreenHeight())

 

J'ai inséré ce code :

##START_PETGUI BY DASKUCHEN
	PetGuiBg = ui.AniImageBox()
	PetGuiBg.AddFlag("not_pick")
	PetGuiBg.AppendImage("d:/ymir work/ui/petgui.dds")
	self.PetGuiBg = PetGuiBg

	self.PetGuiBg.SetPosition(wndMgr.GetScreenWidth()-460,0)

	self.PetName = ui.TextLine()
	self.PetName.SetDefaultFontName()
	self.PetName.SetPosition((wndMgr.GetScreenWidth()-460)+120, 35)
	self.PetName.SetText("Haustierbesitzer:   NONE")
	self.PetName.SetOutline()

	self.PetLevel = ui.TextLine()
	self.PetLevel.SetDefaultFontName()
	self.PetLevel.SetPosition((wndMgr.GetScreenWidth()-460)+120, 55)
	self.PetLevel.SetText("Haustierlevel:    NONE")
	self.PetLevel.SetOutline()

	self.PetBonus1 = ui.TextLine()
	self.PetBonus1.SetDefaultFontName()
	self.PetBonus1.SetPosition((wndMgr.GetScreenWidth()-460)+120, 75)
	self.PetBonus1.SetText("1. Bonus:    NONE")
	self.PetBonus1.SetOutline()

	self.PetBonus2 = ui.TextLine()
	self.PetBonus2.SetDefaultFontName()
	self.PetBonus2.SetPosition((wndMgr.GetScreenWidth()-460)+120, 95)
	self.PetBonus2.SetText("2. Bonus:    NONE")
	self.PetBonus2.SetOutline()

	self.PetBonus3 = ui.TextLine()
	self.PetBonus3.SetDefaultFontName()
	self.PetBonus3.SetPosition((wndMgr.GetScreenWidth()-460)+120, 115)
	self.PetBonus3.SetText("3. Bonus:    NONE")
	self.PetBonus3.SetOutline()			

	PetExpBar = ui.AniImageBox()
	PetExpBar.AddFlag("not_pick")
	PetExpBar.AppendImage("d:/ymir work/ui/pattern/charbar_main_yellow.tga")
	PetExpBar.SetPercentage(0,1)
	self.PetExpBar = PetExpBar

	self.PetExpBar.SetPosition((wndMgr.GetScreenWidth()-460)+65, 143)	

	self.PetExpLabel = ui.TextLine()
	self.PetExpLabel.SetDefaultFontName()
	self.PetExpLabel.SetPosition((wndMgr.GetScreenWidth()-460)+150, 140)
	self.PetExpLabel.SetText("0%")
	self.PetExpLabel.SetOutline()	

	##CLOSE_PETGUI BY DASKUCHEN

 

En dessous de la ligne :

def __ServerCommand_Build(self):
	serverCommandList={

 

J'ai inséré ce code :

##PETGUI BY DASKUCHEN
		"ShowPetGui"			: self.__showpetgui,
		"HidePetGui"			: self.__hidepetgui,
		"HaustierName"			: self.__PetName,
		"HaustierLevel"			: self.__PetLevel,
		"HaustierBonus1"			: self.__PetBoni1,
		"HaustierBonus2"			: self.__PetBoni2,
		"HaustierBonus3"			: self.__PetBoni3,
		"PetProcentExp"			: self.__PetExp,			
		##

 

Puis à la fin du game.py j'ai inséré ce code :

def __hidepetgui(self):
	self.PetGuiBg.Hide()
	self.PetName.Hide()
	self.PetLevel.Hide()
	self.PetBonus1.Hide()
	self.PetBonus2.Hide()
	self.PetBonus3.Hide()
	self.PetExpBar.Hide()
	self.PetExpLabel.Hide()

def __showpetgui(self):
	self.PetGuiBg.Show()
	self.PetName.Show()
	self.PetLevel.Show()
	self.PetBonus1.Show()
	self.PetBonus2.Show()
	self.PetBonus3.Show()
	self.PetExpBar.Show()
	self.PetExpLabel.Show()	

def __PetName(self, HaustierName):
	self.PetName.SetText("Besitzer:    " + HaustierName)

def __PetLevel(self, HaustierLevel):
	self.PetLevel.SetText("Haustierlevel:    " + HaustierLevel)

def __PetBoni1(self, HaustierBonus1):
	self.PetBonus1.SetText("1. Bonus:    " + HaustierBonus1 + " Angriffswert")

def __PetBoni2(self, HaustierBonus2):
	self.PetBonus2.SetText("2. Bonus:    " + HaustierBonus2 + " Verteidigung")

def __PetBoni3(self, HaustierBonus3):
	self.PetBonus3.SetText("3. Bonus:    " + HaustierBonus3 + " Lebenspunkte")

def __PetExp(self, PetProcentExp):
	self.PetExpLabel.SetText(PetProcentExp + "%")
	self.PetExpBar.SetPercentage(PetProcentExp, 100)

 

Voilà tout ce que j'ai mit ^^ en python.

Link to comment
Share on other sites

  • 0
  • Retraité

Bonsoir,

 

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.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
 Share



Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.