SA-MP Forums Archive
[Ajuda] Como abrir um Dialog apertando F na pickup - 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] Como abrir um Dialog apertando F na pickup (/showthread.php?tid=347649)



[Ajuda] Como abrir um Dialog apertando F na pickup - LordShadow - 02.06.2012

Tipo, aqui criei uma pickup. Mais eu queria fazer para mim Apertar "F" e abrir um Dialog do tipo DIALOG_STYLE_MSGBOX

As funзхes do Menu irei fazer sу depois. Por enquanto minha dъvida й sу essa ^^. Ajuda ai :S


Re: [Dъvida] Como abrir um Dialog apertando F na pickup - Don_Speed - 02.06.2012

Vo Tentar Fazer Algo Para Voce Aqui.
pawn Код:
#define DialogTeste 333
public OnPlayerPickUpPickup(playerid, pickupid)
{
if(pickupid == id do pickup)
{
ShowPlayerDialog(playerid, DialogTeste, DIALOG_STYLE_MSGBOX, "Teste","Teste", "Aceito", "Recuso");
}
return 0;
}



Re: [Dъvida] Como abrir um Dialog apertando F na pickup - LordShadow - 02.06.2012

pawn Код:
C:\Users\user\Documents\Tiago\Game Modes\--- Codando GM ---\gamemodes\Codando.pwn(185) : error 017: undefined symbol "DialogTeste"
Pawn compiler 3.2.3664          Copyright (c) 1997-2006, ITB CompuPhase


1 Error.



Re: [Dъvida] Como abrir um Dialog apertando F na pickup - Schocc - 02.06.2012

Quote:
Originally Posted by Don_Speed
Посмотреть сообщение
Vo Tentar Fazer Algo Para Voce Aqui.
pawn Код:
#define DialogTeste 333
public OnPlayerPickUpPickup(playerid, pickupid)
{
if(pickupid == id do pickup)
{
ShowPlayerDialog(playerid, DialogTeste, DIALOG_STYLE_MSGBOX, "Teste","Teste", "Aceito", "Recuso");
}
return 0;
}
Tem certeza que ta completo isso!


Re: [Dъvida] Como abrir um Dialog apertando F na pickup - Don_Speed - 02.06.2012

pawn Код:
Topo do GM
#define DialogTeste 333

@edit
Schocc , Nao Falta a Parte do Pickup


Re: [Dъvida] Como abrir um Dialog apertando F na pickup - LordShadow - 02.06.2012

Retirando todos os fatos. Consegui fazer uma mistura com o que o Don Disse. Tambйm dei umas editadas.

pawn Код:
~public OnPlayerPickUpPickup(playerid, pickupid)
{
if(pickupid == 1)
{
ShowPlayerDialog(playerid,0,DIALOG_STYLE_MSGBOX ,"Hospital de Los Santos","Deseja Tornar-se um Mйdico?","Sim","Nгo");
}
Mais tipo, й sу eu passar por cima da pickup que o dialog aparece. Eu queria apertar Enter / F, Seria o segundo botгo de ataque. algo assim...


Re: [Dъvida] Como abrir um Dialog apertando F na pickup - EditPawn - 02.06.2012

TOPO
pawn Код:
#define DIALOG_TEST //ID da dialog coloque aki
em public OnGameModeInit()

pawn Код:
AddStaticPickup(modelo, tipo, eixo x, eixo y, eixo z, virtualworld);
https://sampwiki.blast.hk/wiki/Pickup_Type

Em public OnPlayerKeyStateChange(playerid,newkeys,oldkeys)

pawn Код:
public OnPlayerKeyStateChange(playerid,newkeys,oldkeys)
{
    if(newkeys == 16 && GetPlayerState(playerid) == PLAYER_STATE_ONFOOT) //Quando apertar o 'F'
    {
        if(PlayerToPoint(3, playerid, eixo x, eixo y, eixo z)) //Troque os eixos pelos mesmo que estao na pickup
        {
            ShowPlayerDialog(playerid, DIALOG_TEST, DIALOG_STYLE_MSGBOX, "Titulo AKI", "Mensagem AKI", "Confirma", "Cancelar");
        }
    }
    return 1;
}
Espero ter ajudado


Re: [Dъvida] Como abrir um Dialog apertando F na pickup - Schocc - 02.06.2012

lol cara como ele vai entender

assim й mais faзil
pawn Код:
#include <a_samp>
new PKP[10];//tanto de pickups que ira criar


public OnGameModeInit()
{
//add
PKP[0] = CreatePickup(1274, 2, x, y, z, -1);//esse й o 1°
PKP[1] = CreatePickup(1274, 2, x, y, z, -1);//esse й o 2°
// x,y,z sгo as cordenadas
//2 estilo
//1274 id do modelo
//-1  virtual world -1 й para todos
return 1;
}

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
    if(newkeys == 16)//se apertar f ou enter
    {
        if(IsPlayerInRangeOfPoint(playerid, 3.0, x, y, z))//se estiver aonde vc criou o PKP
        {
            PlayerPlaySound(playerid, 1133, 0.0, 0.0, 0.0);//Toca um som
            GivePlayerWeapon(playerid, 30, 500);//da arma
            GivePlayerWeapon(playerid, 32, 500);//da arma
            GivePlayerWeapon(playerid, 27, 500);//da arma
            GivePlayerWeapon(playerid, 31, 500);//da arma
            GivePlayerWeapon(playerid, 34, 500);//da arma
            GivePlayerWeapon(playerid, 31, 500);//da arma
            GivePlayerWeapon(playerid, 18, 500);//da arma
        }
    }
   
   
    return 1;
}
//Fis aqui no forum mesmo acho que esta certo, se nгo estiver me diga plz



