跳到主要内容

OnNPCWeaponStateChange

注意

这个回调是在omp v1.5.8.3079中添加的,在以前的版本中不起作用!

描述

当 NPC 的武器状态改变时(例如,重新装弹、弹药耗尽等)调用此回调。

参数说明
npcidNPC 的 ID
newstate新的武器状态
oldstate之前的武器状态

示例

public OnNPCWeaponStateChange(npcid, newState, oldState)
{
static weaponStates[5][64] = {
"未知",
"弹药耗尽",
"仅剩一发子弹",
"剩余多发子弹",
"重新装弹中"
};

// 仅通知追踪此 NPC 的玩家
for (new playerid = 0; playerid < MAX_PLAYERS; playerid++)
{
if (!IsPlayerConnected(playerid))
continue;

if (PlayerNPC[playerid] == npcid)
{
SendClientMessage(playerid, 0xFFFF00FF, "NPC %d 武器状态:%s -> %s",
npcid, weaponStates[oldState], weaponStates[newState]);
}
}
return 1;
}

注意事项

  • 此回调基于 NPC 的弹药数量和武器动作自动触发
  • 武器状态包括:无子弹、重新装弹、有更多子弹、最后一发子弹、未知

相关函数

以下函数可能有用,因为它们与此回调以某种方式相关。

相关回调