- 8
- 3
- Версия SA-MP
-
- Любая
[ARIZONA RP] HUD Time Display
Скрипт, который добавляет отображение текущего времени прямо в HUD San Andreas CEF.
Время встроено в сам интерфейс и отображается так же, как на демонстрации.
Работает стабильно.
Время встроено в сам интерфейс и отображается так же, как на демонстрации.
Работает стабильно.
[ARIZONA RP] HUD Time Display:
script_name = "[ARIZONA RP] HUD Time Display"
script_author = "MINI MODS"
script_version = "1.0"
_G.evalanon = evalanon
_G.evalcef = evalcef
function main()
repeat wait(0) until isSampAvailable()
while true do
updateTimeText()
wait(1000)
setupTimeText()
end
end
function setupTimeText()
local js = [[
(function() {
var old = document.getElementById('time_hud');
if (old) old.remove();
var params = document.querySelector('.player-info__params');
if (!params) return;
params.style.width = "100%";
var div = document.createElement('div');
div.id = 'time_hud';
div.style.color = 'white';
div.style.fontSize = '30px';
div.style.fontWeight = '700';
div.style.marginTop = '4px';
div.textContent = "00:00:00";
var money = params.querySelector('.player-info__money');
if (money)
params.insertBefore(div, money);
else
params.appendChild(div);
})();
]]
evalanon(js)
end
function updateTimeText()
local time = os.date("%H:%M:%S")
local js = ([[
var el = document.getElementById('time_hud');
if (el) el.textContent = "%s";
]]):format(time)
evalanon(js)
end
function evalanon(code)
evalcef("(function(){"..code.."})();")
end
function evalcef(code, encoded)
encoded = encoded or 0
local bs = raknetNewBitStream()
raknetBitStreamWriteInt8(bs, 17)
raknetBitStreamWriteInt32(bs, 0)
raknetBitStreamWriteInt16(bs, #code)
raknetBitStreamWriteInt8(bs, encoded)
raknetBitStreamWriteString(bs, code)
raknetEmulPacketReceiveBitStream(220, bs)
raknetDeleteBitStream(bs)
end
Вложения
Последнее редактирование: