Advertisement
Guest User

World Chat

a guest
Jan 21st, 2012
2,168
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.64 KB | None | 0 0
  1. #include "ScriptPCH.h"
  2. #include "Chat.h"
  3.  
  4. class cs_world_chat : public CommandScript
  5. {
  6.     public:
  7.         cs_world_chat() : CommandScript("cs_world_chat"){}
  8.  
  9.     ChatCommand * GetCommands() const
  10.     {
  11.         static ChatCommand WorldChatCommandTable[] =
  12.         {
  13.             {"chat",    SEC_PLAYER,     true,       &HandleWorldChatCommand,    "", NULL},
  14.             {NULL,      0,              false,      NULL,                       "", NULL}
  15.         };
  16.  
  17.         return WorldChatCommandTable;
  18.     }
  19.  
  20.     static bool HandleWorldChatCommand(ChatHandler * handler, const char * args)
  21.     {
  22.         if (!args)
  23.             return false;
  24.  
  25.         std::string msg = "";
  26.         Player * player = handler->GetSession()->GetPlayer();
  27.  
  28.         switch(player->GetSession()->GetSecurity())
  29.         {
  30.             // Player
  31.             case SEC_PLAYER:
  32.                 if (player->GetTeam() == ALLIANCE)
  33.                 {
  34.                     msg += "|cff0000ff[Alliance] |cffffffff[";
  35.                     msg += player->GetName();
  36.                     msg += "] |cfffaeb00";
  37.                 }
  38.  
  39.                 if (player->GetTeam() == HORDE)
  40.                 {
  41.                     msg += "|cffff0000[Horde] |cffffffff[";
  42.                     msg += player->GetName();
  43.                     msg += "] |cfffaeb00";
  44.                 }
  45.                 break;
  46.             // Moderator/trial
  47.             case SEC_MODERATOR:
  48.                 msg += "|cffff8a00[Mod] |cffffffff[";
  49.                 msg += player->GetName();
  50.                 msg += "] |cfffaeb00";
  51.                 break;
  52.             // GM
  53.             case SEC_GAMEMASTER:
  54.                 msg += "|cff00ffff[GM] |cffffffff[";
  55.                 msg += player->GetName();
  56.                 msg += "] |cfffaeb00";
  57.                 break;
  58.             // Admin
  59.             case SEC_ADMINISTRATOR:
  60.                 msg += "|cfffa9900[Admin] |cffffffff[";
  61.                 msg += player->GetName();
  62.                 msg += "] |cfffaeb00";
  63.                 break;
  64.  
  65.         }
  66.            
  67.         msg += args;
  68.         sWorld->SendServerMessage(SERVER_MSG_STRING, msg.c_str(), 0);  
  69.  
  70.         return true;
  71.     }
  72. };
  73.  
  74. void AddSC_cs_world_chat()
  75. {
  76.     new cs_world_chat();
  77. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement