3 #include <common/items/_mod.qh>
4 #include <common/items/item/ammo.qh>
5 #include <common/items/item/powerup.qh>
7 float instagib_respawntime_ammo = 45;
8 float instagib_respawntimejitter_ammo = 0;
9 GETTER(float, instagib_respawntime_ammo)
10 GETTER(float, instagib_respawntimejitter_ammo)
13 MODEL(VaporizerCells_ITEM, Item_Model("a_cells.md3"));
14 SOUND(VaporizerCells, Item_Sound("itempickup"));
18 int autocvar_g_instagib_ammo_drop;
19 void ammo_vaporizercells_init(entity item)
22 item.ammo_cells = autocvar_g_instagib_ammo_drop;
25 REGISTER_ITEM(VaporizerCells, Ammo) {
26 this.m_canonical_spawnfunc = "item_vaporizer_cells";
27 this.spawnflags = ITEM_FLAG_MUTATORBLOCKED;
29 this.m_model = MDL_VaporizerCells_ITEM;
30 this.m_sound = SND_VaporizerCells;
32 this.netname = "vaporizer_cells";
33 this.m_name = "Vaporizer Ammo";
34 this.m_icon = "ammo_supercells";
36 this.m_botvalue = 2000;
37 this.m_itemid = IT_CELLS;
38 this.m_respawntime = GET(instagib_respawntime_ammo);
39 this.m_respawntimejitter = GET(instagib_respawntimejitter_ammo);
40 this.m_iteminit = ammo_vaporizercells_init;
44 SPAWNFUNC_ITEM(item_vaporizer_cells, ITEM_VaporizerCells)
45 SPAWNFUNC_ITEM(item_minst_cells, ITEM_VaporizerCells)
48 MODEL(ExtraLife_ITEM, Item_Model("g_h100.md3"));
49 SOUND(ExtraLife, Item_Sound("megahealth"));
52 REGISTER_ITEM(ExtraLife, Powerup) {
53 this.m_canonical_spawnfunc = "item_extralife";
55 this.m_model = MDL_ExtraLife_ITEM;
56 this.m_sound = SND_ExtraLife;
58 this.netname = "extralife";
59 this.m_name = "Extra life";
60 this.m_icon = "item_mega_health";
61 this.m_color = '1 0 0';
62 this.m_waypoint = _("Extra life");
63 this.m_waypointblink = 2;
64 this.m_itemid = IT_NAILS;
67 SPAWNFUNC_ITEM(item_extralife, ITEM_ExtraLife)
70 MODEL(Invisibility_ITEM, Item_Model("g_strength.md3"));
71 SOUND(Invisibility, Item_Sound("powerup"));
75 /// \brief Initializes the invisibility powerup.
76 /// \param[in,out] item Item to initialize.
77 /// \return No return.
78 void powerup_invisibility_init(entity item);
81 REGISTER_ITEM(Invisibility, Powerup) {
82 this.m_canonical_spawnfunc = "item_invisibility";
84 this.m_model = MDL_Invisibility_ITEM;
85 this.m_sound = SND_Invisibility;
87 this.m_respawnsound = SND_STRENGTH_RESPAWN;
89 this.netname = "invisibility";
90 this.m_name = "Invisibility";
91 this.m_icon = "strength";
92 this.m_color = '0 0 1';
93 this.m_waypoint = _("Invisibility");
94 this.m_waypointblink = 2;
95 this.m_itemid = IT_STRENGTH;
97 this.m_iteminit = powerup_invisibility_init;
101 SPAWNFUNC_ITEM(item_invisibility, ITEM_Invisibility)
104 MODEL(Speed_ITEM, Item_Model("g_invincible.md3"));
105 SOUND(Speed, Item_Sound("powerup_shield"));
109 /// \brief Initializes the speed powerup.
110 /// \param[in,out] item Item to initialize.
111 /// \return No return.
112 void powerup_speed_init(entity item);
115 REGISTER_ITEM(Speed, Powerup) {
116 this.m_canonical_spawnfunc = "item_speed";
118 this.m_model = MDL_Speed_ITEM;
119 this.m_sound = SND_Speed;
121 this.m_respawnsound = SND_SHIELD_RESPAWN;
123 this.netname = "speed";
124 this.m_name = "Speed";
125 this.m_icon = "shield";
126 this.m_color = '1 0 1';
127 this.m_waypoint = _("Speed");
128 this.m_waypointblink = 2;
129 this.m_itemid = IT_INVINCIBLE;
131 this.m_iteminit = powerup_speed_init;
135 SPAWNFUNC_ITEM(item_speed, ITEM_Speed)