• Страница 1 из 1
  • 1
Модератор форума: Dimitro  
Форум » TrinityCore » [TrinityCore] Help » Анонс про входе! (Анонс)
Анонс про входе!
dimakpro
Центурион
#include "ScriptPCH.h"
#include "TicketMgr.h"
#include "Chat.h"

class on_login : public PlayerScript
{
public:
on_login() : PlayerScript("on_login") {}

void OnLogin(Player* player, bool firstLogin)
{
if (player->GetSession()->GetSecurity() >= SEC_PLAYER)
{
ChatHandler handler(player->GetSession());
uint32 gmlvl = player->GetSession()->GetSecurity();
std::string gmname = player->GetName();
uint32 playeronline = sWorld->GetPlayerCount();
std::string uptime = secsToTimeString(sWorld->GetUptime());
std::string player_ip = player->GetSession()->GetRemoteAddress();
uint32 tickets = sTicketMgr->GetOpenTicketCount();

handler.PSendSysMessage("|cffff0000=================================|r");
handler.PSendSysMessage("|cff00ff00Привет,|r %s", gmname.c_str());
handler.PSendSysMessage("|cff00ff00Ваш уровень учетной записи:|r %u", gmlvl);
handler.PSendSysMessage("|cff00ff00Ваш IP:|r %s", player_ip.c_str());
handler.PSendSysMessage("|cff00ff00Сейчас|r %u |cff00ff00игроков онлайн|r", playeronline);
handler.PSendSysMessage("|cff00ff00Открытие тикеты:|r %u", tickets);
handler.PSendSysMessage("|cff00ff00Время работы сервера:|r %s", uptime.c_str());
handler.PSendSysMessage("|cff00ff00Удачи и приятной игры на нашем сервере|r");
handler.PSendSysMessage("|cffff0000=================================|r"); <-------------------- PsendsysMessage всё работает 100% от уровня игрока до администратора без проблем
return;
}
}
};

class gm_announce : public PlayerScript
{
public:
gm_announce() : PlayerScript("gm_announce") { }

void OnLogin(Player* player, bool firstLogin)
{

if (player->GetSession()->GetSecurity() == SEC_PLAYER)
{
char msg[250];
snprintf(msg, 250, "|cffff0000[Аннонс входа]:|r Игрок %s зашел в игровой мир", player->GetName()); <------ Уровень игрок работает постоянно без сбоев анонсирование без проблем
sWorld->SendServerMessage(SERVER_MSG_STRING, msg);
}

if (player->GetSession()->GetSecurity() == SEC_MODERATOR)
{
char msg[250];
snprintf(msg, 250, "|cffff0000[Аннонс входа]:|r V.I.P %s зашел в игровой мир", player->GetName());<------Уровень модератор не работает вообще,просто понять не могу в чём дело,в бд уровни стоят от 0-3 ( 0-игрок,1-V.I.P(модер),2-ГМ и 3-й Админ)
sWorld->SendServerMessage(SERVER_MSG_STRING, msg);
}

if (player->GetSession()->GetSecurity() == SEC_GAMEMASTER)
{
char msg[250];
snprintf(msg, 250, "|cffff0000[Аннонс входа]:|r Игровой мастер %s зашел в игровой мир", player->GetName());<--------Игровой мастер анонсирует на админа,хотя уровень доступа стоит не 2 а 3!
sWorld->SendServerMessage(SERVER_MSG_STRING, msg);
}

if (player->GetSession()->GetSecurity() == SEC_ADMINISTRATOR)
{
char msg[250];
snprintf(msg, 250, "|cffff0000[Аннонс входа]:|r Администратор %s зашел в игровой мир", player->GetName());<-------не работает,хотя уровень учетной записи идентичен что и в скрипте sec_admin
sWorld->SendServerMessage(SERVER_MSG_STRING, msg);
}
}
};

void AddSC_on_login()
{
new on_login();
new gm_announce();
}
Продажа сервера wow blood-fire (WoW 3.3.5a + Lua engine) 6500 руб
---->https://vk.com/jimteck<----
Сообщение # 1 написано 18.06.2015 в 16:49
Malezha
Армия спасения
Похоже, что каким то патчем было изменено перечисление AccountTypes.
Сообщение # 2 отредактировано Malezha - Четверг, 18.06.2015, 17:20
dimakpro
Центурион
Спасибо за помощь,там 10 уровней было доступа,видимо при накатывании какого-то патча сменилось) Спасибо за помощь)
Продажа сервера wow blood-fire (WoW 3.3.5a + Lua engine) 6500 руб
---->https://vk.com/jimteck<----
Сообщение # 3 написано 18.06.2015 в 17:14
Форум » TrinityCore » [TrinityCore] Help » Анонс про входе! (Анонс)
  • Страница 1 из 1
  • 1
Поиск: