Server geht bei Schlag aus

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 Abend liebe Community,
    ich habe ein Problem mit meinem Script.
    Undzwar ist es so.
    Wenn ich jemanden schlage soll sein Team geswitcht werden.
    Soweit, sogut aber leider geht der Server einfach off wenn man jemanden schlägt.
    Hilfe? :O


    OnPlayerGiveDamage

    public OnPlayerGiveDamage(playerid, damagedid, Float: amount, weaponid)
    {
    new string[256], attackierter[MAX_PLAYER_NAME], angreifer[MAX_PLAYER_NAME];
    GetPlayerName(playerid, angreifer, sizeof (angreifer));
    GetPlayerName(damagedid, attackierter, sizeof (attackierter));
    if(GetPlayerTeam(playerid) == TEAM_INFIZIERT)
    {
    if(GetPlayerTeam(damagedid) != TEAM_INFIZIERT)
    {
    SetPlayerSpecialAction(playerid, 25);
    ApplyAnimation(damagedid,"CRACK","crckdeth2",4.0,1,0,0,0,5000,0);
    SetTimer("BlutStillen", 3000, false);
    GivePlayerHealth(playerid,10);
    SetPlayerHealth(damagedid,400);
    SetPlayerTeam(damagedid, TEAM_INFIZIERT);
    SetSkin(damagedid, 135);
    SetPlayerHealth(damagedid, 400);
    ResetPlayerWeapons(damagedid);
    SetPlayerColor(damagedid, BLUTROT);
    TogglePlayerControllable(playerid,1);
    TogglePlayerControllable(damagedid,1);
    SendClientMessage(playerid, BLUTROT, "Du hast jemanden infiziert!");
    SendClientMessage(damagedid, BLUTROT, "Du wurdest von dem Tripolisopfer %s infiziert!", angreifer);
    }
    }
    if(PlayerInfo[damagedid][pAduty]==1)
    {
    SendClientMessage(playerid, COLOR_WHITE, "Du hast einen On Duty Admin angegriffen! Du wurdest gekickt!");
    KickPlayer[playerid] = 1;
    SendClientMessageToAll(COLOR_LIGHTBLUE, "%s wurde gekickt weil er einen On Duty Admin angegriffen hat!", playerid);
    }
    for(new i=0; i<MAX_PLAYERS; i++)
    {
    if(isaSS(i))
    {
    format(string, sizeof(string), "Ein Spieler hat sich mit Tripolis angesteckt! Sichern sie den Infizierten!");
    SendClientMessage(i, BLUTROT, string);
    }
    }
    return 1;
    }


    Sieht jemand etwas was den Server crashen könnte?


    Server Log :

    Code
    [22:32:55] [chat] [N0SKILL]: hau mich :D
    [22:33:02] [chat] [N0SKILL]: :P
    [22:33:04] [chat] [Mutant]: Lies mal was ich schreibe eh ^^
    [22:33:05] [chat] [Mutant]: xD
    [22:33:26] [chat] [Mutant]: bleib ma stehen
    [22:33:29] [chat] [Mutant]: hab keine Maus gerade -.-
    
    
    // Hier hat er mich gehauen :D
    [22:33:43] Incoming connection: 37.24.154.176:4211


    Das sind die letzten Zeilen...
    Danach kommt nichts mehr. :D


    Hilfe?

    Keine Signatur :3 <3

    Einmal editiert, zuletzt von Countibounty ()

  • public OnPlayerGiveDamage(playerid, damagedid, Float: amount, weaponid)
    {
    new string[256], attackierter[MAX_PLAYER_NAME], angreifer[MAX_PLAYER_NAME];
    GetPlayerName(playerid, angreifer, sizeof (angreifer));
    GetPlayerName(damagedid, attackierter, sizeof (attackierter));
    if(GetPlayerTeam(playerid) == TEAM_INFIZIERT)
    {
    if(GetPlayerTeam(damagedid) != TEAM_INFIZIERT)
    {
    SetPlayerSpecialAction(playerid, 25);
    ApplyAnimation(damagedid,"CRACK","crckdeth2",4.0,1,0,0,0,5000,0);
    SetTimer("BlutStillen", 3000, false);
    GivePlayerHealth(playerid,10);
    SetPlayerHealth(damagedid,400);
    SetPlayerTeam(damagedid, TEAM_INFIZIERT);
    SetSkin(damagedid, 135);
    SetPlayerHealth(damagedid, 400);
    ResetPlayerWeapons(damagedid);
    SetPlayerColor(damagedid, BLUTROT);
    TogglePlayerControllable(playerid,1);
    TogglePlayerControllable(damagedid,1);
    SendClientMessage(playerid, BLUTROT, "Du hast jemanden infiziert!");
    SendClientMessage(damagedid, BLUTROT, "Du wurdest von dem Tripolisopfer %s infiziert!", angreifer);
    }
    }
    if(PlayerInfo[damagedid][pAduty]==1)
    {
    SendClientMessage(playerid, COLOR_WHITE, "Du hast einen On Duty Admin angegriffen! Du wurdest gekickt!");
    KickPlayer[playerid] = 1;
    SendClientMessageToAll(COLOR_LIGHTBLUE, "%s wurde gekickt weil er einen On Duty Admin angegriffen hat!", playerid);
    }
    for(new i=0; i<MAX_PLAYERS; i++)
    {
    if(isaSS(i))
    {
    format(string, sizeof(string), "Ein Spieler hat sich mit Tripolis angesteckt! Sichern sie den Infizierten!");
    SendClientMessage(i, BLUTROT, string);
    break;
    }
    }
    return 1;
    }
    break reicht auch zum abbrechen sollte so gehen ;)


  • SendClientMessage(damagedid, BLUTROT, "Du wurdest von dem Tripolisopfer %s infiziert!", angreifer);


    Verusch es mal mit format... ^^


    /edit:

    new string[128];
    format(string, sizeof(string), "Du wurdest von dem Tripolisopfer %s infiziert!", angreifer);
    SendClientMessage(damagedid, BLUTROT, string);

    Muss man alles selber machen?! :huh:


    Gruß, Piet

  • Ich kann dir zwar bei deinem Problem nicht helfen (Bin noch ein Anfänger), aber ich habe einen kleinen Verbesserungsvorschlag.


    Du hast ja eingestellt, dass wen man angegriffen wird das der angegriffene in das Team "Team_Infizierte" kommt.
    Und gibst ihm den Skin : [135]


    Versuch es mal mit dem Skin : [162] oder versuch ein zufallsprinzip zu machen.. Also das der wo angegriffen wird entweder [135] oder [162] wird.
    Würde ich persönlich irgendwie cooler finden. Vor allem der Skin [162] sieht mehr aus wie ein Zombie.


    PS: Wen dir mein Beitrag geholfen hat, dann freut mich das. Um es mir mitzuteilen kannst du mir gerne eine Danksagung geben (Ist dir überlassen).