Hallo leute.
Ich habe mal ein paar Fragen bezüglich meines Wanted System.
Erstens soll der Spieler wenn er disconnected und in der Nähe eines Cops der Duty ist automatisch in den Knast kommen, leider funktioniert es nicht denn er wird ganz normal gespawnt.
if(SpielerInfo[playerid][pWanteds] > 0)
{
if(teaminrangeofpoint(1)) {
format(wstring, sizeof(wstring), "%s wurde durch ausloggen Verhaftet!",SpielerName(playerid));
SendClientMessage(playerid, info, wstring);
SpielerInfo[playerid][pKnast] = 1;
SpielerInfo[playerid][pWanteds] = 0;
SetPlayerWantedLevel(playerid, 0); }
}
stock teaminrangeofpoint(frakid) {
new count, i, Float:pos[3];
for(; i < MAX_PLAYERS;i++) {
if(IsPlayerInRangeOfPoint(i, 20.0, pos[0], pos[1], pos[2])) continue;
if(SpielerInfo[i][pTeam] == frakid && SpielerInfo[i][pDuty]) count ++;
}
return count;
}
Dann möchte ich mein Wanted System so aufbauen:
Insgesammt kann man 25 "Wanteds" bekommen, insgesammt sind das dann 6 Sterne
1-4 Wanteds - 1 Stern
5-9 Wanteds - 2 Sterne
10 - 14 Wanteds - 3 Sterne
15 - 19 Wanteds - 4 Sterne
20-24 Wanteds - 5 Sterne
25 - ... 6 Sterne
Ab 25 Wanteds ist klar bleibt man bei 6 Sternen.
Ich habe mein Befehl jetzt erstmal so gemacht:
ocmd:wanted(playerid,params[])//wanted
{
if(SpielerInfo[playerid][pTeam] == 1)
{
new wanteds,pID;
new Wanted[128],Cop[128],Verbrecher[128],reason[128];
if(sscanf(params,"uis",pID,wanteds,reason))return SendClientMessage(playerid,info,"/wantedtest [Spieler] [Wantedzahl] [Grund]");
if(wanteds<1||wanteds>25)return SendClientMessage(playerid,error,"Du kannst nur minimal 1 Wanted oder maximal 25 Wanteds geben!");
SetPlayerWantedLevel(pID, GetPlayerWantedLevel(pID)+wanteds);
SpielerInfo[pID][pWanteds] = GetPlayerWantedLevel(pID);
format(Cop,sizeof(Cop)," Du hast %s Wanteds gegeben. Grund %s",SpielerName(pID),wanteds,reason);
format(Verbrecher,sizeof(Verbrecher)," %s hat dir %i Wanteds Gegeben. Grund: %s",SpielerName(playerid),wanteds,reason);
format(Wanted,sizeof(Wanted), "Nun ist dein Wantedlevel auf %i gestiegen!",GetPlayerWantedLevel(pID));
SendClientMessage(playerid,cop,Cop);
SendClientMessage(pID,info,Verbrecher);
SendClientMessage(pID,warn,Wanted);
SavePlayer(pID);
}
else
{
SendClientMessage(playerid,error,"Du bist kein Polizist!");
}
return 1;
}
Jedoch will ich es ja so einteilen wie oben beschrieben und auch beim Spawn sollen die Sterne in dem System angezeigt werden.
Leider weiß ich nicht wie es am besten geht.
Ich könnte zwar eine Abfrage machen wie viele er hat und wenn es 1 - 4 ist dann ein Stern ...
Aber würde es nicht noch einfacher gehen?
Und kann mir einer ein Beispiel geben, wie ich den Knast befehl mache?
Und wie ich die Zeit dann in der DB speichere und beim login dann Abfrage und in einen Timer oder so setzen und wie ich das alles halt am besten mache.
Wichtiges was ihr braucht:
SpielerInfo[playerid][pKnast]
SpielerInfo[playerid][pKnastzeit]
SpielerInfo[playerid][pWanteds]
Danke für jede Hilfe!
Mit freundlichen Grüßen
TV
Jeffry: