Lua Авто точка + авто заглавная буква

Lоren

Новичок
6
10
Это из-за того что в одном сообщений по два предложения, допустим: "Привет. Здравствуй"
После этого ставит единицу на конце. Не силен в кодировании, но думаю, что это как-то можно исправить
У самого такая проблема иногда
Да и еще когда в конце ставишь ! после него тоже 1 ставится
 

TPABA_HE_HAPKOTUK

Новичок
7
0
Если у вас в сообщении есть точка или другой символ, то в конце ставит 1, это можно пофиксить убрав точки на 25 строке, вот пофикшенный код:
Фикс еденички в конце сообщения:
local russian_characters = {
    [168] = 'Ё', [184] = 'ё', [192] = 'А', [193] = 'Б', [194] = 'В', [195] = 'Г', [196] = 'Д', [197] = 'Е', [198] = 'Ж', [199] = 'З', [200] = 'И', [201] = 'Й', [202] = 'К', [203] = 'Л', [204] = 'М', [205] = 'Н', [206] = 'О', [207] = 'П', [208] = 'Р', [209] = 'С', [210] = 'Т', [211] = 'У', [212] = 'Ф', [213] = 'Х', [214] = 'Ц', [215] = 'Ч', [216] = 'Ш', [217] = 'Щ', [218] = 'Ъ', [219] = 'Ы', [220] = 'Ь', [221] = 'Э', [222] = 'Ю', [223] = 'Я', [224] = 'а', [225] = 'б', [226] = 'в', [227] = 'г', [228] = 'д', [229] = 'е', [230] = 'ж', [231] = 'з', [232] = 'и', [233] = 'й', [234] = 'к', [235] = 'л', [236] = 'м', [237] = 'н', [238] = 'о', [239] = 'п', [240] = 'р', [241] = 'с', [242] = 'т', [243] = 'у', [244] = 'ф', [245] = 'х', [246] = 'ц', [247] = 'ч', [248] = 'ш', [249] = 'щ', [250] = 'ъ', [251] = 'ы', [252] = 'ь', [253] = 'э', [254] = 'ю', [255] = 'я',
}
function string.rupper(s)
    s = s:upper()
    local strlen = s:len()
    if strlen == 0 then return s end
    s = s:upper()
    local output = ''
    for i = 1, strlen do
        local ch = s:byte(i)
        if ch >= 224 and ch <= 255 then -- lower russian characters
            output = output .. russian_characters[ch - 32]
        elseif ch == 184 then -- ё
            output = output .. russian_characters[168]
        else
            output = output .. string.char(ch)
        end
    end
    return output
end

require('lib.samp.events').onSendChat = function(text)
    local n = text:sub(1, 1):rupper()..text:sub(2, #text)
    return {n..(n:find('(+)%.') or n:find('(+)%!') or n:find('(+)%?') and '' or '.')}
end

Вот что было:
1726298206661.png
, вот что сейчас:
1726298221327.png


Правда если вы пишите символ в конце предложения, по типу "Привет!" оно будет ставить точку, так что либо убирать нужные символы на 25 строке, либо не ставить их
1726310769572.png
 
Последнее редактирование: