Informações
Olá, Estou postando este tópico por que estava sem nada para fazer e resolvi postar este tutorial como fazer um portao eletronico, acompanhe os passos!

• (1º)Primeiro Passo:▼
Você deverá ter um programa que edita cenários do GTA SA, Após baixar o MTA, abra ele e clique em map editor.Faça um portao, salve e converta.

• (2º)Segundo Passo:▼
Agora abra seu pawn.
Vá no topo do GameMode e coloque
:



//NO TOPO DO GAMEMODE
new NomedoPortao;
forward PortaoAndando();

• (3º)Terceiro Passo:▼
Agora ponha um:



//=====================// Portões //=============================//
NomedoPortao = CreateObject(ID, x, y, z, facinganglex, facingangley, facinganglez);
//=====================// Fim Portões //==============================//



• (4º)Quarto Passo:▼
Vá na public OnPlayerCommandText e Coloque o codigo:



if(strcmp(cmd, "/abrirportao", true) == 0)
    {
    if (PlayerToPoint(15.0, playerid, -----, ------, ------)) { //No lugar dos ------ voce coloca as cordenadas que o player deverá estar para o portao se mover
    MoveObject( NomedoPortao, -----, ------, ------,3);//No Lugar dos ----- voce coloca as cordenadas que o portao vai se mover
    SetTimer("PortaoAndando", 5000, false);
    }
    return 1;
    }


• (5º)Quinto Passo:▼
Agora para finalizar crie uma public do Settimer:


}
public PortaoAndando()
{
    MoveObject(NomedoPortao,-----, -----, -------, 2);//No Lugar dos ---- voce coloca as cordenadas que o portao foi criado!
    return 1;
}

--------------------------------------FIM DO TUTORIAL-------------------------------

Feito Por:bruno-style

Olá galera, tudo bem? Bom, esse é o meu primeiro tutorial em nível iniciante, isso mesmo, iniciante porque pra fazer isso é a coisa mais simples que tem no pawno, porém pouca gente desconhece. Vou ensinar á vocês como criar modificar o Radar do GTA, fazendo sumir os pontos de X pessoa e aparecer para Y pessoa. Parece complicado, mas não é.

Primeiramente, a gente utiliza um Timer de checagem + uma public.

//OnGameModeInit:
SetTimer("AtualizarRadar",2000,1);


forward AtualizarRadar();
public AtualizarRadar()
{
    return 1;
}

Bom, definimos a public com um tempo de 2 segundos de checagem. Você pode alterar o valor, pra 1000 ou mais se quiser...

Agora as funções que a gente utiliza nessa coisinha de Deus:

- Uma função de checagem de Distância de X player a Y player.
- Utilizamos o valor do SA-MP chamado SetPlayerMarkerForPlayer(playerid,targetid,color);

Bom, vamos lá?

public AtualizarRadar()
{
    for ( new i = 0; i < MAX_PLAYERS; i ++ )
    {
        if(IsPlayerConnected(i))
        {
            new Float:playerPos[3];
            new Float:targetPos[3];
            GetPlayerPos(i,playerPos[0],playerPos[1],playerPos[2]);


            for ( new j = 0; j < MAX_PLAYERS; j ++ )
            {
                if(IsPlayerConnected(j) && j != i)
                {
                    GetPlayerPos(j,targetPos[0],targetPos[1],targetPos[2]);
                    new distancia;
               
                    //Fórmula da Distância entre 2 X.
                    distancia = floatround(floatsqroot(floatpower(floatabs(floatsub(playerPos[0],targetPos[0])),2)+floatpower(floatabs(floatsub(playerPos[1],targetPos[1])),2)));


                    if(distancia <= 200) // Distancia é menor que 200 metros, vamos fazer o jogador sumir no mapa do outro
                    {
                        SetPlayerMarkerForPlayer(i,j,(GetPlayerColor(j) & 0xFFFFFF00));
                    }
                    else // Caso não, ele aparece no mapa
                    {
                        SetPlayerMarkerForPlayer(i,j,GetPlayerColor(j));
                    }
                }
            }
        }
    }
    return 1;
}

Caso você não entendeu porque daquele valor com & nas cores, verifique isto na Wiki SA-MP: http://wiki.sa-mp.com/wiki/SetPlayerMarkerForPlayer

Bom, é isso ai, um simples exemplo de como fazer sumir e aparecer o jogador. Agora, vamos viajar um pouco? Vamos fazer que um cara do TEAM_LEI pode enxergar os outros no radar somente pelo level de procurado?

Acompanhe:

//Topo
#define TEAM_LEI 0


