From ca89acb27b5bd9697f1ac287b1506ef79b2da20b Mon Sep 17 00:00:00 2001 From: Lyberta Date: Wed, 12 Apr 2017 07:36:53 +0300 Subject: [PATCH] Added GivePlayerAmmo functions. --- qcsrc/common/t_items.qc | 24 ++++++++++++++++++++++++ qcsrc/common/t_items.qh | 25 +++++++++++++++++++++++++ 2 files changed, 49 insertions(+) diff --git a/qcsrc/common/t_items.qc b/qcsrc/common/t_items.qc index 3151d7cdb..3298e7fb0 100644 --- a/qcsrc/common/t_items.qc +++ b/qcsrc/common/t_items.qc @@ -641,6 +641,30 @@ void Item_ScheduleInitialRespawn(entity e) Item_ScheduleRespawnIn(e, max(0, game_starttime - time) + ((e.respawntimestart) ? e.respawntimestart : ITEM_RESPAWNTIME_INITIAL(e))); } +void GivePlayerShells(entity player, float amount) +{ + player.ammo_shells = bound(player.ammo_shells, player.ammo_shells + amount, + g_pickup_shells_max); +} + +void GivePlayerBullets(entity player, float amount) +{ + player.ammo_nails = bound(player.ammo_nails, player.ammo_nails + amount, + g_pickup_nails_max); +} + +void GivePlayerRockets(entity player, float amount) +{ + player.ammo_rockets = bound(player.ammo_rockets, player.ammo_rockets + + amount, g_pickup_rockets_max); +} + +void GivePlayerCells(entity player, float amount) +{ + player.ammo_cells = bound(player.ammo_cells, player.ammo_cells + amount, + g_pickup_cells_max); +} + float Item_GiveAmmoTo(entity item, entity player, .float ammotype, float ammomax, float mode) { if (!item.(ammotype)) diff --git a/qcsrc/common/t_items.qh b/qcsrc/common/t_items.qh index 1b2293bcf..ca03b8a04 100644 --- a/qcsrc/common/t_items.qh +++ b/qcsrc/common/t_items.qh @@ -81,6 +81,31 @@ void Item_ScheduleRespawnIn(entity e, float t); void Item_ScheduleRespawn(entity e); void Item_ScheduleInitialRespawn(entity e); + +/// \brief Gives player shells. +/// \param[in,out] player Player to give shells to. +/// \param[in] amount Amount of shells to give. +/// \return No return. +void GivePlayerShells(entity player, float amount); + +/// \brief Gives player bullets. +/// \param[in,out] player Player to give bullets to. +/// \param[in] amount Amount of bullets to give. +/// \return No return. +void GivePlayerBullets(entity player, float amount); + +/// \brief Gives player rockets. +/// \param[in,out] player Player to give rockets to. +/// \param[in] amount Amount of rockets to give. +/// \return No return. +void GivePlayerRockets(entity player, float amount); + +/// \brief Gives player cells. +/// \param[in,out] player Player to give cells to. +/// \param[in] amount Amount of cells to give. +/// \return No return. +void GivePlayerCells(entity player, float amount); + float ITEM_MODE_NONE = 0; float ITEM_MODE_HEALTH = 1; float ITEM_MODE_ARMOR = 2; -- 2.39.2