X-Git-Url: http://de.git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fcommon%2Fweapons%2Fweapon.qh;h=782f3c5cedcbf414c98c6712ce8e21ba44063044;hb=646e82672a7a8b8db0be0caf5dbd062b0d04da96;hp=c525bb81b954ef1d90a5fbe49c3547442a22708a;hpb=79eebf87e68861e205a8754d6551bd0aa2229c44;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/common/weapons/weapon.qh b/qcsrc/common/weapons/weapon.qh index c525bb81b..782f3c5ce 100644 --- a/qcsrc/common/weapons/weapon.qh +++ b/qcsrc/common/weapons/weapon.qh @@ -75,6 +75,8 @@ CLASS(Weapon, Object) ATTRIB(Weapon, w_crosshair, string, "gfx/crosshair1"); /** A: crosshair : per-weapon crosshair size (argument two of "crosshair" field) */ ATTRIB(Weapon, w_crosshair_size, float, 1); + /** A: reticle : per-weapon zoom reticle */ + ATTRIB(Weapon, w_reticle, string, ""); /** M: wepimg : "weaponfoobar" side view image file of weapon. WEAPONTODO: Move out of skin files, move to common files */ ATTRIB(Weapon, model2, string, ""); /** M: refname : reference name name */ @@ -85,15 +87,15 @@ CLASS(Weapon, Object) ATTRIB(Weapon, m_pickup, entity); /** (SERVER) setup weapon data */ - METHOD(Weapon, wr_setup, void(Weapon this, entity actor)) {} + METHOD(Weapon, wr_setup, void(Weapon this, entity actor, .entity weaponentity)) {} /** (SERVER) logic to run every frame */ METHOD(Weapon, wr_think, void(Weapon this, entity actor, .entity weaponentity, int fire)) {} /** (SERVER) checks ammo for weapon primary */ - METHOD(Weapon, wr_checkammo1, bool(Weapon this, entity actor)) {return false;} + METHOD(Weapon, wr_checkammo1, bool(Weapon this, entity actor, .entity weaponentity)) {return false;} /** (SERVER) checks ammo for weapon second */ - METHOD(Weapon, wr_checkammo2, bool(Weapon this, entity actor)) {return false;} + METHOD(Weapon, wr_checkammo2, bool(Weapon this, entity actor, .entity weaponentity)) {return false;} /** (SERVER) runs bot aiming code for this weapon */ - METHOD(Weapon, wr_aim, void(Weapon this, entity actor)) {} + METHOD(Weapon, wr_aim, void(Weapon this, entity actor, .entity weaponentity)) {} /** (BOTH) precaches models/sounds used by this weapon, also sets up weapon properties */ METHOD(Weapon, wr_init, void(Weapon this)) {} /** (SERVER) notification number for suicide message (may inspect w_deathtype for details) */ @@ -112,17 +114,17 @@ CLASS(Weapon, Object) METHOD(Weapon, wr_gonethink, void(Weapon this, entity actor, .entity weaponentity)) {} /** (ALL) dump weapon cvars to config in data directory (see: sv_cmd dumpweapons) */ METHOD(Weapon, wr_config, void(Weapon this)) {} - /** (CLIENT) weapon specific zoom reticle */ - METHOD(Weapon, wr_zoomreticle, bool(Weapon this)) { + /** (BOTH) weapon specific zoom reticle */ + METHOD(Weapon, wr_zoom, bool(Weapon this, entity actor)) { // no weapon specific image for this weapon return false; } /** (CLIENT) weapon specific glow */ - METHOD(Weapon, wr_glow, vector(Weapon this)) { return '0 0 0'; } + METHOD(Weapon, wr_glow, vector(Weapon this, entity actor, entity wepent)) { return '0 0 0'; } /** (SERVER) the weapon is dropped */ - METHOD(Weapon, wr_drop, void(Weapon this, entity actor)) {} + METHOD(Weapon, wr_drop, void(Weapon this, entity actor, .entity weaponentity)) {} /** (SERVER) a weapon is picked up */ - METHOD(Weapon, wr_pickup, void(Weapon this, entity actor)) {} + METHOD(Weapon, wr_pickup, void(Weapon this, entity actor, .entity weaponentity)) {} /** (SERVER) update cvar based properties */ METHOD(Weapon, wr_update, void(Weapon this)) {} METHOD(Weapon, display, void(entity this, void(string name, string icon) returns)) { @@ -134,7 +136,7 @@ ENDCLASS(Weapon) CLASS(WeaponPickup, Pickup) ATTRIB(WeaponPickup, m_weapon, Weapon); ATTRIB(WeaponPickup, m_name, string); -#ifndef MENUQC +#ifdef GAMEQC ATTRIB(WeaponPickup, m_sound, Sound, SND_WEAPONPICKUP); #endif #ifdef SVQC @@ -146,7 +148,7 @@ CLASS(WeaponPickup, Pickup) CONSTRUCT(WeaponPickup); this.m_weapon = w; this.m_name = w.m_name; -#ifndef MENUQC +#ifdef GAMEQC this.m_model = w.m_model; #endif #ifdef SVQC