R 1
Roksam
[DEV]AB 1
[DEV]AB
Sevdamsın 1
Sevdamsın
farkmt2official 1
farkmt2official
emirhanHCL 1
emirhanHCL
Scarlet 1
Scarlet
Best Studio 1
Best Studio
mannaxxx 1
mannaxxx
Agora Metin2 1
Agora Metin2
Hikaye Ekle

Quest ekleyemedim yardım eder misiniz ?

  • Konuyu başlatan Konuyu başlatan akinoguz1905x
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 6
  • Görüntüleme Görüntüleme 685
  • Etiketler Etiketler
    metin2quest

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 başlıkdada belirttiğim gibi ekleyemedim yardımcı olucak varsa konuyu buraya bırakıyorum. KONU:TIKLA
 
LUA DOSYASI:


Metin2 - alisveris_sistemi.lua İNDİR


Tabii ki doğal olarak bu sistem MySQL veritabanı üzerinden işleyecek. İlk olarak MySQL kodları sunucumuzda çalışmıyorsa aşağıdaki işlemleri yapalım:


"questing.lua" dosyasını açıyor ve en altına aşağıdaki fonksiyonu ekliyoruz:



MYSQL FONKSİYONU:
PHP:
mysql_query10 = function(query)

    if not pre then

        local rt = io.open('CONFIG','r'):read('*all')

        pre,_= string.gsub(rt,'.+PLAYER_SQL:%s(%S+)%s(%S+)%s(%S+)  %s(%S+).+','-h%1 -u%2 -p%3 -D%4')

    end

    math.randomseed(os.time())

    local fi,t,out = 'mysql_data_'..math.random(10^9)+math.random(2^4,2  ^10),{},{}

    --os.execute('mysql '..pre..' --e='..string.format('%q',query)..' > '..fi) -- für MySQL51

    os.execute('mysql '..pre..' -e'..string.format('%q',query)..' > '..fi) -- für MySQL55

    for av in io.open(fi,'r'):lines() do table.insert(t,split(av,'\t')) end; os.remove(fi);

    for i = 2, table.getn(t) do table.foreach(t[i],function(a,b)

        out[i-1]               = out[i-1] or {}

        out[i-1][a]            = tostring(b) or b or 'NULL'

        out[t[1][a]]           = out[t[1][a]] or {}

        out[t[1][a]][i-1]      = tostring(b) or b or 'NULL'

    end) end

    return out

end
Şimdi "quest_functions" dosyamızı açalım ve "mysql_query10" var mı yok mu kontrol edelim. Eğer yoksa en alta "mysql_query10" kodunu ekleyelim. Burası ile de işimiz bitti.

Daha sonra kullanacağımız veritabanı dosyasını indiriyoruz.


Metin2 - alisveris.sql İNDİR
MySQL dosyasını "player" veritabanına ekliyoruz. Herhangi bir işlem yapmanıza gerek yok. (REBOOT atmanıza gerek yok eklemeyi yaptıktan sonra)

Şimdi bir işlem daha yapmamız gerekiyor. "Player" tablosuna aşağıdaki gibi sağ tıklayıp "Design Table" diyoruz.

3DzD30.jpg



Daha sonra "alisveris_param" adında sütun ekliyoruz veritabanımıza.

ÖNEMLİ UYARI: Default değerini mutlaka 0 yapın! Çok önemli.



g5rvnN.jpg




VİP Sütunu eklemek:


"player" tablosuna sağ tıklıyor "Design Table" diyoruz. Daha sonra aşağıdaki gibi bir "vip" sütunu ekliyoruz:


WnPpA2.jpg




ÖNEMLİ UYARI: Default değerini mutlaka 0 yapın! Çok önemli.


ÖNEMLİ UYARI: Kişiyi VİP yapmak için 1 değerini girin. Eğer 1 dışında bir sayı yazarsanız VİP sistemi çalışmaz. 0 yaparsanız VİP özelliği gider, 1 yazarsanız aktif olur.



PARA MİKTARI ARASINA .(NOKTA) KOYMA:

Şimdi para tutarlarının arasına .(nokta) koyma fonksiyonuna geldik. Bu fonksiyonu da eklemeniz gerekiyor. Eğer bu fonksiyonu eklemezseniz sistem çalışmaz. Ona göre kodlandı. Şimdi o fonksiyonu eklemeyi göstereceğim:

"questlib.lua" dosyasını açıyoruz ve en alta aşağıdaki kodları ekleyip kapatıyoruz. Reboot atmanıza gerek yok. Başka işlem yapmanıza da gerek yok. "questlib.lua" nın en altına aşağıdaki vermiş olduğum kodu eklemeniz yeterli.


Fonksiyon kodu:
PHP:
function genel_veri(gelen_miktar)

    gelen2 = tostring(gelen_miktar)

    local gelen = gelen_miktar

    local sayac = 10

    local basamak = 1

    local ilkhal = basamak

    while true do

        if gelen / sayac >= 1 then

            basamak = basamak + 1

            sayac = sayac * 10

        else

            break

        end

    end

    t = {}

    sonucText = ""

    for i=1, string.len(gelen2) do

        t[i]= (string.sub(gelen2,i,i))

    end

    for k , v in pairs(t) do--1324

        if (basamak  == 9 or basamak == 6 or basamak == 3) and sonucText !=  "" then

            sonucText = sonucText.."."

            sonucText = sonucText..v

        else

            sonucText = sonucText..v

        end

        basamak = basamak - 1

    end

    return sonucText

end
Bu işlem de bittikten sonra "quest_functions" dosyasını açıyor ve en alta "genel_veri" fonksiyonunu ekliyoruz. Bura ile de işimiz bitti.

Quest okutma işlemini yukardaki işlemleri yaptıktan sonra yapmayı denedin mi ?
 

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

Geri
Üst