]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/common/items/item/health.qh
Remove some unnecessary item bits, increase maximum items to 32 now that the item...
[xonotic/xonotic-data.pk3dir.git] / qcsrc / common / items / item / health.qh
index 3332429dca40bc2aba72ebf658d34c1d5ed9828e..869c1838f625de62245f9e769fcbccbfd2b4966a 100644 (file)
@@ -18,80 +18,156 @@ ENDCLASS(Health)
 MODEL(HealthSmall_ITEM, Item_Model("g_h1.md3"));
 SOUND(HealthSmall, Item_Sound("minihealth"));
 #endif
+#ifdef SVQC
+PROPERTY(float, g_pickup_healthsmall_anyway);
+PROPERTY(int, g_pickup_healthsmall);
+PROPERTY(int, g_pickup_healthsmall_max);
+void item_healthsmall_init(Pickup this, entity item)
+{
+    if(!item.max_health)
+        item.max_health = g_pickup_healthsmall_max;
+    if(!GetResource(item, RES_HEALTH))
+        SetResourceExplicit(item, RES_HEALTH, g_pickup_healthsmall);
+}
+#endif
 
 REGISTER_ITEM(HealthSmall, Health) {
+    this.m_canonical_spawnfunc = "item_health_small";
 #ifdef GAMEQC
+       this.spawnflags = ITEM_FLAG_NORMAL | ITEM_FLAG_RESOURCE;
     this.m_model                =   MDL_HealthSmall_ITEM;
     this.m_sound                =   SND_HealthSmall;
 #endif
-    this.m_name                 =   "5 Health";
+    this.netname                =   "health_small";
+    this.m_name                 =   _("Small health");
     this.m_icon                 =   "health";
 #ifdef SVQC
-    this.m_itemid               =   IT_5HP;
+    this.m_itemid               =   IT_RESOURCE;
     this.m_respawntime          =   GET(g_pickup_respawntime_short);
     this.m_respawntimejitter    =   GET(g_pickup_respawntimejitter_short);
+    this.m_pickupanyway         =   GET(g_pickup_healthsmall_anyway);
+    this.m_iteminit             =   item_healthsmall_init;
 #endif
 }
 
+SPAWNFUNC_ITEM(item_health_small, ITEM_HealthSmall)
+
 #ifdef GAMEQC
 MODEL(HealthMedium_ITEM, Item_Model("g_h25.md3"));
 SOUND(HealthMedium, Item_Sound("mediumhealth"));
 #endif
+#ifdef SVQC
+PROPERTY(float, g_pickup_healthmedium_anyway);
+PROPERTY(int, g_pickup_healthmedium);
+PROPERTY(int, g_pickup_healthmedium_max);
+void item_healthmedium_init(Pickup this, entity item)
+{
+    if(!item.max_health)
+        item.max_health = g_pickup_healthmedium_max;
+    if(!GetResource(item, RES_HEALTH))
+        SetResourceExplicit(item, RES_HEALTH, g_pickup_healthmedium);
+}
+#endif
 
 REGISTER_ITEM(HealthMedium, Health) {
+    this.m_canonical_spawnfunc = "item_health_medium";
 #ifdef GAMEQC
+       this.spawnflags = ITEM_FLAG_NORMAL | ITEM_FLAG_RESOURCE;
     this.m_model                =   MDL_HealthMedium_ITEM;
     this.m_sound                =   SND_HealthMedium;
 #endif
-    this.m_name                 =   "25 Health";
+    this.netname                =   "health_medium";
+    this.m_name                 =   _("Medium health");
     this.m_icon                 =   "health";
 #ifdef SVQC
-    this.m_itemid               =   IT_25HP;
+    this.m_itemid               =   IT_RESOURCE;
     this.m_respawntime          =   GET(g_pickup_respawntime_short);
     this.m_respawntimejitter    =   GET(g_pickup_respawntimejitter_short);
+    this.m_pickupanyway         =   GET(g_pickup_healthmedium_anyway);
+    this.m_iteminit             =   item_healthmedium_init;
 #endif
 }
 
