[Ajuda] Carros e Portгo Para Helpers ?
#1

Seguinte ....
Editei No MTA Os Carros e Um Portгo Para Helpers ...
Sу Preciso Saber Como Faзo Para Os Carros Que Setei Ficarem Sу Para Helper Conseguir Entrar ...
E O Portгo...Como Criar Um CMD Que Faz Pra Ele Abrir e Sу Helpers Poder Abrir ?

Define [phelper]

Abaixo A Listinha Dos Objetos Que Eu Fiz No MTA .. Nгo Sei Se Vai Servir .. Mais Ta Ai :

pawn Код:
//===========      Hq Helpers      ==================================================================================================================================================
    AddStaticVehicleEx(535,1562.8000500,-1897.0999800,13.4000000,270.0000000,98,68,15); //Slamvan
    AddStaticVehicleEx(567,1563.3000500,-1893.0000000,13.5000000,270.0000000,174,155,15); //Savanna
    AddStaticVehicleEx(400,1563.0000000,-1889.0000000,13.7000000,270.0000000,38,55,15); //Landstalker
    AddStaticVehicleEx(500,1562.6999500,-1885.0000000,13.8000000,269.5000000,32,32,15); //Mesa
    AddStaticVehicleEx(495,1573.5000000,-1896.9000200,14.1000000,90.0000000,31,37,15); //Sandking
    AddStaticVehicleEx(424,1573.8000500,-1893.3000500,13.4000000,90.0000000,81,84,15); //BF Injection
    AddStaticVehicleEx(461,1574.5000000,-1884.1999500,13.2000000,90.0000000,109,40,15); //PCJ-600
    AddStaticVehicleEx(463,1574.5999800,-1885.5999800,13.2000000,90.0000000,76,117,15); //Freeway
    AddStaticVehicleEx(581,1574.4000200,-1887.0000000,13.3000000,88.5000000,109,24,15); //BF-400
    AddStaticVehicleEx(471,1574.6999500,-1888.5999800,13.1000000,90.0000000,52,26,15); //Quad
    AddStaticVehicleEx(471,1574.6999500,-1890.6999500,13.1000000,90.0000000,52,26,15); //Quad
    CreateObject(987,1564.5999800,-1882.5999800,13.8000000,0.0000000,0.0000000,180.0000000); //object(elecfence_bar) (1)
    CreateObject(987,1583.2000700,-1882.5999800,13.8000000,0.0000000,0.0000000,179.9950000); //object(elecfence_bar) (4)
    CreateObject(5020,1581.0999800,-1882.4000200,14.2000000,0.0000000,0.0000000,90.0000000); //object(mul_las) (1)
    CreateObject(5020,1588.5000000,-1882.4000200,14.2000000,0.0000000,0.0000000,90.0000000); //object(mul_las) (2)
    CreateObject(5020,1592.8000500,-1882.4000200,14.2000000,0.0000000,0.0000000,90.0000000); //object(mul_las) (3)
    CreateObject(5020,1554.9000200,-1882.4000200,14.3000000,0.0000000,0.0000000,90.0000000); //object(mul_las) (4)
    CreateObject(5020,1547.4000200,-1882.4000200,14.2000000,0.0000000,0.0000000,90.0000000); //object(mul_las) (5)
    CreateObject(5020,1543.6999500,-1882.5000000,14.2000000,0.0000000,0.0000000,90.0000000); //object(mul_las) (6)
    CreateObject(980,1568.1999500,-1882.4000200,15.3000000,0.0000000,0.0000000,0.0000000); //object(airportgate) (1)
    CreateObject(1581,1568.0000000,-1897.9000200,13.0000000,0.0000000,0.0000000,0.0000000); //object(keycard) (2)
Reply
#2

Alguem Me Ajuda ?
Reply
#3

Me Ajudem Pessoal Por Favorrr !
Reply
#4

Cria uma variбvel e faзa a manipulaзгo.

Jб te ajudo, vou criar aqui um exemplo.
pawn Код:
calma i
Reply
#5

Dentro da public OnPlayerStateChange(playerid, newstate, oldstate)

Adcione:

