This allows for the colors to be used in guide descriptions in future, without causing duplicate code.
This will also make editing multiple colors at once easier.
Also renamed wpcolor attrib (waypointsprite color) used by weapons to m_color, as with all other item-things.
{
if(this != WEP_Null && hud == HUD_NORMAL)
{
- wcross_color = this.wpcolor;
+ wcross_color = this.m_color;
break;
}
else { goto normalcolor; }
--- /dev/null
+#pragma once
+
+/*
+ * This file holds all m_color vals for the following,
+ * to avoid duplicate values, since some are referenced in multiple places
+ * (e.g. Vortex m_color in common/weapons/weapon/vortex.qh and in the describe method of ./rifle.qh):
+ * - Weapons
+ * - Items
+ * - Buffs, powerups
+ * - Nades
+ * - Status effects
+ * Perhaps in future this file can be converted to something like gfx/menu/luma/skinvalues.txt
+ */
+
+const vector COLOR_WEP_ARC = '1 1 1';
+const vector COLOR_WEP_BLASTER = '1 0.5 0.5';
+const vector COLOR_WEP_CRYLINK = '1 0.5 1';
+const vector COLOR_WEP_DEVASTATOR = '1 1 0';
+const vector COLOR_WEP_ELECTRO = '0 0.5 1';
+const vector COLOR_WEP_FIREBALL = '1 0.5 0';
+const vector COLOR_WEP_HAGAR = '1 1 0.5';
+const vector COLOR_WEP_HLAC = '0 1 0';
+const vector COLOR_WEP_HOOK = '0 0.5 0';
+const vector COLOR_WEP_MACHINEGUN = '1 1 0';
+const vector COLOR_WEP_MINELAYER = '0.75 1 0';
+const vector COLOR_WEP_MORTAR = '1 0 0';
+const vector COLOR_WEP_PORTO = '0.5 0.5 0.5';
+const vector COLOR_WEP_RIFLE = '0.5 1 0';
+const vector COLOR_WEP_SEEKER = '0.5 1 0';
+const vector COLOR_WEP_SHOCKWAVE = '0.5 0.25 0';
+const vector COLOR_WEP_SHOTGUN = '0.5 0.25 0';
+const vector COLOR_WEP_TUBA = '0 1 0';
+const vector COLOR_WEP_VAPORIZER = '0.5 1 1';
+const vector COLOR_WEP_VORTEX = '0.5 1 1';
+const vector COLOR_WEP_OKHMG = '0.5 0.5 0';
+const vector COLOR_WEP_OKMACHINEGUN = '1 1 0';
+const vector COLOR_WEP_OKNEX = '0.5 1 1';
+const vector COLOR_WEP_OKRPC = '0.5 0.5 0';
+const vector COLOR_WEP_OKSHOTGUN = '0.5 0.25 0';
+
+const vector COLOR_ITEM_ARMOR = '0 1 0';
+const vector COLOR_ITEM_HEALTH = '1 0 0';
+const vector COLOR_ITEM_JETPACK = '0.5 0.5 0.5';
+
+const vector COLOR_POWERUP_JETPACKREGEN = '1 0.5 0';
+const vector COLOR_POWERUP_EXTRALIFE = '1 0 0';
+const vector COLOR_POWERUP_INVISIBILITY = '0.5 0.5 1';
+const vector COLOR_POWERUP_SHIELD = '1 0 1';
+const vector COLOR_POWERUP_SPEED = '0.1 1 0.84';
+const vector COLOR_POWERUP_STRENGTH = '0 0 1';
+
+const vector COLOR_BUFF_AMMO = '0.76 1 0.1';
+const vector COLOR_BUFF_RESISTANCE = '0.36 0 0.07';
+const vector COLOR_BUFF_MEDIC = '1 0.12 0';
+const vector COLOR_BUFF_BASH = '1 0.39 0';
+const vector COLOR_BUFF_VAMPIRE = '1 0 0.24';
+const vector COLOR_BUFF_DISABILITY = '0.94 0.3 1';
+const vector COLOR_BUFF_VENGEANCE = '1 0.23 0.61';
+const vector COLOR_BUFF_JUMP = '0.24 0.78 1';
+const vector COLOR_BUFF_INFERNO = '1 0.62 0';
+const vector COLOR_BUFF_SWAPPER = '0.63 0.36 1';
+const vector COLOR_BUFF_MAGNET = '1 0.95 0.18';
+const vector COLOR_BUFF_LUCK = '1 0.23 0.44';
+const vector COLOR_BUFF_FLIGHT = '0.23 0.44 1';
+
+const vector COLOR_NADE_NORMAL = '1 1 1';
+const vector COLOR_NADE_NAPALM = '2 0.5 0';
+const vector COLOR_NADE_ICE = '0 0.5 2';
+const vector COLOR_NADE_TRANSLOCATE = '1 0 1';
+const vector COLOR_NADE_SPAWN = '1 0.9 0';
+const vector COLOR_NADE_HEAL = '1 0 0';
+const vector COLOR_NADE_MONSTER = '0.25 0.75 0';
+const vector COLOR_NADE_ENTRAP = '0.15 0.85 0';
+const vector COLOR_NADE_VEIL = '0.65 0.85 0.65';
+const vector COLOR_NADE_AMMO = '0.66 0.33 0';
+const vector COLOR_NADE_DARKNESS = '0.23 0 0.23';
+
+const vector COLOR_STATUSEFFECT_BURNING = '1 0.62 0';
+const vector COLOR_STATUSEFFECT_SPAWNSHIELD = '0.36 1 0.07';
+const vector COLOR_STATUSEFFECT_STUNNED = '0.67 0.84 1';
+const vector COLOR_STATUSEFFECT_WEBBED = '0.94 0.3 1';
#pragma once
+#include <common/colors.qh>
+
#include "pickup.qh"
CLASS(Armor, Pickup)
#ifdef SVQC
if(precache_pic(strcat("gfx/hud/luma/", this.m_icon)) == "")
this.m_icon = "armor"; // compatible with Xonotic v0.8.2 or lower
#endif
- this.m_color = '0 1 0';
+ this.m_color = COLOR_ITEM_ARMOR;
this.m_waypoint = _("Big armor");
#ifdef SVQC
this.m_itemid = IT_RESOURCE;
if(precache_pic(strcat("gfx/hud/luma/", this.m_icon)) == "")
this.m_icon = "item_large_armor"; // compatible with Xonotic v0.8.2 or lower
#endif
- this.m_color = '0 1 0';
+ this.m_color = COLOR_ITEM_ARMOR;
this.m_waypoint = _("Mega armor");
this.m_waypointblink = 2;
#ifdef SVQC
#pragma once
+#include <common/colors.qh>
+
#include "pickup.qh"
CLASS(Health, Pickup)
#ifdef SVQC
this.netname = "health_big";
this.m_name = _("Big health");
this.m_icon = "health_big";
- this.m_color = '1 0 0';
+ this.m_color = COLOR_ITEM_HEALTH;
this.m_waypoint = _("Big health");
#ifdef CSQC
if(precache_pic(strcat("gfx/hud/luma/", this.m_icon)) == "")
if(precache_pic(strcat("gfx/hud/luma/", this.m_icon)) == "")
this.m_icon = "item_mega_health"; // compatible with Xonotic v0.8.2 or lower
#endif
- this.m_color = '1 0 0';
+ this.m_color = COLOR_ITEM_HEALTH;
this.m_waypoint = _("Mega health");
this.m_waypointblink = 2;
#ifdef SVQC
#endif
#include "ammo.qh"
+#include <common/colors.qh>
#include <common/mutators/mutator/powerups/_mod.qh>
#ifndef SVQC
this.netname = "jetpack";
this.m_name = _("Jetpack");
this.m_icon = "jetpack";
- this.m_color = '0.5 0.5 0.5';
+ this.m_color = COLOR_ITEM_JETPACK;
this.m_waypoint = _("Jetpack");
this.m_waypointblink = 2;
#ifdef SVQC
this.netname = "fuel_regen";
this.m_name = _("Fuel regenerator");
this.m_icon = "fuelregen";
- this.m_color = '1 0.5 0';
+ this.m_color = COLOR_POWERUP_JETPACKREGEN;
this.m_waypoint = _("Fuel regen");
this.m_waypointblink = 2;
#ifdef SVQC
#pragma once
#include "../all.qh"
+#include <common/colors.qh>
#ifdef GAMEQC
MODEL(MON_SPIDER, M_Model("spider.dpm"));
ATTRIB(Webbed, m_name, string, _("Webbed"));
ATTRIB(Webbed, m_icon, string, "buff_disability");
#endif
- ATTRIB(Webbed, m_color, vector, '0.94 0.3 1');
+ ATTRIB(Webbed, m_color, vector, COLOR_STATUSEFFECT_WEBBED);
ATTRIB(Webbed, m_hidden, bool, true);
ATTRIB(Webbed, m_lifetime, float, 10);
ENDCLASS(Webbed)
+#include <common/colors.qh>
+
string Buff_CompatName(string buffname)
{
switch(buffname)
ATTRIB(AmmoBuff, netname, string, "ammo");
ATTRIB(AmmoBuff, m_icon, string, "buff_ammo");
ATTRIB(AmmoBuff, m_skin, int, 3);
- ATTRIB(AmmoBuff, m_color, vector, '0.76 1 0.1');
+ ATTRIB(AmmoBuff, m_color, vector, COLOR_BUFF_AMMO);
#ifdef MENUQC
METHOD(AmmoBuff, describe, string(AmmoBuff this))
{
ATTRIB(ResistanceBuff, netname, string, "resistance");
ATTRIB(ResistanceBuff, m_icon, string, "buff_resistance");
ATTRIB(ResistanceBuff, m_skin, int, 0);
- ATTRIB(ResistanceBuff, m_color, vector, '0.36 1 0.07');
+ ATTRIB(ResistanceBuff, m_color, vector, COLOR_BUFF_RESISTANCE);
#ifdef MENUQC
METHOD(ResistanceBuff, describe, string(ResistanceBuff this))
{
ATTRIB(MedicBuff, netname, string, "medic");
ATTRIB(MedicBuff, m_icon, string, "buff_medic");
ATTRIB(MedicBuff, m_skin, int, 1);
- ATTRIB(MedicBuff, m_color, vector, '1 0.12 0');
+ ATTRIB(MedicBuff, m_color, vector, COLOR_BUFF_MEDIC);
#ifdef MENUQC
METHOD(MedicBuff, describe, string(MedicBuff this))
{
ATTRIB(BashBuff, netname, string, "bash");
ATTRIB(BashBuff, m_icon, string, "buff_bash");
ATTRIB(BashBuff, m_skin, int, 5);
- ATTRIB(BashBuff, m_color, vector, '1 0.39 0');
+ ATTRIB(BashBuff, m_color, vector, COLOR_BUFF_BASH);
#ifdef MENUQC
METHOD(BashBuff, describe, string(BashBuff this))
{
ATTRIB(VampireBuff, netname, string, "vampire");
ATTRIB(VampireBuff, m_icon, string, "buff_vampire");
ATTRIB(VampireBuff, m_skin, int, 2);
- ATTRIB(VampireBuff, m_color, vector, '1 0 0.24');
+ ATTRIB(VampireBuff, m_color, vector, COLOR_BUFF_VAMPIRE);
#ifdef MENUQC
METHOD(VampireBuff, describe, string(VampireBuff this))
{
ATTRIB(DisabilityBuff, netname, string, "disability");
ATTRIB(DisabilityBuff, m_icon, string, "buff_disability");
ATTRIB(DisabilityBuff, m_skin, int, 7);
- ATTRIB(DisabilityBuff, m_color, vector, '0.94 0.3 1');
+ ATTRIB(DisabilityBuff, m_color, vector, COLOR_BUFF_DISABILITY);
#ifdef MENUQC
METHOD(DisabilityBuff, describe, string(DisabilityBuff this))
{
ATTRIB(VengeanceBuff, netname, string, "vengeance");
ATTRIB(VengeanceBuff, m_icon, string, "buff_vengeance");
ATTRIB(VengeanceBuff, m_skin, int, 15);
- ATTRIB(VengeanceBuff, m_color, vector, '1 0.23 0.61');
+ ATTRIB(VengeanceBuff, m_color, vector, COLOR_BUFF_VENGEANCE);
#ifdef MENUQC
METHOD(VengeanceBuff, describe, string(VengeanceBuff this))
{
ATTRIB(JumpBuff, netname, string, "jump");
ATTRIB(JumpBuff, m_icon, string, "buff_jump");
ATTRIB(JumpBuff, m_skin, int, 10);
- ATTRIB(JumpBuff, m_color, vector, '0.24 0.78 1');
+ ATTRIB(JumpBuff, m_color, vector, COLOR_BUFF_JUMP);
#ifdef MENUQC
METHOD(JumpBuff, describe, string(JumpBuff this))
{
ATTRIB(InfernoBuff, netname, string, "inferno");
ATTRIB(InfernoBuff, m_icon, string, "buff_inferno");
ATTRIB(InfernoBuff, m_skin, int, 16);
- ATTRIB(InfernoBuff, m_color, vector, '1 0.62 0');
+ ATTRIB(InfernoBuff, m_color, vector, COLOR_BUFF_INFERNO);
#ifdef MENUQC
METHOD(InfernoBuff, describe, string(InfernoBuff this))
{
ATTRIB(SwapperBuff, netname, string, "swapper");
ATTRIB(SwapperBuff, m_icon, string, "buff_swapper");
ATTRIB(SwapperBuff, m_skin, int, 17);
- ATTRIB(SwapperBuff, m_color, vector, '0.63 0.36 1');
+ ATTRIB(SwapperBuff, m_color, vector, COLOR_BUFF_SWAPPER);
#ifdef MENUQC
METHOD(SwapperBuff, describe, string(SwapperBuff this))
{
ATTRIB(MagnetBuff, netname, string, "magnet");
ATTRIB(MagnetBuff, m_icon, string, "buff_magnet");
ATTRIB(MagnetBuff, m_skin, int, 18);
- ATTRIB(MagnetBuff, m_color, vector, '1 0.95 0.18');
+ ATTRIB(MagnetBuff, m_color, vector, COLOR_BUFF_MAGNET);
#ifdef MENUQC
METHOD(MagnetBuff, describe, string(MagnetBuff this))
{
ATTRIB(LuckBuff, netname, string, "luck");
ATTRIB(LuckBuff, m_icon, string, "buff_luck");
ATTRIB(LuckBuff, m_skin, int, 19);
- ATTRIB(LuckBuff, m_color, vector, '1 0.23 0.44');
+ ATTRIB(LuckBuff, m_color, vector, COLOR_BUFF_LUCK);
#ifdef MENUQC
METHOD(LuckBuff, describe, string(LuckBuff this))
{
ATTRIB(FlightBuff, netname, string, "flight");
ATTRIB(FlightBuff, m_icon, string, "buff_flight");
ATTRIB(FlightBuff, m_skin, int, 11);
- ATTRIB(FlightBuff, m_color, vector, '0.23 0.44 1');
+ ATTRIB(FlightBuff, m_color, vector, COLOR_BUFF_FLIGHT);
#ifdef MENUQC
METHOD(FlightBuff, describe, string(FlightBuff this))
{
if (autocvar_cl_damagetext_color_per_weapon)
{
Weapon w = DEATH_WEAPONOF(this.m_deathtype);
- if (w != WEP_Null) rgb = w.wpcolor;
+ if (w != WEP_Null) rgb = w.m_color;
}
vector drawfontscale_save = drawfontscale;
+#include <common/colors.qh>
+
#ifdef GAMEQC
#define NADE_PROJECTILE(i, projectile, trail) MACRO_BEGIN \
this.m_projectile[i] = projectile; \
#endif
ENDCLASS(NormalNade)
REGISTER_NADE(NORMAL, NEW(NormalNade)) {
- this.m_color = '1 1 1';
+ this.m_color = COLOR_NADE_NORMAL;
#ifdef GAMEQC
NADE_PROJECTILE(0, PROJECTILE_NADE, EFFECT_Null);
NADE_PROJECTILE(1, PROJECTILE_NADE_BURN, EFFECT_Null);
#endif
ENDCLASS(NapalmNade)
REGISTER_NADE(NAPALM, NEW(NapalmNade)) {
- this.m_color = '2 0.5 0';
+ this.m_color = COLOR_NADE_NAPALM;
this.m_name = _("Napalm grenade");
this.m_icon = "nade_napalm";
#ifdef GAMEQC
#endif
ENDCLASS(IceNade)
REGISTER_NADE(ICE, NEW(IceNade)) {
- this.m_color = '0 0.5 2';
+ this.m_color = COLOR_NADE_ICE;
this.m_name = _("Ice grenade");
this.m_icon = "nade_ice";
#ifdef GAMEQC
#endif
ENDCLASS(TranslocateNade)
REGISTER_NADE(TRANSLOCATE, NEW(TranslocateNade)) {
- this.m_color = '1 0 1';
+ this.m_color = COLOR_NADE_TRANSLOCATE;
this.m_name = _("Translocate grenade");
this.m_icon = "nade_translocate";
#ifdef GAMEQC
#endif
ENDCLASS(SpawnNade)
REGISTER_NADE(SPAWN, NEW(SpawnNade)) {
- this.m_color = '1 0.9 0';
+ this.m_color = COLOR_NADE_SPAWN;
this.m_name = _("Spawn grenade");
this.m_icon = "nade_spawn";
#ifdef GAMEQC
#endif
ENDCLASS(HealNade)
REGISTER_NADE(HEAL, NEW(HealNade)) {
- this.m_color = '1 0 0';
+ this.m_color = COLOR_NADE_HEAL;
this.m_name = _("Heal grenade");
this.m_icon = "nade_heal";
#ifdef GAMEQC
#endif
ENDCLASS(MonsterNade)
REGISTER_NADE(MONSTER, NEW(MonsterNade)) {
- this.m_color = '0.25 0.75 0';
+ this.m_color = COLOR_NADE_MONSTER;
this.m_name = _("Monster grenade");
this.m_icon = "nade_monster";
#ifdef GAMEQC
#endif
ENDCLASS(EntrapNade)
REGISTER_NADE(ENTRAP, NEW(EntrapNade)) {
- this.m_color = '0.15 0.85 0';
+ this.m_color = COLOR_NADE_ENTRAP;
this.m_name = _("Entrap grenade");
this.m_icon = "nade_entrap";
#ifdef GAMEQC
#endif
ENDCLASS(VeilNade)
REGISTER_NADE(VEIL, NEW(VeilNade)) {
- this.m_color = '0.65 0.85 0.65';
+ this.m_color = COLOR_NADE_VEIL;
this.m_name = _("Veil grenade");
this.m_icon = "nade_veil";
this.m_alpha = 0.45;
#endif
ENDCLASS(AmmoNade)
REGISTER_NADE(AMMO, NEW(AmmoNade)) {
- this.m_color = '0.66 0.33 0';
+ this.m_color = COLOR_NADE_AMMO;
this.m_name = _("Ammo grenade");
this.m_icon = "nade_ammo";
#ifdef GAMEQC
#endif
ENDCLASS(DarknessNade)
REGISTER_NADE(DARKNESS, NEW(DarknessNade)) {
- this.m_color = '0.23 0 0.23';
+ this.m_color = COLOR_NADE_DARKNESS;
this.m_name = _("Darkness grenade");
this.m_icon = "nade_darkness";
#ifdef GAMEQC
#pragma once
#include <common/weapons/all.qh>
+#include <common/colors.qh>
CLASS(OverkillHeavyMachineGun, Weapon)
/* spawnfunc */ ATTRIB(OverkillHeavyMachineGun, m_canonical_spawnfunc, string, "weapon_okhmg");
/* impulse */ ATTRIB(OverkillHeavyMachineGun, impulse, int, 3);
/* flags */ ATTRIB(OverkillHeavyMachineGun, spawnflags, int, WEP_FLAG_MUTATORBLOCKED | WEP_FLAG_HIDDEN | WEP_FLAG_RELOADABLE | WEP_TYPE_HITSCAN | WEP_FLAG_SUPERWEAPON | WEP_FLAG_PENETRATEWALLS);
/* rating */ ATTRIB(OverkillHeavyMachineGun, bot_pickupbasevalue, float, 10000);
-/* color */ ATTRIB(OverkillHeavyMachineGun, wpcolor, vector, '0.5 0.5 0');
+/* color */ ATTRIB(OverkillHeavyMachineGun, m_color, vector, COLOR_WEP_OKHMG);
/* modelname */ ATTRIB(OverkillHeavyMachineGun, mdl, string, "ok_hmg");
#ifdef GAMEQC
/* model */ ATTRIB(OverkillHeavyMachineGun, m_model, Model, MDL_HMG_ITEM);
#pragma once
+#include <common/colors.qh>
+
CLASS(OverkillMachineGun, Weapon)
/* spawnfunc */ ATTRIB(OverkillMachineGun, m_canonical_spawnfunc, string, "weapon_okmachinegun");
/* ammotype */ ATTRIB(OverkillMachineGun, ammo_type, Resource, RES_BULLETS);
/* impulse */ ATTRIB(OverkillMachineGun, impulse, int, 3);
/* flags */ ATTRIB(OverkillMachineGun, spawnflags, int, WEP_FLAG_HIDDEN | WEP_FLAG_RELOADABLE | WEP_TYPE_HITSCAN | WEP_FLAG_PENETRATEWALLS | WEP_FLAG_MUTATORBLOCKED);
/* rating */ ATTRIB(OverkillMachineGun, bot_pickupbasevalue, float, 7000);
-/* color */ ATTRIB(OverkillMachineGun, wpcolor, vector, '1 1 0');
+/* color */ ATTRIB(OverkillMachineGun, m_color, vector, COLOR_WEP_OKMACHINEGUN);
/* modelname */ ATTRIB(OverkillMachineGun, mdl, string, "ok_mg");
#ifdef GAMEQC
/* model */ ATTRIB(OverkillMachineGun, m_model, Model, MDL_OK_MG_ITEM);
#pragma once
+#include <common/colors.qh>
+
CLASS(OverkillNex, Weapon)
/* spawnfunc */ ATTRIB(OverkillNex, m_canonical_spawnfunc, string, "weapon_oknex");
/* ammotype */ ATTRIB(OverkillNex, ammo_type, Resource, RES_CELLS);
/* impulse */ ATTRIB(OverkillNex, impulse, int, 7);
/* flags */ ATTRIB(OverkillNex, spawnflags, int, WEP_FLAG_HIDDEN | WEP_FLAG_RELOADABLE | WEP_TYPE_HITSCAN | WEP_FLAG_MUTATORBLOCKED);
/* rating */ ATTRIB(OverkillNex, bot_pickupbasevalue, float, 8000);
-/* color */ ATTRIB(OverkillNex, wpcolor, vector, '0.5 1 1');
+/* color */ ATTRIB(OverkillNex, m_color, vector, COLOR_WEP_OKNEX);
/* modelname */ ATTRIB(OverkillNex, mdl, string, "ok_sniper");
#ifdef GAMEQC
/* model */ ATTRIB(OverkillNex, m_model, Model, MDL_OK_SNIPER_ITEM);
#pragma once
#include <common/weapons/all.qh>
+#include <common/colors.qh>
CLASS(OverkillRocketPropelledChainsaw, Weapon)
/* spawnfunc */ ATTRIB(OverkillRocketPropelledChainsaw, m_canonical_spawnfunc, string, "weapon_okrpc");
/* impulse */ ATTRIB(OverkillRocketPropelledChainsaw, impulse, int, 9);
/* flags */ ATTRIB(OverkillRocketPropelledChainsaw, spawnflags, int, WEP_FLAG_MUTATORBLOCKED | WEP_FLAG_HIDDEN | WEP_FLAG_CANCLIMB | WEP_FLAG_RELOADABLE | WEP_TYPE_SPLASH | WEP_FLAG_SUPERWEAPON);
/* rating */ ATTRIB(OverkillRocketPropelledChainsaw, bot_pickupbasevalue, float, 10000);
-/* color */ ATTRIB(OverkillRocketPropelledChainsaw, wpcolor, vector, '0.5 0.5 0');
+/* color */ ATTRIB(OverkillRocketPropelledChainsaw, m_color, vector, COLOR_WEP_OKRPC);
/* modelname */ ATTRIB(OverkillRocketPropelledChainsaw, mdl, string, "ok_rl");
#ifdef GAMEQC
/* model */ ATTRIB(OverkillRocketPropelledChainsaw, m_model, Model, MDL_RPC_ITEM);
#pragma once
+#include <common/colors.qh>
+
CLASS(OverkillShotgun, Weapon)
/* spawnfunc */ ATTRIB(OverkillShotgun, m_canonical_spawnfunc, string, "weapon_okshotgun");
/* ammotype */ ATTRIB(OverkillShotgun, ammo_type, Resource, RES_SHELLS);
/* impulse */ ATTRIB(OverkillShotgun, impulse, int, 2);
/* flags */ ATTRIB(OverkillShotgun, spawnflags, int, WEP_FLAG_HIDDEN | WEP_FLAG_RELOADABLE | WEP_TYPE_HITSCAN | WEP_FLAG_MUTATORBLOCKED);
/* rating */ ATTRIB(OverkillShotgun, bot_pickupbasevalue, float, 6000);
-/* color */ ATTRIB(OverkillShotgun, wpcolor, vector, '0.5 0.25 0');
+/* color */ ATTRIB(OverkillShotgun, m_color, vector, COLOR_WEP_OKSHOTGUN);
/* modelname */ ATTRIB(OverkillShotgun, mdl, string, "ok_shotgun");
#ifdef GAMEQC
/* model */ ATTRIB(OverkillShotgun, m_model, Model, MDL_OK_SHOTGUN_ITEM);
#include <common/items/all.qh>
#include <common/mutators/mutator/powerups/powerups.qh>
+#include <common/colors.qh>
#ifdef SVQC
// For FL_POWERUP
#include <common/constants.qh>
this.netname = "invisibility";
this.m_name = _("Invisibility");
this.m_icon = "buff_invisible";
- this.m_color = '0.5 0.5 1';
+ this.m_color = COLOR_POWERUP_INVISIBILITY;
this.m_waypoint = _("Invisibility");
this.m_waypointblink = 2;
}
CLASS(Invisibility, Powerups)
ATTRIB(Invisibility, netname, string, "invisibility");
ATTRIB(Invisibility, m_name, string, _("Invisibility"));
- ATTRIB(Invisibility, m_color, vector, '0.5 0.5 1');
+ ATTRIB(Invisibility, m_color, vector, COLOR_POWERUP_INVISIBILITY);
ATTRIB(Invisibility, m_icon, string, "buff_invisible");
#ifdef MENUQC
METHOD(Invisibility, describe, string(Invisibility this))
#include <common/items/all.qh>
#include <common/mutators/mutator/powerups/powerups.qh>
+#include <common/colors.qh>
#ifdef SVQC
// For FL_POWERUP
#include <common/constants.qh>
this.netname = "invincible";
this.m_name = _("Shield");
this.m_icon = "shield";
- this.m_color = '1 0 1';
+ this.m_color = COLOR_POWERUP_SHIELD;
this.m_waypoint = _("Shield");
this.m_waypointblink = 2;
}
#include <common/items/all.qh>
#include <common/mutators/mutator/powerups/powerups.qh>
+#include <common/colors.qh>
#ifdef SVQC
// For FL_POWERUP
#include <common/constants.qh>
this.netname = "speed";
this.m_name = _("Speed");
this.m_icon = "buff_speed";
- this.m_color = '0.1 1 0.84';
+ this.m_color = COLOR_POWERUP_SPEED;
this.m_waypoint = _("Speed");
this.m_waypointblink = 2;
}
CLASS(Speed, Powerups)
ATTRIB(Speed, netname, string, "speed");
ATTRIB(Speed, m_name, string, _("Speed"));
- ATTRIB(Speed, m_color, vector, '0.1 1 0.84');
+ ATTRIB(Speed, m_color, vector, COLOR_POWERUP_SPEED);
ATTRIB(Speed, m_icon, string, "buff_speed");
#ifdef MENUQC
METHOD(Speed, describe, string(Speed this))
#include <common/items/all.qh>
#include <common/mutators/mutator/powerups/powerups.qh>
+#include <common/colors.qh>
#ifdef SVQC
// For FL_POWERUP
#include <common/constants.qh>
this.netname = "strength";
this.m_name = _("Strength");
this.m_icon = "strength";
- this.m_color = '0 0 1';
+ this.m_color = COLOR_POWERUP_STRENGTH;
this.m_waypoint = _("Strength");
this.m_waypointblink = 2;
}
#pragma once
#include <common/mutators/mutator/status_effects/all.qh>
+#include <common/colors.qh>
#ifdef SVQC
void Fire_ApplyDamage(entity e);
ATTRIB(Burning, m_name, string, _("Burning"));
ATTRIB(Burning, m_icon, string, "buff_inferno");
#endif
- ATTRIB(Burning, m_color, vector, '1 0.62 0');
+ ATTRIB(Burning, m_color, vector, COLOR_STATUSEFFECT_BURNING);
ATTRIB(Burning, m_hidden, bool, true);
ATTRIB(Burning, m_lifetime, float, 10);
#ifdef GAMEQC
#pragma once
#include <common/mutators/mutator/status_effects/all.qh>
+#include <common/colors.qh>
CLASS(SpawnShield, StatusEffects)
ATTRIB(SpawnShield, netname, string, "spawnshield");
ATTRIB(SpawnShield, m_name, string, _("Spawn Shield"));
ATTRIB(SpawnShield, m_icon, string, "shield");
#endif
- ATTRIB(SpawnShield, m_color, vector, '0.36 1 0.07');
+ ATTRIB(SpawnShield, m_color, vector, COLOR_STATUSEFFECT_SPAWNSHIELD);
ATTRIB(SpawnShield, m_hidden, bool, true);
ATTRIB(SpawnShield, m_lifetime, float, 10);
ENDCLASS(SpawnShield)
#pragma once
#include <common/mutators/mutator/status_effects/all.qh>
+#include <common/colors.qh>
#ifdef SVQC
//void Shock_ApplyDamage(entity e);
ATTRIB(Stunned, m_name, string, _("Stunned"));
ATTRIB(Stunned, m_icon, string, "buff_disability");
#endif
- ATTRIB(Stunned, m_color, vector, '0.67 0.84 1');
+ ATTRIB(Stunned, m_color, vector, COLOR_STATUSEFFECT_STUNNED);
ATTRIB(Stunned, m_hidden, bool, true);
ATTRIB(Stunned, m_lifetime, float, 10);
#ifdef GAMEQC
vector spritelookupcolor(entity this, string s, vector def)
{
- if (s == WP_Weapon.netname || s == RADARICON_Weapon.netname) return REGISTRY_GET(Weapons, this.wp_extra).wpcolor;
+ if (s == WP_Weapon.netname || s == RADARICON_Weapon.netname) return REGISTRY_GET(Weapons, this.wp_extra).m_color;
if (s == WP_Item.netname || s == RADARICON_Item.netname) return REGISTRY_GET(Items, this.wp_extra).m_color;
if (MUTATOR_CALLHOOK(WP_Format, this, s))
{
ATTRIB(Weapon, spawnflags, int, 0);
/** M: rating : bot weapon priority */
ATTRIB(Weapon, bot_pickupbasevalue, float, 0);
- /** M: color : waypointsprite color */
- ATTRIB(Weapon, wpcolor, vector, '0 0 0');
+ /** M: color : waypointsprite color. previously called "wpcolor" */
+ ATTRIB(Weapon, m_color, vector, '0 0 0');
/** M: modelname : name of model (without g_ v_ or h_ prefixes) */
ATTRIB(Weapon, mdl, string, "");
#ifdef GAMEQC
#pragma once
+#include <common/colors.qh>
+
CLASS(Arc, Weapon)
/* spawnfunc */ ATTRIB(Arc, m_canonical_spawnfunc, string, "weapon_arc");
/* ammotype */ ATTRIB(Arc, ammo_type, Resource, RES_CELLS);
/* impulse */ ATTRIB(Arc, impulse, int, 3);
/* flags */ ATTRIB(Arc, spawnflags, int, WEP_FLAG_MUTATORBLOCKED | WEP_TYPE_HITSCAN);
/* rating */ ATTRIB(Arc, bot_pickupbasevalue, float, 8000);
-/* color */ ATTRIB(Arc, wpcolor, vector, '1 1 1');
+/* color */ ATTRIB(Arc, m_color, vector, COLOR_WEP_ARC);
/* modelname */ ATTRIB(Arc, mdl, string, "arc");
#ifdef GAMEQC
/* model */ ATTRIB(Arc, m_model, Model, MDL_ARC_ITEM);
#pragma once
+#include <common/colors.qh>
+
CLASS(Blaster, Weapon)
/* spawnfunc */ ATTRIB(Blaster, m_canonical_spawnfunc, string, "weapon_blaster");
/* ammotype */ //ATTRIB(Blaster, ammo_type, Resource, RES_NONE);
/* impulse */ ATTRIB(Blaster, impulse, int, 1);
/* flags */ ATTRIB(Blaster, spawnflags, int, WEP_FLAG_NORMAL | WEP_FLAG_CANCLIMB | WEP_TYPE_SPLASH);
/* rating */ ATTRIB(Blaster, bot_pickupbasevalue, float, 0);
-/* color */ ATTRIB(Blaster, wpcolor, vector, '1 0.5 0.5');
+/* color */ ATTRIB(Blaster, m_color, vector, COLOR_WEP_BLASTER);
/* modelname */ ATTRIB(Blaster, mdl, string, "laser");
#ifdef GAMEQC
/* model */ ATTRIB(Blaster, m_model, Model, MDL_BLASTER_ITEM);
#pragma once
+#include <common/colors.qh>
+
CLASS(Crylink, Weapon)
/* spawnfunc */ ATTRIB(Crylink, m_canonical_spawnfunc, string, "weapon_crylink");
/* ammotype */ ATTRIB(Crylink, ammo_type, Resource, RES_CELLS);
/* impulse */ ATTRIB(Crylink, impulse, int, 6);
/* flags */ ATTRIB(Crylink, spawnflags, int, WEP_FLAG_NORMAL | WEP_FLAG_RELOADABLE | WEP_TYPE_SPLASH | WEP_FLAG_CANCLIMB);
/* rating */ ATTRIB(Crylink, bot_pickupbasevalue, float, 6000);
-/* color */ ATTRIB(Crylink, wpcolor, vector, '1 0.5 1');
+/* color */ ATTRIB(Crylink, m_color, vector, COLOR_WEP_CRYLINK);
/* modelname */ ATTRIB(Crylink, mdl, string, "crylink");
#ifdef GAMEQC
/* model */ ATTRIB(Crylink, m_model, Model, MDL_CRYLINK_ITEM);
#pragma once
+#include <common/colors.qh>
+
CLASS(Devastator, Weapon)
/* spawnfunc */ ATTRIB(Devastator, m_canonical_spawnfunc, string, "weapon_devastator");
/* ammotype */ ATTRIB(Devastator, ammo_type, Resource, RES_ROCKETS);
/* impulse */ ATTRIB(Devastator, impulse, int, 9);
/* flags */ ATTRIB(Devastator, spawnflags, int, WEP_FLAG_NORMAL | WEP_FLAG_RELOADABLE | WEP_FLAG_CANCLIMB | WEP_TYPE_SPLASH);
/* rating */ ATTRIB(Devastator, bot_pickupbasevalue, float, 8000);
-/* color */ ATTRIB(Devastator, wpcolor, vector, '1 1 0');
+/* color */ ATTRIB(Devastator, m_color, vector, COLOR_WEP_DEVASTATOR);
/* modelname */ ATTRIB(Devastator, mdl, string, "rl");
#ifdef GAMEQC
/* model */ ATTRIB(Devastator, m_model, Model, MDL_DEVASTATOR_ITEM);
#pragma once
+#include <common/colors.qh>
+
CLASS(Electro, Weapon)
/* spawnfunc */ ATTRIB(Electro, m_canonical_spawnfunc, string, "weapon_electro");
/* ammotype */ ATTRIB(Electro, ammo_type, Resource, RES_CELLS);
/* impulse */ ATTRIB(Electro, impulse, int, 5);
/* flags */ ATTRIB(Electro, spawnflags, int, WEP_FLAG_NORMAL | WEP_FLAG_RELOADABLE | WEP_TYPE_SPLASH);
/* rating */ ATTRIB(Electro, bot_pickupbasevalue, float, 5000);
-/* color */ ATTRIB(Electro, wpcolor, vector, '0 0.5 1');
+/* color */ ATTRIB(Electro, m_color, vector, COLOR_WEP_ELECTRO);
/* modelname */ ATTRIB(Electro, mdl, string, "electro");
#ifdef GAMEQC
/* model */ ATTRIB(Electro, m_model, Model, MDL_ELECTRO_ITEM);
#pragma once
+#include <common/colors.qh>
+
CLASS(Fireball, Weapon)
/* spawnfunc */ ATTRIB(Fireball, m_canonical_spawnfunc, string, "weapon_fireball");
/* ammotype */ //ATTRIB(Fireball, ammo_type, Resource, RES_NONE);
/* impulse */ ATTRIB(Fireball, impulse, int, 9);
/* flags */ ATTRIB(Fireball, spawnflags, int, WEP_FLAG_SUPERWEAPON | WEP_TYPE_SPLASH | WEP_FLAG_NODUAL);
/* rating */ ATTRIB(Fireball, bot_pickupbasevalue, float, 5000);
-/* color */ ATTRIB(Fireball, wpcolor, vector, '1 0.5 0');
+/* color */ ATTRIB(Fireball, m_color, vector, COLOR_WEP_FIREBALL);
/* modelname */ ATTRIB(Fireball, mdl, string, "fireball");
#ifdef GAMEQC
/* model */ ATTRIB(Fireball, m_model, Model, MDL_FIREBALL_ITEM);
#pragma once
+#include <common/colors.qh>
+
CLASS(Hagar, Weapon)
/* spawnfunc */ ATTRIB(Hagar, m_canonical_spawnfunc, string, "weapon_hagar");
/* ammotype */ ATTRIB(Hagar, ammo_type, Resource, RES_ROCKETS);
/* impulse */ ATTRIB(Hagar, impulse, int, 8);
/* flags */ ATTRIB(Hagar, spawnflags, int, WEP_FLAG_NORMAL | WEP_FLAG_RELOADABLE | WEP_FLAG_CANCLIMB | WEP_TYPE_SPLASH);
/* rating */ ATTRIB(Hagar, bot_pickupbasevalue, float, 6000);
-/* color */ ATTRIB(Hagar, wpcolor, vector, '1 1 0.5');
+/* color */ ATTRIB(Hagar, m_color, vector, COLOR_WEP_HAGAR);
/* modelname */ ATTRIB(Hagar, mdl, string, "hagar");
#ifdef GAMEQC
/* model */ ATTRIB(Hagar, m_model, Model, MDL_HAGAR_ITEM);
#pragma once
+#include <common/colors.qh>
+
CLASS(HLAC, Weapon)
/* spawnfunc */ ATTRIB(HLAC, m_canonical_spawnfunc, string, "weapon_hlac");
/* ammotype */ ATTRIB(HLAC, ammo_type, Resource, RES_CELLS);
/* impulse */ ATTRIB(HLAC, impulse, int, 6);
/* flags */ ATTRIB(HLAC, spawnflags, int, WEP_FLAG_MUTATORBLOCKED | WEP_FLAG_RELOADABLE | WEP_TYPE_SPLASH);
/* rating */ ATTRIB(HLAC, bot_pickupbasevalue, float, 4000);
-/* color */ ATTRIB(HLAC, wpcolor, vector, '0 1 0');
+/* color */ ATTRIB(HLAC, m_color, vector, COLOR_WEP_HLAC);
/* modelname */ ATTRIB(HLAC, mdl, string, "hlac");
#ifdef GAMEQC
/* model */ ATTRIB(HLAC, m_model, Model, MDL_HLAC_ITEM);
#pragma once
+#include <common/colors.qh>
+
CLASS(Hook, Weapon)
/* spawnfunc */ ATTRIB(Hook, m_canonical_spawnfunc, string, "weapon_hook");
/* ammotype */ ATTRIB(Hook, ammo_type, Resource, RES_FUEL);
/* impulse */ ATTRIB(Hook, impulse, int, 0);
/* flags */ ATTRIB(Hook, spawnflags, int, WEP_FLAG_CANCLIMB | WEP_TYPE_SPLASH | WEP_FLAG_NOTRUEAIM);
/* rating */ ATTRIB(Hook, bot_pickupbasevalue, float, 0);
-/* color */ ATTRIB(Hook, wpcolor, vector, '0 0.5 0');
+/* color */ ATTRIB(Hook, m_color, vector, COLOR_WEP_HOOK);
/* modelname */ ATTRIB(Hook, mdl, string, "hookgun");
#ifdef GAMEQC
/* model */ ATTRIB(Hook, m_model, Model, MDL_HOOK_ITEM);
#pragma once
+#include <common/colors.qh>
+
CLASS(MachineGun, Weapon)
/* spawnfunc */ ATTRIB(MachineGun, m_canonical_spawnfunc, string, "weapon_machinegun");
/* ammotype */ ATTRIB(MachineGun, ammo_type, Resource, RES_BULLETS);
/* impulse */ ATTRIB(MachineGun, impulse, int, 3);
/* flags */ ATTRIB(MachineGun, spawnflags, int, WEP_FLAG_NORMAL | WEP_FLAG_RELOADABLE | WEP_TYPE_HITSCAN | WEP_FLAG_PENETRATEWALLS | WEP_FLAG_BLEED);
/* rating */ ATTRIB(MachineGun, bot_pickupbasevalue, float, 7000);
-/* color */ ATTRIB(MachineGun, wpcolor, vector, '1 1 0');
+/* color */ ATTRIB(MachineGun, m_color, vector, COLOR_WEP_MACHINEGUN);
/* modelname */ ATTRIB(MachineGun, mdl, string, "uzi");
#ifdef GAMEQC
/* model */ ATTRIB(MachineGun, m_model, Model, MDL_MACHINEGUN_ITEM);
#pragma once
+#include <common/colors.qh>
+
CLASS(MineLayer, Weapon)
/* spawnfunc */ ATTRIB(MineLayer, m_canonical_spawnfunc, string, "weapon_minelayer");
/* ammotype */ ATTRIB(MineLayer, ammo_type, Resource, RES_ROCKETS);
/* impulse */ ATTRIB(MineLayer, impulse, int, 4);
/* flags */ ATTRIB(MineLayer, spawnflags, int, WEP_FLAG_MUTATORBLOCKED | WEP_FLAG_RELOADABLE | WEP_TYPE_SPLASH);
/* rating */ ATTRIB(MineLayer, bot_pickupbasevalue, float, 7000);
-/* color */ ATTRIB(MineLayer, wpcolor, vector, '0.75 1 0');
+/* color */ ATTRIB(MineLayer, m_color, vector, COLOR_WEP_MINELAYER);
/* modelname */ ATTRIB(MineLayer, mdl, string, "minelayer");
#ifdef GAMEQC
/* model */ ATTRIB(MineLayer, m_model, Model, MDL_MINELAYER_ITEM);
#pragma once
+#include <common/colors.qh>
+
CLASS(Mortar, Weapon)
/* spawnfunc */ ATTRIB(Mortar, m_canonical_spawnfunc, string, "weapon_mortar");
/* ammotype */ ATTRIB(Mortar, ammo_type, Resource, RES_ROCKETS);
/* impulse */ ATTRIB(Mortar, impulse, int, 4);
/* flags */ ATTRIB(Mortar, spawnflags, int, WEP_FLAG_NORMAL | WEP_FLAG_RELOADABLE | WEP_FLAG_CANCLIMB | WEP_TYPE_SPLASH | WEP_FLAG_NOTRUEAIM);
/* rating */ ATTRIB(Mortar, bot_pickupbasevalue, float, 7000);
-/* color */ ATTRIB(Mortar, wpcolor, vector, '1 0 0');
+/* color */ ATTRIB(Mortar, m_color, vector, COLOR_WEP_MORTAR);
/* modelname */ ATTRIB(Mortar, mdl, string, "gl");
#ifdef GAMEQC
/* model */ ATTRIB(Mortar, m_model, Model, MDL_MORTAR_ITEM);
#pragma once
+#include <common/colors.qh>
+
CLASS(PortoLaunch, Weapon)
/* spawnfunc */ ATTRIB(PortoLaunch, m_canonical_spawnfunc, string, "weapon_porto");
/* ammotype */ ATTRIB(PortoLaunch, ammo_type, Resource, RES_NONE);
/* impulse */ ATTRIB(PortoLaunch, impulse, int, 0);
/* flags */ ATTRIB(PortoLaunch, spawnflags, int, WEP_TYPE_OTHER | WEP_FLAG_SUPERWEAPON | WEP_FLAG_NODUAL | WEP_FLAG_NOTRUEAIM);
/* rating */ ATTRIB(PortoLaunch, bot_pickupbasevalue, float, 0);
-/* color */ ATTRIB(PortoLaunch, wpcolor, vector, '0.5 0.5 0.5');
+/* color */ ATTRIB(PortoLaunch, m_color, vector, COLOR_WEP_PORTO);
/* modelname */ ATTRIB(PortoLaunch, mdl, string, "porto");
#ifdef GAMEQC
/* model */ ATTRIB(PortoLaunch, m_model, Model, MDL_PORTO_ITEM);
#pragma once
+#include <common/colors.qh>
+
CLASS(Rifle, Weapon)
/* spawnfunc */ ATTRIB(Rifle, m_canonical_spawnfunc, string, "weapon_rifle");
/* ammotype */ ATTRIB(Rifle, ammo_type, Resource, RES_BULLETS);
/* impulse */ ATTRIB(Rifle, impulse, int, 7);
/* flags */ ATTRIB(Rifle, spawnflags, int, WEP_FLAG_MUTATORBLOCKED | WEP_FLAG_RELOADABLE | WEP_TYPE_HITSCAN | WEP_FLAG_PENETRATEWALLS);
/* rating */ ATTRIB(Rifle, bot_pickupbasevalue, float, 7000);
-/* color */ ATTRIB(Rifle, wpcolor, vector, '0.5 1 0');
+/* color */ ATTRIB(Rifle, m_color, vector, COLOR_WEP_RIFLE);
/* modelname */ ATTRIB(Rifle, mdl, string, "campingrifle");
#ifdef GAMEQC
/* model */ ATTRIB(Rifle, m_model, Model, MDL_RIFLE_ITEM);
#pragma once
+#include <common/colors.qh>
+
CLASS(Seeker, Weapon)
/* spawnfunc */ ATTRIB(Seeker, m_canonical_spawnfunc, string, "weapon_seeker");
/* ammotype */ ATTRIB(Seeker, ammo_type, Resource, RES_ROCKETS);
/* impulse */ ATTRIB(Seeker, impulse, int, 8);
/* flags */ ATTRIB(Seeker, spawnflags, int, WEP_FLAG_MUTATORBLOCKED | WEP_FLAG_RELOADABLE | WEP_TYPE_SPLASH);
/* rating */ ATTRIB(Seeker, bot_pickupbasevalue, float, 5000);
-/* color */ ATTRIB(Seeker, wpcolor, vector, '0.5 1 0');
+/* color */ ATTRIB(Seeker, m_color, vector, COLOR_WEP_SEEKER);
/* modelname */ ATTRIB(Seeker, mdl, string, "seeker");
#ifdef GAMEQC
/* model */ ATTRIB(Seeker, m_model, Model, MDL_SEEKER_ITEM);
#pragma once
+#include <common/colors.qh>
+
CLASS(Shockwave, Weapon)
/* spawnfunc */ ATTRIB(Shockwave, m_canonical_spawnfunc, string, "weapon_shockwave");
/* ammotype */ //ATTRIB(Shockwave, ammo_type, Resource, RES_NONE);
/* impulse */ ATTRIB(Shockwave, impulse, int, 2);
/* flags */ ATTRIB(Shockwave, spawnflags, int, WEP_FLAG_MUTATORBLOCKED | WEP_FLAG_HIDDEN | WEP_TYPE_HITSCAN | WEP_FLAG_CANCLIMB | WEP_TYPE_MELEE_SEC);
/* rating */ ATTRIB(Shockwave, bot_pickupbasevalue, float, 3000);
-/* color */ ATTRIB(Shockwave, wpcolor, vector, '0.5 0.25 0');
+/* color */ ATTRIB(Shockwave, m_color, vector, COLOR_WEP_SHOCKWAVE);
/* modelname */ ATTRIB(Shockwave, mdl, string, "shotgun");
#ifdef GAMEQC
/* model */ ATTRIB(Shockwave, m_model, Model, MDL_SHOCKWAVE_ITEM);
#pragma once
+#include <common/colors.qh>
+
CLASS(Shotgun, Weapon)
/* spawnfunc */ ATTRIB(Shotgun, m_canonical_spawnfunc, string, "weapon_shotgun");
/* ammotype */ ATTRIB(Shotgun, ammo_type, Resource, RES_SHELLS);
/* impulse */ ATTRIB(Shotgun, impulse, int, 2);
/* flags */ ATTRIB(Shotgun, spawnflags, int, WEP_FLAG_NORMAL | WEP_FLAG_RELOADABLE | WEP_TYPE_HITSCAN | WEP_TYPE_MELEE_SEC | WEP_FLAG_BLEED);
/* rating */ ATTRIB(Shotgun, bot_pickupbasevalue, float, 6000);
-/* color */ ATTRIB(Shotgun, wpcolor, vector, '0.5 0.25 0');
+/* color */ ATTRIB(Shotgun, m_color, vector, COLOR_WEP_SHOTGUN);
/* modelname */ ATTRIB(Shotgun, mdl, string, "shotgun");
#ifdef GAMEQC
/* model */ ATTRIB(Shotgun, m_model, Model, MDL_SHOTGUN_ITEM);
#pragma once
+#include <common/colors.qh>
+
CLASS(Tuba, Weapon)
/* spawnfunc */ ATTRIB(Tuba, m_canonical_spawnfunc, string, "weapon_tuba");
/* impulse */ ATTRIB(Tuba, impulse, int, 1);
/* flags */ ATTRIB(Tuba, spawnflags, int, WEP_FLAG_HIDDEN | WEP_TYPE_SPLASH | WEP_FLAG_NODUAL | WEP_FLAG_NOTRUEAIM);
/* rating */ ATTRIB(Tuba, bot_pickupbasevalue, float, 2000);
-/* color */ ATTRIB(Tuba, wpcolor, vector, '0 1 0');
+/* color */ ATTRIB(Tuba, m_color, vector, COLOR_WEP_TUBA);
/* modelname */ ATTRIB(Tuba, mdl, string, "tuba");
#ifdef GAMEQC
/* model */ ATTRIB(Tuba, m_model, Model, MDL_TUBA_ITEM);
#pragma once
+#include <common/colors.qh>
+
CLASS(Vaporizer, Weapon)
/* spawnfunc */ ATTRIB(Vaporizer, m_canonical_spawnfunc, string, "weapon_vaporizer");
/* ammotype */ ATTRIB(Vaporizer, ammo_type, Resource, RES_CELLS);
/* impulse */ ATTRIB(Vaporizer, impulse, int, 7);
/* flags */ ATTRIB(Vaporizer, spawnflags, int, WEP_FLAG_RELOADABLE | WEP_FLAG_CANCLIMB | WEP_FLAG_SUPERWEAPON | WEP_TYPE_HITSCAN | WEP_FLAG_NODUAL);
/* rating */ ATTRIB(Vaporizer, bot_pickupbasevalue, float, 10000);
-/* color */ ATTRIB(Vaporizer, wpcolor, vector, '0.5 1 1');
+/* color */ ATTRIB(Vaporizer, m_color, vector, COLOR_WEP_VAPORIZER);
/* modelname */ ATTRIB(Vaporizer, mdl, string, "minstanex");
#ifdef GAMEQC
/* model */ ATTRIB(Vaporizer, m_model, Model, MDL_VAPORIZER_ITEM);
#pragma once
+#include <common/colors.qh>
+
CLASS(Vortex, Weapon)
/* spawnfunc */ ATTRIB(Vortex, m_canonical_spawnfunc, string, "weapon_vortex");
/* ammotype */ ATTRIB(Vortex, ammo_type, Resource, RES_CELLS);
/* impulse */ ATTRIB(Vortex, impulse, int, 7);
/* flags */ ATTRIB(Vortex, spawnflags, int, WEP_FLAG_NORMAL | WEP_FLAG_RELOADABLE | WEP_TYPE_HITSCAN);
/* rating */ ATTRIB(Vortex, bot_pickupbasevalue, float, 8000);
-/* color */ ATTRIB(Vortex, wpcolor, vector, '0.5 1 1');
+/* color */ ATTRIB(Vortex, m_color, vector, COLOR_WEP_VORTEX);
/* modelname */ ATTRIB(Vortex, mdl, string, "nex");
#ifdef GAMEQC
/* model */ ATTRIB(Vortex, m_model, Model, MDL_VORTEX_ITEM);
this.pickup_anyway = true;
if(!this.owner)
- this.glowmod = wpn.wpcolor;
+ this.glowmod = wpn.m_color;
else
this.glowmod = colormapPaletteColor(this.owner.clientcolors & 0x0F, true);