Zdravíčko.
Robím si kód na carpickup čo znamená, že keď hráč do toho vojde, dá mu to auto.
No lenže chybička sa vnorila.
Ide o to, že to mám tak spravené, že si môžem spraviť naraz 3 pickupy a iným príkazom ich zničiť.
Ale keď si spravím pickup 2 a vymažem príkazom 1 pickup, vymaže vždy ten, ktorý bol naposledy vytvorený.
A keď si vytvorím 2 pickupy, tak ten, čo je starší mi nespawne auto. Tu sú kódy.
Premenne:
new pickupcar[6];
new Float:specposx[MAX_PLAYERS],Float:specposy[MAX_PLAYERS],Float:specposz[MAX_PLAYERS];
new actioncar[3][MAX_PLAYERS];Príkazy:
CMD:carpickup (playerid,params[])
{
new id,pickup;
if(PlayerData[playerid][pAdmin] < 1) return SendClientMessage(playerid, COLOR_BRIGHTRED,"[ ! ]{FFFFFF} Nemáte administrátorske práva!");
else if(sscanf(params,"ii",pickup,id)) return SendClientMessage(playerid, COLOR_BRIGHTRED,"[ ! ]{FFFFFF} Použi: /carpickup [Cislo] [ID auta]!");
else if(pickup > 3) return SendClientMessage(playerid, COLOR_BRIGHTRED,"[ ! ]{FFFFFF} Viac pickupou ako 3 nemôžeš spravi!");
if(pickup == 1)
{
GetPlayerPos(playerid,carpickx[0],carpicky[0],carpickz[0]);
pickupcar[1] = CreatePickup(3594,1,carpickx[0],carpicky[0],carpickz[0]);
pickupcar[0] = id;
return 0;
}
if(pickup == 2)
{
GetPlayerPos(playerid,carpickx[1],carpicky[1],carpickz[1]);
pickupcar[3] = CreatePickup(3594,1,carpickx[1],carpicky[1],carpickz[1]);
pickupcar[2] = id;
return 0;
}
if(pickup == 3)
{
GetPlayerPos(playerid,carpickx[2],carpicky[2],carpickz[2]);
pickupcar[5] = CreatePickup(3594,1,carpickx[2],carpicky[2],carpickz[2]);
pickupcar[4] = id;
return 0;
}
return 1;
}
CMD:destroycarpickup (playerid,params[])
{
new pickup;
if(PlayerData[playerid][pAdmin] < 1) return SendClientMessage(playerid, COLOR_BRIGHTRED,"[ ! ]{FFFFFF} Nemáte administrátorske práva!");
else if(sscanf(params,"i",pickup)) return SendClientMessage(playerid, COLOR_BRIGHTRED,"[ ! ]{FFFFFF} Použi: /destroycarpickup [Cislo]!");
if(pickup == 1) return DestroyPickup(pickupcar[1]);
if(pickup == 2) return DestroyPickup(pickupcar[3]);
if(pickup == 3) return DestroyPickup(pickupcar[5]);
return 1;
}OnPlayerPickUpPickup:
if(pickupid == pickupcar[1])
{
actioncar[0][playerid] = CreateVehicle(pickupcar[0], carpickx[0], carpicky[0], carpickz[0], 0.0, -1, -1, -1);
SetVehicleVirtualWorld(actioncar[0][playerid],GetPlayerVirtualWorld(playerid));
PutPlayerInVehicle(playerid,actioncar[0][playerid],0);
}
if(pickupid == pickupcar[3])
{
actioncar[1][playerid] = CreateVehicle(pickupcar[2], carpickx[1], carpicky[1], carpickz[1], 0.0, -1, -1, -1);
SetVehicleVirtualWorld(actioncar[1][playerid],GetPlayerVirtualWorld(playerid));
PutPlayerInVehicle(playerid,actioncar[1][playerid],0);
}
if(pickupid == pickupcar[5])
{
actioncar[2][playerid] = CreateVehicle(pickupcar[4], carpickx[2], carpicky[2], carpickz[2], 0.0, -1, -1, -1);
SetVehicleVirtualWorld(actioncar[2][playerid],GetPlayerVirtualWorld(playerid));
PutPlayerInVehicle(playerid,actioncar[2][playerid],0);
}Za každú pomoc diky ...