Как убрать слетевшие дома

poofe

Известный
Автор темы
896
239
Версия MoonLoader
.026-beta
Помогите убрать эти дома, я пробывал одну фичу но оно мне не по
1595537205947.png
могла кто знает как убрать?
 
Решение
Помогите убрать эти дома, я пробывал одну фичу но оно мне не поПосмотреть вложение 63234могла кто знает как убрать?
Будут ошибки - пиши
Lua:
local samp = require "samp.events"
function samp.onShowDialog(id,s,t,b1,b2,text)
    if id == 228 then -- замени на нужный тебе id диалога
    local list = {}
        for i=0, sampGetListboxItemsCount(text) do
            local listtext = sampGetListboxItemText(text, i)
            if listtext:find('Слетел') then else
                list[#list+1] = listtext
            end
        end
        local text = ''
        for _,v in pairs(list) do
            text = text..'\n'..v
        end
        return {id,s,t,b1,b2,text}
    end
end
function sampGetListboxItemText(str, item)
    local num_ = 0
    for str...

Dmitriy Makarov

25.05.2021
Проверенный
2,484
1,114
Какие "Эти"? слетевшие?
[ID}: id[Слетел]
Помогите убрать эти дома, я пробывал одну фичу но оно мне не по
Не знаю.. return false вряд ли тут поможет, можно, как вариант, сделать поиск текста и заменить этот текст на пустоту, но тут другой вопрос: "Изменится ли размер диалога, точнее, станет ли он меньше, если так сделать или размеры останутся и просто будет пустое место?"🤔
 

CaJlaT

Овощ
Модератор
2,807
2,617
Помогите убрать эти дома, я пробывал одну фичу но оно мне не поПосмотреть вложение 63234могла кто знает как убрать?
Будут ошибки - пиши
Lua:
local samp = require "samp.events"
function samp.onShowDialog(id,s,t,b1,b2,text)
    if id == 228 then -- замени на нужный тебе id диалога
    local list = {}
        for i=0, sampGetListboxItemsCount(text) do
            local listtext = sampGetListboxItemText(text, i)
            if listtext:find('Слетел') then else
                list[#list+1] = listtext
            end
        end
        local text = ''
        for _,v in pairs(list) do
            text = text..'\n'..v
        end
        return {id,s,t,b1,b2,text}
    end
end
function sampGetListboxItemText(str, item)
    local num_ = 0
    for str in string.gmatch(str, "[^\r\n]+") do
        if item == num_ then return str end
        num_ = num_ + 1
    end
    return false
end
function sampGetListboxItemsCount(text)
    local i = 0
    for _ in text:gmatch(".-\n") do
        i = i + 1
    end
    return i
end
 
  • Нравится
Реакции: ГОХА | GoxaShow

poofe

Известный
Автор темы
896
239
Будут ошибки - пиши
Lua:
local samp = require "samp.events"
function samp.onShowDialog(id,s,t,b1,b2,text)
    if id == 228 then -- замени на нужный тебе id диалога
    local list = {}
        for i=0, sampGetListboxItemsCount(text) do
            local listtext = sampGetListboxItemText(text, i)
            if listtext:find('Слетел') then else
                list[#list+1] = listtext
            end
        end
        local text = ''
        for _,v in pairs(list) do
            text = text..'\n'..v
        end
        return {id,s,t,b1,b2,text}
    end
end
function sampGetListboxItemText(str, item)
    local num_ = 0
    for str in string.gmatch(str, "[^\r\n]+") do
        if item == num_ then return str end
        num_ = num_ + 1
    end
    return false
end
function sampGetListboxItemsCount(text)
    local i = 0
    for _ in text:gmatch(".-\n") do
        i = i + 1
    end
    return i
end
я сделал нихера, дом 1100 не убрался
 

ГОХА | GoxaShow

В АРМИИ С 12.12,ЗАКАЗЫ НЕ ДЕЛАЮ,ТУПЫЕ ВОПРОСЫ-НАХУ
Проверенный
1,872
1,869

CaJlaT

Овощ
Модератор
2,807
2,617
да, там баг отображения на аризоне
мой скрипт возьми, там просто допишешь
Ну тогда только если чекать по паттерну, но мне нужна строчка с этим домом, чтобы сделать паттерн
 

ГОХА | GoxaShow

В АРМИИ С 12.12,ЗАКАЗЫ НЕ ДЕЛАЮ,ТУПЫЕ ВОПРОСЫ-НАХУ
Проверенный
1,872
1,869
Ну тогда только если чекать по паттерну, но мне нужна строчка с этим домом, чтобы сделать паттерн
мне в лс форума отпиши, я прийду, скину
а так внатуре чекни мой скрипт, там примерный паттерн есть
 

CaJlaT

Овощ
Модератор
2,807
2,617
мне в лс форума отпиши, я прийду, скину
а так внатуре чекни мой скрипт, там примерный паттерн есть
я сделал нихера, дом 1100 не убрался
Lua:
local samp = require "samp.events"
function samp.onShowDialog(id,s,t,b1,b2,text)
    if id == 0 and text:find('Дом') and text:find('Слет') then
        local list = ''
        for i=0, sampGetListboxItemsCount(text) -1 do
            local listtext = sampGetListboxItemText(text, i)
            if not listtext:find('Слетел') and not listtext:find('ID: %{C9B931%}1087%{FFFFFF%} %[') then
                list = list..'\n'..listtext
            end
        end
        sampShowDialog(id, t, list, b1, b2, s)
        sampSetDialogClientside(false)
        return false
    end
end
function sampGetListboxItemText(str, item)
    local num_ = 0
    for str in string.gmatch(str, "[^\r\n]+") do
        if item == num_ then return str end
        num_ = num_ + 1
    end
    return false
end
function sampGetListboxItemsCount(text)
    local i = 0
    for _ in text:gmatch(".-\n") do
        i = i + 1
    end
    return i
end
sa-mp-927.png
 
  • Нравится
Реакции: ГОХА | GoxaShow

ГОХА | GoxaShow

В АРМИИ С 12.12,ЗАКАЗЫ НЕ ДЕЛАЮ,ТУПЫЕ ВОПРОСЫ-НАХУ
Проверенный
1,872
1,869
Lua:
local samp = require "samp.events"
function samp.onShowDialog(id,s,t,b1,b2,text)
    if id == 0 and text:find('Дом') and text:find('Слет') then
        local list = ''
        for i=0, sampGetListboxItemsCount(text) -1 do
            local listtext = sampGetListboxItemText(text, i)
            if not listtext:find('Слетел') and not listtext:find('ID: %{C9B931%}1087%{FFFFFF%} %[') then
                list = list..'\n'..listtext
            end
        end
        sampShowDialog(id, t, list, b1, b2, s)
        sampSetDialogClientside(false)
        return false
    end
end
function sampGetListboxItemText(str, item)
    local num_ = 0
    for str in string.gmatch(str, "[^\r\n]+") do
        if item == num_ then return str end
        num_ = num_ + 1
    end
    return false
end
function sampGetListboxItemsCount(text)
    local i = 0
    for _ in text:gmatch(".-\n") do
        i = i + 1
    end
    return i
end
только видешь, проблема в том, что если ловить дом в пд, то он не покажет этот дом, надо снова решать
 

ГОХА | GoxaShow

В АРМИИ С 12.12,ЗАКАЗЫ НЕ ДЕЛАЮ,ТУПЫЕ ВОПРОСЫ-НАХУ
Проверенный
1,872
1,869
а как узнать какой в пд слетел ты скажи
я в своем скрипте получал из паттерна ид дома в госе, если он больше 1086,то его убирает, если меньше, то оставляет
 

CaJlaT

Овощ
Модератор
2,807
2,617
я в своем скрипте получал из паттерна ид дома в госе, если он больше 1086,то его убирает, если меньше, то оставляет
по идее можно за минуту до пд внести id слетевших домов в массив, потом при пд открыть диалог и проверить массив
 

ГОХА | GoxaShow

В АРМИИ С 12.12,ЗАКАЗЫ НЕ ДЕЛАЮ,ТУПЫЕ ВОПРОСЫ-НАХУ
Проверенный
1,872
1,869
по идее можно за минуту до пд внести id слетевших домов в массив, потом при пд открыть диалог и проверить массив
многие заебутся это делать, тк ща все обленились, и все хотят автоматизацию