Hallo
Ich möchte, dass der Player in der Nähe des Cops sein muss, damit er eingesperrt werden kann. Wie kann ich die Koordinaten von der "id" auslesen ? So wie ich probiert habe, geht es nicht, da id eine Zahl ist und nicht alle Koordnaten ausgelesen werden können . Muss ich irgendwie die Koordinaten definieren und dann auslesen ?
dcmd_einsperren(playerid, params[])
{
new id, price, time;
if(sscanf(params, "uii", id, price, time)) SendClientMessage(playerid, COLOR_WHITE, "Verwendung: /einsperren [ID] [Preis] [Zeit]");
else if(!GetPlayerFraktion(playerid, 2)) SendClientMessage(playerid, COLOR_GREY, "Nur für Polizisten");
else if(PlayerInfo[playerid][pDuty] == 0) SendClientMessage(playerid, COLOR_GREY, "Du bist nicht im Dienst.");
else if(id == INVALID_PLAYER_ID || id == playerid || IsPlayerNPC(id)) SendClientMessage(playerid, COLOR_GREY, "Spieler kann nicht eingesperrt werden.");
else if(!IsPlayerInRangeOfPoint(playerid, 8.0, 268.0161, 77.9018, 1001.0391) && !IsPlayerInRangeOfPoint(playerid, 8.0, 1568.6473,-1694.1110,5.8906)) SendClientMessage(playerid, COLOR_GREY, "Du bist nicht beim Gefängnis.");
else if(!IsPlayerInRangeOfPoint(playerid, 10.0, id)) SendClientMessage(playerid,COLOR_GREY, "Diese ID befindet sich nicht in deiner Nähe");
else if(GetPlayerFraktion(id, 2) || GetPlayerFraktion(id, 3)) SendClientMessage(playerid, COLOR_GREY, "Du kannst keinen Polizisten/Bundespolizisten einsperren.");
else if(price < 1 || price > 300001) SendClientMessage(playerid, COLOR_GREY, "Der Preis muss zwischen $1 und $300000 sein.");
else if(time < 1 || time > 300) SendClientMessage(playerid, COLOR_GREY, "Die Knastzeit muss zwischen 1 und 300 Minuten liegen.");
else
{
new Float:sX, Float:sY, Float:sZ;
GetPlayerPos(id, sX, sY, sZ);
if(IsPlayerInRangeOfPoint(id, 6.0, sX, sY, sZ))
{
if(PlayerInfo[id][pWanteds] > 0)
{
new str[256];
ResetPlayerWeapons(id);
JB_GivePlayerMoney(id, -price);
SetPlayerInterior(id, 6);
JB_SetPlayerPos(id, 265.5000, 77.8254, 1001.0391);
PlayerInfo[playerid][pJPoints] += 1;
PlayerInfo[id][pKnastzeit] = time * 60;
PlayerInfo[id][pJailed] = 1;
PlayerInfo[id][pKnast] += 1;
PlayerInfo[id][pWanteds] = 0;
format(str, sizeof(str), "Du wurdest für $%d und %d Minuten in den Knast gesperrt.",price,time);
SendClientMessage(id, COLOR_RED, str);
SendClientMessage(playerid, COLOR_GREEN, "Der Spieler wurde erfolgreich eingesperrt.");
format(str, sizeof(str), "~r~K~w~nast...");
GameTextForPlayer(id, str, 5000, 5);
return 1;
}
else
{
SendClientMessage(playerid, COLOR_GREY, "Dieser Spieler hat keine Wanteds.");
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, "Dieser Spieler ist nicht in deiner Nähe.");
return 1;
}
}
return 1;
}
MfG dUDALUS