SA-MP Forums

Go Back   SA-MP Forums > Non-English > Languages > Português/Portuguese

Reply
 
Thread Tools Display Modes
Old 27/12/2011, 09:09 PM   #1
DracualA
Little Clucker
 
Join Date: Dec 2011
Posts: 33
Reputation: 0
Default [AJUDA] Carandiru - RPG

Bom, o comando de carandiru que tenho aqui, não mostra o tempo/motivo que a pessoa foi presa ..

O quê eu gostaria era que mostrasse o tempo e o motivo para todos do servidor, algo como assim:

Acho que seria +/- isso:

pawn Code:
format(string, sizeof(string), "ADMIN CMD: O admin %s prendeu %s por %d minutos, Motivo: %s", sendername, giveplayer, (result));
SendClientMessageToAll(COLOR_LIGHTRED, string);


CMD Carandiru

pawn Code:
if(strcmp(cmd, "/carandiru",true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            new tempo[256];
            new tempo2;
            if(PlayerInfo[playerid][pAdmin] < 1337)
            {
                SendClientMessage(playerid, COLOR_GREY, "   Voce não esta autorizado para usar este comando!");
                return 1;
            }
            tmp = strtok(cmdtext, idx);
            tempo = strtok(cmdtext, idx);
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, COLOR_GRAD2, "USE: /carandiru [ ID ] [ Tempo ]");
                return 1;
            }
            if(!strlen(tempo))
            {
                SendClientMessage(playerid, COLOR_GRAD2, "USE: /carandiru [ ID ] [ Tempo ]");
                return 1;
            }
            if(admadministrando[playerid] < 1)
                {
                SendClientMessage(playerid, COLOR_GRAD1, "Você não está trabalhando! (/administrar)");
                return 1;
                }
            giveplayerid = ReturnUser(tmp);
            tempo2 = strval(tempo);
            if(IsPlayerConnected(giveplayerid))
            {
                if(giveplayerid != INVALID_PLAYER_ID)
                {
                    GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                    GetPlayerName(playerid, sendername, sizeof(sendername));
                    format(string, sizeof(string), "* Você Colocou o(a) %s No Carandiru.", giveplayer);
                    SendClientMessage(playerid, COLOR_LIGHTRED, string);
                    format(string, sizeof(string), "* Você foi colocado no Carandiru Pelo Admin %s.", sendername);
                    SendClientMessage(giveplayerid, COLOR_LIGHTRED, string);
                    GameTextForPlayer(giveplayerid, "~g~Bem Vindo ao ~n~~r~Carandiru", 5000, 3);
                    PlayerInfo[giveplayerid][pProcurado1] = 0;
                    PlayerInfo[giveplayerid][pProcurado2] = 0;
                    OnPlayerUpdate(giveplayerid);
                    PlayerInfo[giveplayerid][pJailed] = 2;
                    PlayerInfo[giveplayerid][pJailTime] = tempo2 * 60;
                    SetPlayerPos(giveplayerid, 107.2300,1920.6311,18.5208);
                    SetPlayerWorldBounds(giveplayerid, 337.5694,101.5826,1940.9759,1798.7453); //285.3481,96.9720,1940.9755,1799.0811
                }
            }
            else
            {
                SendClientMessage(playerid, COLOR_GREY, "   O Player está off !");
                return 1;
            }
        }
        return 1;
    }


CMD /presos caso seja necessário

pawn Code:
if(strcmp(cmd, "/presos", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            SendClientMessage(playerid, COLOR_YELLOW, "--- PRESOS ---");
            for(new i = 0; i < MAX_PLAYERS; i++)
            {
                if(IsPlayerConnected(i))
                {
                    if(PlayerInfo[i][pJailed] == 1)
                    {
                        GetPlayerName(i, sendername, sizeof(sendername));
                        format(string, 256, "Preso: %s Local : Policia Militar Tempo : %d seg  Id: %d.", sendername, PlayerInfo[i][pJailTime], i);
                        SendClientMessage(playerid, COLOR_GRAD2, string);
                    }
                    if(PlayerInfo[i][pJailed] == 2)
                    {
                        GetPlayerName(i, sendername, sizeof(sendername));
                        format(string, 256, "Preso: %s Local : Carandiru Tempo : %d seg  Id: %d.", sendername, PlayerInfo[i][pJailTime], i);
                        SendClientMessage(playerid, COLOR_GRAD2, string);
                    }
                    if(PlayerInfo[i][pJailed] == 3)
                    {
                        GetPlayerName(i, sendername, sizeof(sendername));
                        format(string, 256, "Preso: %s Local : ROTAM Tempo : %d seg  Id: %d.", sendername, PlayerInfo[i][pJailTime], i);
                        SendClientMessage(playerid, COLOR_GRAD2, string);
                    }
                    if(PlayerInfo[i][pJailed] == 4)
                    {
                        GetPlayerName(i, sendername, sizeof(sendername));
                        format(string, 256, "Preso: %s Local : Policia Civil Tempo : %d seg  Id: %d.", sendername, PlayerInfo[i][pJailTime], i);
                        SendClientMessage(playerid, COLOR_GRAD2, string);
                    }
                    if(PlayerInfo[i][pJailed] == 1337)
                    {
                        GetPlayerName(i, sendername, sizeof(sendername));
                        format(string, 256, "Preso: %s Local : Ilha Admin Tempo : %d seg  Id: %d.", sendername, PlayerInfo[i][pJailTime], i);
                        SendClientMessage(playerid, COLOR_GRAD2, string);
                    }
                    if(PlayerInfo[i][pJailed] == 5)
                    {
                        GetPlayerName(i, sendername, sizeof(sendername));
                        format(string, 256, "Preso: %s Local : FBI Tempo Tempo: %d seg  Id: %d.", sendername, PlayerInfo[i][pJailTime], i);
                        SendClientMessage(playerid, COLOR_GRAD2, string);
                    }
                    if(PlayerInfo[i][pJailed] == 6)
                    {
                        GetPlayerName(i, sendername, sizeof(sendername));
                        format(string, 256, "Preso: %s Local : Policia Federal Tempo : %d seg  Id: %d.", sendername, PlayerInfo[i][pJailTime], i);
                        SendClientMessage(playerid, COLOR_GRAD2, string);
                    }
                    if(PlayerInfo[i][pJailed] == 7)
                    {
                        GetPlayerName(i, sendername, sizeof(sendername));
                        format(string, 256, "Preso: %s Local : Policia Militar San Fierro Tempo : %d seg  Id: %d.", sendername, PlayerInfo[i][pJailTime], i);
                        SendClientMessage(playerid, COLOR_GRAD2, string);
                    }
                }
            }
        }
        return 1;
    }

AGRADEÇO DESDE JÁ !
DracualA is offline   Reply With Quote
Old 27/12/2011, 09:25 PM   #2
Hardware
Gangsta
 
Hardware's Avatar
 
Join Date: Dec 2010
Location: Guaíba, Rio Grande do Sul
Posts: 640
Reputation: 43
Default Re: [AJUDA] Carandiru - RPG

Amigo, não uso strtok, então, não sei se o que eu fiz está certo. Mas de qualquer maneira, tente:
pawn Code:
if(strcmp(cmd, "/carandiru",true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            new tempo[256];
            new tempo2;
            if(PlayerInfo[playerid][pAdmin] < 1337)
            {
                SendClientMessage(playerid, COLOR_GREY, "   Voce não esta autorizado para usar este comando!");
                return 1;
            }
            tmp = strtok(cmdtext, idx);
            tempo = strtok(cmdtext, idx);
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, COLOR_GRAD2, "USE: /carandiru [ ID ] [ Tempo ] [Motivo]");
                return 1;
            }
            if(!strlen(tempo))
            {
                SendClientMessage(playerid, COLOR_GRAD2, "USE: /carandiru [ ID ] [ Tempo ] [Motivo]");
                return 1;
            }
            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)) return SendClientMessage(playerid, COLOR_GRAD2, "USE: /carandiru [ ID ] [ Tempo ] [Motivo]");
            if(admadministrando[playerid] < 1)
            {
                SendClientMessage(playerid, COLOR_GRAD1, "Você não está trabalhando! (/administrar)");
                return 1;
            }
            giveplayerid = ReturnUser(tmp);
            tempo2 = strval(tempo);
            if(IsPlayerConnected(giveplayerid))
            {
                if(giveplayerid != INVALID_PLAYER_ID)
                {
                    GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                    GetPlayerName(playerid, sendername, sizeof(sendername));
                    format(string, sizeof(string), "* Você Colocou o(a) %s No Carandiru.", giveplayer);
                    SendClientMessage(playerid, COLOR_LIGHTRED, string);
                    format(string, sizeof(string), "* Você foi colocado no Carandiru Pelo Admin %s.", sendername);
                    SendClientMessage(giveplayerid, COLOR_LIGHTRED, string);
                    GameTextForPlayer(giveplayerid, "~g~Bem Vindo ao ~n~~r~Carandiru", 5000, 3);
                    PlayerInfo[giveplayerid][pProcurado1] = 0;
                    PlayerInfo[giveplayerid][pProcurado2] = 0;
                    OnPlayerUpdate(giveplayerid);
                    PlayerInfo[giveplayerid][pJailed] = 2;
                    PlayerInfo[giveplayerid][pJailTime] = tempo2 * 60;
                    SetPlayerPos(giveplayerid, 107.2300,1920.6311,18.5208);
                    SetPlayerWorldBounds(giveplayerid, 337.5694,101.5826,1940.9759,1798.7453); //285.3481,96.9720,1940.9755,1799.0811
                    format(string, sizeof(string), "ADMIN CMD: O admin %s prendeu %s por %d minutos, Motivo: %s", sendername, giveplayer,PlayerInfo[giveplayerid][pJailTime],result);
                    SendClientMessageToAll(COLOR_LIGHTRED, string);
                }
            }
            else
            {
                SendClientMessage(playerid, COLOR_GREY, "   O Player está off !");
                return 1;
            }
        }
        return 1;
    }
