Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- startup.lua
- local monitor = peripheral.wrap("top")
- local locator = peripheral.wrap("right")
- if not monitor or not locator then
- print("Monitor or Player Locator not found!")
- return
- end
- monitor.setTextScale(1)
- monitor.clear()
- local function getPlayers()
- return locator.GetPlayersCoords() -- Corrected function name
- end
- local function displayPlayers()
- monitor.clear()
- monitor.setCursorPos(2, 2)
- monitor.write("Nearby Players:")
- local players = getPlayers()
- for i, player in ipairs(players) do
- monitor.setCursorPos(2, i + 3)
- monitor.write("[" .. player.name .. "]")
- end
- return players
- end
- local players = displayPlayers()
- while true do
- local event, side, x, y = os.pullEvent("monitor_touch")
- for i, player in ipairs(players) do
- if y == i + 3 then
- shell.run("player_info.lua", player.name)
- end
- end
- end
- -- player_info.lua
- local monitor = peripheral.wrap("top")
- local locator = peripheral.wrap("right")
- if not monitor or not locator then
- print("Monitor or Player Locator not found!")
- return
- end
- local args = { ... }
- if #args < 1 then
- print("Usage: player_info.lua <player_name>")
- return
- end
- local playerName = args[1]
- monitor.setTextScale(1)
- monitor.clear()
- monitor.setCursorPos(2, 2)
- monitor.write("Player: " .. playerName)
- local playerData = locator.GetPlayerCoords(playerName) -- Corrected function name
- if playerData then
- monitor.setCursorPos(2, 4)
- monitor.write("X: " .. math.floor(playerData.x))
- monitor.setCursorPos(2, 5)
- monitor.write("Y: " .. math.floor(playerData.y))
- monitor.setCursorPos(2, 6)
- monitor.write("Z: " .. math.floor(playerData.z))
- end
- monitor.setCursorPos(2, 8)
- monitor.write("[ Back ]")
- while true do
- local event, side, x, y = os.pullEvent("monitor_touch")
- if y == 8 then
- shell.run("startup.lua")
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment