/enter to KEY_SECONDARY_ATTACK how ?
#1

I want make /enter to KEY_SECONDARY_ATTACK , but how , i searched .. But no
thing ?
Reply
#2

pawn Код:
// OnPlayerKeyStateChange
if(newkeys & KEY_SECONDARY_ATTACK)
{
    // code of the /enter cmd here
}
Reply
#3

Quote:
Originally Posted by Norck
Посмотреть сообщение
pawn Код:
// OnPlayerKeyStateChange
if(newkeys & KEY_SECONDARY_ATTACK)
{
    // code of the /enter cmd here
}
I get error
Код:
C:\Documents and Settings\Andero\Desktop\RPEEE\gamemodes\gtarp.pwn(24154) : error 017: undefined symbol "newkeys"
Pawn compiler 3.2.3664	 	 	Copyright © 1997-2006, ITB CompuPhase


1 Error.
Reply
#4

Did you put this code to the OnPlayerKeyStateChange callback?
Reply
#5

Quote:
Originally Posted by Norck
Посмотреть сообщение
Did you put this code to the OnPlayerKeyStateChange callback?
I have to move full comand to OnPlayerKeyStateChange ?
Reply
#6

I haven't seen your command, but apparently yes, the body of your `/enter` command.
Reply
#7

Quote:
Originally Posted by Norck
Посмотреть сообщение
I haven't seen your command, but apparently yes, the body of your `/enter` command.
I moved but my pawno crashes then ...
there is code :
Код:
 if(strcmp(cmd, "/enter", true) == 0)
	{
	    if(IsPlayerConnected(playerid))
		{
			for(new i = 0; i < sizeof(HouseInfo); i++)
			{
				if (PlayerToPoint(3, playerid,HouseInfo[i][hEntrancex], HouseInfo[i][hEntrancey], HouseInfo[i][hEntrancez]))
				{
					//printf("Found House :%d",i);
					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);
					}
				}
			}
			for(new i = 0; i < sizeof(BizzInfo); i++)
			{
				if (PlayerToPoint(3, playerid,BizzInfo[i][bEntranceX], BizzInfo[i][bEntranceY], BizzInfo[i][bEntranceZ]))
				{
					//printf("Found House :%d",i);
					if(!IsACop(playerid) && i == 3)
					{
					    SendClientMessage(playerid, COLOR_GREY, "   Cops only !");
					    return 1;
					}
					if(PlayerInfo[playerid][pPbiskey] == i || GetPlayerMoney(playerid) >= BizzInfo[i][bEntranceCost])
					{
						if(PlayerInfo[playerid][pPbiskey] != i)
						{
							if(BizzInfo[i][bLocked] == 1)
							{
								GameTextForPlayer(playerid, "~r~Closed", 5000, 1);
								return 1;
							}
							if(BizzInfo[i][bProducts] == 0)
							{
								GameTextForPlayer(playerid, "~r~Out Of Stock", 5000, 1);
								return 1;
							}
							SafeGivePlayerMoney(playerid,-BizzInfo[i][bEntranceCost]);
							format(string, sizeof(string), "~r~-$%d~n~~w~type /lahku~n~to get out", BizzInfo[i][bEntranceCost]);
							BizzInfo[i][bTill] += BizzInfo[i][bEntranceCost];
							ExtortionBiz(i, BizzInfo[i][bEntranceCost]);
							BizzInfo[i][bProducts]--;
							OnPropUpdate();
							GameTextForPlayer(playerid, string, 5000, 3);
						}
						SetPlayerInterior(playerid,BizzInfo[i][bInterior]);
						SetPlayerPos(playerid,BizzInfo[i][bExitX],BizzInfo[i][bExitY],BizzInfo[i][bExitZ]);
						PlayerInfo[playerid][pInt] = BizzInfo[i][bInterior];
						PlayerInfo[playerid][pLocal] = i+99;
						new dood[MAX_PLAYER_NAME];
						GetPlayerName(playerid, dood, sizeof(dood));
						format(string, sizeof(string), "%s payed $%d to enter biz %d", dood, BizzInfo[i][bEntranceCost], i);
						printf("%s", string);
						PayLog(string);
						//PlayerInfo[playerid][pLocal] = i;
					}
					else
					{
						GameTextForPlayer(playerid, "~r~You dont have the cash", 5000, 1);
					}
				}
			}
			for(new i = 0; i < sizeof(SBizzInfo); i++)
			{
				if (PlayerToPoint(3, playerid,SBizzInfo[i][sbEntranceX], SBizzInfo[i][sbEntranceY], SBizzInfo[i][sbEntranceZ]))
				{
					if(PlayerInfo[playerid][pPbiskey] == i || GetPlayerMoney(playerid) >= SBizzInfo[i][sbEntranceCost])
					{
						if(PlayerInfo[playerid][pPbiskey] != i)
						{
							if(SBizzInfo[i][sbLocked] == 1)
							{
								GameTextForPlayer(playerid, "~r~Closed", 5000, 1);
								return 1;
							}
							if(SBizzInfo[i][sbProducts] == 0)
							{
								GameTextForPlayer(playerid, "~r~Out Of Stock", 5000, 1);
								return 1;
							}
							if(i == 10)
							{
							    PaintballPlayers ++;
							    PlayerPaintballing[playerid] = 1;
							    new rand = random(sizeof(PaintballSpawns));
								SetPlayerPos(playerid, PaintballSpawns[rand][0], PaintballSpawns[rand][1], PaintballSpawns[rand][2]);
								TogglePlayerControllable(playerid, 0);
							}
							else if(i == 11)
							{
							    PlayerKarting[playerid] = 1;
							    SendClientMessage(playerid, TEAM_GROVE_COLOR, "You can now parcipitate in a Karting Race, grab a Kart.");
							}
							else
							{
							    return 1;
							}
							SafeGivePlayerMoney(playerid,-SBizzInfo[i][sbEntranceCost]);
							gSpentCash[playerid] = GetPlayerMoney(playerid);
							SBizzInfo[i][sbProducts]--;
							SBizzInfo[i][sbTill] += SBizzInfo[i][sbEntranceCost];
							ExtortionSBiz(i, SBizzInfo[i][sbEntranceCost]);
							new dood[MAX_PLAYER_NAME];
							GetPlayerName(playerid, dood, sizeof(dood));
							format(string, sizeof(string), "%s payed $%d to enter sbiz %d", dood, SBizzInfo[i][sbEntranceCost], i);
							printf("%s", string);
							PayLog(string);
							OnPropUpdate();
						}
					}
					else
					{
						GameTextForPlayer(playerid, "~r~You dont have the cash", 5000, 1);
					}
				}
			}
			if (PlayerToPoint(3.0, playerid,2695.6235,-1704.6960,11.8438))
			{
			    GameTextForPlayer(playerid, "~w~Welcome to the 8ball Track", 5000, 1);
			    SetPlayerInterior(playerid,7);
			    PlayerInfo[playerid][pInt] = 7;
				SetPlayerPos(playerid,-1404.5299,-259.0602,1043.6563);
			}
			else if (PlayerToPoint(8.0, playerid,-2111.5686,-443.9720,38.7344))
			{
			    GameTextForPlayer(playerid, "~w~Welcome to the Dirt Track", 5000, 1);
			    SetPlayerInterior(playerid,4);
			    PlayerInfo[playerid][pInt] = 4;
				SetPlayerPos(playerid,-1443.0554,-581.1879,1055.0472);
			}
			else if (PlayerToPoint(8.0, playerid,-2080.3079,-406.0309,38.7344))
			{
			    GameTextForPlayer(playerid, "~w~Welcome to the Stunting Track", 5000, 1);
			    SetPlayerInterior(playerid,14);
			    PlayerInfo[playerid][pInt] = 14;
				SetPlayerPos(playerid,-1464.7732,1557.5533,1052.5313);
			}
			else if (PlayerToPoint(4, playerid,2073.2979,-1831.1228,13.5469))
			{ // Pay & Spray
			    if(GetPlayerState(playerid) == 2)
			    {
			        if(GetPlayerMoney(playerid) > SBizzInfo[5][sbEntranceCost] + 100)
			        {
			            if(SBizzInfo[5][sbProducts] > 0)
			            {
           					new tmpcar = GetPlayerVehicleID(playerid);
							SetVehiclePos(tmpcar, 2062.1294,-1831.5498,13.5469);
			        		SetVehicleZAngle(tmpcar, 90);
			        		SafeGivePlayerMoney(playerid, - SBizzInfo[5][sbEntranceCost]);
			        		SBizzInfo[5][sbTill] += SBizzInfo[5][sbEntranceCost];
			        		SBizzInfo[5][sbProducts]--;
			        		SetTimerEx("AfterSpray1", 5000, false, "i", playerid);
						}
						else
						{
						    GameTextForPlayer(playerid, "~r~Out of stock", 5000, 1);
						}
					}
					else
					{
					    SendClientMessage(playerid, COLOR_GREY, "You don't have enough money to enter Pay & Spray.");
					}
			    }
			}
			else if (PlayerToPoint(4, playerid,1024.9756,-1030.7930,32.0257))
			{ // Pay & Spray
			    if(GetPlayerState(playerid) == 2)
			    {
			        if(GetPlayerMoney(playerid) > SBizzInfo[5][sbEntranceCost] + 100)
			        {
			            if(SBizzInfo[5][sbProducts] > 0)
			            {
           					new tmpcar = GetPlayerVehicleID(playerid);
							SetVehiclePos(tmpcar, 1024.9763,-1021.8850,32.1016);
			        		SetVehicleZAngle(tmpcar, 0);
			        		SafeGivePlayerMoney(playerid, - SBizzInfo[5][sbEntranceCost]);
			        		SBizzInfo[5][sbTill] += SBizzInfo[5][sbEntranceCost];
			        		SBizzInfo[5][sbProducts]--;
			        		SetTimerEx("AfterSpray2", 5000, false, "i", playerid);
						}
						else
						{
						    GameTextForPlayer(playerid, "~r~Out of stock", 5000, 1);
						}
					}
					else
					{
					    SendClientMessage(playerid, COLOR_GREY, "You don't have enough money to enter Pay & Spray.");
					}
			    }
			}
			else if (PlayerToPoint(4, playerid,488.3819,-1733.0563,11.1752))
			{ // Pay & Spray
			    if(GetPlayerState(playerid) == 2)
			    {
			        if(GetPlayerMoney(playerid) > SBizzInfo[5][sbEntranceCost] + 100)
			        {
			            if(SBizzInfo[5][sbProducts] > 0)
			            {
           					new tmpcar = GetPlayerVehicleID(playerid);
							SetVehiclePos(tmpcar, 487.4099,-1741.4585,11.1330);
			        		SetVehicleZAngle(tmpcar, 180);
			        		SafeGivePlayerMoney(playerid, - SBizzInfo[5][sbEntranceCost]);
			        		SBizzInfo[5][sbTill] += SBizzInfo[5][sbEntranceCost];
			        		SBizzInfo[5][sbProducts]--;
			        		SetTimerEx("AfterSpray3", 5000, false, "i", playerid);
						}
						else
						{
						    GameTextForPlayer(playerid, "~r~Out of stock", 5000, 1);
						}
					}
					else
					{
					    SendClientMessage(playerid, COLOR_GREY, "You don't have enough money to enter Pay & Spray.");
					}
			    }
			}
			else if (PlayerToPoint(4, playerid,719.8940,-464.8272,16.3359))
			{ // Pay & Spray
			    if(GetPlayerState(playerid) == 2)
			    {
			        if(GetPlayerMoney(playerid) > SBizzInfo[5][sbEntranceCost] + 100)
			        {
			            if(SBizzInfo[5][sbProducts] > 0)
			            {
           					new tmpcar = GetPlayerVehicleID(playerid);
							SetVehiclePos(tmpcar, 720.3924,-456.0286,16.3359);
			        		SetVehicleZAngle(tmpcar, 0);
			        		SafeGivePlayerMoney(playerid, - SBizzInfo[5][sbEntranceCost]);
			        		SBizzInfo[5][sbTill] += SBizzInfo[5][sbEntranceCost];
			        		SBizzInfo[5][sbProducts]--;
			        		SetTimerEx("AfterSpray4", 5000, false, "i", playerid);
						}
						else
						{
						    GameTextForPlayer(playerid, "~r~Out of stock", 5000, 1);
						}
					}
					else
					{
					    SendClientMessage(playerid, COLOR_GREY, "You don't have enough money to enter Pay & Spray.");
					}
			    }
			}
		}
		return 1;
	}
