Иконка ресурса

[VIP] Weapon Discounts 2.1

GARAYEV

𝓗𝓔𝓘𝓢𝓔𝓝𝓑𝓔𝓡𝓖
Сообщения
264
Реакции
372
  • Автор ресурса
  • #1
GARAYEV добавил(а) новый ресурс:

Weapon Discounts - Позволяет VIP игрокам покупать оружия со скидкой.

Давольно простой плагин, который позволяет VIP игрокам покупать оружия со скидкой. Цена в меню оружий не меняется, только после покупки у игрока снимается цена со скидкой.

Параметр в groups.ini

Параметр:
"WeaponDiscount" "значение"

Пример: "WeaponDiscount" "0.2" //0.2 = 20% скидка

Узнать больше об этом ресурсе...
 

Paranoiiik

хачю клиентмод
Сообщения
2,047
Реакции
1,490
Предлагаю добавить конфиг, в котором можно было бы указать скидку для отдельно взятого оружия.
Можно даже дальше пойти. Параметр сделать с двумя значениями: 1 - указывать скидку в процентах (0.2 = 20%), 2 - указывать конкретную стоимость (550 = за покупку снимется $550)
 

GARAYEV

𝓗𝓔𝓘𝓢𝓔𝓝𝓑𝓔𝓡𝓖
Сообщения
264
Реакции
372
  • Автор ресурса
  • #3
GARAYEV обновил(а) ресурс [VIP] Weapon Discounts новой записью:

Переходим на версию 2.0

Спасибо @Paranoiiik за идею и @Muinez, с его помощью я убрал говнокод.

Сейчас можно установить разные скидки на каждое оружие или же можно сразу поменять цену оружия указывая конкретную цену. Подробно на первом посте

Узнать больше об этом обновлении...
 

Ganter1234

Участник
Сообщения
1,149
Реакции
667
А он сможет читать конфиг если в скрипте прописано //?
1632056065506.png
 

GARAYEV

𝓗𝓔𝓘𝓢𝓔𝓝𝓑𝓔𝓡𝓖
Сообщения
264
Реакции
372
  • Автор ресурса
  • #5

xyligan

Паркетный пол трещит под моей крышкой черепной
Сообщения
900
Реакции
432
Отличная идея, респект :D
 

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • #7
@GARAYEV
C++:
 if (KV.GotoFirstSubKey(true))
        {
            do
            {
                KV.GetSectionName(sbuf, sizeof sbuf);
                iPrice = KV.GetNum("price");
                fDiscount = KV.GetFloat("discount");
           
                if(!strcmp(weapon, sbuf))
                {

это немножко бред. зачем проходить циклом если можно сделать сразу if (KV.JumpToKey(weapon))

C++:
if(iPrice > 0)
                    {
                        price = iPrice;
                    }

                    if(fDiscount > 0)
                    {
                        price = RoundToFloor(price * (1.0 - fDiscount));
                    }

тут мне кажется лучше через else делать. потому что не логично изменять цену, а потом применять к ней скидку


еще стоит подумать чтобы для группы просто указать скидку на всё в обход конфига.
 

GARAYEV

𝓗𝓔𝓘𝓢𝓔𝓝𝓑𝓔𝓡𝓖
Сообщения
264
Реакции
372
  • Автор ресурса
  • #8
@GARAYEV
C++:
 if (KV.GotoFirstSubKey(true))
        {
            do
            {
                KV.GetSectionName(sbuf, sizeof sbuf);
                iPrice = KV.GetNum("price");
                fDiscount = KV.GetFloat("discount");
         
                if(!strcmp(weapon, sbuf))
                {

это немножко бред. зачем проходить циклом если можно сделать сразу if (KV.JumpToKey(weapon))
Просто уже так привык использовать

C++:
if(iPrice > 0)
                    {
                        price = iPrice;
                    }

                    if(fDiscount > 0)
                    {
                        price = RoundToFloor(price * (1.0 - fDiscount));
                    }

тут мне кажется лучше через else делать. потому что не логично изменять цену, а потом применять к ней скидку
А тут предусмотрено что напишут только одно из значений в секцию
 
  • Попкорн
Реакции: R1KO

Сергей68

Неуместный юмор
Сообщения
420
Реакции
377
@GARAYEV, если я правильно понял, то sbuf получает в себя название оружия weapon_ зачем выделять 128 ячеек. Когда самое длинное название у weapon_m4a1_silencer имеет 20 символов, с запасом можно указать 32. Э-экономия.
C-подобный:
SetFailState("Suka - Файл конфигураций не найден");
тут походу опечатка вышла небольшая.
 

GARAYEV

𝓗𝓔𝓘𝓢𝓔𝓝𝓑𝓔𝓡𝓖
Сообщения
264
Реакции
372
  • Автор ресурса
  • #10

Сергей68

Неуместный юмор
Сообщения
420
Реакции
377
@Ganter1234, Вообще по идеи так,
C-подобный:
SetFailState("%s - Файл конфигураций не найден", szPath);
🤫
 

Сергей68

Неуместный юмор
Сообщения
420
Реакции
377
@GARAYEV, ну это не совсем правильно, лучше писать полный путь чтобы пользователю было понятнее в чем проблема нежели просто имя плагина и что конкретно не хватает - 🤷🏻‍♂️
 

kylc

Не мир плох, плохи люди, обвиняющие во всем мир
Сообщения
924
Реакции
294
@GARAYEV а почему бы не добавить возможность сделать скидку разом на все оружия (например, в самом groups.ini или в конфиге одной переменной)?
 

GARAYEV

𝓗𝓔𝓘𝓢𝓔𝓝𝓑𝓔𝓡𝓖
Сообщения
264
Реакции
372
  • Автор ресурса
  • #16
@GARAYEV а почему бы не добавить возможность сделать скидку разом на все оружия (например, в самом groups.ini или в конфиге одной переменной)?
скачивайте отсюда версию 1.0, там это возможно. просто добавляешь WeaponDiscount в groups.ini со значением скидки. Например: "WeaponDiscount" "0.2"
1636609496803.png
 

j1ton

Участник
Сообщения
69
Реакции
5
При покупке оружия оно не остается на руках, его выбрасывает на землю.
 

Tavian

Участник
Сообщения
1,184
Реакции
119
скачивайте отсюда версию 1.0, там это возможно. просто добавляешь WeaponDiscount в groups.ini со значением скидки. Например: "WeaponDiscount" "0.2"
Скидка действует нормально, но при нажатии автопокупки F1, имея 800 бачей он покупает полный армор и калаш.
 
Сверху Снизу