SHOW:
|
|
- or go back to the newest paste.
1 | os.loadAPI("ocs/apis/sensor") | |
2 | sen = sensor.wrap("top") | |
3 | s = sen.getTargets() | |
4 | ||
5 | file = fs.open("Local_List", "w") | |
6 | file.close() | |
7 | ||
8 | function getS() | |
9 | for v, k in pairs(s) do | |
10 | if k.Name == "ME Wireless Access Point" then | |
11 | target = v | |
12 | end | |
13 | end | |
14 | sleep(0.5) | |
15 | return target | |
16 | end | |
17 | ||
18 | target = getS() | |
19 | if target then | |
20 | s1 = sen.getTargetDetails(target) | |
21 | print("Eingeworfene Items:") | |
22 | for _, item in pairs(s1.Items) do | |
23 | local displayName = item.Name or "Unknown Item" | |
24 | local size = item.Size or 0 | |
25 | local file = fs.open("Local_List", "a") | |
26 | file.write(displayName .. "= " .. size .. "\n") | |
27 | file.close() | |
28 | ||
29 | print(displayName .. " = " .. size .. "\n") | |
30 | end | |
31 | end | |
32 | ||
33 | ||
34 | -- Funktion zum Lesen der Datei und Extrahieren der Informationen | |
35 | function ladeItems() | |
36 | local datei = fs.open("Local_List", "r") -- Datei im Lesemodus åB6ffnen | |
37 | ||
38 | if not datei then | |
39 | print("Fehler: Datei konnte nicht geåB6ffnet werden.") | |
40 | return | |
41 | end | |
42 | ||
43 | -- Tabelle zum Speichern der Iteminformationen | |
44 | local items = {} | |
45 | ||
46 | -- Schleife durch jede Zeile der Datei | |
47 | repeat | |
48 | local zeile = datei.readLine() -- Eine Zeile aus der Datei lesen | |
49 | if zeile then | |
50 | -- Trenne den Itemnamen und die Menge anhand des Gleichheitszeichens | |
51 | local itemName, menge = zeile:match("([^=]+)%s*=%s*(%d+)") | |
52 | if itemName and menge then | |
53 | items[itemName] = tonumber(menge) | |
54 | else | |
55 | print("Fehlerhafte Zeile in der Datei: " .. zeile) | |
56 | end | |
57 | end | |
58 | until not zeile | |
59 | ||
60 | datei.close() -- Datei schlieå9Fen | |
61 | ||
62 | return items | |
63 | end | |
64 | ||
65 | -- Beispielaufruf der Funktion | |
66 | local itemTabelle = ladeItems() | |
67 | ||
68 | -- Beispiel: Verwendung der abgerufenen Informationen | |
69 | if itemTabelle then | |
70 | Local_AEs_Amount = itemTabelle["Adjustable Emitter"] | |
71 | Local_Shiny_Amount = itemTabelle["Shiny Ingot"] | |
72 | Local_Tungsten_Amount = itemTabelle["Tungsten Ore"] | |
73 | end | |
74 | ||
75 | if not Local_AEs_Amount then | |
76 | Local_AEs_Amount = 0 | |
77 | end | |
78 | if not Local_Shiny_Amount then | |
79 | Local_Shiny_Amount = 0 | |
80 | end | |
81 | if not Local_Tungsten_Amount then | |
82 | Local_Tungsten_Amount = 0 | |
83 | end | |
84 | -------------------------------------------------------------------------- | |
85 | ||
86 | -- Funktion zum Lesen der Datei und Extrahieren der Informationen | |
87 | file = fs.open("local-name", "r") --read user | |
88 | name = file.readLine() | |
89 | file.close() | |
90 | ||
91 | function ladeItems() | |
92 | local datei = fs.open("Users/" .. name, "r") -- Datei im Lesemodus åB6ffnen | |
93 | ||
94 | if not datei then | |
95 | print("Fehler: Datei konnte nicht geåB6ffnet werden.") | |
96 | return | |
97 | end | |
98 | ||
99 | -- Tabelle zum Speichern der Iteminformationen | |
100 | local items = {} | |
101 | ||
102 | -- Schleife durch jede Zeile der Datei | |
103 | repeat | |
104 | local zeile = datei.readLine() -- Eine Zeile aus der Datei lesen | |
105 | if zeile then | |
106 | -- Trenne den Itemnamen und die Menge anhand des Gleichheitszeichens | |
107 | local itemName, menge = zeile:match("([^=]+)%s*=%s*(%d+)") | |
108 | if itemName and menge then | |
109 | items[itemName] = tonumber(menge) | |
110 | else | |
111 | print("Fehlerhafte Zeile in der Datei: " .. zeile) | |
112 | end | |
113 | end | |
114 | until not zeile | |
115 | ||
116 | datei.close() -- Datei schlieå9Fen | |
117 | ||
118 | return items | |
119 | end | |
120 | ||
121 | -- Beispielaufruf der Funktion | |
122 | local itemTabelle = ladeItems() | |
123 | ||
124 | -- Beispiel: Verwendung der abgerufenen Informationen | |
125 | if itemTabelle then | |
126 | AEs_Amount = itemTabelle["Adjustable Emitter"] | |
127 | Shiny_Amount = itemTabelle["Shiny Ingot"] | |
128 | Tungsten_Amount = itemTabelle["Tungsten Ore"] | |
129 | end | |
130 | ||
131 | New_AEs_Amount = AEs_Amount + Local_AEs_Amount | |
132 | New_Shiny_Amount = Shiny_Amount + Local_Shiny_Amount | |
133 | New_Tungsten_Amount = Tungsten_Amount + Local_Tungsten_Amount | |
134 | ||
135 | fs.delete("Local_List") | |
136 | fs.delete("Users/" .. name) | |
137 | file = fs.open("Users/" .. name, "w") | |
138 | file.close() | |
139 | ||
140 | local file = fs.open("Users/" .. name, "a") | |
141 | file.write("Adjustable Emitter= " .. New_AEs_Amount .. "\n") | |
142 | file.write("Shiny Ingot= " .. New_Shiny_Amount .. "\n") | |
143 | file.write("Tungsten Ore= " .. New_Tungsten_Amount .. "\n") | |
144 | file.close() | |
145 | ||
146 | print(" ") | |
147 | print("addierte Werte:") | |
148 | print("AEs:", New_AEs_Amount) | |
149 | print("Shiny:", New_Shiny_Amount) | |
150 | print("Tungsten:", New_Tungsten_Amount) | |
151 | ||
152 | rs.setOutput("left", true) | |
153 | sleep(2) | |
154 | rs.setOutput("left", false) | |
155 | sleep(1) | |
156 | ||
157 | os.reboot() |