Jump to content
🛡️FORUMS ARE IN READ-ONLY MODE Read more... ×
Sign in to follow this  
lifetap

Inheritance rules ?

Recommended Posts

I'm looking for a definition of how the inheritance structures work within classes such as cfgWeapons and cfgVehicles.

If my understanding is correct, it follows the standard OO inheritance rules in that a child class can inherit from a parent class, and add new attributes or override existing attributes.

E.g.

class base_arifle;
class child_arifle: base_arifle
{
scope = 2;
class LinkedItems
{
	class LinkedItemsOptic
	{
		slot = "optics_rail";
		item = "new_acog";
	};
};
};

But there also seems to be examples where existing classes can be partially redefined and new attributes added or existing attributes modified

E.g.

class exisiting_arifle {
hasbipod = 1;
};

This seems to add a new bipod attribute to an existing weapon. However when the exiting_arifle class is viewed in the config editor within Arma, it shows it as an orphan, even though it is represented in game as the original weapon with a bipod. This is somewhat confusing.

And it appears that not all classes can be redefined in this way.

E.g.

class exisiting_arifle: {
class LinkedItems
{
	class LinkedItemsOptic
	{
		slot = "optics_rail";
		item = "new_acog";
	};
};
};

The exisiting_arifle class in game does not have the new_acog sight.

Can anyone give an explanation for this behaviour or a pointer to where the inheritance rules are defined?

Any help appreciated. Thanks

Share this post


Link to post
Share on other sites
Sign in to follow this  

×