Pular para o conteúdo principal

NPC_SetInvulnerable

aviso

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

Descrição

Define se um NPC é invulnerável a danos.

NomeDescrição
npcidO ID do NPC
toggletrue para tornar invulnerável, false para tornar vulnerável

Retornos

Retorna true se a invulnerabilidade foi definida com sucesso, caso contrário, false.

Exemplos

public OnPlayerCommandText(playerid, cmdtext[])
{
if (!strcmp(cmdtext, "/toggleinvulnerable", 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.");

new bool:invulnerable = NPC_IsInvulnerable(npcid);
NPC_SetInvulnerable(npcid, !invulnerable);
SendClientMessage(playerid, 0x00FF00FF, "NPC %d invulnerable: %s", npcid, !invulnerable ? "Enabled" : "Disabled");

return 1;
}
return 0;
}

Notas

  • O invulnerável NPCs não sofrerá nenhum dano de armas, explosões ou outras fontes de dano
  • Esta configuração persiste até ser alterada ou o NPC ser destruído
  • O invulnerável NPCs ainda pode ser movido, teletransportado ou ter suas animações alteradas

Funções Relacionadas

Callbacks Relacionadas

  • OnNPCTakeDamage: Chamado quando NPC sofre dano (não chamado para NPCs invulnerável)
  • OnNPCDeath: Chamado quando NPC morre (NPCs invulnerável não pode morrer)