Message beim Killen wird nicht angezeigt.

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Guten Tag liebe SA:MP Community.


    Ich habe bei meinem neuem Paintballsystem ein kleinen Fehler wo bei ich nicht weiter komme.
    Und zwar sollen den Usern eine Nachricht angezeigt werden wer ist Führung ist.
    Ich habe es getestet aber er zeigt diese Message leider nicht an.


    Hier der Code:


    if(paintball[killerid]>=1)
    {
    new pkstring[75];
    paintballkills[killerid]++;
    format(pkstring,75,"Du hast einen Kill gemacht! (%i)",paintballkills[killerid]);
    SendClientMessage(killerid,grün,pkstring);
    for(new i;i<MAX_PLAYERS;i++)
    {
    if(paintball[i]>=1&&paintball[i]==paintball[killerid]&&paintballkills[i]>=paintballkills[killerid])
    {
    break;
    }
    else if(i==MAX_PLAYERS-1)
    {
    for(new z;z<MAX_PLAYERS;z++)
    {
    if(paintball[z]==paintball[killerid])
    {
    new kstring[200];
    format(kstring,200,"Spieler %s ist in Führung mit %i Kills",SpielerName(killerid),paintballkills[killerid]); //Diese Nachricht wird nicht angezeigt.
    SendClientMessage(z,gelb,kstring);
    SendClientMessage(z,grün,kstring);
    }
    }
    }
    }
    }


    Bitte im Hilfe

  • So müsste es dann ausschauen wobei die Nachricht nur an den Spieler gesendet wird der jemanden gekillt hat, wenn das an alle gesendet werden soll die in der Paintball Arena drin sind musste dann eine Variable den Spielern setzen:
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(!paintball[i]>=1 && !paintball[i]==paintball[killerid] && !paintballkills[i]>=paintballkills[killerid])
    {
    if(paintball[i] == paintball[killerid])
    {
    new kstring[128];
    format(kstring,sizeof(kstring),"Spieler %s ist in Führung mit %i Kills",SpielerName(killerid),paintballkills[killerid]);
    SendClientMessage(i,gelb,kstring);
    }
    }
    }

  • if(paintball[killerid]>=1)
    {
    new pkstring[75];
    paintballkills[killerid]++;
    format(pkstring,75,"Du hast einen Kill gemacht! (%i)",paintballkills[killerid]);
    SendClientMessage(killerid,grün,pkstring);
    new bestPlayer = GetBestPlayer(paintball[killerid]);
    if(bestPlayer == killerid){
    format(pkstring,128,"Spieler %s ist in Führung mit %i Kills",SpielerName(killerid),paintballkills[killerid]); //Diese Nachricht wird nicht angezeigt.
    for(new i;i<MAX_PLAYERS;i++)
    {
    if(paintball[z]==paintball[killerid])
    {
    SendClientMessage(z,grün,pkstring);
    }
    }
    }
    }
    stock GetBestPlayer(arena) {
    new player;
    for(new i;i<MAX_PLAYERS;i++){
    if(paintball[i] != arena)continue;
    if(paintballkills[player] < paintballkills[i]) player = i;
    }
    return i;
    }


    Du solltest erstmal ermitteln wer die meisten kills in der paintballarena hat danach vergleichst du die zwei spieler ob es die selben sind, wenn ja so gibst du die Nachricht aus. Das der Spieler mit ... kills in Führung geht

  • if(paintball[killerid]>=1)
    {
    new pkstring[75];
    paintballkills[killerid]++;
    format(pkstring,75,"Du hast einen Kill gemacht! (%i)",paintballkills[killerid]);
    SendClientMessage(killerid,grün,pkstring);
    new bestPlayer = GetBestPlayer(paintball[killerid]);
    if(bestPlayer == killerid){
    format(pkstring,75,"Spieler %s ist in Führung mit %i Kills",SpielerName(killerid),paintballkills[killerid]); //Diese Nachricht wird nicht angezeigt.
    for(new i;i<MAX_PLAYERS;i++)
    {
    if(paintball[i]==paintball[killerid])
    {
    SendClientMessage(i,grün,pkstring);
    }
    }
    }
    }


    hab vergessen hier das i gegen z zu tauschen



    stock GetBestPlayer(arena) {
    new player,i;
    for(;i<MAX_PLAYERS;i++){
    if(paintball[i] != arena)continue;
    if(paintballkills[player] < paintballkills[i]) player = i;
    }
    return player;
    }

    2 Mal editiert, zuletzt von IPrototypeI ()