Закуп потронов через с меню

Как закупать потроны через с меню

Покопайся в слитых сборках серверов, наверняка должно быть :man_shrugging:

А так то, через хук:
OnContextMenuOpen - создаешь кнопку покупки патрон
OnContextMenuClose - ремуваешь кнопку

На сервере нет, в котором проверяешь наличие бабла у игрока и в случае чего накидываешь патрон на оружие со списанием долляров. Покупка патрон готова! :+1:

Надеюсь найдутся не ленивые люди, которые дропнут сразу все готовое, останется только вставить :slight_smile:

Бесполезный комментарий.

В своем контекстном меню дублируешь функцию (обычно это выглядит как { func = function … )
и вставляешь туда

RunConsoleCommand(‘buyammo’)

готово

UPD.
Если же ты не понимаешь, что от тебя требуется сделать, то скинь сюда луа файл своего контекстного меню.

Минутку

тгьукш.rar (8.3 КБ)

Ну что?

Оригинал этого кода был где-то тут на форуме

Закинуть в garrysmod\addons\gmdonate\lua\autorun\server\buyammo_cmd.lua

local PricePerBullet = 50 -- цена за один патрон

concommand.Add("buyammo", function(ply) -- консольная-команда, вы можете добавить кнопку в cmenu/f4 для быстрого использования
    local swep = ply:GetActiveWeapon()
    if not IsValid(swep) then return end

    local count = swep:GetMaxClip1()
    local price = count * PricePerBullet
    if price < 1 or not ply:canAfford(price) then return end

    ply:addMoney(-price)
    ply:GiveAmmo(count, game.GetAmmoName(swep:GetPrimaryAmmoType()))
end)

Думаю кнопку добавить в “C” меню сможешь сам

Спасибо

Держи
187-205 строчки кода - покупка патронов
иконку сам подберешь

sh_config_default.lua (9.4 КБ)