[Ajuda] Sistema.
#1

Galera queria saber como fazer para transformar esse sistema para criar in-game em vez de ter que colocar no Ongamemodeinit .

pawn Код:
stock CreateUlricVehicle(VehicleModel, Float:X1, Float:Y1, Float:Z1, Float:angle, Colour1, Colour2, cost)
{
    new ulric = AddStaticVehicle(VehicleModel, X1, Y1, Z1, angle, Colour1, Colour2);
    DOF2_CreateFile(VFile(ulric));
    VehicleInfo[ulric][ToSell] = 1;
    SetVehicleCost(ulric, cost);
    return 1;
}
Reply
#2

Float:X1, Float:Y1, Float:Z1, Float:angle tu usa GetPlayerPos.
E o resto tu faz por sscanf.
Reply
#3

Um exemplo baseado no comentбrio do Jonathan:
pawn Код:
get_cmd_noparams(cv) {

    new Float:X1, Float:Y1, Float:Z1, Float:angle, Colour1, Colour2;
    if (sscanf(params, "ffffdd"))
        return SendClientMessage(playerid, -1, "/cv [x][y][z][angle][cor 1][cor 2]");

    new ulric = AddStaticVehicle(VehicleModel, X1, Y1, Z1, angle, Colour1, Colour2);
    DOF2_CreateFile(VFile(ulric));
    VehicleInfo[ulric][ToSell] = 1;
    SetVehicleCost(ulric, cost);
    return 1;
}
Utilizando ICMD 8.0 e sscanf.

Abraзos
Reply
#4

Exemplo:

