View difference between Paste ID: NraYkuyp and inykQ8tw
SHOW: | | - or go back to the newest paste.
1
scambi = []
2
semafori = {}
3
mappaScambiPos = {}
4
mappaScambiName = {}
5
mappaSemaforiPos = {}
6
mappaSemaforiName = {}
7
8
function split(s, delimiter)
9
  result = {}
10
  for match in (s..delimiter):gmatch("(.-)"..delimiter) do
11
    table.insert(result, match)
12
  end
13
  return result
14
end
15
16
function scambio(x, y, type, color)
17
  local scambio = {}
18
  table.insert(scambio, color)
19
  table.insert(scambio, x)
20
  table.insert(scambio, y)
21
  table.insert(scambio, type)
22
  table.insert(scambi, scambio)
23
  table.insert(mappaScambiPos, x .. "," .. y)
24
  table.insert(mappaScambiName, color)
25
end
26
27
function semaforo(x, y, color)
28
  local semaforo = {}
29
  table.insert(semaforo, color)
30
  table.insert(semaforo, x)
31
  table.insert(semaforo, y)
32
  table.insert(semafori, semaforo)
33
  table.insert(mappaSemaforiPos, x .. "," .. y)
34
  table.insert(mappaSemaforiName, color)
35
end
36
37
function getSemaforoPositionByName(color)
38
  for i, v in pairs(semaforiName) do
39
    if (v == color) then
40
      return semaforiPos[i]
41
    end
42
  end
43
end
44
45
function getScambioPosByName(color)
46
  for i, v in pairs(scambiName) do
47
    if (v == color) then
48
      return scambiPos[i]
49
    end
50
  end
51
end
52
53
function getScambioTypeByName(color)
54
  for i, v in pairs(scambiName) do
55
    if (v == color) then
56
      return scambi[i][4]
57
    end
58
  end
59
end
60
61
function getScambioNameByPos(x, y) 
62
  for i, v in pairs(scambiPos) do
63
    if (x .. "," .. y == v) then
64
      return scambiName[i]
65
    end
66
  end
67
end
68
69
function viewScambi()
70
  for i, v in pairs(scambiName) do
71
    local dim = split(scambiPos[i], ",")
72
    local type = getScambioTypeByName(v)
73
    term.setCursorPos(dim[1], dim[2])
74
    term.setTextColor(colors.white)
75
    term.setBackgroundColor(colors.green)
76
    term.write(type)
77
  end
78
end