-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsource.js
More file actions
117 lines (115 loc) · 2.17 KB
/
Copy pathsource.js
File metadata and controls
117 lines (115 loc) · 2.17 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
// keep in mind microbit does some shit to the code when u switch back and forth, so if shit confuses you, don't blame me.
input.onButtonPressed(Button.A, function () {
if (started == false) {
started = true
basic.showLeds(`
. . . . .
. . . . .
. . . . .
. . . . .
# . # . #
`)
} else {
currentmsg = "" + currentmsg + "A"
}
})
input.onButtonPressed(Button.AB, function () {
if (started == true) {
if (currentmsg == "") {
radio.sendString(translated)
translated = ""
basic.showIcon(IconNames.Yes)
music.play(music.stringPlayable("C - F - C5 - - - ", 1000), music.PlaybackMode.UntilDone)
started = false
basic.pause(2000)
basic.clearScreen()
} else {
translated = "" + translated + alphabet[morse.indexOf(currentmsg)]
basic.showString("" + (alphabet[morse.indexOf(currentmsg)]))
music.play(music.stringPlayable("C5 - - - - - - - ", 1000), music.PlaybackMode.UntilDone)
currentmsg = ""
}
}
})
radio.onReceivedString(function (receivedString) {
basic.showLeds(`
# # # # #
# # . # #
# . # . #
# . . . #
# # # # #
`)
music.play(music.stringPlayable("F - C - G A C5 - ", 1000), music.PlaybackMode.UntilDone)
basic.showString(" " + receivedString)
})
input.onButtonPressed(Button.B, function () {
if (started == true) {
currentmsg = "" + currentmsg + "B"
}
})
let translated = ""
let currentmsg = ""
let started = false
let alphabet: string[] = []
let morse: string[] = []
radio.setGroup(1)
morse = [
"AB",
"BAAA",
"BABA",
"BAA",
"A",
"AABA",
"BBA",
"AAAA",
"AA",
"ABBB",
"BAB",
"ABAA",
"BB",
"BA",
"BBB",
"ABBA",
"BBAB",
"ABA",
"AAA",
"B",
"AAB",
"AAAB",
"ABB",
"BAAB",
"BABB",
"BBAA"
]
alphabet = [
"A",
"B",
"C",
"D",
"E",
"F",
"G",
"H",
"I",
"J",
"K",
"L",
"M",
"N",
"O",
"P",
"Q",
"R",
"S",
"T",
"U",
"V",
"W",
"X",
"Y",
"Z"
]
music.play(music.stringPlayable("C D E F G A B C5 ", 400), music.PlaybackMode.UntilDone)
basic.showString("HatIM v0.1")
basic.forever(function () {
})