Exercises now store activatedMuscles as a Dictionary.

Commit
45635e3f1e4803938b6807a14ca645eb803e3b09
Author
Marius Peter <dev@marius-peter.com>
Author date
Committer
Marius Peter <dev@marius-peter.com>
Committer date
src/MyFitnessTracker-Core/MFTExercise.class.st
index 36417b50..ca294068 100644..100644
@@ -13,8 +13,8 @@
13 13 #instVars : [
14 14 'englishName',
15 15 'frenchName',
16 Removed: 'primaryMuscle',
17 Removed: 'secondaryMuscles'
16 Added: 'activatedMuscles',
17 Added: 'equipment'
18 18 ],
19 19 #category : 'MyFitnessTracker-Core',
20 20 #package : 'MyFitnessTracker-Core'
@@ -24,10 +24,8 @@
24 24 MFTExercise class >> benchPress [
25 25
26 26 ^ self newWithEnglishName
27 Removed: primaryMuscle: MFTMuscle pectoralisMajor;
28 Removed: secondaryMuscles: {
29 Removed: MFTMuscle tricepsBrachii.
30 Removed: MFTMuscleGroup shoulder };
27 Added: activates: MFTMuscle pectoralisMajor percent: 100;
28 Added: activates: MFTMuscle pectoralisMinor percent: 80;
31 29 yourself
32 30 ]
33 31
@@ -35,8 +33,8 @@
35 33 MFTExercise class >> bicepCurl [
36 34
37 35 ^ self newWithEnglishName
38 Removed: primaryMuscle: MFTMuscle bicepsBrachii;
39 Removed: secondaryMuscles: { MFTMuscleGroup forearm };
36 Added: activates: MFTMuscle bicepsBrachii percent: 100;
37 Added: activates: MFTMuscle brachioRadialis percent: 80;
40 38 yourself
41 39 ]
42 40
@@ -44,87 +42,53 @@
44 42 MFTExercise class >> cableRow [
45 43
46 44 ^ self newWithEnglishName
47 Removed: primaryMuscle: MFTMuscleGroup back;
48 Removed: secondaryMuscles: MFTMuscle bicepsBrachii;
45 Added: activates: MFTMuscle latissimusDorsi percent: 60;
46 Added: activates: MFTMuscle deltoidPosterior percent: 70;
49 47 yourself
50 48 ]
51 49
52 50 { #category : 'benchmarking' }
53 51 MFTExercise class >> cleanAndJerk [
54 52
55 Removed: ^ self newWithEnglishName
56 Removed: primaryMuscle: MFTMuscle quadricepsFemoris;
57 Removed: secondaryMuscles: {
58 Removed: MFTMuscleGroup shoulder.
59 Removed: MFTMuscle trapezius };
60 Removed: yourself
53 Added: ^ self newWithEnglishName yourself
61 54 ]
62 55
63 56 { #category : 'benchmarking' }
64 57 MFTExercise class >> deadlift [
65 58
66 59 ^ self newWithEnglishName
67 Removed: primaryMuscle: MFTMuscle hamstring;
68 Removed: secondaryMuscles: {
69 Removed: MFTMuscleGroup back.
70 Removed: MFTMuscleGroup hips };
60 Added: activates: MFTMuscle latissimusDorsi percent: 80;
71 61 yourself
72 62 ]
73 63
74 64 { #category : 'benchmarking' }
75 Removed: MFTExercise class >> declineBenchPress [
76 Removed:
77 Removed: ^ self newWithEnglishName
78 Removed: primaryMuscle: MFTMuscleGroup chest;
79 Removed: secondaryMuscles: MFTMuscle tricepsBrachii;
80 Removed: yourself
81 Removed: ]
82 Removed:
83 Removed: { #category : 'benchmarking' }
84 65 MFTExercise class >> gobletSquat [
85 66
86 Removed: ^ self newWithEnglishName
87 Removed: primaryMuscle: MFTMuscleGroup legs;
88 Removed: secondaryMuscles: {
89 Removed: MFTMuscleGroup abdominal.
90 Removed: MFTMuscleGroup back };
91 Removed: yourself
67 Added: ^ self newWithEnglishName yourself
92 68 ]
93 69
94 70 { #category : 'benchmarking' }
95 71 MFTExercise class >> hammerCurl [
96 72
97 Removed: ^ self newWithEnglishName
98 Removed: primaryMuscle: MFTMuscle bicepsBrachii;
99 Removed: secondaryMuscles: { MFTMuscleGroup forearm };
100 Removed: yourself
73 Added: ^ self newWithEnglishName yourself
101 74 ]
102 75
103 76 { #category : 'benchmarking' }
104 77 MFTExercise class >> latPulldown [
105 78
106 Removed: ^ self newWithEnglishName
107 Removed: primaryMuscle: MFTMuscle latissimusDorsi;
108 Removed: secondaryMuscles: {
109 Removed: MFTMuscle bicepsBrachii.
110 Removed: MFTMuscleGroup shoulder };
111 Removed: yourself
79 Added: ^ self newWithEnglishName yourself
112 80 ]
113 81
114 82 { #category : 'benchmarking' }
115 83 MFTExercise class >> legCurl [
116 84
117 Removed: ^ self newWithEnglishName
118 Removed: primaryMuscle: MFTMuscleGroup legs;
119 Removed: yourself
85 Added: ^ self newWithEnglishName yourself
120 86 ]
121 87
122 88 { #category : 'benchmarking' }
123 89 MFTExercise class >> legExtension [
124 90
125 Removed: ^ self newWithEnglishName
126 Removed: primaryMuscle: MFTMuscleGroup legs;
127 Removed: yourself
91 Added: ^ self newWithEnglishName yourself
128 92 ]
129 93
130 94 { #category : 'benchmarking' }
@@ -145,8 +109,9 @@
145 109
146 110 ^ self new
147 111 englishName: 'shoulder press (dumbell)';
148 Removed: primaryMuscle: MFTMuscle deltoidAnterior;
149 Removed: secondaryMuscles: MFTMuscle deltoidMedial;
112 Added: activates: MFTMuscle deltoidAnterior percent: 90;
113 Added: activates: MFTMuscle deltoidMedial percent: 60;
114 Added: equipment: MFTEquipment dumbell;
150 115 yourself
151 116 ]
152 117
@@ -154,92 +119,83 @@
154 119 MFTExercise class >> snatch [
155 120
156 121 ^ self newWithEnglishName
157 Removed: primaryMuscle: MFTMuscle quadricepsFemoris;
158 Removed: secondaryMuscles: {
159 Removed: MFTMuscleGroup shoulder.
160 Removed: MFTMuscle trapezius };
122 Added: activates: MFTMuscle quadricepsFemoris percent: 100;
123 Added: activates: MFTMuscle trapezius percent: 90;
124 Added: activates: MFTMuscle deltoidPosterior percent: 80;
161 125 yourself
162 126 ]
163 127
164 128 { #category : 'benchmarking' }
165 129 MFTExercise class >> squat [
166 130
167 Removed: ^ self newWithEnglishName
168 Removed: primaryMuscle: MFTMuscleGroup legs;
169 Removed: secondaryMuscles: {
170 Removed: MFTMuscleGroup abdominal.
171 Removed: MFTMuscleGroup back };
172 Removed: yourself
131 Added: ^ self newWithEnglishName yourself
173 132 ]
174 133
175 134 { #category : 'benchmarking' }
176 135 MFTExercise class >> tricepExtension [
177 136
178 Removed: ^ self newWithEnglishName
179 Removed: primaryMuscle: MFTMuscle tricepsBrachii;
180 Removed: secondaryMuscles: { };
181 Removed: yourself
137 Added: ^ self newWithEnglishName yourself
182 138 ]
183 139
184 140 { #category : 'accessing' }
185 Removed: MFTExercise >> canonicalName [
141 Added: MFTExercise >> activatedMuscles [
186 142
187 Removed: ^ englishName
143 Added: ^ activatedMuscles
188 144 ]
189 145
190 146 { #category : 'accessing' }
191 Removed: MFTExercise >> englishName [
147 Added: MFTExercise >> activates: aMFTMuscle percent: aPercent [
192 148
193 Removed: ^ englishName
149 Added: activatedMuscles at: aMFTMuscle put: aPercent
194 150 ]
195 151
196 152 { #category : 'accessing' }
197 Removed: MFTExercise >> englishName: aString [
153 Added: MFTExercise >> canonicalName [
198 154
199 Removed: englishName := aString
155 Added: ^ englishName
200 156 ]
201 157
202 158 { #category : 'accessing' }
203 Removed: MFTExercise >> frenchName [
159 Added: MFTExercise >> englishName [
204 160
205 Removed: ^ frenchName
161 Added: ^ englishName
206 162 ]
207 163
208 164 { #category : 'accessing' }
209 Removed: MFTExercise >> frenchName: aString [
165 Added: MFTExercise >> englishName: aString [
210 166
211 Removed: frenchName := aString
167 Added: englishName := aString
212 168 ]
213 169
214 Removed: { #category : 'initialization' }
215 Removed: MFTExercise >> initialize [
170 Added: { #category : 'accessing' }
171 Added: MFTExercise >> equipment [
216 172
217 Removed: super initialize.
218 Removed: primaryMuscle := MFTMuscleGroup new.
219 Removed: englishName := String new.
220 Removed: frenchName := String new
173 Added: ^ equipment
221 174 ]
222 175
223 176 { #category : 'accessing' }
224 Removed: MFTExercise >> primaryMuscle [
177 Added: MFTExercise >> equipment: anMFTEquipment [
225 178
226 Removed: ^ primaryMuscle
179 Added: equipment := anMFTEquipment
227 180 ]
228 181
229 182 { #category : 'accessing' }
230 Removed: MFTExercise >> primaryMuscle: aMFTMuscle [
183 Added: MFTExercise >> frenchName [
231 184
232 Removed: primaryMuscle := aMFTMuscle
185 Added: ^ frenchName
233 186 ]
234 187
235 188 { #category : 'accessing' }
236 Removed: MFTExercise >> secondaryMuscles [
189 Added: MFTExercise >> frenchName: aString [
237 190
238 Removed: ^ secondaryMuscles
191 Added: frenchName := aString
239 192 ]
240 193
241 Removed: { #category : 'accessing' }
242 Removed: MFTExercise >> secondaryMuscles: anObject [
194 Added: { #category : 'initialization' }
195 Added: MFTExercise >> initialize [
243 196
244 Removed: secondaryMuscles := anObject
197 Added: super initialize.
198 Added: englishName := String new.
199 Added: frenchName := String new.
200 Added: activatedMuscles := Dictionary new.
245 201 ]