X-Git-Url: http://de.git.xonotic.org/?p=xonotic%2Fxonotic-data.pk3dir.git;a=blobdiff_plain;f=qcsrc%2Fcommon%2Ft_items.qh;h=af7d91758dd4afd0bbbfa69fc8fc155433f71609;hp=1b2293bcff0651d442032c328d7a0455783adb3b;hb=e98ed192eac2c7983d5395418f3e9396024fa9ba;hpb=3ee342eac91e8a0cc50f5e7517bb4c4d640a4774 diff --git a/qcsrc/common/t_items.qh b/qcsrc/common/t_items.qh index 1b2293bcff..af7d91758d 100644 --- a/qcsrc/common/t_items.qh +++ b/qcsrc/common/t_items.qh @@ -1,5 +1,12 @@ #pragma once +#ifdef SVQC +#include +#endif + +/// \brief Unconditional maximum amount of items the player can have. +const int ITEM_COUNT_HARD_LIMIT = 999; + const int AMMO_COUNT = 4; // amount of ammo types to show in the inventory panel // item networking @@ -81,11 +88,54 @@ void Item_ScheduleRespawnIn(entity e, float t); void Item_ScheduleRespawn(entity e); void Item_ScheduleInitialRespawn(entity e); -float ITEM_MODE_NONE = 0; -float ITEM_MODE_HEALTH = 1; -float ITEM_MODE_ARMOR = 2; -float ITEM_MODE_FUEL = 3; -float Item_GiveAmmoTo(entity item, entity player, .float ammotype, float ammomax, float mode); + +/// \brief Gives player a resource such as health, armor or ammo. +/// \param[in,out] player Player to give resource to. +/// \param[in] resource_type Type of the resource. +/// \param[in] amount Amount of resource to give. +/// \return No return. +void GivePlayerResource(entity player, .float resource_type, float amount); + +/// \brief Gives health to the player. +/// \param[in,out] player Player to give health to. +/// \param[in] amount Amount of health to give. +/// \return No return. +void GivePlayerHealth(entity player, float amount); + +/// \brief Gives armor to the player. +/// \param[in,out] player Player to give armor to. +/// \param[in] amount Amount of armor to give. +/// \return No return. +void GivePlayerArmor(entity player, float amount); + +/// \brief Gives ammo of the specified type to the player. +/// \param[in,out] player Player to give ammo to. +/// \param[in] type Ammo type property. +/// \param[in] amount Amount of ammo to give. +/// \return No return. +void GivePlayerAmmo(entity player, .float ammotype, float amount); + +/// \brief Gives fuel to the player. +/// \param[in,out] player Player to give fuel to. +/// \param[in] amount Amount of fuel to give. +/// \return No return. +void GivePlayerFuel(entity player, float amount); + +/// \brief Give several random weapons and ammo to the player. +/// \param[in,out] player Player to give weapons to. +/// \param[in] num_weapons Number of weapons to give. +/// \param[in] weapon_names Names of weapons to give separated by spaces. +/// \param[in] shells Amount of shells to give with shell-based weapon. +/// \param[in] bullets Amount of bullets to give with bullet-based weapon. +/// \param[in] rockets Amount of rockets to give with rocket-based weapon. +/// \param[in] cells Amount of cells to give with cell-based weapon. +/// \param[in] cells Amount of plasma to give with plasma-based weapon. +/// \return No return. +void GivePlayerRandomWeapons(entity player, int num_weapons, + string weapon_names, float shells, float bullets, float rockets, + float cells, float plasma); + +float Item_GiveAmmoTo(entity item, entity player, .float ammotype, float ammomax); float Item_GiveTo(entity item, entity player);