package lockFiring {
function weaponimage::onfire(%this, %obj, %slot) {
if(!$lockWeps::lock[%obj.client.BL_ID])
parent::onFire(%this,%obj,%slot);
else if($lockWeps::announce)
messageClient(%obj.client, "<color:ffffff>Your weapons are <color:ee4444>locked<color:ffffff>, you can't use them!");
}
};
function dynamicFindClient(%targ) { //scan for a client first by name, then by BLID, then by actual client object.
%n = findclientbyname(%targ);
if(!%n)
%n = findclientbyBL_ID(%targ);
if(!%n && isobject(%targ))
if(%targ.getClassName() $= "GameConnection")
%n = %targ;
return %n;
}
function fcbd(%t) { //shorthand; findClientByDynamic
return dynamicFindClient(%t);
}
function serverCmdLockWeapons(%c, %targ) {
if((%targ = fcbd(%targ)) $= "" || !%c.isAdmin) return;
%tname = %targ.name;
%tid = %targ.BL_ID;
messageClient(%c, '', "<color:ffff00>Server<color:ffffff>: You have changed " @ %tname @ "'s weapon lock status to " @ $lockWeps::lock[%tid] = !$lockWeps::lock[%tid] @ ".");
messageClient(%targ, '', "<color:ffff00>Server<color:ffffff>: Your weapon lock status has been changed to " @ $lockWeps::lock[%tid] @ ".");
}
activatePackage(lockFiring);