GTAOnline.net

San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: CanadienFr le 17 Mai 2010, 04:33:45

Titre: Probleme avec le Tazer
Posté par: CanadienFr le 17 Mai 2010, 04:33:45
Voila le problème après 20 sec le joueur est sensé pouvoir bouger mais sa ne fonctionne pas.

if(strcmp(cmd, "/tazer", true) ==0 || strcmp(cmd, "/ta", true) ==0)
{
    if(IsPlayerConnected(playerid))
    {
if(gTeam[playerid] == 2 || IsACop(playerid))
{
    if(IsPlayerInAnyVehicle(playerid))
    {
        SendClientMessage(playerid, COLOR_GREY, " Vous ne pouvez pas visé a travers une voiture");
        return 1;
    }
    new suspect = GetClosestPlayer(playerid);
    if(IsPlayerConnected(suspect))
{
    if(PlayerCuffed[suspect] > 0)
    {
        SendClientMessage(playerid, COLOR_GREY, "  Cette homme est menotter !");
        return 1;
    }
    if(GetDistanceBetweenPlayers(playerid,suspect) < 5)
{
    if(gTeam[suspect] == 2)
    {
        SendClientMessage(playerid, COLOR_GREY, "   Vous pouvez pas tazer un coéquipier !");
        return 1;
    }
    if(IsPlayerInAnyVehicle(suspect))
    {
        SendClientMessage(playerid, COLOR_GREY, "  Suspect embarqué !");
        return 1;
    }
    GetPlayerName(suspect, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
new randt = random(4)+1;
if(randt == 1)
{
    format(string, sizeof(string), "* %s tire au tazer sur %s,mais rate son tire.", sendername ,giveplayer);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
}
else
{
format(string, sizeof(string), "* Vous êtes tazer par l'agent %s pendant 20 seconds.", sendername);
SendClientMessage(suspect, COLOR_WHITE, string);
format(string, sizeof(string), "* Vous avez tazer %s pendant 20 seconds.", giveplayer);
SendClientMessage(playerid, COLOR_WHITE, string);
format(string, sizeof(string), "* %s tire avec son tazeur sur %s et le taze !.", sendername ,giveplayer);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
GameTextForPlayer(suspect, "~r~Tazer", 2500, 3);
TogglePlayerControllable(suspect, 0);
                            PlayerCuffedTime[suspect] = 20;
}
            }
else
{
    SendClientMessage(playerid, COLOR_GREY, "  Personne a coté de vous");
    return 1;
}
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, "   Vous n'etez pas un Flic !");
}
}//not connected
    return 1;
}
Titre: Re : Probleme avec le Tazer
Posté par: Syg le 17 Mai 2010, 10:24:48
Le problème n'est pas dans la commande, puisque elle fait ce qu'elle doit faire : Le joueur est immobilisé.
Regarde plutôt au moment où PlayerCuffedTime[suspect] reprend la valeur 0 (c'est à dire au moment où l'effet du tazer a disparu). A ce moment là, tu devras faire un TogglePlayerControllable(suspect, 1);

++
Syg
Titre: Re : Probleme avec le Tazer
Posté par: CanadienFr le 18 Mai 2010, 00:16:00
Je comprend absolument rien.