[Ajuda] ajuda Cadeia admin
#1

tipo eu coloquei um interior e quando da /cadeia ou /agendarcadeia ou /setcadeiao player vai para cadeia da policia federal. Tem como colocar o interior separado ?
ScreanShot: http://i.imgur.com/PEmPNwR.png

os Comandos.

PHP Code:
    if(strcmp(cmd"/setcadeia",true) == 0)
    {
        if(
IsPlayerConnected(playerid))
        {
            new 
tempo[20];
            new 
tempo2;
            if(
PlayerInfo[playerid][pAdmin] < 3)
            {
                
SendClientMessage(playeridCOLOR_GREY"Vocк nгo esta autorizado para usar este comando!");
                return 
true;
            }
            
tmp strtok(cmdtextidx);
            
tempo strtok(cmdtextidx);
            if(!
strlen(tmp))
            {
                
SendClientMessage(playeridCOLOR_GRAD2"USE: /setcadeia [id] [Tempo] [Motivo]");
                return 
true;
            }
            if(!
strlen(tempo))
            {
                
SendClientMessage(playeridCOLOR_GRAD2"USE: /setcadeia [id] [Tempo] [Motivo]");
                return 
true;
            }
            if(
admtrampando[playerid] < 1)
            {
                
SendClientMessage(playeridCOLOR_GRAD1"Vocк nгo estб trabalhando! (/jogar)");
                return 
true;
            }
            
giveplayerid ReturnUser(tmp);
            
tempo2 strval(tempo);
            new 
length strlen(cmdtext);
            while ((
idx length) && (cmdtext[idx] <= ' '))
            {
            
idx++;
            }
            new 
offset idx;
            new 
result[100];
            while ((
idx length) && ((idx offset) < (sizeof(result) - 1)))
            {
            
result[idx offset] = cmdtext[idx];
            
idx++;
            }
            
result[idx offset] = EOS;
            if(
IsPlayerConnected(giveplayerid))
            {
                if(
giveplayerid != INVALID_PLAYER_ID)
                {
                        
GetPlayerName(giveplayeridgiveplayersizeof(giveplayer));
                    
GetPlayerName(playeridsendernamesizeof(sendername));
                    
format(stringsizeof(string), "Admin %s Setou %s na Cadeia, por %s minutos, Motivo: %s",PlayerName(playerid), giveplayertempo, (result));
                    
SendClientMessageToAll(COLOR_LIGHTREDstring);
                    
ResetPlayerWeapons(giveplayerid);
                    
OnPlayerUpdate(giveplayerid);
                    
PlayerInfo[giveplayerid][pJailed] = 2;
                    
PlayerInfo[giveplayerid][pJailTime] = tempo2 60;
                    
SetPlayerInterior(giveplayerid5);
                    
SetPlayerPos(giveplayerid322.197998,302.497985,999.148437);
                 }
            }
            else
            {
                
SendClientMessage(playeridCOLOR_GREY"   O jogador estб offline !");
                return 
true;
            }
        }
        return 
true;
    }
    if(
strcmp(cmd"/cadeia",true) == 0)
    {
        if(
IsPlayerConnected(playerid))
        {
            new 
tempo[20];
            new 
tempo2;
            if(
PlayerInfo[playerid][pAdmin] < 3)
            {
                
SendClientMessage(playeridCOLOR_GREY"   Vocк nгo esta autorizado para usar este comando!");
                return 
true;
            }
            
tmp strtok(cmdtextidx);
            
tempo strtok(cmdtextidx);
            if(!
strlen(tmp))
            {
                
SendClientMessage(playeridCOLOR_GRAD2"USE: /cadeia [id] [Tempo] [Motivo]");
                return 
true;
            }
            if(!
strlen(tempo))
            {
                
SendClientMessage(playeridCOLOR_GRAD2"USE: /cadeia [id] [Tempo] [Motivo]");
                return 
true;
            }
            if(
admtrampando[playerid] < 1)
            {
                
SendClientMessage(playeridCOLOR_GRAD1"Vocк nгo estб trabalhando! (/jogar)");
                return 
true;
            }
            
giveplayerid ReturnUser(tmp);
            
tempo2 strval(tempo);
            new 
length strlen(cmdtext);
            while ((
idx length) && (cmdtext[idx] <= ' '))
            {
            
idx++;
            }
            new 
offset idx;
            new 
result[100];
            while ((
idx length) && ((idx offset) < (sizeof(result) - 1)))
            {
            
result[idx offset] = cmdtext[idx];
            
idx++;
            }
            
result[idx offset] = EOS;
            if(
IsPlayerConnected(giveplayerid))
            {
                if(
giveplayerid != INVALID_PLAYER_ID)
                {
                        
GetPlayerName(giveplayeridgiveplayersizeof(giveplayer));
                    
GetPlayerName(playeridsendernamesizeof(sendername));
                    
format(stringsizeof(string), "Admin %s colocou %s na Cadeia, por %s minutos, Motivo: %s",PlayerName(playerid), giveplayertempo, (result));
                    
SendClientMessageToAll(COLOR_LIGHTREDstring);
                    
ResetPlayerWeapons(giveplayerid);
                    
OnPlayerUpdate(giveplayerid);
                    
PlayerInfo[giveplayerid][pJailed] = 2;
                    
PlayerInfo[giveplayerid][pJailTime] += tempo2 60;
                    
SetPlayerInterior(giveplayerid5);
                    
SetPlayerPos(giveplayerid322.197998,302.497985,999.148437);
                 }
            }
            else
            {
                
SendClientMessage(playeridCOLOR_GREY"   O jogador estб offline !");
                return 
true;
            }
        }
        return 
true;
    }
    if(
strcmp(cmd"/agendarcadeia"true) == || strcmp(cmd"/acadeia"true) == 0)
    {
        if(
IsPlayerConnected(playerid))
        {
            new 
playa[64];
            new 
money;
            
playa strtok(cmdtextidx);
            
tmp strtok(cmdtextidx);
            if(!
strlen(playa))
            {
                
SendClientMessage(playeridCOLOR_GRAD2"USE: /agendarcadeia [Nome] [Tempo(Minutos)] [Motivo]");
                return 
1;
            }
            
money strval(tmp);
            if (
PlayerInfo[playerid][pAdmin] >= 1)
            {
                if(
admtrampando[playerid] < && PlayerInfo[playerid][pAdmin] != 1339 && PlayerInfo[playerid][pAdmin] != 1342 && PlayerInfo[playerid][pAdmin] != 3000)
                {
                    
SendClientMessage(playeridCOLOR_GRAD1"Vocк nгo estб trabalhando! (/jogar)");
                    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))
                {
                    
SendClientMessage(playeridCOLOR_GRAD2"USE: /cadeia [id] [Tempo(Minutos)] [motivo]");
                    return 
1;
                }
                new 
arquivo[64];
                
format(arquivosizeof(arquivo), OpenAccPlayer,playa);
                
GetPlayerName(playeridsendernamesizeof(sendername));
                if(!
dini_Exists(arquivo))
                {
                    
SendClientMessage(playeridCOLOR_GRAD1"Este Player Nгo estб Registrado no Servidor!");
                    return 
true;
                }
                
format(arquivosizeof(arquivo), "Agendados/JAIL%s.ini",playa);
                if(
dini_Exists(arquivo))
                {
                    
dini_Set(arquivo,"Admin",sendername);
                    
dini_Set(arquivo,"Motivo",result);
                    
dini_IntSet(arquivo,"Tempo",money);
                }
                else
                {
                    
dini_Create(arquivo);
                    
dini_Set(arquivo,"Admin",sendername);
                    
dini_Set(arquivo,"Motivo",result);
                    
dini_IntSet(arquivo,"Tempo",money);
                   }
                
format(gstring,sizeof(gstring), "AdmAviso: %s Agendou %s, Tempo %d Minutos, Motivo: %s"sendername,playa,money,result);
                
ABroadCast(COLOR_LIGHTRED,gstring,1);
            }
            else
            {
                
SendClientMessage(playeridCOLOR_GRAD1"Vocк nгo tem permissao para usar esse comando!");
            }
        }
        return 
