Oyun yöneticileri için çok, çok kullanışlı bir özellik
Bir yükseltme penceresi açtığınızda, gerekli öğelere sağ tıklayarak doğrudan envanterinizde gelmerini sağlayabilirsiniz.
Bu sayede, bunları /item komutuyla kendiniz oluşturmanıza gerek kalmaz
sistem Alıntıdır...
Video
uirefine.py:
Ara:
ara:
SetOverOutItemEvent'ten sonra şunları ekliyoruz:
__MakeItemSlot'tan sonra ve OverInItem'dan önce şunları ekliyoruz:
Ara:
Ekle:
Ara:
Ekle:
Ara:
Fonksiyonun sonunda, self.children.append(textLine) satırından sonra şunu ekliyoruz:
Şimdi interfacemodule.py dosyasını açın ve şu fonksiyonu bulun:
UpdateBonusChanger() fonksiyonundan sonra şunları ekliyoruz:
Bir yükseltme penceresi açtığınızda, gerekli öğelere sağ tıklayarak doğrudan envanterinizde gelmerini sağlayabilirsiniz.
Bu sayede, bunları /item komutuyla kendiniz oluşturmanıza gerek kalmaz
sistem Alıntıdır...
Video
uirefine.py:
import chr
Ara:
__InitializeOpen:
Ekle:
if constInfo.ENABLE_REFINE_ITEM_DESCRIPTION:
self.materialTextLines = []
self.lastRefreshTime = 0
self.refreshCount = 0
ara:
__MakeItemSlot:
SetOverOutItemEvent'ten sonra şunları ekliyoruz:
slot.SetSelectItemSlotEvent(ui.__mem_func__(self.OnGMItemClick))
__MakeItemSlot'tan sonra ve OverInItem'dan önce şunları ekliyoruz:
def OnGMItemClick(self, slotIndex):
if not chr.IsGameMaster(player.GetMainCharacterIndex()):
return
if slotIndex >= len(TOOLTIP_DATA['materials']):
return
itemVnum = TOOLTIP_DATA['materials'][slotIndex]
if itemVnum == 0:
return
net.SendChatPacket("/item %d 1" % itemVnum)
if hasattr(self, 'materialTextLines'):
self.lastRefreshTime = app.GetTime() + 0.3
self.refreshCount = 5
Ara:
def OverOutItem
Ekle:
def RefreshMaterialTexts(self):
if not hasattr(self, 'materialTextLines'):
return
for material in self.materialTextLines:
vnum = material['vnum']
count = material['count']
textLine = material['textLine']
currentCount = player.GetItemCountByVnum(vnum)
if currentCount < count:
textLine.SetPackedFontColor(0xffFF0033)
else:
textLine.SetPackedFontColor(0xff40EF37)
item.SelectItem(vnum)
textLine.SetText("|cFFdddddd|H|h%s x%d|h|r (%d)" % (item.GetItemName(), count, currentCount))
Ara:
def RefreshMaterialTexts
Ekle:
def OnUpdate(self):
if constInfo.ENABLE_REFINE_ITEM_DESCRIPTION:
if hasattr(self, 'lastRefreshTime') and self.lastRefreshTime > 0:
currentTime = app.GetTime()
if currentTime >= self.lastRefreshTime:
self.RefreshMaterialTexts()
if hasattr(self, 'refreshCount'):
self.refreshCount -= 1
if self.refreshCount > 0:
self.lastRefreshTime = app.GetTime() + 0.2
else:
self.lastRefreshTime = 0
self.refreshCount = 0
else:
self.lastRefreshTime = 0
Ara:
AppendMaterial
Fonksiyonun sonunda, self.children.append(textLine) satırından sonra şunu ekliyoruz:
if constInfo.ENABLE_REFINE_ITEM_DESCRIPTION:
if not hasattr(self, 'materialTextLines'):
self.materialTextLines = []
self.materialTextLines.append({'vnum': vnum, 'count': count, 'textLine': textLine})
Şimdi interfacemodule.py dosyasını açın ve şu fonksiyonu bulun:
RefreshInventory
UpdateBonusChanger() fonksiyonundan sonra şunları ekliyoruz:
if constInfo.ENABLE_REFINE_ITEM_DESCRIPTION:
if self.dlgRefineNew and self.dlgRefineNew.IsShow():
if hasattr(self.dlgRefineNew, 'RefreshMaterialTexts'):
self.dlgRefineNew.RefreshMaterialTexts()


