SA-MP Forums Archive
0.3e Cuff system help REP+ - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: SA-MP Scripting and Plugins (https://sampforum.blast.hk/forumdisplay.php?fid=8)
+--- Forum: Scripting Help (https://sampforum.blast.hk/forumdisplay.php?fid=12)
+--- Thread: 0.3e Cuff system help REP+ (/showthread.php?tid=341132)



0.3e Cuff system help REP+ - tiernantheman - 09.05.2012

Hello, can anybody tell me the coding to make the new cuff system in 0.3e? like the hands behind their back and when you jump in cuffs you fall and other stuff regarding it? thanks


Re: 0.3e Cuff system help REP+ - Kudoz - 09.05.2012

Put this whereever you want it.. (or not really) but you can make a cmd out of it.

SetPlayerSpecialAction(playerid, SPECIAL_ACTION_CUFFED);


Re: 0.3e Cuff system help REP+ - HDFord - 09.05.2012

This should work as a command i think
pawn Код:
CMD:cuff(playerid,params[])
{
    new id;
    if(sscanf(params,"u",id))
    {
        SendClientMessage(playerid,0xFFFFFFFF,"Usage: /cuff <id>");
    }
    }
    else if(id == INVALID_PLAYER_ID)
    {
        SendClientMessage(playerid,0xFFFFFFFF,"that player is not online");
    }
    else
    {
        new name[MAX_PLAYER_NAME],string[MAX_PLAYER_NAME],name2[MAX_PLAYER_NAME],string2[MAX_PLAYER_NAME];
        GetPlayerName(playerid,name,sizeof(name));
        format(string,sizeof(string),"You have been cuffed by %s.",name);
        SendClientMessage(id,0xFFFFFFFF,string);
        GetPlayerName(id,name2,sizeof(name2));
        format(string2,sizeof(string2),"You cuffed %s.",name2);
        SendClientMessage(playerid,0xFFFFFFFF,string2);
        SetPlayerSpecialAction(id,SPECIAL_ACTION_CUFFED);
    }
    return 1;
}



Re: 0.3e Cuff system help REP+ - N0FeaR - 09.05.2012

pawn Код:
}
    if(strcmp(cmd, "/cuff", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            if(PlayerInfo[playerid][pFaction] == 1 || PlayerInfo[playerid][pFaction] == 3)
            {
                if(CopOnDuty[playerid] == 0)
                {
                    SendClientMessage(playerid, COLOR_GREY, "You are not on duty");
                    return 1;
                }
                tmp = strtok(cmdtext, idx);
                if(!strlen(tmp))
                {
                    SendClientMessage(playerid, COLOR_GRAD2, "USAGE: /cuff [playerid]");
                    return 1;
                }
                giveplayerid = ReturnUser(tmp);
                if(IsPlayerConnected(giveplayerid))
                {
                    if(giveplayerid != INVALID_PLAYER_ID)
                    {
                        if(PlayerCuffed[giveplayerid] == 1)
                        {
                            SendClientMessage(playerid, COLOR_GREY, "That player is already cuffed");
                            return 1;
                        }
                        if(giveplayerid == playerid)
                        {
                            SendClientMessage(playerid, COLOR_GREY, "You can not cuff yourself");
                            return 1;
                        }
                        if(ProxDetectorS(8.0, playerid, giveplayerid))
                        {
                            format(string, sizeof(string), "You have been cuffed by %s", GetPlayerNameEx(playerid));
                            SendClientMessage(giveplayerid, COLOR_WHITE, string);
                            format(string, sizeof(string), "You have cuffed %s", GetPlayerNameEx(giveplayerid));
                            SendClientMessage(playerid, COLOR_WHITE, string);
                            PlayerCuffed[giveplayerid] = 1;
                            SetPlayerAttachedObject(giveplayerid, 0, 19418, 6, -0.011000, 0.028000, -0.022000, -15.600012, -33.699977, -81.700035, 0.891999, 1.000000, 1.168000);
                            SetPlayerSpecialAction(giveplayerid,SPECIAL_ACTION_CUFFED);
                            PlayerPlayerActionMessage(playerid,giveplayerid,15.0,"cuffs");
                        }
                        else
                        {
                            SendClientMessage(playerid, COLOR_GREY, "That player is not in range");
                            return 1;
                        }
                    }
                }
                else
                {
                    SendClientMessage(playerid, COLOR_LIGHTRED, "Playerid is not an active playerid");
                    return 1;
                }
            }
            else
            {
                SendClientMessage(playerid, COLOR_GREY, "Invalid faction");
            }
        }
        return 1;



Re: 0.3e Cuff system help REP+ - tiernantheman - 09.05.2012

Anyone got a code for /uncuff so that it removes the cuffs when I do /uncuff?


Re: 0.3e Cuff system help REP+ - N0FeaR - 09.05.2012

Код:
}
 	if(strcmp(cmd, "/uncuff", true) == 0)
	{
	    if(IsPlayerConnected(playerid))
	    {
			if(PlayerInfo[playerid][pFaction] == 1|| PlayerInfo[playerid][pFaction] == 0)
			{
   				if(CopOnDuty[playerid] == 0)
			    {
			    	SendClientMessage(playerid, COLOR_GREY, "You are not on duty");
			        return 1;
			    }
			    tmp = strtok(cmdtext, idx);
				if(!strlen(tmp))
				{
					SendClientMessage(playerid, COLOR_GRAD2, "USAGE: /uncuff [playerid]");
					return 1;
				}
				giveplayerid = ReturnUser(tmp);
			    if(IsPlayerConnected(giveplayerid))
				{
				    if(giveplayerid != INVALID_PLAYER_ID)
				    {
					    if(PlayerCuffed[giveplayerid] == 0)
					    {
					        SendClientMessage(playerid, COLOR_GREY, "That player is not cuffed");
					        return 1;
					    }
 			    		if(giveplayerid == playerid)
				    	{
        					SendClientMessage(playerid, COLOR_GREY, "You can not uncuff yourself");
        					return 1;
				    	}
						if(ProxDetectorS(8.0, playerid, giveplayerid))
						{
        					format(string, sizeof(string), "You have been uncuffed by %s", GetPlayerNameEx(playerid));
							SendClientMessage(giveplayerid, COLOR_WHITE, string);
							format(string, sizeof(string), "You have uncuffed %s", GetPlayerNameEx(giveplayerid));
							SendClientMessage(playerid, COLOR_WHITE, string);
							PlayerCuffed[giveplayerid] = 0;
							SetPlayerSpecialAction(giveplayerid,SPECIAL_ACTION_NONE);
							RemovePlayerAttachedObject(giveplayerid,0);
							PlayerPlayerActionMessage(playerid,giveplayerid,15.0,"uncuffs");
						}
						else
						{
						    SendClientMessage(playerid, COLOR_GREY, "That player is not in range");
						    return 1;
						}
					}
				}
				else
				{
				    SendClientMessage(playerid, COLOR_LIGHTRED, "Playerid is not an active playerid");
				    return 1;
				}
			}
			else
			{
				SendClientMessage(playerid, COLOR_GREY, "Invalid faction");
			}
		}
		return 1;



Re: 0.3e Cuff system help REP+ - tiernantheman - 09.05.2012

Quote:
Originally Posted by N0FeaR
Посмотреть сообщение
Код:
}
 	if(strcmp(cmd, "/uncuff", true) == 0)
	{
	    if(IsPlayerConnected(playerid))
	    {
			if(PlayerInfo[playerid][pFaction] == 1|| PlayerInfo[playerid][pFaction] == 0)
			{
   				if(CopOnDuty[playerid] == 0)
			    {
			    	SendClientMessage(playerid, COLOR_GREY, "You are not on duty");
			        return 1;
			    }
			    tmp = strtok(cmdtext, idx);
				if(!strlen(tmp))
				{
					SendClientMessage(playerid, COLOR_GRAD2, "USAGE: /uncuff [playerid]");
					return 1;
				}
				giveplayerid = ReturnUser(tmp);
			    if(IsPlayerConnected(giveplayerid))
				{
				    if(giveplayerid != INVALID_PLAYER_ID)
				    {
					    if(PlayerCuffed[giveplayerid] == 0)
					    {
					        SendClientMessage(playerid, COLOR_GREY, "That player is not cuffed");
					        return 1;
					    }
 			    		if(giveplayerid == playerid)
				    	{
        					SendClientMessage(playerid, COLOR_GREY, "You can not uncuff yourself");
        					return 1;
				    	}
						if(ProxDetectorS(8.0, playerid, giveplayerid))
						{
        					format(string, sizeof(string), "You have been uncuffed by %s", GetPlayerNameEx(playerid));
							SendClientMessage(giveplayerid, COLOR_WHITE, string);
							format(string, sizeof(string), "You have uncuffed %s", GetPlayerNameEx(giveplayerid));
							SendClientMessage(playerid, COLOR_WHITE, string);
							PlayerCuffed[giveplayerid] = 0;
							SetPlayerSpecialAction(giveplayerid,SPECIAL_ACTION_NONE);
							RemovePlayerAttachedObject(giveplayerid,0);
							PlayerPlayerActionMessage(playerid,giveplayerid,15.0,"uncuffs");
						}
						else
						{
						    SendClientMessage(playerid, COLOR_GREY, "That player is not in range");
						    return 1;
						}
					}
				}
				else
				{
				    SendClientMessage(playerid, COLOR_LIGHTRED, "Playerid is not an active playerid");
				    return 1;
				}
			}
			else
			{
				SendClientMessage(playerid, COLOR_GREY, "Invalid faction");
			}
		}
		return 1;
Thanks mate REP+


Re: 0.3e Cuff system help REP+ - N0FeaR - 10.05.2012

No problem, ask me if you need more help.


Re: 0.3e Cuff system help REP+ - tiernantheman - 10.05.2012

Quote:
Originally Posted by N0FeaR
Посмотреть сообщение
No problem, ask me if you need more help.
Hmmm, do you know the jump thing with the cuffing system like if you jump you fall got any idea how I can do that?


Re: 0.3e Cuff system help REP+ - N0FeaR - 13.05.2012

Place this under
OnPlayerKeyStateChange

pawn Код:
if(newkeys & KEY_JUMP && !(oldkeys & KEY_JUMP) && GetPlayerSpecialAction(playerid) == SPECIAL_ACTION_CUFFED) ApplyAnimation(playerid, "GYMNASIUM", "gym_jog_falloff",4.1,0,1,1,0,0);