Ayyıldız2 | 2008 TR Yapısı • 1-99 Orta Emek Destan • Oto Avsız • 10 Temmuz 21:00 HEMEN TIKLA!
Teşekkürler.Ama Sağlıklı Bulmuyorum Bu Yöntemi,Bende Hatayı Çözmekten Yanayım.
Bu syserrin neden düştüğünü bilen varmı?
atakan bu hata su emojiler var ya karakterin üstnüde kalp yapıoruz üzgün işareti felan yapıyoruz işte o emojiyi yaptıgın anda emoji animasyonu bitmeden bir yenisini daha yaptıgında bu syserrr patlak verir zaten kodun manası emoji süresi en son yaptıgın emoji süresiniden < 1000 küçük mü diye soruyor 1000 kendi diliminde saniye değilde salise gibi kendi veri türünde bi karşılaştırma zaten.
çözüm;
Bu bi hata değil log basar spam için kontrol sağlanır ard arda basıldığı için senkron gider. Biz bunu senkrondan sonra sessizce false döndürelim.
[CODE lang="cpp" title="UserInterface\InstanceBaseEffect.cpp"]// Bul
bool CInstanceBase::IsPossibleEmoticon()
{
CEffectManager& rkEftMgr=CEffectManager::Instance();
for(DWORD eEmoticon = 0; eEmoticon < EMOTICON_NUM; eEmoticon++)
{
DWORD effectID = ms_adwCRCAffectEffect[EFFECT_EMOTICON+eEmoticon];
if( effectID && rkEftMgr.IsAliveEffect(effectID) )
return false;
}
if(ELTimer_GetMSec() - m_dwEmoticonTime < 1000)
{
TraceError("ELTimer_GetMSec() - m_dwEmoticonTime");
return false;
}
return true;
}
// Değiştir
bool CInstanceBase::IsPossibleEmoticon()
{
CEffectManager& rkEftMgr = CEffectManager::Instance();
for (DWORD eEmoticon = 0; eEmoticon < EMOTICON_NUM; ++eEmoticon)
{
DWORD effectID = ms_adwCRCAffectEffect[EFFECT_EMOTICON + eEmoticon];
if (effectID && rkEftMgr.IsAliveEffect(effectID))
return false;
}
const DWORD now = ELTimer_GetMSec();
if (now < m_dwEmoticonTime)
{
m_dwEmoticonTime = now;
return false;
}
if (now - m_dwEmoticonTime < 1000)
return false;
return true;
}
[/CODE]
Bu bi hata değil log basar spam için kontrol sağlanır ard arda basıldığı için senkron gider. Biz bunu senkrondan sonra sessizce false döndürelim.
[CODE lang="cpp" title="UserInterface\InstanceBaseEffect.cpp"]// Bul
bool CInstanceBase::IsPossibleEmoticon()
{
CEffectManager& rkEftMgr=CEffectManager::Instance();
for(DWORD eEmoticon = 0; eEmoticon < EMOTICON_NUM; eEmoticon++)
{
DWORD effectID = ms_adwCRCAffectEffect[EFFECT_EMOTICON+eEmoticon];
if( effectID && rkEftMgr.IsAliveEffect(effectID) )
return false;
}
if(ELTimer_GetMSec() - m_dwEmoticonTime < 1000)
{
TraceError("ELTimer_GetMSec() - m_dwEmoticonTime");
return false;
}
return true;
}
// Değiştir
bool CInstanceBase::IsPossibleEmoticon()
{
CEffectManager& rkEftMgr = CEffectManager::Instance();
for (DWORD eEmoticon = 0; eEmoticon < EMOTICON_NUM; ++eEmoticon)
{
DWORD effectID = ms_adwCRCAffectEffect[EFFECT_EMOTICON + eEmoticon];
if (effectID && rkEftMgr.IsAliveEffect(effectID))
return false;
}
const DWORD now = ELTimer_GetMSec();
if (now < m_dwEmoticonTime)
{
m_dwEmoticonTime = now;
return false;
}
if (now - m_dwEmoticonTime < 1000)
return false;
return true;
}
[/CODE]
Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)
Benzer konular
- Cevaplar
- 9
- Görüntüleme
- 443
- Cevaplar
- 2
- Görüntüleme
- 349
- Cevaplar
- 14
- Görüntüleme
- 931
- Cevaplar
- 0
- Görüntüleme
- 79
- Cevaplar
- 27
- Görüntüleme
- 1K