- Mesaj
- 418
- Çözümler
- 23
- Beğeni
- 209
- Puan
- 744
- Ticaret Puanı
- 0
cmd.cpp:
//Bul
void interpret_command(LPCHARACTER ch, const char * argument, size_t len)
{
// Altına ekle
#ifdef ENABLE_ANTI_CMD_FLOOD
if (ch && !ch->IsGM())
{
if (thecore_pulse() > ch->GetCmdAntiFloodPulse() + PASSES_PER_SEC(1))
{
ch->SetCmdAntiFloodCount(0);
ch->SetCmdAntiFloodPulse(thecore_pulse());
}
if (ch->IncreaseCmdAntiFloodCount()>=10)
{
ch->GetDesc()->DelayedDisconnect(0);
return;
}
}
#endif
//SON HALİ ŞÖYLE OLACAK
void interpret_command(LPCHARACTER ch, const char * argument, size_t len)
{
#ifdef ENABLE_ANTI_CMD_FLOOD
if (ch && !ch->IsGM())
{
if (thecore_pulse() > ch->GetCmdAntiFloodPulse() + PASSES_PER_SEC(1))
{
ch->SetCmdAntiFloodCount(0);
ch->SetCmdAntiFloodPulse(thecore_pulse());
}
if (ch->IncreaseCmdAntiFloodCount()>=10)
{
ch->GetDesc()->DelayedDisconnect(0);
return;
}
}
#endif
if (NULL == ch)
{
sys_err ("NULL CHRACTER");
return ;
}
char.h:
// Başlara ekle
#define ENABLE_ANTI_CMD_FLOOD
//BUL
void SetItemAward_cmd(char* cmd) { strcpy(itemAward_cmd,cmd); }
//void SetItemAward_flag(bool flag) { itemAward_flag = flag; }
// ALTINA EKLE
#ifdef ENABLE_ANTI_CMD_FLOOD
private:
int m_dwCmdAntiFloodPulse;
DWORD m_dwCmdAntiFloodCount;
public:
int GetCmdAntiFloodPulse() { return m_dwCmdAntiFloodPulse; }
DWORD GetCmdAntiFloodCount() { return m_dwCmdAntiFloodCount; }
DWORD IncreaseCmdAntiFloodCount() { return ++m_dwCmdAntiFloodCount; }
void SetCmdAntiFloodPulse(int dwPulse) { m_dwCmdAntiFloodPulse = dwPulse; }
void SetCmdAntiFloodCount(DWORD dwCount) { m_dwCmdAntiFloodCount = dwCount; }
#endif
char.cpp:
//BUL
m_fAttMul = 1.0f;
m_fDamMul = 1.0f;
m_pointsInstant.iDragonSoulActiveDeck = -1;
// ALTINA EKLE
#ifdef ENABLE_ANTI_CMD_FLOOD
m_dwCmdAntiFloodCount = 0;
m_dwCmdAntiFloodPulse = 0;
#endif
CommonDefines.h:
// UYGUN YERE EKLE
#define ENABLE_ANTI_CMD_FLOOD // Hızlı Komut Kullanımı Önlemi