Re: [Dъvida] Como abrir um Dialog apertando F na pickup - EditPawn - 02.06.2012

Quote:
Originally Posted by Schocc
Посмотреть сообщение
lol cara como ele vai entender

assim й mais faзil
pawn Код:
#include <a_samp>
new PKP[10];//tanto de pickups que ira criar


public OnGameModeInit()
{
//add
PKP[0] = CreatePickup(1274, 2, x, y, z, -1);//esse й o 1°
PKP[1] = CreatePickup(1274, 2, x, y, z, -1);//esse й o 2°
// x,y,z sгo as cordenadas
//2 estilo
//1274 id do modelo
//-1  virtual world -1 й para todos
return 1;
}

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
    if(newkeys == 16)//se apertar f ou enter
    {
        if(IsPlayerInRangeOfPoint(playerid, 3.0, x, y, z))//se estiver aonde vc criou o PKP
        {
            PlayerPlaySound(playerid, 1133, 0.0, 0.0, 0.0);//Toca um som
            GivePlayerWeapon(playerid, 30, 500);//da arma
            GivePlayerWeapon(playerid, 32, 500);//da arma
            GivePlayerWeapon(playerid, 27, 500);//da arma
            GivePlayerWeapon(playerid, 31, 500);//da arma
            GivePlayerWeapon(playerid, 34, 500);//da arma
            GivePlayerWeapon(playerid, 31, 500);//da arma
            GivePlayerWeapon(playerid, 18, 500);//da arma
        }
    }
   
   
    return 1;
}
//Fis aqui no forum mesmo acho que esta certo, se nгo estiver me diga plz
PHP код:
new PKP[10]; 
?
pra que tudo isso se esta sendo usada 2 celulas --'

e pra que a var da pickup se nao esta sendo usada para apertar o tal "F" ? --'
Sу esta usando as coordenadas para ver se o jogador esta perto ou nao..

pawn Код:
// NO TOPO DO SEU GAME MODE
#define DIALOG_TEST //ID da dialog coloque aki
// Define o id da dialog que vc quer /\


//PROCURE POR ESSA PUBLIC E ADICIONE A PICKUP
public OnGameModeInit()
{
    AddStaticPickup(modelo, tipo, eixo x, eixo y, eixo z, virtualworld);
    //Aki voce ira colocar o modelo, tipo, as coordenadas e o mundo que a pickup vai ficar
    return 1;
}

public OnPlayerKeyStateChange(playerid,newkeys,oldkeys)
{
    if(newkeys == 16 && GetPlayerState(playerid) == PLAYER_STATE_ONFOOT) //Quando vc apertar a tecla 'F'
    {
        if(PlayerToPoint(3, playerid, eixo x, eixo y, eixo z)) //Troque as coordenadas pelos mesmo que estao na pickup
        {
            ShowPlayerDialog(playerid, DIALOG_TEST, DIALOG_STYLE_MSGBOX, "Titulo AKI", "Mensagem AKI", "Confirma", "Cancelar");
            //Ira mostrar a dialog q vc quer
        }
    }
    return 1;
}
Esta ai, bem explicado...


Re: [Dъvida] Como abrir um Dialog apertando F na pickup - Schocc - 02.06.2012

Quote:
Originally Posted by EditPawn
Посмотреть сообщение
PHP код:
new PKP[10]; 
?
pra que tudo isso se esta sendo usada 2 celulas --'

e pra que a var da pickup se nao esta sendo usada para apertar o tal "F" ? --'
Sу esta usando as coordenadas para ver se o jogador esta perto ou nao..

pawn Код:
// NO TOPO DO SEU GAME MODE
#define DIALOG_TEST //ID da dialog coloque aki
// Define o id da dialog que vc quer /\


//PROCURE POR ESSA PUBLIC E ADICIONE A PICKUP
public OnGameModeInit()
{
    AddStaticPickup(modelo, tipo, eixo x, eixo y, eixo z, virtualworld);
    //Aki voce ira colocar o modelo, tipo, as coordenadas e o mundo que a pickup vai ficar
    return 1;
}

public OnPlayerKeyStateChange(playerid,newkeys,oldkeys)
{
    if(newkeys == 16 && GetPlayerState(playerid) == PLAYER_STATE_ONFOOT) //Quando vc apertar a tecla 'F'
    {
        if(PlayerToPoint(3, playerid, eixo x, eixo y, eixo z)) //Troque as coordenadas pelos mesmo que estao na pickup
        {
            ShowPlayerDialog(playerid, DIALOG_TEST, DIALOG_STYLE_MSGBOX, "Titulo AKI", "Mensagem AKI", "Confirma", "Cancelar");
            //Ira mostrar a dialog q vc quer
        }
    }
    return 1;
}
Esta ai, bem explicado...
Sem comentarios vocк й um noobzгo cara vai aprender a codar depois pra falar oque esta erado ou nгo