Problema Client

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

Nivel 1
Mesaje: 71
Membru din: 08 Dec 2013, 10:23
Server: RealStyle
Regat: Shinsoo
Aprecieri: 3  
Mulţumiri: 0
Medalii

Buna ziua.
Am o problema la client.
In loc de "Soapta" imi arata "Armament".
Cand dau pe el , ma scoate de tot din joc
Daca are cineva o rezolvare , il rog sa ma ajute. Multumesc!
Avatar utilizator
C-Stroia
Utilizator interzis !

Utilizator interzis !
Mesaje: 1395
Membru din: 17 Noi 2013, 00:00
Server: xxx
Regat: Jinno
Aprecieri: 19  
Mulţumiri: 58  
 Contact:
Medalii

schimba uitarget din root ;)
Imagine
Imagine
Imagine
Afișează semnătura
Avatar utilizator
CoLoRaDoO
Nivel 1

Nivel 1
Mesaje: 71
Membru din: 08 Dec 2013, 10:23
Server: RealStyle
Regat: Shinsoo
Aprecieri: 3  
Mulţumiri: 0
Medalii

Aici e uitarget:
import app
import ui
import player
import net
import wndMgr
import messenger
import guild
import chr
import nonplayer
import locale
import constInfo

class TargetBoard(ui.ThinBoard):

BUTTON_NAME_LIST = (
locale.TARGET_BUTTON_WHISPER,
locale.TARGET_BUTTON_EXCHANGE,
locale.TARGET_BUTTON_FIGHT,
locale.TARGET_BUTTON_ACCEPT_FIGHT,
locale.TARGET_BUTTON_AVENGE,
locale.TARGET_BUTTON_FRIEND,
locale.TARGET_BUTTON_INVITE_PARTY,
locale.TARGET_BUTTON_LEAVE_PARTY,
locale.TARGET_BUTTON_EXCLUDE,
locale.TARGET_BUTTON_INVITE_GUILD,
locale.TARGET_BUTTON_DISMOUNT,
locale.TARGET_BUTTON_EXIT_OBSERVER,
locale.TARGET_BUTTON_VIEW_EQUIPMENT,
locale.TARGET_BUTTON_REQUEST_ENTER_PARTY,
locale.TARGET_BUTTON_BUILDING_DESTROY,
locale.TARGET_BUTTON_EMOTION_ALLOW,
"VOTE_BLOCK_CHAT",
)

GRADE_NAME = {
nonplayer.PAWN : locale.TARGET_LEVEL_PAWN,
nonplayer.S_PAWN : locale.TARGET_LEVEL_S_PAWN,
nonplayer.KNIGHT : locale.TARGET_LEVEL_KNIGHT,
nonplayer.S_KNIGHT : locale.TARGET_LEVEL_S_KNIGHT,
nonplayer.BOSS : locale.TARGET_LEVEL_BOSS,
nonplayer.KING : locale.TARGET_LEVEL_KING,
}
EXCHANGE_LIMIT_RANGE = 3000

def __init__(self):
ui.ThinBoard.__init__(self)

name = ui.TextLine()
name.SetParent(self)
name.SetDefaultFontName()
name.SetOutline()
name.Show()

hpGauge = ui.Gauge()
hpGauge.SetParent(self)
hpGauge.MakeGauge(130, "red")
hpGauge.Hide()

closeButton = ui.Button()
closeButton.SetParent(self)
closeButton.SetUpVisual("d:/ymir work/ui/public/close_button_01.sub")
closeButton.SetOverVisual("d:/ymir work/ui/public/close_button_02.sub")
closeButton.SetDownVisual("d:/ymir work/ui/public/close_button_03.sub")
closeButton.SetPosition(30, 13)

if locale.IsARABIC():
hpGauge.SetPosition(55, 17)
hpGauge.SetWindowHorizontalAlignLeft()
closeButton.SetWindowHorizontalAlignLeft()
else:
hpGauge.SetPosition(175, 17)
hpGauge.SetWindowHorizontalAlignRight()
closeButton.SetWindowHorizontalAlignRight()