pawn Код:
if(newstate == PLAYER_STATE_DRIVER)
{
if(VeiculosHelper(GetPlayerVehicleID(playerid)))
{
if(//variavel do cargo)
{
}
else
{
RemovePlayerFromVehicle(playerid);
SendClientMessage(playerid,COR,"Erro: Vocк nгo pode pegar esse veнculo!");
}
}
}
No final do GM adcione:

pawn Код:
stock VeiculosHelper(vehicleid)
{
new result;
new model = GetVehicleModel(vehicleid);
switch(model)
{
case idcarro, idcarro, idcarro: result = model;
default: result = 0;
}
Sу uma base msm...
Reply
#6

Fiz pra vocк uma forma usando OnPlayerEnverVehicle, й um simples FS que fiz de testes talvez sirva como exemplo.
Se for testar, precisa da ysi e sscanf.

By [iPs]iShock

pawn Код:
#include                                    < a_samp  >
#include                                    < sscanf2 >
#include                                < YSI\y_commands >


#define MAX_VEHICLE_HELPERS                              (11)

new bool:IsPlayerHelpers[MAX_PLAYERS];
new VeiculoHelpers[MAX_VEHICLE_HELPERS];

public OnFilterScriptInit( ) {
    VeiculoHelpers[0] = AddStaticVehicleEx(535,1562.8000500,-1897.0999800,13.4000000,270.0000000,98,68,15); //Slamvan
    VeiculoHelpers[1] = AddStaticVehicleEx(567,1563.3000500,-1893.0000000,13.5000000,270.0000000,174,155,15); //Savanna
    VeiculoHelpers[2] = AddStaticVehicleEx(400,1563.0000000,-1889.0000000,13.7000000,270.0000000,38,55,15); //Landstalker
    VeiculoHelpers[3] = AddStaticVehicleEx(500,1562.6999500,-1885.0000000,13.8000000,269.5000000,32,32,15); //Mesa
    VeiculoHelpers[4] = AddStaticVehicleEx(495,1573.5000000,-1896.9000200,14.1000000,90.0000000,31,37,15); //Sandking
    VeiculoHelpers[5] = AddStaticVehicleEx(424,1573.8000500,-1893.3000500,13.4000000,90.0000000,81,84,15); //BF Injection
    VeiculoHelpers[6] = AddStaticVehicleEx(461,1574.5000000,-1884.1999500,13.2000000,90.0000000,109,40,15); //PCJ-600
    VeiculoHelpers[7] = AddStaticVehicleEx(463,1574.5999800,-1885.5999800,13.2000000,90.0000000,76,117,15); //Freeway
    VeiculoHelpers[8] = AddStaticVehicleEx(581,1574.4000200,-1887.0000000,13.3000000,88.5000000,109,24,15); //BF-400
    VeiculoHelpers[9] = AddStaticVehicleEx(471,1574.6999500,-1888.5999800,13.1000000,90.0000000,52,26,15); //Quad
    VeiculoHelpers[10] = AddStaticVehicleEx(471,1574.6999500,-1890.6999500,13.1000000,90.0000000,52,26,15); //Quad
    return 1;
}

YCMD:carhelper(playerid,params[],help) {
    SetPlayerPos(playerid,1562.8000500,-1897.0999800,13.4000000);
    return 1;
}

YCMD:sethelper(playerid,params[],help) {
    new bool:ishelper,id;
    if(sscanf(params,"ul",id,ishelper)) return SendClientMessage(playerid,-1,"Use /sethelper <playerid/part name> <true/false>");
    if(ishelper == true)
    {
        IsPlayerHelpers[id] = true;
        SendClientMessage(id,0x00FF00FF,#Vocк foi adicionado ao grupo Helpers!);
    }
    else if(ishelper == false)
    {
        IsPlayerHelpers[id] = false;
        SendClientMessage(id,0xFF0000FF,#Vocк foi removido ao grupo Helpers!);
    }
    return 1;
}


/*
    Nova forma de bloquear a entrada de um player em um veiculo.
    Usando a callback OnPlayerEnterVehicle
    Por: [iPs]iShock
*/


public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger) {
    for(new i; i < MAX_VEHICLE_HELPERS; i++) {
        if(VeiculoHelpers[i] != vehicleid) continue;
        if(vehicleid == VeiculoHelpers[i]) {
            if(IsPlayerHelpers[playerid] == true) {
                SendClientMessage(playerid,-1,#Bem vindo ao veiculo usado por helpers!);
            }
            else {
                SendClientMessage(playerid,-1,#Este veiculo nгo й autorizado para seu uso! <Somente Helpers>);
                TogglePlayerControllable(playerid,false);
                TogglePlayerControllable(playerid,true);
            }
            return 1;
        }
    }
    return 1;
}
Reply
#7

nгo quero corrigir ninguem mais Shocc ficaria menor com isso:
pawn Код:
YCMD:sethelper(playerid,params[],help) {
    new bool:ishelper,id,str[50];
    if(sscanf(params,"il",id,ishelper)) return SendClientMessage(playerid,-1,"Use /sethelper <playerid/part name> <true/false>");
    format(str, sizeof(str), "Vocк foi %s ao grupo Helpers!", (ishelper ? ("adicionado") : ("removido"));
    IsPlayerHelpers[id] = ishelper;
    return 1;
}
Reply
#8

fiz correndo mais deve funcionar tenta aew.

pawn Код:
new VHELP[11];                           // isso no Topo no GM
new pHelp;  // Coloque isso no topo do GM
// Coloque isto na OnGameModeInt
VHELP[0] = AddStaticVehicleEx(535,1562.8000500,-1897.0999800,13.4000000,270.0000000,98,68,15); //Slamvan
VHELP[1] = AddStaticVehicleEx(567,1563.3000500,-1893.0000000,13.5000000,270.0000000,174,155,15); //Savanna
VHELP[2] = AddStaticVehicleEx(400,1563.0000000,-1889.0000000,13.7000000,270.0000000,38,55,15); //Landstalker
VHELP[3] = AddStaticVehicleEx(500,1562.6999500,-1885.0000000,13.8000000,269.5000000,32,32,15); //Mesa
VHELP[4] = AddStaticVehicleEx(495,1573.5000000,-1896.9000200,14.1000000,90.0000000,31,37,15); //Sandking
VHELP[5] = AddStaticVehicleEx(424,1573.8000500,-1893.3000500,13.4000000,90.0000000,81,84,15); //BF Injection
VHELP[6] = AddStaticVehicleEx(461,1574.5000000,-1884.1999500,13.2000000,90.0000000,109,40,15); //PCJ-600
VHELP[7] = AddStaticVehicleEx(463,1574.5999800,-1885.5999800,13.2000000,90.0000000,76,117,15); //Freeway
VHELP[8] = AddStaticVehicleEx(581,1574.4000200,-1887.0000000,13.3000000,88.5000000,109,24,15); //BF-400
VHELP[9] = AddStaticVehicleEx(471,1574.6999500,-1888.5999800,13.1000000,90.0000000,52,26,15); //Quad
VHELP[10] = AddStaticVehicleEx(471,1574.6999500,-1890.6999500,13.1000000,90.0000000,52,26,15); //Quad
CreateObject(987,1564.5999800,-1882.5999800,13.8000000,0.0000000,0.0000000,180.0000000); //object(elecfence_bar) (1)
CreateObject(987,1583.2000700,-1882.5999800,13.8000000,0.0000000,0.0000000,179.9950000); //object(elecfence_bar) (4)
CreateObject(5020,1581.0999800,-1882.4000200,14.2000000,0.0000000,0.0000000,90.0000000); //object(mul_las) (1)
CreateObject(5020,1588.5000000,-1882.4000200,14.2000000,0.0000000,0.0000000,90.0000000); //object(mul_las) (2)
CreateObject(5020,1592.8000500,-1882.4000200,14.2000000,0.0000000,0.0000000,90.0000000); //object(mul_las) (3)
CreateObject(5020,1554.9000200,-1882.4000200,14.3000000,0.0000000,0.0000000,90.0000000); //object(mul_las) (4)
CreateObject(5020,1547.4000200,-1882.4000200,14.2000000,0.0000000,0.0000000,90.0000000); //object(mul_las) (5)
CreateObject(5020,1543.6999500,-1882.5000000,14.2000000,0.0000000,0.0000000,90.0000000); //object(mul_las) (6)
pHelp = CreateObject(980,1568.1999500,-1882.4000200,15.3000000,0.0000000,0.0000000,0.0000000); //object(airportgate) (1)
CreateObject(1581,1568.0000000,-1897.9000200,13.0000000,0.0000000,0.0000000,0.0000000); //object(keycard) (2)

// Na Public OnPlayerCommandText

if (strcmp(cmdtext,"/ahelper", true)==0){
if(PlayerInfo[playerid][phelper] == 1){  // coloque a definiзгo de quem poderб usar o comando
MoveObject(phelp,1568.1999500,-1882.4000200,4.30,3.0); // Aqui coloque as coordenadas de onde o portгo irб X,Y,Z neste caso fiz ele abrindo para baixo sу mudei a 'Z'
SendClientMessage(playerid,0xFFFFFFAA, "[PORTEIRO] O Portгo dos Helpers foi aberto!");  // mensagem que quiser
return 1;
}
}
if (strcmp(cmdtext,"/ahelper", true)==0){
if(PlayerInfo[playerid][phelper] == 1){  // coloque a definiзгo de quem poderб usar o comando
MoveObject(phelp,1568.1999500,-1882.4000200,15.30,3.0); // Aqui coloque as coordenadas de onde o portгo irб X,Y,Z neste caso fiz ele abrindo para baixo sу mudei a 'Z'
SendClientMessage(playerid,0xFFFFFFAA, "[PORTEIRO] O Portгo dos Helpers foi Fechado!");  // mensagem que quiser
return 1;
}
}

// Coloque esta public no GM
public OnPlayerStateChange(playerid, newstate, oldstate)
{

if(newstate == PLAYER_STATE_DRIVER)
{
new vid = GetPlayerVehicleID(playerid);
if(vid == VHELP[0] || vid == VHELP[1] || vid == VHELP[2] || vid == VHELP[3] || vid == VHELP[4] || vid == VHELP[5] || vid == VHELP[6] || vid == VHELP[7] || vid == VHELP[8] || vid == VHELP[9] || vid == VHELP[10]){
if(PlayerInfo[playerid][phelper] == 1){   // Coloque a definiзгode helper aqui
SendClientMessage(playerid,Amarelo,"[INFO] Seja bem vindo Helper.");
} else {
SendClientMessage(playerid,Vermelho,"[ERRO] Vocк nгo й um helper.");
RemovePlayerFromVehicle(playerid);
TogglePlayerControllable(playerid, 1);
}
}
return 1;
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)