Garage Help
#1

Could anyone tell me why the vehicle still decides to not enter the garage..
pawn Код:
for(new idx=1; idx<MAX_GARAGES; idx++) // Dynamic Garages
    {
       
       
        if(IsPlayerInRangeOfPoint(playerid, 2, GarageInfo[idx][garageX], GarageInfo[idx][garageY], GarageInfo[idx][garageZ]))
        {
        if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) // They're NOT in a car
            {
                if(GarageInfo[idx][garageLevel] == 1)
                    {
                        if(!GarageInfo[idx][garageStatus] && PlayerInfo[playerid][pGarage] != idx) return SendClientMessage(playerid, COLOR_GREY, "This garage is locked.");
                        format(string, sizeof(string), "* %s opens the door and enters the garage.", RPN(playerid));
                        SendNearbyMessage(playerid, 15, string, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE);
                        SetPlayerVirtualWorld(playerid, idx+500);
                        SetPlayerPos(playerid, 2522.000000,-1673.383911,14.866223);
                        SetPlayerFacingAngle(playerid, 267.0980);
                        SetCameraBehindPlayer(playerid);
                        SetPlayerInterior(playerid, 0);
                    }
            }
                else if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
                    {
                        new vehicle = GetPlayerVehicleID(playerid);
                        //new myveh;
                        if(GarageInfo[idx][garageLevel] == 1)
                        {
                            if(!GarageInfo[idx][garageStatus] && PlayerInfo[playerid][pGarage] != idx) return SendClientMessage(playerid, COLOR_GREY, "This garage is locked.");
                            format(string, sizeof(string), "* %s opens the door and enters the garage.", RPN(playerid));
                            SendNearbyMessage(playerid, 15, string, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE);
                            SetPlayerVirtualWorld(playerid, idx+500);
                            //if(vehicle != PlayerInfo[playerid][pVeh] && vehicle != PlayerInfo[playerid][pVVeh]) return SendClientMessage(playerid, COLOR_GREY, "You must be in your own vehicle to enter your garage");
                            //if(GetPlayerVehicleID(playerid) == PlayerInfo[playerid][pVeh]) return myveh = 1;
                            //else if(GetPlayerVehicleID(playerid) == PlayerInfo[playerid][pVVeh]) return myveh = 2;
                            //if(myveh ==2) return PlayerInfo[playerid][pVVeh] = SetVehiclePos(vehicle, 2522.000000,-1673.383911,14.866223);
                            //else if(myveh ==1) return PlayerInfo[playerid][pVeh] = SetVehiclePos(vehicle, 2522.000000,-1673.383911,14.866223);
                            SetPlayerPos(playerid, 2522.000000,-1673.383911,14.866223);
                            SetPlayerFacingAngle(playerid, 267.0980);
                            SetCameraBehindPlayer(playerid);
                            SetPlayerInterior(playerid, 0);
                            SetVehiclePos(vehicle, 2522.000000,-1673.383911,14.866223);
                            LinkVehicleToInterior(vehicle, GetPlayerInterior(playerid));

                        }
                    }  
            }                  
    }
Reply
#2

Do you need to put VirtualWorld to Vehicle as well as for player?
Reply
#3

Nah it just stays outside the garage. Like the Garage Icon thing.
Reply
#4

....
Reply
#5

pawn Код:
for(new idx=1; idx<MAX_GARAGES; idx++) // Dynamic Garages
{
    if(IsPlayerInRangeOfPoint(playerid, 2, GarageInfo[idx][garageX], GarageInfo[idx][garageY], GarageInfo[idx][garageZ]))
    {
        if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) // They're NOT in a car
        {
            if(GarageInfo[idx][garageLevel] == 1)
            {
                if(!GarageInfo[idx][garageStatus] && PlayerInfo[playerid][pGarage] != idx) return SendClientMessage(playerid, COLOR_GREY, "This garage is locked.");
                format(string, sizeof(string), "* %s opens the door and enters the garage.", RPN(playerid));
                SendNearbyMessage(playerid, 15, string, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE);
                SetPlayerVirtualWorld(playerid, idx+500);
                SetPlayerPos(playerid, 2522.000000,-1673.383911,14.866223);
                SetPlayerFacingAngle(playerid, 267.0980);
                SetCameraBehindPlayer(playerid);
                SetPlayerInterior(playerid, 0);
            }
        }
        else if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
        {
            new vehicle = GetPlayerVehicleID(playerid);
            //new myveh;
            if(GarageInfo[idx][garageLevel] == 1)
            {
                if(!GarageInfo[idx][garageStatus] && PlayerInfo[playerid][pGarage] != idx) return SendClientMessage(playerid, COLOR_GREY, "This garage is locked.");
                format(string, sizeof(string), "* %s opens the door and enters the garage.", RPN(playerid));
                SendNearbyMessage(playerid, 15, string, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE);
                SetPlayerVirtualWorld(playerid, idx+500);
                //if(vehicle != PlayerInfo[playerid][pVeh] && vehicle != PlayerInfo[playerid][pVVeh]) return SendClientMessage(playerid, COLOR_GREY, "You must be in your own vehicle to enter your garage");
                //if(GetPlayerVehicleID(playerid) == PlayerInfo[playerid][pVeh]) return myveh = 1;
                //else if(GetPlayerVehicleID(playerid) == PlayerInfo[playerid][pVVeh]) return myveh = 2;
                //if(myveh ==2) return PlayerInfo[playerid][pVVeh] = SetVehiclePos(vehicle, 2522.000000,-1673.383911,14.866223);
                //else if(myveh ==1) return PlayerInfo[playerid][pVeh] = SetVehiclePos(vehicle, 2522.000000,-1673.383911,14.866223);
                SetPlayerPos(playerid, 2522.000000,-1673.383911,14.866223);
                SetPlayerFacingAngle(playerid, 267.0980);
                SetCameraBehindPlayer(playerid);
                SetPlayerInterior(playerid, 0);
                SetVehiclePos(vehicle, 2522.000000,-1673.383911,14.866223);
                LinkVehicleToInterior(vehicle, GetPlayerInterior(playerid));
            }
        }
    }
}
You had the "else" statement on the wrong location,
Reply


Forum Jump:


Users browsing this thread: 3 Guest(s)