[Ajuda] Algemar
#1

Pessoal eu queria que meu comando /algemar:

1. Nгo fosse obrigado a algemar dentro do veнculo Resolvido

2. Quem foi algemado ficar com a mгo para trбs com uma algema nas mгos (Sem o player congelar no /algemar, ele pod eandar) Nгo Resolvido

3. Quando ele tiver algemado nгo poderб usar armas Resolvido

Fico muitнssimo grato para quem ajudar a resolver isso.


@EDIT, esqueci comando

pawn Код:
if(strcmp(cmd, "/algemar", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            if(!IsACop(playerid))
            {
                SendClientMessage(playerid, COLOR_GREY, "   Vocк nгo й um policial!");
                return 1;
            }
            if(OnDuty[playerid] != 1)
            {
                SendClientMessage(playerid, COLOR_GREY, "   Vocк nгo Bateu o cartгo!");
                return 1;
            }
            tmp = strtok(cmdtext, idx);
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, COLOR_WHITE, "Use: /algemar [id]");
                return 1;
            }
            giveplayerid = ReturnUser(tmp);
            if(IsPlayerConnected(giveplayerid))
            {
                if(giveplayerid != INVALID_PLAYER_ID)
                {
                    if(gTeam[giveplayerid] == 2 || IsACop(giveplayerid))
                    {
                        SendClientMessage(playerid, COLOR_GREY, "   Vocк nгo pode algemar COPs !");
                        return 1;
                    }
                    if(PlayerCuffed[giveplayerid] > 0)
                    {
                        SendClientMessage(playerid, COLOR_GREY, "   O Jogador jб esta algemado !");
                        return 1;
                    }
                    if (ProxDetectorS(8.0, playerid, giveplayerid))
                    {
                        new car = GetPlayerVehicleID(playerid);
                        if(giveplayerid == playerid) { SendClientMessage(playerid, COLOR_GREY, "Vocк nao pode se algemar!"); return 1; }
                        if(IsPlayerInAnyVehicle(playerid) && GetPlayerState(playerid) == 2 && IsPlayerInVehicle(giveplayerid, car))
                        {
                            GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                            GetPlayerName(playerid, sendername, sizeof(sendername));
                            format(string, sizeof(string), "* Vocк foi algemado pelo: %s.", sendername);
                            SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
                            format(string, sizeof(string), "* Vocк algemou %s.", giveplayer);
                            SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
                            format(string, sizeof(string), "* %s Algemou %s, para nao fugir.", sendername ,giveplayer);
                            ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
                            GameTextForPlayer(giveplayerid, "~r~Algemado", 2500, 3);
                            TogglePlayerControllable(giveplayerid, 0);
                            PlayerCuffed[giveplayerid] = 2;
                            PlayerInfo[giveplayerid][pMuted] = 1;
                            SetPlayerAttachedObject(giveplayerid, 4, 19418, 6, -0.031999, 0.024000, -0.024000, -7.900000, -32.000011, -72.299987, 1.115998, 1.322000, 1.406000);
                            SetPlayerSpecialAction(giveplayerid, SPECIAL_ACTION_CUFFED);

                        }
                        else
                        {
                            SendClientMessage(playerid, COLOR_GREY, "   O Jogador nгo estб no carro ou vocк nгo й o motorista !");
                            return 1;
                        }
                    }
                    else
                    {
                        SendClientMessage(playerid, COLOR_GREY, "   O Jogador estб longe de Vocк !");
                        return 1;
                    }
                }
            }
            else
            {
                SendClientMessage(playerid, COLOR_GREY, "   O Jogador Estб Offline !");
                return 1;
            }
        }
        return 1;
    }
Reply
#2

pawn Код:
// - 2
SetPlayerSpecialAction(playerid,SPECIAL_ACTION_CUFFED );
Reply
#3

Toma esse vc pode algemar sem estiver no carro
Код:
 if(strcmp(cmd, "/algemar", true) == 0)
	{
	    if(IsPlayerConnected(playerid))
	    {
	    	if(!IsACop(playerid))
			{
			    SendClientMessage(playerid, COLOR_GREY, "   Vocк nгo й um policial!");
			    return 1;
			}
			if(OnDuty[playerid] != 1)
			{
			    SendClientMessage(playerid, COLOR_GREY, "   Vocк nгo Bateu o cartгo!");
			    return 1;
			}
			tmp = strtok(cmdtext, idx);
			if(!strlen(tmp))
			{
				SendClientMessage(playerid, COLOR_WHITE, "Use: /algemar [id]");
				return 1;
			}
			giveplayerid = ReturnUser(tmp);
			if(IsPlayerConnected(giveplayerid))
			{
			    if(giveplayerid != INVALID_PLAYER_ID)
			    {
			        if(gTeam[giveplayerid] == 2 || IsACop(giveplayerid))
			        {
			            SendClientMessage(playerid, COLOR_GREY, "   Vocк nгo pode algemar COPs !");
				        return 1;
			        }
				    if(PlayerCuffed[giveplayerid] > 0)
				    {
				        SendClientMessage(playerid, COLOR_GREY, "   O Jogador jб esta algemado !");
				        return 1;
				    }
					if (ProxDetectorS(8.0, playerid, giveplayerid))
					{
					    if(giveplayerid == playerid) { SendClientMessage(playerid, COLOR_GREY, "Vocк nao pode se algemar!"); return 1; }
					    if(GetPlayerState(playerid))
					    {
					        GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
							GetPlayerName(playerid, sendername, sizeof(sendername));
					        format(string, sizeof(string), "* Vocк foi algemado pelo: %s.", sendername);
							SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
							format(string, sizeof(string), "* Vocк algemou %s.", giveplayer);
							SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
							format(string, sizeof(string), "* %s Algemou %s, para nao fugir.", sendername ,giveplayer);
							ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
							GameTextForPlayer(giveplayerid, "~r~Algemado", 2500, 3);
							TogglePlayerControllable(giveplayerid, 0);
							PlayerCuffed[giveplayerid] = 2;
							PlayerInfo[giveplayerid][pMuted] = 1;
							SetPlayerAttachedObject(giveplayerid, 4, 19418, 6, -0.031999, 0.024000, -0.024000, -7.900000, -32.000011, -72.299987, 1.115998, 1.322000, 1.406000);
                            SetPlayerSpecialAction(giveplayerid, SPECIAL_ACTION_CUFFED);
					    }
					}
					else
					{
					    SendClientMessage(playerid, COLOR_GREY, "   O Jogador estб longe de Vocк !");
					    return 1;
					}
				}
			}
			else
			{
			    SendClientMessage(playerid, COLOR_GREY, "   O Jogador Estб Offline !");
			    return 1;
			}
		}
		return 1;
	}
Reply
#4

+ REP para os 2! Agora sу falta o Item 2
Reply
#5

^^ Comando que ti passei ele nao congela o Players, vc pelo menos testou ?
Reply
#6

Ainda nгo... :X vou testar
Reply
#7

Pois eu uso esse comando no meu servidor e nao vejo nenhum problema sobre congelamento !
Reply
#8

Tem que tirar isso
pawn Код:
TogglePlayerControllable(giveplayerid, 0);
Ex
pawn Код:
if(strcmp(cmd, "/algemar", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            if(!IsACop(playerid))
            {
                SendClientMessage(playerid, COLOR_GREY, "   Vocк nгo й um policial!");
                return 1;
            }
            if(OnDuty[playerid] != 1)
            {
                SendClientMessage(playerid, COLOR_GREY, "   Vocк nгo Bateu o cartгo!");
                return 1;
            }
            tmp = strtok(cmdtext, idx);
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, COLOR_WHITE, "Use: /algemar [id]");
                return 1;
            }
            giveplayerid = ReturnUser(tmp);
            if(IsPlayerConnected(giveplayerid))
            {
                if(giveplayerid != INVALID_PLAYER_ID)
                {
                    if(gTeam[giveplayerid] == 2 || IsACop(giveplayerid))
                    {
                        SendClientMessage(playerid, COLOR_GREY, "   Vocк nгo pode algemar COPs !");
                        return 1;
                    }
                    if(PlayerCuffed[giveplayerid] > 0)
                    {
                        SendClientMessage(playerid, COLOR_GREY, "   O Jogador jб esta algemado !");
                        return 1;
                    }
                    if (ProxDetectorS(8.0, playerid, giveplayerid))
                    {
                        if(giveplayerid == playerid) { SendClientMessage(playerid, COLOR_GREY, "Vocк nao pode se algemar!"); return 1; }
                        if(GetPlayerState(playerid))
                        {
                            GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                            GetPlayerName(playerid, sendername, sizeof(sendername));
                            format(string, sizeof(string), "* Vocк foi algemado pelo: %s.", sendername);
                            SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
                            format(string, sizeof(string), "* Vocк algemou %s.", giveplayer);
                            SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
                            format(string, sizeof(string), "* %s Algemou %s, para nao fugir.", sendername ,giveplayer);
                            ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
                            GameTextForPlayer(giveplayerid, "~r~Algemado", 2500, 3);
                            PlayerCuffed[giveplayerid] = 2;
                            PlayerInfo[giveplayerid][pMuted] = 1;
                            SetPlayerAttachedObject(giveplayerid, 4, 19418, 6, -0.031999, 0.024000, -0.024000, -7.900000, -32.000011, -72.299987, 1.115998, 1.322000, 1.406000);
                            SetPlayerSpecialAction(giveplayerid, SPECIAL_ACTION_CUFFED);
                        }
                    }
                    else
                    {
                        SendClientMessage(playerid, COLOR_GREY, "   O Jogador estб longe de Vocк !");
                        return 1;
                    }
                }
            }
            else
            {
                SendClientMessage(playerid, COLOR_GREY, "   O Jogador Estб Offline !");
                return 1;
            }
        }
        return 1;
    }
Reply
#9

Mais esse que vocк passou, o usuбrio vai ficar de mгos para trбs com algema ?
Reply
#10

Sim vai ficar , pode testar!
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)