|
|
Модератор форума: Dimitro |
Форум TrinityCore [TrinityCore] Help Анонс про входе! (Анонс) |
Анонс про входе! |
#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
|
Похоже, что каким то патчем было изменено перечисление AccountTypes.
|
| |||
| |||