closeButton.SetEvent(ui.__mem_func__(self.OnPressedCloseButton))
closeButton.Show()

self.buttonDict = {}
self.showingButtonList = []
for buttonName in self.BUTTON_NAME_LIST:
button = ui.Button()
button.SetParent(self)

if locale.IsARABIC():
button.SetUpVisual("d:/ymir work/ui/public/Small_Button_01.sub")
button.SetOverVisual("d:/ymir work/ui/public/Small_Button_02.sub")
button.SetDownVisual("d:/ymir work/ui/public/Small_Button_03.sub")
else:
button.SetUpVisual("d:/ymir work/ui/public/small_thin_button_01.sub")
button.SetOverVisual("d:/ymir work/ui/public/small_thin_button_02.sub")
button.SetDownVisual("d:/ymir work/ui/public/small_thin_button_03.sub")

button.SetWindowHorizontalAlignCenter()
button.SetText(buttonName)
button.Hide()
self.buttonDict[buttonName] = button
self.showingButtonList.append(button)

self.buttonDict[locale.TARGET_BUTTON_WHISPER].SetEvent(ui.__mem_func__(self.OnWhisper))
self.buttonDict[locale.TARGET_BUTTON_EXCHANGE].SetEvent(ui.__mem_func__(self.OnExchange))
self.buttonDict[locale.TARGET_BUTTON_FIGHT].SetEvent(ui.__mem_func__(self.OnPVP))
self.buttonDict[locale.TARGET_BUTTON_ACCEPT_FIGHT].SetEvent(ui.__mem_func__(self.OnPVP))
self.buttonDict[locale.TARGET_BUTTON_AVENGE].SetEvent(ui.__mem_func__(self.OnPVP))
self.buttonDict[locale.TARGET_BUTTON_FRIEND].SetEvent(ui.__mem_func__(self.OnAppendToMessenger))
self.buttonDict[locale.TARGET_BUTTON_FRIEND].SetEvent(ui.__mem_func__(self.OnAppendToMessenger))
self.buttonDict[locale.TARGET_BUTTON_INVITE_PARTY].SetEvent(ui.__mem_func__(self.OnPartyInvite))
self.buttonDict[locale.TARGET_BUTTON_LEAVE_PARTY].SetEvent(ui.__mem_func__(self.OnPartyExit))
self.buttonDict[locale.TARGET_BUTTON_EXCLUDE].SetEvent(ui.__mem_func__(self.OnPartyRemove))

self.buttonDict[locale.TARGET_BUTTON_INVITE_GUILD].SAFE_SetEvent(self.__OnGuildAddMember)
self.buttonDict[locale.TARGET_BUTTON_DISMOUNT].SAFE_SetEvent(self.__OnDismount)
self.buttonDict[locale.TARGET_BUTTON_EXIT_OBSERVER].SAFE_SetEvent(self.__OnExitObserver)
self.buttonDict[locale.TARGET_BUTTON_VIEW_EQUIPMENT].SAFE_SetEvent(self.__OnViewEquipment)
self.buttonDict[locale.TARGET_BUTTON_REQUEST_ENTER_PARTY].SAFE_SetEvent(self.__OnRequestParty)
self.buttonDict[locale.TARGET_BUTTON_BUILDING_DESTROY].SAFE_SetEvent(self.__OnDestroyBuilding)
self.buttonDict[locale.TARGET_BUTTON_EMOTION_ALLOW].SAFE_SetEvent(self.__OnEmotionAllow)

self.buttonDict["VOTE_BLOCK_CHAT"].SetEvent(ui.__mem_func__(self.__OnVoteBlockChat))

self.name = name
self.hpGauge = hpGauge
self.closeButton = closeButton
self.nameString = 0
self.nameLength = 0
self.vid = 0
self.eventWhisper = None
self.isShowButton = FALSE

self.__Initialize()
self.ResetTargetBoard()

def __del__(self):
ui.ThinBoard.__del__(self)

