mirror of
https://github.com/acemod/ACE3.git
synced 2024-08-30 18:23:18 +00:00
548ab810df
* added possibility to define orientation on attach items in config * added documentation on attach framework * whitespace * changed to use roll and yaw parameters instead of vectordir for easier usage, and to support placement view with rolled objects. Changed vector calculations * Update addons/attach/functions/fnc_attach.sqf * Docs and comments * fix derp * Update docs/wiki/framework/attach-framework.md * Update attach-framework.md --------- Co-authored-by: Grim <69561145+LinkIsGrim@users.noreply.github.com>
2.3 KiB
2.3 KiB
layout | title | description | group | order | parent | mod | version | ||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
wiki | Attach Framework | Explains how to add items to the ACE Attach Framework. | framework | 0 | wiki | ace |
|
1. Config Values
1.1 Make item attachable
An item can be added to the ACE Attach framework by adding the ACE_attachable
property to a class in CfgWeapons
or CfgMagazines
. The value must be the classname of a valid class in CfgVehicles
:
class CfgWeapons {
class attach_item: CBA_MiscItem {
ACE_attachable = "new_attachable_item_classname";
};
};
class CfgVehicles {
class ThingX;
class new_attachable_item_classname: ThingX {
scope = 1; // Should be 1 (private) or 2 (public), scope 0 will cause errors on object creation
displayName = "New ACE attachable item";
model = "\path\to\my\model.p3d";
vehicleClass = "";
};
};
1.2 Define attach orientation for non-symmetric items
In the case the item needs to have a particular orientation when attached, add the config value: ace_attach_orientation
which is an array describing the roll
and yaw
orientation of the object.
The default value is: [0,0]
.
Example:
class CfgWeapons {
class attach_item: CBA_MiscItem {
ACE_attachable = "new_attachable_item_classname";
ace_attach_orientation[] = {0,180}; // 180deg yaw
};
};
2. Event Handlers
2.1 Listenable Events
Event Key | Parameters | Locality | Description | ||
---|---|---|---|---|---|
ace_attach_attached |
[_attachedObject, _itemClassname, _temporary] | Local | Called after an item is attached to an object. _temporary flag means the item is being re-attached (after a unit is exiting a vehicle, for example) |
||
ace_attach_detaching |
[_attachedObject, _itemClassname, _temporary] | Local | Called just before an item is detached/removed from an object. _temporary flag means the item will be reattached later, see above. |
2.2 Other events for attached objects
Use CBA Extended Event Handlers. Note that objects attached to units will be deleted/created upon entering/exiting vehicles and should be handled accordingly.