[Ajuda] Interior
#1

Estou com um problema, eu criei algumas casas dentro do interior id 18 pra ficar tipo um apartamento, e quando eu saio da casa o player fica voando. Sei que tenho que colocar pra setar o ID 18 no comando de sair da casa, mas o problema, e que tem casas na rua que o interior e id 0, e se eu fazer isso vai dar na mesma, alguйm pode me ajudar ?

Comandos /sair e /entrar.


/ENTRAR
pawn Код:
if(strcmp(cmd, "/entrar", 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]))
                {
                    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~Bem vindo em casa", 5000, 1);
                        PlayerInfo[playerid][pInt] = HouseInfo[i][hInt];
                        PlayerInfo[playerid][pLocal] = i;
                        HouseEntered[playerid] = i;
                    }
                    else
                    {
                        GameTextForPlayer(playerid, "~r~Fechado", 5000, 1);
                    }
                }
            }
...
/SAIR
pawn Код:
if(strcmp(cmd, "/sair", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            for(new i = 0; i <  sizeof(HouseInfo); i++)
            {
                if (PlayerToPoint(3, playerid,HouseInfo[i][hExitx], HouseInfo[i][hExity], HouseInfo[i][hExitz]))
                {
                    if(HouseEntered[playerid] == i)
                    {
                        SetPlayerInterior(playerid,0);
                        SetPlayerVirtualWorld(playerid,0);
                        SetPlayerPos(playerid,HouseInfo[i][hEntrancex],HouseInfo[i][hEntrancey],HouseInfo[i][hEntrancez]);
                        PlayerInfo[playerid][pInt] = 0;
                        SetPlayerVirtualWorld(playerid, 0);
                        PlayerInfo[playerid][pLocal] = 255;
                        HouseEntered[playerid] = 255;
                        return 1;
                    }
                }
            }
...
Grato desde jб !
Reply
#2

pawn Код:
if(interior != interior_dos_apartamentos)
{
    SetPlayerInterior(playerid, 0);
}
Tente assim.
Reply
#3

Victor, nгo entendi seu code, pode me explicar ?
Reply
#4

Basta por isso aqui mano..

SetPlayerInterior(playerid, 0);

Ele vai setar o Interior Do Player ID , para 0

pawn Код:
if(strcmp(cmd, "/sair", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            for(new i = 0; i <  sizeof(HouseInfo); i++)
            {
                if (PlayerToPoint(3, playerid,HouseInfo[i][hExitx], HouseInfo[i][hExity], HouseInfo[i][hExitz]))
                {
                    if(HouseEntered[playerid] == i)
                    {
                        SetPlayerInterior(playerid, 0);  
                        SetPlayerVirtualWorld(playerid,0);
                        SetPlayerPos(playerid,HouseInfo[i][hEntrancex],HouseInfo[i][hEntrancey],HouseInfo[i][hEntrancez]);
                        PlayerInfo[playerid][pInt] = 0;
                        SetPlayerVirtualWorld(playerid, 0);
                        PlayerInfo[playerid][pLocal] = 255;
                        HouseEntered[playerid] = 255;
                        return 1;
                    }
                }
            }
Reply
#5

Quote:
Originally Posted by Sampizito
Посмотреть сообщение
Basta por isso aqui mano..

SetPlayerInterior(playerid, 0);

Ele vai setar o Interior Do Player ID , para 0

pawn Код:
if(strcmp(cmd, "/sair", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            for(new i = 0; i <  sizeof(HouseInfo); i++)
            {
                if (PlayerToPoint(3, playerid,HouseInfo[i][hExitx], HouseInfo[i][hExity], HouseInfo[i][hExitz]))
                {
                    if(HouseEntered[playerid] == i)
                    {
                        SetPlayerInterior(playerid, 0);  
                        SetPlayerVirtualWorld(playerid,0);
                        SetPlayerPos(playerid,HouseInfo[i][hEntrancex],HouseInfo[i][hEntrancey],HouseInfo[i][hEntrancez]);
                        PlayerInfo[playerid][pInt] = 0;
                        SetPlayerVirtualWorld(playerid, 0);
                        PlayerInfo[playerid][pLocal] = 255;
                        HouseEntered[playerid] = 255;
                        return 1;
                    }
                }
            }
Mais como eu disse, eu criei a casa dentro do interior id 18, e quando eu sair vai setar o ID 0 ? vai bugar.
Eu tenho casa dentro do interior 0 e 18, se eu setar apйnas 1 interior no comando /sair vai bugar, hб alguma outra forma de fazer isso ?
Reply
#6

lol mano interior 0 й o gta todo do lado de fora '-' as ruas calзados tudo isso й o id 0
Reply
#7

Quando o player sair da casa ele ira mover para uma posiзгo
PHP код:
SetPlayerPos(playerid,X,Y,Z); 
Certo?
Embaixo disso sete o Interior
PHP код:
SetPlayerInterior(playerid,0); 
Isso ira setar o interior padrгo do mundo virtual do GTA,que a posiзгo que vocк setou ira ir para fora da Casa(Mundo Virtual).
Reply
#8

Quote:
Originally Posted by Math3us
Посмотреть сообщение
lol mano interior 0 й o gta todo do lado de fora '-' as ruas calзados tudo isso й o id 0
Код:
Estou com um problema, eu criei algumas casas dentro do interior id 18 pra ficar tipo um apartamento, e quando eu saio da casa o player fica voando. Sei que tenho que colocar pra setar o ID 18 no comando de sair da casa, mas o problema, e que tem casas na rua que o interior e id 0, e se eu fazer isso vai dar na mesma, alguйm pode me ajudar ?
Reply
#9

As casas na rua como vocк disse tambйm pertence ao mundo virtual do GTA.
Entгo nгo ira dar nenhum problema.
Reply
#10

Vocкs nгo estao intendendo. Olha eu tenho casa nos dois interiores. ID 0 e ID 18. Dentro do id 18 eu criei algumas casas e quando eu saio das casas que foram criadas dentro do ID 18 buga porque no comando esta setando o ID 0. Eu queria saber como fazer um code, pra quando eu entrar em uma casa que esta no interior 18 e sair novamente setar pro id 18, e quando entrar em uma casa lб na rua que й o id 0 e sair setar pro id 0.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)