[Lua] Модификации | Стол заказов

Статус
В этой теме нельзя размещать новые ответы.

Joseph ▾ Cross™

Дайте мне апельсин!
Пользователь
Сообщения
601
Реакции
1,728
Баллы
215
Сервер
Если подумать - то это читерская вещь получается, если нет - то какой толк для Вас он будет иметь?
Вещь называется читерской если даёт преймущества над игроками или мешает. Этот скрипт не мешает и не даёт преймущества. Нужен для SS-ок.
 

Soul Newman

Есть судьба - есть жизнь
Пользователь
Сообщения
829
Реакции
409
Баллы
0
Сервер
Ruby
1. Описание заказа: При принятия вызова, то пробивал /number ID человека и сразу ему писал текст.
2. Тип заказа (платный/бесплатный): бесплатно желательно
3. Желаемая цена за работу(если тип заказа платный): -
4. Способ связи с Вами: VK
 

Saimon_Riley

Пользователь
Сообщения
40
Реакции
9
Баллы
0
Возраст
21
Сервер
Ruby
1. Описание заказа: Простой координатор то есть как PDcoordination.lua но больше возможностей там изменить язык, размер, цвет.
2. Тип заказа (платный/бесплатный): Бесплатный
3. Желаемая цена за работу(если тип заказа платный):-
4. Способ связи с Вами: VK
 

read in the book

Пользователь
Сообщения
1,808
Реакции
5,123
Баллы
317
1. Описание заказа: Хотелось бы заменить стандартный цвет отыгровок (/me, /do и т.д) на свои цвета. Есть на подобии только для гамбита код оставлю ниже.
2. Тип заказа (платный/бесплатный): Бесплатный
3. Желаемая цена за работу(если тип заказа платный): -
4. Способ связи с Вами: liamneto, либо тут
Код:
script_name('RPColor')
script_author("Nishikinov")
require "lib.moonloader"
local sampev = require 'lib.samp.events'
local inicfg = require "inicfg"

if not doesFileExist('moonloader\\config\\rpcolor.ini') then
  if not doesDirectoryExist('moonloader\\config') then
    createDirectory('moonloader\\config')
  end
    local ini = {
        settings = {
            currentcolor = 'D0AEEB',
            defaultcolor = 'D0AEEB', -- Стандартный цвет: D0AEEB
        }
    }
    inicfg.save(ini, 'rpcolor')
end

local ini = inicfg.load(nil, 'rpcolor')

function sampev.onPlayerChatBubble(playerId, color, distance, duration, message)
    if sampIsPlayerConnected(playerId) and tostring(color) == "-413892353" then
        emul_rpc('onPlayerChatBubble', { tonumber(playerId), -1, 15, 5000, tostring("{"..ini.settings.currentcolor.."}"..message) })
        return false
    end
end

function sampev.onServerMessage(color, text)
    if color == -413892353 or color == -793842689 then
        sampAddChatMessage("{"..ini.settings.currentcolor.."}"..text, -1)
        return false
    elseif text:find('{E75480}') then
        if text:find('{E75480},') then
            text = string.gsub(text, '({E75480})', "")
            text = string.gsub(text, '(".*")', "{ffffff}%1{"..ini.settings.currentcolor.."}")
        end
        text = string.gsub(text, '({E75480})', "{"..ini.settings.currentcolor.."}")
        sampAddChatMessage(text, -1)
        return false
    end
end

function chatColor(color)
  local color = string.match(color, '(.*)')
  if color ~= '' then
        sampAddChatMessage("Цвет РП чата изменен на: ".."{"..color.."}"..color, -1)
        ini.settings.currentcolor = color
        inicfg.save(ini, 'rpcolor')
  else
    sampAddChatMessage("Цвет РП чата изменен на {"..ini.settings.defaultcolor.."}стандартный", -1)
        ini.settings.currentcolor = ini.settings.defaultcolor
        inicfg.save(ini, 'rpcolor')
  end
end

function main()
    wait(0)
    sampRegisterChatCommand("rpcolor", chatColor)
end

function emul_rpc(hook, parameters)
    local bs_io = require 'samp.events.bitstream_io'
    local handler = require 'samp.events.handlers'
    local extra_types = require 'samp.events.extra_types'
    local hooks = {
         ['onPlayerChatBubble'] = { 'int16', 'int32', 'float', 'int32', 'string8', 59 },
    }
    local handler_hook = {
        ['onInitGame'] = true,
        ['onCreateObject'] = true,
        ['onInitMenu'] = true,
        ['onShowTextDraw'] = true,
        ['onVehicleStreamIn'] = true,
        ['onSetObjectMaterial'] = true,
        ['onSetObjectMaterialText'] = true
    }
    local extra = {
        ['PlayerScorePingMap'] = true,
        ['Int32Array3'] = true
    }
    local hook_table = hooks[hook]
    if hook_table then
        local bs = raknetNewBitStream()
        if not handler_hook[hook] then
            local max = #hook_table-1
            if max > 0 then
                for i = 1, max do
                    local p = hook_table[i]
                    if extra[p] then extra_types[p]['write'](bs, parameters[i])
                    else bs_io[p]['write'](bs, parameters[i]) end
                end
            end
        else
            if hook == 'onInitGame' then handler.on_init_game_writer(bs, parameters)
            elseif hook == 'onCreateObject' then handler.on_create_object_writer(bs, parameters)
            elseif hook == 'onInitMenu' then handler.on_init_menu_writer(bs, parameters)
            elseif hook == 'onShowTextDraw' then handler.on_show_textdraw_writer(bs, parameters)
            elseif hook == 'onVehicleStreamIn' then handler.on_vehicle_stream_in_writer(bs, parameters)
            elseif hook == 'onSetObjectMaterial' then handler.on_set_object_material_writer(bs, parameters, 1)
            elseif hook == 'onSetObjectMaterialText' then handler.on_set_object_material_writer(bs, parameters, 2) end
        end
        raknetEmulRpcReceiveBitStream(hook_table[#hook_table], bs)
        raknetDeleteBitStream(bs)
    end
end
 

Мируша

Retired Detective
Пользователь
Сообщения
107
Реакции
42
Баллы
0
Возраст
22
1. Описание заказа: 2 скрипта, 1-й это автозакупка в ресторане еды, т.е на выбор, т.к банально лень бегать вечно и писать команды, что бы был выбор какой именно пункт и т.д. 2-й - скрипт для компаний, он будет выделять заказы моего типа товара "Товары общественного пользования" "Аксессуары", "Алкоголь", "Продукты питания". Это лишь пример, если нужно будет ак-то помочь, то в вк.
2. Тип заказа (платный/бесплатный): Думаю платный, т.к пришли деньги за обеды, думаю там копеечку накину за старания.
3. Желаемая цена за работу(если тип заказа платный): 100 рублей за оба.
4. Способ связи с Вами: https://vk.com/miracle_cassini
 

Lucifer Melton

Пользователь
Сообщения
292
Реакции
166
Баллы
0
Сервер
Emerald
1. Описание заказа: Хотелось бы заменить стандартный цвет отыгровок (/me, /do и т.д) на свои цвета. Есть на подобии только для гамбита код оставлю ниже.
2. Тип заказа (платный/бесплатный): Бесплатный
3. Желаемая цена за работу(если тип заказа платный): -
4. Способ связи с Вами: liamneto, либо тут
Код:
script_name('RPColor')
script_author("Nishikinov")
require "lib.moonloader"
local sampev = require 'lib.samp.events'
local inicfg = require "inicfg"

if not doesFileExist('moonloader\\config\\rpcolor.ini') then
  if not doesDirectoryExist('moonloader\\config') then
    createDirectory('moonloader\\config')
  end
    local ini = {
        settings = {
            currentcolor = 'D0AEEB',
            defaultcolor = 'D0AEEB', -- Стандартный цвет: D0AEEB
        }
    }
    inicfg.save(ini, 'rpcolor')
end

local ini = inicfg.load(nil, 'rpcolor')

function sampev.onPlayerChatBubble(playerId, color, distance, duration, message)
    if sampIsPlayerConnected(playerId) and tostring(color) == "-413892353" then
        emul_rpc('onPlayerChatBubble', { tonumber(playerId), -1, 15, 5000, tostring("{"..ini.settings.currentcolor.."}"..message) })
        return false
    end
end

function sampev.onServerMessage(color, text)
    if color == -413892353 or color == -793842689 then
        sampAddChatMessage("{"..ini.settings.currentcolor.."}"..text, -1)
        return false
    elseif text:find('{E75480}') then
        if text:find('{E75480},') then
            text = string.gsub(text, '({E75480})', "")
            text = string.gsub(text, '(".*")', "{ffffff}%1{"..ini.settings.currentcolor.."}")
        end
        text = string.gsub(text, '({E75480})', "{"..ini.settings.currentcolor.."}")
        sampAddChatMessage(text, -1)
        return false
    end
end

function chatColor(color)
  local color = string.match(color, '(.*)')
  if color ~= '' then
        sampAddChatMessage("Цвет РП чата изменен на: ".."{"..color.."}"..color, -1)
        ini.settings.currentcolor = color
        inicfg.save(ini, 'rpcolor')
  else
    sampAddChatMessage("Цвет РП чата изменен на {"..ini.settings.defaultcolor.."}стандартный", -1)
        ini.settings.currentcolor = ini.settings.defaultcolor
        inicfg.save(ini, 'rpcolor')
  end
end

function main()
    wait(0)
    sampRegisterChatCommand("rpcolor", chatColor)
end

function emul_rpc(hook, parameters)
    local bs_io = require 'samp.events.bitstream_io'
    local handler = require 'samp.events.handlers'
    local extra_types = require 'samp.events.extra_types'
    local hooks = {
         ['onPlayerChatBubble'] = { 'int16', 'int32', 'float', 'int32', 'string8', 59 },
    }
    local handler_hook = {
        ['onInitGame'] = true,
        ['onCreateObject'] = true,
        ['onInitMenu'] = true,
        ['onShowTextDraw'] = true,
        ['onVehicleStreamIn'] = true,
        ['onSetObjectMaterial'] = true,
        ['onSetObjectMaterialText'] = true
    }
    local extra = {
        ['PlayerScorePingMap'] = true,
        ['Int32Array3'] = true
    }
    local hook_table = hooks[hook]
    if hook_table then
        local bs = raknetNewBitStream()
        if not handler_hook[hook] then
            local max = #hook_table-1
            if max > 0 then
                for i = 1, max do
                    local p = hook_table[i]
                    if extra[p] then extra_types[p]['write'](bs, parameters[i])
                    else bs_io[p]['write'](bs, parameters[i]) end
                end
            end
        else
            if hook == 'onInitGame' then handler.on_init_game_writer(bs, parameters)
            elseif hook == 'onCreateObject' then handler.on_create_object_writer(bs, parameters)
            elseif hook == 'onInitMenu' then handler.on_init_menu_writer(bs, parameters)
            elseif hook == 'onShowTextDraw' then handler.on_show_textdraw_writer(bs, parameters)
            elseif hook == 'onVehicleStreamIn' then handler.on_vehicle_stream_in_writer(bs, parameters)
            elseif hook == 'onSetObjectMaterial' then handler.on_set_object_material_writer(bs, parameters, 1)
            elseif hook == 'onSetObjectMaterialText' then handler.on_set_object_material_writer(bs, parameters, 2) end
        end
        raknetEmulRpcReceiveBitStream(hook_table[#hook_table], bs)
        raknetDeleteBitStream(bs)
    end
end
сам справишься дальше?)) и это визуально кажется))
JavaScript:
function onReceiveRpc(id, bs)
    if id == 59 then
        local playerId = raknetBitStreamReadInt16(bs)
        local color = raknetBitStreamReadInt32(bs)
        local distance = raknetBitStreamReadFloat(bs)
        local duration = raknetBitStreamReadInt32(bs)
        local size = raknetBitStreamReadInt8(bs)
        local message = raknetBitStreamReadString(bs, size)
        if color == -577699841 then
            raknetBitStreamSetWriteOffset(bs, 0)
            raknetBitStreamWriteInt16(bs, playerId)
            raknetBitStreamWriteInt32(bs, 0xFFFF9A42) -- в место 0xFFFF9A42 ставишь свой цвет ARGB кажется
            raknetBitStreamWriteFloat(bs, distance)
            raknetBitStreamWriteInt32(bs, duration)
            raknetBitStreamWriteInt8(bs, size)
            raknetBitStreamWriteString(bs, message)
            return true, 59, bs
        end
    end
    if id == 93 then
        local color = raknetBitStreamReadInt32(bs)
        local size = raknetBitStreamReadInt32(bs)
        local text = raknetBitStreamReadString(bs, size)
        if color == -577699841 then
            raknetBitStreamSetWriteOffset(bs, 0)
            raknetBitStreamWriteInt32(bs, 0xFFFF9A42) -- в место 0xFFFF9A42 ставишь свой цвет ARGB кажется
            raknetBitStreamWriteInt32(bs, size)
            raknetBitStreamWriteString(bs, text)
            return true, 93, bs
        end
    end
