mavzermete 1
mavzermete
Fethi Polat 1
Fethi Polat
noisiv 1
noisiv
Manwe Work 1
Manwe Work
Scarlet 1
Scarlet
Hikaye Ekle

[Python Script] Otomatik Simya Arındırma

  • Konuyu başlatan Konuyu başlatan xMichael
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 5
  • Görüntüleme Görüntüleme 3K
5.00 yıldız(lar) 1 Değerlendirme Değerlendirenler

HERAKLES Otomatik Avlı kalıcı sunucu. 19 Haziran'da açılıyor. Atius & Wizard güvencesiyle hemen kayıt ol, ön kayıt ödülleri aktif. HEMEN TIKLA!

Kod:
import player , mt2pyv , game , chr , event , net , chat , constInfo , app

try:
    if constInfo.islem >= 0:
        constInfo.islem = 1
except:
        constInfo.islem = 0


try:
    if constInfo.BUGSAY >= 0:
        constInfo.BUGSAY = 1
except:
    constInfo.BUGSAY = 0

def InstallQuestWindowHook():
  
    try:
        if mt2pyv.QuestOld == "":
      
            mt2pyv.QuestOld = game.GameWindow.OpenQuestWindow

    except:
  
        mt2pyv.QuestOld = ""
  
    if mt2pyv.QuestOld == "":
  
        mt2pyv.QuestOld = game.GameWindow.OpenQuestWindow
      
    game.GameWindow.OpenQuestWindow = HookedQuestWindow
  
def UnHookQuestWindow():
    game.GameWindow.OpenQuestWindow = mt2pyv.QuestOld

def HookedQuestWindow(self, skin, idx):
    pass
def Scan_Npc():
    npc = -1
    for i in xrange(50000):
        chr.SelectInstance(i)
        if chr.GetRace(i) == 20001:
            npc = i
            break
    return npc

def Baslat():
    SIMYA = []
    SIMYA2 = []


    ONIKS = 1
    for slot in range(960,992):
        ID = player.GetItemIndex(5,slot)
        if ID == 0: 
            ONIKS = 0
            break

    GRENA = 1
    for slot in range(768,800):
        ID = player.GetItemIndex(5,slot)
        if ID == 0: 
            GRENA = 0
            break

    SAFIR = 1
    for slot in range(576,608):
        ID = player.GetItemIndex(5,slot)
        if ID == 0: 
            SAFIR = 0
            break

    YESIM = 1
    for slot in range(384,416):
        ID = player.GetItemIndex(5,slot)
        if ID == 0: 
            YESIM = 0
            break

    YAKUT = 1
    for slot in range(192,224):
        ID = player.GetItemIndex(5,slot)
        if ID == 0: 
            YAKUT = 0
            break

    ELMAS = 1
    for slot in range(32):
        ID = player.GetItemIndex(5,slot)
        if ID == 0: 
            ELMAS = 0
            break

    if ONIKS == 1:
        SIMYA.append(960)
        SIMYA.append(961)
        SIMYA2.append(160000)
        SIMYA2.append(160000)

    elif GRENA == 1:
        SIMYA.append(768)
        SIMYA.append(769)
        SIMYA2.append(150000)
        SIMYA2.append(150000)

    elif SAFIR == 1:
        SIMYA.append(576)
        SIMYA.append(577)
        SIMYA2.append(140000)
        SIMYA2.append(140000)

    elif YESIM == 1:
        SIMYA.append(384)
        SIMYA.append(385)
        SIMYA2.append(130000)
        SIMYA2.append(130000)

    elif YAKUT == 1:
        SIMYA.append(192)
        SIMYA.append(193)
        SIMYA2.append(120000)
        SIMYA2.append(120000)

    elif ELMAS == 1:
        SIMYA.append(0)
        SIMYA.append(1)
        SIMYA2.append(110000)
        SIMYA2.append(110000)

    for slot in range(32):
        ID = player.GetItemIndex(5,slot)

        if ID != 0: 

            SIMYA.append(slot)
            SIMYA2.append(ID)

    for slot in range(192,224):
        ID = player.GetItemIndex(5,slot)

        if ID != 0: 

            SIMYA.append(slot)
            SIMYA2.append(ID)

    for slot in range(384,416):
        ID = player.GetItemIndex(5,slot)

        if ID != 0: 

            SIMYA.append(slot)
            SIMYA2.append(ID)

    for slot in range(576,608):
        ID = player.GetItemIndex(5,slot)

        if ID != 0: 

            SIMYA.append(slot)
            SIMYA2.append(ID)

    for slot in range(768,800):
        ID = player.GetItemIndex(5,slot)

        if ID != 0: 

            SIMYA.append(slot)
            SIMYA2.append(ID)

    for slot in range(960,992):
        ID = player.GetItemIndex(5,slot)

        if ID != 0: 

            SIMYA.append(slot)
            SIMYA2.append(ID)



