Wieso kommt der Gametext?

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
  • public OnPlayerDeath(playerid, killerid, reason)
    {
    if(playerid==killerid)return 1;
    if(killerid==playerid)return 1;
    new killerstr[128],playeridstr[128];
    format(killerstr,sizeof(killerstr),"~g~Du hast %s gekillt!",playerid);
    format(playeridstr,sizeof(playeridstr),"~r~Du wurdest von %s gekillt!",killerid);
    GameTextForPlayer(playerid,playeridstr,2000,1);
    GameTextForPlayer(playerid,killerstr,2000,1);
    pInfo[playerid][pDeath]++;
    pInfo[killerid][pKill]++;
    return 1;
    }Wenn ich sterbe kommt der GameText warum? obwohl ich returne wenn er sich selber killt oder muss
    if(killerid==INVALID_PLAYER) sein`?


    Guter Support, Gute Preise! Freunde das ist kein Speed das ist Lichtgeschwindigkeit!
    Atrox Devolpment[/size]
    [size=24][color=#ff0000]Kunde | Top WBB Produkte

  • if(playerid != INVALID_PLAYER_ID)Blockiert die Localen Variablen und bringt errors
    C:\Users\Admin\Desktop\PHP-Scripte\DM.pwn(256) : error 003: declaration of a local variable must appear in a compound block
    C:\Users\Admin\Desktop\PHP-Scripte\DM.pwn(256) : error 017: undefined symbol "killerstr"
    C:\Users\Admin\Desktop\PHP-Scripte\DM.pwn(256) : warning 215: expression has no effect
    C:\Users\Admin\Desktop\PHP-Scripte\DM.pwn(256) : error 001: expected token: ";", but found "]"
    C:\Users\Admin\Desktop\PHP-Scripte\DM.pwn(256) : fatal error 107: too many error messages on one line


    Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    4 Errors.


    Guter Support, Gute Preise! Freunde das ist kein Speed das ist Lichtgeschwindigkeit!
    Atrox Devolpment[/size]
    [size=24][color=#ff0000]Kunde | Top WBB Produkte

  • if(playerid != INVALID_PLAYER_ID || playerid != killerid)
    //new killerstr[128],playeridstr[128];
    format(killerstr,sizeof(killerstr),"~g~Du hast %s gekillt!",playerid);
    format(playeridstr,sizeof(playeridstr),"~r~Du wurdest von %s gekillt!",killerid);


    Guter Support, Gute Preise! Freunde das ist kein Speed das ist Lichtgeschwindigkeit!
    Atrox Devolpment[/size]
    [size=24][color=#ff0000]Kunde | Top WBB Produkte

  • Mach daraus das:
    if(playerid != INVALID_PLAYER_ID || playerid != killerid)
    new killerstr[128],playeridstr[128];
    format(killerstr,sizeof(killerstr),"~g~Du hast %s gekillt!",playerid);
    format(playeridstr,sizeof(playeridstr),"~r~Du wurdest von %s gekillt!",killerid);

    05eb03de-9fda-461c-9dfc-834ae5b64e65.png << Server | Home >> 13462590508.png

  • GameTextForPlayer(playerid,playeridstr,2000,1);
    GameTextForPlayer(playerid,killerstr,2000,1);
    Fällt dir da vielleicht ein klitze-kleiner Fehler auf? :)


    Hab ich schon gemacht ich habs nicht kopiert sondern abgeschrieben und Bach det gewohnheit playerid geschrieben.



    //By Handy


    Guter Support, Gute Preise! Freunde das ist kein Speed das ist Lichtgeschwindigkeit!
    Atrox Devolpment[/size]
    [size=24][color=#ff0000]Kunde | Top WBB Produkte

  • Dann machs so:
    public OnPlayerDeath(playerid, killerid, reason)
    {
    if(playerid != killerid && killerid != INVALD_PLAYER_ID)
    {
    new killerstr[128],playeridstr[128];
    format(killerstr,sizeof(killerstr),"~g~Du hast %s gekillt!",playerid);
    format(playeridstr,sizeof(playeridstr),"~r~Du wurdest von %s gekillt!",killerid);
    GameTextForPlayer(playerid,playeridstr,2000,1);
    GameTextForPlayer(playerid,killerstr,2000,1);
    pInfo[playerid][pDeath]++;
    pInfo[killerid][pKill]++;
    }
    return 1;
    }


    Nebenbei bemerkt:
    if(playerid==killerid)return 1;
    if(killerid==playerid)return 1;
    ist doppelt gemoppelt. Wenn playerid gleich die Killerid ist, dann ist das umgekehrt genau so.
    Außerdem sorgt das Return 1; nichts dafür, dass das Script ab dort aufhört zu arbeiten sondern dass der weitere Code ausgeführt wird.