09/02/2024 18:39
(Esta mensagem foi modificada pela última vez a: 09/02/2024 18:43 por L10motos.)
Eu não sei se é uma gambiarra, mais funcionou, os veículos das orgs estavam saindo como veículo de inventario do jogador, veiculo proprio, LastVehicleCreated é definida na hora que liga o gamemode, por que é definida? para os veiculos das orgs não serem definidos como veiculo proprio de inventario.
Por que +1 na variavel LastVehicleCreated?
LastVehicleCreated+1
Por que o ID do ultimo veiculo de org criado é armazenado em LastVehicleCreated, adiciona +1 para que o proximo ID não ocupavel seja usado em player_car_vehicle,
Por que <= LastVehicleCreated?
Veiculos antes ou igual ao ID de veiculo de org ae se tiver algum veiculo (player_car_vehicle) que é veiculo proprio, com o ID definido igual LastVehicleCreated, é por que esta invalido o ID, funciona, senta o ID não ocupavel em player_car_vehicle.
O que eu preciso? Eu preciso descobrir um modo de que não faça com que os veiculos não se multipliquem, por que player_car_vehicle é veiculo proprio, se ele já existe não precisa ser criado novamente.
Código PHP:
public OnGameModeInit()
{
for(new f = 1; f < MAX_TEAMS; f++)
{
DestroyDynamicPickup(Org_Pickup[f]);
Org_Pickup[f] = CreateDynamicPickup(1239, 1, Org_EntX[f], Org_EntY[f], Org_EntZ[f]);
DestroyDynamicPickup(Org_SafePickup[f]);
Org_SafePickup[f] = CreateDynamicPickup(1239, 1, Org_X[f], Org_Y[f], Org_Z[f], Org_W[f]);
if(Org_GarageActived[f] == 1)
{
new org_str[128];
Org_GaragePickup[f] = CreateDynamicPickup(1239, 1, Org_GarageX[f], Org_GarageY[f], Org_GarageZ[f]);
format(org_str, sizeof(org_str), "Garagem");
Org_GarageLabel[f] = Text3D:Create3DTextLabel(org_str, -1, Org_GarageX[f], Org_GarageY[f], Org_GarageZ[f], 30, 0, 1);
}
else Org_GaragePickup[f] = CreateDynamicPickup(1239, 1, Org_GarageX[f], Org_GarageY[f], Org_GarageZ[f]);
if(f >= 1 && f < MAX_TEAMS)
{
if(strcmp("Vazio", TeamName(f), true))
{
for(new c = 0; c < MAX_ORG_CARS; ++c)
{
if(400 <= ORG_vMODEL[f][c] <= 611)
{
ORG_VEHICLE[f][c] = CreateVehicleEx(ORG_vMODEL[f][c], ORG_VEHICLE_PX[f][c], ORG_VEHICLE_PY[f][c], ORG_VEHICLE_PZ[f][c], ORG_VEHICLE_PA[f][c], ORG_VEHICLE_C1[f][c], ORG_VEHICLE_C2[f][c], -1);
SetVehicleVirtualWorld(ORG_VEHICLE[f][c], ORG_VEHICLE_WORLD[f][c]);
LinkVehicleToInterior(ORG_VEHICLE[f][c], ORG_VEHICLE_INTERIOR[f][c]);
LastVehicleCreated = ORG_VEHICLE[f][c]; //aqui é definido a variavel
}
}
}
}
}
Por que +1 na variavel LastVehicleCreated?
LastVehicleCreated+1
Por que o ID do ultimo veiculo de org criado é armazenado em LastVehicleCreated, adiciona +1 para que o proximo ID não ocupavel seja usado em player_car_vehicle,
Por que <= LastVehicleCreated?
Veiculos antes ou igual ao ID de veiculo de org ae se tiver algum veiculo (player_car_vehicle) que é veiculo proprio, com o ID definido igual LastVehicleCreated, é por que esta invalido o ID, funciona, senta o ID não ocupavel em player_car_vehicle.
O que eu preciso? Eu preciso descobrir um modo de que não faça com que os veiculos não se multipliquem, por que player_car_vehicle é veiculo proprio, se ele já existe não precisa ser criado novamente.