1 string Buff_CompatName(string buffname)
5 case "ammoregen": return "ammo"; // Q3TA ammoregen
6 case "doubler": return "inferno"; // Q3TA doubler
7 case "scout": return "bash"; // Q3TA scout
8 case "guard": return "resistance"; // Q3TA guard
9 case "revival": case "regen": return "medic"; // WOP revival, Q3A regen
10 case "jumper": return "jump"; // WOP jumper
11 case "invulnerability": return "vampire"; // Q3TA invulnerability
12 case "kamikaze": return "vengeance"; // Q3TA kamikaze
13 case "teleporter": return "swapper"; // Q3A personal teleporter
14 default: return buffname;
19 ATTRIB(AmmoBuff, m_name, string, _("Ammo"));
20 ATTRIB(AmmoBuff, netname, string, "ammo");
21 ATTRIB(AmmoBuff, m_icon, string, "buff_ammo");
22 ATTRIB(AmmoBuff, m_skin, int, 3);
23 ATTRIB(AmmoBuff, m_color, vector, '0.76 1 0.1');
25 REGISTER_BUFF(AMMO, NEW(AmmoBuff));
26 BUFF_SPAWNFUNCS(ammo, BUFF_AMMO)
27 BUFF_SPAWNFUNC_Q3COMPAT(item_ammoregen, BUFF_AMMO)
29 CLASS(ResistanceBuff, Buff)
30 ATTRIB(ResistanceBuff, m_name, string, _("Resistance"));
31 ATTRIB(ResistanceBuff, netname, string, "resistance");
32 ATTRIB(ResistanceBuff, m_icon, string, "buff_resistance");
33 ATTRIB(ResistanceBuff, m_skin, int, 0);
34 ATTRIB(ResistanceBuff, m_color, vector, '0.36 1 0.07');
35 ENDCLASS(ResistanceBuff)
36 REGISTER_BUFF(RESISTANCE, NEW(ResistanceBuff));
37 BUFF_SPAWNFUNCS(resistance, BUFF_RESISTANCE)
38 BUFF_SPAWNFUNC_Q3COMPAT(item_guard, BUFF_RESISTANCE)
40 CLASS(MedicBuff, Buff)
41 ATTRIB(MedicBuff, m_name, string, _("Medic"));
42 ATTRIB(MedicBuff, netname, string, "medic");
43 ATTRIB(MedicBuff, m_icon, string, "buff_medic");
44 ATTRIB(MedicBuff, m_skin, int, 1);
45 ATTRIB(MedicBuff, m_color, vector, '1 0.12 0');
47 REGISTER_BUFF(MEDIC, NEW(MedicBuff));
48 BUFF_SPAWNFUNCS(medic, BUFF_MEDIC)
49 BUFF_SPAWNFUNC_Q3COMPAT(item_regen, BUFF_MEDIC)
50 BUFF_SPAWNFUNC_Q3COMPAT(item_revival, BUFF_MEDIC)
53 ATTRIB(BashBuff, m_name, string, _("Bash"));
54 ATTRIB(BashBuff, netname, string, "bash");
55 ATTRIB(BashBuff, m_icon, string, "buff_bash");
56 ATTRIB(BashBuff, m_skin, int, 5);
57 ATTRIB(BashBuff, m_color, vector, '1 0.39 0');
59 REGISTER_BUFF(BASH, NEW(BashBuff));
60 BUFF_SPAWNFUNCS(bash, BUFF_BASH)
61 BUFF_SPAWNFUNC_Q3COMPAT(item_scout, BUFF_BASH)
63 CLASS(VampireBuff, Buff)
64 ATTRIB(VampireBuff, m_name, string, _("Vampire"));
65 ATTRIB(VampireBuff, netname, string, "vampire");
66 ATTRIB(VampireBuff, m_icon, string, "buff_vampire");
67 ATTRIB(VampireBuff, m_skin, int, 2);
68 ATTRIB(VampireBuff, m_color, vector, '1 0 0.24');
70 REGISTER_BUFF(VAMPIRE, NEW(VampireBuff));
71 BUFF_SPAWNFUNCS(vampire, BUFF_VAMPIRE)
72 BUFF_SPAWNFUNC_Q3COMPAT(holdable_invulnerability, BUFF_VAMPIRE)
74 CLASS(DisabilityBuff, Buff)
75 ATTRIB(DisabilityBuff, m_name, string, _("Disability"));
76 ATTRIB(DisabilityBuff, netname, string, "disability");
77 ATTRIB(DisabilityBuff, m_icon, string, "buff_disability");
78 ATTRIB(DisabilityBuff, m_skin, int, 7);
79 ATTRIB(DisabilityBuff, m_color, vector, '0.94 0.3 1');
80 ENDCLASS(DisabilityBuff)
81 REGISTER_BUFF(DISABILITY, NEW(DisabilityBuff));
82 BUFF_SPAWNFUNCS(disability, BUFF_DISABILITY)
84 CLASS(VengeanceBuff, Buff)
85 ATTRIB(VengeanceBuff, m_name, string, _("Vengeance"));
86 ATTRIB(VengeanceBuff, netname, string, "vengeance");
87 ATTRIB(VengeanceBuff, m_icon, string, "buff_vengeance");
88 ATTRIB(VengeanceBuff, m_skin, int, 15);
89 ATTRIB(VengeanceBuff, m_color, vector, '1 0.23 0.61');
90 ENDCLASS(VengeanceBuff)
91 REGISTER_BUFF(VENGEANCE, NEW(VengeanceBuff));
92 BUFF_SPAWNFUNCS(vengeance, BUFF_VENGEANCE)
93 BUFF_SPAWNFUNC_Q3COMPAT(holdable_kamikaze, BUFF_VENGEANCE)
96 ATTRIB(JumpBuff, m_name, string, _("Jump"));
97 ATTRIB(JumpBuff, netname, string, "jump");
98 ATTRIB(JumpBuff, m_icon, string, "buff_jump");
99 ATTRIB(JumpBuff, m_skin, int, 10);
100 ATTRIB(JumpBuff, m_color, vector, '0.24 0.78 1');
102 REGISTER_BUFF(JUMP, NEW(JumpBuff));
103 BUFF_SPAWNFUNCS(jump, BUFF_JUMP)
104 BUFF_SPAWNFUNC_Q3COMPAT(item_jumper, BUFF_JUMP)
106 CLASS(InfernoBuff, Buff)
107 ATTRIB(InfernoBuff, m_name, string, _("Inferno"));
108 ATTRIB(InfernoBuff, netname, string, "inferno");
109 ATTRIB(InfernoBuff, m_icon, string, "buff_inferno");
110 ATTRIB(InfernoBuff, m_skin, int, 16);
111 ATTRIB(InfernoBuff, m_color, vector, '1 0.62 0');
112 ENDCLASS(InfernoBuff)
113 REGISTER_BUFF(INFERNO, NEW(InfernoBuff));
114 BUFF_SPAWNFUNCS(inferno, BUFF_INFERNO)
115 BUFF_SPAWNFUNC_Q3COMPAT(item_doubler, BUFF_INFERNO)
117 CLASS(SwapperBuff, Buff)
118 ATTRIB(SwapperBuff, m_name, string, _("Swapper"));
119 ATTRIB(SwapperBuff, netname, string, "swapper");
120 ATTRIB(SwapperBuff, m_icon, string, "buff_swapper");
121 ATTRIB(SwapperBuff, m_skin, int, 17);
122 ATTRIB(SwapperBuff, m_color, vector, '0.63 0.36 1');
123 ENDCLASS(SwapperBuff)
124 REGISTER_BUFF(SWAPPER, NEW(SwapperBuff));
125 BUFF_SPAWNFUNCS(swapper, BUFF_SWAPPER)
126 BUFF_SPAWNFUNC_Q3COMPAT(holdable_teleporter, BUFF_SWAPPER)
128 CLASS(MagnetBuff, Buff)
129 ATTRIB(MagnetBuff, m_name, string, _("Magnet"));
130 ATTRIB(MagnetBuff, netname, string, "magnet");
131 ATTRIB(MagnetBuff, m_icon, string, "buff_magnet");
132 ATTRIB(MagnetBuff, m_skin, int, 18);
133 ATTRIB(MagnetBuff, m_color, vector, '1 0.95 0.18');
135 REGISTER_BUFF(MAGNET, NEW(MagnetBuff));
136 BUFF_SPAWNFUNCS(magnet, BUFF_MAGNET)
138 CLASS(LuckBuff, Buff)
139 ATTRIB(LuckBuff, m_name, string, _("Luck"));
140 ATTRIB(LuckBuff, netname, string, "luck");
141 ATTRIB(LuckBuff, m_icon, string, "buff_luck");
142 ATTRIB(LuckBuff, m_skin, int, 19);
143 ATTRIB(LuckBuff, m_color, vector, '1 0.23 0.44');
145 REGISTER_BUFF(LUCK, NEW(LuckBuff));
146 BUFF_SPAWNFUNCS(luck, BUFF_LUCK)
148 CLASS(FlightBuff, Buff)
149 ATTRIB(FlightBuff, m_name, string, _("Flight"));
150 ATTRIB(FlightBuff, netname, string, "flight");
151 ATTRIB(FlightBuff, m_icon, string, "buff_flight");
152 ATTRIB(FlightBuff, m_skin, int, 11);
153 ATTRIB(FlightBuff, m_color, vector, '0.23 0.44 1');
155 REGISTER_BUFF(FLIGHT, NEW(FlightBuff));
156 BUFF_SPAWNFUNCS(flight, BUFF_FLIGHT)
157 BUFF_SPAWNFUNC_Q3COMPAT(item_flight, BUFF_FLIGHT)