#define WEAPONS_ALL_C
#if defined(CSQC)
- #include "../constants.qh"
- #include "../stats.qh"
- #include <lib/warpzone/anglestransform.qh>
- #include <lib/warpzone/common.qh>
- #include <lib/warpzone/client.qh>
- #include "../util.qh"
- #include <client/autocvars.qh>
- #include "../deathtypes/all.qh"
- #include <lib/csqcmodel/interpolate.qh>
- #include "../physics/movetypes/movetypes.qh"
#include <client/main.qh>
+ #include <common/constants.qh>
+ #include <common/deathtypes/all.qh>
+ #include <common/physics/movetypes/movetypes.qh>
+ #include <common/stats.qh>
+ #include <common/util.qh>
+ #include <common/weapons/calculations.qc>
+ #include <common/weapons/weapon/_mod.inc>
#include <lib/csqcmodel/cl_model.qh>
+ #include <lib/csqcmodel/interpolate.qh>
+ #include <lib/warpzone/anglestransform.qh>
+ #include <lib/warpzone/client.qh>
+ #include <lib/warpzone/common.qh>
#elif defined(MENUQC)
+ #include <common/weapons/weapon/_mod.inc>
#elif defined(SVQC)
+ #include <common/constants.qh>
+ #include <common/deathtypes/all.qh>
#include <common/items/_mod.qh>
+ #include <common/mapinfo.qh>
+ #include <common/monsters/_mod.qh>
+ #include <common/notifications/all.qh>
+ #include <common/stats.qh>
+ #include <common/teams.qh>
+ #include <common/util.qh>
+ #include <common/weapons/calculations.qc>
+ #include <common/weapons/config.qc>
+ #include <common/weapons/config.qh>
+ #include <common/weapons/weapon/_mod.inc>
+ #include <lib/csqcmodel/sv_model.qh>
#include <lib/warpzone/anglestransform.qh>
#include <lib/warpzone/common.qh>
- #include <lib/warpzone/util_server.qh>
#include <lib/warpzone/server.qh>
- #include "../constants.qh"
- #include "../stats.qh"
- #include "../teams.qh"
- #include <common/util.qh>
- #include "../monsters/_mod.qh"
- #include "config.qh"
- #include <server/weapons/common.qh>
- #include <server/weapons/csqcprojectile.qh>
- #include <server/weapons/tracing.qh>
+ #include <lib/warpzone/util_server.qh>
+ #include <server/command/_mod.qh>
+ #include <server/hook.qh>
#include <server/items/spawning.qh>
- #include <server/autocvars.qh>
- #include "../notifications/all.qh"
- #include "../deathtypes/all.qh"
#include <server/mutators/_mod.qh>
- #include "../mapinfo.qh"
- #include <server/command/_mod.qh>
- #include <lib/csqcmodel/sv_model.qh>
#include <server/portals.qh>
-#include <server/hook.qh>
-#endif
-#ifdef GAMEQC
- #include "calculations.qc"
-#endif
-#ifdef SVQC
- #include "config.qc"
+ #include <server/weapons/common.qh>
+ #include <server/weapons/csqcprojectile.qh>
+ #include <server/weapons/tracing.qh>
#endif
-#include "weapon/_mod.inc"
-
// WEAPON PLUGIN SYSTEM
if (a >= 24)
{
a -= 24;
- return '0 0 1' * (2 ** a);
+ return '0 0 1' * BIT(a);
}
- return '0 1 0' * (2 ** a);
+ return '0 1 0' * BIT(a);
}
- return '1 0 0' * (2 ** a);
+ return '1 0 0' * BIT(a);
}
#ifdef SVQC
void WriteWepSet(float dst, WepSet w)
return result;
}
-string GetAmmoPicture(int ammotype)
+// TODO: registry handles for below functions
+string GetAmmoPicture(Resource ammotype)
{
switch (ammotype)
{
}
}
-string GetAmmoName(int ammotype)
+string GetAmmoName(Resource ammotype)
{
switch (ammotype)
{
}
}
-entity GetAmmoItem(int ammotype)
+entity GetAmmoItem(Resource ammotype)
{
switch (ammotype)
{
case RES_PLASMA: return ITEM_Plasma;
case RES_FUEL: return ITEM_JetpackFuel;
}
- LOG_WARNF("Invalid ammo type %d ", ammotype);
+ LOG_WARNF("Invalid ammo type %d ", ammotype.m_id);
return NULL;
// WEAPONTODO: use this generic func to reduce duplication ?
// GetAmmoPicture GetAmmoName notif_arg_item_wepammo ammo_pickupevalfunc ?
}
-#ifdef SVQC
-int GetAmmoConsumptionPrimary(string netname)
-// Returns ammo consumed per shot by the primary/default fire mode
-// Returns 0 if the netname has no ammo cvar
-{
- switch (netname)
- {
- case "arc": return autocvar_g_balance_arc_beam_ammo;
- case "devastator": return autocvar_g_balance_devastator_ammo;
- case "machinegun": return autocvar_g_balance_machinegun_sustained_ammo;
- case "minelayer": return autocvar_g_balance_minelayer_ammo;
- case "seeker": return autocvar_g_balance_seeker_tag_ammo;
- default: return cvar(strcat("g_balance_", netname, "_primary_ammo"));
- }
-}
-#endif
-
#ifdef CSQC
-int GetAmmoTypeFromNum(int i)
+Resource GetAmmoTypeFromNum(int i)
{
switch (i)
{
}
}
-int GetAmmoStat(int ammotype)
+int GetAmmoStat(Resource ammotype)
{
switch (ammotype)
{
LOG_INFOF("Incorrect parameters for ^2%s^7", argv(0));
case CMD_REQUEST_USAGE:
{
- LOG_HELP("Usage:^3 cl_cmd weapon_find weapon");
- LOG_HELP(" Where 'weapon' is the lowercase weapon name, 'all' or 'unowned'.");
+ LOG_HELP("Usage:^3 cl_cmd weapon_find <weapon>");
+ LOG_HELP(" Where <weapon> is the lowercase weapon name, 'all' or 'unowned'.");
return;
}
}