Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- Function to check for players within 20 blocks
- function checkForPlayers()
- local players = peripheral.call("top", "getPlayersInRange", 20)
- return players
- end
- -- Function to send a greeting message
- function greetPlayer(player)
- local message = "Welcome to the x-BOX store, " .. player .. "!"
- print("Sending message:", message)
- box = peripheral. Find("chatBox")
- box.sendMessage(message)
- end
- -- Main loop to constantly check for players
- local greetedPlayers = {}
- local greetCooldown = 60 -- Cooldown time in seconds
- while true do
- local players = checkForPlayers()
- local currentTime = os.time()
- local playerSet = {}
- if players then
- for _, player in ipairs(players) do
- playerSet[player] = true
- if not greetedPlayers[player] or currentTime - greetedPlayers[player] > greetCooldown then
- greetPlayer(player)
- greetedPlayers[player] = currentTime
- end
- end
- end
- -- Remove players who have left the area from the greetedPlayers list
- for player, lastGreeted in pairs(greetedPlayers) do
- if not playerSet[player] and currentTime - lastGreeted > greetCooldown then
- greetedPlayers[player] = nil
- end
- end
- -- Wait for 5 seconds before checking again
- sleep(5)
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement