Yardım Simya etkinleştirme butonuna süre sınırı?

Konu sahibi bu konuda soru soruyor. Sorusu ile ilgili bilgisi olanların yanıtlamasını bekliyor.
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.

bqofficial

Üye
Üye
Mesaj
103
Çözümler
2
Beğeni
23
Puan
39
Ticaret Puanı
0
Merhaba, Simyayı etkinleştiren butona 10 saniye süre engeli koymak istiyorum. 1 kere etkinleştirdikten sonra 10 saniye boyunca tekrar aktif edilemesin, nasıl yapabiliriz?
 
Çözüm
char_dragonsoul.cpp
C++:
//Ara
bool CHARACTER::DragonSoul_ActivateDeck(int deck_idx)

// En sondaki return true; ' nun üstüne ekle

    ch->SetQuestFlag("soulwait_min.soul_wait", get_global_time() + 10);

//Sonra kod bloğunun içine ekle
    int iFloodResult = ch->GetQuestFlag("soulwait_min.soul_wait");
    if (iFloodResult)
    {
        if (get_global_time() < iFloodResult + 1)
        {
            ch->ChatPacket(CHAT_TYPE_INFO, ("Bu kadar hızlı kullanamazsın."));
            return false;
        }
    }

Not: Bu yöntem çok sağlıklı bir yöntem değil, fasülye mantığının aynısı. Geçici olarak kullanabilirsin. Questflag setlemek böyle bir şey için çok doğru değil clientten de yapabilirsin ama bu işini görür
get global time ile bi engel koyarsında nası bilemedim şimdş
 
char_dragonsoul.cpp
C++:
//Ara
bool CHARACTER::DragonSoul_ActivateDeck(int deck_idx)

// En sondaki return true; ' nun üstüne ekle

    ch->SetQuestFlag("soulwait_min.soul_wait", get_global_time() + 10);

//Sonra kod bloğunun içine ekle
    int iFloodResult = ch->GetQuestFlag("soulwait_min.soul_wait");
    if (iFloodResult)
    {
        if (get_global_time() < iFloodResult + 1)
        {
            ch->ChatPacket(CHAT_TYPE_INFO, ("Bu kadar hızlı kullanamazsın."));
            return false;
        }
    }

Not: Bu yöntem çok sağlıklı bir yöntem değil, fasülye mantığının aynısı. Geçici olarak kullanabilirsin. Questflag setlemek böyle bir şey için çok doğru değil clientten de yapabilirsin ama bu işini görür
 
Çözüm
Biraz daha detay verebilirseniz :(
app.GetTime ile mevcut zamanı alacaksanız daha sonra 10 saniye sonrasını hesaplatacaksanız. Eğer mevcut süre hesaplattığınız süreden azsa engellemek istediğiniz neyse engelleyebilirsiniz.
 
Konuya son durum belirtilmemiş ve konu zaman aşımına uğradığı için kapatılmıştır.
 
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.
Geri
Üst