print "===================================================== DESTROYED TARGET BOARD"

def __Initialize(self):
self.nameString = ""
self.nameLength = 0
self.vid = 0
self.isShowButton = FALSE

def Destroy(self):
self.eventWhisper = None
self.closeButton = None
self.showingButtonList = None
self.buttonDict = None
self.name = None
self.hpGauge = None
self.__Initialize()

def OnPressedCloseButton(self):
player.ClearTarget()
self.Close()

def Close(self):
self.__Initialize()
self.Hide()

def Open(self, vid, name):
if vid:
if not constInfo.GET_VIEW_OTHER_EMPIRE_PLAYER_TARGET_BOARD():
if not player.IsSameEmpire(vid):
self.Hide()
return

if vid != self.GetTargetVID():
self.ResetTargetBoard()
self.SetTargetVID(vid)
self.SetTargetName(name)

if player.IsMainCharacterIndex(vid):
self.__ShowMainCharacterMenu()
elif chr.INSTANCE_TYPE_BUILDING == chr.GetInstanceType(self.vid):
self.Hide()
else:
self.RefreshButton()
self.Show()
else:
self.HideAllButton()
self.__ShowButton(locale.TARGET_BUTTON_WHISPER)
self.__ShowButton("VOTE_BLOCK_CHAT")
self.__ArrangeButtonPosition()
self.SetTargetName(name)
self.Show()

def Refresh(self):
if self.IsShow():
if self.IsShowButton():
self.RefreshButton()

def RefreshByVID(self, vid):
if vid == self.GetTargetVID():
self.Refresh()

def RefreshByName(self, name):
if name == self.GetTargetName():
self.Refresh()

def __ShowMainCharacterMenu(self):
canShow=0

self.HideAllButton()

if player.IsMountingHorse():
self.__ShowButton(locale.TARGET_BUTTON_DISMOUNT)
canShow=1

if player.IsObserverMode():
self.__ShowButton(locale.TARGET_BUTTON_EXIT_OBSERVER)
canShow=1

if canShow:
self.__ArrangeButtonPosition()
self.Show()
else:
self.Hide()

def __ShowNameOnlyMenu(self):
self.HideAllButton()

def SetWhisperEvent(self, event):
self.eventWhisper = event

def UpdatePosition(self):
self.SetPosition(wndMgr.GetScreenWidth()/2 - self.GetWidth()/2, 10)

def ResetTargetBoard(self):

for btn in self.buttonDict.values():
btn.Hide()

self.__Initialize()

self.name.SetPosition(0, 13)
self.name.SetHorizontalAlignCenter()
self.name.SetWindowHorizontalAlignCenter()
self.hpGauge.Hide()
self.SetSize(250, 40)

def SetTargetVID(self, vid):
self.vid = vid

def SetEnemyVID(self, vid):
self.SetTargetVID(vid)

name = chr.GetNameByVID(vid)
level = nonplayer.GetLevelByVID(vid)
grade = nonplayer.GetGradeByVID(vid)

nameFront = ""
if -1 != level:
nameFront += "Lv." + str(level) + " "
if self.GRADE_NAME.has_key(grade):
nameFront += "(" + self.GRADE_NAME[grade] + ") "

self.SetTargetName(nameFront + name)

def GetTargetVID(self):
return self.vid

def GetTargetName(self):
return self.nameString

def SetTargetName(self, name):
self.nameString = name
self.nameLength = len(name)
self.name.SetText(name)

def SetHP(self, hpPercentage):
if not self.hpGauge.IsShow():

self.SetSize(200 + 7*self.nameLength, self.GetHeight())

if locale.IsARABIC():
self.name.SetPosition( self.GetWidth()-23, 13)
else:
self.name.SetPosition(23, 13)

self.name.SetWindowHorizontalAlignLeft()
self.name.SetHorizontalAlignLeft()
self.hpGauge.Show()
self.UpdatePosition()

self.hpGauge.SetPercentage(hpPercentage, 100)

def ShowDefaultButton(self):

