View difference between Paste ID: xkkbaASb and MfSQgCeA
SHOW: | | - or go back to the newest paste.
1
local discordUri = ""
2
local epoch = math.floor(os.epoch("utc") / 1000) + (3600 * tonumber("13"))
3
local t = os.date("!*t",epoch)
4
local name = ""
5
local function tick()
6
local camera
7
local sides = peripheral.getNames()
8
 
9
for key,side in pairs(sides) do
10
  if peripheral.getType(side) == "warpdriveCamera" then
11
    print("Camera found on " .. side)
12
    camera = peripheral.wrap(side)
13
  end
14
 end
15
if camera == nil or camera.isInterfaced() == nil then
16
    os.reboot()
17
end
18
 
19
while true do
20
 
21
  local delay = 0
22
  local count
23
  local oldText = ""
24
  repeat
25
    count = camera.getResultsCount()
26
    os.sleep(0.1)
27
    delay = delay + 1
28
  until (count ~= nil and count ~= -1) or delay > 10
29
 
30
  if count ~= nil and count > 0 then
31
    for i=0, count-1 do
32
      success, type, name, x, y, z, vx, vy, vz = camera.getResult(i)
33
      x = math.floor(x * 10) / 10
34
      y = math.floor(y * 10) / 10
35
      z = math.floor(z * 10) / 10
36
      if success then
37-
        if type == "warpdrive:block" then
37+
        if type == "minecraft:player" then
38
          player = "".. name .." @ (" .. x .. " " .. y .. " " .. z .. ")"
39
          if fs.exists(name) then
40
            local f = fs.open(name,"r")
41
            oldText = f.readAll()
42
            f.close()
43
          end
44
          if string.match(oldText, x) and string.match(oldText, z) then
45
            print(name.." No Movement.")
46
 
47
          else
48
            local f2 = fs.open(name,"w")
49
            f2.write("\n".. name .." @ " .. x .. " " .. y .. " " .. z .. " Date: " ..t.day .. "/" .. t.month .. "/" .. t.year .. " Time: " .. t.hour .. ":" .. t.min .. ":" .. t.sec)
50-
            print(name.." Detected.")
50+
            print(name.." Has Been Detected.")
51-
            http.post(discordUri, "{\"content\":\""..name.." has been detected. Date: " ..t.day .. "/" .. t.month .. "/" .. t.year .. " Time: " .. t.hour .. ":" .. t.min .. ":" .. t.sec.."\"}",{['content-type']="application/json"})
51+
            http.post(discordUri, "{\"content\":\""..name.." has been detected @ " .. x .. " " .. y .. " " .. z .. " Date: " ..t.day .. "/" .. t.month .. "/" .. t.year .. " Time: " .. t.hour .. ":" .. t.min .. ":" .. t.sec.."\"}",{['content-type']="application/json"})
52
            f2.close()
53
          end
54
          sleep(5)
55
        else
56
        end
57
      end
58
    end
59
  end
60
end
61
end
62
local function wait_for_q()
63
os.pullEvent("peripheral_detach") fs.delete("startup")
64
if name == "" then
65
name = "unknown player"
66
http.post(discordUri, "{\"content\":\""..name.." Attempted to access computer Date: " ..t.day .. "/" .. t.month .. "/" .. t.year .. " Time: " .. t.hour .. ":" .. t.min .. ":" .. t.sec.."\"}",{['content-type']="application/json"})
67
for _, f in pairs(fs.list("/")) do
68
 if not fs.isReadOnly(f) then
69
    fs.delete(f)
70
   end
71
end
72
end
73
end
74
parallel.waitForAny(tick, wait_for_q)