+
+void W_AttachToShotorg(entity flash, vector offset);
+
+void W_DecreaseAmmo(Weapon wep, float ammo_use);
+
+void W_DropEvent(float event, entity player, float weapon_type, entity weapon_item);
+
+void W_Reload(float sent_ammo_min, string sent_sound);
+
+void W_WeaponFrame();
+
+float W_WeaponRateFactor();
+
+float W_WeaponSpeedFactor();
+
+float weapon_prepareattack(float secondary, float attacktime);
+
+float weapon_prepareattack_check(float secondary, float attacktime);
+
+float weapon_prepareattack_do(float secondary, float attacktime);
+
+void weapon_thinkf(float fr, float t, void(Weapon thiswep, bool fire1, bool fire2) func);
+
+#endif