View difference between Paste ID: cB523LiR and aEtAHMDZ
SHOW: | | - or go back to the newest paste.
1-
--Awake
1+
-- Awake
2
print("Mining client awake: Hello World!")
3
4-
--Setup wireless
4+
-- Setup wireless
5
local modemSide = "left"
6
local modem = peripheral.wrap(modemSide)
7
-- 5 Server -> Client
8
-- 6 Client -> Server
9
modem.open(5)
10
modem.open(6)
11
print("Channel 5 and 6 are open")
12-
-- Setup wireless messages
12+
13-
function WaitForMessage(messageType)
13+
-- Setup receiving wireless messages
14
function WaitForMessage(messageCompare)
15
    while true do
16
        local   
17
            event, 
18
            eventModemSide, 
19
            senderChannel, 
20
            replyChannel, 
21
            message, 
22
            senderDistance = 
23
                os.pullEvent(
24
                    "modem_message"
25-
        print(
25+
26-
            "Message received: " + 
26+
        print("Message received: " + message)
27-
            message
27+
        if(message == messageCompare) then
28-
        )
28+
29-
        if(message == messageType) then
29+
30
    end
31
end
32
33
-- Setup sending wireless messages
34
function SendMessage(message)
35
	modem.transmit(6, 5, message)
36
end
37-
    modem.transmit(
37+
38-
        6, 
38+
-- Server handshake
39-
        5, 
39+
print("Waiting for server awake")
40-
        "_TurtleRegistered"
40+
41-
    )
41+
os.sleep(1)
42
print("Replying to server...")
43-
--Done
43+
SendMessage("_TurtleRegistered")
44-
print("Goodbye >>")
44+
print("Waiting to begin")
45-
read()
45+
WaitForMessage("_Begin")
46
47
-- Mine Routine
48
function Mine()
49
    print("Mining...")
50
    os.sleep(1)
51
    print("Mine")
52
    os.sleep(1)
53
    print("Mine")
54
    os.sleep(1)
55
    print("Mine")
56
    os.sleep(1)
57
    print("Mine")
58
    os.sleep(1)
59
    print("Done mining")
60
end
61
62
-- Mine loop
63
while true do
64
    print("Waiting to start next cycle")
65
	WaitForMessage("_StartNextCycle")
66
    print("Starting next cycle...")
67
    Mine()
68
    print("Letting server know ready for next cycle...")
69
    SendMessage("_ReadyForNextCycle")
70
end