SA-MP Forums Archive
[Ajuda] Interior - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] Interior (/showthread.php?tid=363913)



Interior - RedBulL_x - 29.07.2012

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б !


Re: Interior - Victor' - 29.07.2012

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


Respuesta: Interior - RedBulL_x - 29.07.2012

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


Re: Interior - Sampizito - 29.07.2012

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;
                    }
                }
            }



Respuesta: Re: Interior - RedBulL_x - 29.07.2012

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 ?


Re: Interior - Math3us - 29.07.2012

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


Re: Interior - ViictorDaay- - 29.07.2012

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).


Respuesta: Re: Interior - RedBulL_x - 29.07.2012

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 ?



Re: Interior - ViictorDaay- - 29.07.2012

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


Respuesta: Interior - RedBulL_x - 29.07.2012

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.