Hallo Breadfish,
bin dann auch mal auf den Trichter gekommen, ein eigenen Thread aufzumachen anstatt Kleine Scripting Fragen vollzuspammen. Hier ist das Problem etwas größer.
Ich habe ein Fraktautohaus gescriptet, was teils auch wunderbar funktioniert. Allerdings immer nur für ein Fahrzeug, was nämlich das Police Car (596) ist.
Hier erstmal das Array, wo alle Fraktautos drin sind.
new fahCars[][fchInfoEnum] = {
{596,2148.3457,-1148.2457,24.0449,268.3922,50}, // POLICE LSPD CAR PLATZ: 22
{599,2148.1140,-1143.2367,24.5964,269.6135,50}, // POLICE RANGER PLATZ: 24
{523,2148.1277,-1138.4258,25.1168,267.9870,50}, // POLICE HPV PLATZ: 25
{497,2148.8813,-1133.8751,25.1917,267.8968,50}, // POLICE MAVERICK PLATZ: 26
{411,2147.9229,-1203.5190,23.4772,269.6615,50} // INFERNUS PLATZ: 1
};
Werden auch alle erstellt, alles super. Jetzt fahre ich zum Platz hin, steige in das Police Car ein, kaufe es, es wird erstellt, kann es fparken usw. Gehe ich jetzt in irgendein anderes Fahrzeug rein, spuckt er mir in der Konsole folgende Meldung aus:
Es geht also, warum auch immer, nur mit dem einem Fahrzeug.
Alles weitere, was ihr (denke ich mal) braucht:
Enum
enum fchInfoEnum
{
fmodel,
Float:fc_x,
Float:fc_y,
Float:fc_z,
Float:fc_r,
fc_preis,
id_x
}
createFrakCar Funktion
createFrakCar(frakid,modelid,Float:x,Float:y,Float:z,Float:r,f_farbe)
{
for(new i=0;i<sizeof(fcInfo);i++)
{
if(fcInfo[i][id_x]!=0)continue;
fcInfo[i][fbesitzer]=frakid;
fcInfo[i][fc_x]=x;
fcInfo[i][fc_y]=y;
fcInfo[i][fc_z]=z;
fcInfo[i][fc_r]=r;
fcInfo[i][fmodel]=modelid;
switch(frakid) //kein case:0, weil 0 Zivilist ist
{
case 1:
{
f_farbe=-1;
}
case 2:
{
f_farbe=252;
}
}
fcInfo[i][ffarbe]=f_farbe;
fcInfo[i][id_x]=CreateVehicle(modelid,x,y,z,r,f_farbe,-1,60);
saveFrakCarToDB(frakid,i);
return 1;
}
return 1;
}
Danke für jede Hilfe.
mfg.