3 #include "../inventory.qh"
5 CLASS(Pickup, GameItem)
7 ATTRIB(Pickup, m_model, Model, NULL)
8 ATTRIB(Pickup, m_sound, Sound, SND_ITEMPICKUP)
10 ATTRIB(Pickup, m_name, string, string_null)
11 METHOD(Pickup, show, void(Pickup this)) { LOG_INFOF("%s: %s\n", etos(this), this.m_name); }
13 ATTRIB(Pickup, m_mins, vector, '-16 -16 0')
14 ATTRIB(Pickup, m_maxs, vector, '16 16 32')
15 ATTRIB(Pickup, m_botvalue, int, 0)
16 ATTRIB(Pickup, m_itemflags, int, 0)
17 ATTRIB(Pickup, m_itemid, int, 0)
18 float generic_pickupevalfunc(entity player, entity item);
19 ATTRIB(Pickup, m_pickupevalfunc, float(entity player, entity item), generic_pickupevalfunc)
20 ATTRIB(Pickup, m_respawntime, float(), func_null)
21 ATTRIB(Pickup, m_respawntimejitter, float(), func_null)
22 float Item_GiveTo(entity item, entity player);
23 METHOD(Pickup, giveTo, bool(Pickup this, entity item, entity player))
25 bool b = Item_GiveTo(item, player);
27 LOG_TRACEF("entity %i picked up %s\n", player, this.m_name);
28 player.inventory.inv_items[this.m_id]++;
29 Inventory_update(player);
33 bool ITEM_HANDLE(Pickup, Pickup this, entity item, entity player);