end
 
Последнее редактирование:

♚Exchange Dorado♚

Ḅҿӵӈø ӎøӆøдøҋ ツ
Заблокированный
Пользователь
Сообщения
194
Реакции
159
Баллы
0
Возраст
26
Сервер
1. Описание заказа: Сделай полезный скрипт для /company сортировка и т.д
2. Тип заказа (платный/бесплатный): Можно и за деньги)
3. Желаемая цена за работу(если тип заказа платный): на твое усмотрение
4. Способ связи с Вами: https://vk.com/cop0ka или же форум
 

coockie

Пользователь
Сообщения
57
Реакции
10
Баллы
0
сам справишься дальше?)) и это визуально кажется))
JavaScript:
function onReceiveRpc(id, bs)
    if id == 59 then
        local playerId = raknetBitStreamReadInt16(bs)
        local color = raknetBitStreamReadInt32(bs)
        local distance = raknetBitStreamReadFloat(bs)
        local duration = raknetBitStreamReadInt32(bs)
        local size = raknetBitStreamReadInt8(bs)
        local message = raknetBitStreamReadString(bs, size)
        if color == -577699841 then
            raknetBitStreamSetWriteOffset(bs, 0)
            raknetBitStreamWriteInt16(bs, playerId)
            raknetBitStreamWriteInt32(bs, 0xFFFF9A42) -- в место 0xFFFF9A42 ставишь свой цвет ARGB кажется
            raknetBitStreamWriteFloat(bs, distance)
            raknetBitStreamWriteInt32(bs, duration)
            raknetBitStreamWriteInt8(bs, size)
            raknetBitStreamWriteString(bs, message)
            return true, 59, bs
        end
    end
    if id == 93 then
        local color = raknetBitStreamReadInt32(bs)
        local size = raknetBitStreamReadInt32(bs)
        local text = raknetBitStreamReadString(bs, size)
        if color == -577699841 then
            raknetBitStreamSetWriteOffset(bs, 0)
            raknetBitStreamWriteInt32(bs, 0xFFFF9A42) -- в место 0xFFFF9A42 ставишь свой цвет ARGB кажется
            raknetBitStreamWriteInt32(bs, size)
            raknetBitStreamWriteString(bs, text)
            return true, 93, bs
        end
    end
end
Это не ARGB, это HEX шестнадцатиричный братан
 

#SGRAY

♥ I ℓ٥ﻻ ﻉ√٥υ ♥
Пользователь
Сообщения
25
Реакции
10
Баллы
0
Сервер
Извините за долгое отсутствие.

#39 - Отписал Вам в личные сообщения ВК.
#40 - Отписал Вам в личные сообщения ВК.
#41 - Нет возможности работы с перекраской чатов. То есть, не осилил ещё это)
#42 - Подробнее опишите мне в ВК.
#44 - Отписал Вам в личные сообщение ВК. (добавьте - vk.com/chocoanime)
 

bostens1

Mertvyy Chelik
Пользователь
Сообщения
37
Реакции
16
Баллы
0
Сервер
Ruby
1. Описание заказа: Обговорим лично
2. Тип заказа (платный/бесплатный): платный
3. Желаемая цена за работу(если тип заказа платный): 20-30$
4. Способ связи с Вами: @bostens1 (Telegram)
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху