//

Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

Licymnius

Remember, anything is possible with C.
Katılım
29 Kas 2020
Konular
89
Mesajlar
1,403
Çözüm
6
Online süresi
1mo 24d
Reaksiyon Skoru
744
Altın Konu
38
Başarım Puanı
189
MmoLira
4,637
DevLira
-12
Ticaret - 0%
0   0   0

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!

Selamlar. Komutu kullanarak banlanan oyuncuların tüm verilerini temizleyebilirsiniz.

[CODE lang="cpp" title="common\service.h"]//müsait bir yere ekleyin;

#define ENABLE_CLEAN_BANNED_PLAYER_DATA[/CODE]

[CODE lang="cpp" title="game\src\cmd.cpp"]//aratın;

ACMD(do_clear_affect);

//altına ekleyin;

#ifdef ENABLE_CLEAN_BANNED_PLAYER_DATA
ACMD(do_clean);
#endif

//tekrar aratın;

{ "do_clear_affect", do_clear_affect, 0, POS_DEAD, GM_LOW_WIZARD},

//altına ekleyin;

#ifdef ENABLE_CLEAN_BANNED_PLAYER_DATA
{ "clean", do_clean, 0, POS_DEAD, GM_IMPLEMENTOR},
#endif[/CODE]

[CODE lang="cpp" title="game\src\cmd_gm.cpp"]//aratın;

ACMD(do_clear_affect)
{
ch->ClearAffect(true);
}

//altına ekleyin;

#ifdef ENABLE_CLEAN_BANNED_PLAYER_DATA
const std::map<const char*, const char*> _Deleter
{
{"log.log", "who"},
{"log.cube", "pid"},
{"log.goldlog", "pid"},
{"log.levellog", "pid"},
{"log.speedhack", "pid"},
{"log.refinelog", "pid"},
{"log.quest_reward_log", "2"},
{"log.loginlog", "pid"},
{"log.loginlog2", "pid"},
{"log.goldlog", "pid"},
{"player.item", "owner_id"},
{"player.player", "id"},
{"player.guild_member", "pid"},
{"player.affect", "dwPID"}
};

ACMD(do_clean)
{
std::array<MYSQL_ROW, 2> row;
std::unique_ptr<SQLMsg> msg(DBManager::instance().DirectQuery("SELECT id FROM account.account WHERE availDt - NOW() > 0"));
while ((row[0] = mysql_fetch_row(msg->Get()->pSQLResult))) {
DBManager::instance().DirectQuery("DELETE FROM player.player_index WHERE id = %d", std::atoi(row[0][0]));
std::unique_ptr<SQLMsg> msg2(DBManager::instance().DirectQuery("SELECT id FROM player.player WHERE account_id='%d'", std::atoi(row[0][0])));
while ((row[1] = mysql_fetch_row(msg2->Get()->pSQLResult)))
for (const auto& [table, where] : _Deleter)
DBManager::instance().DirectQuery("DELETE FROM %s WHERE %s = %d", table,where,std::atoi(row[1][0]));
}
}
#endif[/CODE]

İyi forumlar dilerim.
 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

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