######################################
    for slot in range(96):
        ID = player.GetItemIndex(5,slot)

        if ID != 0: 

            SIMYA.append(slot)
            SIMYA2.append(ID)

    for slot in range(192,288):
        ID = player.GetItemIndex(5,slot)

        if ID != 0: 

            SIMYA.append(slot)
            SIMYA2.append(ID)

    for slot in range(384,480):
        ID = player.GetItemIndex(5,slot)

        if ID != 0: 

            SIMYA.append(slot)
            SIMYA2.append(ID)

    for slot in range(576,672):
        ID = player.GetItemIndex(5,slot)

        if ID != 0: 

            SIMYA.append(slot)
            SIMYA2.append(ID)

    for slot in range(768,864):
        ID = player.GetItemIndex(5,slot)

        if ID != 0: 

            SIMYA.append(slot)
            SIMYA2.append(ID)

    for slot in range(960,1056):
        ID = player.GetItemIndex(5,slot)

        if ID != 0: 

            SIMYA.append(slot)
            SIMYA2.append(ID)

    dur = 0
    for birlestir in range(len(SIMYA)):
        if dur == 1:
            break
        for birlestir2 in range(len(SIMYA)):

            if birlestir > birlestir2:
                continue

            elif int(SIMYA2[birlestir]) != int(SIMYA2[birlestir2]):
                continue

            elif int(SIMYA[birlestir]) == int(SIMYA[birlestir2]):
                continue

            else:
                dur = 1
                return SIMYA[birlestir] , SIMYA[birlestir2]
                break
    return 0 , 0

BAR = [80003,80004,80005,80006,80007]
MARKET = 3
BUTTON = 1

BARVARMI = 0


PARAYOKSAKAPAT = 0

if player.GetItemCountByVnum(80003) > 0 or player.GetItemCountByVnum(80004) > 0 or player.GetItemCountByVnum(80005) > 0 or player.GetItemCountByVnum(80006) > 0 or player.GetItemCountByVnum(80007) > 0:
    BARVARMI = 1


if constInfo.BUGSAY >= 10:
    chat.AppendChat(3,"Bug Tespit Edildi!")
    app.Exit()

if player.GetItemCountByVnum(50255) == 0 and BARVARMI == 0:
    VID = Scan_Npc()
    if VID != -1:
        menzil = int(player.GetCharacterDistance(VID))
        if menzil <= 570:
            x , y  = Baslat()
            if y >= 1:
                InstallQuestWindowHook()
                net.SendOnClickPacket(VID)
                if player.GetStatus(player.LEVEL) >= 30:
                    event.SelectAnswer(1, BUTTON)
                else:
                    if BUTTON > 0:
                        event.SelectAnswer(1, (BUTTON - 1))
                    else:
                        event.SelectAnswer(1, BUTTON)
                event.SelectAnswer(1, 1)
                try:
                    if constInfo.acikmi(constInfo.parametre2) == 1:
                        if player.GetMoney() > 50000:
                            player.SendDragonSoulRefine(2, {0:(5,int(x),1) , 1: (5,int(y),1) } )
                        else:
                            if PARAYOKSAKAPAT == 0:
                                chat.AppendChat(3,"Para yok")
                            else:
                                chat.AppendChat(3,"Para yok & Kapanacak")
                                constInfo.kapat = 1
                except:
                    app.Exit()
            else:
                chat.AppendChat(3,"Bitti")
                constInfo.kapat = 1
else:
    VID = Scan_Npc()
    if VID != -1:
        menzil = int(player.GetCharacterDistance(VID))
        if menzil <= 570:
            dur = 0
            for dondur in range(90):
                kod = player.GetItemIndex(dondur)
                if kod in BAR :
                    dur = 1
                    InstallQuestWindowHook()
                    net.SendOnClickPacket(VID)
                    if player.GetStatus(player.LEVEL) >= 30:
                        event.SelectAnswer(1, MARKET)
                    else:
                        if MARKET > 0:
                            event.SelectAnswer(1, (MARKET - 1))
                        else:
                            event.SelectAnswer(1, MARKET)
                    event.SelectAnswer(1, 1)
                    net.SendShopSellPacketNew(dondur, 0, 1)

            if dur == 0:
                net.SendShopEndPacket()
                for dondur in range(90):
                    if player.GetItemIndex(dondur) == 50255:
                            sayisi = player.GetItemCount(dondur)
                            for toplam in range(sayisi):
                                net.SendItemUsePacket(dondur)
            constInfo.BUGSAY = constInfo.BUGSAY + 1
 
Moderatör tarafında düzenlendi:
Yere düşenleri toplayacak, önce envanterde dolu olanları yapar bu sayede kayıp yaşanmaz, bar satma özelliği vardır.
Server'a göre market buton sırası değişebilir kendinize göre ayarlayın.
 
Can you give me your discord? This python script is not working anymore i can pay 20/30€ if you can help me putting on work again.
 

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

Geri
Üst