+SPAWNFUNC_ITEM(item_health_medium, ITEM_HealthMedium)
+
 #ifdef GAMEQC
 MODEL(HealthBig_ITEM, Item_Model("g_h50.md3"));
 SOUND(HealthBig, Item_Sound("mediumhealth"));
 #endif
+#ifdef SVQC
+PROPERTY(float, g_pickup_healthbig_anyway);
+PROPERTY(int, g_pickup_healthbig);
+PROPERTY(int, g_pickup_healthbig_max);
+void item_healthbig_init(Pickup this, entity item)
+{
+    if(!item.max_health)
+        item.max_health = g_pickup_healthbig_max;
+    if(!GetResource(item, RES_HEALTH))
+        SetResourceExplicit(item, RES_HEALTH, g_pickup_healthbig);
+}
+#endif
 
 REGISTER_ITEM(HealthBig, Health) {
+    this.m_canonical_spawnfunc = "item_health_big";
 #ifdef GAMEQC
+       this.spawnflags = ITEM_FLAG_NORMAL | ITEM_FLAG_RESOURCE;
     this.m_model                =   MDL_HealthBig_ITEM;
     this.m_sound                =   SND_HealthBig;
 #endif
-    this.m_name                 =   "50 Health";
+    this.netname                =   "health_big";
+    this.m_name                 =   _("Big health");
     this.m_icon                 =   "health";
     this.m_color                =   '1 0 0';
     this.m_waypoint             =   _("Big health");
 #ifdef SVQC
-    this.m_itemid               =   IT_25HP;
+    this.m_itemid               =   IT_RESOURCE;
     this.m_respawntime          =   GET(g_pickup_respawntime_medium);
     this.m_respawntimejitter    =   GET(g_pickup_respawntimejitter_medium);
+    this.m_pickupanyway         =   GET(g_pickup_healthbig_anyway);
+    this.m_iteminit             =   item_healthbig_init;
 #endif
 }
 
+SPAWNFUNC_ITEM(item_health_big, ITEM_HealthBig)
+
 #ifdef GAMEQC
 MODEL(HealthMega_ITEM, Item_Model("g_h100.md3"));
 SOUND(HealthMega, Item_Sound("megahealth"));
 #endif
+#ifdef SVQC
+PROPERTY(float, g_pickup_healthmega_anyway);
+PROPERTY(int, g_pickup_healthmega);
+PROPERTY(int, g_pickup_healthmega_max);
+void item_healthmega_init(Pickup this, entity item)
+{
+    if(!item.max_health)
+        item.max_health = g_pickup_healthmega_max;
+    if(!GetResource(item, RES_HEALTH))
+        SetResourceExplicit(item, RES_HEALTH, g_pickup_healthmega);
+}
+#endif
 
 REGISTER_ITEM(HealthMega, Health) {
+    this.m_canonical_spawnfunc = "item_health_mega";
 #ifdef GAMEQC
+    this.spawnflags = ITEM_FLAG_NORMAL | ITEM_FLAG_RESOURCE;
     this.m_model                =   MDL_HealthMega_ITEM;
     this.m_sound                =   SND_HealthMega;
 #endif
-    this.m_name                 =   "100 Health";
+    this.netname                =   "health_mega";
+    this.m_name                 =   _("Mega health");
     this.m_icon                 =   "item_mega_health";
     this.m_color                =   '1 0 0';
     this.m_waypoint             =   _("Mega health");
     this.m_waypointblink        =   2;
 #ifdef SVQC
     this.m_maxs                 =   '16 16 70';
-    this.m_itemid               =   IT_HEALTH;
+    this.m_itemid               =   IT_RESOURCE;
     this.m_respawntime          =   GET(g_pickup_respawntime_long);
     this.m_respawntimejitter    =   GET(g_pickup_respawntimejitter_long);
+    this.m_pickupanyway         =   GET(g_pickup_healthmega_anyway);
+    this.m_iteminit             =   item_healthmega_init;
 #endif
 }
+
+SPAWNFUNC_ITEM(item_health_mega, ITEM_HealthMega)