Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local st = 10 -- Растояние между строк
- local dt = 3 -- Растояние между ником и званием
- local ot = 120 -- Растояние на котором выводится статус
- local xo,yo = 5,10 -- Расположение окна с выводом петухов
- local xd,yd = 300,10 -- Расположение окна с выводом игроков по близости
- local pp = {x = 1682,y = 86, z = 1039} -- Указать координаты сенсора
- ---------------------------------------
- local component = require("component")
- local computer = require("computer")
- local event = require("event")
- local bridge = component.openperipheral_bridge -- Нуден мост для очков
- local sensor = component.openperipheral_sensor -- Нужен сенсор
- chat = {}
- local hh = {
- ['Создатель'] = {0xFCB514, {'XRASER','BeTePb' }},
- ['Админ'] = {0xFCB514 ,{'Tekyera','SkyDrive' }},
- ['Дизайнер'] = {0xD02090 ,{'Dark_Time' }},
- ['Билдер'] = {0xFF00CC ,{'titan123023','msDrakononenko' }},
- ['Тех.Админ'] = {0xFF0000 ,{'lLuffy' }},
- ['Гл.Модер'] = {0xFF00CC , {'ogrezem' }},
- ['Разработчик'] = {0xFF00CC ,{'krovyaka' }},
- ['Модератор'] = {0xFA1D2F ,{'ImRazen','DJ_SonyBlaze' }},
- ['Помошник'] = {0x00CD00 ,{'Dark_seer','skMorgan','Boooxy' }},
- ['Стажёр'] = {0x00CD00 ,{}},
- ['Отец'] = {0x00CD00 ,{'theCPU','Appo' }}
- }
- function pidorsDetected();
- local players = sensor.getPlayers()
- local yy = 10;
- for i,v in pairs(players) do
- local skan = sensor.getPlayerByName(v.name)
- if skan ~= nil then
- local p = skan.all().position
- bridge.addText(130,yy,v.name .. ' ('..math.floor(pp.x+p.x)..' '..math.floor(pp.y+p.y-1)..' '..math.floor(pp.z+p.z)..')')
- yy = yy + 10
- end
- end
- end
- function online();
- local y = yo
- for rang,v in pairs(hh) do
- for _,nik in pairs(v[2]) do
- local f = true
- local plus={computer.addUser(nik)}
- if (plus[2] == "user exists") then
- computer.removeUser(nik)
- local plus={computer.addUser(nik)}
- f = false
- end
- if f then computer.removeUser(nik) end
- if (plus[1] ~= nil) then
- bridge.addText(xo,y,'['..rang..']',v[1])
- bridge.addText(xo+(#rang+4)*dt,y,nik)
- y = y + st
- end
- end
- end
- end
- function stringToArray(text)
- local t = {}
- text:gsub(".",function(c) table.insert(t,c) end)
- return t
- end
- function gl(h)
- if stringToArray(h)[1] == "!" then
- return "[G] "
- else
- return "[L] "
- end
- end
- local i = 1
- function main()
- bridge.clear()
- pidorsDetected()
- online()
- for v = 0,10 do
- if chat[#chat-v] ~= nil then
- bridge.addText(10,-v*10+200,chat[#chat-v][1]..': '..chat[#chat-v][2])
- -- bridge.addText(10,-v*10+200,gl(chat[#chat-v][2])..chat[#chat-v][1]..': '..chat[#chat-v][2]:gsub('!?','',1))
- end
- end
- bridge.sync()
- end
- while true do
- main()
- local tim = event.timer(3,main)
- local filtr, _, nick, msg = event.pull("chat_message")
- if (filtr == 'chat_message'))then
- chat[#chat+1] = {nick,msg}
- event.cancel(tim)
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement