This version also backports the Help API and help programs from 1.21 if you are using CC 1.2. lots of changes, including a new Redworks API. As Dan200's requested, the startup file that gets overridden. If your on 1.2 you will need to override the help files need that was left out of CC 1.2. Users on CC 1.21 don't need to, the help files are duplicates of Dan200's CC 1.21 release. the only file edited by Redworks now, is the lua/rom/startup file. Enjoy :smile.gif: A simple use of of one of our functions in redworksAPI.
function showWindow(x,y,w,h,title,text)
The syntax for the pic above used is: redworks.showWindow(5,5,15,10,"test","this is a test")
Hi,I am really not good at this and i dont know where to ask my question. I want my computer to do something but i dont know how to do it. I want to when i get to my computer, there will be some choices and when i click on one of the choices, it will say something... Like a directory if you know what i mean... I have some rooms with passwords and i want to create a computer with all the rooms with their passwords... Just clcik on the room you want and you get the password... I am sorry if i am out of topic but please answer me with what i need to do. Thanks
I needed means to get from floor to floor in my modded MC world, so I build an elevator using an IC2 magnetizer with sticky pistons on each floor. I was using wireless redstone and RedPower logic gates to control the thing, but it was getting complex so I installed ComputerCraft. I wrote a program for a multi-floor elevator. I could remove the RS latches on the output side, but haven't gotten around to it.
The Code:
-- Digifarious's IC2 Magnetizer Elevator Program
-- Uses ComputerCraft 1.2, RedPower 2.0pr4, & IndustrialCraft2 v1.43
-- V1.2
local function floorselection(rnum, rname, tnum, tname)
-- Returns: success, remainopenfor, message, output1, output2, output3, output4, output5, output6, output7
if rname=="yellow" then return true, 1.2, "Engine Room -> Mineshaft Down", "yellow" end
if rname=="lightblue" then return true, 1.2, "Engine Room -> Mass Fab Room", "lightblue" end
if rname=="red" then return true, 1.3, "Engine Room -> Machine Shop", "lightblue", "red" end
if rname=="green" then return true, 1.4, "Engine Room -> Storage Area", "lightblue", "red", "green" end
if rname=="blue" then return true, 1.5, "Engine Room -> Nether Portal", "lightblue", "red", "green", "blue" end
if rname=="white" then return true, 1.2, "Mass Fab Room -> Machine Shop", "red" end
return false
end
local function colorinfo(color)
if color=="red" or color==16384 then return colors.red,"red" end
if color=="white" or color==1 then return colors.white,"white" end
if color=="blue" or color==2048 then return colors.blue,"blue" end
if color=="green" or color==8192 then return colors.green,"green" end
if color=="pink" or color==64 then return colors.pink,"pink" end
if color=="orange" or color==2 then return colors.orange,"orange" end
if color=="magenta" or color==4 then return colors.magenta,"magenta" end
if color=="lightblue" or color==8 then return 8,"lightblue" end
if color=="yellow" or color==16 then return colors.yellow,"yellow" end
if color=="lime" or color==32 then return colors.lime,"lime" end
if color=="gray" or color==128 then return colors.gray,"gray" end
if color=="lightgray" then return 0,"light gray is broken" end
if color=="cyan" or color==512 then return colors.cyan,"cyan" end
if color=="purple" or color==1024 then return colors.purple,"purple" end
if color=="brown" or color==4096 then return colors.brown,"brown" end
if color=="black" or color==32768 then return colors.black,"black" end
end
local function bundlepulse(color, side, pulselength, notifyuser)
num,colorname=colorinfo(color)
redstone.setBundledOutput(side, redstone.getBundledOutput(side)+num)
if notifyuser==true then
write(" toggling "..side.." "..colorname.." wire.")
print(newline)
end
sleep(pulselength)
redstone.setBundledOutput(side, 0)
end
local function bundletoggle(color, side, notifyuser)
num,colorname=colorinfo(color)
redstone.setBundledOutput(side, redstone.getBundledOutput(side)+num)
if notifyuser==true then
write(" toggling "..side.." "..colorname.." wire.")
print(newline)
end
end
local function resetfloor()
rs.setBundledOutput("left", colors.black)
sleep(0.1)
rs.setBundledOutput("left", 0)
end
local function retractfloors(output1, output2, output3, output4, output5, output6, output7)
if output1~=nill then bundletoggle(output1, "left", true) end
if output2~=nill then bundletoggle(output2, "left", true) end
if output3~=nill then bundletoggle(output3, "left", true) end
if output4~=nill then bundletoggle(output4, "left", true) end
if output5~=nill then bundletoggle(output5, "left", true) end
if output6~=nill then bundletoggle(output6, "left", true) end
if output7~=nill then bundletoggle(output7, "left", true) end
end
-- initialize program
shell.run("clear")
print("Elevator Control Active")
event=nill
-- on a key event we exit to shell
while event ~= "char" do
-- wait on an event
event, param = os.pullEvent()
-- redstone event occurs
if event == "redstone" then
-- read inputs
rnum,rname = colorinfo(redstone.getBundledInput("right"))
tnum,tname = colorinfo(redstone.getBundledInput("top"))
-- do stuff
success, remainopenfor, message, output1, output2, output3, output4, output5, output6, output7 = floorselection(rnum, rname, tnum, tname)
if success==true then
print(message)
retractfloors(output1, output2, output3, output4, output5, output6, output7)
sleep(remainopenfor)
resetfloor()
sleep(0.3)
end
end
-- loops until keypress ends program
end
print("Control sequence terminated.\nElevator going offline...")
The wire color code may look similar to HTxL's; I started with it.
I'm new to lua and my code needs some refactoring & critique!
To do:
1) I'd like to express the floorselection method using a hash of arrays
2) DRY up the retractfloors method.
EDITED, UPDATED TO 1.2 customlock
Created By Arongy
Version 1.2 Description
I know there is already a few of those kind of lock script but i think it's never wrong to have the choice!
Plus i simply tryied to make it soft and easy to customize. For those who don't know scripting.
For having it starting at the startup of the Computer, just rename it "startup" without quotes.
1.1
-Added lockdown system.
-Can be disabled aswell, you can set the lockdown time and more...
1.2
-You can disable Terminate command, or make it reboot or simply leave it terminate normally!
--Define Program Informations.
--PASSWORD
password = "password" --Set the password you want.
passsymbol = "*" --Symbol that replace the showed password. Empty it to see the password.
title = "CustomLock v1.2" --The program title at startup.
--POWERING
rsside = "back" --The computer side to be powered.
rstime = 5 --How long should it be powered (second).
--MESSAGES
enterpasstext = "Enter Password: " --The message that ask to enter a password.
grantedtext = "Access Granted!" --The message to show if the password is right.
deniedtext = "Access Denied!" --The message to show if the password is wrong.
tryleftmessage = "Tries Left: " --The message that show the tries left before a lockdown.
lockdowntext = "System Lockdown Activated!" --The lockdown message.
retrytime = 2 --Time to wait before next try, time that show the access granted or denied message (second).
--LOCKDOWN
uselockdown = true --Set true to use lockdown.
lockdowntries = 3 --Amount of available tries before lockdown.
locktime = 5 --Time to wait after lockdown (second).
--TERMINATE
TerminalMode = 0 --(0)will disable CTRL+T, (1)will reboot on CTRL+T, (2)will terminate normally
function os.pullEvent()
local event, p1, p2, p3, p4, p5 = os.pullEventRaw()
if event == "terminate" then
if TerminalMode == 0 then
end
if TerminalMode == 1 then
os.reboot()
end
if TerminalMode == 2 then
error( "Terminated" )
end
end
return event, p1, p2, p3, p4, p5
end
--Program
function lockdown()
term.clear()
term.setCursorPos(1,1)
print(lockdowntext)
sleep(locktime)
os.shutdown()
end
if uselockdown == false then
lockdowntries = 1
end
while lockdowntries > 0 do
term.clear()
term.setCursorPos(1,1)
print(title)
if uselockdown == true then
print(tryleftmessage..""..lockdowntries)
end
write(enterpasstext)
xpassword = read(passsymbol)
if xpassword == password then
rs.setOutput(rsside,true)
term.clear()
term.setCursorPos(1,1)
print(grantedtext)
sleep(rstime)
os.shutdown()
else
term.clear()
term.setCursorPos(1,1)
print(deniedtext)
sleep(retrytime)
if uselockdown == true then
lockdowntries = lockdowntries - 1
end
end
end
if uselockdown == true then
if lockdowntries == 0 then
lockdown()
end
end
----------------------------------------------------------------------------
EDITED, UPDATED TO 1.2 customswitch
Created By Arongy
Version 1.2 Description
I made a simple program that transform a computer into a switch.
Only by pressing enter you switch on/off the restone signal.
I suggest you to take a look at the Glasslight from Djoslin's mod. ->Glasslight
1.2
-You can disable Terminate command, or make it reboot or simply leave it terminate normally!
--Switch
title = "CustomSwitch 1.2" --Title of program, you choose.
status = 0 --Dont change, off by default.
side = "back" --The side of the computer that will send power!
statustext = "Light is currently " --Can be something else than a light, you choose the use!
turnontext = "Press enter to turn On!" --You can customise aswell!
turnofftext = "Press enter to turn Off!" --You can customise aswell!
ontext = "On" --you know
offtext = "Off" --you know
--TERMINATE
TerminalMode = 0 --(0)will disable CTRL+T, (1)will reboot on CTRL+T, (2)will terminate normally
function os.pullEvent()
local event, p1, p2, p3, p4, p5 = os.pullEventRaw()
if event == "terminate" then
if TerminalMode == 0 then
end
if TerminalMode == 1 then
os.reboot()
end
if TerminalMode == 2 then
error( "Terminated" )
end
end
return event, p1, p2, p3, p4, p5
end
--Program
function switchstatus(s)
if s == 0 then
return offtext
else
return ontext
end
end
while true do
term.clear()
term.setCursorPos(1,1)
if title > "" then
print(title)
end
print(statustext..switchstatus(status))
if status == 0 then
print(turnontext)
else
print(turnofftext)
end
read(" ")
if status == 0 then
status = 1
rs.setOutput(side, true)
else
status = 0
rs.setOutput(side, false)
end
end
You can use, modify, distribute aswell this codes.
I hope I can help somes!
i'm trying to make a while loop that switches on and off the engines and coloured lamps ontop and at the sides
something like this:
but it doesn't work
i know its something to do with the break line
since the loop breaks
can someone explain to how to do this please?
Try:
-- initialize program
shell.run("clear")
print("Redstone Control Active")
event=nill
-- on a key event we exit to shell
while event ~= "char" do
-- wait on an event
event, param = os.pullEvent()
-- redstone event occurs
if event == "redstone" then
-- read inputs
bottomrs = redstone.getInput("bottom")
-- do stuff
if bottomrs == true then
print ("Engines On!")
redstone.setOutput ("top", false)
redstone.setOutput ("back", false)
redstone.setOutput ("left", true)
redstone.setOutput ("right", true)
else
print ("Engines Off!")
redstone.setOutput ("top", true)
redstone.setOutput ("back", true)
redstone.setOutput ("left", false)
redstone.setOutput ("right", false)
end
end
-- loops until keypress ends program
end
Can Someone make a code where you type in something to hack the computer and an array of numbers and letters appear for about 10 seconds until it says something and then it activates redstone :smile.gif:
Name of program: Fallout 3/NV style 'hackable' terminal Functions: opening doors, with a lot of work. Download link/Copy of code:http://kyoshiku.net/fo3_term.rar A description (Optional):
Terminal to open a single door, in Fallout 3 style.
Top output goes to the door to open it, bottom input for the reset(from a secure room would be good.)
Important! all files must be in the local computer running the program. You can't just dump this one into /roms/programs/. Put them all into the /saves/worldname/computer/#/ for the computer(s) you want it in.
I need some help if there is any takers. I want to make 11 disc drives in my basement and I want a single pc to access them. The idea is to make a jukebox for a MP server in which the players via their own MC PC can access the shared music library once we get some networking going.
1.I cant get any reaction from disk drives unless they are attached directly to the computer?
2.Do i need to build 11 whole computers with drive and network those to a single main computer?
3.What I need to do via the network is to use "DJ" on whatever drive or computer that holds the track i want to listen to?
4.Is the sound source (where in the world the music plays) the drive or the computer that access it?
5.If it the drive itself. Would it be possible to change it?
6.Is there a way to store the audio files from the records on the computer? (why not? :tongue.gif:)
7.I can only play 1 record at a time even if I try to run different records at different computer. Is that 1 per player or 1 per world?
cheers
You can only play one disc per world. And i seen a video showing how to make a jukebox. Jukebox With Redpower 2
if password == input then
print 'Access Granted!'
else
if pass ~= input then
print 'Access Denied!'
sleep(1)
os.reboot()
end
end
The problem with your script is that I can do CTRL+ T to skip your programs, so it doesnt protect really.
try adding this at the top of your code:
function os.pullEvent()
local event, p1, p2, p3, p4, p5 = os.pullEventRaw()
if event == "terminate" then
os.reboot() -- Remove this for do not reboot on Ctrl+T
end
return event, p1, p2, p3, p4, p5
end
This mod is just really awesome, but I got a problem:
I've made a program that's an infinite loop. It's something like this:
while true do
print("password: ")
pass = read()
if (password matches then door opens, if not dispensers shoot etc.)
end
end
Now to the problem: I want to edit my code. How can I do that? The program is never terminating itself as it's an infinite loop, and I cannot find any other way to exit the program than destroying the machine, which will delete my program :/
This mod is really really awesome, and it'll be really good if anyone could help me fix my problem :sad.gif:
Not sure if you solved the problem yet, but you can always push and hold ctrl T for 1 second at any time during a program and it will terminate it and allow you to go back to the CraftOS for editing or whatever. Hope that helps!
Is there a way to make it automatically pop up (without having to type the program name) and also not just send out a redstone signal but have sort of the fallout style menu?
ex
Bla bla bla wall of text
Welcome USER
-----------------------------------
-Locks
>when you type Locks it brings up a menu<
-Door1
or maybe
-Safe1
I don't know. I can't find a good place to learn lua or I'd try myself.
To have a program run when the computer is first turned on, just name the program startup. Im sure there is probably another way but that works also.
To do what you describe above, you should use functions and a loop for the main menu. I recently learned how to do all of this (my question was more or less identical to yours), so bear with me here.
function profile()
shell.run ("clear")
print "Loading profile"
sleep(1)
print " "
textutils.slowPrint ("...............", 7)
shell.run ("clear")
print "---User Profile---"
print " "
print "Name: Harold Fisher"
print " "
print "Age: 43"
print " "
print "Press Enter for main menu"
read()
shell.run ("clear")
end
function storage()
shell.run ("clear")
print "Loading Secure Storage"
sleep(1)
textutils.slowPrint ("...............", 7)
shell.run ("clear")
print "---Storage Lock---"
print " "
write "Enter password: "
local input = read()
if input == "maps" then
print "Access granted"
sleep(1)
rs.setOutput ("bottom", true)
print " "
print "Press Enter for main menu"
read()
shell.run ("clear")
mainLoop()
end
if input ~= "maps" then
print " "
rs.setOutput ("bottom", false)
print "Access denied"
print " "
print "Press Enter for main menu"
read()
shell.run ("clear")
mainLoop()
end
end
function quit()
shell.run ("clear")
print "Shutting down"
sleep(1)
textutils.slowPrint ("...............", 7)
os.shutdown()
end
function mainLoop()
repeat
print "Please enter a number to proceed"
print "1. Profile"
print "2. Storage"
print " "
print "Type quit to end"
local input = read()
shell.run ("clear")
if input == "1" then profile() end
if input == "2" then storage() end
if input == "quit" then quit() end
until input == "quit"
end
mainLoop()
Notice that each "thing" I want the program to do has its own function, with a beginning and an end. It all ties to function mainLoop(), which is set to repeat until they enter 1, 2, or quit. At the end of each function, the program waits for user to press enter before sending them back to main menu. To customize it, just create new functions with unique names, and then add in a print line about it into mainLoop(), then add an if line so the computer knows what do do if it is selected. The Fallout styling, I'm too much of a newb to help there lol.
So lets say you made a function called doorOne(). Define exactly what you want function doorOne() to do, then add a menu option for it. So it would say 1 for profile, 2 for storage, 3 for door unlock. That tells the user if they press 3 it will send them to door lock, but the computer still has no idea what to do, so we need to add a line for that, which, if you look near the bottom of the code should be pretty obvious. If input == "3" then doorOne() end. This is the first program I ever made from scratch, and I cut out alot of it and changed menu numbers around to shorten it, so sorry if theres a typo! Also, feel free to do with it what you wish, but please give me credit if you share it. Hope that helps!
ugh, I'm trying to make a program to do the following.
detect a redstone (or redpower) signal coming in from a side (back). And if that signal is off take a signal coming from the left (from a redpower timer) and send it right on the next full rotation.
I'd like to know how to do that. Right now i'm working with redstone commands but i'm not sure what I should be doing for it to accept both redstone and redpower signals. Or how to transfer a signal.
this is a little snip of what I have so far, any help is appreciated.
onpulse1 = redstone.getInput("left")
pulseX = redstone.getInput("left")*2
redstone.getInput("back") then
if true sleep (20)
else
redstone.getInput("left") then
sleep (pulseX)
redstone.setOutput("right", onpulse1))
Hello. This is my first Computercraft program and my first time using Lua.
What it does is take a redpower bundled wire input from an external 10-button keypad and displays the number of the button on an external 7 segment display connected via redpower bundled wire.
You'll have to build the keypad and display yourself and wire it up with redpower. You can change the colors in "button" and "segment" at the top if you need to. You can also change which side of the terminal the inputs and outputs are.
The button order is actually 1, 2, 3, 4, 5, 6, 7, 8, 9, 0
Important - Don't mix any other signals on the input line even on colors not used in this program or it may cause problems
local button = {colors.white,
colors.orange,
colors.magenta,
colors.lightBlue,
colors.yellow,
colors.lime,
colors.pink,
colors.gray,
colors.lightGray,
colors.cyan}
local segment = {top = colors.white,
tl = colors.orange,
tr = colors.magenta,
mid = colors.lightBlue,
bl = colors.yellow,
br = colors.lime,
bot = colors.pink}
local endprogram = false
local keypadin = "left"
local segOut = "right"
local getNumbers = function(redbuttons)
local buttondown ={}
for x,y in ipairs(button) do
if colors.test(redbuttons, y) then
table.insert(buttondown, x)
end
end
if # buttondown == 0 then buttondown = nil end
return buttondown
end
local setSeg = function(digit)
if digit == 0 then segvalue = 0 end
if digit == 10 then
segvalue = colors.combine(segment.top, segment.tl, segment.tr, segment.bl, segment.br, segment.bot)
end
if digit == 1 then
segvalue = colors.combine(segment.tr, segment.br)
end
if digit == 2 then
segvalue = colors.combine(segment.top, segment.tr, segment.mid, segment.bl, segment.bot)
end
if digit == 3 then
segvalue = colors.combine(segment.top, segment.tr, segment.mid, segment.br, segment.bot)
end
if digit == 4 then
segvalue = colors.combine(segment.tl, segment.tr, segment.mid, segment.br)
end
if digit == 5 then
segvalue = colors.combine(segment.top, segment.tl, segment.mid, segment.br, segment.bot)
end
if digit == 6 then
segvalue = colors.combine(segment.top, segment.tl, segment.mid, segment.bl, segment.br, segment.bot)
end
if digit == 7 then
segvalue = colors.combine(segment.top, segment.tr, segment.br)
end
if digit == 8 then
segvalue = colors.combine(segment.top, segment.tl, segment.tr, segment.mid, segment.bl, segment.br, segment.bot)
end
if digit == 9 then
segvalue = colors.combine(segment.top, segment.tl, segment.tr, segment.mid, segment.br, segment.bot)
end
rs.setBundledOutput(segOut, segvalue)
end
print "Hit 'Q' key to abort program"
while endprogram == false do
local keypad = rs.getBundledInput(keypadin)
if keypad > 0 then
setSeg(getNumbers(keypad)[1])
else
setSeg(0)
end
os.sleep(0.1)
local evType, evValue = os.pullEvent()
if evType == "key" then
if evValue == 16 then endprogram = true end
end
end
I'm planning adding other features in the future like binary I/O for other computers, multiple displays and a buffer.
Let me know what you think.
The problem with your script is that I can do CTRL+ T to skip your programs, so it doesnt protect really.
try adding this at the top of your code:
function os.pullEvent()
local event, p1, p2, p3, p4, p5 = os.pullEventRaw()
if event == "terminate" then
os.reboot() -- Remove this for do not reboot on Ctrl+T
end
return event, p1, p2, p3, p4, p5
end
This is extremely helpful! But I'm curious, once added to my scripts, will I ever be able to access them for editing without having to go through too much trouble? Hmm I guess I could just slap a disk drive next to any computer and toss a blank disk in to keep the program from auto running... but is there an easier way? Or even better, a way to alter ctrl T to something unique?
This programs for chatting and messaging they all look awesome, but i can't get the connection right. i'm trying everything but i simply cannot do it. Can you guys post pics of the connections between the pc's? which material do you use, is it just redstone dust?
Redworks 1.1 Download
This version also backports the Help API and help programs from 1.21 if you are using CC 1.2.
lots of changes, including a new Redworks API. As Dan200's requested, the startup file that gets overridden. If your on 1.2 you will need to override the help files need that was left out of CC 1.2. Users on CC 1.21 don't need to, the help files are duplicates of Dan200's CC 1.21 release. the only file edited by Redworks now, is the lua/rom/startup file. Enjoy :smile.gif: A simple use of of one of our functions in redworksAPI.
function showWindow(x,y,w,h,title,text)
The syntax for the pic above used is: redworks.showWindow(5,5,15,10,"test","this is a test")
The Code:
The wire color code may look similar to HTxL's; I started with it.
I'm new to lua and my code needs some refactoring & critique!
To do:
1) I'd like to express the floorselection method using a hash of arrays
2) DRY up the retractfloors method.
customlock
Created By Arongy
Version 1.2
Description
I know there is already a few of those kind of lock script but i think it's never wrong to have the choice!
Plus i simply tryied to make it soft and easy to customize. For those who don't know scripting.
For having it starting at the startup of the Computer, just rename it "startup" without quotes.
1.1
-Added lockdown system.
-Can be disabled aswell, you can set the lockdown time and more...
1.2
-You can disable Terminate command, or make it reboot or simply leave it terminate normally!
----------------------------------------------------------------------------
EDITED, UPDATED TO 1.2
customswitch
Created By Arongy
Version 1.2
Description
I made a simple program that transform a computer into a switch.
Only by pressing enter you switch on/off the restone signal.
I suggest you to take a look at the Glasslight from Djoslin's mod.
->Glasslight
1.2
-You can disable Terminate command, or make it reboot or simply leave it terminate normally!
You can use, modify, distribute aswell this codes.
I hope I can help somes!
Visit: cc-get.djranger.com
Try:
Untested, let me know if it works!
[Reply] Thank you! Well programmed!
-
Thanks everyone! Awesome library!
http://www.computercraft.info/forums2/index.php/topic/11-redworks/
go to youtube.com and search for qthree3 and then watch his latest video and read the description.
can you make a master password for it?
You can only play one disc per world. And i seen a video showing how to make a jukebox.
Jukebox With Redpower 2
The problem with your script is that I can do CTRL+ T to skip your programs, so it doesnt protect really.
try adding this at the top of your code:
Not sure if you solved the problem yet, but you can always push and hold ctrl T for 1 second at any time during a program and it will terminate it and allow you to go back to the CraftOS for editing or whatever. Hope that helps!
To have a program run when the computer is first turned on, just name the program startup. Im sure there is probably another way but that works also.
To do what you describe above, you should use functions and a loop for the main menu. I recently learned how to do all of this (my question was more or less identical to yours), so bear with me here.
So lets say you made a function called doorOne(). Define exactly what you want function doorOne() to do, then add a menu option for it. So it would say 1 for profile, 2 for storage, 3 for door unlock. That tells the user if they press 3 it will send them to door lock, but the computer still has no idea what to do, so we need to add a line for that, which, if you look near the bottom of the code should be pretty obvious. If input == "3" then doorOne() end. This is the first program I ever made from scratch, and I cut out alot of it and changed menu numbers around to shorten it, so sorry if theres a typo! Also, feel free to do with it what you wish, but please give me credit if you share it. Hope that helps!
detect a redstone (or redpower) signal coming in from a side (back). And if that signal is off take a signal coming from the left (from a redpower timer) and send it right on the next full rotation.
I'd like to know how to do that. Right now i'm working with redstone commands but i'm not sure what I should be doing for it to accept both redstone and redpower signals. Or how to transfer a signal.
this is a little snip of what I have so far, any help is appreciated.
thanks!
What it does is take a redpower bundled wire input from an external 10-button keypad and displays the number of the button on an external 7 segment display connected via redpower bundled wire.
You'll have to build the keypad and display yourself and wire it up with redpower. You can change the colors in "button" and "segment" at the top if you need to. You can also change which side of the terminal the inputs and outputs are.
The button order is actually 1, 2, 3, 4, 5, 6, 7, 8, 9, 0
Important - Don't mix any other signals on the input line even on colors not used in this program or it may cause problems
I'm planning adding other features in the future like binary I/O for other computers, multiple displays and a buffer.
Let me know what you think.
Better dungeon loot, bones in dirt, Witch hut loot, ect
This is extremely helpful! But I'm curious, once added to my scripts, will I ever be able to access them for editing without having to go through too much trouble? Hmm I guess I could just slap a disk drive next to any computer and toss a blank disk in to keep the program from auto running... but is there an easier way? Or even better, a way to alter ctrl T to something unique?