SSGamers - 13 Anos online por você.

#SSGamers - A Comunidade que mais crescer no brasil!

Participe do fórum, é rápido e fácil

SSGamers - 13 Anos online por você.

#SSGamers - A Comunidade que mais crescer no brasil!

SSGamers - 13 Anos online por você.

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Chegou o novo tema 6.5.5 - SSGamers - Servidores online de qualidade - Aproveite e entre para nossa comunidade, inscreva-se já! - Ouça nossa web radio - Veja nossas novidades - Participe dos nossos setores de jogos online - Parcerias aberta fale já com um administrador.

    [Tutorial] Entrando/Saindo de Interiores - Apertando F e Pickup

    Weslley_Script
    Weslley_Script
    SS - Fundador
    SS - Fundador


    Steam Steam : WeslleySSGames
    Zello : WeslleySSGames
    Mensagens : 11625
    Moedas : 1032880
    Data de inscrição : 06/10/2011
    Idade : 28
    Localização : Brasil

    [Tutorial] Entrando/Saindo de Interiores - Apertando F e Pickup Empty [Tutorial] Entrando/Saindo de Interiores - Apertando F e Pickup

    Mensagem por Weslley_Script Dom 31 Jul 2016 - 10:08

    Explicação da Função : CreatePickup.

    Code:
    CreatePickup(Modelo, Spawn, Corx, Coy, Corz,-1);

    Explicando :

    CreatePickup = Criar a Pickup.
    Modelo = a Pickup Que Irá Aparecer ( Irei Escolher a I )
    Spawn = ( Irei Colocar o 2 )
    Corx = Coordenada X Da Onde a Pickup Ficará.
    Cory = Coordenada Y Da Onde a Pickup Ficará.
    Corz = Coordenada Z Da Onde a Pickup Ficará.
    -1 = Virtual Word ( deixe -1 mesmo )


    Explicando a Função : IsPlayerInRangeOfPoint


    Code:
    if(IsPlayerInRangeOfPoint(playerid, 2.0, Corx, Cory, Corz))


    2.0 = Raio
    Corx = Coordenada X
    Cory = Coordenada Y
    Corz = Coordenada Z

    Veja Mais Em : http://wiki.sa-mp.com/wiki/IsPlayerInRangeOfPoint



    Vamos Começar Agora.

    Criando Entrada/Saida de Interiores Usando Pickup

    Primeiramente, Vamos Definir Nossas 2 Pickups. Que Ajudará a Fazer o Player Entrar é Sair do Interior


    Code:
    new EntradaPickup; // Usaremos Para Entrar
    new SaindaPickup; // Usaremos Para Sair


    Pronto, Vamos Prosseguir Para o Passo Número 2.
    Definimos no Topo Nossas Pickups. Agora Vamos na Callback OnGameModeInit.


    Code:
    // Então Vou da um Nome Para Minha Pickup. Colocar Ela Para Entrar.
    EntradaPickup = CreatePickup(1239, 2, 1503.3359, 1432.3585, 10.1191, -1);
    // Então Vou da um Nome Para Minha Pickup. Colocar Ela Para Sair.
    SaidaPickup = CreatePickup(1239, 2, 1323.3359, 1122.3585, 10.12391, -1);


    Ou Seja, as nossas pickups Defininas em Cima, Demos Uma Função a Elas.Agora Vamos Para o Passo Número 3.

    Então Ao Ficar Em Cima da Pickup Com Nome " Entrada Pickup ", a Seguinte Função Será Chamada :

    Na Callback OnPlayerPickUpPickup Bote a Função Que Será Chamada, Na Pickup de Entrada :


    Code:
    if(pickupid == EntradaPickup)
    {
    SetPlayerInterior(playerid, 11); // Interior Do Local que Será Setado.
    SetPlayerPos(playerid, 1323.3359, 1122.3585, 10.12391); // Setando ele Para Dentro do Interior.
    }


    Resultado : Ao Ficar em Cima da Pickup "EntradaPickup" Ele Tele transportará o Player Para o Local Desejado, é Setará o Interior dele, Para Não Bugará.

    Terminado o Passo 4. Faça a Mesma Coisa Com a "SaidaPickup".


    Code:
    if(pickupid == SaidaPickup)
    {
    SetPlayerInterior(playerid, 0); // Interior Do Local que Será Setado.
    SetPlayerPos(playerid, 1503.3359, 1432.3585, 10.1191); // Setando ele Para Fóra Ou Seja Saindo do Interior.
    }


    Resultado : Ao Ficar em Cima da Pickup "SaidaPickup" Ele Tele transportará o Player Para o Local Desejado.

    - Assim Podendo Criar Teleportes, Entradas, Saidas, Entre Outros.


    Criando Entrada/Saida de Interiores Apertando F


    Primeiramente. Vamos Ter que Fazer Nosso Comando.

    - Na Callback OnPlayerCommandText Coloque Nosso Comando de Entrada/Saida.

    Code:
    // Vamos ao Comando Entrar
    if(strcmp(cmdtext, "/entrandointerior", true) == 0) // Comando ( Não Importa Vamos Usar o F )
    {
    // Ou Seja. Se Ele tiver no Local Do IsPlayerInRangeOfPoint, Funcionará as Funções Abaixo
    if(IsPlayerInRangeOfPoint(playerid, 2.0, 2695.6880, -1704.6300, 11.8438))
    {
    SetPlayerInterior(playerid, 11); // .Setando o Interior ao Entrar
    SetPlayerPos(playerid, 1503.3359, 1432.3585, 10.1191); // Setado Para Aqui ( TELE )
    }
    return true; // Returnando a 1
    }


    Code:
    // Vamos No Comando Sair
    if(strcmp(cmdtext, "/sairdointerior", true) == 0) // Comando ( Não Importa Vamos Usar o F )
    {
    // Ou Seja. Se Ele tiver no Local Do IsPlayerInRangeOfPoint, Funcionará as Funções Abaixo
    if(IsPlayerInRangeOfPoint(playerid, 2.0, 503.3359, 1432.3585, 10.1191))
    {
    SetPlayerInterior(playerid, 0); // Setando o Interior ao Sair.
    SetPlayerPos(playerid, 2695.6880, -1704.6300, 11.8438); // Setado Para Aqui ( TELE )
    }
    return true; // Returnando a 1
    }


    Como Você Pode ver é Quase a Mesma Coisa. Só é Adicionada a Função IsPlayerInRangeOfPoint. Que Funcionará o Comando Apenas Naquele Local.
    Agora Vamos Por Para Apertar F.


    Na Callback OnPlayerKeyStateChange Coloque o Seguinte Código.

    Code:
    if ((newkeys==KEY_SECONDARY_ATTACK)) // Key ( F / Enter )
    {
    OnPlayerCommandText(playerid,"/entrandointerior"); // Ao Apertar "F" Funcionará o Comando Do Lado.
    OnPlayerCommandText(playerid,"/sairdointerior"); // Ao Apertar "F" Funcionará o Comando Do Lado.
    // Se Quiser Colocar mais, a vontade.
    }


    Então é Muito Fácil. é Com Isso Da Para Fazer Várias Coisas. Espero Que Tirado Uma Dúvida de Alguem.

    Creditos: JonathanFeitosa



    [Tutorial] Entrando/Saindo de Interiores - Apertando F e Pickup D07Xwqb
    [Tutorial] Entrando/Saindo de Interiores - Apertando F e Pickup Yjab9HN

      Data/hora atual: Qui 7 Nov 2024 - 13:47