self.isShowButton = TRUE
self.showingButtonList.append(self.buttonDict[locale.TARGET_BUTTON_VIEW_EQUIPMENT])
self.showingButtonList.append(self.buttonDict[locale.TARGET_BUTTON_EXCHANGE])
self.showingButtonList.append(self.buttonDict[locale.TARGET_BUTTON_FIGHT])
self.showingButtonList.append(self.buttonDict[locale.TARGET_BUTTON_EMOTION_ALLOW])
for button in self.showingButtonList:
button.Show()

def HideAllButton(self):
self.isShowButton = FALSE
for button in self.showingButtonList:
button.Hide()
self.showingButtonList = []

def __ShowButton(self, name):

if not self.buttonDict.has_key(name):
return

self.buttonDict[name].Show()
self.showingButtonList.append(self.buttonDict[name])

def __HideButton(self, name):

if not self.buttonDict.has_key(name):
return

button = self.buttonDict[name]
button.Hide()

for btnInList in self.showingButtonList:
if btnInList == button:
self.showingButtonList.remove(button)
break

def OnWhisper(self):
if None != self.eventWhisper:
self.eventWhisper(self.nameString)

def OnExchange(self):
net.SendExchangeStartPacket(self.vid)

def OnPVP(self):
net.SendChatPacket("/pvp %d" % (self.vid))

def OnAppendToMessenger(self):
net.SendMessengerAddByVIDPacket(self.vid)

def OnPartyInvite(self):
net.SendPartyInvitePacket(self.vid)

def OnPartyExit(self):
net.SendPartyExitPacket()

def OnPartyRemove(self):
net.SendPartyRemovePacket(self.vid)

def __OnGuildAddMember(self):
net.SendGuildAddMemberPacket(self.vid)

def __OnDismount(self):
net.SendChatPacket("/unmount")

def __OnExitObserver(self):
net.SendChatPacket("/observer_exit")

def __OnViewEquipment(self):
net.SendChatPacket("/view_equip " + str(self.vid))

def __OnRequestParty(self):
net.SendChatPacket("/party_request " + str(self.vid))

def __OnDestroyBuilding(self):
net.SendChatPacket("/build d %d" % (self.vid))

def __OnEmotionAllow(self):
net.SendChatPacket("/emotion_allow %d" % (self.vid))

def __OnVoteBlockChat(self):
cmd = "/vote_block_chat %s" % (self.nameString)
net.SendChatPacket(cmd)

def OnPressEscapeKey(self):
self.OnPressedCloseButton()
return TRUE

def IsShowButton(self):
return self.isShowButton

def RefreshButton(self):

self.HideAllButton()

if chr.INSTANCE_TYPE_BUILDING == chr.GetInstanceType(self.vid):
#self.__ShowButton(locale.TARGET_BUTTON_BUILDING_DESTROY)
#self.__ArrangeButtonPosition()
return

if player.IsPVPInstance(self.vid) or player.IsObserverMode():
# PVP_INFO_SIZE_BUG_FIX
self.SetSize(200 + 7*self.nameLength, 40)
self.UpdatePosition()
# END_OF_PVP_INFO_SIZE_BUG_FIX
return

self.ShowDefaultButton()

if guild.MainPlayerHasAuthority(guild.AUTH_ADD_MEMBER):
if not guild.IsMemberByName(self.nameString):
if 0 == chr.GetGuildID(self.vid):
self.__ShowButton(locale.TARGET_BUTTON_INVITE_GUILD)

if not messenger.IsFriendByName(self.nameString):
self.__ShowButton(locale.TARGET_BUTTON_FRIEND)

if player.IsPartyMember(self.vid):

self.__HideButton(locale.TARGET_BUTTON_FIGHT)

if player.IsPartyLeader(self.vid):
self.__ShowButton(locale.TARGET_BUTTON_LEAVE_PARTY)
elif player.IsPartyLeader(player.GetMainCharacterIndex()):
self.__ShowButton(locale.TARGET_BUTTON_EXCLUDE)

