ItemPropertyTrap(int, int)

Sets a trap itemproperty.

itemproperty ItemPropertyTrap(
    int nTrapLevel,
    int nTrapType
);

Parameters

nTrapLevel

IP_CONST_TRAPSTRENGTH_*

nTrapType

IP_CONST_TRAPTYPE_*


Description

Sets item property Trap. You must specify the trap level constant
(IP_CONST_TRAPSTRENGTH_*) and the trap type constant (IP_CONST_TRAPTYPE_*), such as Fire or Frost.



Remarks

The itemproperty commands are special constructors - they construct an itemproperty "object" which can then be applied to an item using the AddItemProperty command, much like effects need to be first constructed, then applied with ApplyEffectToObject.

It will often be a good idea to remove similar itemproperties from the item first. There's a command in the "x2_inc_itemprop" include file called IPSafeAddItemProperty which will do that for you. Check IPSafeAddItemProperty for current bug report.

The IP_CONST_TRAPSTRENGTH_* constant can be retrieved off this type of item property using GetItemPropertySubType. The IP_CONST_TRAPTYPE_* constant can be retrieved using GetItemPropertCostTableValue.


Version

1.61

Example

#include "x2_inc_itemprop"
//The include is for the IPSafeAddItemProperty function

//Upgrades an item PC has tagged MYTRAP to a deadly electrical trap
void main()
{
object oPC = GetPCSpeaker();
object oItem = GetItemPossessedBy(oPC, "MYTRAP");
int nTrapLevel = IP_CONST_TRAPSTRENGTH_DEADLY;
int nTrapType =IP_CONST_TRAPTYPE_ELECTRICAL;
if (!GetIsObjectValid(oItem)) return;

itemproperty ipAdd = ItemPropertyTrap(nTrapLevel, nTrapType);

IPSafeAddItemProperty(oItem, ipAdd);
}

See Also

functions: AddItemProperty | IPSafeAddItemProperty
categories: Item Creation Functions
constants: IP_CONST_TRAPSTRENGTH_* Constants | IP_CONST_TRAPTYPE_* Constants


 author: Lilac Soul, editor: Peter Busby