stock CriarCasa(nome[], Float: X, Float: Y, Float: Z, Preco, Venda)
{
new Arquivo[124];
new ID = ContagemCasas;
new CasaTexto[64];
format(Arquivo, sizeof (Arquivo), "Casas/Casa %d.ini", ID);
ContagemCasas ++;
CasaInfor[ID][PropExist] = 1;
CasaInfor[ID][cStatus] = 1;
CasaInfor[ID][cPos][0] = X;
CasaInfor[ID][cPos][1] = Y;
CasaInfor[ID][cPos][2] = Z;
CasaInfor[ID][cPreco] = Preco;
CasaInfor[ID][cComprada] = Venda;
CasaInfor[ID][cDono] = -1;
format(CasaInfor[ID][cNome], 60, "%s", nome);
CasaPickup[ID] = CreatePickup(1273, 1, X, Y, Z);
format(CasaTexto, sizeof(CasaTexto), "Casa: %d\nNome: %s\nPreco: %d\nStatus: Liberda", ID, CasaInfor[ID][cNome], CasaInfor[ID][cPreco]);
CasaText[ID] = Create3DTextLabel(CasaTexto, 0x00FF00FF, X, Y, Z, 20.0, 0, 0);
DOF2_CreateFile(Arquivo);
DOF2_SetInt(Arquivo, "Casa Existe", CasaInfor[ID][PropExist]);
DOF2_SetInt(Arquivo, "Casa Status", CasaInfor[ID][cStatus]);
DOF2_SetInt(Arquivo, "Casa Preco", CasaInfor[ID][cPreco]);
DOF2_SetInt(Arquivo, "Casa Comprada", CasaInfor[ID][cComprada]);
DOF2_SetString(Arquivo, "Casa Dono", CasaInfor[ID][cDono]);
DOF2_SetString(Arquivo, "Casa Nome", CasaInfor[ID][cNome]);
DOF2_SetFloat(Arquivo, "CasaX", X);
DOF2_SetFloat(Arquivo, "CasaY", Y);
DOF2_SetFloat(Arquivo, "CasaZ", Z);
DOF2_SaveFile();
//SalvarCasas(ID);
return 1;
}
CMD:ccasa(playerid, params[])
{
new preco, status, CasaInf[24];
new ID = ContagemCasas;
new Float:gPos[3];
GetPlayerPos(playerid, gPos[0], gPos[1], gPos[2]);
if(sscanf(params, "id", preco, status))return SendClientMessage(playerid, -1, "Uso: /ccasa [preco][status]");
format(CasaInf, sizeof(CasaInf), "Casa ID: %d", ID);
CriarCasa("Casa Nova", gPos[0], gPos[1], gPos[2], preco, status);
return 1;
}
new totalcasas;
// Quando tiver carregando as casas
++totalcasas;
Vocк pode criar uma variбvel global para contar o total de casas. Quando o servidor й iniciado, quando estiver carregando as casas, essa variбvel vai aumentando. Quando for criar a casa usa a variбvel para pegar o prуximo ID.
Ex: PHP код:
|
Nгo entendi pera, eu vou criar uma var global para controlar a quantidade de casas e vou atribuir valores a essa var de acordo com a quantidade de casas mas isso ja foi feito
|
Crie um var e a cada volta no loop vocк add +1 a variбvel assim vocк vai ter os ids armazenados na variбvel assim vocк cria as casas de acordo com o nъmero obtido exemplo 51 vocк irб criar a casa com o idioma 52.
|
nunca faзam isso.... imagina que por acaso eliminaste a casa id 24 quando tinhas 50 casas, vai te dar 49 casas ao adicionares outra ficas com 2 casas com id 50...
O que tens que fazer й quando carregas as casas vкs qual й o id maior e atribuis esse valor +1 а variбvel global... |
++totalcasas;
// Digamos que "i" seja o ID da casa que estб sendo carregada.
totalcasas = i + 1;
stock AcharID()
{
for(new i = 0; i < MAX_CASAS; ++i)
{
if(Casa[i][Valor] == 0)
{
return i;
}
}
return -1;
}