|
You last visited: Today at 20:12
Advertisement
Channel Switcher Problem
Discussion on Channel Switcher Problem within the Metin2 Private Server forum part of the Metin2 category.
06/26/2016, 22:01
|
#1
|
elite*gold: 0
Join Date: Oct 2015
Posts: 106
Received Thanks: 0
|
Channel Switcher Problem
Ich habe folgendes Problem mit dem Channel Switcher:
Leider ist die client syserr leer. Wenn ich ein File posten soll, bitte sagen welches
|
|
|
06/26/2016, 22:40
|
#2
|
elite*gold: 0
Join Date: Jan 2014
Posts: 1,583
Received Thanks: 2,398
|
Wird wahrscheinlich an deiner uiChannel.py liegen.
Stell am besten mal die Datei hier rein, am besten in einem php Code Format, ist angenehmer zu lesen oder in einem Spoiler.
|
|
|
06/26/2016, 23:10
|
#3
|
elite*gold: 0
Join Date: Oct 2015
Posts: 106
Received Thanks: 0
|
Hier die uiChannel.py
PHP Code:
import ui import net import app import chat import math import wndMgr import serverInfo import background import ServerStateChecker
class ChannelChanger(ui.ScriptWindow): def __init__(self): ui.ScriptWindow.__init__(self)
self.__MakeWindow() self.__MakeBoard() self.__RefreshServerStateList()
def __del__(self): ui.ScriptWindow.__del__(self)
def Destroy(self): self.Hide() return TRUE
def __MakeWindow(self): self.SetSize(140, 170) self.SetPosition( (wndMgr.GetScreenWidth() / 2) - int(math.floor(self.GetWidth() / 2.)), (wndMgr.GetScreenHeight() / 2) - int(math.floor(self.GetHeight() / 2.)) ) self.AddFlag("movable") self.AddFlag("float") self.Show()
def __MakeBoard(self): self.Board = ui.Board() self.Board.SetParent(self) self.Board.SetSize(self.GetWidth(), self.GetHeight()) self.Board.SetPosition(0, 0) self.Board.AddFlag("movable") self.Board.AddFlag("float") self.Board.Show()
self.TitleBar = ui.TitleBar() self.TitleBar.SetParent(self.Board) self.TitleBar.SetPosition(7, 7) self.TitleBar.MakeTitleBar(self.GetWidth() - 2 * 7, 'red') self.TitleBar.SetCloseEvent(self.Close) self.TitleBar.Show()
self.TitleText = ui.TextLine() self.TitleText.SetParent(self.TitleBar) self.TitleText.SetPosition(0, 4) self.TitleText.SetText("Channel Switcher") self.TitleText.SetWindowHorizontalAlignCenter() self.TitleText.SetHorizontalAlignCenter() self.TitleText.Show()
self.ServerName = ui.TextLine() self.ServerName.SetParent(self.TitleBar) self.ServerName.SetPosition(0, self.TitleBar.GetHeight()) self.ServerName.SetText(str(net.GetServerInfo()).split(",")[0]) self.ServerName.SetWindowHorizontalAlignCenter() self.ServerName.SetHorizontalAlignCenter() self.ServerName.Show()
def __GetRegionID(self): return 0
def __GetServerID(self): regionID = self.__GetRegionID()
for i in serverInfo.REGION_DICT[regionID].keys(): if serverInfo.REGION_DICT[regionID][i]["name"] == net.GetServerInfo().split(",")[0]: return i def __RefreshServerStateList(self): regionID = self.__GetRegionID() serverID = self.__GetServerID()
try: channelDict = serverInfo.REGION_DICT[regionID][serverID]["channel"] except: return self.ChangeButton={} for channelID, channelDataDict in channelDict.items(): self.ChangeButton[channelID] = ui.Button() self.ChangeButton[channelID].SetParent(self.Board) add=25*channelID+24 self.ChangeButton[channelID].SetPosition(25,add) self.ChangeButton[channelID].SetUpVisual('d:/ymir work/ui/public/Large_button_01.sub') self.ChangeButton[channelID].SetOverVisual('d:/ymir work/ui/public/Large_button_02.sub') self.ChangeButton[channelID].SetDownVisual('d:/ymir work/ui/public/Large_button_03.sub') self.ChangeButton[channelID].SetEvent(lambda arg1=channelID: self.__OnClickConnectButton(arg1,channelDataDict["name"])) self.ChangeButton[channelID].SetText(channelDataDict["name"]) self.ChangeButton[channelID].Show()
def __IsSpecialMap(self): dis_maps = [ "season1/metin2_map_oxevent", "season2/metin2_map_guild_inside01", "season2/metin2_map_empirewar01", "season2/metin2_map_empirewar02", "season2/metin2_map_empirewar03", "metin2_map_dragon_timeattack_01", "metin2_map_dragon_timeattack_02", "metin2_map_dragon_timeattack_03", "metin2_map_skipia_dungeon_boss", "metin2_map_skipia_dungeon_boss2", "metin2_map_devilsCatacomb", "metin2_map_deviltower1", "metin2_map_t1", "metin2_map_t2", "metin2_map_t3", "metin2_map_t4", "metin2_map_t5", "metin2_map_wedding_01", "metin2_map_duel", "metin2_map_orclabyrinth", "metin2_map_n_flame_dungeon_01", "metin2_map_n_snow_dungeon_01" ] if str(background.GetCurrentMapName()) in dis_maps: return TRUE return FALSE
def __OnClickConnectButton(self,channelID,name): if not channelID: return if net.GetServerInfo().strip().split(", ")[1].strip() == name.strip().split(" ")[0]: chat.AppendChat(1, "Du bist bereits im ausgewaehlten Channel!") return elif self.__IsSpecialMap(): chat.AppendChat(1, "Sorry, du kannst deinen Channel auf dieser Map nicht ohne ausloggen wechseln!") return net.SetServerInfo(net.GetServerInfo()[:-1] + str(channelID)) self.Close() net.SendChatPacket("/channel "+str(channelID))
def DirectConnect(self, ChannelIP, ChannelPort, AuthServerIP, AuthServerPort): net.SetLoginInfo(decode_string(net.ACCOUNT_ID), decode_string(net.ACCOUNT_PW)) net.ConnectToAccountServer(ChannelIP, ChannelPort, AuthServerIP, AuthServerPort) net.DirectEnter(0) net.SendSelectCharacterPacket(0) net.SendEnterGamePacket()
def Open(self): ui.ScriptWindow.Show(self)
def Close(self): self.Hide()
def OnPressEscapeKey(self): self.Close() return TRUE
|
|
|
06/26/2016, 23:22
|
#4
|
elite*gold: 0
Join Date: Oct 2012
Posts: 4,972
Received Thanks: 774
|
uiChannel.py
PHP Code:
import ui import net import app import chat import math import wndMgr import serverInfo import background import ServerStateChecker
class ChannelChanger(ui.ScriptWindow): def __init__(self): ui.ScriptWindow.__init__(self)
self.__MakeWindow() self.__MakeBoard() self.__Fill_Up_ChannelList()
def __del__(self): ui.ScriptWindow.__del__(self)
def Destroy(self): self.Hide() return TRUE
def __MakeWindow(self): ServerStateChecker.Create(self) self.SetSize(150, 175) self.SetPosition( (wndMgr.GetScreenWidth() / 2) - int(math.floor(self.GetWidth() / 2.)), (wndMgr.GetScreenHeight() / 2) - int(math.floor(self.GetHeight() / 2.)) ) #self.AddFlag("movable") self.AddFlag("float") self.Show()
def __MakeBoard(self): self.Board = ui.Board() self.Board.SetParent(self) self.Board.SetSize(self.GetWidth(), self.GetHeight()) self.Board.SetPosition(0, 0) #self.Board.AddFlag("movable") self.Board.AddFlag("float") self.Board.Show()
self.TitleBar = ui.TitleBar() self.TitleBar.SetParent(self.Board) self.TitleBar.SetPosition(7, 7) self.TitleBar.MakeTitleBar(self.GetWidth() - 2 * 7, 'red') self.TitleBar.SetCloseEvent(self.Close) self.TitleBar.Show()
self.RefreshButton = ui.Button() self.RefreshButton.SetParent(self.TitleBar) self.RefreshButton.SetPosition(3, 3) self.RefreshButton.SetUpVisual("d:/ymir work/ui/game/guild/refresh_button_01.sub") self.RefreshButton.SetOverVisual("d:/ymir work/ui/game/guild/refresh_button_02.sub") self.RefreshButton.SetDownVisual("d:/ymir work/ui/game/guild/refresh_button_03.sub") self.RefreshButton.SetToolTipText("Refresh", 0, - 23) self.RefreshButton.SetEvent(lambda : self.__Fill_Up_ChannelList()) self.RefreshButton.Show()
self.TitleText = ui.TextLine() self.TitleText.SetParent(self.TitleBar) self.TitleText.SetPosition(0, 4) self.TitleText.SetText("Channel waehlen") self.TitleText.SetWindowHorizontalAlignCenter() self.TitleText.SetHorizontalAlignCenter() self.TitleText.Show()
self.ServerName = ui.TextLine() self.ServerName.SetParent(self.TitleBar) self.ServerName.SetPosition(0, self.TitleBar.GetHeight()) self.ServerName.SetText(str(net.GetServerInfo()).split(",")[0]) self.ServerName.SetWindowHorizontalAlignCenter() self.ServerName.SetHorizontalAlignCenter() self.ServerName.Show()
self.ChannelListBase = ui.SlotBar() self.ChannelListBase.SetParent(self.Board) self.ChannelListBase.SetSize(self.Board.GetWidth() - 2 * 16, 5 * 18 - 4) self.ChannelListBase.SetPosition(16 , 7 + self.TitleBar.GetHeight() + 6 + 10) self.ChannelListBase.Show()
self.ChannelList = ui.ListBox() self.ChannelList.SetParent(self.ChannelListBase) self.ChannelList.SetSize(self.ChannelListBase.GetWidth()- 20, self.ChannelListBase.GetHeight()) self.ChannelList.SetPosition(0, 0) self.ChannelList.SetEvent(ui.__mem_func__(self.__OnSelectChannel)) self.ChannelList.Show()
self.ChangeButton = ui.Button() self.ChangeButton.SetParent(self.Board) self.ChangeButton.SetPosition(self.Board.GetWidth() / 2 - 44, self.Board.GetHeight() - 35) self.ChangeButton.SetUpVisual('d:/ymir work/ui/public/Large_button_01.sub') self.ChangeButton.SetOverVisual('d:/ymir work/ui/public/Large_button_02.sub') self.ChangeButton.SetDownVisual('d:/ymir work/ui/public/Large_button_03.sub') self.ChangeButton.SetEvent(lambda : self.__OnClickConnectButton()) self.ChangeButton.SetText("Wechseln") self.ChangeButton.Show() self.DisableChangeButton()
self.ChannelListScrollBar = ui.ScrollBar() self.ChannelListScrollBar.SetParent(self.ChannelListBase) self.ChannelListScrollBar.SetPosition(18, 3) self.ChannelListScrollBar.SetScrollBarSize(83) self.ChannelListScrollBar.SetWindowHorizontalAlignRight() self.ChannelListScrollBar.SetScrollEvent(ui.__mem_func__(self.__OnScrollChannelList)) self.ChannelListScrollBar.Show()
def DisableChangeButton(self): self.ChangeButton.Disable() self.ChangeButton.Down() self.ChangeButton.ButtonText.SetFontColor(0.4, 0.4, 0.4)
def EnableChangeButton(self): self.ChangeButton.Enable() self.ChangeButton.SetUp() self.ChangeButton.ButtonText.SetFontColor(1, 1, 1)
def __GetRegionID(self): return 0
def __GetServerID(self): regionID = self.__GetRegionID() for i in serverInfo.REGION_DICT[regionID].keys(): if serverInfo.REGION_DICT[regionID][i]["name"] == net.GetServerInfo().split(",")[0]: serverID = int(i) break
return serverID
def __Fill_Up_ChannelList(self): self.__RequestServerStateList() self.__RefreshServerStateList() #self.ChannelList.SelectItem(0)
def __RequestServerStateList(self): regionID = self.__GetRegionID() serverID = self.__GetServerID()
try: channelDict = serverInfo.REGION_DICT[regionID][serverID]["channel"] except: return ServerStateChecker.Initialize(self) for id, channelDataDict in channelDict.items(): key=channelDataDict["key"] ip=channelDataDict["ip"] udp_port=channelDataDict["udp_port"] ServerStateChecker.AddChannel(key, ip, udp_port) ServerStateChecker.Request()
def __RefreshServerStateList(self): regionID = self.__GetRegionID() serverID = self.__GetServerID() bakChannelID = self.ChannelList.GetSelectedItem()
self.ChannelList.ClearItem()
try: channelDict = serverInfo.REGION_DICT[regionID][serverID]["channel"] except: return
for channelID, channelDataDict in channelDict.items(): channelName = channelDataDict["name"] channelState = channelDataDict["state"] self.ChannelList.InsertItem(channelID, "%s %s" % (channelName, channelState))
self.ChannelList.SelectItem(bakChannelID-1)
def NotifyChannelState(self, addrKey, state): try: stateName = serverInfo.STATE_DICT[state] except: stateName = serverInfo.STATE_NONE
regionID = int(addrKey / 1000) serverID = int(addrKey / 10) % 100 channelID = addrKey % 10
try: serverInfo.REGION_DICT[regionID][serverID]["channel"][channelID]["state"] = stateName self.__RefreshChannelStateList() except: pass
def __IsSpecialMap(self): dis_maps = [ "season1/metin2_map_oxevent", "season2/metin2_map_guild_inside01", "season2/metin2_map_empirewar01", "season2/metin2_map_empirewar02", "season2/metin2_map_empirewar03", "metin2_map_dragon_timeattack_01", "metin2_map_dragon_timeattack_02", "metin2_map_dragon_timeattack_03", "metin2_map_skipia_dungeon_boss", "metin2_map_skipia_dungeon_boss2", "metin2_map_devilsCatacomb", "metin2_map_deviltower1", "metin2_map_t1", "metin2_map_t2", "metin2_map_t3", "metin2_map_t4", "metin2_map_t5", "metin2_map_wedding_01", "metin2_map_duel", "metin2_map_orclabyrinth", "metin2_map_n_flame_dungeon_01", "metin2_map_n_snow_dungeon_01" ] if str(background.GetCurrentMapName()) in dis_maps: return TRUE return FALSE
def __OnSelectChannel(self): if self.ChangeButton.IsDown(): self.EnableChangeButton()
def __OnScrollChannelList(self): viewItemCount = self.ChannelList.GetViewItemCount() itemCount = self.ChannelList.GetItemCount() pos = self.ChannelListScrollBar.GetPos() * (itemCount - viewItemCount) self.ChannelList.SetBasePos(int(pos))
def __OnClickConnectButton(self): ServerStateChecker.Update() channelID = self.ChannelList.GetSelectedItem() if not channelID: return if net.GetServerInfo().strip().split(", ")[1] == self.ChannelList.textDict[self.ChannelList.selectedLine].strip().split(" ")[0]: chat.AppendChat(1, "Du bist bereits im ausgewaehlten Channel!") return elif self.__IsSpecialMap(): chat.AppendChat(1, "Sorry, du kannst deinen Channel auf dieser Map nicht ohne ausloggen wechseln!") return net.SetServerInfo(net.GetServerInfo()[:-1] + str(channelID)) self.Close() net.SendChatPacket("/channel "+str(channelID))
def DirectConnect(self, ChannelIP, ChannelPort, AuthServerIP, AuthServerPort): net.SetLoginInfo(decode_string(net.ACCOUNT_ID), decode_string(net.ACCOUNT_PW)) net.ConnectToAccountServer(ChannelIP, ChannelPort, AuthServerIP, AuthServerPort) net.DirectEnter(0) net.SendSelectCharacterPacket(0) net.SendEnterGamePacket()
def Show(self): ui.ScriptWindow.Show(self)
def Close(self): ServerStateChecker.Initialize(self) self.Hide()
def OnPressEscapeKey(self): self.Close() return TRUE
def OnUpdate(self): ServerStateChecker.Update()
game.py
PHP Code:
def __switch_channel(self): import uiChannel a = uiChannel.ChannelChanger() a.Show()
und das:
PHP Code:
onPressKeyDict[app.DIK_F7] = lambda : self.__switch_channel()
Versuch es nochmal.
|
|
|
06/29/2016, 11:39
|
#5
|
elite*gold: 0
Join Date: Oct 2015
Posts: 106
Received Thanks: 0
|
Ich möchte wenn möglich keine ganzes file ändern... Deswegen poste ich einfach mal meines...
PHP Code:
import ui
import net
import app
import chat
import math
import wndMgr
import serverInfo
import background
import ServerStateChecker
class ChannelChanger(ui.ScriptWindow):
def __init__(self):
ui.ScriptWindow.__init__(self)
self.__MakeWindow()
self.__MakeBoard()
self.__RefreshServerStateList()
def __del__(self):
ui.ScriptWindow.__del__(self)
def Destroy(self):
self.Hide()
return TRUE
def __MakeWindow(self):
self.SetSize(140, 170)
self.SetPosition(
(wndMgr.GetScreenWidth() / 2) - int(math.floor(self.GetWidth() / 2.)),
(wndMgr.GetScreenHeight() / 2) - int(math.floor(self.GetHeight() / 2.))
)
self.AddFlag("movable")
self.AddFlag("float")
self.Show()
def __MakeBoard(self):
self.Board = ui.Board()
self.Board.SetParent(self)
self.Board.SetSize(self.GetWidth(), self.GetHeight())
self.Board.SetPosition(0, 0)
self.Board.AddFlag("movable")
self.Board.AddFlag("float")
self.Board.Show()
self.TitleBar = ui.TitleBar()
self.TitleBar.SetParent(self.Board)
self.TitleBar.SetPosition(7, 7)
self.TitleBar.MakeTitleBar(self.GetWidth() - 2 * 7, 'red')
self.TitleBar.SetCloseEvent(self.Close)
self.TitleBar.Show()
self.TitleText = ui.TextLine()
self.TitleText.SetParent(self.TitleBar)
self.TitleText.SetPosition(0, 4)
self.TitleText.SetText("Channel Switcher")
self.TitleText.SetWindowHorizontalAlignCenter()
self.TitleText.SetHorizontalAlignCenter()
self.TitleText.Show()
self.ServerName = ui.TextLine()
self.ServerName.SetParent(self.TitleBar)
self.ServerName.SetPosition(0, self.TitleBar.GetHeight())
self.ServerName.SetText(str(net.GetServerInfo()).split(",")[0])
self.ServerName.SetWindowHorizontalAlignCenter()
self.ServerName.SetHorizontalAlignCenter()
self.ServerName.Show()
def __GetRegionID(self):
return 0
def __GetServerID(self):
regionID = self.__GetRegionID()
for i in serverInfo.REGION_DICT[regionID].keys():
if serverInfo.REGION_DICT[regionID][i]["name"] == net.GetServerInfo().split(",")[0]:
return i
def __RefreshServerStateList(self):
regionID = self.__GetRegionID()
serverID = self.__GetServerID()
try:
channelDict = serverInfo.REGION_DICT[regionID][serverID]["channel"]
except:
return
self.ChangeButton={}
for channelID, channelDataDict in channelDict.items():
self.ChangeButton[channelID] = ui.Button()
self.ChangeButton[channelID].SetParent(self.Board)
add=25*channelID+24
self.ChangeButton[channelID].SetPosition(25,add)
self.ChangeButton[channelID].SetUpVisual('d:/ymir work/ui/public/Large_button_01.sub')
self.ChangeButton[channelID].SetOverVisual('d:/ymir work/ui/public/Large_button_02.sub')
self.ChangeButton[channelID].SetDownVisual('d:/ymir work/ui/public/Large_button_03.sub')
self.ChangeButton[channelID].SetEvent(lambda arg1=channelID: self.__OnClickConnectButton(arg1,channelDataDict["name"]))
self.ChangeButton[channelID].SetText(channelDataDict["name"])
self.ChangeButton[channelID].Show()
def __IsSpecialMap(self):
dis_maps = [
"season1/metin2_map_oxevent",
"season2/metin2_map_guild_inside01",
"season2/metin2_map_empirewar01",
"season2/metin2_map_empirewar02",
"season2/metin2_map_empirewar03",
"metin2_map_dragon_timeattack_01",
"metin2_map_dragon_timeattack_02",
"metin2_map_dragon_timeattack_03",
"metin2_map_skipia_dungeon_boss",
"metin2_map_skipia_dungeon_boss2",
"metin2_map_devilsCatacomb",
"metin2_map_deviltower1",
"metin2_map_t1",
"metin2_map_t2",
"metin2_map_t3",
"metin2_map_t4",
"metin2_map_t5",
"metin2_map_wedding_01",
"metin2_map_duel",
"metin2_map_orclabyrinth",
"metin2_map_n_flame_dungeon_01",
"metin2_map_n_snow_dungeon_01"
]
if str(background.GetCurrentMapName()) in dis_maps:
return TRUE
return FALSE
def __OnClickConnectButton(self,channelID,name):
if not channelID:
return
if net.GetServerInfo().strip().split(", ")[1].strip() == name.strip().split(" ")[0]:
chat.AppendChat(1, "Du bist bereits im ausgewaehlten Channel!")
return
elif self.__IsSpecialMap():
chat.AppendChat(1, "Sorry, du kannst deinen Channel auf dieser Map nicht ohne ausloggen wechseln!")
return
net.SetServerInfo(net.GetServerInfo()[:-1] + str(channelID))
self.Close()
net.SendChatPacket("/channel "+str(channelID))
def DirectConnect(self, ChannelIP, ChannelPort, AuthServerIP, AuthServerPort):
net.SetLoginInfo(decode_string(net.ACCOUNT_ID), decode_string(net.ACCOUNT_PW))
net.ConnectToAccountServer(ChannelIP, ChannelPort, AuthServerIP, AuthServerPort)
net.DirectEnter(0)
net.SendSelectCharacterPacket(0)
net.SendEnterGamePacket()
def Open(self):
ui.ScriptWindow.Show(self)
def Close(self):
self.Hide()
def OnPressEscapeKey(self):
self.Close()
return TRUE
PHP Code:
def __switch_channel(self):
import uiChannel
a = uiChannel.ChannelChanger()
a.Show()
PHP Code:
onPressKeyDict[app.DIK_F5] = lambda : self.__switch_channel()
So sieht das Ganze bei mir aus..
|
|
|
06/30/2016, 21:32
|
#6
|
elite*gold: 0
Join Date: Oct 2015
Posts: 106
Received Thanks: 0
|
Bitte um hilfe... Bin am verzweifeln...
|
|
|
07/02/2016, 19:42
|
#7
|
elite*gold: 0
Join Date: Oct 2015
Posts: 106
Received Thanks: 0
|
Wäre echt klasse, wenn mir hier jemand helfen könnte!
|
|
|
07/04/2016, 01:02
|
#8
|
elite*gold: 0
Join Date: Oct 2015
Posts: 106
Received Thanks: 0
|
Bitte um hilfe!
Bitte auch entlohnung für die lösung
|
|
|
07/09/2016, 17:11
|
#9
|
elite*gold: 0
Join Date: Oct 2015
Posts: 106
Received Thanks: 0
|
Ich zahle für den fix!
|
|
|
07/14/2016, 07:50
|
#10
|
elite*gold: 0
Join Date: Oct 2015
Posts: 106
Received Thanks: 0
|
up
|
|
|
07/23/2016, 10:11
|
#11
|
elite*gold: 0
Join Date: Oct 2015
Posts: 106
Received Thanks: 0
|
Ich zahle, wenn mir das Problem jemand löst..
|
|
|
07/24/2016, 06:07
|
#12
|
elite*gold: 17
Join Date: May 2014
Posts: 2,103
Received Thanks: 1,292
|
nimm dir die teile aus dem kori client, wenn ich mich richtig erinnere hat der dieses system drinne. Für sowas musst du nicht zahlen!
PS: Der channelswitcher funktioniert nur wenn auch mehrere channels online sind. Wenn du nur 1 CH eingebaut hast ist es normal das dort KEIN/nur der ONLINE channel aufgelistet ist.
Ansonsten schau mal die pfade der Buttons an ob die evtl nicht stimmen
€: so sieht das ganze bei den kori files aus:
hast du in deiner serverinfo.py auch mehr als nur 1 channel AKTIV drinne stehen? oder sind sie evtl ausgeklammert mit einem # ?
sollte so aussehen:
|
|
|
07/24/2016, 08:51
|
#13
|
elite*gold: 0
Join Date: Oct 2015
Posts: 106
Received Thanks: 0
|
Habe alles gleich nur dass ich oben halt nur 4 Channels hab (Wovon ich nur 1 starte)
unter "MARKADDR_DICT" Hab ich allerdings nur 1x das 1. mit 10:
|
|
|
07/24/2016, 18:39
|
#14
|
elite*gold: 17
Join Date: May 2014
Posts: 2,103
Received Thanks: 1,292
|
Mach es wie ich es hab dann sollte es klappen
|
|
|
07/24/2016, 23:36
|
#15
|
elite*gold: 0
Join Date: Oct 2015
Posts: 106
Received Thanks: 0
|
Wäre toll wenn du mir die teile schicken könntest..
LG
|
|
|
 |
|
Similar Threads
|
[RLS] Ingame Channel Switcher like WOM2
09/28/2018 - Metin2 PServer Guides & Strategies - 45 Replies
Hey.
Da ein gewisser Herr meint mein System als seins auszugeben und zu verkaufen release ich es nun.
Es portet nur auf den andren CH.
Also so wie wenn man von ch1 auf ch99 warpt.
Is ne 10min Arbeit aber naja was solls.
lauft aktuell auf 4 ch´s mit den ports:
ch1:
|
[HILFE] InGame Channel Switcher
04/26/2015 - Metin2 Private Server - 4 Replies
Hey ich suche jm, der sich mit dem InGame Channelswitcher auskennt. Habe ihn soweit angepasst. 4 Channel, Fenstergröße angepasst etc. Leider tut er nicht den Channel wechseln, sondern wenn man einen anderen Channel auswähl bleibt das Bild einfach stehen, wie wenn es einen Fehlport gibt.
Hier das Script
import ui
import dbg
import app
import net
import constInfo
import chat
|
Channel switcher
04/20/2014 - Metin2 - 0 Replies
Hello, I would like to switch between channels and log in and pick my character on the server more quickly with just one click. Do you know any program like that?
|
All times are GMT +1. The time now is 20:13.
|
|