[Ajuda] Colocando objetos com botгo para ativar
#1

Boa noite,

Nгo estou sabendo fazer isto, й o seguinte:
---> Queria saber como crio um objeto de maleta que ao o player apertar a tecla "F" aparece as profissхes que existe...

Alguйm por favor me da uma luz...

Atenciosamente,
Douglas Monteiro.
Reply
#2

Topo do gamemode:
pawn Код:
new PegarEquipar;
OnGameModeInit:
pawn Код:
PegarEquipar = CreatePickup(/*Modelo*/, /*Tipo*/, /*Cordenada:x*/, /*Cordenada:y*/, /*Cordenada:z*/, VirtualWorld);
Comando:
pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
if(strcmp(cmdtext, "/profs", true)==0)
{
   if(IsPlayerInRangeOfPoint(playerid, /*Raio*/, /*CORDENADAS DA PICKUP*/)
   {
      //Coloque as funзхes que quer que apareзa quando o jogador estб na pickup ou digita o comando
   }
   else return SendClientMessage(playerid, 0xFFF000AA, "Sу pode usar o comando em cima da pickup");
}
Reply
#3

Vocк saberia tipo, no tem aqueles coletes em organizaзхes OFICIAIS, e o cara chega em cima e digita /equipar... Vocк saberia como eu poderia fazer isto ?? (tendo que digitar comando em cima do colete)

Estou no aguardo,
Douglas Monteiro.
Reply
#4

So Usar IsPlayerInRangeOfPoint no comando de equipar..
Reply
#5

Quote:
Originally Posted by douglasmonteiro
Посмотреть сообщение
Vocк saberia tipo, no tem aqueles coletes em organizaзхes OFICIAIS, e o cara chega em cima e digita /equipar... Vocк saberia como eu poderia fazer isto ?? (tendo que digitar comando em cima do colete)

Estou no aguardo,
Douglas Monteiro.
Usa o Search Mano!!!
Reply
#6

Apenas complementando...
https://sampwiki.blast.hk/wiki/IsPlayerInRangeOfPoint

pawn Код:
if(!strcmp("/stadium",cmdtext))
{
    if(IsPlayerInRangeOfPoint(playerid, 7.0, 2695.6880, -1704.6300, 11.8438))
    {
        SendClientMessage(playerid,0xFFFFFFFF,"You are near the Stadium entrance!");
    }
    return 1;
}
Reply
#7

Vlw ae pessoal, estou conseguindo fazer as coisas aqui aos poucos graзas a vocкs...

Estou com mais um probleminha aq, enquanto o player estiver em cima do Pickup, ele nгo para de fazer leitura nгo... Teria algum modo de fazer a leitura somente uma vez ? (Ex: Coloquei uma mensagem neste Pickup e se eu ficar em cima deste Pickup, a mensagem nгo para de passar, teria algum modo de executar o Pickup e parar??)
Reply
#8

Vocк pode optar por utilizar pickup no spawn type 2, no qual ele apуs ser pego desaparece por um certo tempo, assim nгo ficaria sendo checado a todo o tempo.

Ou vocк tambйm pode fazer por auxilio de Variбveis.

Код:
CreatePickup(model, type, Float:X, Float:Y, Float:Z, Virtualworld)
Reply
#9

Cara, nгo conseguir captar esse tipe nгo...
Jб tenho um comando aqui e ao apertar F, ele abre um dialog. Como irei direcionar para o Pickup. Meu codigo й esse aq:
-----
new selecao_profissao;
-----
OnGameModeInit:

selecao_profissao = CreatePickup(1212, 1, 361.8453, 173.6568, 1008.3828, -1);
-----
OnPlayerPickUpPickup

if(pickupid == selecao_profissao)
{
SendClientMessage(playerid, 0xF60000AA, "Vocк estб no Pickup.");
}
-----
OnPlayerKeyStateChange

if(newkeys == 16 && GetPlayerState(playerid) == PLAYER_STATE_ONFOOT)
{
Chamei meu dialogList..
}
-----
Mais ae que ta.... em qualquer lugar do jogo eu aperto F e ele cai no dialog... o que fazer para somente se ele estiver o Pickup.
Reply
#10

Код:
if(newkeys == 16 && GetPlayerState(playerid) == PLAYER_STATE_ONFOOT && IsPlayerInRangeOfPoint(playerid, 3.0, 361.8453, 173.6568, 1008.3828))
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)