Hier erstmal mein code:
OnPlayerDeath
SetPVarInt(killerid,"Kills",dini_Int(Spielerdatei,"Kills")+1);
SetPVarInt(playerid,"Tode",dini_Int(Spielerdatei,"Tode")+1);
Die tode zählt er richtig aber die kills iwi nicht
Hier erstmal mein code:
OnPlayerDeath
SetPVarInt(killerid,"Kills",dini_Int(Spielerdatei,"Kills")+1);
SetPVarInt(playerid,"Tode",dini_Int(Spielerdatei,"Tode")+1);
Die tode zählt er richtig aber die kills iwi nicht
du hast beides mal "Spielerdatei"
Aber du brauchst ja 2 Spielerdateien, einmal die vom Killer und die vom Opfer
Wenn du beim Laden des Accounts einfach die Spieler Variable setzt mit PVars,
kannst du es auch so machen
SetPVarInt(killerid, "Kills", GetPVarInt(killerid, "Kills") +1)
ist die einfachste Lösung..
Und sonst musst du nochmal ne extra abfrage machen ob es die Spielerdatei von der "killerid" gibt etc..
MfG
Niko
wenn mir jetzt noch jemand sagen kann wie ich die KD ausrechne (mit pawno) dann bin ich glücklich:)
wer nicht weiß was KD ist (Kill Death quote sprick Kills durch death teilen)
Als Float via Kills / Deaths
@Scripts4Cash: Wiso float?
wie, also die kd= Kills:Tode
also
new Playerinfo[playerid][pKD];=PlayerInfo[playerid][pKills]/Playerinfo[playerid][pTode];
wenn ich das richtig verstanden habe
also du müsstest die Werte noch anpassen
Nein weil INT kann nicht 0.irgendwas sein.
Nur natürliche Zahlen!
@Opa_Schlumps: Ohh :D, ganz vergessen, hab noch testweise gerechnet. Ja dann natürlich float, da gibts glaub sogar ne integrierte Funktion wenn ich mich nicht irre, moment
//edit: hier http://wiki.sa-mp.com/wiki/Floatdiv
also
new kd = floatdiv(kills,tode);
Seit wann kann man denn 0.5 Tode haben?
KD ist die Quote also der durchschnitt der kills in einem leben wenn du also eine KD von 2 hast dann tötest du 2 spieler und stierbst 1 mal
Hier mein bissheriger code:
ocmd:stats(playerid,params)
{
new Float:Kills = GetPlayerScore(playerid); new Float:Tode = GetPVarInt(playerid,"Tode");
new Float:KD = floatdiv(Kills,Tode);
new string[64];
format(string,sizeof(string),"[Kills: %i] [Tode: %i] [KD: %i]",GetPlayerScore(playerid),GetPVarInt(playerid,"Tode"),KD);
SendClientMessage(playerid,COLOR_WHITE,string);
return 1;
}
aber der Durchschnitt ist doch Kills+Tode / 2
ja ich sagde ja so änlich die KD wird errechnet mit Kills / Tode
und das muss ich wissen wie das geht