Помогите сделать так, что бы скрипт предупреждал один раз

histor

Известный
Автор темы
175
111
Приветствую пользователей Blast Hack!
Прошу помочь разобраться со скриптом.
Суть в том что когда у авто остаётся менее 500 ХП скрипт должен об этом предупредить, а он флудит надписью предупреждения
Вот код:
Вот моя неудачная попытка написать простой код:
script_name('car_hp')
script_author('ALex Histor')



local key = 51
local main_text = "{FFFF00}[{1E90FF}Histor Scripts{FFFF00}] : "
local fOnscpt = false

function main()
    while not isSampAvailable() do wait(0) end
        sampRegisterChatCommand("hpcar", cmd_hpcar)
        sampAddChatMessage(main_text.."{FFFF00}Скрипт активен!{6A5ACD}Автор {FFFF00}Alex Histor, {6A5ACD}при поддержке {FFFF00}Conor Guretto")
        sampAddChatMessage(main_text.."{6A5ACD}Команда {FFFF00}/hpcar")
    while true do
        wait(0)
        if isCharInAnyCar(PLAYER_PED) and wasKeyPressed(key) and fOnscpt then
            sampAddChatMessage(main_text..'{6A5ACD}HP вашего транспортного средства - {FFFF00}' .. getCarHealth(storeCarCharIsInNoSave(PLAYER_PED)), -1)
        elseif not isCharInAnyCar(PLAYER_PED) and fOnscpt and wasKeyPressed(key) then
            sampAddChatMessage(main_text..'{6A5ACD}Вы не находитесь в транспортном средстве!', -1)
        elseif isCharInAnyCar(PLAYER_PED) and fOnscpt and ifCarHP and getCarHealth(storeCarCharIsInNoSave(PLAYER_PED)) < 500 then
            sampAddChatMessage(main_text.."{FF0000}У вашего транспортного средства менее 500 ХП!")
        end
    end
end

function cmd_hpcar(arg)

    if arg == "" then
        sampAddChatMessage(main_text.."{6A5ACD}Выберите состояние скрипта!")
        sampAddChatMessage(main_text.."{FFFF00}hpcar {00FF00}on{FFFF00} - Включить скрипт")
        sampAddChatMessage(main_text.."{FFFF00}hpcar {FF0000}off{FFF000} - Выключить скрипт")
    elseif arg == "on" then
        sampAddChatMessage(main_text.."{00FF00}Вы включили скрипт!")
        fOnscpt = true;
       
    elseif arg == "off" then
        sampAddChatMessage(main_text.."{FF0000}Вы выключили скрипт!")
        fOnscpt = false;
    else
    end
end
 
Решение
попробуй
.:
script_name('car_hp')
script_name('car_hp')
script_author('ALex Histor')



local key = 51
local main_text = "{FFFF00}[{1E90FF}Histor Scripts{FFFF00}] : "
local fOnscpt = false

