Ayyıldız2 | 2008 TR Yapısı • 1-99 Orta Emek Destan • Oto Avsız • 10 Temmuz 21:00 HEMEN TIKLA!
rica ederimElinize sağlık, teşekkürler.
Bir sorum var. Engellenen kişi isim izi kullanarak isim değiştirdiğinde hala engelli olarak kalıyor mu yoksa engellenen listesinden siliniyor mu ?
Ben isim izi kullanmadığım için normalde bunla alakalı bir düzenleme yapmamıştım. Yabancı forumda bir kullanıcı isim izi kullandığını belirtti o yüzden güncelleme getirdim github'dan güncel versiyonunu indirirseniz problem olmayacaktır. Kişi ismini değiştirse bile hala engelli olarak kalır.Bir sorum var. Engellenen kişi isim izi kullanarak isim değiştirdiğinde hala engelli olarak kalıyor mu yoksa engellenen listesinden siliniyor mu ?
Yapmanız gerekenleri buraya da yazayım. (Github'dan yeni indirdiyseniz zaten dosyalarda bu düzenleme mevcut yapmanıza gerek yok)
Kod:
// Open player_block.h
// Search:
auto DeletePlayerBlock(const std::string &strBlockingPlayerName, const std::string &strBlockedPlayerName) -> void;
// Add below:
auto ChangeName(const std::string &strOldName, const std::string &strNewName) -> void;
// Open player_block.cpp
// Search:
auto CPlayerBlock::DeletePlayerBlock(const std::string &strBlockingPlayerName, const std::string &strBlockedPlayerName) -> void
{
DBManager::Instance().DirectQuery("DELETE FROM player.player_block_list WHERE blockingplayername = '%s' AND blockedplayername = '%s'", strBlockingPlayerName.c_str(), strBlockedPlayerName.c_str());
}
// Add below:
auto CPlayerBlock::ChangeName(const std::string &strOldName, const std::string &strNewName) -> void
{
auto it = m_map_PlayerBlock.find(strOldName);
if (it != m_map_PlayerBlock.end())
{
m_map_PlayerBlock[strNewName] = std::move(it->second);
m_map_PlayerBlock.erase(it);
}
for (auto &it : m_map_PlayerBlock)
{
auto it2 = it.second.find(strOldName);
if (it2 != it.second.end())
{
it.second.erase(it2);
it.second.emplace(strNewName);
}
}
DBManager::Instance().DirectQuery("UPDATE player.player_block_list SET blockingplayername = '%s' WHERE blockingplayername = '%s'", strNewName.c_str(), strOldName.c_str());
DBManager::Instance().DirectQuery("UPDATE player.player_block_list SET blockedplayername = '%s' WHERE blockedplayername = '%s'", strNewName.c_str(), strOldName.c_str());
sys_log(0, "PLAYER_BLOCK: ChangeName: %s -> %s", strOldName.c_str(), strNewName.c_str());
}
// Open questlua_pc.cpp
// Add includes:
#ifdef ENABLE_PLAYER_BLOCK_SYSTEM
#include "player_block.h"
#endif
// Search:
/* delete messenger list */
MessengerManager::instance().RemoveAllList(ch->GetName());
// Add below:
#ifdef ENABLE_PLAYER_BLOCK_SYSTEM
/* player block list */
CPlayerBlock::Instance().ChangeName(ch->GetName(), szName);
#endif
Rica ederim.Teşekkürler
Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)
Benzer konular
- Cevaplar
- 5
- Görüntüleme
- 675
- Cevaplar
- 16
- Görüntüleme
- 1K
- Cevaplar
- 13
- Görüntüleme
- 1K