Problema/bug shop pe mobi

Totalitatea subiectelor care nu respectă regulamentul impus in sectiunea "Probleme şi Întrebări" vor fi stocate aici.
Închis
Avatar utilizator
ShadowStar
Nou Venit

Nou Venit
Mesaje: 13
Membru din: 21 Sep 2021, 10:06
Aprecieri: 11  
Mulţumiri: 0
Medalii

*Problemă/Întrebare:Problemă cu nume shopurilor pe mobi.
Tipologie server: ne necesar
*Resursă folosită:...
*ServerFiles utilizat:...
*Syserr: Nu am syserr
Poză: Imagine *Detalii suplimentare: Deci se creează x shopuri map1 iar după 1 timp nu știu exact nu e niciodată la fel, și în diverse mape nu în toate și niciodată în in același loc apare numele shopurilor deasupra fiecărui mob/Npc chiar și jucător,

Are cineva ideie de rezolvarea la acest bug?
Din ce îmi amintesc și serverul Official sa confruntat cu aceiași problema cu ani în urma.

Mulțumesc anticipat.
Avatar utilizator
Fubuki.Atsuya
Nivel 9

Nivel 9
Mesaje: 1968
Membru din: 22 Iun 2015, 21:13
Server: OldLegion2
Regat: Shinsoo
Aprecieri: 455  
Mulţumiri: 815  
  Rezolvări prob.: 2
Discord: Copiază ID
Medalii

Ai adăugat tu vreun sistem ceva? Syserr nimic nimic? Db/Game/client?
Avatar utilizator
[HF]White
Metin Master

Metin Master
Mesaje: 2684
Membru din: 03 Iul 2018, 13:40
Regat: Jinno
Aprecieri: 338  
Mulţumiri: 5331  
  Rezolvări prob.: 13
Discord: Copiază ID
 Contact:
Medalii

era pe turkmmo un fix pt asta
Avatar utilizator
ShadowStar
Nou Venit

Nou Venit
Mesaje: 13
Membru din: 21 Sep 2021, 10:06
Aprecieri: 11  
Mulţumiri: 0
Medalii

banuliciraul123 scrie: ↑21 Sep 2021, 12:27 Ai adăugat tu vreun sistem ceva? Syserr nimic nimic? Db/Game/client?
Totul clean, client/db/game,
In ultima perioada nu am adăugat nimic care sa afecte shopul sau sa aibă legătură cu el, în principiu am observat ca problema apare mai mult dacă închid srv din putty fără sa ii dau shutdown, iar clientul rămâne deschis, însă nu este o regulă
Avatar utilizator
FlorinDorinStoian
Nivel 1

Nivel 1
Mesaje: 80
Membru din: 18 Oct 2020, 03:48
Server: Edge Of Antiques
Regat: Jinno
Aprecieri: 326  
Mulţumiri: 35  
Discord: Copiază ID
 Contact:
Medalii

Posteaza aici toata functia [def OnUpdate(self) ] din uiprivateshopbuilder.py (root)
Avatar utilizator
ShadowStar
Nou Venit

Nou Venit
Mesaje: 13
Membru din: 21 Sep 2021, 10:06
Aprecieri: 11  
Mulţumiri: 0
Medalii

FlorinDorinStoian scrie: ↑21 Sep 2021, 13:55 Posteaza aici toata functia [def OnUpdate(self) ] din uiprivateshopbuilder.py (root)

Cod: Selectaţi tot

def OnUpdate(self):
        if not self.vid:
            return    
        if systemSetting.IsShowSalesText():
        
            if chr.GetInstanceType(self.vid) not in [chr.INSTANCE_TYPE_PLAYER,chr.INSTANCE_TYPE_NPC]:
                self.Hide()
            if GetShopNamesRange() == 1.000:
                self.Show()
                (x, y) = chr.GetProjectPosition(self.vid, 220)
                self.SetPosition(x - self.GetWidth() / 2, y - self.GetHeight() / 2)
            else:
                LIMIT_RANGE = abs(constInfo.SHOPNAMES_RANGE * GetShopNamesRange())
                (to_x, to_y, to_z) = chr.GetPixelPosition(self.vid)
                (my_x, my_y, my_z) = player.GetMainCharacterPosition()
                if abs(my_x - to_x) <= LIMIT_RANGE and abs(my_y - to_y) <= LIMIT_RANGE:
                    (x, y) = chr.GetProjectPosition(self.vid, 220)
                    self.SetPosition(x - self.GetWidth() / 2, y - self.GetHeight() / 2)
                    self.Show()
                else:
                    self.Hide()
                    self.SetPosition(-10000, 0)
        else:
            for key in g_privateShopAdvertisementBoardDict.keys():
                if player.GetMainCharacterIndex() == key:
                    g_privateShopAdvertisementBoardDict[key].Show()
                    x, y = chr.GetProjectPosition(player.GetMainCharacterIndex(), 220)
                    g_privateShopAdvertisementBoardDict[key].SetPosition(x - self.GetWidth()/2, y - self.GetHeight()/2)
                else:
                    g_privateShopAdvertisementBoardDict[key].Hide()
