Chuyển tới nội dung chính

NPC_SetVirtualWorld

cảnh báo

This function was added in omp v1.5.8.3079 and will not work in earlier versions!

Description

Sets an NPC's virtual world, controlling which players can see and interact with them.

NameDescription
npcidThe ID of the NPC.
vwThe virtual world ID to set.

Returns

Returns true if the operation was successful, false otherwise.

Examples

public OnPlayerCommandText(playerid, cmdtext[])
{
if (!strcmp(cmdtext, "/setvirtualworld ", true, 16))
{
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 vw = strval(cmdtext[16]);
if (vw < 0)
return SendClientMessage(playerid, 0xFF0000FF, "Virtual world must be positive.");

NPC_SetVirtualWorld(npcid, vw);
SendClientMessage(playerid, 0x00FF00FF, "NPC %d virtual world set to %d", npcid, vw);

return 1;
}
return 0;
}

Notes

cảnh báo
  • Virtual world 0 is the default world where all players start.
  • NPCs in different virtual worlds cannot see or interact with each other.
  • Players must be in the same virtual world to see NPCs.
  • Use NPC_GetVirtualWorld to check current virtual world.