[AJUDINHA] Char entra e Sai Sozinho de Interiores
#1

Oi Galera..., Mais uma vez estou a pedir ajuda de vc's

й o seguinte, eu coloquei no meu GM, pro nego entrar em certos interiores apertando F.
O Problema й o seguinte, quando eu aperto F para entrar, Simplesmente ele entra rapidamente e sai sozinho como se eu tivesse dado F do lado de fora(para entrar), e do lado de dentro (para sair). Mais йr muito rбpido.
Exemplos de Cуdigos para Entrar que eu uso:
pawn Код:
//====================={ Entrar / Sair Groove Groove 4Treet }========================================
if (newkeys == KEY_SECONDARY_ATTACK)
{
if(IsPlayerInRangeOfPoint(playerid, 2.0, 2495.3481,-1691.1355,14.7656))//Coordenadas do antigo checkpoint (2.0 й o raio de onde o player deve estar perto pra entrar!)
{
GameTextForPlayer(playerid, "~w~HQ Groove Street ",5000,1);
SetPlayerPos(playerid,  2496.0061,-1693.5201,1014.7422);//Onde й pro player ir!
SetPlayerInterior(playerid, 3);
}}
//--------------------------------------------
else if (IsPlayerInRangeOfPoint(playerid, 2.0, 2496.0039,-1692.2004,1014.7422))
{
SetPlayerPos(playerid, 2495.3718,-1688.8561,14.0673);
SetPlayerInterior(playerid, 0);
}

//====================={ Entrar / Sair Central de Seg }========================================
if (newkeys == KEY_SECONDARY_ATTACK)
{
if(IsPlayerInRangeOfPoint(playerid, 2.0, 1412.3763,-1700.0734,13.5395))//Coordenadas do antigo checkpoint (2.0 й o raio de onde o player deve estar perto pra entrar!)
{
GameTextForPlayer(playerid, "~w~Central de Seguranзa ",5000,1);
SetPlayerPos(playerid,  541.0389,-889.2991,1304.9392);//Onde й pro player ir!
SetPlayerInterior(playerid, 0);
}}
//--------------------------------------------
else if (IsPlayerInRangeOfPoint(playerid, 2.0, 538.6310,-891.6687,1304.2013))
{
SetPlayerPos(playerid, 1413.3787,-1702.2257,13.5395);
SetPlayerInterior(playerid, 0);
}
Antes de tudo, obrigado pela ajuda.
Aguardo Respostas.
Reply
#2

pawn Код:
//====================={ Entrar / Sair Groove Groove 4Treet }========================================
if (newkeys == KEY_SECONDARY_ATTACK)
{
if(IsPlayerInRangeOfPoint(playerid, 2.0, 2495.3481,-1691.1355,14.7656))//Coordenadas do antigo checkpoint (2.0 й o raio de onde o player deve estar perto pra entrar!)
{
GameTextForPlayer(playerid, "~w~HQ Groove Street ",5000,1);
SetPlayerPos(playerid,  2496.0061,-1693.5201,1014.7422);//Onde й pro player ir!
SetPlayerInterior(playerid, 3);
return true;
}}
//--------------------------------------------
else if (IsPlayerInRangeOfPoint(playerid, 2.0, 2496.0039,-1692.2004,1014.7422))
{
SetPlayerPos(playerid, 2495.3718,-1688.8561,14.0673);
SetPlayerInterior(playerid, 0);
return true;
}

//====================={ Entrar / Sair Central de Seg }========================================
if (newkeys == KEY_SECONDARY_ATTACK)
{
if(IsPlayerInRangeOfPoint(playerid, 2.0, 1412.3763,-1700.0734,13.5395))//Coordenadas do antigo checkpoint (2.0 й o raio de onde o player deve estar perto pra entrar!)
{
GameTextForPlayer(playerid, "~w~Central de Seguranзa ",5000,1);
SetPlayerPos(playerid,  541.0389,-889.2991,1304.9392);//Onde й pro player ir!
SetPlayerInterior(playerid, 0);
return true;
}}
//--------------------------------------------
else if (IsPlayerInRangeOfPoint(playerid, 2.0, 538.6310,-891.6687,1304.2013))
{
SetPlayerPos(playerid, 1413.3787,-1702.2257,13.5395);
SetPlayerInterior(playerid, 0);
return true;
}
Faзa o teste.
Reply
#3

Simples, se ele tiver carregando o interior e comeзar a cair, vocк sу precisa colocar:
pawn Код:
//Topo:
forward CarregandoInt(); //Coloca no geral ae vocк usa pra mais int.
//Agora no seu code:
//..........
GameTextForPlayer(playerid, "~w~HQ Groove Street ",5000,1);
SetPlayerPos(playerid,  2496.0061,-1693.5201,1014.7422);//Onde й pro player ir!
SetPlayerInterior(playerid, 3);
TogglePlayerControllable(playerid, 0);
SetTimerEx("CarregandoInt", 4000, false, "i", playerid);
//......... faзa isso em todos os teleportes (que tiverem com problms)
//Final Gm:
public CarregandoInt()
{
    for(new i=0; i<MAX_PLAYERS; i++)
    {
        TogglePlayerControllable(i,1);
        return 1;
    }
    return 1;
}
// Sou novo tbm, mas dava isso cmg, eu fiz isso dai /\ e nunca mais deu problemas. Abs
Reply
#4

Faz assim. Pega a coordenada da porta que entra no exterior. teleporta o cara pra longe da porta que sai dentro do interior e vice versa. Ai, nгo vai dar problema.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)