Bonjour à tous, après m'être pris la tête un bon nombre d'heure sur le problème de l’écriture qui reste même après un tp (je parle bien entendu de la fameuse quête de bienvenue (give_basic_weapon.quest, il y a eu pas mal de solution sur ce forum mais aucune qui marche a 100%. Aujourd'hui je vous propose un code qui devrait fonctionner pour tout le monde et toute les quêtes rencontrant ce soucis.
Pour cela, il vous faut donc depack le root de votre client, puis ouvrir le fichier uiQuest.py.
Ensuite trouver la fonction : def MakeQuestion(self, n): et la modifier comme suit :
def MakeQuestion(self, n):
global entire_questbutton_number
global entire_questpage_number
global cur_questpage_number
entire_questpage_number = ((n-2)/7)+1
entire_questbutton_number = n
if not self.board:
return
self.btnAnswer = [self.MakeEachButton(i) for i in xrange (n)]
import localeInfo
self.prevbutton = self.MakeNextPrevPageButton()
self.prevbutton.SetPosition(self.sx+self.board.GetWidth()/2-164, self.board.GetHeight()/2-16)
self.prevbutton.SetText(localeInfo.UI_PREVPAGE)
#self.prevbutton.SetEvent(self.PrevQuestPageEvent, 1, n) # buggy
self.prevbutton.SAFE_SetEvent(self.PrevQuestPageEvent, 1, n) # unbuggy
self.nextbutton = self.MakeNextPrevPageButton()
self.nextbutton.SetPosition(self.sx+self.board.GetWidth()/2+112, self.board.GetHeight()/2-16)
self.nextbutton.SetText(localeInfo.UI_NEXTPAGE)
#self.nextbutton.SetEvent(self.NextQuestPageEvent, 1, n) # buggy
self.nextbutton.SAFE_SetEvent(self.NextQuestPageEvent, 1, n) # unbuggy
if cur_questpage_number != 1:
cur_questpage_number = 1
N'oublier pas les tabulation bien entendu !
Voila, vous avez à présent corriger ce bug.