Scarlet 1
Scarlet
Best Studio 1
Best Studio
mannaxxx 1
mannaxxx
Agora Metin2 1
Agora Metin2
[DEV]AB 1
[DEV]AB
Sevdamsın 1
Sevdamsın
TuZaKK 1
TuZaKK
kaptanmikro1 1
kaptanmikro1
farkmt2official 2
farkmt2official
Hikaye Ekle

HELP ME!! yeni ticaret sistemi hakk.

  • Konuyu başlatan Konuyu başlatan Nephthys
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 20
  • Görüntüleme Görüntüleme 3K
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

Türkiye'de ilk Mobil & PC Aynı Anda Metin2 Oyna. Triarchonline kalıcı ve uzun ömürlü yapısı ile 24 Temmuz'da açılıyor. | 1-99 Mobil Metin2 Triarch HEMEN TIKLA!

Arkadaşlar merhaba,

40k serverim var yeni ticaret sistemi altta resmi var,
6147incis6948473.png

Bu sistemde slotlara item koyamamaktayım. Çözümünü bilen varmı?

NOT: koyduğun itemin ticareti engelli olabilirmi falan demeyin hiçbirşey koyamıyorum ticarete sadece para aktarılabiliyor.

yardımlarınızı bekliyorum.
 
http://www.turkmmo.com/c-c-python/3258695-milas-tipi-ticaret-sistemi.html

buyur kardeşim eger sıkıntın olursa faceden Alo Savaş De Yetişirm :D

dostum sorun ;

uiexchange.py de burası 34k f,lesler için uygun bir kod hatası var 40k ya geçerken sadece locale yazan yerleri localeInfo yapıp geçmiyor bir sıkıntı var ama çözemedim.

kod şöyle;

Kod:
#### File : uiexchange.py
## Developer : Fatihbab34â„¢
## Team : KFDevelopers
##
import player
import exchange
import net
import localeInfo
import event
import chat
import item
import constInfo
import playerSettingModule


import ui
import mouseModule
import uiPickMoney
import wndMgr


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",
}


class ExchangeDialog(ui.ScriptWindow):


    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)


    def LoadDialog(self):
        PythonScriptLoader = ui.PythonScriptLoader()
        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")
        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")
        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)
        dlgPickMoney.SetMax(7)
        dlgPickMoney.Hide()
        self.dlgPickMoney = dlgPickMoney


        self.AcceptButton = self.GetChild("Owner_Accept_Button")
        self.AcceptButton.SetToggleDownEvent(ui.__mem_func__(self.AcceptExchange))


        self.TitleName = self.GetChild("TitleName")
        self.GetChild("TitleBar").SetCloseEvent(net.SendExchangeExitPacket)


    def Destroy(self):
        print "---------------------------------------------------------------------------- DESTROY EXCHANGE"
        self.ClearDictionary()
        self.dlgPickMoney.Destroy()
        self.dlgPickMoney = 0
        self.OwnerSlot = 0
        self.OwnerMoney = 0
        self.OwnerAcceptLight = 0
        self.OwnerMoneyButton = 0
        self.TargetSlot = 0
        self.TargetMoney = 0
        self.TargetAcceptLight = 0
        self.TitleName = 0
        self.AcceptButton = 0
        self.tooltipItem = 0


    def OpenDialog(self):
        self.TitleName.SetText(localeInfo.EXCHANGE_TITLE_FATIHBAB34)
        self.AcceptButton.Enable()
        self.AcceptButton.SetUp()
        self.Show()


        net.SendWhisperPacket(exchange.GetNameFromTarget(), "xxbanasinifiniverxx")


        self.GetChild("level").SetFontColor(255, 43, 255)
        self.GetChild("level").SetFontName(localeInfo.UI_DEF_FONT)
        self.GetChild("name").SetFontName(localeInfo.UI_DEF_FONT)
        self.GetChild("name").SetText(str(exchange.GetNameFromTarget()))
        self.GetChild("lonca").SetFontName(localeInfo.UI_DEF_FONT)
        self.GetChild("benim_name").SetFontColor(255*255, 0*255, 8*255)


        (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 Owner_Kapat(self):
        self.GetChild("Owner_Accept_Light").Hide()


    def Owner_Ac(self):
        self.GetChild("Owner_Accept_Light").Show()


    def Owner_Kapat2(self):
        self.GetChild("Target_Accept_Light").Hide()


    def Owner_Ac2(self):
        self.GetChild("Target_Accept_Light").Show()


    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(money)


    def AcceptExchange(self):
        net.SendExchangeAcceptPacket()
        self.AcceptButton.Disable()


    def SelectOwnerEmptySlot(self, SlotIndex):


        if FALSE == mouseModule.mouseController.isAttached():
            return


        if mouseModule.mouseController.IsAttachedMoney():
            net.SendExchangeElkAddPacket(mouseModule.mouseController.GetAttachedMoneyAmount())
        else:
            if player.SLOT_TYPE_INVENTORY == mouseModule.mouseController.GetAttachedType():


                SrcSlotNumber = mouseModule.mouseController.GetAttachedSlotNumber()
                DstSlotNumber = SlotIndex


                itemID = player.GetItemIndex(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(SrcSlotNumber, DstSlotNumber)


        mouseModule.mouseController.DeattachObject()


    def SelectOwnerItemSlot(self, SlotIndex):


        if player.ITEM_MONEY == mouseModule.mouseController.GetAttachedItemIndex():


            money = mouseModule.mouseController.GetAttachedItemCount()
            net.SendExchangeElkAddPacket(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(str(exchange.GetElkFromSelf())))
        self.TargetMoney.SetText(localeInfo.NumberToMoneyString(str(exchange.GetElkFromTarget())))


        if TRUE == exchange.GetAcceptFromSelf():
            self.OwnerAcceptLight.Down()
        else:
            self.AcceptButton.Enable()
            self.AcceptButton.SetUp()
            self.OwnerAcceptLight.SetUp()


        if TRUE == exchange.GetAcceptFromTarget():
            self.TargetAcceptLight.Down()
        else:
            self.TargetAcceptLight.SetUp()


    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


        self.OwnerMoney.SetText(localeInfo.NumberToMoneyString(str(exchange.GetElkFromSelf())))
        self.TargetMoney.SetText(localeInfo.NumberToMoneyString(str(exchange.GetElkFromTarget())))


        (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()


        self.GetChild("karakter").LoadImage(FACE_IMAGE_DICT[constInfo.ticsinif])
        self.GetChild("benim_karakter").LoadImage(FACE_IMAGE_DICT[net.GetMainActorRace()])
        self.GetChild("benim_name").SetText(str(player.GetName()))
        self.GetChild("lonca").SetText(str(constInfo.ticlonca))
        self.GetChild("level").SetText("Lv." + str(constInfo.ticlevel))

bunu 40k files için düzenlicek arkadaş yokmu?

King54TR
yardım edebilir misin?
 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst