[CS: GO] Переделка модулей для Личного кабинета v2 от 1mpulse

sPonso™

Участник
Сообщения
167
Реакции
48
Необходимы 3 модуля для ЛК импульса второй версии. О сроках выполнения договариваемся с исполнителем лично. Цена может варьироваться в бОльшую сторону за быструю реализацию. Если в ТЗ непонятны некоторые моменты, то объясню подробнее что требуется через дискорд. О передаче модулей буду договариваться с Impulse, либо приобрету отдельно доступ, чтобы не было факта нарушения при "передаче" ресурса.
Тикет на дев-сурсе: 4369

Связь со мной:
vk.com/my_little_sponso
Discord: sPonso™#4301
Цена за все модули: 2200р. Перевод на киви, юмани или карту.

(Личный Кабинет - Discord Notifications) и само ядро (в нём тоже используется дискорд уведомление.
При любых изменениях с балансом игрока необходимо добавить в текущее уведомление ещё пункт, какой на текущий момент баланс у игрока. Если было пополнение баланса - чтобы писало сколько денег стало на балансе после пополнения. Если снятие - сколько после снятия денег. Если купил функцию - сколько денег осталось на балансе после покупки.

В данный момент в модуле продажи вип доступа от рико (Личный Кабинет - Продажа VIP доступа [VIP wS & VIP R1KO]) доступна лишь покупка одной привилегии и её продление. Чтобы перейти на привилегию выше у игрока должна кончиться привилегия или необходимо удалить её полностью через модуль.

Мне требуется реализовать систему доплаты через этот модуль. Распишу сначала вводные данные, чтобы проще ориентироваться было.
Есть 3 вида привилегии (назовём их group1, group2, group3) и 4 вида срока покупки:
group1
7 дней - 40р
30 дней -100р
90 дней - 200р
Навсегда - 900

group2
7 дней - 80р
30 дней -200р
90 дней - 400р
Навсегда - 1000

Покупка на время:
Игрок приобрёл group1 на 30 дней, отыграл 6 дней 11 часов и у него осталось 24 дня 13 часов до окончания привилегии. Он решил приобрести group2 на 30 дней за 200р, высчитываем сумму необходимую для доплаты по количеству полных дней (необходимо рассчитать цену одного дня у привилегии group1, умножить на количество полных дней оставшихся и эту сумму отнять от цены привилегии group2 на 30 дней.
То есть получается
200 минус (3.34 умножить на 24) = 119.84
(group2 30 дней) минус (цена одного дня group1 умножить на количество оставшихся дней) = 119.84 (округлить в бОльшую сторону до 120 рублей)

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

Покупка навсегда:
Тут вижу лишь несколько вариантов реализации.
1. У игрока привилегия group1 на время и хочет привилегию group1 навсегда - для доплаты используется полностью цена привилегии group1 навсегда (900р)
2. У игрока привилегия group1 навсегда и хочет привилегию group2 навсегда - для доплаты используется разница в цене между привилегией group2 и group1 (100р)
3. У игрока привилегия group2 и хочет привилегию group1 - запрет на покупку, так как привилегия выше по статусу.
4. У игрока привилегия group1 навсегда и хочет привилегию group1 или group2 или group3 на время - запрет на покупку, так как привилегия навсегда.

(Личный Кабинет - Покупка / Продление Админ-Доступа [MA])
У меня используется общая база Material admin под разные сервера. Разграничение админов, чтобы не был доступ на все сервера идёт с помощью ServerID в базе данных MA и конфиг файле указываю нужный ServerID.
Мне необходимо переделать этот модуль в то, как реализована покупка привилегий через GameCMS. В нём возможна покупка привилегий на разные сервера и создаётся каждый раз новая запись пользователя в БД МА с прописанными нужными серверами, временем окончания, рандомным паролем и почтой.

В текущей реализации у импульса покупка идёт на ID тех серверов, которые указал в конфиге, в БД МА создаётся пользователь без пароля/почты и других данных. После этого если зайти на другой сервер где нету админ-прав и попытаться приобрести админ-привилегию, то возможно 2 случая:
- если указать ту же админ-привилегию в серверной группе, но попытаться приобрести её на другой сервер - тебе продлит эту на тех серверах, где ранее покупал.
- если указать другую админ привилегию в серверной группе, но попытаться приобрести на другой сервер - пишет запрет о покупке с фразой "Вы уже админ на одном из серверов."
Оба эти варианта мне не подходят, поэтому необходима реализация как сделана в GameCMS.
 
Сверху Снизу