SHOW:
|
|
- or go back to the newest paste.
| 1 | function giremu(inputstr, sep) | |
| 2 | if sep == nil then | |
| 3 | sep = "%s" | |
| 4 | end | |
| 5 | local t={}
| |
| 6 | for str in string.gmatch(inputstr, "([^"..sep.."]+)") do | |
| 7 | table.insert(t, str) | |
| 8 | end | |
| 9 | return t | |
| 10 | end | |
| 11 | ||
| 12 | - | h.write("u='"..
|
| 12 | + | |
| 13 | -- Aspetto la richiesta | |
| 14 | while true do | |
| 15 | modem.setListening(51, true) | |
| 16 | local event, lato, sender, canale, msg = os.pullEvent("lan_message")
| |
| 17 | ||
| 18 | print("Richiesta da: 144.91.97."..sender.."\nContenuto: "..msg)
| |
| 19 | if msg == "1.x&o.g.gaugle.com" then | |
| 20 | modem.sendChannel(51, "OK") | |
| 21 | elseif msg == "1.x&o.g.gaugle.com/user" then | |
| 22 | if fs.exists("o") == false and fs.exists("x") == false then
| |
| 23 | modem.sendChannel(51, "o&x") | |
| 24 | elseif fs.exists("o") == true and fs.exists("x") == false then
| |
| 25 | modem.sendChannel(51, " &x") | |
| 26 | elseif fs.exists("o") == false and fs.exists("x") == true then
| |
| 27 | modem.sendChannel(51, "o& ") | |
| 28 | else | |
| 29 | modem.sendChannel(51, " &partita piena!") | |
| 30 | end | |
| 31 | elseif string.find(msg, "1.x&o.g.gaugle.com/check") ~= nil then | |
| 32 | sus = giremu(msg, "$") | |
| 33 | if sus[2] ~= "o" and sus[2] ~= "x" then | |
| 34 | modem.sendChannel(51, "NO") | |
| 35 | else | |
| 36 | if fs.exists(sus[2]) == true then | |
| 37 | modem.sendChannel(51, "NI") | |
| 38 | else | |
| 39 | modem.sendChannel(51, "SI") | |
| 40 | end | |
| 41 | end | |
| 42 | elseif string.find(msg, "1.x&o.g.gaugle.com/new") ~= nil then | |
| 43 | sus = giremu(msg, "$") | |
| 44 | local h = fs.open("turn", "w")
| |
| 45 | h.write(sus[2]) | |
| 46 | h.flush() | |
| 47 | h.close() | |
| 48 | local h = fs.open(sus[2], "w") | |
| 49 | h.write("reg")
| |
| 50 | h.flush() | |
| 51 | h.close() | |
| 52 | -- INIZIANO LE GRATE!!! | |
| 53 | local h = fs.open("s1", "w")
| |
| 54 | h.write(" ")
| |
| 55 | h.flush() | |
| 56 | h.close() | |
| 57 | local h = fs.open("s2", "w")
| |
| 58 | h.write(" ")
| |
| 59 | h.flush() | |
| 60 | h.close() | |
| 61 | local h = fs.open("s3", "w")
| |
| 62 | h.write(" ")
| |
| 63 | h.flush() | |
| 64 | h.close() | |
| 65 | local h = fs.open("s4", "w")
| |
| 66 | h.write(" ")
| |
| 67 | h.flush() | |
| 68 | h.close() | |
| 69 | local h = fs.open("s5", "w")
| |
| 70 | h.write(" ")
| |
| 71 | h.flush() | |
| 72 | h.close() | |
| 73 | local h = fs.open("s6", "w")
| |
| 74 | h.write(" ")
| |
| 75 | h.flush() | |
| 76 | h.close() | |
| 77 | local h = fs.open("s7", "w")
| |
| 78 | h.write(" ")
| |
| 79 | h.flush() | |
| 80 | h.close() | |
| 81 | local h = fs.open("s8", "w")
| |
| 82 | h.write(" ")
| |
| 83 | h.flush() | |
| 84 | h.close() | |
| 85 | local h = fs.open("s9", "w")
| |
| 86 | h.write(" ")
| |
| 87 | h.flush() | |
| 88 | h.close() | |
| 89 | ||
| 90 | modem.sendChannel(51, "OK") | |
| 91 | elseif msg == "1.x&o.g.gaugle.com/pick" then | |
| 92 | -- Table: userOfTurn,cas1,cas2,cas3,cas4,cas5,cas6,cas7,cas8,cas9 | |
| 93 | local h = fs.open("turn", "r")
| |
| 94 | turnoa = h.readAll() | |
| 95 | h.close() | |
| 96 | local h = fs.open("s1", "r")
| |
| 97 | tu1 = h.readAll() | |
| 98 | h.close() | |
| 99 | local h = fs.open("s2", "r")
| |
| 100 | tu2 = h.readAll() | |
| 101 | h.close() | |
| 102 | local h = fs.open("s3", "r")
| |
| 103 | tu3 = h.readAll() | |
| 104 | h.close() | |
| 105 | local h = fs.open("s4", "r")
| |
| 106 | tu4 = h.readAll() | |
| 107 | h.close() | |
| 108 | local h = fs.open("s5", "r")
| |
| 109 | tu5 = h.readAll() | |
| 110 | h.close() | |
| 111 | local h = fs.open("s6", "r")
| |
| 112 | tu6 = h.readAll() | |
| 113 | h.close() | |
| 114 | local h = fs.open("s7", "r")
| |
| 115 | tu7 = h.readAll() | |
| 116 | h.close() | |
| 117 | local h = fs.open("s8", "r")
| |
| 118 | tu8 = h.readAll() | |
| 119 | h.close() | |
| 120 | local h = fs.open("s9", "r")
| |
| 121 | tu9 = h.readAll() | |
| 122 | h.close() | |
| 123 | modem.sendChannel(51, "isGrid$"..turnoa.."$"..tu1.."$"..tu2.."$"..tu3.."$"..tu4.."$"..tu5.."$"..tu6.."$"..tu7.."$"..tu8.."$"..tu9) | |
| 124 | elseif string.find(msg, "1.x&o.g.gaugle.com/update") ~= nil then | |
| 125 | susa = giremu(msg, "$") | |
| 126 | -- Imposto che NON E' il turno del giocatore | |
| 127 | local h = fs.open("turn", "w")
| |
| 128 | h.write(susa[2]) | |
| 129 | h.flush() | |
| 130 | h.close() | |
| 131 | -- Sistemo la casella scelta | |
| 132 | local h = fs.open(susa[3], "w") | |
| 133 | h.write(susa[2]) | |
| 134 | h.flush() | |
| 135 | h.close() | |
| 136 | modem.sendChannel(51, "OK") | |
| 137 | elseif msg == "1.x&o.g.gaugle.com/stop" then | |
| 138 | shell.run("rm x")
| |
| 139 | shell.run("rm o")
| |
| 140 | shell.run("rm turn")
| |
| 141 | modem.sendChannel(51, "stopped!") | |
| 142 | shell.run("reboot")
| |
| 143 | end | |
| 144 | sleep(0.1) | |
| 145 | end |