Ich erkläre es mal ganz kurz.
Also ich kaufe mir ein Fraktions car.(Siehe Code 1) Alles schon und gut. Ich habe das so gescriptet das nur die Mitglieder der Fraktion das Fahrzeug fahren darf und die anderen werde raus geschmissen.
Wenn ich das Fahrzeug verkaufe und ein Andere(Admin) sich ein Auto Spawnt oder Grade on kommt und seine privat cars spawnen steht da: Du darfst dieses Fahrzeug nicht fahren. und ja das will ich vermeiden.
Also Sprich das die Variable davon gelöscht wird oder wieder frei wird.
Der Stock von Kaufe/Erstellen
stock CFC(model,Float:fx,Float:fy,Float:fz,Float:fa,frak)
{
new SDatei[64];
for(new carid=1;carid<MAX_VEHICLES;carid++)
{
format(SDatei,50,"/fraccar/%d.txt",carid);
if(!fexist(SDatei))
{
dini_Create(SDatei);
dini_IntSet(SDatei,"Model",model);
dini_FloatSet(SDatei,"X",fx);
dini_FloatSet(SDatei,"Y",fy);
dini_FloatSet(SDatei,"Z",fz);
dini_FloatSet(SDatei,"A",fa);
dini_IntSet(SDatei,"Farbe1",ffarben[frak][0]);
dini_IntSet(SDatei,"Farbe2",ffarben[frak][1]);
dini_IntSet(SDatei,"Fraktion",frak);
Frakcar[carid] = CreateVehicle(model,fx,fy,fz,fa,ffarben[frak][0],ffarben[frak][1],-1);
Gas[Frakcar[carid]] = GetGasMax(GetVehicleModel(Frakcar[carid]));
fkennzeichen(carid);
FCInfo[carid][fmodelid] = dini_Int(SDatei,"Model");
FCInfo[carid][fcx] = dini_Float(SDatei,"X");
FCInfo[carid][fcy] = dini_Float(SDatei,"Y");
FCInfo[carid][fcz] = dini_Float(SDatei,"Z");
FCInfo[carid][fca] = dini_Float(SDatei,"A");
FCInfo[carid][Frakid] = dini_Int(SDatei,"Fraktion");
FCInfo[carid][fcc1] = dini_Int(SDatei,"Farbe1");
FCInfo[carid][fcc2] = dini_Int(SDatei,"Farbe2");
return 1;
}
}
return 1;
}
OnPlayerStateChange
for(new pv = 0; pv <MAX_VEHICLES; pv++)
{
if(newcar == Frakcar[pv])
{
if(!IsPlayerInFrac(playerid,FCInfo[IsAFrakcarID(newcar)][Frakid]))
{
RemovePlayerFromVehicle(playerid);
SendClientMessage(playerid,COLOR_LIGHTRED,"Du darfst dieses Fahrzeug nicht fahren.");
}
}
}
Hier der Befehl zum Verkaufen
if(strcmp(cmdtext,"/fsell",true)==0)
{
if(IsPlayerConnected(playerid))
{
if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid,ROT,"Du bist in keinem Fahrzeug!");
new veh;
new blamodel = GetVehicleModel(GetPlayerVehicleID(playerid));
veh = GetPlayerVehicleID(playerid);
for(new i=0;i<MAX_VEHICLES;i++)
{
if(veh == Frakcar[i])
{
if(PlayerInfo[playerid][pLeader] != FCInfo[i][Frakid])
{
SendClientMessage(playerid,ROT,"Du kannst dieses Fahrzeug nicht verkaufen!");
return 1;
}
P_GivePlayerMoney(playerid,Getfpreis(blamodel)/2);
DestroyVehicle(veh);
new SDatei[64];
format(SDatei,50,"/fraccar/%d.txt",i);
dini_Remove(SDatei);
SendClientMessage(playerid,BLAU,"Fahrzeug verkauft!");
}
}
}
return 1;
}
Hat einer eine Lösung wie ich das Anstellen könnte
€:Rechtschreibfehler korigiert