http://fose.silverlock.org/fose_command_doc.html#SetWeaponAmmo, like many
FOSE functions, can be called in two ways - by using an explicit calling reference or by specifying a base form as a parameter. The function will affect the base form supplied as a parameter if it is available, or the base form of the calling reference if it is not. Pretty much all properties of guns are stored on the base form, and ammo is one of these properties.
The only way to change the ammo of a single gun is to create what is called a cloned form, which is a copy of the original base form that is originally identical in every way, but is independent of the original.
FOSE currently has two functions related to cloned forms:
- http://fose.silverlock.org/fose_command_doc.html#TempCloneForm
- http://fose.silverlock.org/fose_command_doc.html#IsClonedForm
Inventory objects are not stored as references, although some functions can treat them as references when called implicitly from a script attached to them, like http://geck.gamesas.com/index.php/GetContainer, and others can be used to affect a specific item as you would a reference when called on the actor that has the item equipped, like http://fose.silverlock.org/fose_command_doc.html#SetEquippedCurrentHealth.
Cipscis