Irgendwie bringst du da den Index für VehicleInfo ständig durcheinander.
Mal nutzt du FrakFahrzeugInfo[vehicleid][frakfahrzeug_VehicleID] und mal nur die vehicleid...
Was willst du denn jetzt nutzen?
Kein wunder dass da nichts funktioniert ![]()
Und der String ist auch am Anfang leer, du kannst kein leeres 3DTextLabel erstellen :c
C
ocmd:fk1(playerid,params[])
{
if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER)return SendErrorMessage(playerid,"Du bist nicht der Fahrer eines Fahrzeuges");
new v = GetPlayerVehicleID(playerid),frakVeh = FrakFahrzeugInfo[v][frakfahrzeug_VehicleID];
if(IsNull(params))
{
//Hier hat er nur /fk eingegeben...
if(VehicleInfo[frakVeh][KennungObj] != Text3D:0) Delete3DTextLabel(VehicleInfo[frakVeh][KennungObj]); //Falls es bereits existiert, check ob du es auf 0 oder INVALID gesetzt hast...das solltest du anpassen
else SendInfoMessage(playerid,"/fk [Kennung]"); //Wenn es nicht existiert, gibts auch nichts zu zerstören und die Nachricht kommt
return 1;
}
new string[200],Float:pos[3];
format(VehicleInfo[v][KennungZahl],50, params);
VehicleInfo[frakVeh][KennungObj] = Create3DTextLabel(params, WEISS, 0, 0, 0, 10,-1,0);
GetVehicleModelInfo(GetVehicleModel(frakVeh), VEHICLE_MODEL_INFO_SIZE, pos[0], pos[1], pos[2]);
Attach3DTextLabelToVehicle(VehicleInfo[frakVeh][KennungObj],frakveh, -pos[0]/2.23, -pos[1]/2.23, 0.1);
format(string,sizeof(string),"%s-%s",VehicleInfo[v][Kennung],VehicleInfo[v][KennungZahl]);
Update3DTextLabelText(VehicleInfo[frakVeh][KennungObj], WEISS, string);
return 1;
}
Alles anzeigen
Soo könntest du es z.B. machen..
Aber ich weiß nicht genau, was genau du machen willst bzw welche Indizes richtig sind, da ich deinen Code nicht kenne ![]()