• 04 Juin 2026, 16:29:37


Auteur Sujet: /nouveau  (Lu 1193 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne Lucifer

  • *
  • Tueur en série
  • Messages: 199
    • Voir le profil
    • Midtown States Role Play
/nouveau
« le: 27 Juin 2010, 08:52:52 »
Bonjour  ;)

J'ai un soucis avec une commande..quand je fais ' /n Texte ' sa me dit que : " Ce canal est réservé au nouveau joueur qui ont un niveau infèrieur à 3 ! ". Mais je suis administrateur, j'aimerais faire pour que tous les nouveaux d'admin puissent répondre peut importe le niveau ?

Voici la commande :

if(strcmp(cmd, "/n", true) == 0 || strcmp(cmd, "/nouveau", true) == 0)
{
    if(IsPlayerConnected(playerid))
    {
GetPlayerName(playerid, sendername, sizeof(sendername));
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}

result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_GRAD2, "USAGE: (/n)ouveau [Texte]");
SendClientMessage(playerid, COLOR_WHITE, "FONCTION: Permet à un nouveau joueur de demander de l'aide");
return 1;
}

if ((nooon) && PlayerInfo[playerid][pAdmin] < 1)
{
SendClientMessage(playerid, COLOR_GRAD2, "Le canel pour les nouveaux à été désactivé par un administrateur !");
return 1;
}

            if(gPlayerLogged[playerid] == 0)
        {
            SendClientMessage(playerid, COLOR_GREY, "Vous n'êtes pas identifié !");
            return 1;
        }
if(PlayerInfo[playerid][pLevel] > 2)
{
SendClientMessage(playerid, COLOR_GRAD1, "Ce canal est réservé au nouveau joueur qui ont un niveau infèrieur à 3 !");
return 1;
}
if(PlayerInfo[playerid][pMuted] == 1)
{
SendClientMessage(playerid, TEAM_CYAN_COLOR, "Tu peux pas parler, tu as été muté par un administrateur !");
return 1;
}
if(gNewb[playerid] == 0)
{
    PlayerInfo[playerid][pNewbTimer] = 12;
    if (PlayerInfo[playerid][pAdmin] == 1 )
format(string, sizeof(string), "(( MDC %s : %s ))", sendername,result);
else if (PlayerInfo[playerid][pAdmin] == 2 )
format(string, sizeof(string), "(( Modérateur %s : %s ))", sendername, result);
else if (PlayerInfo[playerid][pAdmin] == 3 )
format(string, sizeof(string), "(( Modérateur %s : %s ))", sendername, result);
else if (PlayerInfo[playerid][pAdmin] == 4 )
format(string, sizeof(string), "(( Administrateur %s : %s ))", sendername, result);
else if (PlayerInfo[playerid][pAdmin] == 5 )
format(string, sizeof(string), "(( Administrateur %s : %s ))", sendername, result);
else if (PlayerInfo[playerid][pAdmin] == 1000 )
format(string, sizeof(string), "(( Administrateur %s : %s ))", sendername, result);
else if (PlayerInfo[playerid][pAdmin] == 2000 )
format(string, sizeof(string), "(( Fondateur %s : %s ))", sendername, result);
else if (PlayerInfo[playerid][pAdmin] == 3000 )
format(string, sizeof(string), "(( Scripteur %s : %s ))", sendername, result);
else if (PlayerInfo[playerid][pAdmin] == 0)
format(string, sizeof(string), "(( Nouveau %s : %s ))", sendername, result);
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
    if(PlayerInfo[i][pLevel] <= 3 || PlayerInfo[i][pAdmin] >= 1 || gNewb[i] == 1)
    {
SendClientMessage(i, COLOR_LIGHTGREEN, string);
ntimer[playerid] = 60;
}
}
}
printf("%s", string);
return 1;
}
else
{
SendClientMessage(playerid, COLOR_GRAD2, "   You must toggle that Channel to On! (/tognewb)");
return 1;
}
}
return 1;
}
if(strcmp(cmd, "/tognewb", true) == 0)
{
    if(IsPlayerConnected(playerid))
    {
if (gNewb[playerid] == 0)
{
gNewb[playerid] = 1;
SendClientMessage(playerid, COLOR_GRAD2, "Vous désactivez le canal pour les nouveaux !");
}
else if (gNewb[playerid] == 1)
{
gNewb[playerid] = 0;
SendClientMessage(playerid, COLOR_GRAD2, "Vous activez le canal pour les nouveaux !");
}
}
return 1;
}

Merci d'avance de vote aide ;)

Hors ligne skylive77

  • *
  • Tueur en série
  • La vie est un long script en php
  • Messages: 131
    • Voir le profil
Re : /nouveau
« Réponse #1 le: 27 Juin 2010, 10:42:36 »
ou alors, tu fait comme moi, tu créer une 2ème commande, pour les admins sur un canal dérivé :

if(strcmp(cmd, "/an", true) == 0 || strcmp(cmd, "/anouveau", true) == 0)
{
    if(IsPlayerConnected(playerid))
    {
        if(gPlayerLogged[playerid] == 0)
        {
            SendClientMessage(playerid, COLOR_GREY, "   Vous devez d'abord vous identifiez !");
            return 1;
        }
if(PlayerInfo[playerid][pAdmin] <= 1)
{
SendClientMessage(playerid, COLOR_LIGHTRED, " Vous n'êtes pas du staff !");
return 1;
}
GetPlayerName(playerid, sendername, sizeof(sendername));
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_GRAD2, "USAGE: (/an)ouveau [Réponse aux nouveaux]");
return 1;
}
format(string, sizeof(string), "((Staff %s: %s ))" , sendername, result);
OOCOff(COLOR_GREEN,string);
printf("%s", string);
  }
return 1;
}

C'est plus complexe comme système, mais sa marche sans problème ! :)

Hors ligne Lucifer

  • *
  • Tueur en série
  • Messages: 199
    • Voir le profil
    • Midtown States Role Play
Re : /nouveau
« Réponse #2 le: 27 Juin 2010, 11:45:27 »
Je pense que le plus simple et de mettre une condition, met peut tu me donner un exemple ?

Hors ligne Lucifer

  • *
  • Tueur en série
  • Messages: 199
    • Voir le profil
    • Midtown States Role Play
Re : /nouveau
« Réponse #3 le: 27 Juin 2010, 18:45:43 »
Merci  ::)

Double post
Sa marche pas.... :-[
« Modifié: 27 Juin 2010, 19:58:21 par Lucifer »