Concessionaria para meu GM -
Marlon307 - 16.12.2014
Estou criando uma Concessionaria para meu GM e estou em duvida em fazer uma parte.
Para explicar melhor a Concessionaria que estou criando, "Vip's" e "Admins" terгo direito a 10 carros, isso quer dizer que minha Concessionaria vai criar um arquivo com o nome do player mais o numero do veнculos que o player pode ter ex:"Nome_0,Nome_1,Nome_2 .etc" "Nome_numero do veiculo do player". E estou com o problema na parte da numeraзгo. O que eu fiz ta ficando assim cria o primeiro arquivo "Nome_0" ai cria ate o numero dez "Nome_10" que й o mбximo, ai se o player vende o carro de numero 7 "Nome_7", e comprar outro carro de novo o arquivo "Nome_7"nгo aparece. Entгo o que estou querendo fazer e quando o player for comprar outro carro que criasse o "Nome_7" que foi apagado ou outros que tambйm foram.
Re: Concessionaria para meu GM -
zGuigui2068 - 16.12.2014
manda o codigo, a galera vai pedi para te ajudar (eu acho)
Re: Concessionaria para meu GM -
ipsLuan - 16.12.2014
Cadк o cуdigo?
Re: Concessionaria para meu GM -
Marlon307 - 16.12.2014
Esta aki
pawn Код:
#include <a_Samp>
#include <DOF2>
#define PASTA_CONCE "/Conce/%.ini"
#define MAX_VEHICLE_VIP 10
new Float:RequestConceSf[5][4] =
{
{-1958.1014,301.7753,35.1968,126.0418},
{-1957.5437,276.8116,35.1958,136.7501},
{-1948.2711,263.7450,35.1968,112.9527},
{-1947.9272,264.3204,40.7781,48.4357},
{-1955.6560,295.3828,40.7741,138.5161}
};
new Placas[] =
{
9123,
2345,
9990,
1223,
8756,
7899,
1234,
2912,
7707,
7777,
9999,
3455,
6543,
5902,
7699,
1010,
1352,
9756,
8910,
1040,
1543,
6655,
1025,
4318
};
enum pIConce
{
Modelo,
Float:pX,
Float:pY,
Float:pZ,
Float:pA,
Dono[24],
Placa[15],
Cor1,
Cor2
};
new vConce[MAX_VEHICLE_VIP][pIConce];
stock CriaveiculoConce(playerid)
{
new pName[MAX_PLAYER_NAME], file[100],file2[100], proximov,
randPlaca = random(sizeof(Placas)), placa[15],rand = random(sizeof(RequestConceSf));
GetPlayerName(playerid, pName, MAX_PLAYER_NAME);
format(file, sizeof(file), PASTA_CONCE, pName,proximov);
if(DOF2::FileExists(file))
{
proximov++;
DOF2::CreateFile(file);
}
format(file2, sizeof(file2), PASTA_CONCE, pName,proximov);
DOF2::CreateFile(file2);
{
format(placa, sizeof(placa),"BCL - %d", Placas[randPlaca]);
vConce[playerid][Modelo] = ModeloConceVeiculo[playerid];
DOF2::SetInt(file,"Modelo", vConce[playerid][Modelo]);
vConce[playerid][pX] = RequestConceSf[rand][0];
DOF2::SetFloat(file,"pX",vConce[playerid][pX]);
vConce[playerid][pY] = RequestConceSf[rand][1];
DOF2::SetFloat(file,"pY",vConce[playerid][pY]);
vConce[playerid][pZ] = RequestConceSf[rand][2];
DOF2::SetFloat(file,"pZ",vConce[playerid][pZ]);
vConce[playerid][pA] = RequestConceSf[rand][3];
DOF2::SetFloat(file,"pA",vConce[playerid][pA]);
vConce[playerid][Dono] = pName;
DOF2::SetString(file,"Dono",vConce[playerid][Dono]);
vConce[playerid][Placa] = placa;
DOF2::SetString(file,"Placa", placa);
vConce[playerid][Preco] = vVeiculo(ModeloConceVeiculo[playerid]) / 2;
DOF2::SetInt(file,"Preco",vConce[playerid][Preco]);
vConce[playerid][Cor1] = random(128);
DOF2::SetInt(file,"Cor1",vConce[playerid][Cor1]);
vConce[playerid][Cor2] = random(128);
DOF2::SetInt(file,"Cor2",vConce[playerid][Cor2]);
vConce[playerid][Modelo] = CreateVehicle(vConce[playerid][Modelo],vConce[playerid][pX],vConce[playerid][pY],vConce[playerid][pZ],vConce[playerid][pA],vConce[playerid][Cor1],vConce[playerid][Cor2],-1);
SetVehicleNumberPlate(vConce[playerid][Modelo], vConce[playerid][Placa]);
PutPlayerInVehicle(playerid, vConce[playerid][Modelo], 0);
GivePlayerGrana(playerid, -vVeiculo(ModeloConceVeiculo[playerid]));
SendClientMessage(playerid, Verde, "Veiculo Comprado.");
ModeloConceVeiculo[playerid] = 0;
}
return 1;
}
public OnFilterScriptInit()
{
print("\n--------------------------------------");
print(" Blank Filterscript by your name here");
print("--------------------------------------\n");
return 1;
}
public OnFilterScriptExit()
{
DOF2::Exit();
return 1;
}
Editado para o cod completo
Re: Concessionaria para meu GM -
MultiKill - 16.12.2014
Se eu entendi direito, vocк pode fazer o seguinte: na hora de criar os arquivos, colocar um linha no arquivo indicando se o carro foi vendido ou nгo:
pawn Код:
Deletado = 0
// caso nгo foi vendido й 0 e caso foi 1
E quando ele vender em vez de apagar o arquivo mudar esta indicaзгo para 1, e depois quando comprar outro fazer uma verificaзгo abrindo todos os arquivos e ver se algum foi vendido, e caso achar um alterar estб linha e outras linhas do arquivo.
Re: Concessionaria para meu GM -
ipsLuan - 16.12.2014
Ainda nгo entendi...
Й pra criar o arquivo com o prуximo carro dele ou pra criar com o carro passado?
Explica mais, estou com algumas dъvidas em relaзгo a isto.
Re: Concessionaria para meu GM -
Marlon307 - 16.12.2014
Quote:
Originally Posted by xCR7
Ainda nгo entendi...
Й pra criar o arquivo com o prуximo carro dele ou pra criar com o carro passado?
Explica mais, estou com algumas dъvidas em relaзгo a isto.
|
E o seguinte tenho uma ordem de arquivos de 1 a 10 "1,2,3,4,5,6,7,8,9,10" se eu tiro alguns arquivos ex:"1,2,3,9,10". Eu quero dizer que quero repor os arquivos na ordem certa de vez renomear colocar o "4,5,6,7,8"
Re: Concessionaria para meu GM -
humildadeforever - 16.12.2014
Quote:
Originally Posted by Marlon307
Esta aki
pawn Код:
#include <a_Samp> #include <DOF2>
#define PASTA_CONCE "/Conce/%.ini" #define MAX_VEHICLE_VIP 10
enum pIConce { Modelo, Float:pX, Float:pY, Float:pZ, Float:pA, Dono[24], Placa[15], Cor1, Cor2 }; new vConce[MAX_VEHICLE_VIP][pIConce];
stock CriaveiculoConce(playerid) { new pName[MAX_PLAYER_NAME], file[100],file2[100], proximov; GetPlayerName(playerid, pName, MAX_PLAYER_NAME);
format(file, sizeof(file), PASTA_CONCE, pName,proximov); if(DOF2::FileExists(file)) { proximov++; DOF2::CreateFile(file); } format(file2, sizeof(file2), PASTA_CONCE, pName,proximov); DOF2::CreateFile(file2); { format(placa, sizeof(placa),"BCL - %d", Placas[randPlaca]); vConce[playerid][Modelo] = ModeloConceVeiculo[playerid]; DOF2::SetInt(file,"Modelo", vConce[playerid][Modelo]); vConce[playerid][pX] = RequestConceSf[rand][0]; DOF2::SetFloat(file,"pX",vConce[playerid][pX]); vConce[playerid][pY] = RequestConceSf[rand][1]; DOF2::SetFloat(file,"pY",vConce[playerid][pY]); vConce[playerid][pZ] = RequestConceSf[rand][2]; DOF2::SetFloat(file,"pZ",vConce[playerid][pZ]); vConce[playerid][pA] = RequestConceSf[rand][3]; DOF2::SetFloat(file,"pA",vConce[playerid][pA]); vConce[playerid][Dono] = pName; DOF2::SetString(file,"Dono",vConce[playerid][Dono]); vConce[playerid][Placa] = placa; DOF2::SetString(file,"Placa", placa); vConce[playerid][Preco] = vVeiculo(ModeloConceVeiculo[playerid]) / 2; DOF2::SetInt(file,"Preco",vConce[playerid][Preco]); vConce[playerid][Cor1] = random(128); DOF2::SetInt(file,"Cor1",vConce[playerid][Cor1]); vConce[playerid][Cor2] = random(128); DOF2::SetInt(file,"Cor2",vConce[playerid][Cor2]);
vConce[playerid][Modelo] = CreateVehicle(vConce[playerid][Modelo],vConce[playerid][pX],vConce[playerid][pY],vConce[playerid][pZ],vConce[playerid][pA],vConce[playerid][Cor1],vConce[playerid][Cor2],-1); SetVehicleNumberPlate(vConce[playerid][Modelo], vConce[playerid][Placa]); PutPlayerInVehicle(playerid, vConce[playerid][Modelo], 0); GivePlayerGrana(playerid, -vVeiculo(ModeloConceVeiculo[playerid])); SendClientMessage(playerid, Verde, "Veiculo Comprado."); ModeloConceVeiculo[playerid] = 0; } return 1; }
|
Ao invйs de utilizar 'proximov', vocк pode fazer isso com loop. Daн se tiver o carro 1, 2, 4, 5, 7, 9 e 10, ao rodar o loop ele vai criar o 3. Mas aн vocк terб que usar um 'break' senгo nгo vai dar muito certo.
Re: Concessionaria para meu GM -
Marlon307 - 16.12.2014
Quote:
Originally Posted by humildadeforever
Ao invйs de utilizar 'proximov', vocк pode fazer isso com loop. Daн se tiver o carro 1, 2, 4, 5, 7, 9 e 10, ao rodar o loop ele vai criar o 3. Mas aн vocк terб que usar um 'break' senгo nгo vai dar muito certo.
|
Me ensina a fazer isso. por favor
Re: Concessionaria para meu GM -
ipsLuan - 16.12.2014
Nгo sei se a minha lуgica estб certa, mas isso pode te ajudar em algo.
pawn Код:
for(new vehicle=0; vehicle < 11; vehicle++) {
if(ExistirVeiculo(vehicle) {
printf("%d jб existe", vehicle);
else return printf("%d ainda nгo existe", vehicle);
}
return 1;
}