X-Git-Url: http://git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fserver%2Fweapons%2Fcommon.qh;h=d9b3b0cd4ddc58db40ee6e2f8a807bceabb11cb2;hb=aae27b54eb620186060de31b49b6f1d7cabf3358;hp=6941b015709d09704b6dadab56202eedb4ac8a97;hpb=35e8f712933b0ebf9b163b7289cf975825b33803;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/server/weapons/common.qh b/qcsrc/server/weapons/common.qh index 6941b0157..d9b3b0cd4 100644 --- a/qcsrc/server/weapons/common.qh +++ b/qcsrc/server/weapons/common.qh @@ -1,46 +1,28 @@ -#ifndef WEAPONS_COMMON_H -#define WEAPONS_COMMON_H - -#if defined(CSQC) -#elif defined(MENUQC) -#elif defined(SVQC) - #include "../../common/util-pre.qh" - #include "../sys-pre.qh" - #include "../../dpdefs/progsdefs.qh" - #include "../../dpdefs/dpextensions.qh" - #include "../sys-post.qh" - #include "../../warpzonelib/anglestransform.qh" - #include "../../warpzonelib/mathlib.qh" - #include "../../warpzonelib/common.qh" - #include "../../warpzonelib/util_server.qh" - #include "../../warpzonelib/server.qh" - #include "../../common/constants.qh" - #include "../../common/stats.qh" - #include "../../common/teams.qh" - #include "../../common/util.qh" - #include "../../common/nades.qh" - #include "../../common/buffs.qh" - #include "../../common/test.qh" - #include "../../common/counting.qh" - #include "../../common/urllib.qh" - #include "../../common/command/markup.qh" - #include "../../common/command/rpn.qh" - #include "../../common/command/generic.qh" - #include "../../common/command/shared_defs.qh" - #include "../../common/net_notice.qh" - #include "../../common/animdecide.qh" - #include "../../common/monsters/monsters.qh" - #include "../../common/monsters/sv_monsters.qh" - #include "../../common/monsters/spawn.qh" - #include "../../common/weapons/config.qh" - #include "../../common/weapons/weapons.qh" - #include "accuracy.qh" -#endif +#pragma once +bool W_DualWielding(entity player); void W_GiveWeapon (entity e, float wep); .float prevstrengthsound; .float prevstrengthsoundattempt; void W_PlayStrengthSound(entity player); -float W_CheckProjectileDamage(entity inflictor, entity projowner, float deathtype, float exception); -void W_PrepareExplosionByDamage(entity attacker, void() explode); -#endif \ No newline at end of file +float W_CheckProjectileDamage(entity inflictor, entity projowner, int deathtype, float exception); +void W_PrepareExplosionByDamage(entity this, entity attacker, void(entity this) explode); + +.float misc_bulletcounter; + +#define PROJECTILE_MAKETRIGGER(e) (e).solid = SOLID_CORPSE; (e).dphitcontentsmask = DPCONTENTS_SOLID | DPCONTENTS_BODY | DPCONTENTS_CORPSE +// when doing this, hagar can go through clones +// #define PROJECTILE_MAKETRIGGER(e) (e).solid = SOLID_BBOX + +.int missile_flags; +const int MIF_SPLASH = BIT(1); +const int MIF_ARC = BIT(2); +const int MIF_PROXY = BIT(3); +const int MIF_GUIDED_MANUAL = BIT(4); +const int MIF_GUIDED_HEAT = BIT(5); +const int MIF_GUIDED_LASER = BIT(6); +const int MIF_GUIDED_AI = BIT(7); +const int MIF_GUIDED_TAG = BIT(7); +const int MIF_GUIDED_ALL = MIF_GUIDED_MANUAL | MIF_GUIDED_HEAT | MIF_GUIDED_LASER | MIF_GUIDED_AI | MIF_GUIDED_TAG; +const int MIF_GUIDED_TRACKING = MIF_GUIDED_HEAT | MIF_GUIDED_LASER | MIF_GUIDED_AI | MIF_GUIDED_TAG; +const int MIF_GUIDED_CONFUSABLE = MIF_GUIDED_HEAT | MIF_GUIDED_AI;