Handschellen lassen sich nicht entfernen

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
  • Bei Uncuff hast du die Playerids verwechselt, "playerid" ist immer der Spieler, der den Befehl ausführt, du möchtest die Handschellen aber dem Spieler abnehmen, den der Auslöser des Befehls, zum Beispiel ein Cop, angibt.


    In deinem Fall wäre die richtige Variable "giveplayerid".


    Ersetze einfach


    RemovePlayerAttachedObject(playerid,0);


    durch


    RemovePlayerAttachedObject(giveplayerid,0);




    Hier nocheinmal der komplette Code:
    if(strcmp(cmd, "/uncuff", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(IsACop(playerid))
    {
    if(OnDuty[playerid] == 1)
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp)) {
    SendClientMessage(playerid, COLOR_LIGHTBLUE, "Benutze: /uncuff [SpielerID]");
    return 1;
    }
    giveplayerid = ReturnUser(tmp);
    if(IsPlayerConnected(giveplayerid))
    {
    if(giveplayerid != INVALID_PLAYER_ID)
    {
    if (ProxDetectorS(8.0, playerid, giveplayerid))
    {
    if(giveplayerid == playerid) { SendClientMessage(playerid, COLOR_GREY, "Du kannst dich nicht selber uncuffen!"); return 1; }
    if(PlayerCuffed[giveplayerid])
    {
    GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string, sizeof(string), "%s hat ihnen die Handschellen abgenommen.", sendername);
    SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
    format(string, sizeof(string), "Sie haben %s die Handschellen abgenommen.", giveplayer);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    format(string, sizeof(string), "%s nimmt %s Handschellen ab.", sendername ,giveplayer);
    ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
    TogglePlayerControllable(giveplayerid, 0);
    PlayerCuffed[giveplayerid] = 0;
    RemovePlayerAttachedObject(giveplayerid,0);
    }
    else
    {
    SendClientMessage(playerid, COLOR_RED, "Spieler ist nicht gecufft.");
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_RED, "Spieler ist nicht in ihrer Nähe.");
    return 1;
    }
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_RED, "Spieler ist offline.");
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_RED, "Sie sind nicht im Dienst.");
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Sie sind kein Staatsdiener.");
    }
    return 1;
    }
    }



    BlackLegend

  • Die Hände bleiben hinten schlagen kann man aber das sieht aus als wenn ma einem eine Kopfnuss gibt :D


    Sag das doch...


    Dir fehlt im Uncuffbefehl.


    SetPlayerSpecialAction(playerid,SPECIAL_ACTION_NONE);

    "Bevor ich mir Informationen aus der "Bild" hole,
    werde ich anfangen, Wahlergebnisse danach vorauszusagen,
    neben welchen Busch unsere Katze gepinkelt hat."

    Margarete Stokowski

  • if(strcmp(cmd, "/uncuff", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(IsACop(playerid))
    {
    if(OnDuty[playerid] == 1)
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp)) {
    SendClientMessage(playerid, COLOR_LIGHTBLUE, "Benutze: /uncuff [SpielerID]");
    return 1;
    }
    giveplayerid = ReturnUser(tmp);
    if(IsPlayerConnected(giveplayerid))
    {
    if(giveplayerid != INVALID_PLAYER_ID)
    {
    if (ProxDetectorS(8.0, playerid, giveplayerid))
    {
    if(giveplayerid == playerid) { SendClientMessage(playerid, COLOR_GREY, "Du kannst dich nicht selber uncuffen!"); return 1; }
    if(PlayerCuffed[giveplayerid])
    {
    GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string, sizeof(string), "%s hat ihnen die Handschellen abgenommen.", sendername);
    SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
    format(string, sizeof(string), "Sie haben %s die Handschellen abgenommen.", giveplayer);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    format(string, sizeof(string), "%s nimmt %s Handschellen ab.", sendername ,giveplayer);
    ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
    TogglePlayerControllable(giveplayerid, 0);
    PlayerCuffed[giveplayerid] = 0;
    RemovePlayerAttachedObject(giveplayerid,0);
    SetPlayerSpecialAction(playerid,SPECIAL_ACTION_NONE);
    }
    else
    {
    SendClientMessage(playerid, COLOR_RED, "Spieler ist nicht gecufft.");
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_RED, "Spieler ist nicht in ihrer Nähe.");
    return 1;
    }
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_RED, "Spieler ist offline.");
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_RED, "Sie sind nicht im Dienst.");
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Sie sind kein Staatsdiener.");
    }
    return 1;
    }
    }

  • Sowas dacht ich mir :D


    du hast playerid, statt giveplayerid geschrieben.


    Da hättest du auch selber drauf kommen können 8)

    "Bevor ich mir Informationen aus der "Bild" hole,
    werde ich anfangen, Wahlergebnisse danach vorauszusagen,
    neben welchen Busch unsere Katze gepinkelt hat."

    Margarete Stokowski

  • Zitat

    TogglePlayerControllable(playerid, toggle)


    toggle 0 to freeze the player or 1 to unfreeze them


    jetzt reate mal warum ;)


    Douq
    lass ihn da selber drauf kommen ;)

    "Bevor ich mir Informationen aus der "Bild" hole,
    werde ich anfangen, Wahlergebnisse danach vorauszusagen,
    neben welchen Busch unsere Katze gepinkelt hat."

    Margarete Stokowski

  • Bei mir geht jetzt alles vielen dank an alle aber eine frage habe ich doch noch aber was anderes ich möchte das wenne ein Spieler normal schriebt also kein Ochat das da dan nicht die id vorsteht aber wenn ich die id weg mache dann steht da:
    é sagt: (playername)




    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string, sizeof(string), "%s sagt: %s ", playerid,sendername, text);
    ProxDetector(20.0, playerid, string,COLOR_FADE1,COLOR_FADE2,COLOR_FADE3,COLOR_FADE4,COLOR_FADE5);
    format(string, sizeof(string), "%s",text);
    SetPlayerChatBubble(playerid,string,0xFF0000FF,15,10000);
    return 0;