Bin auf der Suche nach einem sash mit scale dass zu 100% funktioniert. Die Person die es verkauft sollte auch dementsprechenden support leisten können
Beiträge von JordanBelford
-
-
/ip fehlt nicht sondern ist erweitert... Das gleiche bei /in.. wer lesen kann ist klar im Vorteil
Würde mir wohl über andere Sachen Gedanken machen wenn mei kompletter Source fehlt, es sei denn es geht alles oO
-
nicht alle Dateien ändern
Wirst wohl irgendwo noch ein altes Backup haben.. Zieh das Makefile da raus & pass es ggf. wieder an..Würde aber davor deine np++ settings prüfen oder den Editor wechseln
-
Hast du was am makefile verändert?
Eventuell die kodierung gecrasht? -
Hat funktioniert - danke!!
-
Danke für die Hilfe!
Python- import ui
- import app
- import net
- import grp
- import chat
- import item
- import time
- import wndMgr
- import player
- import uiCommon
- import exchange
- import localeInfo
- import mouseModule
- import uiPickMoney
- import playerSettingModule
- class ExchangeDialog(ui.ScriptWindow):
- FACE_IMAGE_DICT = {
- playerSettingModule.RACE_WARRIOR_M : "icon/face/warrior_m.tga",
- playerSettingModule.RACE_WARRIOR_W : "icon/face/warrior_w.tga",
- playerSettingModule.RACE_ASSASSIN_M : "icon/face/assassin_m.tga",
- playerSettingModule.RACE_ASSASSIN_W : "icon/face/assassin_w.tga",
- playerSettingModule.RACE_SURA_M : "icon/face/sura_m.tga",
- playerSettingModule.RACE_SURA_W : "icon/face/sura_w.tga",
- playerSettingModule.RACE_SHAMAN_M : "icon/face/shaman_m.tga",
- playerSettingModule.RACE_SHAMAN_W : "icon/face/shaman_w.tga",
- }
- if app.ENABLE_WOLFMAN_CHARACTER:
- FACE_IMAGE_DICT.update({playerSettingModule.RACE_WOLFMAN_M : "icon/face/wolfman_m.tga",})
- def __init__(self):
- ui.ScriptWindow.__init__(self)
- self.TitleName = 0
- self.tooltipItem = 0
- self.xStart = 0
- self.yStart = 0
- def __del__(self):
- ui.ScriptWindow.__del__(self)
- class Item(ui.ListBoxEx.Item):
- def __init__(self,parent, text, value=0):
- ui.ListBoxEx.Item.__init__(self)
- self.textBox=ui.TextLine()
- self.textBox.SetParent(self)
- self.textBox.SetText(text)
- self.textBox.Show()
- self.value = value
- def GetValue(self):
- return self.value
- def __del__(self):
- ui.ListBoxEx.Item.__del__(self)
- def LoadDialog(self):
- PythonScriptLoader = ui.PythonScriptLoader()
- if app.ENABLE_NEW_EXCHANGE_WINDOW:
- PythonScriptLoader.LoadScriptFile(self, "UIScript/exchangedialog_new.py")
- else:
- PythonScriptLoader.LoadScriptFile(self, "UIScript/exchangedialog.py")
- self.OwnerSlot = self.GetChild("Owner_Slot")
- self.OwnerSlot.SetSelectEmptySlotEvent(ui.__mem_func__(self.SelectOwnerEmptySlot))
- self.OwnerSlot.SetSelectItemSlotEvent(ui.__mem_func__(self.SelectOwnerItemSlot))
- self.OwnerSlot.SetOverInItemEvent(ui.__mem_func__(self.OverInOwnerItem))
- self.OwnerSlot.SetOverOutItemEvent(ui.__mem_func__(self.OverOutItem))
- self.OwnerMoney = self.GetChild("Owner_Money_Value")
- if not app.ENABLE_NEW_EXCHANGE_WINDOW:
- self.OwnerAcceptLight = self.GetChild("Owner_Accept_Light")
- self.OwnerAcceptLight.Disable()
- self.OwnerMoneyButton = self.GetChild("Owner_Money")
- self.OwnerMoneyButton.SetEvent(ui.__mem_func__(self.OpenPickMoneyDialog))
- self.TargetSlot = self.GetChild("Target_Slot")
- self.TargetSlot.SetOverInItemEvent(ui.__mem_func__(self.OverInTargetItem))
- self.TargetSlot.SetOverOutItemEvent(ui.__mem_func__(self.OverOutItem))
- self.TargetMoney = self.GetChild("Target_Money_Value")
- if not app.ENABLE_NEW_EXCHANGE_WINDOW:
- self.TargetAcceptLight = self.GetChild("Target_Accept_Light")
- self.TargetAcceptLight.Disable()
- dlgPickMoney = uiPickMoney.PickMoneyDialog()
- dlgPickMoney.LoadDialog()
- dlgPickMoney.SetAcceptEvent(ui.__mem_func__(self.OnPickMoney))
- dlgPickMoney.SetTitleName(localeInfo.EXCHANGE_MONEY)
- if not app.ENABLE_NEW_EXCHANGE_WINDOW:
- dlgPickMoney.SetMax(6)
- else:
- dlgPickMoney.SetMax(20)
- dlgPickMoney.Hide()
- self.dlgPickMoney = dlgPickMoney
- self.AcceptButton = self.GetChild("Owner_Accept_Button")
- self.AcceptButton.SetToggleDownEvent(ui.__mem_func__(self.AcceptExchange))
- if app.ENABLE_NEW_EXCHANGE_WINDOW:
- self.TargetAcceptButton = self.GetChild("Target_Accept_Button")
- self.TitleName = self.GetChild("TitleName")
- self.GetChild("TitleBar").SetCloseEvent(net.SendExchangeExitPacket)
- if app.ENABLE_NEW_EXCHANGE_WINDOW:
- self.FaceOwnerImage = self.GetChild("FaceOwner_Image")
- self.FaceTargetImage = self.GetChild("FaceTarget_Image")
- self.TargetName = self.GetChild("target_NameText")
- self.TargetLevel = self.GetChild("target_LvText")
- self.ExchangeLogs = self.GetChild("ExchangeLogs")
- self.LogsScrollBar = ui.ThinScrollBar()
- self.LogsScrollBar.SetParent(self.ExchangeLogs)
- self.LogsScrollBar.SetPosition(442 - 75, 17)
- self.LogsScrollBar.SetScrollBarSize(50)
- self.LogsScrollBar.Show()
- self.LogsDropList = ui.ListBoxEx()
- self.LogsDropList.SetParent(self.ExchangeLogs)
- self.LogsDropList.itemHeight = 12
- self.LogsDropList.itemStep = 13
- self.LogsDropList.SetPosition(35, 27)
- self.LogsDropList.SetSize(0, 45)
- self.LogsDropList.SetScrollBar(self.LogsScrollBar)
- self.LogsDropList.SetViewItemCount(2)
- self.LogsDropList.Show()
- self.LogsScrollBar.Show()
- self.listOwnerSlot = []
- self.listTargetSlot = []
- def Destroy(self):
- print "---------------------------------------------------------------------------- DESTROY EXCHANGE"
- self.ClearDictionary()
- self.dlgPickMoney.Destroy()
- self.dlgPickMoney = 0
- self.OwnerSlot = 0
- self.OwnerMoney = 0
- if not app.ENABLE_NEW_EXCHANGE_WINDOW:
- self.OwnerAcceptLight = 0
- self.OwnerMoneyButton = 0
- self.TargetSlot = 0
- self.TargetMoney = 0
- if not app.ENABLE_NEW_EXCHANGE_WINDOW:
- self.TargetAcceptLight = 0
- self.TitleName = 0
- self.AcceptButton = 0
- if app.ENABLE_NEW_EXCHANGE_WINDOW:
- self.TargetAcceptButton = 0
- self.FaceOwnerImage = None
- self.FaceTargetImage = None
- self.TargetName = None
- self.TargetLevel = None
- self.ExchangesLogsWindow = None
- self.LogsDropList.RemoveAllItems()
- self.LogsScrollBar = None
- self.LogsDropList = None
- self.tooltipItem = 0
- def OpenDialog(self):
- if app.ENABLE_LEVEL_IN_TRADE:
- self.TitleName.SetText(localeInfo.EXCHANGE_TITLE_LEVEL % (exchange.GetNameFromTarget(), exchange.GetLevelFromTarget()))
- else:
- self.TitleName.SetText(localeInfo.EXCHANGE_TITLE % (exchange.GetNameFromTarget()))
- self.AcceptButton.Enable()
- self.AcceptButton.SetUp()
- if app.ENABLE_NEW_EXCHANGE_WINDOW:
- self.TargetAcceptButton.Disable()
- self.TargetAcceptButton.SetUp()
- self.FaceOwnerImage.LoadImage(self.FACE_IMAGE_DICT[exchange.GetRaceFromSelf()])
- self.FaceTargetImage.LoadImage(self.FACE_IMAGE_DICT[exchange.GetRaceFromTarget()])
- self.TargetName.SetText(exchange.GetNameFromTarget())
- self.TargetLevel.SetText(localeInfo.NEW_EXCHANGE_LEVEL % (exchange.GetLevelFromTarget()))
- self.LogsDropList.RemoveAllItems()
- self.LogsDropList.AppendItem(self.Item(self, localeInfo.NEW_EXCHANGE_YOU_READY % (str(time.strftime("[%H:%M:%S]"))), 0))
- self.Show()
- (self.xStart, self.yStart, z) = player.GetMainCharacterPosition()
- def CloseDialog(self):
- wndMgr.OnceIgnoreMouseLeftButtonUpEvent()
- if 0 != self.tooltipItem:
- self.tooltipItem.HideToolTip()
- self.dlgPickMoney.Close()
- self.Hide()
- def SetItemToolTip(self, tooltipItem):
- self.tooltipItem = tooltipItem
- def OpenPickMoneyDialog(self):
- if exchange.GetElkFromSelf() > 0:
- chat.AppendChat(chat.CHAT_TYPE_INFO, localeInfo.EXCHANGE_CANT_EDIT_MONEY)
- return
- self.dlgPickMoney.Open(player.GetElk())
- def OnPickMoney(self, money):
- net.SendExchangeElkAddPacket(str(money))
- def AcceptExchange(self):
- if app.ENABLE_NEW_EXCHANGE_WINDOW:
- atLeastOneItem = 0
- atLeastOneYang = 0
- for i in xrange(exchange.EXCHANGE_ITEM_MAX_NUM):
- itemCount = exchange.GetItemCountFromTarget(i)
- if itemCount >= 1:
- atLeastOneYang = 1
- break
- if exchange.GetElkFromTarget() >= 1:
- atLeastOneYang = 1
- if atLeastOneItem or atLeastOneYang:
- net.SendExchangeAcceptPacket()
- self.AcceptButton.Disable()
- else:
- atLeastOneItem = 0
- atLeastOneYang = 0
- for i in xrange(exchange.EXCHANGE_ITEM_MAX_NUM):
- itemCount = exchange.GetItemCountFromSelf(i)
- if itemCount >= 1:
- atLeastOneYang = 1
- break
- if exchange.GetElkFromSelf() >= 1:
- atLeastOneYang = 1
- if atLeastOneItem or atLeastOneYang:
- self.questionDialog = uiCommon.QuestionDialog2()
- self.questionDialog.SetText1(localeInfo.NEW_EXCHANGE_ALERT1)
- self.questionDialog.SetText2(localeInfo.NEW_EXCHANGE_ALERT2)
- self.questionDialog.SetAcceptEvent(ui.__mem_func__(self.AcceptQuestion))
- self.questionDialog.SetCancelEvent(ui.__mem_func__(self.OnCloseQuestionDialog))
- self.questionDialog.Open()
- else:
- net.SendExchangeAcceptPacket()
- self.AcceptButton.Disable()
- else:
- net.SendExchangeAcceptPacket()
- self.AcceptButton.Disable()
- if app.ENABLE_NEW_EXCHANGE_WINDOW:
- def AcceptQuestion(self):
- net.SendExchangeAcceptPacket()
- self.AcceptButton.Disable()
- if self.questionDialog:
- self.questionDialog.Close()
- self.questionDialog = None
- def OnCloseQuestionDialog(self):
- if self.questionDialog:
- self.questionDialog.Close()
- self.questionDialog = None
- self.AcceptButton.Enable()
- self.AcceptButton.SetUp()
- def SelectOwnerEmptySlot(self, SlotIndex):
- if False == mouseModule.mouseController.isAttached():
- return
- if mouseModule.mouseController.IsAttachedMoney():
- net.SendExchangeElkAddPacket(str(mouseModule.mouseController.GetAttachedMoneyAmount()))
- else:
- attachedSlotType = mouseModule.mouseController.GetAttachedType()
- if (player.SLOT_TYPE_INVENTORY == attachedSlotType or player.SLOT_TYPE_DRAGON_SOUL_INVENTORY == attachedSlotType):
- attachedInvenType = player.SlotTypeToInvenType(attachedSlotType)
- SrcSlotNumber = mouseModule.mouseController.GetAttachedSlotNumber()
- DstSlotNumber = SlotIndex
- itemID = player.GetItemIndex(attachedInvenType, SrcSlotNumber)
- item.SelectItem(itemID)
- if item.IsAntiFlag(item.ANTIFLAG_GIVE):
- chat.AppendChat(chat.CHAT_TYPE_INFO, localeInfo.EXCHANGE_CANNOT_GIVE)
- mouseModule.mouseController.DeattachObject()
- return
- net.SendExchangeItemAddPacket(attachedInvenType, SrcSlotNumber, DstSlotNumber)
- mouseModule.mouseController.DeattachObject()
- def SelectOwnerItemSlot(self, SlotIndex):
- if player.ITEM_MONEY == mouseModule.mouseController.GetAttachedItemIndex():
- money = mouseModule.mouseController.GetAttachedItemCount()
- net.SendExchangeElkAddPacket(str(money))
- def RefreshOwnerSlot(self):
- for i in xrange(exchange.EXCHANGE_ITEM_MAX_NUM):
- itemIndex = exchange.GetItemVnumFromSelf(i)
- itemCount = exchange.GetItemCountFromSelf(i)
- if 1 == itemCount:
- itemCount = 0
- self.OwnerSlot.SetItemSlot(i, itemIndex, itemCount)
- self.OwnerSlot.RefreshSlot()
- def RefreshTargetSlot(self):
- for i in xrange(exchange.EXCHANGE_ITEM_MAX_NUM):
- itemIndex = exchange.GetItemVnumFromTarget(i)
- itemCount = exchange.GetItemCountFromTarget(i)
- if 1 == itemCount:
- itemCount = 0
- self.TargetSlot.SetItemSlot(i, itemIndex, itemCount)
- self.TargetSlot.RefreshSlot()
- def Refresh(self):
- self.RefreshOwnerSlot()
- self.RefreshTargetSlot()
- self.OwnerMoney.SetText(localeInfo.NumberToMoneyString(exchange.GetElkFromSelf()))
- self.TargetMoney.SetText(localeInfo.NumberToMoneyString(exchange.GetElkFromTarget()))
- if exchange.GetAcceptFromSelf() == True:
- if not app.ENABLE_NEW_EXCHANGE_WINDOW:
- self.OwnerAcceptLight.Down()
- else:
- self.OwnerSlot.SetSlotBaseImage("d:/ymir work/ui/public/slot_base.sub", 0.3500, 0.8500, 0.3500, 1.0)
- self.LogsDropList.AppendItem(self.Item(self, localeInfo.NEW_EXCHANGE_YOU_ACCEPT % (str((time.strftime("[%H:%M:%S]")))), 0))
- else:
- if self.AcceptButton.IsDown() == True:
- self.LogsDropList.AppendItem(self.Item(self, localeInfo.NEW_EXCHANGE_YOU_ABORT % (str((time.strftime("[%H:%M:%S]")))), 0))
- self.AcceptButton.Enable()
- self.AcceptButton.SetUp()
- if not app.ENABLE_NEW_EXCHANGE_WINDOW:
- self.OwnerAcceptLight.SetUp()
- else:
- self.OwnerSlot.SetSlotBaseImage("d:/ymir work/ui/public/slot_base.sub", 1.0, 1.0, 1.0, 1.0)
- if exchange.GetAcceptFromTarget() == True:
- if not app.ENABLE_NEW_EXCHANGE_WINDOW:
- self.TargetAcceptLight.Down()
- else:
- self.TargetAcceptButton.Down()
- self.TargetSlot.SetSlotBaseImage("d:/ymir work/ui/public/slot_base.sub", 0.3500, 0.8500, 0.3500, 1.0)
- self.LogsDropList.AppendItem(self.Item(self, localeInfo.NEW_EXCHANGE_ACCEPT % (str((time.strftime("[%H:%M:%S]"))), exchange.GetNameFromTarget()), 0))
- else:
- if not app.ENABLE_NEW_EXCHANGE_WINDOW:
- self.TargetAcceptLight.SetUp()
- else:
- if self.TargetAcceptButton.IsDown() == True:
- self.LogsDropList.AppendItem(self.Item(self, localeInfo.NEW_EXCHANGE_ABORT % (str((time.strftime("[%H:%M:%S]"))), exchange.GetNameFromTarget()), 0))
- self.TargetAcceptButton.SetUp()
- self.TargetSlot.SetSlotBaseImage("d:/ymir work/ui/public/slot_base.sub", 1.0, 1.0, 1.0, 1.0)
- def OverInOwnerItem(self, slotIndex):
- if 0 != self.tooltipItem:
- self.tooltipItem.SetExchangeOwnerItem(slotIndex)
- def OverInTargetItem(self, slotIndex):
- if 0 != self.tooltipItem:
- self.tooltipItem.SetExchangeTargetItem(slotIndex)
- def OverOutItem(self):
- if 0 != self.tooltipItem:
- self.tooltipItem.HideToolTip()
- def OnTop(self):
- self.tooltipItem.SetTop()
- def OnUpdate(self):
- USE_EXCHANGE_LIMIT_RANGE = 1000
- (x, y, z) = player.GetMainCharacterPosition()
- if abs(x - self.xStart) > USE_EXCHANGE_LIMIT_RANGE or abs(y - self.yStart) > USE_EXCHANGE_LIMIT_RANGE:
- (self.xStart, self.yStart, z) = player.GetMainCharacterPosition()
- net.SendExchangeExitPacket()
-
Habe das Handelsfenster eingefügt, dass Bitte melden Sie sich an, um diesen Link zu sehen. unter "Dateianfrage" gesucht hat.
Ich habe nun das Problem, dass sobald ein Handel mit Yang stattfindet, folgender Error im Chat steht:Bitte melden Sie sich an, um dieses Bild zu sehen.
Das Inventar der anderen Person ist nahe zu leer, daran kann es nicht liegen..
In der Client syserr steht leider auch nichts.Wäre über jede Hilfe dankbar!
-
Liegt vermutlich daran, dass du in falschen Bereich bist
Denke das gehört eher unter Q&AKorrigiert mich fals ich falsch liege, bin auch noch relativ neu in dem forum
-
Im Rubinum source sollte alles drinnen sein..
-
Hab dich skype geadded
-
ich meine die Datei admin_panel.sh
-
Du kannst serverfiles generieren mit dem admin panel (ohne quests und so)
-
Für PC oder PS4 ?
Zocke auf ps4
Kann helfen falls irgendwo benötigt.. hab alles fertig soweit..
3x 305ll -
Falls noch benötigt, im Anhang das System aus dem video ..
-
Das war kein Scherz was ich oben geschrieben habe zwecks stoned etc xD hab 30 min lang geguckt. Hätt den Thread wohl kaum gefunden wenn ich nicht recherchiert hätte... hab auch keine Ahnung davon geb ich ja zu xD
Bin defintiv der letzte Mensch der sich mit etwas nicht beschäftigen will!!
-
Wie inkompetent kann man nur sein. Du verlinkst sogar das Thema, wo die Lösung drinnen steht und du kapierst es nicht.
Typischer Beitrag in einer Metin2 Community.
Könntest es ja auch erklären.. Glaube dazu istn Forum da xD
Wenn du so schlau bist, beantworte es doch oder nur große klappe? Bitte melden Sie sich an, um dieses Bild zu sehen. -
Bei mir lässt sich der game Source einfach nicht compilen..
Das traurige ist, dass es bereits genau so einen Thread gibt & ich grade trotzdem den fehler nicht sehe xD
Möglicherweise zu stoned oder zu Müde...Genau der gleiche Thread xD :
Bitte melden Sie sich an, um diesen Link zu sehen.Wäre über Hilfe dankbar...
Compile error:
Zeile 535:
Code- #if defined (__FreeBSD__) && defined(__FILEMONITOR__)
- //PFN_FileChangeListener pNotifyFunc = boost::bind( &CXTrapManager::NotifyMapFileChanged, CXTrapManager::instance(), _1 );
- PFN_FileChangeListener pNotifyFunc = &(CXTrapManager::NotifyMapFileChanged);
- const std::string strMap1Name = "map1.CS3";
- const std::string strMap2Name = "map2.CS3";
- FileMonitorFreeBSD::Instance().AddWatch( strMap1Name, pNotifyFunc );
- FileMonitorFreeBSD::Instance().AddWatch( strMap2Name, pNotifyFunc );
- #endif
- }
- #ifdef __VERSION_162__
- TempleOchao_manager.Initialize();
- #endif
- #ifdef __MELEY_LAIR_DUNGEON__
- MeleyLair_manager.Initialize();
- #endif
- }
- // Client PackageCrypt
- //TODO : make it config
- const std::string strPackageCryptInfoDir = "package/";
- if( !desc_manager.LoadClientPackageCryptInfo( strPackageCryptInfoDir.c_str() ) )
- {
- sys_err("Failed to Load ClientPackageCryptInfo File(%s)", strPackageCryptInfoDir.c_str());
- }
- #if defined (__FreeBSD__) && defined(__FILEMONITOR__)
- PFN_FileChangeListener pPackageNotifyFunc = &(DESC_MANAGER::NotifyClientPackageFileChanged);
- //FileMonitorFreeBSD::Instance().AddWatch( strPackageCryptInfoName, pPackageNotifyFunc );
- #endif
Zeile 628:
Code- if (!g_bAuthServer)
- {
- if (isHackShieldEnable)
- {
- sys_log(0, "<shutdown> Releasing HackShield manager...");
- HSManager.Release();
- }
- #ifdef __VERSION_162__
- sys_log(0, "<shutdown> Destroying TempleOchao_manager.");
- TempleOchao_manager.Destroy();
- #endif
- }
- #ifdef __MELEY_LAIR_DUNGEON__
- sys_log(0, "<shutdown> Destroying MeleyLair_manager.");
- MeleyLair_manager.Destroy();
- #endif
- sys_log(0, "<shutdown> Flushing TrafficProfiler...");
- trafficProfiler.Flush();
- destroy();
- #ifdef DEBUG_ALLOC
- DebugAllocator::StaticTearDown();
- #endif
- return 1;
- }
-
Bitte melden Sie sich an, um dieses Medienelement zu sehen.
-
Bitte melden Sie sich an, um dieses Medienelement zu sehen.
Bitte melden Sie sich an, um diesen Link zu sehen. - weil wegen Zatox (Y)
Bitte melden Sie sich an, um diesen Link zu sehen. - weil "voll die druffi scheiße" -
Ich selber arbeite lieber mit TXT. Allerdings ist an der Mysql-Version auch nichts verkehrt, wenn man eben die richtigen Tools dafür hat.
Ein wenig offtopic aber:
Bezüglich der Flags frage ich mich wieso keiner mal auf die Idee kommt die Felder dafür auf den Typen "set" zu ändern und alle Flags in die Auflistung setzt.
Anschließend im Source alle Selects auf das Feld wie folgendes beispiel: SELECT antiflag+0 FROM item_proto. Das berechnet ebenfalls die Flags und man kann sie in Navicat schön anhaken.Aber echt, mach mal nen guide dafür