View difference between Paste ID: adduLAff and vgPfaLkS
SHOW: | | - or go back to the newest paste.
1
file = fs.open("curPlayers","r")
2
playerNames = {}
3
i=0
4
    repeat
5
    i=i+1
6
    line = file.readLine()
7
    playerNames[i] = line
8
    until line == nil
9
playerNames[i] = nil
10
file.close()
11
12
13
14
rednet.open("right")
15
16
playerPos = {}
17
    for k,v in pairs(playerNames) do
18
    rednet.send(939,k-1)
19
    rednet.send(939,"start")
20
    sleep(0.4)
21
    playerPos[k] = {}
22
    rednet.send(936,"start")
23
    rednet.send(937,"start")
24
    rednet.send(938,"start")
25
    rednet.send(939,"stop")
26
    
27
    os.startTimer(0.05)
28
        repeat
29
        info1,info2,info3,info4 = os.pullEvent()
30
            if info1 == "rednet_message" and type(info3) == "table" then
31
                if info3["action"] == "sendingX" then
32
                playerPos[k]["x"] = info3["x"]
33
                end
34
                
35
                if info3["action"] == "sendingY" then
36
                playerPos[k]["y"] = info3["y"]
37
                end
38
                
39
                if info3["action"] == "sendingZ" then
40
                playerPos[k]["z"] = info3["z"]
41
                end
42
            end
43
        until info1 == "timer"
44
    rednet.send(939,"stop")
45
    sleep(0.2)
46
    end
47
    
48
rednet.send(939,0)
49
50
51
52
    for k,v in pairs(playerNames) do
53
    print(playerNames[k])
54
    file = fs.open("playerPos/" .. os.day("local") .. "/" .. (math.floor(os.time("local")*1000)/1000) .. "/" .. playerNames[k],"w")
55
    
56
    file.writeLine(playerPos[k]["x"])
57
    file.writeLine(playerPos[k]["y"])
58
    file.writeLine(playerPos[k]["z"])
59
    
60
    file.flush()
61
    file.close()
62
    end
63
    
64
    
65
rednet.send(941,"ping")
66
os.startTimer(0.1)
67
    repeat
68
    info1,info2,info3,info4 = os.pullEvent()
69
    until info3 == "pong" or info1 == "timer"
70
    
71
    
72
    if info3 == "pong" then
73
    
74
    posData={}
75
    i=0
76
        for k1,v1 in pairs(fs.list("playerPos")) do
77
		curDay = fs.list("playerPos")[k1]
78
		
79
            for k2,v2 in pairs(fs.list("playerPos/"..curDay)) do
80
			curTime = fs.list("playerPos/"..curDay)[k2]
81
			
82
				if fs.isDir("playerPos/"..curDay.."/"..curTime) then
83
					for k3,v3 in pairs(fs.list("playerPos/"..curDay.."/"..curTime)) do
84
					curPlayer = fs.list("playerPos/"..curDay.."/"..curTime)[k3]
85
				
86
						if fs.exists("playerPos/"..curDay.."/"..curTime.."/"..curPlayer) then
87
						i=i+1
88
						file = fs.open("playerPos/"..curDay.."/"..curTime.."/"..curPlayer,"r")
89
						curPosData = {}
90
						curPosData["day"]=curDay
91
						curPosData["time"]=curTime
92
						curPosData["player"]=curPlayer
93
						curPosData["x"]=file.readLine()
94
						curPosData["y"]=file.readLine()
95
						curPosData["z"]=file.readLine()
96
						file.close()
97
						posData[i] = curPosData
98
						end
99
					
100
					end
101
				
102
            	end
103
			end
104
        end
105
    rednet.send(info2,{["action"]="sendingPosData",["player"]=info3["player"],["posData"]=posData})
106
	fs.delete("playerPos")
107
    end
108
    
109
110
    
111