function main()
    while not isSampAvailable() do wait(0) end
        sampRegisterChatCommand("hpcar", cmd_hpcar)
        sampAddChatMessage(main_text.."{FFFF00}Скрипт активен!{6A5ACD}Автор {FFFF00}Alex Histor, {6A5ACD}при поддержке {FFFF00}Conor Guretto")
        sampAddChatMessage(main_text.."{6A5ACD}Команда {FFFF00}/hpcar")
    while true do
        wait(0)
        if isCharInAnyCar(PLAYER_PED) and wasKeyPressed(key) and fOnscpt then
            sampAddChatMessage(main_text..'{6A5ACD}HP вашего транспортного средства - {FFFF00}' ...

dsay

Известный
142
125
попробуй
.:
script_name('car_hp')
script_name('car_hp')
script_author('ALex Histor')



local key = 51
local main_text = "{FFFF00}[{1E90FF}Histor Scripts{FFFF00}] : "
local fOnscpt = false

function main()
    while not isSampAvailable() do wait(0) end
        sampRegisterChatCommand("hpcar", cmd_hpcar)
        sampAddChatMessage(main_text.."{FFFF00}Скрипт активен!{6A5ACD}Автор {FFFF00}Alex Histor, {6A5ACD}при поддержке {FFFF00}Conor Guretto")
        sampAddChatMessage(main_text.."{6A5ACD}Команда {FFFF00}/hpcar")
    while true do
        wait(0)
        if isCharInAnyCar(PLAYER_PED) and wasKeyPressed(key) and fOnscpt then
            sampAddChatMessage(main_text..'{6A5ACD}HP вашего транспортного средства - {FFFF00}' .. getCarHealth(storeCarCharIsInNoSave(PLAYER_PED)), -1)
        elseif not isCharInAnyCar(PLAYER_PED) and fOnscpt and wasKeyPressed(key) then
            sampAddChatMessage(main_text..'{6A5ACD}Вы не находитесь в транспортном средстве!', -1)
        end
    end
    while true do
        wait(10000)
        if isCharInAnyCar(PLAYER_PED) and fOnscpt and ifCarHP and getCarHealth(storeCarCharIsInNoSave(PLAYER_PED)) < 500 then
            sampAddChatMessage(main_text.."{FF0000}У вашего транспортного средства менее 500 ХП!")
        end
    end
end

function cmd_hpcar(arg)

    if arg == "" then
        sampAddChatMessage(main_text.."{6A5ACD}Выберите состояние скрипта!")
        sampAddChatMessage(main_text.."{FFFF00}hpcar {00FF00}on{FFFF00} - Включить скрипт")
        sampAddChatMessage(main_text.."{FFFF00}hpcar {FF0000}off{FFF000} - Выключить скрипт")
    elseif arg == "on" then
        sampAddChatMessage(main_text.."{00FF00}Вы включили скрипт!")
        fOnscpt = true;
     
    elseif arg == "off" then
        sampAddChatMessage(main_text.."{FF0000}Вы выключили скрипт!")
        fOnscpt = false;
    else
    end
end
так же можешь при каждом изменении здровья машины
.:
script_name('car_hp')
script_name('car_hp')
script_author('ALex Histor')

local x, x1 = 0, 0

local key = 51
local main_text = "{FFFF00}[{1E90FF}Histor Scripts{FFFF00}] : "
local fOnscpt = false

function main()
    while not isSampAvailable() do wait(0) end
        sampRegisterChatCommand("hpcar", cmd_hpcar)
        sampAddChatMessage(main_text.."{FFFF00}Скрипт активен!{6A5ACD}Автор {FFFF00}Alex Histor, {6A5ACD}при поддержке {FFFF00}Conor Guretto")
        sampAddChatMessage(main_text.."{6A5ACD}Команда {FFFF00}/hpcar")
    while true do
        wait(0)
        if isCharInAnyCar(PLAYER_PED) and wasKeyPressed(key) and fOnscpt then
            sampAddChatMessage(main_text..'{6A5ACD}HP вашего транспортного средства - {FFFF00}' .. getCarHealth(storeCarCharIsInNoSave(PLAYER_PED)), -1)
        elseif not isCharInAnyCar(PLAYER_PED) and fOnscpt and wasKeyPressed(key) then
            sampAddChatMessage(main_text..'{6A5ACD}Вы не находитесь в транспортном средстве!', -1)
        elseif isCharInAnyCar(PLAYER_PED) and fOnscpt and ifCarHP and getCarHealth(storeCarCharIsInNoSave(PLAYER_PED)) < 500 then
            local x = getCarHealth(storeCarCharIsInNoSave(PLAYER_PED))
            if x == x1 then
                x = x1
            else
                sampAddChatMessage(main_text.."{FF0000}У вашего транспортного средства менее 500 ХП!")
                x1 = x
            end
        end
    end
end



function cmd_hpcar(arg)

    if arg == "" then
        sampAddChatMessage(main_text.."{6A5ACD}Выберите состояние скрипта!")
        sampAddChatMessage(main_text.."{FFFF00}hpcar {00FF00}on{FFFF00} - Включить скрипт")
        sampAddChatMessage(main_text.."{FFFF00}hpcar {FF0000}off{FFF000} - Выключить скрипт")
    elseif arg == "on" then
        sampAddChatMessage(main_text.."{00FF00}Вы включили скрипт!")
        fOnscpt = true;
      
    elseif arg == "off" then
        sampAddChatMessage(main_text.."{FF0000}Вы выключили скрипт!")
        fOnscpt = false;
    else
    end
end
 
Последнее редактирование:

T1cKz

Известный
596
245
При изменении хп у кара если будет меньше 500
Lua:
local isEnable = false
local lastCarHealth = 1000

function main ()
sampRegisterChatCommand("hpcar", function () isEnable = not isEnable printString("HpCar: "..tostring(isEnable), 1000) end
while true do wait(0)
if isEnable and isCharInAnyCar(playerPed) then
local nowHealth = getCarHealth(storeCarCharIsInNoSave(PLAYER_PED))
if nowHealth ~= lastCarHealth then lastCarHealth = nowHealth
if lastCarHealth <= 500 then sampAddChatMessage("hp <500", -1)
 end
end
end
end
end