Hey Leute ..
Bei Mir buggt mal wieder was
Dieses mal das Knastsystem und der /clear Command!
Clear Befehl :
Der Fehler : Es kommt Immer "Benutzung : /clear [id]"ocmd:clear(playerid,params[])
{
new pID,string[128];
if(sscanf(params,"u",pID))return SendClientMessage(playerid,BLAU,"Benutzung: /clear [playerid]");
if(pID == playerid)return SendClientMessage(playerid,ROT,"Du kannst nicht deine eigene Akte reinigen!");
if(Spieler[playerid][Team] == 1 || Spieler[playerid][Team] == 2 || Spieler[playerid][Team] == 14)
{
SetPVarInt(pID,"Wanted",0);
SetPlayerWantedLevel(pID,0);
format(string,sizeof(string),"Du hast %s seine Akte gereinigt",SpielerName(pID));
SendClientMessage(playerid,HELLBLAU,string);
format(string,sizeof(string),"%s hat deine Akte gereinigt",SpielerName(playerid));
SendClientMessage(pID,HELLBLAU,string);
}
return 1;
}
=============Alles was zum Knast Gehört :
Fehler : Die WAnteds werden nicht Gereinigt und die Zeit läuft nicht ab! Besser Per TV Rüberzuschauen, da es mehrere Enums/Dini daten etc noch gibt. =========================
new jailed[MAX_PLAYERS];
if(Spieler[playerid][JailTime] > 0)
{
ResetPlayerWeapons(playerid);
SetTimerEx("JailTimer", Spieler[playerid][JailTime], 0, "%i", playerid);
if(Spieler[playerid][JailType] == 0)//LSKnastLinks
{
SetPlayerInterior(playerid, 6);
SetPlayerPos(playerid, 264.1042,77.8588,1001.0391);
return 1;
}
else if(Spieler[playerid][JailType] == 1)//LSKnastMitte
{
SetPlayerInterior(playerid, 6);
SetPlayerPos(playerid, 263.9286,82.1553,1000.1721+1);
return 1;
}
else if(Spieler[playerid][JailType] == 2)//LSKnastRechts
{
SetPlayerInterior(playerid, 6);
SetPlayerPos(playerid, 264.5096,87.0414,1000.1336+1);
return 1;
}
}if(strcmp(cmd, "/arrest", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, BLAU, "FEHLER: /arrest [ID/Name]");
return 1;
}
new giveplayerid, string[128];
giveplayerid = ReturnUser(tmp);
if(Spieler[playerid][Team] == 1 || Spieler[playerid][Team] == 2 || Spieler[playerid][Team] == 14 || Spieler[playerid][Team] == 15)
{
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
if(Spieler[giveplayerid][Team] != 1 || Spieler[giveplayerid][Team] != 2)
{
if(IsPlayerInRangeOfPoint(playerid, 30.0, 255.6112,85.3952,1002.4453) || IsPlayerInRangeOfPoint(playerid, 10.0,1565.2869,-1695.0863,5.8906))
{
if(IsPlayerInRangeOfPoint(giveplayerid, 30.0, 255.6112,85.3952,1002.4453) || IsPlayerInRangeOfPoint(giveplayerid, 10.0,1565.2869,-1695.0863,5.8906))
{
if(Spieler[giveplayerid][Wanteds] > 0)
{
new jailt = 0 +random(2);
Spieler[giveplayerid][JailType] = jailt;
Spieler[giveplayerid][Jailed] = 1;
Spieler[playerid][JailTime] = 3*Spieler[playerid][Wanteds];
new moneyss = Spieler[giveplayerid][Wanteds]*2000;
GivePlayerCash(giveplayerid, -moneyss);
GivePlayerCash(playerid, moneyss);
//Spieler[giveplayerid][JailTime] = Spieler[giveplayerid][JailTime]*120000;
if(Spieler[playerid][Team] == 1)
{
format(string, sizeof(string), "<< Officer %s hat den Verbrecher %s eingesperrt >>", SpielerName(playerid), SpielerName(giveplayerid));
}
else if(Spieler[playerid][Team] == 2)
{
format(string, sizeof(string), "<< Agent %s hat den Verbrecher %s eingesperrt >>", SpielerName(playerid), SpielerName(giveplayerid));
}
SendClientMessageToAll(COLOR_RED, string);
SpawnPlayer(giveplayerid);
format(string, sizeof(string), "Du bist nun für %d Minuten im Knast. Das Töten im Knast ist verboten.", Spieler[giveplayerid][JailTime]);
SendClientMessage(giveplayerid, COLOR_RED, string);
SetPVarInt(giveplayerid,"Wanted",0);
}
}
else
{
SendClientMessage(playerid, ROT, "Der Spieler ist nicht in der Nähe des Arrest-Points.");
return 1;
}
}
else
{
SendClientMessage(playerid, ROT, "Du bist nicht in der Nähe des Arrest-Points.");
return 1;
}
}
else
{
SendClientMessage(playerid, ROT, "Der Spieler ist ein Beamter!");
return 1;
}
}
}
}
else
{
SendClientMessage(playerid, ROT, "Du bist kein Beamter.");
return 1;
}
}
return 1;
}
Fehler : Die WAnteds werden nicht Gereinigt und die Zeit läuft nicht ab! Besser Per TV Rüberzuschauen, da es mehrere Enums/Dini daten etc noch gibt. =========================
new jailed[MAX_PLAYERS];
if(Spieler[playerid][JailTime] > 0)
{
ResetPlayerWeapons(playerid);
SetTimerEx("JailTimer", Spieler[playerid][JailTime], 0, "%i", playerid);
if(Spieler[playerid][JailType] == 0)//LSKnastLinks
{
SetPlayerInterior(playerid, 6);
SetPlayerPos(playerid, 264.1042,77.8588,1001.0391);
return 1;
}
else if(Spieler[playerid][JailType] == 1)//LSKnastMitte
{
SetPlayerInterior(playerid, 6);
SetPlayerPos(playerid, 263.9286,82.1553,1000.1721+1);
return 1;
}
else if(Spieler[playerid][JailType] == 2)//LSKnastRechts
{
SetPlayerInterior(playerid, 6);
SetPlayerPos(playerid, 264.5096,87.0414,1000.1336+1);
return 1;
}
}if(strcmp(cmd, "/arrest", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, BLAU, "FEHLER: /arrest [ID/Name]");
return 1;
}
new giveplayerid, string[128];
giveplayerid = ReturnUser(tmp);
if(Spieler[playerid][Team] == 1 || Spieler[playerid][Team] == 2 || Spieler[playerid][Team] == 14 || Spieler[playerid][Team] == 15)
{
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
if(Spieler[giveplayerid][Team] != 1 || Spieler[giveplayerid][Team] != 2)
{
if(IsPlayerInRangeOfPoint(playerid, 30.0, 255.6112,85.3952,1002.4453) || IsPlayerInRangeOfPoint(playerid, 10.0,1565.2869,-1695.0863,5.8906))
{
if(IsPlayerInRangeOfPoint(giveplayerid, 30.0, 255.6112,85.3952,1002.4453) || IsPlayerInRangeOfPoint(giveplayerid, 10.0,1565.2869,-1695.0863,5.8906))
{
if(Spieler[giveplayerid][Wanteds] > 0)
{
new jailt = 0 +random(2);
Spieler[giveplayerid][JailType] = jailt;
Spieler[giveplayerid][Jailed] = 1;
Spieler[playerid][JailTime] = 3*Spieler[playerid][Wanteds];
new moneyss = Spieler[giveplayerid][Wanteds]*2000;
GivePlayerCash(giveplayerid, -moneyss);
GivePlayerCash(playerid, moneyss);
//Spieler[giveplayerid][JailTime] = Spieler[giveplayerid][JailTime]*120000;
if(Spieler[playerid][Team] == 1)
{
format(string, sizeof(string), "<< Officer %s hat den Verbrecher %s eingesperrt >>", SpielerName(playerid), SpielerName(giveplayerid));
}
else if(Spieler[playerid][Team] == 2)
{
format(string, sizeof(string), "<< Agent %s hat den Verbrecher %s eingesperrt >>", SpielerName(playerid), SpielerName(giveplayerid));
}
SendClientMessageToAll(COLOR_RED, string);
SpawnPlayer(giveplayerid);
format(string, sizeof(string), "Du bist nun für %d Minuten im Knast. Das Töten im Knast ist verboten.", Spieler[giveplayerid][JailTime]);
SendClientMessage(giveplayerid, COLOR_RED, string);
SetPVarInt(giveplayerid,"Wanted",0);
}
}
else
{
SendClientMessage(playerid, ROT, "Der Spieler ist nicht in der Nähe des Arrest-Points.");
return 1;
}
}
else
{
SendClientMessage(playerid, ROT, "Du bist nicht in der Nähe des Arrest-Points.");
return 1;
}
}
else
{
SendClientMessage(playerid, ROT, "Der Spieler ist ein Beamter!");
return 1;
}
}
}
}
else
{
SendClientMessage(playerid, ROT, "Du bist kein Beamter.");
return 1;
}
}
return 1;
}