public AtualizarRadar()
{
    for ( new i = 0; i < MAX_PLAYERS; i ++ )
    {
        if(IsPlayerConnected(i))
        {
            new Float:playerPos[3];
            new Float:targetPos[3];
            GetPlayerPos(i,playerPos[0],playerPos[1],playerPos[2]);


            for ( new j = 0; j < MAX_PLAYERS; j ++ )
            {
                if(IsPlayerConnected(j) && j != i)
                {
                    GetPlayerPos(j,targetPos[0],targetPos[1],targetPos[2]);
                    new distancia;
               
                    //Fórmula da Distância entre 2 X.
                    distancia = floatround(floatsqroot(floatpower(floatabs(floatsub(playerPos[0],targetPos[0])),2)+floatpower(floatabs(floatsub(playerPos[1],targetPos[1])),2)));
   
                    if(GetPlayerTeam(i) == TEAM_LEI && GetPlayerTeam(j) != TEAM_LEI)
                    {
                        switch(GetPlayerWantedLevel(j))
                        {
                            case 0: SetPlayerMarkerForPlayer(i,j,0xF6F669AA); // Amarelo bem fraquinho
                            case 1: SetPlayerMarkerForPlayer(i,j,0xF6F62EAA); // Amarelo Fraco
                            case 2: SetPlayerMarkerForPlayer(i,j,0xF6F600AA); // Amarelo Médio
                            case 3: SetPlayerMarkerForPlayer(i,j,0xF6C600AA); // Amarelo
                            case 4: SetPlayerMarkerForPlayer(i,j,0xE5B700AA); // Amarelo Forte
                            case 5: SetPlayerMarkerForPlayer(i,j,0xE58400AA); // Laranja
                            case 6: SetPlayerMarkerForPlayer(i,j,0xE51E00AA); // Vermelho
                        }
                    }
                }


                else
                {


                    if(distancia <= 200) // Distancia é menor que 200 metros, vamos fazer o jogador sumir no mapa do outro
                    {
                        SetPlayerMarkerForPlayer(i,j,(GetPlayerColor(j) & 0xFFFFFF00));
                    }
                    else // Caso não, ele aparece no mapa
                    {
                        SetPlayerMarkerForPlayer(i,j,GetPlayerColor(j));
                    }
                }
            }
        }
    }
    return 1;
}

Entendendo o Biribondo do código:

Temos uma comparação, de que se o Player (i) estar no time 0 (TEAM_LEI) e o Target (j) não estiver no time 0 (TEAM_LEI), ele vai aparecer segundo as cores do seu Level de procurado. As cores que escolhi foi uma variação entre Amarelo, Laranja e Vermelho.

Bom, é isso ai galera. Fiz o tuto correndo, deve ter uns errinhos básicos ai e algumas coisinhas que dá para arrumar e optimizar mais... Enfim, aprendi isso lendo, vendo e quebrando a cara...

Então, dá para vocês viajarem nesses codes. Dá para fazer que um admin enxergue os players de acordo com a ameaça (Total de Reports), que os players não enxerguem administradores... enfim...

Qualquer erro assustador, é só gritar.


Feito Por: LuaN_

 Ola galera como todos sabe eu DENETHOR fiquei um tempao sem posta nada so vim avisar que é por que tenho um site de Naruto http://www.narutoworld.uni7.net/ e Tenho um Otimao Trabalho para Voce me Amigao KIZANO entre em contato comigo Obrigado vc tem meu MSN vlw

So eu da EXPERT TEMPLATES
Galera Hoje irei postar um Relogio com hora real
e muito bom






PASTEBIN

Está com algum problema nos carros do LARP/GF? eu já tive esse problema, quando você define os veículos, algum outro buga, mais vou ensinar como mudar esse sistema.



Vamos definir o carro da polícia (é a mesma coisa pra todos)

Primeiro, coloque isso no topo do seu GM:

new copcar[23]; //no 23 você põe o número de veículos da organização (conte)

Depois, procure

forward IsACopCar(carid);

Troque o que tem dentro dessa chave por:


for(new i = 0; i < sizeof(copcar); i++) //no CopCar você põe outra coisa se for definir outra gangue
    {
        if(carid == copcar[i])  return 1; //no CopCar você põe outra coisa se for definir outra gangue
    }

Não retire o


return 0;

Agora, vem a parte mais fácil.



Vá até os:


AddStaticVehicleEx

lá estará os veículos, então faça assim:



Digite:


copcar[0] =

Antes dos Veículos policiais

no [0], você vai definindo a cada carro, por exemplo:


copcar[1] =
copcar[2] =

tem que ficar assim (exemplo):


copcar[0] = AddStaticVehicleEx(599,616.1244,-601.7048,17.4214,271.5325, -1, -1, 30000);

Não defina os Veículos que tem funções, ex: Veículos dos Repórteres, Taxis, etc.

ou Se quiser, pode definir, mais terá que definir também nos comandos. foi assim que fiz para os repórteres:

new newcar = GetPlayerVehicleID(playerid);
                if(!IsAReporterCar(newcar))
                {
                    SendClientMessage(playerid, COLOR_LIGHTRED, "Você não está em uma Van/Helicóptero Repórter");
                }

Creditos Para : GuikBretas e Lucas Nicolas 

Google Pluss Youtube Google Pluss