Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @name
- @inputs KeyInput Reset
- @outputs Index Text:string
- @persist KeyLog:string Data:array Menu
- @trigger
- #Set menu to first
- if(first())
- {
- Menu = 0
- Index = 0
- Reset = 0
- }
- #Manual reset
- if(Reset)
- {
- Menu = 0
- Index = 0
- KeyLog = ""
- exit()
- }
- #Key Chars
- KEY_BACKSPACE = 127
- KEY_LEFTSHIFT = 154
- KEY_ENTER = 13
- KEY_NUM1 = 49
- KEY_NUM2 = 50
- KEY_NUM3 = 51
- #Delete character
- if(KeyInput == KEY_BACKSPACE)
- {
- KeyLog = KeyLog:sub(1,-2)
- }
- #Append to KeyLog
- elseif(KeyInput > 0 && KeyInput != KEY_LEFTSHIFT && KeyInput != KEY_ENTER)
- {
- KeyLog += toChar(KeyInput)
- }
- #Display Menu(s)
- MT = ""
- MT += "-- Menu Options --\n"
- MT += "- Addr " + Index + " -\n\n"
- #0 - No menu selected
- if(Menu == 0)
- {
- MT += "[1] Change Address\n"
- MT += "[2] Write data\n"
- MT += "[3] Read data\n"
- MT += "\nInput: "+KeyLog+"\n"
- #User has selected 'Change Address'
- if(KeyLog == "1" && KeyInput == KEY_ENTER)
- {
- Menu = 1
- KeyLog = ""
- exit()
- }
- #User has selected 'Write Data'
- if(KeyLog == "2" && KeyInput == KEY_ENTER)
- {
- Menu = 2
- KeyLog = ""
- exit()
- }
- #User has selected 'Write Data'
- if(KeyLog == "3" && KeyInput == KEY_ENTER)
- {
- Menu = 3
- KeyLog = ""
- exit()
- }
- }
- #1 - Change their address
- if(Menu == 1)
- {
- MT += "Enter New Address (1 - 32):\n"
- MT += KeyLog + "\n"
- }
- #User has selected their address
- if(KeyInput == KEY_ENTER)
- {
- Index = KeyLog:toNumber()
- KeyLog = ""
- Menu = 0
- exit()
- }
- #2 - Write to address
- if(Menu == 2)
- {
- MT += "Type 'exit' to return\n"
- MT += "Press enter to save input\n"
- MT += "Input:\n" + KeyLog
- if(KeyInput == KEY_ENTER)
- {
- if(KeyLog != "exit")
- {
- Data:setString(Index, KeyLog)
- }
- KeyLog = ""
- Menu = 0
- exit()
- }
- }
- if(Menu == 3)
- {
- MT += "Address " + Index + " returned:\n" + Data:string(Index)
- if(KeyInput == KEY_ENTER)
- {
- Menu = 0
- KeyLog = ""
- exit()
- }
- }
- #Write menu
- Text = MT
- exit()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement