Pular para o conteúdo principal

NPC_MoveToPlayer

aviso

Esta função foi adicionada no omp v1.5.8.3079 e não funcionará em versões anteriores!

Descrição

Faz um movimento NPC em direção e segue um jogador.

NomeDescrição
npcidO ID do NPC.
playeridO ID do jogador para o qual se mover.
NPC_MOVE_TYPE:moveTypeTipo de movimento (padrão: NPC_MOVE_TYPE_JOG).
Float:moveSpeedVelocidade de movimento (padrão: NPC_MOVE_SPEED_AUTO).
Float:stopRangeDistância até parar do jogador (padrão: 0,2)
updateDelayMSAtraso de atualização da verificação de posição em milissegundos (padrão: 500).
bool:autoRestartSe deseja reiniciar automaticamente o seguinte (padrão: false).

Retornos

Retorna true em caso de sucesso, false em caso de falha.

Exemplos

public OnPlayerCommandText(playerid, cmdtext[])
{
if (!strcmp(cmdtext, "/npcmovetoplayer", true))
{
new npcid = PlayerNPC[playerid];
if (npcid == INVALID_NPC_ID)
return SendClientMessage(playerid, 0xFF0000FF, "You are not debugging a NPC.");

if (!NPC_IsValid(npcid))
return SendClientMessage(playerid, 0xFF0000FF, "Invalid NPC.");

NPC_MoveToPlayer(npcid, playerid, NPC_MOVE_TYPE_JOG, NPC_MOVE_SPEED_AUTO, 0.2, 500, false);

SendClientMessage(playerid, 0x00FF00FF, "NPC %d now following you", npcid);
return 1;
}
return 0;
}

Notas

aviso
  • NPCs seguirá continuamente o jogador alvo até ser interrompido.
  • O parâmetro updateDelayMS controla a frequência com que o NPC atualiza sua posição alvo.
  • Valores mais baixos de updateDelayMS fornecem acompanhamento mais suave, mas usam mais recursos.
  • O parâmetro autoRestart determina se o seguimento é retomado após interrupções.
  • Seguir para quando o jogador alvo se desconecta.

Funções Relacionadas

Callbacks Relacionadas

  • OnNPCFinishMove: Chamado quando NPC atinge o destino (não chamado para seguimento contínuo).