Avatar utilizator
FlorinDorinStoian
Nivel 1

Nivel 1
Mesaje: 80
Membru din: 18 Oct 2020, 03:48
Server: Edge Of Antiques
Regat: Jinno
Aprecieri: 326  
Mulţumiri: 35  
Discord: Copiază ID
 Contact:
Medalii

ShadowStar scrie: ↑21 Sep 2021, 14:40
FlorinDorinStoian scrie: ↑21 Sep 2021, 13:55 Posteaza aici toata functia [def OnUpdate(self) ] din uiprivateshopbuilder.py (root)

Cod: Selectaţi tot

def OnUpdate(self):
        if not self.vid:
            return    
        if systemSetting.IsShowSalesText():
        
            if chr.GetInstanceType(self.vid) not in [chr.INSTANCE_TYPE_PLAYER,chr.INSTANCE_TYPE_NPC]:
                self.Hide()
            if GetShopNamesRange() == 1.000:
                self.Show()
                (x, y) = chr.GetProjectPosition(self.vid, 220)
                self.SetPosition(x - self.GetWidth() / 2, y - self.GetHeight() / 2)
            else:
                LIMIT_RANGE = abs(constInfo.SHOPNAMES_RANGE * GetShopNamesRange())
                (to_x, to_y, to_z) = chr.GetPixelPosition(self.vid)
                (my_x, my_y, my_z) = player.GetMainCharacterPosition()
                if abs(my_x - to_x) <= LIMIT_RANGE and abs(my_y - to_y) <= LIMIT_RANGE:
                    (x, y) = chr.GetProjectPosition(self.vid, 220)
                    self.SetPosition(x - self.GetWidth() / 2, y - self.GetHeight() / 2)
                    self.Show()
                else:
                    self.Hide()
                    self.SetPosition(-10000, 0)
        else:
            for key in g_privateShopAdvertisementBoardDict.keys():
                if player.GetMainCharacterIndex() == key:
                    g_privateShopAdvertisementBoardDict[key].Show()
                    x, y = chr.GetProjectPosition(player.GetMainCharacterIndex(), 220)
                    g_privateShopAdvertisementBoardDict[key].SetPosition(x - self.GetWidth()/2, y - self.GetHeight()/2)
                else:
                    g_privateShopAdvertisementBoardDict[key].Hide()

Schimba toata functia cu asta. si imi spui daca iti mai face probleme.
IMPORTANT: Daca ai modificat NPC-ul codul lui trebuie modificat si in functie, adaptat dupa cum ai tu, daca ai Shop-ul clasic (30000) doar inlocuesti toata functia.
	def OnUpdate(self):
		if not self.vid:
			return

		if systemSetting.IsShowSalesText():
			if (chr.GetInstanceType(self.vid) != chr.INSTANCE_TYPE_NPC or chr.GetVirtualNumber(self.vid) != 30000):
				self.Hide()
				DeleteADBoard(self.vid)

			if GetShopNamesRange() == 1.000:
				self.Show()
				(x, y) = chr.GetProjectPosition(self.vid, 220)
				self.SetPosition(x - self.GetWidth() / 2, y - self.GetHeight() / 2)
			else:
				LIMIT_RANGE = abs(constInfo.SHOPNAMES_RANGE * GetShopNamesRange())
				(to_x, to_y, to_z) = chr.GetPixelPosition(self.vid)
				(my_x, my_y, my_z) = player.GetMainCharacterPosition()
				if abs(my_x - to_x) <= LIMIT_RANGE and abs(my_y - to_y) <= LIMIT_RANGE:
					(x, y) = chr.GetProjectPosition(self.vid, 220)
					self.SetPosition(x - self.GetWidth() / 2, y - self.GetHeight() / 2)
					self.Show()
				else:
					self.Hide()
					self.SetPosition(-70, 0)
		else:
			for key in g_privateShopAdvertisementBoardDict.keys():
				if player.GetMainCharacterIndex() == key:
					g_privateShopAdvertisementBoardDict[key].Show()
					x, y = chr.GetProjectPosition(player.GetMainCharacterIndex(), 220)
					g_privateShopAdvertisementBoardDict[key].SetPosition(x - self.GetWidth()/2, y - self.GetHeight()/2)
				else:
					g_privateShopAdvertisementBoardDict[key].Hide()
Închis
Răspunsuri
2
Vizualizări
203
Răspunsuri
1
Vizualizări
283
Răspunsuri
3
Vizualizări
262

Înapoi la “Arhivă Probleme şi Întrebări”

  • Informaţie