SA-MP Forums Archive
How can i. - 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)
+---- Forum: Help Archive (https://sampforum.blast.hk/forumdisplay.php?fid=89)
+---- Thread: How can i. (/showthread.php?tid=204133)



How can i. - Jack_Blade - 28.12.2010

..make player house enterable with "ENTER"
Whats wrong?

Код:
	public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
	{
      if( newkeys == KEY_SECONDARY_ATTACK ) // If player press enter / f
        {
		for(new i = 0; i < sizeof(Houses); i++)
		{
			    if (PlayerToPoint(3, playerid,HouseInfo[i][hEntrancex], HouseInfo[i][hEntrancey], HouseInfo[i][hEntrancez]))
			    {
			        if(PlayerInfo[playerid][pPhousekey] == i || HouseInfo[i][hLock] == 0)
			        {
                        SetPlayerInterior(playerid,HouseInfo[i][hInt]);
						SetPlayerVirtualWorld(playerid,HouseInfo[i][hWorld]);
						SetPlayerPos(playerid,HouseInfo[i][hExitx],HouseInfo[i][hExity],HouseInfo[i][hExitz]);
						GameTextForPlayer(playerid, "~w~Welcome Home", 5000, 1);
						PlayerInfo[playerid][pInt] = HouseInfo[i][hInt];
						PlayerInfo[playerid][pLocal] = i;
						HouseEntered[playerid] = i
		            }
		            else
		            {
				        GameTextForPlayer(playerid, "~r~Locked", 5000, 1);
			}
	}
	return 1;
}
Also exit with "ENTER"
i took it from command /exit

Код:
			for(new i = 0; i <  sizeof(HouseInfo); i++)
			{
				//printf("House :%d",i);
				if (PlayerToPoint(3, playerid,HouseInfo[i][hExitx], HouseInfo[i][hExity], HouseInfo[i][hExitz]))
				{
				    if(HouseEntered[playerid] == i)
				    {
						SetPlayerInterior(playerid,0);
						SetPlayerPos(playerid,HouseInfo[i][hEntrancex],HouseInfo[i][hEntrancey],HouseInfo[i][hEntrancez]);
						PlayerInfo[playerid][pInt] = 0;
						PlayerInfo[playerid][pLocal] = 255;
						SetCameraBehindPlayer(playerid);
						SetPlayerVirtualWorld(playerid,0);
						HouseEntered[playerid] = 255;
						if(HouseInfo[i][hHel] == 1)
						{
							new Float:tempheal;
							GetPlayerHealth(playerid,tempheal);
							if(tempheal < 100.0)
							{
								SetPlayerHealth(playerid,100.0);
							}
						}
						return 1;
					}
				}
			}



Re: How can i. - _rAped - 28.12.2010

Read this: How to check for a key. (OnPlayerKeyStateChange)