if(!IsPlayerInVehicle(playerid, NRCar[6])){
Das bringt nichts. Wird doch nur abgefragt,ob er im 7. Fahrzeug der NewsReporter sitzt.
Du müsstest also eine Schleife benutzen ( Geht auch ohne,aber ist umständlich ) und auf alle Fahrzeuge im NRCar-Array überprüfen.
ocmd:news(playerid, params[])
{
if(SpielerInfo[playerid][pFrak] !=1) {
return SendClientMessage(playerid, COLOR_RED,"Du bist kein NewsReporter!")
}
new
vehicleid,
bool:bValid = false;
vehicleid = GetPlayerVehicleID(playerid);
if(!vehicleid) { // Sitzt in keinem Fahrzeug
return SendClientMessage(playerid, COLOR_RED,"Du musst in einem NR Fahrzeug sein um senden zu können!");
}
for(new i = 0 ; i < sizeof(NRCar) ; i++) {
if( vehicleid == NRCar[i] ) { // Sitzt in einem NR Fahrzeug
bValid = true;
break; // Wir springen raus aus der Schleife. Denn wir haben bereits wonach wir gesucht haben
}
}
/*
if(!IsPlayerInVehicle(playerid, NRCar[6])) {
return SendClientMessage(playerid, COLOR_RED,"Du musst in einem NR Fahrzeug sein um senden zu können!");
}
*/
if(!bValid) { // Sitzt in keinem NR Fahrzeug
return SendClientMessage(playerid, COLOR_RED,"Du musst in einem NR Fahrzeug sein um senden zu können!");
}
new
string[128], // Man brauch dazu eigentlich keinen Extra String, denn der Text steht doch eh in 'params'
text[128],
name[MAX_PLAYER_NAME];
if(sscanf(params,"s",string)){
return SendClientMessage(playerid, COLOR_GREY,"[Benutzung]: /news [Text]");
}
GetPlayerName(playerid, name, sizeof(name));
format(text, sizeof(text),"[SAM-AG Reporter %s]: %s", name, string);
SendClientMessageToAll(COLOR_ORANGE, text);
return 1;
}
Solltest den Code auch mal richtig einrücken.So blickt doch keiner durch :-0