damn, idk if you realized this before but for each state (aiming an Non aiming) there is code that randomly plays a distant fire sound when the gun is fired, if i were to get rid of these, the distant shots wouldnt play. or is there a way around this?
no man, your just removing the packaged iron sights fiunctions, not the states
so just remove this:
package ANACONDA
{
function Armor::onTrigger(%this, %player, %slot, %val)
{
if(%player.getMountedImage(0) $= ANACONDAImage.getID() && %slot $= 4 && %val)
{
%player.mountImage(ANACONDASCImage,0);
}
else if(%player.getMountedImage(0) $= ANACONDASCImage.getID() && %slot $= 4 && %val)
{
%player.mountImage(ANACONDAImage,0);
}
Parent::onTrigger(%this, %player, %slot, %val);
}
function servercmdDropTool(%client,%slot)
{
if(%client.player.getMountedImage(0) $= ANACONDASCImage.getID())
{
%client.player.unmountImage(0);
}
return Parent::servercmdDropTool(%client,%slot);
}
};
ActivatePackage(ANACONDA);
also, why did you repackage the servercmd drop for every weapon? you could have only done this once, or even not even done this at all, because blockland unmounts the image whenever you drop a weapon already...
actually for strange reasons i had to package that too in my own pack somthing to do with the mods, but you only hafta do it once.
here is how i did it, its a bit different then they way blockland does it by default because i had to compensate for spaceguy's ammo mod, but if you packaged it just like this in your pack (assuming you had the same dropping bug as i did), it should work just fine.
function servercmdDropTool(%client,%slot) //added debugs for mods and stuck weapon images -zombekillz
{
//-Irrelevant code snip-
if(!isObject(%client.player))
{
%client.player.unMountImage(0);
return Parent::servercmdDropTool(%client,%slot);
}
if(!isObject(%client.player.tool[%slot]) || %client.player.tool[%slot].maxAmmo <= 0)
{
%client.player.unMountImage(0);
return Parent::servercmdDropTool(%client,%slot);
}
%client.player.unMountImage(0);
$weaponAmmoLoaded = %client.player.toolAmmo[%client.player.currTool];
%client.player.toolAmmo[%client.player.currTool] = "";
return Parent::servercmdDropTool(%client,%slot);
}