1;
    } 
Reply
#2


Nгo entendi direto vocк quer que cada jogador vai pra uma cela ?

Se for isso Faz um Random com as cordernadas


https://sampwiki.blast.hk/wiki/Random
Reply
#3

Nгo man. quando eu aplico a cadeia de admin,o player estб indo pro interior da policia federal e o msmo interior da pf й o da cela admin. tendeu ?
Reply
#4

No comando /setcadeia, troque as linhas
pawn Code:
PlayerInfo[giveplayerid][pJailed] = 2;  
SetPlayerInterior(giveplayerid, 5);
SetPlayerPos(giveplayerid, 322.197998,302.497985,999.148437);
por
pawn Code:
PlayerInfo[giveplayerid][pJailed] = 6; //Acho que o 6 й o da cadeia dos Admins
SetPlayerInterior(giveplayerid, X); //Troque o X pelo id do interior (se for por na area 51, o interior й 0)
SetPlayerPos(giveplayerid, X, Y,Z ); //Troque o X, Y, Z pelas coordenadas que o player vai ir ao ser preso

No comando /cadeia use a mesma coisa, troque as linhas
pawn Code:
PlayerInfo[giveplayerid][pJailed] = 2;  
SetPlayerInterior(giveplayerid, 5);
SetPlayerPos(giveplayerid, 322.197998,302.497985,999.148437);
por
pawn Code:
PlayerInfo[giveplayerid][pJailed] = 6; //Acho que o 6 й o da cadeia dos Admins
SetPlayerInterior(giveplayerid, X); //Troque o X pelo id do interior (se for por na area 51, o interior й 0)
SetPlayerPos(giveplayerid, X, Y,Z ); //Troque o X, Y, Z pelas coordenadas que o player vai ir ao ser preso
Tendeu ?
Reply
#5

PHP Code:
PlayerInfo[giveplayerid][pJailed] = 2;//nesse 2 jaй o da cadeia. o resto estб tudo certo. Esse й o id da cadeia 
Unica coisa q ta dando errado й q ta saindo o msm inteior da policia federal ai ta bugando

Tendeu ?
Reply
#6

Quote:
Originally Posted by PraqueNome
View Post
PHP Code:
PlayerInfo[giveplayerid][pJailed] = 2;//nesse 2 jaй o da cadeia. o resto estб tudo certo. Esse й o id da cadeia 
Unica coisa q ta dando errado й q ta saindo o msm inteior da policia federal ai ta bugando

Tendeu ?
baixei um Gm da net pra arrumar seu erro

Va no seu Gm, aperte CTRL + F, e procure por
pawn Code:
if(PlayerInfo[playerid][pJailed] == 2)
ira aparecer somente um, ai voce vai ver
pawn Code:
SetPlayerInterior(playerid, X); //Coloque o ID do interior
SetPlayerPos(playerid,X,Y,Z); //Coloque as coordenas que voce quer
Deu certo ?
Reply
#7

Estas assim.

PHP Code:
        else if(PlayerInfo[playerid][pJailed] == 2)
        {
            
SetPlayerInterior(playerid0);
            
SetPlayerPos(playerid346.5848306.1026999.1484);
            
SetPlayerInterior(playerid,6);
            
SetPlayerVirtualWorld(playerid,random(20)); 
Se esse for o caso eu nгo poderia adicionar a coordenada se ja tem --', e mesmo eu substituiando o interiore as cordenada fica omesmo erro.

Manoeu sу quero usar o mesmo interior q estб na policia federal para ficar como cadeia admin. Sedo assim usando os 2 interiores
Reply
#8

Quote:
Originally Posted by PraqueNome
View Post
Estas assim.

PHP Code:
        else if(PlayerInfo[playerid][pJailed] == 2)
        {
            
SetPlayerInterior(playerid0);
            
SetPlayerPos(playerid346.5848306.1026999.1484);
            
SetPlayerInterior(playerid,6);
            
SetPlayerVirtualWorld(playerid,random(20)); 
Se esse for o caso eu nгo poderia adicionar a coordenada se ja tem --', e mesmo eu substituiando o interiore as cordenada fica omesmo erro.

Manoeu sу quero usar o mesmo interior q estб na policia federal para ficar como cadeia admin. Sedo assim usando os 2 interiores
Deixa eu ver se eu entendi, vc quer separar o interior da PF
deixar como Interior da PF, e interior de Cadeia Admin ?

Mas quando um player entrar na PF, ele nao vai ver os player preso pelos Admin ?
Reply
#9

vou te explicar melhor com este video.
https://www.youtube.com/watch?v=q11y...ature=*********

Tendeu ? eu posso explicar dnv
Reply
#10

Quote:
Originally Posted by PraqueNome
View Post
vou te explicar melhor com este video.
https://www.youtube.com/watch?v=q11y...ature=*********

Tendeu ? eu posso explicar dnv
Isso que acho que nun tem como fazer, setar outro interior igual, mas sem as coisas, pera ae, vou pesquisar

#EDIT

Tem como sim, no comando /cadeia e /setcadeia, adicone esta linha

pawn Code:
SetPlayerVirtualWorld(playerid, 52); // Coloque o numero que quiser, menos 0 ate 10 eu acho, pq deve ter eventos nesses mundos
Esta linha vai setar outro mundo para o player, onde nao tera nenhum player, e nenhum objeto
vi isto nesse topico: https://sampforum.blast.hk/showthread.php?tid=222195

Mas nгo esqueзa de por
pawn Code:
SetPlayerVirtualWorld(playerid, 0);
quando player der spawn, ou sair da prisao, se nгo ele vai ficar bugado
Reply
#11

Funcionol. Sumiu tudo q й da policia federal. Mais ainda aquele grade q fais de cela para policia federal continuol.

SS. http://i.imgur.com/jMR2wB3.png
Reply
#12

Quote:
Originally Posted by PraqueNome
View Post
Funcionol. Sumiu tudo q й da policia federal. Mais ainda aquele grade q fais de cela para policia federal continuol.

SS. http://i.imgur.com/jMR2wB3.png
ai eu nun sei n kk
Reply
#13

ta nй --' ja consegui arrumar. mais vc pode me ajudar com isso aki ?

http://forum.sa-mp.com/showthread.ph...=1#post3156497

@Edit consegui arrumar o outro topico. sem ajuda lol kk to aprendendo msm kk vlw ae
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)