]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/common/items/item/armor.qh
Merge branch 'master' into terencehill/bot_AI_improvements
[xonotic/xonotic-data.pk3dir.git] / qcsrc / common / items / item / armor.qh
index adb93e7c94eb8010c2ca8de8da34e6da1e7b7f2f..bc2aa654451d9129b20602a82c6211dce7a05c23 100644 (file)
-#ifndef ARMOR_H
-#define ARMOR_H
+#pragma once
+
 #include "pickup.qh"
 CLASS(Armor, Pickup)
 #ifdef SVQC
-    ATTRIB(Armor, m_mins, vector, '-16 -16 0')
-    ATTRIB(Armor, m_maxs, vector, '16 16 48')
-    ATTRIB(Armor, m_pickupevalfunc, float(entity player, entity item), commodity_pickupevalfunc)
+    ATTRIB(Armor, m_mins, vector, '-16 -16 0');
+    ATTRIB(Armor, m_maxs, vector, '16 16 48');
+    ATTRIB(Armor, m_pickupevalfunc, float(entity player, entity item), healtharmor_pickupevalfunc);
+    ATTRIB(Armor, m_botvalue, int, 5000);
 #endif
 ENDCLASS(Armor)
+
+#ifdef SVQC
+    #include <common/t_items.qh>
+#endif
+
+#ifdef GAMEQC
+MODEL(ArmorSmall_ITEM, Item_Model("item_armor_small.md3"));
+SOUND(ArmorSmall, Item_Sound("armor1"));
+#endif
+#ifdef SVQC
+PROPERTY(float, g_pickup_armorsmall_anyway);
+#endif
+
+REGISTER_ITEM(ArmorSmall, Armor) {
+#ifdef GAMEQC
+    this.m_model                =   MDL_ArmorSmall_ITEM;
+    this.m_sound                =   SND_ArmorSmall;
+#endif
+    this.m_name                 =   "5 Armor";
+    this.m_icon                 =   "armor";
+#ifdef SVQC
+    this.m_itemid               =   IT_ARMOR_SHARD;
+    this.m_respawntime          =   GET(g_pickup_respawntime_short);
+    this.m_respawntimejitter    =   GET(g_pickup_respawntimejitter_short);
+    this.m_pickupanyway         =   GET(g_pickup_armorsmall_anyway);
+#endif
+}
+
+#ifdef GAMEQC
+MODEL(ArmorMedium_ITEM, Item_Model("item_armor_medium.md3"));
+SOUND(ArmorMedium, Item_Sound("armor10"));
+#endif
+#ifdef SVQC
+PROPERTY(float, g_pickup_armormedium_anyway);
+#endif
+
+REGISTER_ITEM(ArmorMedium, Armor) {
+#ifdef GAMEQC
+    this.m_model                =   MDL_ArmorMedium_ITEM;
+    this.m_sound                =   SND_ArmorMedium;
+#endif
+    this.m_name                 =   "25 Armor";
+    this.m_icon                 =   "armor";
+#ifdef SVQC
+    this.m_itemid               =   IT_ARMOR;
+    this.m_respawntime          =   GET(g_pickup_respawntime_medium);
+    this.m_respawntimejitter    =   GET(g_pickup_respawntimejitter_medium);
+    this.m_pickupanyway         =   GET(g_pickup_armormedium_anyway);
+#endif
+}
+
+#ifdef GAMEQC
+MODEL(ArmorBig_ITEM, Item_Model("item_armor_big.md3"));
+SOUND(ArmorBig, Item_Sound("armor17_5"));
+#endif
+#ifdef SVQC
+PROPERTY(float, g_pickup_armorbig_anyway);
+#endif
+
+REGISTER_ITEM(ArmorBig, Armor) {
+#ifdef GAMEQC
+    this.m_model                =   MDL_ArmorBig_ITEM;
+    this.m_sound                =   SND_ArmorBig;
+#endif
+    this.m_name                 =   "50 Armor";
+    this.m_icon                 =   "armor";
+    this.m_color                =   '0 1 0';
+    this.m_waypoint             =   _("Big armor");
+#ifdef SVQC
+    this.m_itemid               =   IT_ARMOR;
+    this.m_respawntime          =   GET(g_pickup_respawntime_long);
+    this.m_respawntimejitter    =   GET(g_pickup_respawntimejitter_long);
+    this.m_pickupanyway         =   GET(g_pickup_armorbig_anyway);
+#endif
+}
+
+#ifdef GAMEQC
+MODEL(ArmorMega_ITEM, Item_Model("item_armor_large.md3"));
+SOUND(ArmorMega, Item_Sound("armor25"));
+#endif
+#ifdef SVQC
+PROPERTY(float, g_pickup_armormega_anyway);
+#endif
+
+REGISTER_ITEM(ArmorMega, Armor) {
+#ifdef GAMEQC
+    this.m_model                =   MDL_ArmorMega_ITEM;
+    this.m_sound                =   SND_ArmorMega;
+#endif
+    this.m_name                 =   "100 Armor";
+    this.m_icon                 =   "item_large_armor";
+    this.m_color                =   '0 1 0';
+    this.m_waypoint             =   _("Mega armor");
+    this.m_waypointblink        =   2;
+#ifdef SVQC
+    this.m_maxs                 =   '16 16 70';
+    this.m_itemid               =   IT_ARMOR;
+    this.m_respawntime          =   GET(g_pickup_respawntime_long);
+    this.m_respawntimejitter    =   GET(g_pickup_respawntimejitter_long);
+    this.m_pickupanyway         =   GET(g_pickup_armormega_anyway);
 #endif
+}