• 22 Avril 2025, 14:56:54


Auteur Sujet: Incompatibilité de deux codes PAWN?  (Lu 624 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne Joshy

  • *
  • Nouveau
  • Messages: 15
    • Voir le profil
Incompatibilité de deux codes PAWN?
« le: 02 Février 2012, 19:56:49 »
Bonsoir.

Il s'agit de la commande /pm:

if(strcmp(cmd, "/privatemessage", true) == 0 || strcmp(cmd, "/pm", true) == 0)
{
    if(IsPlayerConnected(playerid))
    {
      if (PlayerInfo[playerid][pAdmin] >= 0)
  {
        if(gPlayerLogged[playerid] == 0)
        {
            SendClientMessage(playerid, COLOR_GREY, "Vous devez êtres connecté!");
            return 1;
        }
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "USAGE: /pm [playerid/PartOfName] [text]");
return 1;
}
giveplayerid = ReturnUser(tmp);
if (IsPlayerConnected(giveplayerid))
{
    if(giveplayerid != INVALID_PLAYER_ID)
    {
        if(HidePM[giveplayerid] > 0)
        {
            SendClientMessage(playerid, COLOR_GREY, "Ce joueur à bloqué les mp!");
            return 1;
        }

new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[MAX_STRING];
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: /pm [playerid/PartOfName] [text]");
return 1;
}
format(string, sizeof(string), "PM[HRP] de %s: %s", sendername, result);
SendClientMessage(giveplayerid, COLOR_YELLOW, string);
                        format(string, sizeof(string), "PM[HRP] envoyé à (%d)%s: %s", giveplayerid, giveplayer, (result));
SendClientMessage(playerid,  0xDABB3EAA, string);
format(string, sizeof(string), "%s envoie ce PM: '%s' à %s", sendername, result, giveplayer);
ABroadCast(0x80FF80FF,string,1);
return 1;

}
}
else
{
format(string, sizeof(string), " L'ID %d n'est pas connecté.", giveplayerid);
SendClientMessage(playerid, COLOR_GRAD1, string);
}
}
    else
  {
SendClientMessage(playerid, COLOR_GRAD1, "Vous n'êtes pas autorisé a utiliser cette commande!");
  }
}
return 1;
}

et de la commande /sms:

if(strcmp(cmd, "/txt", true) == 0 || strcmp(cmd, "/t", true) == 0 || strcmp(cmd, "/sms", true) == 0)
{
    if(IsPlayerConnected(playerid))
{
    if(gPlayerLogged[playerid] == 0)
        {
            SendClientMessage(playerid, COLOR_GREY, "Vous devez être connecté!");
            return 1;
        }
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "USAGE: (/t)ext [numerotel] [text chat]");
return 1;
}
if(PlayerInfo[playerid][pPnumber] == 0)
{
SendClientMessage(playerid, COLOR_GRAD2, "Vous n'avez pas de telephone...");
return 1;
}
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), " %s prend son telephone.", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
new phonenumb = strval(tmp);
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: /sms [NumeroTel] [text chat]");
return 1;
}
if(FindIP(result)) /// Anti-Reclama
    {
        SendClientMessage(playerid, COLOR_RED, "[Anti-PUB] Vous avez été kick pour avoir fait une pub ");
        new advertiser[MAX_PLAYER_NAME];
GetPlayerName(playerid, advertiser, sizeof(advertiser));
format(string, sizeof(string), "[Anti-PUB] %s a été kické. Raison: Pub",advertiser);
SendClientMessageToAll(COLOR_LIGHTRED,string);
KickLog(string);
          Kick(playerid);
        return 1;
  }
if(phonenumb == 555)
{
if ((strcmp("Oui", result, true, strlen(result)) == 0) && (strlen(result) == strlen("Oui")))
{
SendClientMessage(playerid, COLOR_WHITE, "SMS Envoyé.");
if (gTeam[playerid] == 2 || gTeam[playerid] == 1)
{
SendClientMessage(playerid, COLOR_YELLOW, "SMS: Je n'ai aucune idée de quoi vous voulez parler, Sender: MOLE (555)");
RingTone[playerid] = 20;
return 1;
}
return 1;
}
else
{
SendClientMessage(playerid, COLOR_YELLOW, "SMS: Un simple Oui ira, Sender: MOLE (555)");
RingTone[playerid] = 20;
return 1;
}
}
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(PlayerInfo[i][pPnumber] == phonenumb && phonenumb != 0)
{
giveplayerid = i;
Mobile[playerid] = giveplayerid; //caller connecting
if(IsPlayerConnected(giveplayerid))
{
    if(giveplayerid != INVALID_PLAYER_ID)
    {
        if(PhoneOnline[giveplayerid] > 0)
        {
            SendClientMessage(playerid, COLOR_GREY, "Le telephone de ce joueur est coupé!");
            return 1;
        }
format(string, sizeof(string), "SMS: %s, Expéditeur: %s (%d)", result,sendername,PlayerInfo[playerid][pPnumber]);
GetPlayerName(giveplayerid, sendername, sizeof(sendername));
format(string, sizeof(string), "ADMWARN: SMS: %s, Expéditeur: %s", result,sendername);
                                ABroadCast(0x80FF80FF,string,1);
//format(string, sizeof(string), " %s's phone beeps.", sendername);
RingTone[giveplayerid] =20;
SendClientMessage(playerid, COLOR_WHITE, "SMS Envoyé");
SendClientMessage(giveplayerid, COLOR_YELLOW, string);
SendClientMessage(playerid,  COLOR_YELLOW, string);
format(string, sizeof(string), "~r~$-%d", txtcost);
GameTextForPlayer(playerid, string, 5000, 1);
SafeGivePlayerMoney(playerid,-txtcost);
SBizzInfo[2][sbTill] += txtcost;
ExtortionSBiz(2, txtcost);
            PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
            Mobile[playerid] = 255;
return 1;
}
}
}
}
}
SendClientMessage(playerid, COLOR_GRAD2, "Echec de l'envoi du SMS...");
}
return 1;
}

Lorsqu'une commande marche, l'autre ne marche pas.

En principe ça affiche le message mais pas l'utilisateur, ou le numéro, etc...

Merci pour vos éclaircissements!