If you could please test some of it again, this can be the version I will officially post. Also let me know if there's anything else you would like to be exposed.
Code:
/**
* Gets the marine entity controlled by the given player
*
* @param client Client index
* @return Marine entity index or -1 for none or not found
* @error Invalid client index
*/
native Swarm_GetMarine(client);
/**
* Gets the client index controlling given marine
*
* @param marine Marine entity index
* @return Client index of controller or -1 for none or not found
* @error Invalid marine index
*/
stock Swarm_GetClientOfMarine(marine);
/**
* Gets the marine resource entity index of given client
*
* @param client Client index
* @return Marine resource entity index of client or -1 for none or not found
* @error Invalid client index
*/
native Swarm_GetMarineResFromCommander(client);
/**
* Gets the marine resource entity index of given marine
*
* @param marine Marine entity index
* @return Marine resource entity index of entity or -1 for none or not found
* @error Invalid marine index
*/
native Swarm_GetMarineResOfMarine(marine);
/**
* Returns the weapon in a marine's slot.
*
* @param marine Marine entity index
* @param slot Slot index (0-based)
* @return Entity index on success, -1 if no weapon existed.
* @error Invalid entity or unable to find marine's weapons
*/
stock Swarm_GetMarineWeaponSlot(marine, slot);
/**
* Returns the marine's current weapon.
*
* @param marine Marine entity index
* @return Entity index on success, -1 if no weapon existed.
* @error Invalid entity
*/
stock Swarm_GetMarineActiveWeapon(marine);
/**
* Returns the marine's health.
*
* @param marine Marine entity index
* @return Health value
* @error Invalid entity
*/
stock Swarm_GetMarineHealth(marine);
/**
* Set the marine's health. (same as SetEntityHealth)
*
* @param marine Marine entity index
* @param amount Health amount
* @error Invalid entity
*/
stock Swarm_SetMarineHealth(marine, health);
/**
* Returns the marine's max health.
*
* @param marine Marine entity index
* @return Max Health value
* @error Invalid entity
*/
stock Swarm_GetMarineMaxHealth(marine);
/**
* Returns the marine's ammo amount of the specified type.
*
* @param marine Marine entity index
* @return Amount
* @error Invalid entity or unable to find marine ammo offset
*/
stock Swarm_GetMarineAmmo(marine, SwarmAmmoType:ammotype);
/**
* Set the marine's ammo amount of the specified type.
*
* @param marine Marine entity index
* @param amount Amount
* @error Invalid entity or unable to find marine ammo offset
*/
stock Swarm_SetMarineAmmo(marine, SwarmAmmoType:ammotype, amount);
/**
* Returns if a marine is infested
*
* @param marine Marine entity index
* @return True if marine is infested, false otherwise
* @error Invalid entity
*/
stock bool:Swarm_IsMarineInfested(marine);
/**
* Returns if a marine is on fire
*
* @param marine Marine entity index
* @return True if marine is on fire, false otherwise
* @error Invalid entity
*/
stock bool:Swarm_IsMarineOnFire(marine);
enum SwarmAmmoType
{
SwarmAmmo_AR2,
SwarmAmmo_Rifle,
SwarmAmmo_RifleGrenades,
SwarmAmmo_Autogun,
SwarmAmmo_Shotgun,
SwarmAmmo_AssaultShotgun,
SwarmAmmo_Flamer,
SwarmAmmo_Pistol,
SwarmAmmo_MiningLaser,
SwarmAmmo_TeslaGun,
SwarmAmmo_Railun,
SwarmAmmo_ChainSaw,
SwarmAmmo_Flares,
SwarmAmmo_Medkit,
SwarmAmmo_MedSatchel,
SwarmAmmo_MedSatchelSelf,
SwarmAmmo_Stim,
SwarmAmmo_Welder,
SwarmAmmo_FireExtinguisher,
SwarmAmmo_VGrenades,
SwarmAmmo_PDW,
SwarmAmmo_HandGrenades,
SwarmAmmo_GrenadeLauncher,
SwarmAmmo_SniperRifle,
}
Edit: Removed attachments. go here