JBWOPR
Loading...
Searching...
No Matches
jbwoprtherickeffect.h
1
8//
9#ifndef ARDUINO_WOPR_JBWOPRTHERICKEFFECT_H
10#define ARDUINO_WOPR_JBWOPRTHERICKEFFECT_H
11
12#include "jbwopreffects.h"
13
14#define JBWOPR_EFFECT_NAME_THE_RICK "The Rick"
15
20public:
26 explicit JBWoprTheRickEffect(JBWoprDevice *woprBoard,
27 uint32_t tempo = 114,
28 uint32_t duration = -1,
29 const std::string name=JBWOPR_EFFECT_NAME_THE_RICK);
30
31protected:
32 // Hide these as they are hard coded
33 void setSong(const std::vector<JBWoprSongEffect::Note>* song) override {} ;
34 void setTempo(uint32_t tempo) override {};
35
37 const std::vector<JBWoprSongEffect::Note> _theRick {
38 {0, 0, 4, ""},
39 {NOTE_B, 4, 8, "WE'RE"},
40 {NOTE_Cs, 5, 8, "NO"},
41 {NOTE_D, 5, 8, "STRANGERS"},
42 {NOTE_D, 5, 8, ""},
43 {NOTE_E, 5, 8, "TO"},
44 {NOTE_Cs, 5, -8, "LOVE"},
45 {NOTE_B, 4, 16, ""},
46 {NOTE_A, 4, 2, ""},
47 {0, 0, 4, "-"},
48 {0, 0, 8, ""},
49 {NOTE_B, 4, 8, "YOU"},
50 {NOTE_B, 4, 8, "KNOW"},
51 {NOTE_Cs, 5, 8, "THE"},
52 {NOTE_D, 5, 8, "RULES"},
53 {NOTE_B, 4, 4, ""},
54 {NOTE_A, 4, 8, "AND"},
55 {NOTE_A, 5, 8, "SO"},
56 {0, 0, 8, "DO"},
57 {NOTE_A, 5, 8, "I"},
58 {NOTE_E, 5, -4, ""},
59 {0, 0, 4, ""},
60 {NOTE_B, 4, 8, "A"},
61 {NOTE_B, 4, 8, "FULL"},
62 {NOTE_Cs, 5, 8, "COMMITMENT'S"},
63 {NOTE_D, 5, 8, ""},
64 {NOTE_B, 4, 8, ""},
65 {NOTE_D, 5, 8, "WHAT"},
66 {NOTE_E, 5, 8, "I'M"},
67 {0, 0, 8, ""},
68 {0, 0, 8, ""},
69 {NOTE_Cs, 5, 8, "THINKING"},
70 {NOTE_B, 4, 8, ""},
71 {NOTE_A, 4, -4, "OF"},
72 {0, 0, 4, "-"},
73 {0, 0, 8, ""},
74 {NOTE_B, 4, 8, "YOU"},
75 {NOTE_B, 4, 8, "WOULDN'T"},
76 {NOTE_Cs, 5, 8, ""},
77 {NOTE_D, 5, 8, "GET"},
78 {NOTE_B, 4, 8, "THIS"},
79 {NOTE_A, 4, 4, "FROM"},
80 {NOTE_E, 5, 8, "ANY"},
81 {NOTE_E, 5, 8, "OTHER"},
82 {NOTE_E, 5, 8, ""},
83 {NOTE_Fs, 5, 8, "GUY"},
84 {NOTE_E, 5, 4, ""},
85 {0, 0, 4, "-"},
86 {NOTE_D, 5, 2, "I"},
87 {NOTE_E, 5, 8, "JUST"},
88 {NOTE_Fs, 5, 8, "WANNA"},
89 {NOTE_D, 5, 8, "TELL"},
90 {NOTE_E, 5, 8, "YOU"},
91 {NOTE_E, 5, 8, "HOW"},
92 {NOTE_E, 5, 8, "I'M"},
93 {NOTE_Fs, 5, 8, ""},
94 {NOTE_E, 5, 4, "FEELING"},
95 {NOTE_A, 4, 4, ""},
96 {0, 0, 2, "-"},
97 {NOTE_B, 4, 8, "GOTTA"},
98 {NOTE_Cs, 5, 8, ""},
99 {NOTE_D, 5, 8, "MAKE"},
100 {NOTE_B, 4, 8, "YOU"},
101 {0, 0, 8, ""},
102 {NOTE_E, 5, 8, "UNDERSTAND"},
103 {NOTE_Fs, 5, 8, ""},
104 {NOTE_E, 5, -4, ""},
105 {NOTE_A, 4, 16, "NEVER"},
106 {NOTE_B, 4, 16, ""},
107 {NOTE_D, 5, 16, "GONNA"},
108 {NOTE_B, 4, 16, ""},
109 {NOTE_Fs, 5, -8, "GIVE"},
110 {NOTE_Fs, 5, -8, "YOU"},
111 {NOTE_E, 5, -4, "UP"},
112 {NOTE_A, 4, 16, "NEVER"},
113 {NOTE_B, 4, 16, ""},
114 {NOTE_D, 5, 16, "GONNA"},
115 {NOTE_B, 4, 16, ""},
116 {NOTE_E, 5, -8, "LET"},
117 {NOTE_E, 5, -8, "YOU"},
118 {NOTE_D, 5, -8, "DOWN"},
119 {NOTE_Cs, 5, 16, ""},
120 {NOTE_B, 4, -8, "-"},
121 {NOTE_A, 4, 16, "NEVER"},
122 {NOTE_B, 4, 16, ""},
123 {NOTE_D, 5, 16, "GONNA"},
124 {NOTE_B, 4, 16, ""},
125 {NOTE_D, 5, 4, "RUN"},
126 {NOTE_E, 5, 8, "AROUND"},
127 {NOTE_Cs, 5, -8, ""},
128 {NOTE_B, 4, 16, "AND"},
129 {NOTE_A, 4, 8, ""},
130 {NOTE_A, 4, 8, "DESERT"},
131 {NOTE_E, 5, 4, ""},
132 {NOTE_D, 5, 2, "YOU"},
133 {NOTE_A, 4, 16, "NEVER"},
134 {NOTE_B, 4, 16, ""},
135 {NOTE_D, 5, 16, "GONNA"},
136 {NOTE_B, 4, 16, ""},
137 {NOTE_Fs, 5, -8, "MAKE"},
138 {NOTE_Fs, 5, -8, "YOU"},
139 {NOTE_E, 5, -4, "CRY"},
140 {NOTE_A, 4, 16, "NEVER"},
141 {NOTE_B, 4, 16, ""},
142 {NOTE_D, 5, 16, "GONNA"},
143 {NOTE_B, 4, 16, ""},
144 {NOTE_A, 5, 4, "SAY"},
145 {NOTE_Cs, 5, 8, "GOODBYE"},
146 {NOTE_D, 5, -8, ""},
147 {NOTE_Cs, 5, 16, ""},
148 {NOTE_B, 4, 8, "-"},
149 {NOTE_A, 4, 16, "NEVER"},
150 {NOTE_B, 4, 16, "-"},
151 {NOTE_D, 5, 16, "GONNA"},
152 {NOTE_B, 4, 16, ""},
153 {NOTE_D, 5, 4, "TELL"},
154 {NOTE_E, 5, 8, "A"},
155 {NOTE_Cs, 5, -8, "LIE"},
156 {NOTE_B, 4, 16, ""},
157 {NOTE_A, 4, 4, "AND"},
158 {NOTE_A, 4, 8, ""},
159 {NOTE_E, 5, 4, "HURT"},
160 {NOTE_D, 5, 2, "YOU"},
161 {0, 0, 4, ""}
162 };
163};
164
165
166#endif //ARDUINO_WOPR_JBWOPRTHERICKEFFECT_H
W.O.P.R. device base class.
Definition jbwopr.h:85
Base class for song effects.
Definition jbwopreffects.h:530
The Rick effect.
Definition jbwoprtherickeffect.h:19
const std::vector< JBWoprSongEffect::Note > _theRick
The Rick tune.
Definition jbwoprtherickeffect.h:37
void setTempo(uint32_t tempo) override
Set tempo.
Definition jbwoprtherickeffect.h:34
Header file for the JBWopr library.