Guest User

improved communicator

a guest
Aug 8th, 2019
162
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /**
  2.  * [{ letter: 'A', morse: '.-' }, { letter: 'B', morse: '-...' }, { letter: 'C', morse: '-.-.' }, { letter: 'D', morse: '-..' }, { letter: 'E', morse: '.' }, { letter: 'F', morse: '..-.' }, { letter: 'G', morse: '--.' }, { letter: 'H', morse: '....' }, { letter: 'I', morse: '..' }, { letter: 'J', morse: '.---' }, { letter: 'K', morse: '-.-' }, { letter: 'L', morse: '.-..' }, { letter: 'M', morse: '--' }, { letter: 'N', morse: '-.' }, { letter: 'O', morse: '---' }, { letter: 'P', morse: '.--.' }, { letter: 'Q', morse: '--.-' }, { letter: 'R', morse: '.-.' }, { letter: 'S', morse: '...' }, { letter: 'T', morse: '-' }, { letter: 'U', morse: '..-' }, { letter: 'V', morse: '...-' }, { letter: 'W', morse: '.--' }, { letter: 'X', morse: '-..-' }, { letter: 'Y', morse: '-.--' }, { letter: 'Z', morse: '--..' },
  3.  */
  4. let morseCode = [ { letter: 'A', morse: '.-' }, { letter: 'B', morse: '-...' }, { letter: 'C', morse: '-.-.' }, { letter: 'D', morse: '-..' }, { letter: 'E', morse: '.' }, { letter: 'F', morse: '..-.' }, { letter: 'G', morse: '--.' }, { letter: 'H', morse: '....' }, { letter: 'I', morse: '..' }, { letter: 'J', morse: '.---' }, { letter: 'K', morse: '-.-' }, { letter: 'L', morse: '.-..' }, { letter: 'M', morse: '--' }, { letter: 'N', morse: '-.' }, { letter: 'O', morse: '---' }, { letter: 'P', morse: '.--.' }, { letter: 'Q', morse: '--.-' }, { letter: 'R', morse: '.-.' }, { letter: 'S', morse: '...' }, { letter: 'T', morse: '-' }, { letter: 'U', morse: '..-' }, { letter: 'V', morse: '...-' }, { letter: 'W', morse: '.--' }, { letter: 'X', morse: '-..-' }, { letter: 'Y', morse: '-.--' }, { letter: 'Z', morse: '--..' } ]
  5. radio.onReceivedNumber(function (receivedNumber) {
  6.     text_letter = "?"
  7.     if (receivedNumber == 1) {
  8.         letter = "" + letter + "-"
  9.     } else if (receivedNumber == 2) {
  10.         morseCode.forEach(function (morseLetter) {
  11.             if (morseLetter.morse == letter) {
  12.                 text_letter = morseLetter.letter
  13.             }
  14.         })
  15.         letter = ""
  16.         basic.showString(text_letter)
  17.         basic.pause(250)
  18.         basic.clearScreen()
  19.     } else if (receivedNumber == 3) {
  20.         basic.showLeds(`
  21.             # # # # #
  22.             # # # # #
  23.             # # # # #
  24.             # # # # #
  25.             # # # # #
  26.             `)
  27.         basic.pause(250)
  28.         basic.clearScreen()
  29.     } else {
  30.         letter = "" + letter + "."
  31.     }
  32. })
  33. input.onButtonPressed(Button.B, function () {
  34.     bPresses += 1
  35.     input_b += 1
  36.     lastBPress = clock
  37. })
  38. input.onButtonPressed(Button.AB, function () {
  39.     // if (input_a == passcode_c && input_b == passcode_d)
  40.     // { group = 4 input_a = 0 input_b = 0 } else { if
  41.     // (input_a == passcode_a && input_b == passcode_b) {
  42.     // group = 5 input_a = 0 input_b = 0 } else { input_a
  43.     // = 0 input_b = 0 if (group < 3) { group += 1 } else
  44.     // { group = 1 } } }
  45.     group = input_a * 10 + input_b
  46.     input_a = 0
  47.     input_b = 0
  48.     radio.setGroup(group)
  49.     radio.sendString("A")
  50.     basic.showNumber(group)
  51.     basic.pause(100)
  52.     basic.clearScreen()
  53. })
  54. input.onButtonPressed(Button.A, function () {
  55.     aPresses += 1
  56.     input_a += 1
  57.     lastAPress = clock
  58. })
  59. radio.onReceivedString(function (receivedString) {
  60.     basic.showString(receivedString)
  61.     basic.pause(100)
  62.     basic.clearScreen()
  63. })
  64. let lastAPress = 0
  65. let aPresses = 0
  66. let clock = 0
  67. let lastBPress = 0
  68. let bPresses = 0
  69. let text_letter = ""
  70. let group = 0
  71. let input_b = 0
  72. let input_a = 0
  73. let letter = ""
  74. let passcode_d = 0
  75. letter = ""
  76. input_a = 0
  77. input_b = 0
  78. let passcode_a = 1
  79. let passcode_b = 2
  80. let passcode_c = 3
  81. passcode_d = 7
  82. group = 1
  83. radio.setGroup(1)
  84. radio.sendString("A")
  85. basic.showNumber(group)
  86. basic.pause(100)
  87. basic.clearScreen()
  88. basic.forever(function () {
  89.     if (aPresses == 1) {
  90.         if (clock - lastAPress > 3) {
  91.             radio.sendNumber(0)
  92.             aPresses = 0
  93.         }
  94.     } else if (aPresses == 2) {
  95.         radio.sendNumber(2)
  96.         aPresses = 0
  97.     }
  98.     if (bPresses == 1) {
  99.         if (clock - lastBPress > 3) {
  100.             radio.sendNumber(1)
  101.             bPresses = 0
  102.         }
  103.     } else if (bPresses == 2) {
  104.         radio.sendNumber(3)
  105.         bPresses = 0
  106.     }
  107.     clock += 1
  108.     basic.pause(100)
  109. })
Advertisement
Add Comment
Please, Sign In to add comment