let YES_COUNT = 0 let ANS = 0 let QUIZ = 0 let MAX = 0 let YESNO = 0 let STAGE = 1 let NUM = 0 let COUNT = 0 let BTN = 0 let POINT = 0 let NSTAGE = 0 basic.forever(function () { if (STAGE == 0 && BTN == 1) { music.beginMelody(music.builtInMelody(Melodies.BaDing), MelodyOptions.Once) STAGE = 1 MAX = 20 COUNT = 0 POINT = 0 YES_COUNT = 0 QUIZ = 0 YESNO = 0 BTN = 0 basic.showString("STA:") basic.showNumber(STAGE) } else if (QUIZ == 0 && BTN == 0 && STAGE >= 1) { COUNT += 1 QUEST2() } else if ((BTN == 1 || BTN == 2) && QUIZ == 1) { CHECK2() } else if (BTN == 3 && NSTAGE == 0) { music.beginMelody(music.builtInMelody(Melodies.BaDing), MelodyOptions.Once) STAGE = 0 BTN = 0 OPN_GR2() } else if (QUIZ == 0 && BTN == 2) { music.playTone(523, music.beat(BeatFraction.Eighth)) NSTAGE += 1 if (NSTAGE > 20) { NSTAGE = 1 } basic.showNumber(NSTAGE) BTN = 0 } else if (BTN == 3 && NSTAGE > 0) { STAGE = NSTAGE NSTAGE = 0 BTN = 0 QUIZ = 0 NEW_STAGE() } }) input.onButtonPressed(Button.A, function () { BTN = 1 }) input.onButtonPressed(Button.B, function () { BTN = 2 }) input.onButtonPressed(Button.AB, function () { BTN = 3 }) function DOT2() { music.setTempo(180) music.playTone(659, music.beat(BeatFraction.Quarter)) SPA2() } function SPA2() { music.setTempo(180) music.rest(music.beat(BeatFraction.Quarter)) } function DASH2() { music.setTempo(80) music.playTone(659, music.beat(BeatFraction.Quarter)) SPA2() } function OPN_GR2() { basic.showIcon(IconNames.Angry) music.setTempo(80) music.playTone(131, music.beat(BeatFraction.Quarter)) music.rest(music.beat(BeatFraction.Quarter)) music.playTone(131, music.beat(BeatFraction.Quarter)) music.rest(music.beat(BeatFraction.Quarter)) music.playTone(131, music.beat(BeatFraction.Quarter)) music.rest(music.beat(BeatFraction.Quarter)) music.playTone(131, music.beat(BeatFraction.Quarter)) music.rest(music.beat(BeatFraction.Quarter)) music.playTone(131, music.beat(BeatFraction.Quarter)) music.rest(music.beat(BeatFraction.Quarter)) music.playTone(131, music.beat(BeatFraction.Quarter)) music.rest(music.beat(BeatFraction.Quarter)) music.playTone(131, music.beat(BeatFraction.Quarter)) music.rest(music.beat(BeatFraction.Quarter)) music.playTone(131, music.beat(BeatFraction.Quarter)) music.setTempo(120) music.beginMelody(music.builtInMelody(Melodies.Funk), MelodyOptions.Once) basic.showString("CW ALIEN") basic.showArrow(ArrowNames.West) basic.showArrow(ArrowNames.East) basic.showIcon(IconNames.Sad) } function QUEST2() { if (STAGE == 1 || STAGE == 2) { NUM = Math.randomRange(0, 9) } else if (STAGE == 3 || STAGE == 4) { NUM = Math.randomRange(10, 19) } else if (STAGE == 5 || STAGE == 6) { NUM = Math.randomRange(20, 29) } else if (STAGE == 7 || STAGE == 8) { NUM = Math.randomRange(30, 37) } else if (STAGE == 9 || STAGE == 10) { NUM = Math.randomRange(38, 47) } else { NUM = Math.randomRange(0, 50) } CODE2KANA2() YESNO = Math.randomRange(1, 2) if (YESNO == 2) { ANS = NUM while (NUM == ANS) { if (STAGE == 1 || STAGE == 2) { ANS = Math.randomRange(0, 9) } else if (STAGE == 3 || STAGE == 4) { ANS = Math.randomRange(10, 19) } else if (STAGE == 5 || STAGE == 6) { ANS = Math.randomRange(20, 29) } else if (STAGE == 7 || STAGE == 8) { ANS = Math.randomRange(30, 37) } else if (STAGE == 9 || STAGE == 10) { ANS = Math.randomRange(38, 47) } else { ANS = Math.randomRange(0, 50) } } NUM = ANS } CW_SND_J22() QUIZ = 1 } function CHECK2() { if (BTN == YESNO) { music.playTone(523, music.beat(BeatFraction.Eighth)) basic.showLeds(` . # # # . # . . . # # . . . # # . . . # . # # # . `) POINT += 10 YES_COUNT += 1 BTN = 0 QUIZ = 0 } else { music.playTone(131, music.beat(BeatFraction.Eighth)) basic.showLeds(` # . . . # . # . # . . . # . . . # . # . # . . . # `) POINT += -40 BTN = 0 QUIZ = 0 } if (COUNT == MAX) { if (YES_COUNT / MAX > 0.75) { basic.showString("POI:") POINT += STAGE * 1000 POINT += Math.randomRange(1, 100) * 10 basic.showNumber(POINT) STAGE += 1 NEW_STAGE() COUNT = 0 YES_COUNT = 0 } else { music.setTempo(120) music.beginMelody(music.builtInMelody(Melodies.Funeral), MelodyOptions.Once) basic.showString("Bad !") basic.showString("POI:") basic.showNumber(POINT) STAGE = 0 OPN_GR2() } BTN = 0 QUIZ = 0 } } function NEW_STAGE() { if (STAGE > 20) { music.beginMelody(music.builtInMelody(Melodies.Ode), MelodyOptions.OnceInBackground) for (let i = 0; i < 2; i++) { basic.showString("GAME CLR") basic.showString("POINT") basic.showNumber(POINT) STAGE = 0 BTN = 0 } } else { basic.showString("STA:") basic.showNumber(STAGE) if (STAGE == 2) { MAX = 30 } else if (STAGE == 3) { MAX = 20 } else if (STAGE == 4) { MAX = 30 } else if (STAGE == 5) { MAX = 20 } else if (STAGE == 6) { MAX = 30 } else if (STAGE == 7) { MAX = 20 } else if (STAGE == 8) { MAX = 30 } else if (STAGE == 9) { MAX = 20 } else if (STAGE == 10) { MAX = 30 } else if (STAGE == 11) { music.beginMelody(music.builtInMelody(Melodies.JumpUp), MelodyOptions.Once) basic.pause(3000) MAX = 10 } else if (STAGE == 12) { MAX = 20 } else if (STAGE == 13) { MAX = 20 } else if (STAGE == 14) { MAX = 30 } else if (STAGE == 15) { MAX = 30 } else if (STAGE == 16) { MAX = 30 } else if (STAGE == 17) { MAX = 30 } else if (STAGE == 18) { MAX = 40 } else if (STAGE == 19) { MAX = 45 } else if (STAGE == 20) { MAX = 50 } } } function CODE2KANA2() { if (NUM == 0) { basic.showLeds(` # # # # # . . . . # . . # # . . . # . . . # . . . `) } else if (NUM == 1) { basic.showLeds(` . . . # . . . # . . . # # . . # . # . . . . # . . `) } else if (NUM == 2) { basic.showLeds(` . . # . . # # # # # # . . . # . . . . # . . # # . `) } else if (NUM == 3) { basic.showLeds(` . . . . . . # # # . . . # . . . . # . . # # # # # `) } else if (NUM == 4) { basic.showLeds(` . . . # . # # # # # . . # # . . # . # . # . . # . `) } else if (NUM == 5) { basic.showLeds(` . . # . . # # # # # . . # . # . # . . # # . . # . `) } else if (NUM == 6) { basic.showLeds(` . . # . . # # # # # . . # . . # # # # # . . # . . `) } else if (NUM == 7) { basic.showLeds(` . . # # # . # . . # . . . . # . . . # . . # # . . `) } else if (NUM == 8) { basic.showLeds(` . # . . . . # # # # # . . # . . . . # . . . # . . `) } else if (NUM == 9) { basic.showLeds(` . . . . . . # # # # . . . . # . . . . # . # # # # `) } else if (NUM == 10) { basic.showLeds(` . # . # . # # # # # . # . # . . . . # . . . # . . `) } else if (NUM == 11) { basic.showLeds(` # # . . # . . . . # # # . . # . . . # . . # # . . `) } else if (NUM == 12) { basic.showLeds(` # # # # # . . . # . . . # . . . # . # . # . . . # `) } else if (NUM == 13) { basic.showLeds(` . # . . . # # # # # . # . . # . # . . . . # # # # `) } else if (NUM == 14) { basic.showLeds(` # . . . # # . . . # . # . . # . . . # . . # # . . `) } else if (NUM == 15) { basic.showLeds(` . . # # # . # . . # . . # . # . . . # . . # # . . `) } else if (NUM == 16) { basic.showLeds(` . # # # # . . . # . # # # # # . . . # . . # # . . `) } else if (NUM == 17) { basic.showLeds(` # . # . # # . # . # . . . . # . . . # . . # # . . `) } else if (NUM == 18) { basic.showLeds(` . # # # # . . . . . # # # # # . . . # . . # # . . `) } else if (NUM == 19) { basic.showLeds(` . # . . . . # . . . . # # . . . # . # . . # . . . `) } else if (NUM == 20) { basic.showLeds(` . . . # . # # # # # . . . # . . . . # . . # # . . `) } else if (NUM == 21) { basic.showLeds(` . . . . . . # # # . . . . . . . . . . . # # # # # `) } else if (NUM == 22) { basic.showLeds(` # # # # # . . . . # . # . # . . . # . . # # . # . `) } else if (NUM == 23) { basic.showLeds(` . . # . . # # # # # . . . . # . . # # . . # . # . `) } else if (NUM == 24) { basic.showLeds(` . . . # . . . . # . . . . # . . . # . . # # . . . `) } else if (NUM == 25) { basic.showLeds(` . . . . . . # . # . . # . # . . # . # . # . . . # `) } else if (NUM == 26) { basic.showLeds(` # . . . . # # # # # # . . . . # . . . . # # # # # `) } else if (NUM == 27) { basic.showLeds(` . # # # # . . . . # . . . . # . . . # . . # # . . `) } else if (NUM == 28) { basic.showLeds(` . . . . . . # # . . # . . # . # . . . # . . . . . `) } else if (NUM == 29) { basic.showLeds(` . . # . . # # # # # . . # . . # . # . # # . # . # `) } else if (NUM == 30) { basic.showLeds(` # # # # # . . . . # . # . # . . . # . . . . . # . `) } else if (NUM == 31) { basic.showLeds(` . # # # . . . . . . . # # # . . . . . . # # # # # `) } else if (NUM == 32) { basic.showLeds(` . . # . . . # . . . # . . . # # # # # # . . . . # `) } else if (NUM == 33) { basic.showLeds(` . . . # . . # . # . . . # . . . # . # . # . . . . `) } else if (NUM == 34) { basic.showLeds(` . # # # . . . # . . # # # # # . . # . . . . # # # `) } else if (NUM == 35) { basic.showLeds(` . # . . . # # # # # . # . . # . # . # . . # . . . `) } else if (NUM == 36) { basic.showLeds(` # # # # . . . . # . . . . # . . . . # . # # # # # `) } else if (NUM == 37) { basic.showLeds(` # # # # # . . . . # # # # # # . . . . # # # # # # `) } else if (NUM == 38) { basic.showLeds(` . # # # # . . . . . # # # # # . . . . # . # # # . `) } else if (NUM == 39) { basic.showLeds(` # . . . # # . . . # # . . . # . . . # . . # # . . `) } else if (NUM == 40) { basic.showLeds(` # . # . . # . # . . # . # . # # . # . # # . # # . `) } else if (NUM == 41) { basic.showLeds(` # . . . . # . . . . # . . . # # . . # . # # # . . `) } else if (NUM == 42) { basic.showLeds(` . # # # . # . . . # # . . . # # . . . # . # # # . `) } else if (NUM == 43) { basic.showLeds(` # # # # # # . . . # . . . . # . . . # . . # # . . `) } else if (NUM == 44) { basic.showLeds(` . . . # . # # # # # . # . # . # # # # # . . . # . `) } else if (NUM == 45) { basic.showLeds(` # # # # # . . . # . . . # . . . . # . . # # # # # `) } else if (NUM == 46) { basic.showLeds(` # # # # # . . . . # # # # # # . . . # . # # # . . `) } else if (NUM == 47) { basic.showLeds(` . . . . # # # . . # . . . . # . . . # . . # # . . `) } else if (NUM == 48) { basic.showLeds(` # . # . . # . # . . . . . . . . . . . . . . . . . `) } else if (NUM == 49) { basic.showLeds(` . # . . . # . # . . . # . . . . . . . . . . . . . `) } else if (NUM == 50) { basic.showLeds(` . . . . . . . . . . # # # # # . . . . . . . . . . `) } } function CW_SND_J22() { if (NUM == 0) { DASH2() DASH2() DOT2() DASH2() DASH2() } else if (NUM == 1) { DOT2() DASH2() } else if (NUM == 2) { DOT2() DOT2() DASH2() } else if (NUM == 3) { DASH2() DOT2() DASH2() DASH2() DASH2() } else if (NUM == 4) { DOT2() DASH2() DOT2() DOT2() DOT2() } else if (NUM == 5) { DOT2() DASH2() DOT2() DOT2() } else if (NUM == 6) { DASH2() DOT2() DASH2() DOT2() DOT2() } else if (NUM == 7) { DOT2() DOT2() DOT2() DASH2() } else if (NUM == 8) { DASH2() DOT2() DASH2() DASH2() } else if (NUM == 9) { DASH2() DASH2() DASH2() DASH2() } else if (NUM == 10) { DASH2() DOT2() DASH2() DOT2() DASH2() } else if (NUM == 11) { DASH2() DASH2() DOT2() DASH2() DOT2() } else if (NUM == 12) { DASH2() DASH2() DASH2() DOT2() DASH2() } else if (NUM == 13) { DOT2() DASH2() DASH2() DASH2() DOT2() } else if (NUM == 14) { DASH2() DASH2() DASH2() DOT2() } else if (NUM == 15) { DASH2() DOT2() } else if (NUM == 16) { DOT2() DOT2() DASH2() DOT2() } else if (NUM == 17) { DOT2() DASH2() DASH2() DOT2() } else if (NUM == 18) { DOT2() DASH2() DOT2() DASH2() DASH2() } else if (NUM == 19) { DOT2() DOT2() DASH2() DOT2() DOT2() } else if (NUM == 20) { DOT2() DASH2() DOT2() } else if (NUM == 21) { DASH2() DOT2() DASH2() DOT2() } else if (NUM == 22) { DOT2() DOT2() DOT2() DOT2() } else if (NUM == 23) { DASH2() DASH2() DOT2() DASH2() } else if (NUM == 24) { DOT2() DOT2() DASH2() DASH2() } else if (NUM == 25) { DASH2() DOT2() DOT2() DOT2() } else if (NUM == 26) { DASH2() DASH2() DOT2() DOT2() DASH2() } else if (NUM == 27) { DASH2() DASH2() DOT2() DOT2() } else if (NUM == 28) { DOT2() } else if (NUM == 29) { DASH2() DOT2() DOT2() } else if (NUM == 30) { DASH2() DOT2() DOT2() DASH2() } else if (NUM == 31) { DOT2() DOT2() DASH2() DOT2() DASH2() } else if (NUM == 32) { DASH2() } else if (NUM == 33) { DASH2() DOT2() DOT2() DOT2() DASH2() } else if (NUM == 34) { DASH2() DOT2() DOT2() DASH2() DOT2() } else if (NUM == 35) { DOT2() DASH2() DASH2() } else if (NUM == 36) { DASH2() DOT2() DOT2() DASH2() DASH2() } else if (NUM == 37) { DASH2() DASH2() } else if (NUM == 38) { DOT2() DOT2() DOT2() } else if (NUM == 39) { DASH2() DASH2() DOT2() } else if (NUM == 40) { DASH2() DOT2() DASH2() DASH2() DOT2() } else if (NUM == 41) { DASH2() DASH2() DASH2() } else if (NUM == 42) { DOT2() DASH2() DOT2() DASH2() } else if (NUM == 43) { DASH2() DOT2() DASH2() } else if (NUM == 44) { DOT2() DASH2() DOT2() DOT2() DASH2() } else if (NUM == 45) { DOT2() DASH2() DASH2() DOT2() DOT2() } else if (NUM == 46) { DOT2() DASH2() DASH2() DASH2() } else if (NUM == 47) { DOT2() DASH2() DOT2() DASH2() DOT2() } else if (NUM == 48) { DOT2() DOT2() } else if (NUM == 49) { DOT2() DOT2() DASH2() DASH2() DOT2() } else if (NUM == 50) { DOT2() DASH2() DASH2() DOT2() DASH2() } } POINT = 0 BTN = 0 COUNT = 0 STAGE = 0 YESNO = 0 MAX = 0 QUIZ = 0 ANS = 0 YES_COUNT = 0 OPN_GR2() NSTAGE = 0