From 9eb4399b175fb5ebdb5d2262c2ab7e99dc9bd220 Mon Sep 17 00:00:00 2001 From: rubin Date: Fri, 28 Nov 2025 12:57:05 +0300 Subject: [PATCH] fixed bugs & bump version --- changelog | 5 +++- mafia-tools.lua | 72 +++++++++++++++++++++++++------------------------ version | 2 +- 3 files changed, 42 insertions(+), 37 deletions(-) diff --git a/changelog b/changelog index d6b3f67..9bc3b87 100644 --- a/changelog +++ b/changelog @@ -37,4 +37,7 @@ Версия от 20.07.2023 Добавлена поддержка сервера Underground Версия от 05.07.2025 - Фикс флуда перегона \ No newline at end of file + Фикс флуда перегона +Версия от 28.11.2025 + Фикс не выключался флуд перегона + Фикс не сохранялись после релога armoff id \ No newline at end of file diff --git a/mafia-tools.lua b/mafia-tools.lua index bb6dc60..bc44c6d 100644 --- a/mafia-tools.lua +++ b/mafia-tools.lua @@ -1,6 +1,6 @@ script_name('mafia-tools') script_author("Serhiy_Rubin") -script_version("05.07.2025") +script_version("28.11.2025") sampev = require 'samp.events' inicfg = require "inicfg" @@ -1078,43 +1078,45 @@ end mhcars = {} mhcars.time = 0 mhcars.onServerMessage = function(color, message) - if message == " Вы не являетесь лидером/замом мафии" or - message == " Ожидайте принятия задания" or - message == " Задание уже начато" or - message:find("Перегон был инициирован мафией ") then - mhcars.time = os.time() + 1800 - end - if message == " Задание по перегону машин завершено" then - mhcars.time = 0 - end - if message:find("^ Задание будет доступно через: ") then - local p1, p2, p3 = string.match(message, "Задание будет доступно через: (%d+):(%d+):(%d+)") - if(p3 == nil)then - p1, p2 = string.match(message, "Задание будет доступно через: (%d+):(%d+)") - end - if(p1 ~= nil and p2 ~= nil)then - local mhTimer = 0 - if(p3 ~= nil)then - mhTimer = tonumber(p1) * 3600 - mhTimer = mhTimer + (tonumber(p2) * 60) - mhTimer = mhTimer + tonumber(p3) - else - mhTimer = mhTimer + (tonumber(p1) * 60) - mhTimer = mhTimer + tonumber(p2) + if config.data.mhcars.auto then + if message == " Вы не являетесь лидером/замом мафии" or + message == " Ожидайте принятия задания" or + message == " Задание уже начато" or + message:find("Перегон был инициирован мафией ") then + mhcars.time = os.time() + 1800 + end + if message == " Задание по перегону машин завершено" then + mhcars.time = 0 + end + if message:find("^ Задание будет доступно через: ") then + local p1, p2, p3 = string.match(message, "Задание будет доступно через: (%d+):(%d+):(%d+)") + if(p3 == nil)then + p1, p2 = string.match(message, "Задание будет доступно через: (%d+):(%d+)") end - mhcars.time = os.time() + mhTimer - config.data.mhcars.offset_wait - request.send[#request.send + 1] = { - key = "mhcars", - second = mhTimer - } - request.wait = 0 - end - end --> by Richard_Holmes + if(p1 ~= nil and p2 ~= nil)then + local mhTimer = 0 + if(p3 ~= nil)then + mhTimer = tonumber(p1) * 3600 + mhTimer = mhTimer + (tonumber(p2) * 60) + mhTimer = mhTimer + tonumber(p3) + else + mhTimer = mhTimer + (tonumber(p1) * 60) + mhTimer = mhTimer + tonumber(p2) + end + mhcars.time = os.time() + mhTimer - config.data.mhcars.offset_wait + request.send[#request.send + 1] = { + key = "mhcars", + second = mhTimer + } + request.wait = 0 + end + end --> by Richard_Holmes + end end mhcars.loop = function() while true do wait(0) - if sampIsLocalPlayerSpawned() and isPlayerInMafia() and config.data.stats.rank >= 9 then + if sampIsLocalPlayerSpawned() and isPlayerInMafia() and config.data.mhcars.auto and config.data.stats.rank >= 9 then if mhcars.time == 0 then if mhcars.antiflood == nil or os.time() - mhcars.antiflood > 1 then mhcars.antiflood = os.time() @@ -1936,11 +1938,11 @@ config.init = function() config.save(config.default) end config.read() - for k,v in pairs(config.default) do + for k,v in pairs(config.default) doА if config.data[k] == nil then config.data[k] = v end - if type(v) == "table" then + if type(v) == "table" and k ~= "armoff" then for kk,vv in pairs(v) do if config.data[k][kk] == nil then config.data[k][kk] = vv diff --git a/version b/version index 3996ced..233ae2a 100644 --- a/version +++ b/version @@ -1 +1 @@ -05.07.2025 \ No newline at end of file +28.11.2025 \ No newline at end of file