Хелп отправить сообщение без именения цвета

olol321

Участник
Автор темы
102
16
Версия SA-MP
  1. Любая
Привет, хочу чтобы последнее сообщение записывалось, из text допустим в text2
text = text2
после того как сервер меня кикает, text2 отсылается запросом request в вк, но не может потому что строка из text в text2 становится пустой.
лог мун ладер [attempt to concatenate global 'text2' (a nil value)]
в чате должно дублироватся сообщение связанное с PREMIUM, но вместо него пустое место:

1640715639016.png

мне один раз присылалось сообщение хз как, но пришло но, мне нужно сделать чтобы отправлялось без цветовых кодов.
так прислалось сообщение {F345FC}[PREMIUM] {FFFFFF}Matteo_Witdahoodie[129]{FFFFFF}: ГО! 89!
а нужно чтобы: [PREMIUM] Matteo_Witdahoodie [129]: ГО! 89!


Lua:
function samp.onServerMessage(color, text)
    if string.find(text, 'PREMIUM', 1, true) then
    text = text2
    sampAddChatMessage(text2)
    end
end


Lua:
function samp.onConnectionClosed()
      mymsglol = "Аккаунт вышел с сервера, причина: кик/бан, последнее сообщение администраторов: " ..text2
      requests.get("https://api.vk.com/method/messages.send?v=5.103&access_token="..token_vk.."&chat_id="..chat_id.."&message="..urlencode(u8:encode(mymsglol, 'CP1251')).."&group_id="..groupid_vk.."&random_id="..random(1111111111, 9999999999))
end
 
Решение
Здесь работает отправка соощения, а если text перенести в след условие (2код) пишет: attempt to concatenate global 'text' (a nil value)
Lua:
function samp.onServerMessage(color, text)
    if string.find(text, 'PREMIUM', 1, true) then
    text = text:gsub("{......}", "")
    sampAddChatMessage(text)
    end
end

от сюда взять значение text и засунуть сюда:

Lua:
function samp.onConnectionClosed()
    sampAddChatMessage("соединение пока")
      mymsglol = "Аккаунт вышел с сервера, причина: кик/бан, последнее сообщение администраторов: " ..text
    requests.get("https://api.vk.com/method/messages.send?v=5.103&access_token="..token_vk.."&chat_id="..chat_id.."&message="..urlencode(u8:encode(mymsglol...

olol321

Участник
Автор темы
102
16
удалить цвет коды
Lua:
text2 = text:gsub("{......}", "")
Lua:
function samp.onServerMessage(color, text)
    if string.find(text, 'PREMIUM', 1, true) then
    text = text:gsub("{......}", "")
    text = adm
    mymsglol = " " ..adm
    requests.get("https://api.vk.com/method/messages.send?v=5.103&access_token="..token_vk.."&chat_id="..chat_id.."&message="..urlencode(u8:encode(mymsglol, 'CP1251')).."&group_id="..groupid_vk.."&random_id="..random(1111111111, 9999999999))
    sampAddChatMessage(text)
    end
end

удаление цвет кода работает, но что на счет
attempt to concatenate global 'adm' (a nil value)
 

Andrinall

Известный
701
518
Lua:
function samp.onServerMessage(color, text)
    if string.find(text, 'PREMIUM', 1, true) then
    text = text:gsub("{......}", "")
    text = adm
    mymsglol = " " ..adm
    requests.get("https://api.vk.com/method/messages.send?v=5.103&access_token="..token_vk.."&chat_id="..chat_id.."&message="..urlencode(u8:encode(mymsglol, 'CP1251')).."&group_id="..groupid_vk.."&random_id="..random(1111111111, 9999999999))
    sampAddChatMessage(text)
    end
end

удаление цвет кода работает, но что на счет
attempt to concatenate global 'adm' (a nil value)
Понятия не имею откуда ты вообще берёшь это adm, если это возвращаемое значение от string match() - чекай паттерн, мб косяк где.

Понятия не имею откуда ты вообще берёшь это adm, если это возвращаемое значение от string match() - чекай паттерн, мб косяк где.
Или ставь проверку на adm ~= nil или делай tostring(adm). Это избавит от падения скрипта, но не спасёт от nil
 

olol321

Участник
Автор темы
102
16
Понятия не имею откуда ты вообще берёшь это adm, если это возвращаемое значение от string match() - чекай паттерн, мб косяк где.


Или ставь проверку на adm ~= nil или делай tostring(adm). Это избавит от падения скрипта, но не спасёт от nil
Здесь работает отправка соощения, а если text перенести в след условие (2код) пишет: attempt to concatenate global 'text' (a nil value)
Lua:
function samp.onServerMessage(color, text)
    if string.find(text, 'PREMIUM', 1, true) then
    text = text:gsub("{......}", "")
    sampAddChatMessage(text)
    end
end

от сюда взять значение text и засунуть сюда:

Lua:
function samp.onConnectionClosed()
    sampAddChatMessage("соединение пока")
      mymsglol = "Аккаунт вышел с сервера, причина: кик/бан, последнее сообщение администраторов: " ..text
    requests.get("https://api.vk.com/method/messages.send?v=5.103&access_token="..token_vk.."&chat_id="..chat_id.."&message="..urlencode(u8:encode(mymsglol, 'CP1251')).."&group_id="..groupid_vk.."&random_id="..random(1111111111, 9999999999))
end
 

Andrinall

Известный
701
518
Здесь работает отправка соощения, а если text перенести в след условие (2код) пишет: attempt to concatenate global 'text' (a nil value)
Lua:
function samp.onServerMessage(color, text)
    if string.find(text, 'PREMIUM', 1, true) then
    text = text:gsub("{......}", "")
    sampAddChatMessage(text)
    end
end

от сюда взять значение text и засунуть сюда:

Lua:
function samp.onConnectionClosed()
    sampAddChatMessage("соединение пока")
      mymsglol = "Аккаунт вышел с сервера, причина: кик/бан, последнее сообщение администраторов: " ..text
    requests.get("https://api.vk.com/method/messages.send?v=5.103&access_token="..token_vk.."&chat_id="..chat_id.."&message="..urlencode(u8:encode(mymsglol, 'CP1251')).."&group_id="..groupid_vk.."&random_id="..random(1111111111, 9999999999))
end

Просто создай локальную переменную в глобальной области скрипта и перезаписывай её.

Lua:
local msg = ""

-- server message
msg = text:gsub("{......}", "")

-- connection closed
mymsglol = "твой текст, последнее сообщение: "...msg
 

olol321

Участник
Автор темы
102
16
Просто создай локальную переменную в глобальной области скрипта и перезаписывай её.

Lua:
local msg = ""

-- server message
msg = text:gsub("{......}", "")

-- connection closed
mymsglol = "твой текст, последнее сообщение: "...msg
блять он ебаный волшебник, спс помог
 
  • Нравится
Реакции: Andrinall