Reply
#8

Try this one:
pawn Код:
// put this in your OnPlayerKeyStateChange callback
if(newkeys & KEY_SECONDARY_ATTACK)
{
    new string[128];
    for(new i = 0; i < sizeof(HouseInfo); i++)
            {
                if (PlayerToPoint(3, playerid,HouseInfo[i][hEntrancex], HouseInfo[i][hEntrancey], HouseInfo[i][hEntrancez]))
                {
                    //printf("Found House :%d",i);
                    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);
                    }
                }
            }
            for(new i = 0; i < sizeof(BizzInfo); i++)
            {
                if (PlayerToPoint(3, playerid,BizzInfo[i][bEntranceX], BizzInfo[i][bEntranceY], BizzInfo[i][bEntranceZ]))
                {
                    //printf("Found House :%d",i);
                    if(!IsACop(playerid) && i == 3)
                    {
                        SendClientMessage(playerid, COLOR_GREY, "   Cops only !");
                        return 1;
                    }
                    if(PlayerInfo[playerid][pPbiskey] == i || GetPlayerMoney(playerid) >= BizzInfo[i][bEntranceCost])
                    {
                        if(PlayerInfo[playerid][pPbiskey] != i)
                        {
                            if(BizzInfo[i][bLocked] == 1)
                            {
                                GameTextForPlayer(playerid, "~r~Closed", 5000, 1);
                                return 1;
                            }
                            if(BizzInfo[i][bProducts] == 0)
                            {
                                GameTextForPlayer(playerid, "~r~Out Of Stock", 5000, 1);
                                return 1;
                            }
                            SafeGivePlayerMoney(playerid,-BizzInfo[i][bEntranceCost]);
                            format(string, sizeof(string), "~r~-$%d~n~~w~type /lahku~n~to get out", BizzInfo[i][bEntranceCost]);
                            BizzInfo[i][bTill] += BizzInfo[i][bEntranceCost];
                            ExtortionBiz(i, BizzInfo[i][bEntranceCost]);
                            BizzInfo[i][bProducts]--;
                            OnPropUpdate();
                            GameTextForPlayer(playerid, string, 5000, 3);
                        }
                        SetPlayerInterior(playerid,BizzInfo[i][bInterior]);
                        SetPlayerPos(playerid,BizzInfo[i][bExitX],BizzInfo[i][bExitY],BizzInfo[i][bExitZ]);
                        PlayerInfo[playerid][pInt] = BizzInfo[i][bInterior];
                        PlayerInfo[playerid][pLocal] = i+99;
                        new dood[MAX_PLAYER_NAME];
                        GetPlayerName(playerid, dood, sizeof(dood));
                        format(string, sizeof(string), "%s payed $%d to enter biz %d", dood, BizzInfo[i][bEntranceCost], i);
                        printf("%s", string);
                        PayLog(string);
                        //PlayerInfo[playerid][pLocal] = i;
                    }
                    else
                    {
                        GameTextForPlayer(playerid, "~r~You dont have the cash", 5000, 1);
                    }
                }
            }
            for(new i = 0; i < sizeof(SBizzInfo); i++)
            {
                if (PlayerToPoint(3, playerid,SBizzInfo[i][sbEntranceX], SBizzInfo[i][sbEntranceY], SBizzInfo[i][sbEntranceZ]))
                {
                    if(PlayerInfo[playerid][pPbiskey] == i || GetPlayerMoney(playerid) >= SBizzInfo[i][sbEntranceCost])
                    {
                        if(PlayerInfo[playerid][pPbiskey] != i)
                        {
                            if(SBizzInfo[i][sbLocked] == 1)
                            {
                                GameTextForPlayer(playerid, "~r~Closed", 5000, 1);
                                return 1;
                            }
                            if(SBizzInfo[i][sbProducts] == 0)
                            {
                                GameTextForPlayer(playerid, "~r~Out Of Stock", 5000, 1);
                                return 1;
                            }
                            if(i == 10)
                            {
                                PaintballPlayers ++;
                                PlayerPaintballing[playerid] = 1;
                                new rand = random(sizeof(PaintballSpawns));
                                SetPlayerPos(playerid, PaintballSpawns[rand][0], PaintballSpawns[rand][1], PaintballSpawns[rand][2]);
                                TogglePlayerControllable(playerid, 0);
                            }
                            else if(i == 11)
                            {
                                PlayerKarting[playerid] = 1;
                                SendClientMessage(playerid, TEAM_GROVE_COLOR, "You can now parcipitate in a Karting Race, grab a Kart.");
                            }
                            else
                            {
                                return 1;
                            }
                            SafeGivePlayerMoney(playerid,-SBizzInfo[i][sbEntranceCost]);
                            gSpentCash[playerid] = GetPlayerMoney(playerid);
                            SBizzInfo[i][sbProducts]--;
                            SBizzInfo[i][sbTill] += SBizzInfo[i][sbEntranceCost];
                            ExtortionSBiz(i, SBizzInfo[i][sbEntranceCost]);
                            new dood[MAX_PLAYER_NAME];
                            GetPlayerName(playerid, dood, sizeof(dood));
                            format(string, sizeof(string), "%s payed $%d to enter sbiz %d", dood, SBizzInfo[i][sbEntranceCost], i);
                            printf("%s", string);
                            PayLog(string);
                            OnPropUpdate();
                        }
                    }
                    else
                    {
                        GameTextForPlayer(playerid, "~r~You dont have the cash", 5000, 1);
                    }
                }
            }
            if (PlayerToPoint(3.0, playerid,2695.6235,-1704.6960,11.8438))
            {
                GameTextForPlayer(playerid, "~w~Welcome to the 8ball Track", 5000, 1);
                SetPlayerInterior(playerid,7);
                PlayerInfo[playerid][pInt] = 7;
                SetPlayerPos(playerid,-1404.5299,-259.0602,1043.6563);
            }
            else if (PlayerToPoint(8.0, playerid,-2111.5686,-443.9720,38.7344))
            {
                GameTextForPlayer(playerid, "~w~Welcome to the Dirt Track", 5000, 1);
                SetPlayerInterior(playerid,4);
                PlayerInfo[playerid][pInt] = 4;
                SetPlayerPos(playerid,-1443.0554,-581.1879,1055.0472);
            }
            else if (PlayerToPoint(8.0, playerid,-2080.3079,-406.0309,38.7344))
            {
                GameTextForPlayer(playerid, "~w~Welcome to the Stunting Track", 5000, 1);
                SetPlayerInterior(playerid,14);
                PlayerInfo[playerid][pInt] = 14;
                SetPlayerPos(playerid,-1464.7732,1557.5533,1052.5313);
            }
            else if (PlayerToPoint(4, playerid,2073.2979,-1831.1228,13.5469))
            { // Pay & Spray
                if(GetPlayerState(playerid) == 2)
                {
                    if(GetPlayerMoney(playerid) > SBizzInfo[5][sbEntranceCost] + 100)
                    {
                        if(SBizzInfo[5][sbProducts] > 0)
                        {
                            new tmpcar = GetPlayerVehicleID(playerid);
                            SetVehiclePos(tmpcar, 2062.1294,-1831.5498,13.5469);
                            SetVehicleZAngle(tmpcar, 90);
                            SafeGivePlayerMoney(playerid, - SBizzInfo[5][sbEntranceCost]);
                            SBizzInfo[5][sbTill] += SBizzInfo[5][sbEntranceCost];
                            SBizzInfo[5][sbProducts]--;
                            SetTimerEx("AfterSpray1", 5000, false, "i", playerid);
                        }
                        else
                        {
                            GameTextForPlayer(playerid, "~r~Out of stock", 5000, 1);
                        }
                    }
                    else
                    {
                        SendClientMessage(playerid, COLOR_GREY, "You don't have enough money to enter Pay & Spray.");
                    }
                }
            }
            else if (PlayerToPoint(4, playerid,1024.9756,-1030.7930,32.0257))
            { // Pay & Spray
                if(GetPlayerState(playerid) == 2)
                {
                    if(GetPlayerMoney(playerid) > SBizzInfo[5][sbEntranceCost] + 100)
                    {
                        if(SBizzInfo[5][sbProducts] > 0)
                        {
                            new tmpcar = GetPlayerVehicleID(playerid);
                            SetVehiclePos(tmpcar, 1024.9763,-1021.8850,32.1016);
                            SetVehicleZAngle(tmpcar, 0);
                            SafeGivePlayerMoney(playerid, - SBizzInfo[5][sbEntranceCost]);
                            SBizzInfo[5][sbTill] += SBizzInfo[5][sbEntranceCost];
                            SBizzInfo[5][sbProducts]--;
                            SetTimerEx("AfterSpray2", 5000, false, "i", playerid);
                        }
                        else
                        {
                            GameTextForPlayer(playerid, "~r~Out of stock", 5000, 1);
                        }
                    }
                    else
                    {
                        SendClientMessage(playerid, COLOR_GREY, "You don't have enough money to enter Pay & Spray.");
                    }
                }
            }
            else if (PlayerToPoint(4, playerid,488.3819,-1733.0563,11.1752))
            { // Pay & Spray
                if(GetPlayerState(playerid) == 2)
                {
                    if(GetPlayerMoney(playerid) > SBizzInfo[5][sbEntranceCost] + 100)
                    {
                        if(SBizzInfo[5][sbProducts] > 0)
                        {
                            new tmpcar = GetPlayerVehicleID(playerid);
                            SetVehiclePos(tmpcar, 487.4099,-1741.4585,11.1330);
                            SetVehicleZAngle(tmpcar, 180);
                            SafeGivePlayerMoney(playerid, - SBizzInfo[5][sbEntranceCost]);
                            SBizzInfo[5][sbTill] += SBizzInfo[5][sbEntranceCost];
                            SBizzInfo[5][sbProducts]--;
                            SetTimerEx("AfterSpray3", 5000, false, "i", playerid);
                        }
                        else
                        {
                            GameTextForPlayer(playerid, "~r~Out of stock", 5000, 1);
                        }
                    }
                    else
                    {
                        SendClientMessage(playerid, COLOR_GREY, "You don't have enough money to enter Pay & Spray.");
                    }
                }
            }
            else if (PlayerToPoint(4, playerid,719.8940,-464.8272,16.3359))
            { // Pay & Spray
                if(GetPlayerState(playerid) == 2)
                {
                    if(GetPlayerMoney(playerid) > SBizzInfo[5][sbEntranceCost] + 100)
                    {
                        if(SBizzInfo[5][sbProducts] > 0)
                        {
                            new tmpcar = GetPlayerVehicleID(playerid);
                            SetVehiclePos(tmpcar, 720.3924,-456.0286,16.3359);
                            SetVehicleZAngle(tmpcar, 0);
                            SafeGivePlayerMoney(playerid, - SBizzInfo[5][sbEntranceCost]);
                            SBizzInfo[5][sbTill] += SBizzInfo[5][sbEntranceCost];
                            SBizzInfo[5][sbProducts]--;
                            SetTimerEx("AfterSpray4", 5000, false, "i", playerid);
                        }
                        else
                        {
                            GameTextForPlayer(playerid, "~r~Out of stock", 5000, 1);
                        }
                    }
                    else
                    {
                        SendClientMessage(playerid, COLOR_GREY, "You don't have enough money to enter Pay & Spray.");
                    }
                }
            }
}
Reply
#9