else:
if player.IsPartyMember(player.GetMainCharacterIndex()):
if player.IsPartyLeader(player.GetMainCharacterIndex()):
self.__ShowButton(locale.TARGET_BUTTON_INVITE_PARTY)
else:
if chr.IsPartyMember(self.vid):
self.__ShowButton(locale.TARGET_BUTTON_REQUEST_ENTER_PARTY)
else:
self.__ShowButton(locale.TARGET_BUTTON_INVITE_PARTY)

if player.IsRevengeInstance(self.vid):
self.__HideButton(locale.TARGET_BUTTON_FIGHT)
self.__ShowButton(locale.TARGET_BUTTON_AVENGE)
elif player.IsChallengeInstance(self.vid):
self.__HideButton(locale.TARGET_BUTTON_FIGHT)
self.__ShowButton(locale.TARGET_BUTTON_ACCEPT_FIGHT)
elif player.IsCantFightInstance(self.vid):
self.__HideButton(locale.TARGET_BUTTON_FIGHT)

if not player.IsSameEmpire(self.vid):
self.__HideButton(locale.TARGET_BUTTON_INVITE_PARTY)
self.__HideButton(locale.TARGET_BUTTON_FRIEND)
self.__HideButton(locale.TARGET_BUTTON_FIGHT)

distance = player.GetCharacterDistance(self.vid)
if distance > self.EXCHANGE_LIMIT_RANGE:
self.__HideButton(locale.TARGET_BUTTON_EXCHANGE)
self.__ArrangeButtonPosition()

self.__ArrangeButtonPosition()

def __ArrangeButtonPosition(self):
showingButtonCount = len(self.showingButtonList)

pos = -(showingButtonCount / 2) * 68
if 0 == showingButtonCount % 2:
pos += 34

for button in self.showingButtonList:
button.SetPosition(pos, 33)
pos += 68

self.SetSize(max(150, showingButtonCount * 75), 65)
self.UpdatePosition()

def OnUpdate(self):
if self.isShowButton:

exchangeButton = self.buttonDict[locale.TARGET_BUTTON_EXCHANGE]
distance = player.GetCharacterDistance(self.vid)

if distance < 0:
return

if exchangeButton.IsShow():
if distance > self.EXCHANGE_LIMIT_RANGE:
self.RefreshButton()

else:
if distance < self.EXCHANGE_LIMIT_RANGE:
self.RefreshButton()

Pot sa stiu ce nu e in regula?
Sau sa primesc un uitarget bun?
Multumesc !
Avatar utilizator
KoKoTeam
Utilizator interzis !

Utilizator interzis !
Mesaje: 224
Membru din: 27 Mar 2015, 14:52
Server: Toate ;)
Regat: Jinno
Aprecieri: 0
Mulţumiri: 2  
Medalii

sunt 10000 de cliente si tu ne ceri un uitarget .. ?
Imagine
http://www.metin2ao.ro
Respecta si vei fi respectat!!
Afișează semnătura
Avatar utilizator
CoLoRaDoO
Nivel 1

Nivel 1
Mesaje: 71
Membru din: 08 Dec 2013, 10:23
Server: RealStyle
Regat: Shinsoo
Aprecieri: 3  
Mulţumiri: 0
Medalii

Am incercat sa descarc si sa despachetez cateva root'uri. imi aparea gol in uitarget .... In principal , as vrea sa il repar pe acesta , ca sa nu apara alte probleme..
Avatar utilizator
F. Gabriel
Membru Club

Membru Club
Mesaje: 3759
Membru din: 17 Aug 2013, 20:44
Server: -
Regat: Shinsoo
Aprecieri: 358  
Mulţumiri: 84  
 Contact:
Medalii

Subiect arhivat.
Imagine

Hosting Metin2 by OVINETWORK.RO
Afișează semnătura
Închis
Răspunsuri
9
Vizualizări
936
Răspunsuri
0
Vizualizări
393
Răspunsuri
2
Vizualizări
79

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

  • Informaţie
  • Cine este conectat

    Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 62 vizitatori