onur akbaş 1
onur akbaş
PrimeAC 1
PrimeAC
Mt2Hizmet 1
Mt2Hizmet
romegames 1
romegames
Fethi Polat 1
Fethi Polat
xranzei 1
xranzei
Bvural41 1
Bvural41
kralhakan2009 1
kralhakan2009
noisiv 1
noisiv
Manwe Work 1
Manwe Work
Vahsi Uzman 1
Vahsi Uzman
Cannn6161 1
Cannn6161
Hikaye Ekle
Reklam vermek için turkmmo@gmail.com

Altın Konu [C++] EP Kuponu Sistemi

ROHAN2 WORLD 1-120 TR TİPİ OFFICIAL YOHARA, BALATHOR VE AMON! 80. GÜNÜNDE! +10.000 ONLİNE! HİLE VE BOT %100 ENGELLİ HEMEN TIKLA!

Merhaba Arkadaşlar,

mysql_query veya mysql_query10 komutları sıkıntı çıkartıyor diyenlere net çözüm c++ ep kuponu sistemi.
Kodlama bana ait değil tabi ki, çok uğraş verdim araştırırken sonunda çözüme kavuştum sizinle de paylaşmak istedim.


1.Aşama:
db/src de ClientManagar.cpp açıp aratılır;

Kod:
sprintf(szQuery, "update account set `cash` = `cash` + %d where id = %d limit 1", packet->dwAmount, packet->dwAID);
Buradaki cash yerine coins yazıp kaydediyoruz.
Sonuç:

Kod:
sprintf(szQuery, "update account set `coins` = `coins` + %d where id = %d limit 1", packet->dwAmount, packet->dwAID);
Ardından db mizi build edip db dosyasını gerekli yere atıyoruz.
ayrac.png
2.Aşama
Quest oluşturacağız bunun için quest bölümüne charge_coins.lua veya ep_kuponu.lua (size kalmış) isminde bir dosya açıyoruz ;

Kod:
quest charge_cash_by_voucher begin
    state start begin
        function charge(amount, charge_type)
            if charge_type == nil then
                charge_type = "coins"
            end

            if 0 < amount then
                -- syntax : pc.charge_cash(amount, charge_type)
                -- warning:     1. 'charge_type' : "cash"(default) | "mileage"
                --            2. 'amount' must be positive number.
                local result = pc.charge_cash(amount, charge_type)

                if true == result then
                    local item_id = item.get_id()
                    char_log(item_id, "CHARGE_CASH_BY_VOUCHER", amount)
                    syschat(string.format(gameforge.charge_cash_by_voucher._010_syschat, amount))

                    local flag_name = "total_" .. charge_type
                    pc.setqf(flag_name, pc.getqf(flag_name) + amount)

                    item.remove()
                end
            end

            return false
        end
 
        when 80014.use or 80015.use or 80016.use or 80017.use begin
            local amount = item.get_value(0)

            charge_cash_by_voucher.charge(amount, "coins")
        end
    end
end
içine yapıştırıyoruz, questte herhangi bir değişiklik yapmanıza gerek yok ve kaydedip ./qc çekiyoruz.

Son olarak reboot atıp deneyebilirsiniz.




Bir teşekkür yeterli iyi kullanımlar :)

test etim sadece 500 ep kuponu olmuyor çok anlamsız geldi bana
 
Amount komutu işliyor yani item_proto da ep kuponlarinin kodlarina git mesela 80017 , sağa kaydır value0 da 50 yazar oradan çekiyor amount komutunu orayi kaç yaparsan o kadar ep verir kupon yani questi editlemeyin verdigim şekilde kalsın
sistem çalıştı fakat tıkladığım kupon yok olmuyor ve tıklandığıda belli olmuyor 100 kere tıkla hepsindede epi veriyor kuponun kaybolduğuda yok altan yazı geçtiğide yok ?
 
sistem çalıştı fakat tıkladığım kupon yok olmuyor ve tıklandığıda belli olmuyor 100 kere tıkla hepsindede epi veriyor kuponun kaybolduğuda yok altan yazı geçtiğide yok ?

kuponların objectine bak içinde eski sisteminiz vardır onları sil veya ep kuponlarinizin flaglari yanlış olabilir
 
Son düzenleme:

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

Geri
Üst