[Ajuda]GangBase da Policia
#9

Й muito simples.

No comeзo de seu gamemode, use um define como este:


pawn Код:
#define POLICIA 121
Pronto, temos um comeзo. Precisamos agora definir os players que serгo da polнcia.
Irei assumir que seu GM tenha uma array de players com o nome PlayerInfo. Caso ela seja diferente, poste no tуpico a sua array que eu ajusto.

Iremos definir quem й policial.
pawn Код:
stock Policia(playerid)
{
    if(PlayerInfo[playerid][pTeam] == POLICIA || GetPlayerTeam(playerid) == POLICIA) return 1;
    return 0;
}
Agora, vamos para os carros.


Primeiro, vocк deve definir os carros.

pawn Код:
stock CarroDaPolicia(carid) // Coloque esta funзгo em qualquer lugar do GM (fora de qualquer funзгo)
{
    for(new i = 0; i < sizeof(carrosdapolicia); i++)
    {
        if(carid == carrosdapolicia[i]) return 1;
    }
    return 0;
}

//Agora, coloque isso em OnGameModeInit:
//Atenзгo. Isso й apenas um exemplo dos carros que vocк pode colocar. Voc~e pode colocar quantos carros quiser.
new carrosdapolicia[10]; //Quantidade de carros. Sempre adicione um a mais que o ъltimo. Exemplo: O ъltimo й o 9, entгo a array deve ter 10 slots.
    carrosdapolicia[0] = AddStaticVehicleEx(599,[PosiзгoX], [PosiзгoY], [PosiзгoZ], [Вngulo],-1,1,3600000); //Police Ranger
    carrosdapolicia[1] = AddStaticVehicleEx(596,[PosiзгoX], [PosiзгoY], [PosiзгoZ], [Вngulo],-1,1,3600000); //Police Car (LSPD)
    carrosdapolicia[2] = AddStaticVehicleEx(472,[PosiзгoX], [PosiзгoY], [PosiзгoZ], [Вngulo],-1,1,3600000); // BARCO LSPD
    carrosdapolicia[3] = AddStaticVehicleEx(430,[PosiзгoX], [PosiзгoY], [PosiзгoZ], [Вngulo],-1,1,3600000); // PREDATOR LSPD
    carrosdapolicia[4] = AddStaticVehicleEx(523,[PosiзгoX], [PosiзгoY], [PosiзгoZ], [Вngulo],-1,1,3600000); //HPV1000
    carrosdapolicia[5] = AddStaticVehicleEx(597,[PosiзгoX], [PosiзгoY], [PosiзгoZ], [Вngulo],-1,1,3600000); //Police Car (SFPD)
    carrosdapolicia[6] = AddStaticVehicleEx(427,[PosiзгoX], [PosiзгoY], [PosiзгoZ], [Вngulo],-1,1,3600000); //Enforcer
    carrosdapolicia[7] = AddStaticVehicleEx(426,[PosiзгoX], [PosiзгoY], [PosiзгoZ], [Вngulo],-1,1,3600000); //Premier
    carrosdapolicia[8] = AddStaticVehicleEx(601,[PosiзгoX], [PosiзгoY], [PosiзгoZ], [Вngulo],-1,1,3600000);//S.W.A.T. Van
    carrosdapolicia[9] = AddStaticVehicleEx(427,[PosiзгoX], [PosiзгoY], [PosiзгoZ], [Вngulo],-1,1,3600000); //Enforcer
Agora temos todos os carros que precisamos. Mas precisamos saber os ID's deles para a checagem.

Apуs vocК checar os id's deles (irei tomar como exemplo que eles sejam do carro ID 15 ao 20.), iremos prosseguir com a checagem.

Vб atй a funзгo OnPlayerStateChange, e coloque isso:
pawn Код:
new vehicle = GetPlayerVehicleID(playerid);
    if(newstate == PLAYER_STATE_DRIVER)
    {
        new vehicleid = GetPlayerVehicleID(playerid);
        if(CarrosDaPolicia(vehicleid))
        {
            if(Policial(playerid))
            {
                SendClientMessage(playerid, 0x0080FFFF, ":: Este veнculo pertence a Polнcia ::");
            }
            else
            {
                SendClientMessage(playerid, 0xAFAFAFFF, "Vocк nгo pode dirigir este carro.!");
                RemovePlayerFromVehicle(playerid);
            }
        }
    }

Temos agora os carrinhos bonitinhos dos policiais. Agora, vamos para a seзгo do Spawn.

Se vocк tem um sistema de login, ache a funзгo, e coloque isto nela:
pawn Код:
if(GetPlayerTeam(playerid) == POLICIA || PlayerInfo[playerid][pTeam] == POLICIA) SetSpawnInfo(playerid, POLICIA, [skin], [Posiзгo do Spawn X], [Posiзгo do Spawn Y] ,[Posiзгo do Spawn Z], [Вngulo], [Arma de Spawn 1], [Muniзгo de Spawn 1], [Arma de Spawn 2], [Muniзгo de Spawn 2], [Arma de Spawn 3], [Muniзгo de Spawn 3]);
E entгo, para salvar as kills, vocк deve navegar atй a funзгo OnPlayerDeath, e colocar isso:
pawn Код:
PlayerInfo[killerid][pKills]++;
Agora, que temos quase tudo pronto, vamos para o /ingressarpolicia.

Em OnPlayerCommandText, adicione isso:
pawn Код:
if(!strcmp(cmd, "/ingressarpolicia", true))
{
    new Float:pos[500][3];
    GetPlayerPos(playerid, pos[playerid][0], pos[playerid][1], pos[playerid][2]);
    if(pos[playerid][0] == [posiзгo x de onde vocк quer que digite o comando] && pos[playerid][1] == [posiзгo y de onde vocк quer que digite o comando] && pos[playerid][2] == [posiзгo z de onde vocк quer que digite o comando])
    {
        if(PlayerInfo[playerid][pKills] < 500) return SendClientMessage(playerid, 0xAFAFAFFF, "Vocк nгo matou gente suficiente pra entrar na polнcia!");
        SetPlayerTeam(playerid, POLICIA);
        SpawnPlayer(playerid);
        return SendClientMessage(playerid, 0xAFAFAFFF, "Vocк agora й um policial!");
    }
    else return SendClientMessage(playerid, 0xAFAFAFFF, "Vocк nгo estб no lugar que ingressa na polнcia!");
    return 1;
}
E este й o bбsico de uma base. Caso queira mais funзхes, me adicione no MSN, e discutiremos sobre.

Espero ter ajudado.
Reply


Messages In This Thread
[Ajuda]GangBase da Policia - by gabrieldefreitas11 - 13.05.2011, 02:48
Re: [Ajuda]GangBase da Policia - by Dr_Pawno - 13.05.2011, 18:33
Re: [Ajuda]GangBase da Policia - by DartakousLien - 13.05.2011, 19:14
Re: [Ajuda]GangBase da Policia - by Dr_Pawno - 14.05.2011, 00:04
Re: [Ajuda]GangBase da Policia - by DartakousLien - 14.05.2011, 11:47
Re: [Ajuda]GangBase da Policia - by Shadoww5 - 14.05.2011, 12:41
Re: [Ajuda]GangBase da Policia - by Shadoww5 - 14.05.2011, 13:03
Re: [Ajuda]GangBase da Policia - by Nake01 - 14.05.2011, 13:31
Re: [Ajuda]GangBase da Policia - by Gamal - 14.05.2011, 16:07
Re: [Ajuda]GangBase da Policia - by Shadoww5 - 14.05.2011, 16:20

Forum Jump:


Users browsing this thread: 1 Guest(s)