Quote:
Originally Posted by Norck
Посмотреть сообщение
Try this one:
pawn Код:
// put this in your OnPlayerKeyStateChange callback
if(newkeys & KEY_SECONDARY_ATTACK)
{
    new string[128];
    for(new i = 0; i < sizeof(HouseInfo); i++)
            {
                if (PlayerToPoint(3, playerid,HouseInfo[i][hEntrancex], HouseInfo[i][hEntrancey], HouseInfo[i][hEntrancez]))
                {
                    //printf("Found House :%d",i);
                    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);
                    }
                }
            }
            for(new i = 0; i < sizeof(BizzInfo); i++)
            {
                if (PlayerToPoint(3, playerid,BizzInfo[i][bEntranceX], BizzInfo[i][bEntranceY], BizzInfo[i][bEntranceZ]))
                {
                    //printf("Found House :%d",i);
                    if(!IsACop(playerid) && i == 3)
                    {
                        SendClientMessage(playerid, COLOR_GREY, "   Cops only !");
                        return 1;
                    }
                    if(PlayerInfo[playerid][pPbiskey] == i || GetPlayerMoney(playerid) >= BizzInfo[i][bEntranceCost])
                    {
                        if(PlayerInfo[playerid][pPbiskey] != i)
                        {
                            if(BizzInfo[i][bLocked] == 1)
                            {
                                GameTextForPlayer(playerid, "~r~Closed", 5000, 1);
                                return 1;
                            }
                            if(BizzInfo[i][bProducts] == 0)
                            {
                                GameTextForPlayer(playerid, "~r~Out Of Stock", 5000, 1);
                                return 1;
                            }
                            SafeGivePlayerMoney(playerid,-BizzInfo[i][bEntranceCost]);
                            format(string, sizeof(string), "~r~-$%d~n~~w~type /lahku~n~to get out", BizzInfo[i][bEntranceCost]);
                            BizzInfo[i][bTill] += BizzInfo[i][bEntranceCost];
                            ExtortionBiz(i, BizzInfo[i][bEntranceCost]);
                            BizzInfo[i][bProducts]--;
                            OnPropUpdate();
                            GameTextForPlayer(playerid, string, 5000, 3);
                        }
                        SetPlayerInterior(playerid,BizzInfo[i][bInterior]);
                        SetPlayerPos(playerid,BizzInfo[i][bExitX],BizzInfo[i][bExitY],BizzInfo[i][bExitZ]);
                        PlayerInfo[playerid][pInt] = BizzInfo[i][bInterior];
                        PlayerInfo[playerid][pLocal] = i+99;
                        new dood[MAX_PLAYER_NAME];
                        GetPlayerName(playerid, dood, sizeof(dood));
                        format(string, sizeof(string), "%s payed $%d to enter biz %d", dood, BizzInfo[i][bEntranceCost], i);
                        printf("%s", string);
                        PayLog(string);
                        //PlayerInfo[playerid][pLocal] = i;
                    }
                    else
                    {
                        GameTextForPlayer(playerid, "~r~You dont have the cash", 5000, 1);
                    }
                }
            }
            for(new i = 0; i < sizeof(SBizzInfo); i++)
            {
                if (PlayerToPoint(3, playerid,SBizzInfo[i][sbEntranceX], SBizzInfo[i][sbEntranceY], SBizzInfo[i][sbEntranceZ]))
                {
                    if(PlayerInfo[playerid][pPbiskey] == i || GetPlayerMoney(playerid) >= SBizzInfo[i][sbEntranceCost])
                    {
                        if(PlayerInfo[playerid][pPbiskey] != i)
                        {
                            if(SBizzInfo[i][sbLocked] == 1)
                            {
                                GameTextForPlayer(playerid, "~r~Closed", 5000, 1);
                                return 1;
                            }
                            if(SBizzInfo[i][sbProducts] == 0)
                            {
                                GameTextForPlayer(playerid, "~r~Out Of Stock", 5000, 1);
                                return 1;
                            }
                            if(i == 10)
                            {
                                PaintballPlayers ++;
                                PlayerPaintballing[playerid] = 1;
                                new rand = random(sizeof(PaintballSpawns));
                                SetPlayerPos(playerid, PaintballSpawns[rand][0], PaintballSpawns[rand][1], PaintballSpawns[rand][2]);
                                TogglePlayerControllable(playerid, 0);
                            }
                            else if(i == 11)
                            {
                                PlayerKarting[playerid] = 1;
                                SendClientMessage(playerid, TEAM_GROVE_COLOR, "You can now parcipitate in a Karting Race, grab a Kart.");
                            }
                            else
                            {
                                return 1;
                            }
                            SafeGivePlayerMoney(playerid,-SBizzInfo[i][sbEntranceCost]);
                            gSpentCash[playerid] = GetPlayerMoney(playerid);
                            SBizzInfo[i][sbProducts]--;
                            SBizzInfo[i][sbTill] += SBizzInfo[i][sbEntranceCost];
                            ExtortionSBiz(i, SBizzInfo[i][sbEntranceCost]);
                            new dood[MAX_PLAYER_NAME];
                            GetPlayerName(playerid, dood, sizeof(dood));
                            format(string, sizeof(string), "%s payed $%d to enter sbiz %d", dood, SBizzInfo[i][sbEntranceCost], i);
                            printf("%s", string);
                            PayLog(string);
                            OnPropUpdate();
                        }
                    }
                    else
                    {
                        GameTextForPlayer(playerid, "~r~You dont have the cash", 5000, 1);
                    }
                }
            }
            if (PlayerToPoint(3.0, playerid,2695.6235,-1704.6960,11.8438))
            {
                GameTextForPlayer(playerid, "~w~Welcome to the 8ball Track", 5000, 1);
                SetPlayerInterior(playerid,7);
                PlayerInfo[playerid][pInt] = 7;
                SetPlayerPos(playerid,-1404.5299,-259.0602,1043.6563);
            }
            else if (PlayerToPoint(8.0, playerid,-2111.5686,-443.9720,38.7344))
            {
                GameTextForPlayer(playerid, "~w~Welcome to the Dirt Track", 5000, 1);
                SetPlayerInterior(playerid,4);
                PlayerInfo[playerid][pInt] = 4;
                SetPlayerPos(playerid,-1443.0554,-581.1879,1055.0472);
            }
            else if (PlayerToPoint(8.0, playerid,-2080.3079,-406.0309,38.7344))
            {
                GameTextForPlayer(playerid, "~w~Welcome to the Stunting Track", 5000, 1);
                SetPlayerInterior(playerid,14);
                PlayerInfo[playerid][pInt] = 14;
                SetPlayerPos(playerid,-1464.7732,1557.5533,1052.5313);
            }
            else if (PlayerToPoint(4, playerid,2073.2979,-1831.1228,13.5469))
            { // Pay & Spray
                if(GetPlayerState(playerid) == 2)
                {
                    if(GetPlayerMoney(playerid) > SBizzInfo[5][sbEntranceCost] + 100)
                    {
                        if(SBizzInfo[5][sbProducts] > 0)
                        {
                            new tmpcar = GetPlayerVehicleID(playerid);
                            SetVehiclePos(tmpcar, 2062.1294,-1831.5498,13.5469);
                            SetVehicleZAngle(tmpcar, 90);
                            SafeGivePlayerMoney(playerid, - SBizzInfo[5][sbEntranceCost]);
                            SBizzInfo[5][sbTill] += SBizzInfo[5][sbEntranceCost];
                            SBizzInfo[5][sbProducts]--;
                            SetTimerEx("AfterSpray1", 5000, false, "i", playerid);
                        }
                        else
                        {
                            GameTextForPlayer(playerid, "~r~Out of stock", 5000, 1);
                        }
                    }
                    else
                    {
                        SendClientMessage(playerid, COLOR_GREY, "You don't have enough money to enter Pay & Spray.");
                    }
                }
            }
            else if (PlayerToPoint(4, playerid,1024.9756,-1030.7930,32.0257))
            { // Pay & Spray
                if(GetPlayerState(playerid) == 2)
                {
                    if(GetPlayerMoney(playerid) > SBizzInfo[5][sbEntranceCost] + 100)
                    {
                        if(SBizzInfo[5][sbProducts] > 0)
                        {
                            new tmpcar = GetPlayerVehicleID(playerid);
                            SetVehiclePos(tmpcar, 1024.9763,-1021.8850,32.1016);
                            SetVehicleZAngle(tmpcar, 0);
                            SafeGivePlayerMoney(playerid, - SBizzInfo[5][sbEntranceCost]);
                            SBizzInfo[5][sbTill] += SBizzInfo[5][sbEntranceCost];
                            SBizzInfo[5][sbProducts]--;
                            SetTimerEx("AfterSpray2", 5000, false, "i", playerid);
                        }
                        else
                        {
                            GameTextForPlayer(playerid, "~r~Out of stock", 5000, 1);
                        }
                    }
                    else
                    {
                        SendClientMessage(playerid, COLOR_GREY, "You don't have enough money to enter Pay & Spray.");
                    }
                }
            }
            else if (PlayerToPoint(4, playerid,488.3819,-1733.0563,11.1752))
            { // Pay & Spray
                if(GetPlayerState(playerid) == 2)
                {
                    if(GetPlayerMoney(playerid) > SBizzInfo[5][sbEntranceCost] + 100)
                    {
                        if(SBizzInfo[5][sbProducts] > 0)
                        {
                            new tmpcar = GetPlayerVehicleID(playerid);
                            SetVehiclePos(tmpcar, 487.4099,-1741.4585,11.1330);
                            SetVehicleZAngle(tmpcar, 180);
                            SafeGivePlayerMoney(playerid, - SBizzInfo[5][sbEntranceCost]);
                            SBizzInfo[5][sbTill] += SBizzInfo[5][sbEntranceCost];
                            SBizzInfo[5][sbProducts]--;
                            SetTimerEx("AfterSpray3", 5000, false, "i", playerid);
                        }
                        else
                        {
                            GameTextForPlayer(playerid, "~r~Out of stock", 5000, 1);
                        }
                    }
                    else
                    {
                        SendClientMessage(playerid, COLOR_GREY, "You don't have enough money to enter Pay & Spray.");
                    }
                }
            }
            else if (PlayerToPoint(4, playerid,719.8940,-464.8272,16.3359))
            { // Pay & Spray
                if(GetPlayerState(playerid) == 2)
                {
                    if(GetPlayerMoney(playerid) > SBizzInfo[5][sbEntranceCost] + 100)
                    {
                        if(SBizzInfo[5][sbProducts] > 0)
                        {
                            new tmpcar = GetPlayerVehicleID(playerid);
                            SetVehiclePos(tmpcar, 720.3924,-456.0286,16.3359);
                            SetVehicleZAngle(tmpcar, 0);
                            SafeGivePlayerMoney(playerid, - SBizzInfo[5][sbEntranceCost]);
                            SBizzInfo[5][sbTill] += SBizzInfo[5][sbEntranceCost];
                            SBizzInfo[5][sbProducts]--;
                            SetTimerEx("AfterSpray4", 5000, false, "i", playerid);
                        }
                        else
                        {
                            GameTextForPlayer(playerid, "~r~Out of stock", 5000, 1);
                        }
                    }
                    else
                    {
                        SendClientMessage(playerid, COLOR_GREY, "You don't have enough money to enter Pay & Spray.");
                    }
                }
            }
}
Pawno crashes ??
Reply
#10

Quote:
Originally Posted by antsolen
Посмотреть сообщение
Pawno crashes ??
Again? Are you sure that you have copy-pasted the whole code and you didn't missed last '}' bracket?
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)