Hardware is offline   Reply With Quote
Old 27/12/2011, 09:43 PM   #3
DracualA
Little Clucker
 
Join Date: Dec 2011
Posts: 33
Reputation: 0
Default Re: [AJUDA] Carandiru - RPG

Quote:
Originally Posted by Hardware View Post
Amigo, não uso strtok, então, não sei se o que eu fiz está certo. Mas de qualquer maneira, tente:
pawn Code:
if(strcmp(cmd, "/carandiru",true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            new tempo[256];
            new tempo2;
            if(PlayerInfo[playerid][pAdmin] < 1337)
            {
                SendClientMessage(playerid, COLOR_GREY, "   Voce não esta autorizado para usar este comando!");
                return 1;
            }
            tmp = strtok(cmdtext, idx);
            tempo = strtok(cmdtext, idx);
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, COLOR_GRAD2, "USE: /carandiru [ ID ] [ Tempo ] [Motivo]");
                return 1;
            }
            if(!strlen(tempo))
            {
                SendClientMessage(playerid, COLOR_GRAD2, "USE: /carandiru [ ID ] [ Tempo ] [Motivo]");
                return 1;
            }
            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)) return SendClientMessage(playerid, COLOR_GRAD2, "USE: /carandiru [ ID ] [ Tempo ] [Motivo]");
            if(admadministrando[playerid] < 1)
            {
                SendClientMessage(playerid, COLOR_GRAD1, "Você não está trabalhando! (/administrar)");
                return 1;
            }
            giveplayerid = ReturnUser(tmp);
            tempo2 = strval(tempo);
            if(IsPlayerConnected(giveplayerid))
            {
                if(giveplayerid != INVALID_PLAYER_ID)
                {
                    GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                    GetPlayerName(playerid, sendername, sizeof(sendername));
                    format(string, sizeof(string), "* Você Colocou o(a) %s No Carandiru.", giveplayer);
                    SendClientMessage(playerid, COLOR_LIGHTRED, string);
                    format(string, sizeof(string), "* Você foi colocado no Carandiru Pelo Admin %s.", sendername);
                    SendClientMessage(giveplayerid, COLOR_LIGHTRED, string);
                    GameTextForPlayer(giveplayerid, "~g~Bem Vindo ao ~n~~r~Carandiru", 5000, 3);
                    PlayerInfo[giveplayerid][pProcurado1] = 0;
                    PlayerInfo[giveplayerid][pProcurado2] = 0;
                    OnPlayerUpdate(giveplayerid);
                    PlayerInfo[giveplayerid][pJailed] = 2;
                    PlayerInfo[giveplayerid][pJailTime] = tempo2 * 60;
                    SetPlayerPos(giveplayerid, 107.2300,1920.6311,18.5208);
                    SetPlayerWorldBounds(giveplayerid, 337.5694,101.5826,1940.9759,1798.7453); //285.3481,96.9720,1940.9755,1799.0811
                    format(string, sizeof(string), "ADMIN CMD: O admin %s prendeu %s por %d minutos, Motivo: %s", sendername, giveplayer,PlayerInfo[giveplayerid][pJailTime],result);
                    SendClientMessageToAll(COLOR_LIGHTRED, string);
                }
            }
            else
            {
                SendClientMessage(playerid, COLOR_GREY, "   O Player está off !");
                return 1;
            }
        }
        return 1;
    }
Vou tentar aqui, já eu edito.

Obrigado.

@EDIT

Olha, seu comando ficou ótimo.

O único problema foi que eu dei:

/prender ID 1 MOTIVO - e ele foi preso por 60 minutos

Ou seja, conta de 60 em 60, exemplo:

1 = 60

2 = 120

3 = 180

E assim por diante .. Se tiver como arrumar, agradeço imensamente :]
DracualA is offline   Reply With Quote
Old 27/12/2011, 11:15 PM   #4
Hardware
Gangsta
 
Hardware's Avatar
 
Join Date: Dec 2010
Location: Guaíba, Rio Grande do Sul
Posts: 640
Reputation: 43
Default Re: [AJUDA] Carandiru - RPG

