6 ATTRIB(Health, m_pickupevalfunc, float(entity player, entity item), healtharmor_pickupevalfunc);
7 ATTRIB(Health, m_botvalue, int, 5000);
12 #include <server/items/items.qh>
16 MODEL(HealthSmall_ITEM, Item_Model("g_h1.md3"));
17 SOUND(HealthSmall, Item_Sound("minihealth"));
20 PROPERTY(float, g_pickup_healthsmall_anyway);
21 PROPERTY(int, g_pickup_healthsmall);
22 PROPERTY(int, g_pickup_healthsmall_max);
23 void item_healthsmall_init(Pickup this, entity item)
26 item.max_health = g_pickup_healthsmall_max;
27 if(!GetResource(item, RES_HEALTH))
28 SetResourceExplicit(item, RES_HEALTH, q3compat && item.count ? item.count : g_pickup_healthsmall);
32 REGISTER_ITEM(HealthSmall, Health) {
33 this.m_canonical_spawnfunc = "item_health_small";
35 this.spawnflags = ITEM_FLAG_NORMAL | ITEM_FLAG_RESOURCE;
36 this.m_model = MDL_HealthSmall_ITEM;
37 this.m_sound = SND_HealthSmall;
39 this.netname = "health_small";
40 this.m_name = _("Small health");
41 this.m_icon = "health_small";
43 if(precache_pic(strcat("gfx/hud/luma/", this.m_icon)) == "")
44 this.m_icon = "health"; // compatible with Xonotic v0.8.2 or lower
47 this.m_mins = ITEM_S_MINS;
48 this.m_maxs = ITEM_S_MAXS;
49 this.m_itemid = IT_RESOURCE;
50 this.m_respawntime = GET(g_pickup_respawntime_health_small);
51 this.m_respawntimejitter = GET(g_pickup_respawntimejitter_health_small);
52 this.m_pickupanyway = GET(g_pickup_healthsmall_anyway);
53 this.m_iteminit = item_healthsmall_init;
58 SPAWNFUNC_ITEM(item_health_small, ITEM_HealthSmall)
61 MODEL(HealthMedium_ITEM, Item_Model("g_h25.md3"));
62 SOUND(HealthMedium, Item_Sound("mediumhealth"));
65 PROPERTY(float, g_pickup_healthmedium_anyway);
66 PROPERTY(int, g_pickup_healthmedium);
67 PROPERTY(int, g_pickup_healthmedium_max);
68 void item_healthmedium_init(Pickup this, entity item)
71 item.max_health = g_pickup_healthmedium_max;
72 if(!GetResource(item, RES_HEALTH))
73 SetResourceExplicit(item, RES_HEALTH, q3compat && item.count ? item.count : g_pickup_healthmedium);
77 REGISTER_ITEM(HealthMedium, Health) {
78 this.m_canonical_spawnfunc = "item_health_medium";
80 this.spawnflags = ITEM_FLAG_NORMAL | ITEM_FLAG_RESOURCE;
81 this.m_model = MDL_HealthMedium_ITEM;
82 this.m_sound = SND_HealthMedium;
84 this.netname = "health_medium";
85 this.m_name = _("Medium health");
86 this.m_icon = "health_medium";
88 if(precache_pic(strcat("gfx/hud/luma/", this.m_icon)) == "")
89 this.m_icon = "health"; // compatible with Xonotic v0.8.2 or lower
92 this.m_mins = ITEM_S_MINS;
93 this.m_maxs = ITEM_S_MAXS;
94 this.m_itemid = IT_RESOURCE;
95 this.m_respawntime = GET(g_pickup_respawntime_health_medium);
96 this.m_respawntimejitter = GET(g_pickup_respawntimejitter_health_medium);
97 this.m_pickupanyway = GET(g_pickup_healthmedium_anyway);
98 this.m_iteminit = item_healthmedium_init;
102 SPAWNFUNC_ITEM(item_health_medium, ITEM_HealthMedium)
105 MODEL(HealthBig_ITEM, Item_Model("g_h50.md3"));
106 SOUND(HealthBig, Item_Sound("mediumhealth"));
109 PROPERTY(float, g_pickup_healthbig_anyway);
110 PROPERTY(int, g_pickup_healthbig);
111 PROPERTY(int, g_pickup_healthbig_max);
112 void item_healthbig_init(Pickup this, entity item)
115 item.max_health = g_pickup_healthbig_max;
116 if(!GetResource(item, RES_HEALTH))
117 SetResourceExplicit(item, RES_HEALTH, q3compat && item.count ? item.count : g_pickup_healthbig);
121 REGISTER_ITEM(HealthBig, Health) {
122 this.m_canonical_spawnfunc = "item_health_big";
124 this.spawnflags = ITEM_FLAG_NORMAL | ITEM_FLAG_RESOURCE;
125 this.m_model = MDL_HealthBig_ITEM;
126 this.m_sound = SND_HealthBig;
128 this.netname = "health_big";
129 this.m_name = _("Big health");
130 this.m_icon = "health_big";
131 this.m_color = '1 0 0';
132 this.m_waypoint = _("Big health");
134 if(precache_pic(strcat("gfx/hud/luma/", this.m_icon)) == "")
135 this.m_icon = "health"; // compatible with Xonotic v0.8.2 or lower
138 this.m_itemid = IT_RESOURCE;
139 this.m_respawntime = GET(g_pickup_respawntime_health_big);
140 this.m_respawntimejitter = GET(g_pickup_respawntimejitter_health_big);
141 this.m_pickupanyway = GET(g_pickup_healthbig_anyway);
142 this.m_iteminit = item_healthbig_init;
146 SPAWNFUNC_ITEM(item_health_big, ITEM_HealthBig)
149 MODEL(HealthMega_ITEM, Item_Model("g_h100.md3"));
150 SOUND(HealthMega, Item_Sound("megahealth"));
153 PROPERTY(float, g_pickup_healthmega_anyway);
154 PROPERTY(int, g_pickup_healthmega);
155 PROPERTY(int, g_pickup_healthmega_max);
156 void item_healthmega_init(Pickup this, entity item)
159 item.max_health = g_pickup_healthmega_max;
160 if(!GetResource(item, RES_HEALTH))
161 SetResourceExplicit(item, RES_HEALTH, q3compat && item.count ? item.count : g_pickup_healthmega);
165 REGISTER_ITEM(HealthMega, Health) {
166 this.m_canonical_spawnfunc = "item_health_mega";
168 this.spawnflags = ITEM_FLAG_NORMAL | ITEM_FLAG_RESOURCE;
169 this.m_model = MDL_HealthMega_ITEM;
170 this.m_sound = SND_HealthMega;
172 this.netname = "health_mega";
173 this.m_name = _("Mega health");
174 this.m_icon = "health_mega";
176 if(precache_pic(strcat("gfx/hud/luma/", this.m_icon)) == "")
177 this.m_icon = "item_mega_health"; // compatible with Xonotic v0.8.2 or lower
179 this.m_color = '1 0 0';
180 this.m_waypoint = _("Mega health");
181 this.m_waypointblink = 2;
183 this.m_maxs = ITEM_L_MAXS;
184 this.m_itemid = IT_RESOURCE;
185 this.m_respawntime = GET(g_pickup_respawntime_health_mega);
186 this.m_respawntimejitter = GET(g_pickup_respawntimejitter_health_mega);
187 this.m_pickupanyway = GET(g_pickup_healthmega_anyway);
188 this.m_iteminit = item_healthmega_init;
192 SPAWNFUNC_ITEM(item_health_mega, ITEM_HealthMega)