PHP код:
CMD:criarveiculo(playeridparams[])
{
   new 
vehicle,cor1,cor2,preco,Float:xp,Float:yp,Float:zp,Float:A//Varaveis
   
if(sscanf(params"iiii"vehicle,cor1,cor2,preco) return SendClientMessage(playerid, -1"Uso: /criarveiculo [Modelo Veiculo]");
   if(
vehicle 400 || vehicle 611) return SendClientMessage(playerid, -"Vocк deve escolher um modelo entre 400 e 611");// Aqui vocк pode mudar os modelos aceitos pelo Server
   
if(cor1 || cor1 255 || cor2 || cor2 255) return SendClientMessage(playerid, -1"Use uma cor entre 0 e 255");// Aqui estгo todas as cores
   
GetPlayerPos(playeridxpypzp);// Aqui pega a pos do jogador
   
GetPlayerFacingAngle(playeridA);//Aqui pega o Angulo do jogador
   
CreateUlricVehicle(vehiclexpyp+2zp+2Acor1cor2preco)// Aqui cria o carro 
   
return 1;

@Edit
Nгo testei, й sу um exemplo vocк pode por as informaзхes pra somente adm criar e talz
Reply
#5

pawn Код:
/criarveiculo(playerid, params[])
{
   new vehicle,cor1,cor2,preco,Float:xp,Float:yp,Float:zp,Float:A; //Varaveis
   if(sscanf(params, "iiii", vehicle,cor1,cor2,preco) return SendClientMessage(playerid, -1, "Uso: /criarveiculo [Modelo Veiculo]");
   if(vehicle < 400 || vehicle > 611) return SendClientMessage(playerid, -1 , "Vocк deve escolher um modelo entre 400 e 611");// Aqui vocк pode mudar os modelos aceitos pelo Server
   if(cor1 < 0 || cor1 > 255 || cor2 < 0 || cor2 > 255) return SendClientMessage(playerid, -1, "Use uma cor entre 0 e 255");// Aqui estгo todas as cores
   GetPlayerPos(playerid, xp, yp, zp);// Aqui pega a pos do jogador
   GetPlayerFacingAngle(playerid, A);//Aqui pega o Angulo do jogador
   CreateUlricVehicle(vehicle, xp, yp+2, zp+2, A, cor1, cor2, preco)// Aqui cria o carro  
   return 1;
}
O Comando cria o veiculo td certinho mбs o problema й quando reinicia o servidor o carro nгo salva!
Reply
#6

Sim, a stock nгo salva o carro, ai vocк teria que criar um arquivo para os carros para salva-los
Reply
#7

E como seria tem como mandar algum tutorial ou base ?
Reply
#8

Vocк teria que manjar de algo como DOF2, ai entгo com ele vocк ir criando os arquivos de cada carro que vocк crie, usando algum loop para ver quantos carros tem e tal eu aprendi muito com esse tuto Aqui, dк uma olhada nele
Reply
#9

Po cara muito obrigado pela Atenзгo, Estava atй agora dando uma estudada em DOF2 e consegui fazer o sistema de salvamento e carregamento, Se eu precisar de ajuda volto a escrever aqui no Topico, Obrigado!
Reply
#10

Bom eu fiz desse modo.
pawn Код:
CMD:cvc(playerid, params[])
{
    new carputaoSon,vehicle,cor1,cor2,preco,Float:xp,Float:yp,Float:zp,Float:A; //Varaveis
    if(sscanf(params, "iiii", vehicle,cor1,cor2,preco)) return SendClientMessage(playerid, -1, "Uso: /cvc [Modelo Veiculo] [Cor 1] [Cor 2] [Preзo]");
    if(vehicle < 400 || vehicle > 611) return SendClientMessage(playerid, -1 , "Vocк deve escolher um modelo entre 400 e 611");// Aqui vocк pode mudar os modelos aceitos pelo Server
    if(cor1 < 0 || cor1 > 255 || cor2 < 0 || cor2 > 255) return SendClientMessage(playerid, -1, "Use uma cor entre 0 e 255");// Aqui estгo todas as cores
    GetPlayerPos(playerid, xp, yp, zp);// Aqui pega a pos do jogador
    GetPlayerFacingAngle(playerid, A);//Aqui pega o Angulo do jogador
    CreateUlricVehicle(vehicle, xp, yp+2, zp+2, A, cor1, cor2, preco);// Aqui cria o carro
    carputaoSon = GetPlayerVehicleID(playerid);
    GetVehiclePos(carputaoSon, xp, yp, zp);
    GetVehicleZAngle(carputaoSon, A);
    GetVehicleColor(carputaoSon, cor1, cor2);
    Loop(i, MAX_CARROS_SNA, 0)
    {
        format(String, 60, "Concessionaria/CarrosCriadosConceSNA/%d.ini", i);
        if(!DOF2_FileExists(String)) break;//verifica
    }
    DOF2_SetInt(String, "Modelo", vehicle);
    DOF2_SetFloat(String, "X", xp);
    DOF2_SetFloat(String, "Y", yp);
    DOF2_SetFloat(String, "Z", zp);
    DOF2_SetFloat(String, "Angle", A);
    DOF2_SetInt(String, "Cor 1", cor1);
    DOF2_SetInt(String, "Cor 2", cor2);
    DOF2_SetInt(String,"Preзo",preco);
    DOF2_SaveFile();
    return 1;
}

//carregamento

CarregarCarrosDaConceSNA() {
    for(new i = 0; i < sizeof(CarrosInfo); i++)
    {
        format(String,sizeof(String),"Concessionaria/CarrosCriadosConceSNA/%d.ini",i);
        if(DOF2_FileExists(String))
        {
            CarrosInfo[i][Modelofudido] = DOF2_GetInt(String, "Modelo");
            CarrosInfo[i][Xfudido] = DOF2_GetFloat(String, "X");
            CarrosInfo[i][Yfudido] = DOF2_GetFloat(String, "Y");
            CarrosInfo[i][Zfudido] = DOF2_GetFloat(String, "Z");
            CarrosInfo[i][Afudido] = DOF2_GetFloat(String, "Angle");
            CarrosInfo[i][Cor1fudido] = DOF2_GetInt(String, "Cor 1");
            CarrosInfo[i][Cor2fudido] = DOF2_GetInt(String, "Cor 2");
            CarrosInfo[i][Precofudido] = DOF2_GetInt(String, "Preзo");
            CreateUlricVehicle(CarrosInfo[i][Modelofudido], CarrosInfo[i][Xfudido], CarrosInfo[i][Yfudido]+2, CarrosInfo[i][Zfudido]+2, CarrosInfo[i][Afudido], CarrosInfo[i][Cor1fudido], CarrosInfo[i][Cor2fudido], CarrosInfo[i][Precofudido]);
        }
    }
    return 1;
}
Agora queria saber como eu faria um comando para /estacionar o veнculo, com salvamento e carregamento!
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)