Petit script Annonce
Originellement écrit pour MaNGOS 9271,
Testé sur la révision des 9271, 9626, 9765 et 9799e

C'est un classique système d'annonce.
Je ne sais pas qui est l'auteur de la première version que j'ai édité.
ça m'a coûté quelques heures, y compris les tests.

1. SQL (world database):

Code :
INSERT INTO `mangos_string` (`entry`,`content_default`,`content_loc1`,`content_loc2`,`co​ntent_loc3`,`content_loc4`,`content_loc5`,`content_loc6`,`co​ntent_loc7`,`content_loc8`) VALUES
(1301,'|c1f40af20<Moderateur> |cffff0000[%s]|c1f40af20:|cffffff00 %s|r',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),
(1302,'|c1f40af20<MJ.Event> |cffff0000[%s]|c1f40af20:|cffffff00 %s|r',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),
(1303,'|c1f40af20<MJ> |cffff0000[%s]|c1f40af20:|cffffff00 %s|r',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),
(1304,'|c1f40af20<Developpeur> |cffff0000[%s]|c1f40af20:|cffffff00 %s|r',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),
(1305,'|c1f40af20<Administrateur> |cffff0000[%s]|c1f40af20:|cffffff00 %s|r',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),
(1306,'|c1f40af20<Console> |cffff0000[MaNGOS]|c1f40af20:|cffffff00 %s|r',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);

UPDATE `command` SET `security` = 6 WHERE `security` = 4;
UPDATE `command` SET `security` = 4 WHERE `security` = 3;
UPDATE `command` SET `security` = 3 WHERE `security` = 2;

2. CORE src/game/Language.h

Code :
LANG_SYSTEMMESSAGE_MODERATOR        = 1301,  
    LANG_SYSTEMMESSAGE_EVENTER          = 1302,  
    LANG_SYSTEMMESSAGE_GAMEMASTER       = 1303,  
    LANG_SYSTEMMESSAGE_DEVELOPER        = 1304,  
    LANG_SYSTEMMESSAGE_ADMINISTRATOR    = 1305,  
    LANG_SYSTEMMESSAGE_CONSOLE          = 1306,

3. CORE src/game/Level1.cpp ChatHandler::HandleAnnounceCommand

Code :
bool ChatHandler::HandleAnnounceCommand(const char* args)
{
    if(!*args)
        return false;

    if(m_session)
    {
        int32 strid;
        strid = (m_session->GetSecurity() + 1300);
        sWorld.SendWorldText(strid, m_session->GetPlayerName(), args);
        return true;
    }
    else if(!m_session)
    {
        sWorld.SendWorldText(LANG_SYSTEMMESSAGE_CONSOLE, args);
        return true;
    }
    return false;
}

4. CORE src/shared/common.h enum AccountTypes

remplacer ça :

Code :
enum AccountTypes
{
    SEC_PLAYER         = 0,
    SEC_MODERATOR      = 1,
    SEC_GAMEMASTER     = 2,
    SEC_ADMINISTRATOR  = 3,
    SEC_CONSOLE        = 4                                  / / doit être toujours en dernier dans la liste, les comptes doivent avoir un niveau de sécurité de moins.
};

par :

Code :
enum AccountTypes    
{
    SEC_PLAYER         = 0,
    SEC_MODERATOR      = 1,
    SEC_EVENTER        = 2,
    SEC_GAMEMASTER     = 3,
    SEC_DEVELOPER      = 4,
    SEC_ADMINISTRATOR  = 5,
    SEC_CONSOLE        = 6                                  / / doit être toujours en dernier dans la liste, les comptes doivent avoir un niveau de sécurité de moins.
};


+1 pour merci.
Merci ! Mais bon il y a une légère faute dans le SQL ne prenez pas dans le vide corrigez :

Developeur => Développeur

Mais bon merci Clin
La faute est humaine Clin
Mauvaise section Clin
=> http://www.zone-emu.fr/forum-511.html

Cordialement,
MacWarrior.

Retourner en haut Accueil