Foruma hoş geldin, Ziyaretçi

Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak tamamen ücretsizdir.

EP Kuponu Sistemi

Telif Hakkı Bildirileri için: [email protected]

admin

Administrator
Yönetici
Admin
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çılı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("Hesabina "..amount.."  Ejderha Parasi aktarildi.")

                    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.


NOT: Ep Kuponlarının verdiği ep değerini düzenlemek için navicat item_proto da ep kuponun kodunu bulup sağa kaydırın value0 da yazan değer verdiği ep miktarıdır orayı düzenlemeniz yeterli.

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

Forumdan daha fazla yararlanmak için giriş yapın yada üye olun!

Forumdan daha fazla yararlanmak için giriş yapın veya kayıt olun!

Kayıt ol

Forumda bir hesap oluşturmak tamamen ücretsizdir.

Şimdi kayıt ol
Giriş yap

Eğer bir hesabınız var ise lütfen giriş yapın

Giriş yap