enter exit with Key problem
#1

If i enter a business and when i press F to exit,i'm entering again in the business instead exit,Lines:
pawn Код:
if(newkeys == KEY_SECONDARY_ATTACK)
    {
        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)
                    {
                        SetPlayerVirtualWorld(playerid, i);
                        SetPlayerInterior(playerid,HouseInfo[i][hInt]);
                        SetPlayerPos(playerid,HouseInfo[i][hExitx],HouseInfo[i][hExity],HouseInfo[i][hExitz]);
                        GameTextForPlayer(playerid, "~w~Bun venit acasa", 5000, 1);
                        PlayerInfo[playerid][pInt] = HouseInfo[i][hInt];
                        PlayerInfo[playerid][pLocal] = i+500;
                        return 1;
                    }
                    else
                    {
                        GameTextForPlayer(playerid, "~r~INCHIS", 5000, 1);
                        return 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(PlayerInfo[playerid][pPbiskey] == i || GetPlayerMoney(playerid) >= BizzInfo[i][bEntranceCost])
                    {
                        if(PlayerInfo[playerid][pPbiskey] != i)
                        {
                            if(BizzInfo[i][bLocked] == 1)
                            {
                                GameTextForPlayer(playerid, "~r~INCHIS", 5000, 1);
                                return 1;
                            }
                            if(i == 6 || i == 7 || i == 8)
                            {
                                OnPlayerEnterFood(playerid, 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;
                                SetPlayerVirtualWorld(playerid, i+99);
                                format(string, sizeof(string), "Scrie /exit~n~pentru a iesi");
                                GameTextForPlayer(playerid, string, 5000, 3);
                                OnPropUpdate();
                                return 1;
                            }
                            if(i == 25)
                            {
                                OnPlayerEnterFood(playerid, 2)
                                SetPlayerInterior(playerid,BizzInfo[25][bInterior]);
                                SetPlayerPos(playerid,BizzInfo[25][bExitX],BizzInfo[25][bExitY],BizzInfo[25][bExitZ]);
                                PlayerInfo[playerid][pInt] = BizzInfo[25][bInterior];
                                PlayerInfo[playerid][pLocal] = 25+99;
                                SetPlayerVirtualWorld(playerid, 25+99);
                                format(string, sizeof(string), "Scrie /exit~n~pentru a iesi");
                                GameTextForPlayer(playerid, string, 5000, 3);
                                OnPropUpdate();
                                return 1;
                            }
                            if(i == 2)
                            {
                                OnPlayerEnterFood(playerid, 1)
                                SetPlayerInterior(playerid,BizzInfo[2][bInterior]);
                                SetPlayerPos(playerid,BizzInfo[2][bExitX],BizzInfo[2][bExitY],BizzInfo[2][bExitZ]);
                                PlayerInfo[playerid][pInt] = BizzInfo[2][bInterior];
                                PlayerInfo[playerid][pLocal] = 2+99;
                                SetPlayerVirtualWorld(playerid, 2+99);
                                format(string, sizeof(string), "Scrie /exit~n~pentru a iesi");
                                GameTextForPlayer(playerid, string, 5000, 3);
                                OnPropUpdate();
                                return 1;
                            }
                            if(i == 24)
                            {
                                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;
                                SetPlayerVirtualWorld(playerid, i+99);
                                format(string, sizeof(string), "Scrie /exit~n~pentru a iesi");
                                GameTextForPlayer(playerid, string, 5000, 3);
                                return 1;
                            }
                            if(i == 5 || i == 14 || i == 15 || i == 9 || i == 10 || i == 11 || i == 12 || i == 13 || i == 16 || i == 17 || i == 19 || i == 20 || i == 21 || i == 22 || i == 23)
                            {
                                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;
                                SetPlayerVirtualWorld(playerid, i+99);
                                format(string, sizeof(string), "Scrie /exit~n~pentru a iesi");
                                GameTextForPlayer(playerid, string, 5000, 3);
                            }
                            SafeGivePlayerMoney(playerid,-BizzInfo[i][bEntranceCost]);
                            format(string, sizeof(string), "~r~-%d RON~n~~w~scrie /exit~n~pentru a iesi", BizzInfo[i][bEntranceCost]);
                            BizzInfo[i][bTill] += BizzInfo[i][bEntranceCost];
                            OnPropUpdate();
                            GameTextForPlayer(playerid, string, 5000, 3);
                        }
                        if(i == 6 || i == 7 || i == 8)
                        {
                                OnPlayerEnterFood(playerid, 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;
                                SetPlayerVirtualWorld(playerid, i+99);
                                format(string, sizeof(string), "Scrie /exit~n~pentru a iesi");
                                GameTextForPlayer(playerid, string, 5000, 3);
                                OnPropUpdate();
                                return 1;
                        }
                        if(i == 25)
                        {
                                OnPlayerEnterFood(playerid, 2)
                                SetPlayerInterior(playerid,BizzInfo[25][bInterior]);
                                SetPlayerPos(playerid,BizzInfo[25][bExitX],BizzInfo[25][bExitY],BizzInfo[25][bExitZ]);
                                PlayerInfo[playerid][pInt] = BizzInfo[25][bInterior];
                                PlayerInfo[playerid][pLocal] = 25+99;
                                SetPlayerVirtualWorld(playerid, 25+99);
                                format(string, sizeof(string), "Scrie /exit~n~pentru a iesi");
                                GameTextForPlayer(playerid, string, 5000, 3);
                                OnPropUpdate();
                                return 1;
                        }
                        if(i == 2)
                        {
                                OnPlayerEnterFood(playerid, 1)
                                SetPlayerInterior(playerid,BizzInfo[2][bInterior]);
                                SetPlayerPos(playerid,BizzInfo[2][bExitX],BizzInfo[2][bExitY],BizzInfo[2][bExitZ]);
                                PlayerInfo[playerid][pInt] = BizzInfo[2][bInterior];
                                PlayerInfo[playerid][pLocal] = 2+99;
                                SetPlayerVirtualWorld(playerid, 2+99);
                                format(string, sizeof(string), "Scrie /exit~n~pentru a iesi");
                                GameTextForPlayer(playerid, string, 5000, 3);
                                OnPropUpdate();
                                return 1;
                        }
                        if(i == 5 || i == 14 || i == 15 || i == 9 || i == 10 || i == 11 || i == 12 || i == 13 || i == 16 || i == 17 || i == 19 || i == 20 || i == 21 || i == 22 || i == 23 || i == 24)
                        {
                                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;
                                SetPlayerVirtualWorld(playerid, i+99);
                                format(string, sizeof(string), "Scrie /exit~n~pentru a iesi");
                                GameTextForPlayer(playerid, string, 5000, 3);
                                OnPropUpdate();
                                return 1;
                        }
                        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;
                        SetPlayerVirtualWorld(playerid, i+99);
                        new dood[MAX_PLAYER_NAME];
                        GetPlayerName(playerid, dood, sizeof(dood));
                        format(string, sizeof(string), "%s a platit %d RON pentru a intra la %d", dood, BizzInfo[i][bEntranceCost], i);
                        printf("%s", string);
                        PayLog(string);
                        //PlayerInfo[playerid][pLocal] = i;
                        return 1;
                    }
                    else
                    {
                        GameTextForPlayer(playerid, "~r~Nu ai bani", 5000, 1);
                        return 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~Inchis", 5000, 1);
                                return 1;
                            }
                            SafeGivePlayerMoney(playerid,-SBizzInfo[i][sbEntranceCost]);
                            gSpentCash[playerid] = GetPlayerMoney(playerid);
                            SBizzInfo[i][sbTill] += SBizzInfo[i][sbEntranceCost];
                            new dood[MAX_PLAYER_NAME];
                            GetPlayerName(playerid, dood, sizeof(dood));
                            format(string, sizeof(string), "%s a platit %d RON pentru a intra la %d", dood, SBizzInfo[i][sbEntranceCost], i);
                            printf("%s", string);
                            PayLog(string);
                            OnPropUpdate();
                            return 1;
                        }
                    }
                    else
                    {
                        GameTextForPlayer(playerid, "~r~Nu ai bani", 5000, 1);
                        return 1;
                    }
                }
            }
            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(GetPlayerVirtualWorld(playerid) == i)
                    {
                            SetPlayerInterior(playerid, 0);
                            SetPlayerPos(playerid,HouseInfo[i][hEntrancex],HouseInfo[i][hEntrancey],HouseInfo[i][hEntrancez]);
                            PlayerInfo[playerid][pInt] = 0;
                            PlayerInfo[playerid][pLocal] = 999;
                            SetCameraBehindPlayer(playerid);
                            SetPlayerVirtualWorld(playerid,0);
                            if(HouseInfo[i][hHel] == 1 && HouseInfo[i][hArm] == 1)
                            {
                                SetPlayerHealth(playerid,100.0);
                                SetPlayerArmour(playerid,100.0);
                                return 1;
                            }
                            if(HouseInfo[i][hHel] == 1)
                            {
                                SetPlayerHealth(playerid,100.0);
                                return 1;
                            }
                            if(HouseInfo[i][hArm] == 1)
                            {
                                SetPlayerArmour(playerid,100.0);
                                return 1;
                            }
                    }
                }
            }
            for(new i = 0; i <  sizeof(BizzInfo); i++)
            {
                //printf("Bizz :%d",i);
                if (PlayerToPoint(3, playerid,BizzInfo[i][bExitX], BizzInfo[i][bExitY], BizzInfo[i][bExitZ]))
                {
                    if(GetPlayerVirtualWorld(playerid) == i+99)
                    {
                        SetPlayerInterior(playerid,0);
                        PlayerInfo[playerid][pInt] = 0;
                        SetPlayerPos(playerid,BizzInfo[i][bEntranceX],BizzInfo[i][bEntranceY],BizzInfo[i][bEntranceZ]);
                        PlayerInfo[playerid][pLocal] = 999;
                        SetPlayerVirtualWorld(playerid, 0);
                        OnPlayerExitFood(playerid)
                    }
                }
            }
        }
    }
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)