Показать сообщение отдельно
Старый 15.11.2011, 18:42   #16
Lurker
Новичок
 
Регистрация: 08.03.2010
Сообщений: 13
Сказал(а) спасибо: 32
Поблагодарили 7 раз(а) в 6 сообщениях
Lurker На верном пути
По умолчанию

Вот сама пропущенная строка из предыдущего поста :
Код:
	sWorld.SendGlobalMessageOnlyGM(3,player_tap,TmpTextMassage.str());
где-то в файле World.cpp

Код:
// Вставка начинается Отседова :)
void World::SendGlobalMessageOnlyGM(uint32 type, Player *cheater, std::string msg)
{
	CharacterDatabase.PExecute("INSERT INTO log_cheaters_alert (typeaction,account,player,timeact,message) VALUES ('%u','%u','%s',UNIX_TIMESTAMP(),'%s')", type, cheater->GetSession()->GetAccountId(), cheater->GetName(), msg.c_str()); 
	WorldPacket data;
	ChatHandler::FillMessageData(&data, NULL, CHAT_MSG_SYSTEM, LANG_UNIVERSAL, NULL, 0, msg.c_str(), NULL);
	SessionMap::const_iterator itr;
	for (itr = m_sessions.begin(); itr != m_sessions.end(); ++itr)
	{
		if (itr->second && itr->second->GetPlayer() && itr->second->GetPlayer()->IsInWorld() && itr->second->GetPlayer()->isGameMaster()) {itr->second->SendPacket(&data);}
	}
}
// Вставка заканчивается тут !

namespace MaNGOS
{


где-то в файле World.h

Код:
        void LoadConfigSettings(bool reload = false);
// Вставка начинается Отседова :)
		void SendGlobalMessageOnlyGM(uint32 type, Player *cheater, std::string msg); // Anticheat
// Вставка заканчивается тут !

        void SendWorldText(int32 string_id, ...);

Вот структура базы:

Код:
DROP TABLE IF EXISTS `log_cheaters_alert`;
CREATE TABLE IF NOT EXISTS `log_cheaters_alert` (
  `entry` bigint(20) NOT NULL AUTO_INCREMENT,
  `typeaction` int(3) NOT NULL default 0,
  `account` int NOT NULL default 0,
  `player` varchar(60) NOT NULL default '',
  `timeact` int NOT NULL DEFAULT '0',
  `message` text NOT NULL,
  PRIMARY KEY (`entry`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=33 ;
typeaction = 3 = 'bosskill'

ну вот както так .... вроде ничего не пропустил, должно работать...
Кроме занесения записи в таблицу, анонсируется в чат игры ГМ'ам

Последний раз редактировалось Lurker; 15.11.2011 в 18:45.
Lurker вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
wroud (15.11.2011)