SetNpcArmorPreset
setNpcArmorPreset
AVAILABLE FROM UPDATE 0.1.9
Available from 0.1.9.
Selects an authored armor preset for the currently equipped base.
Syntax
accepted = setNpcArmorPreset(npcId, preset)
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
npcId |
number |
yes | Existing scripted human NPC ID: finite integer 1..4294967295, not a numeric string. |
preset |
string |
yes | light_1, light_2, medium_1, medium_2, heavy_1, heavy_2, or none to clear selected parts. |
Returns
Boolean: true when accepted; false for invalid/unavailable ID, unknown/inapplicable preset, or failed validation/ownership/requirements. none clears parts without removing the base.
Examples
-- npcId is an existing human NPC created by this resource.
assert(setNpcArmor(npcId, "mercenary"))
assert(setNpcArmorPreset(npcId, "heavy_2"))
local parts = getNpcArmorUpgrades(npcId)
if parts then outputDebugString(parts.top) end
Notes
- Server-side only; available from 0.1.9.
- See Armor upgrades, Armor catalog and Armor upgrade catalog.
- Only the resource owning the NPC may change its parts. No player-inventory or player-requirement check is applied to NPCs.
- Uses the already equipped base; never selects a different base. The part must match its family and slot.
- true confirms server acceptance, not completed native rendering. No automatic healing/refill or database save.
- Treat remote requests as untrusted; authorize the action in your server resource.
- Sparse families use only existing parts up to the requested tier, so different presets may select the same pieces. Query getArmorUpgradePresets first.
- Equivalent alias: SetNpcArmorPreset.