Guten Tag
und zwar Arbeite ich gerade an einem Job System was auf mysql bassiert, damit ich nun nicht für jeden Job eine Tabble anlegen muss, habe ich nur eine angelegt wo Jobname und Position festgelegt werden, dan beim laden werden die Autos in die Variable jobcar geladen.
So nun aber zu meinem Problem. Und zwar habe ich ein problem mit meinem /startjob befehl irgentwie will er einfach nicht so richtig. Er bringt mir nur immer das es kein Job Auto wäre.
Hier mal mein Job System
//Code um die Job Autos zu laden (Funktioniert)
stock load_jobcars()
{
new query[128],data[25],count[11],i = 0;
format(count,sizeof(count),"%i",MAX_JOB_CARS);
format(query,sizeof(query),"SELECT `job`,`modelid`,`jobcar_posx`,`jobcar_posy`,`jobcar_posz`,`jobcar_posa` FROM `job_cars` LIMIT %s",count);
mysql_query(query);
mysql_store_result();
while(mysql_fetch_row_format(data, "|")) {
i++;
sscanf(data, "p<|>s[80]iffff", JobCarInfo[i][job],JobCarInfo[i][ModelId],JobCarInfo[i][jobcar_posx],JobCarInfo[i][jobcar_posy],JobCarInfo[i][jobcar_posz],JobCarInfo[i][jobcar_posa]);
jobcar[i] = CreateVehicle( JobCarInfo[i][ModelId],JobCarInfo[i][jobcar_posx],JobCarInfo[i][jobcar_posy],JobCarInfo[i][jobcar_posz],JobCarInfo[i][jobcar_posa],1,1,-1);
}
mysql_free_result();
return 1;
}
//Code für dir abfrage ob es Job Auto ist (
Funktioniert
)
stock isJobCar(carid)
{
for(new i = i; i <= MAX_JOB_CARS; i++) {
if(carid == jobcar[i]) {
return 1;
}
}
return 0;
}
//Code für die abfrage ob Player den Job hat ( Funktioniert da sonst der Text beim einsteiigen nicht kommen würde)
stock isPlayerJob(playerid,jobs[]) { if(IsPlayerConnected(playerid)) { if(!strcmp(PlayerInfo[playerid][pjob],jobs,true)) return 1; } return 0;}
//Code beim einsteigen des Autos ( Funktioniert )
for(new i = 0; i <= MAX_JOB_CARS; i++) {
if(vehicleid == jobcar[i]) {
new carjob[80];
format(carjob,sizeof(carjob),"%s",JobCarInfo[i][job]);
if(isPlayerJob(playerid,carjob)) {
SendClientMessage(playerid,Color_Info,"/startjob");
} else {
new string[128];
format(string,sizeof(string),"Du bist kein %s",JobCarInfo[i][job]);
SendClientMessage(playerid,Color_Error,string);
}
}
}
//Startjob befehl ( Funktioniert nicht kommt nur Ist kein Job Auto)
ocmd:startjob(playerid,params[])
{
if(IsPlayerConnected(playerid)) {
if(IsPlayerInAnyVehicle(playerid)) {
new veh;
veh = GetPlayerVehicleID(playerid);
if(isJobCar(veh)) {
new carjobname[80],error[80];
format(carjobname,sizeof(carjobname),"%s",JobCarInfo[veh][job]);
if(isPlayerJob(playerid,carjobname)) {
SendClientMessage(playerid,Color_Info,"Fahre nun die Checkpunkte ab.");
} else {
format(error,sizeof(error),"Das ist kein %s",JobCarInfo[veh][job]);
SendClientMessage(playerid,Color_Error,error);
}
} else {
SendClientMessage(playerid,Color_Error,"Das ist kein Job Auto");
}
}
}
return 0;
}
So hoffe hab jetzt nichts ausgelassen doch soweit funktioniert das Job System ja, nur der Startjob macht probleme.
Habe auch schon nut printf geprüft ob die carid stimmt und muss sagen sie stimmen überein.
Hoffe ihr könnt mir weiterhelfen, werde es natürlich trotzdem weiter versuchen selbst zu lösen :).