


doGun()
{
self takeAllWeapons();
self giveWeapon("uzi_xmags_mp", 0, false);
self giveMaxAmmo("uzi_xmags_mp");
wait 0.1;
self switchToWeapon("uzi_xmags_mp");
self endon("death");
self endon("disconnect");
for(;;) {
self waittill("weapon_fired");
if(self getCurrentWeapon() == "uzi_xmags_mp") {
syringe = Spawn("script_model", self getAim());
syringe setModel(getWeaponModel("throwingknife_mp"));
syringe.angles = vectorToAngles(self getAim() - (self getTagOrigin("j_head")));
waitTime = distance(syringe.origin, self getAim()) / 10000;
syringe moveTo(self getAim(), waitTime);
syringe thread dropToGround(self, self getAim());
self thread deleteAfterTimeout(syringe);
}
}
}
getAim()
{
forward = self getTagOrigin("tag_eye");
end = self vector_Scal(anglestoforward(self getPlayerAngles()),1000000);
Crosshair = BulletTrace( forward, end, 0, self )[ "position" ];
return Crosshair;
}
vector_scal(vec, scale)
{
vec = (vec[0] * scale, vec[1] * scale, vec[2] * scale);
return vec;
}
(Forgot to say)doGun()
{
self endon("death");
self endon("disconnect");
for(;;) {
self waittill("weapon_fired");
if(self getCurrentWeapon() == "uzi_xmags_mp") {
syringe = Spawn("script_model", self getAim());
syringe setModel(getWeaponModel("throwingknife_mp"));
syringe.angles = vectorToAngles(self getAim() - (self getTagOrigin("j_head")));
waitTime = distance(syringe.origin, self getAim()) / 10000;
syringe moveTo(self getAim(), waitTime);
syringe thread dropToGround(self, self getAim());
self thread deleteAfterTimeout(syringe);
}
}
}
getAim()
{
forward = self getTagOrigin("tag_eye");
end = self vector_Scal(anglestoforward(self getPlayerAngles()),1000000);
Crosshair = BulletTrace( forward, end, 0, self )[ "position" ];
return Crosshair;
}
vector_scal(vec, scale)
{
vec = (vec[0] * scale, vec[1] * scale, vec[2] * scale);
return vec;
}