Veja se funciona.
pawn Code:
if(strcmp(cmd, "/carandiru",true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            new tempo[256];
            new tempo2;
            if(PlayerInfo[playerid][pAdmin] < 1337)
            {
                SendClientMessage(playerid, COLOR_GREY, "   Voce não esta autorizado para usar este comando!");
                return 1;
            }
            tmp = strtok(cmdtext, idx);
            tempo = strtok(cmdtext, idx);
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, COLOR_GRAD2, "USE: /carandiru [ ID ] [ Tempo ] [Motivo]");
                return 1;
            }
            if(!strlen(tempo))
            {
                SendClientMessage(playerid, COLOR_GRAD2, "USE: /carandiru [ ID ] [ Tempo ] [Motivo]");
                return 1;
            }
            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)) return SendClientMessage(playerid, COLOR_GRAD2, "USE: /carandiru [ ID ] [ Tempo ] [Motivo]");
            if(admadministrando[playerid] < 1)
            {
                SendClientMessage(playerid, COLOR_GRAD1, "Você não está trabalhando! (/administrar)");
                return 1;
            }
            giveplayerid = ReturnUser(tmp);
            tempo2 = strval(tempo);
            if(IsPlayerConnected(giveplayerid))
            {
                if(giveplayerid != INVALID_PLAYER_ID)
                {
                    GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                    GetPlayerName(playerid, sendername, sizeof(sendername));
                    format(string, sizeof(string), "* Você Colocou o(a) %s No Carandiru.", giveplayer);
                    SendClientMessage(playerid, COLOR_LIGHTRED, string);
                    format(string, sizeof(string), "* Você foi colocado no Carandiru Pelo Admin %s.", sendername);
                    SendClientMessage(giveplayerid, COLOR_LIGHTRED, string);
                    GameTextForPlayer(giveplayerid, "~g~Bem Vindo ao ~n~~r~Carandiru", 5000, 3);
                    PlayerInfo[giveplayerid][pProcurado1] = 0;
                    PlayerInfo[giveplayerid][pProcurado2] = 0;
                    OnPlayerUpdate(giveplayerid);
                    PlayerInfo[giveplayerid][pJailed] = 2;
                    PlayerInfo[giveplayerid][pJailTime] = tempo2 * 60;
                    SetPlayerPos(giveplayerid, 107.2300,1920.6311,18.5208);
                    SetPlayerWorldBounds(giveplayerid, 337.5694,101.5826,1940.9759,1798.7453); //285.3481,96.9720,1940.9755,1799.0811
                    format(string, sizeof(string), "ADMIN CMD: O admin %s prendeu %s por %d segundos, Motivo: %s", sendername, giveplayer,PlayerInfo[giveplayerid][pJailTime],result);
                    SendClientMessageToAll(COLOR_LIGHTRED, string);
                }
            }
            else
            {
                SendClientMessage(playerid, COLOR_GREY, "   O Player está off !");
                return 1;
            }
        }
        return 1;
    }
Hardware is offline   Reply With Quote
Old 27/12/2011, 11:17 PM   #5
!Niiw
Big Clucker
 
!Niiw's Avatar
 
Join Date: Sep 2011
Location: Fortaleza
Posts: 60
Reputation: 9
Default Re: [AJUDA] Carandiru - RPG

é so dividir o valor
pawn Code:
format(string, sizeof(string), "ADMIN CMD: O admin %s prendeu %s por %d ,minutos, Motivo: %s", sendername, giveplayer,PlayerInfo[giveplayerid][pJailTime]/60,result);
__________________
!Niiw is offline   Reply With Quote
Old 28/12/2011, 12:24 AM   #6
DracualA
Little Clucker
 
Join Date: Dec 2011
Posts: 33
Reputation: 0
Default Re: [AJUDA] Carandiru - RPG

Deu CERTÍSSIMO !

Obrigado mesmo Niiw e Hardware.

Os 2 estão reputados.
DracualA is offline   Reply With Quote
Old 28/12/2011, 12:31 AM   #7
Hardware
Gangsta
 
Hardware's Avatar
 
Join Date: Dec 2010
Location: Guaíba, Rio Grande do Sul
Posts: 640
Reputation: 43
Default Re: [AJUDA] Carandiru - RPG

De nada
Hardware is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
[Ajuda]Carandiru Matheus_Vieira Português/Portuguese 6 24/10/2011 08:37 PM
[AJUDA] /CARANDIRU² EoProzinhO Português/Portuguese 4 01/10/2011 04:31 AM
[Ajuda] no /carandiru Raphael_Lima Português/Portuguese 7 30/09/2011 01:22 PM
[Ajuda] Carandiru mau_tito Português/Portuguese 11 22/08/2011 11:09 PM
[AJUDA] Carandiru [AF]Junior Português/Portuguese 7 14/05/2011 05:08 PM


All times are GMT. The time now is 11:48 PM.


Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.