X-Git-Url: http://de.git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fcommon%2Fweapons%2Fweapon%2Fblaster.qh;h=7efbdf7a52cc661899ce42c973c72c11df5959df;hb=0f1ffe9c0565f1f1a0d6f58240760f227aa3ee99;hp=972dcd003f23118654a332337c16904e93ca190d;hpb=8d32c10f81438b5a095ddf1bbdaaed13408e841f;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/common/weapons/weapon/blaster.qh b/qcsrc/common/weapons/weapon/blaster.qh index 972dcd003..7efbdf7a5 100644 --- a/qcsrc/common/weapons/weapon/blaster.qh +++ b/qcsrc/common/weapons/weapon/blaster.qh @@ -1,6 +1,7 @@ #pragma once CLASS(Blaster, Weapon) +/* spawnfunc */ ATTRIB(Blaster, m_canonical_spawnfunc, string, "weapon_blaster"); /* ammotype */ //ATTRIB(Blaster, ammo_type, int, RESOURCE_NONE); /* impulse */ ATTRIB(Blaster, impulse, int, 1); /* flags */ ATTRIB(Blaster, spawnflags, int, WEP_FLAG_NORMAL | WEP_FLAG_CANCLIMB | WEP_TYPE_SPLASH); @@ -44,10 +45,36 @@ CLASS(Blaster, Weapon) ENDCLASS(Blaster) REGISTER_WEAPON(BLASTER, blaster, NEW(Blaster)); +SPAWNFUNC_WEAPON(weapon_blaster, WEP_BLASTER) +SPAWNFUNC_WEAPON(weapon_laser, WEP_BLASTER) + +CLASS(OffhandBlaster, OffhandWeapon) +ENDCLASS(OffhandBlaster) +OffhandBlaster OFFHAND_BLASTER; STATIC_INIT(OFFHAND_BLASTER) { OFFHAND_BLASTER = NEW(OffhandBlaster); } + #ifdef SVQC .float blaster_damage; .float blaster_edgedamage; .float blaster_radius; .float blaster_force; .float blaster_lifetime; + +// Will be demacroed after WEP_CVAR macros are also demacroed. +#define BLASTER_SECONDARY_ATTACK(weapon_name, actor, weaponentity) \ + makevectors(actor.v_angle); \ + W_Blaster_Attack( \ + actor, \ + weaponentity, \ + WEP_BLASTER.m_id | HITTYPE_SECONDARY, \ + WEP_CVAR_SEC(weapon_name, shotangle), \ + WEP_CVAR_SEC(weapon_name, damage), \ + WEP_CVAR_SEC(weapon_name, edgedamage), \ + WEP_CVAR_SEC(weapon_name, radius), \ + WEP_CVAR_SEC(weapon_name, force), \ + WEP_CVAR_SEC(weapon_name, speed), \ + WEP_CVAR_SEC(weapon_name, spread), \ + WEP_CVAR_SEC(weapon_name, delay), \ + WEP_CVAR_SEC(weapon_name, lifetime) \ + ); + #endif