- navicat gir > account tablosuna gir > F6 tuşuna bas yapıştır ve enter'e bas
- ALTER TABLE account ADD reason VARCHAR(256);
- şimdi ara game/cmd.cpp
- ACMD(do_block_chat);
- Bunun altına şunu ekleyin:
- ACMD(do_ban);
- Bunu game / cmd.cpp'de arayın:
- { "block_chat_list",do_block_chat_list, 0, POS_DEAD, GM_PLAYER },
- Yeni bir satır oluşturun ve bunu altına ekleyin:
- { "ban", do_ban, 0, POS_DEAD, GM_IMPLEMENTOR },
- Ara game/cmd_gm.cpp:
- ACMD(do_block_chat)
- Üstüne ekle:
- ACMD(do_ban);
- En alta gel ekle
- ACMD(do_ban)
- {
- // Args
- char arg1[256], arg2[256], arg3[256];
- // Local variables
- const char* szName;
- const char* escapestring;
- int iDuration;
- one_argument(two_arguments(argument, arg1, sizeof(arg1), arg2, sizeof(arg2)), arg3, sizeof(arg3));
- // Invalid syntax
- if (!*arg1 || !*arg2 || !*arg3)
- {
- ch->ChatPacket(CHAT_TYPE_INFO, "Gecersiz Sozdizimi, Kullanim: <oyuncu ismi> <zaman> <sebeb> ipucu: neden için boşluk kullanmayın, _ (alt tire)kullanın");
- return;
- }
- szName = arg1;
- iDuration = atoi(arg2);
- escapestring = arg3;
- if (iDuration <= 0)
- {
- ch->ChatPacket(CHAT_TYPE_INFO, "Süre 0 veya eksi olamaz.");
- return;
- }
- LPCHARACTER tch = CHARACTER_MANAGER::instance().FindPC(szName);
- if (!tch)
- {
- ch->ChatPacket(CHAT_TYPE_INFO, "%s oyunda yok.", szName);
- return;
- }
- if (!tch->GetDesc())
- {
- ch->ChatPacket(CHAT_TYPE_INFO, "%s don't have desc", szName);
- return;
- }
- if (tch == ch)
- {
- ch->ChatPacket(CHAT_TYPE_INFO, "Kendini banlayamazsin");
- return;
- }
- if (tch->GetGMLevel() > GM_PLAYER)
- {
- ch->ChatPacket(CHAT_TYPE_INFO, "Gmleri Banlayamazsin");
- return;
- }
- std::auto_ptr<SQLMsg> msg(DBManager::instance().DirectQuery("UPDATE account.account SET availDt = FROM_UNIXTIME(UNIX_TIMESTAMP(CURRENT_TIMESTAMP()) + %i), reason = '%s' WHERE id = %d", iDuration * 3600, escapestring, tch->GetDesc()->GetAccountTable().id));
- tch->GetDesc()->DelayedDisconnect(5);
- sys_log(0, "%s[%d] banned %s for %i hours with reason: %s", ch->GetName(), ch->GetPlayerID(), szName, iDuration, escapestring);
- ch->ChatPacket(CHAT_TYPE_INFO, "%s %i saattir şu nedenle yasaklandı: %s", szName, iDuration, escapestring);
- }