Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function calc_color(color)
- return math.pow(2, color - 1)
- end
- function msg(gap, line, color, groundb, text)
- term.setBackgroundColor(calc_color(groundb))
- term.setCursorPos(gap,line)
- term.setTextColor(calc_color(color))
- text = term.write(text)
- end
- --AE und HV Mengenabfrage
- term.clear()
- msg(01,02,09,16,"How many adjustable emitters does the seller own?")
- term.setTextColor(colors.red)
- term.setCursorPos(01,03)
- AdjustableEmitterBesitz1 = read()
- AdjustableEmitterBesitz1 = tonumber(AdjustableEmitterBesitz1)
- if AdjustableEmitterBesitz1 < 1 then
- msg(01,05,09,16,"How many High Voltage Solar Panels does the seller own?")
- term.setTextColor(colors.red)
- term.setCursorPos(01,06)
- nutzlos1 = read()
- end
- msg(01,09,09,16,"How many Adjustable Emitters does the buyer own?")
- term.setTextColor(colors.red)
- term.setCursorPos(01,10)
- AdjustableEmitterBesitz2 = read()
- AdjustableEmitterBesitz2 = tonumber(AdjustableEmitterBesitz2)
- if AdjustableEmitterBesitz2 < 1 then
- msg(01,12,09,16,"How many High Voltage Solar Panels does the buyer own?")
- term.setTextColor(colors.red)
- term.setCursorPos(01,13)
- nutzlos2 = read()
- end
- --Berechnung kleinster Menge an AEs
- if AdjustableEmitterBesitz1 > AdjustableEmitterBesitz2 then
- AdjustableEmitterBesitz = AdjustableEmitterBesitz2
- elseif AdjustableEmitterBesitz1 < AdjustableEmitterBesitz2 then
- AdjustableEmitterBesitz = AdjustableEmitterBesitz1
- else
- AdjustableEmitterBesitz = AdjustableEmitterBesitz1
- end
- --Umrechnung AE-Menge in AE-Rechenmenge
- if AdjustableEmitterBesitz < 10 then
- AdjustableEmitterRechenwert = 1
- AdjustableEmitterRechenwert = tonumber(AdjustableEmitterRechenwert)
- else
- AdjustableEmitterRechenwert = 1 + AdjustableEmitterBesitz / 100
- AdjustableEmitterRechenwert = tonumber(AdjustableEmitterRechenwert)
- end
- --Name des Items und Rechenpreis in Dollar
- Adjustable_Emitter = 1536000
- High_Voltage_Solar_Panel = 8000
- Medium_Voltage_Solar_Panel = 1000
- Low_Voltage_Solar_Panel = 125
- Solar_Panel = 15.625
- UU_Matter = 1.953125
- Ferrouse_Ore = 200
- Shiny_Ingot = 2000
- Azure_Dust = 4000
- Amaranthine_Dust = 8000
- Iridescent_Dust = 14000
- Wither_Skull = 8000/3
- Nether_Star = 8000
- Shard_of_Minium = 25
- Quartz_Crystal = 25
- Lead_Ingot = 10
- --Item/Verkauf Auswahl
- term.setCursorPos(1,1)
- term.clear()
- msg(01,01,01,16,"What kind of item is sold?")
- msg(01,02,15,16,"~~~~~~~~~~~~~~~~~~~~~~~~~~")
- msg(02,03,01,15," UU-Matter ") msg(27,03,01,15," Nether Star ")
- msg(02,05,01,15," Ferrouse Ore ") msg(27,05,01,15," Shard of Minium ")
- msg(02,07,01,15," Shiny Ingot ") msg(27,07,01,15," Quartz Crystal ")
- msg(02,09,01,15," Azure Dust ") msg(27,09,01,15," Lead Ingot ")
- msg(02,11,01,15," Amaranthine Dust ") msg(27,11,01,15," ")
- msg(02,13,01,15," Iridescent Dust ") msg(27,13,01,15," ")
- msg(02,15,01,15," Wither Skull ") msg(27,15,01,15," ")
- term.setCursorPos(01,17)
- --Hauptberechnungsformel_1
- function berechnung1()
- AE = AdjustableEmitterRechenwert * Verkauf_Item_Preis * Verkauf_Menge / Adjustable_Emitter
- if AE <= 0.001 then
- AE = 0.0
- end
- HV = AdjustableEmitterRechenwert * Verkauf_Item_Preis * Verkauf_Menge / High_Voltage_Solar_Panel
- MV = AdjustableEmitterRechenwert * Verkauf_Item_Preis * Verkauf_Menge / Medium_Voltage_Solar_Panel
- LV = AdjustableEmitterRechenwert * Verkauf_Item_Preis * Verkauf_Menge / Low_Voltage_Solar_Panel
- Sol = AdjustableEmitterRechenwert * Verkauf_Item_Preis * Verkauf_Menge / Solar_Panel
- end
- --Button Abfrage und Vorbereitung der Rechnung
- function itemabfrage()
- local event, button, X, Y = os.pullEvent("mouse_click")
- if X >= 02 and X <= 25 and Y == 3 then --UU_Matter
- Verkauf_Item_Preis = UU_Matter
- print("How much UU Matter is sold?")
- Verkauf_Menge = read()
- Verkauf_Menge = tonumber(Verkauf_Menge)
- berechnung1()
- elseif X >= 02 and X <= 25 and Y == 5 then --Ferrouse_Ore
- Verkauf_Item_Preis = Ferrouse_Ore
- print("How much Ferrouse Ore is sold?")
- Verkauf_Menge = read()
- Verkauf_Menge = tonumber(Verkauf_Menge)
- berechnung1()
- elseif X >= 02 and X <= 25 and Y == 7 then --Shiny_Ingot
- Verkauf_Item_Preis = Shiny_Ingot
- print("How much Shiny Ingot is sold?")
- Verkauf_Menge = read()
- Verkauf_Menge = tonumber(Verkauf_Menge)
- berechnung1()
- elseif X >= 02 and X <= 25 and Y == 9 then --Azure_Dust
- Verkauf_Item_Preis = Azure_Dust
- print("How much Azure Dust is sold?")
- Verkauf_Menge = read()
- Verkauf_Menge = tonumber(Verkauf_Menge)
- berechnung1()
- elseif X >= 02 and X <= 25 and Y == 11 then --Amaranthine_Dust
- Verkauf_Item_Preis = Amaranthine_Dust
- print("How much Amaranthine Dust is sold?")
- Verkauf_Menge = read()
- Verkauf_Menge = tonumber(Verkauf_Menge)
- berechnung1()
- elseif X >= 02 and X <= 25 and Y == 13 then --Iridescent_Dust
- Verkauf_Item_Preis = Iridescent_Dust
- print("How much Iridescent Dust is sold?")
- Verkauf_Menge = read()
- Verkauf_Menge = tonumber(Verkauf_Menge)
- berechnung1()
- elseif X >= 02 and X <= 25 and Y == 15 then --Wither_Skull
- Verkauf_Item_Preis = Wither_Skull
- print("How many Wither skulls are sold?")
- Verkauf_Menge = read()
- Verkauf_Menge = tonumber(Verkauf_Menge)
- berechnung1()
- elseif X >= 27 and X <= 50 and Y == 03 then --Nether_Star
- Verkauf_Item_Preis = Nether_Star
- print("How many Nether Stars are sold?")
- Verkauf_Menge = read()
- Verkauf_Menge = tonumber(Verkauf_Menge)
- AE = AdjustableEmitterRechenwert * 32000 * Verkauf_Menge / Adjustable_Emitter
- HV = AdjustableEmitterRechenwert * 32000 * Verkauf_Menge / High_Voltage_Solar_Panel
- MV = AdjustableEmitterRechenwert * 32000 * Verkauf_Menge / Medium_Voltage_Solar_Panel
- LV = AdjustableEmitterRechenwert * 32000 * Verkauf_Menge / Low_Voltage_Solar_Panel
- Sol = AdjustableEmitterRechenwert * 32000 * Verkauf_Menge / Solar_Panel
- elseif X >= 27 and X <= 50 and Y == 05 then --Shard_of_Minium
- Verkauf_Item_Preis = Shard_of_Minium
- print("How much Shard of Minium is sold?")
- Verkauf_Menge = read()
- Verkauf_Menge = tonumber(Verkauf_Menge)
- AE = AdjustableEmitterRechenwert * 30 * Verkauf_Menge / Adjustable_Emitter
- HV = AdjustableEmitterRechenwert * 30 * Verkauf_Menge / High_Voltage_Solar_Panel
- MV = AdjustableEmitterRechenwert * 30 * Verkauf_Menge / Medium_Voltage_Solar_Panel
- LV = AdjustableEmitterRechenwert * 30 * Verkauf_Menge / Low_Voltage_Solar_Panel
- Sol = AdjustableEmitterRechenwert * 30 * Verkauf_Menge / Solar_Panel
- elseif X >= 27 and X <= 50 and Y == 07 then --Quartz_Crystal
- Verkauf_Item_Preis = Quartz_Crystal
- print("How much Quartz Crystal is sold?")
- Verkauf_Menge = read()
- Verkauf_Menge = tonumber(Verkauf_Menge)
- berechnung1()
- elseif X >= 27 and X <= 50 and Y == 09 then --Lead_Ingot
- Verkauf_Item_Preis = Lead_Ingot
- print("How much Lead Ingot is sold?")
- Verkauf_Menge = read()
- Verkauf_Menge = tonumber(Verkauf_Menge)
- berechnung1()
- else
- print(" ")
- end
- end
- itemabfrage()
- function ausgabe()
- msg(01,01,05,16,"calculation of equivalents:")
- msg(01,02,05,16,"~~~~~~~~~~~~~~~~~~~~~~~~~~~")
- term.setTextColor(colors.lightGray)
- term.setCursorPos(01,05)
- print(" Adjustable Emitter: "..AE)
- print(" ")
- print(" High Voltage Solar Panels: "..HV)
- print(" ")
- print(" Medium Voltage Solar Panels: "..MV)
- print(" ")
- print(" Low Voltage Solar Panels: "..LV)
- print(" ")
- print(" Solar Panels: "..Sol)
- end
- --Ausgabe berechneter Mengen
- term.setCursorPos(1,1)
- term.setBackgroundColor(colors.black)
- term.clear()
- ausgabe()
- --Programm neustarten )
- msg(01,17,16,06," ")
- msg(01,18,16,06," click here to start a new calculation ")
- msg(01,19,16,06," ")
- local event, button, X, Y = os.pullEvent("mouse_click")
- if X >= 01 and X <= 51 and Y >= 17 and Y <= 19 then --restart
- os.reboot()
- else
- ausgabe()
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement