workouts 0.0.0 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 786d9250bc9d5bf5c62454c17eb2bde1e5a5b29e
4
- data.tar.gz: fdf3896bd55cbe257d8db7fd728274f5ee7730a3
3
+ metadata.gz: f3ff52fe2af1d6457c6ffa72582269826cf9fa22
4
+ data.tar.gz: 9c5167791623a233955625034ca1f942511d23fb
5
5
  SHA512:
6
- metadata.gz: ef463d3fcf07661b7a57037861b77b258d3129a6cd8102047f9a72d88b05a563c688596d7b9013f1367ebde25641cff359b461fc4eb1c0963b6b9abcf09da837
7
- data.tar.gz: 64d70a834e0d99bfc0cecb2dd3072600881e020689edcc979dd33eec4054895c9de96671803e4282a1d9bdb9770bc2b17b403e7ef09fba61d9cd4118993694e5
6
+ metadata.gz: 6e2d63e978391c387f312d38e2760b79ddd0d42bd63015296d41a4540cd6ec5a8a184d9d117cea04f6c5df3a2d72114aeb2f1265d76f7b011eaae3eaf4947ace
7
+ data.tar.gz: d560d39d6946c673fd8f8fe9588aa50189764d81d00c515a9b9e6088dbaeb2f12d5f09b09acbb39f51c82fad398718ba89a95ca21125b78a59f15a769ea1940b
@@ -0,0 +1,40 @@
1
+ class Workouts
2
+ class Day
3
+ attr_reader :day_number
4
+ attr_reader :workouts
5
+
6
+ def initialize(round_type, day_number)
7
+ @round_type = round_type
8
+ @day_number = day_number
9
+ @workouts = load_workouts
10
+ end
11
+
12
+ private
13
+
14
+ def ab_ripper_workout?(workout_name)
15
+ [
16
+ Routine::CHEST_AND_BACK,
17
+ Routine::SHOULDERS_AND_ARMS,
18
+ Routine::LEGS_AND_BACK,
19
+ Routine::CHEST_SHOULDERS_AND_TRICEPS,
20
+ Routine::BACK_AND_BICEPS
21
+ ].include?(workout_name)
22
+ end
23
+
24
+ def load_workouts
25
+ workouts = []
26
+ workouts << Workout.new(workout_name)
27
+ workouts << Workout.new(Routine::AB_RIPPER_X) if ab_ripper_workout?(workout_name)
28
+ workouts
29
+ end
30
+
31
+ def workout_name
32
+ case @round_type
33
+ when :classic
34
+ Routine.classic(@day_number)
35
+ when :lean
36
+ Routine.lean(@day_number)
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,20 @@
1
+ class Workouts
2
+ class Move
3
+ attr_accessor :completed
4
+ attr_accessor :description
5
+ attr_accessor :reps
6
+ attr_accessor :weight
7
+
8
+ attr_reader :break
9
+ attr_reader :name
10
+
11
+ def initialize(options = {})
12
+ @name = options[:name]
13
+ @completed = false
14
+ @reps = 0
15
+
16
+ @weight = options[:weight] || false
17
+ @break = options[:break] || false
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,21 @@
1
+ class Workouts
2
+ class Round
3
+ attr_reader :days
4
+ attr_reader :type
5
+
6
+ def initialize(type = :classic)
7
+ @type = type
8
+ @days = load_days
9
+ end
10
+
11
+ def workouts
12
+ @days.map(&:workouts)
13
+ end
14
+
15
+ private
16
+
17
+ def load_days
18
+ Array.new(90) { |day_number| Day.new(@type, day_number + 1) }
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,83 @@
1
+ class Workouts
2
+ class Routine
3
+ CHEST_AND_BACK = 'Chest & Back'.freeze
4
+ PLYOMETRICS = 'Plyometrics'.freeze
5
+ SHOULDERS_AND_ARMS = 'Shoulders & Arms'.freeze
6
+ YOGA_X = 'Yoga X'.freeze
7
+ LEGS_AND_BACK = 'Legs & Back'.freeze
8
+ KENPO_X = 'Kenpo X'.freeze
9
+ CORE_SYNERGISTICS = 'Core Synergistics'.freeze
10
+ CHEST_SHOULDERS_AND_TRICEPS = 'Chest, Shoulders & Triceps'.freeze
11
+ BACK_AND_BICEPS = 'Back & Biceps'.freeze
12
+ REST_STRETCH = 'Rest/Stretch'.freeze
13
+ CARDIO_X = 'Cardio X'.freeze
14
+ AB_RIPPER_X = 'Ab Ripper X'.freeze
15
+
16
+ def self.all
17
+ [
18
+ CHEST_AND_BACK,
19
+ PLYOMETRICS,
20
+ SHOULDERS_AND_ARMS,
21
+ YOGA_X,
22
+ LEGS_AND_BACK,
23
+ KENPO_X,
24
+ CORE_SYNERGISTICS,
25
+ CHEST_SHOULDERS_AND_TRICEPS,
26
+ BACK_AND_BICEPS,
27
+ REST_STRETCH,
28
+ CARDIO_X,
29
+ AB_RIPPER_X
30
+ ]
31
+ end
32
+
33
+ def self.classic(day_number)
34
+ case day_number
35
+ when 1, 8, 15, 57, 71
36
+ CHEST_AND_BACK
37
+ when 2, 9, 16, 30, 37, 44, 58, 65, 72, 79
38
+ PLYOMETRICS
39
+ when 3, 10, 17, 59, 73
40
+ SHOULDERS_AND_ARMS
41
+ when 4, 11, 18, 22, 27, 32, 39, 46, 50, 55, 60, 67, 74, 81, 85, 90
42
+ YOGA_X
43
+ when 5, 12, 19, 33, 40, 47, 61, 68, 75, 82
44
+ LEGS_AND_BACK
45
+ when 6, 13, 20, 24, 34, 41, 48, 52, 62, 69, 76, 83, 87
46
+ KENPO_X
47
+ when 23, 26, 51, 54, 86, 89
48
+ CORE_SYNERGISTICS
49
+ when 29, 36, 43, 64, 78
50
+ CHEST_SHOULDERS_AND_TRICEPS
51
+ when 31, 38, 45, 66, 80
52
+ BACK_AND_BICEPS
53
+ else
54
+ REST_STRETCH
55
+ end
56
+ end
57
+
58
+ def self.lean(day_number)
59
+ case day_number
60
+ when 1, 8, 15, 23, 29, 36, 43, 51, 61, 68, 75, 82, 86
61
+ CORE_SYNERGISTICS
62
+ when 2, 9, 16, 26, 30, 37, 44, 54, 58, 65, 72, 79, 89
63
+ CARDIO_X
64
+ when 57, 71
65
+ CHEST_AND_BACK
66
+ when 3, 17, 59, 73
67
+ SHOULDERS_AND_ARMS
68
+ when 4, 11, 18, 22, 27, 32, 39, 46, 50, 55, 60, 67, 74, 81, 85, 90
69
+ YOGA_X
70
+ when 5, 12, 19, 33, 40, 47
71
+ LEGS_AND_BACK
72
+ when 6, 13, 20, 24, 34, 41, 48, 52, 62, 69, 76, 83, 87
73
+ KENPO_X
74
+ when 31, 38, 45, 64, 78
75
+ CHEST_SHOULDERS_AND_TRICEPS
76
+ when 10, 66, 80
77
+ BACK_AND_BICEPS
78
+ else
79
+ REST_STRETCH
80
+ end
81
+ end
82
+ end
83
+ end
@@ -0,0 +1,423 @@
1
+ class Workouts
2
+ class Workout
3
+ attr_accessor :description
4
+ attr_reader :name
5
+ attr_reader :moves
6
+
7
+ def initialize(name)
8
+ @name = name
9
+ @moves = []
10
+ load_moves
11
+ end
12
+
13
+ private
14
+
15
+ def add_break
16
+ @moves << Move.new(name: 'Break', break: true)
17
+ end
18
+
19
+ def create_chest_and_back
20
+ @moves << Move.new(name: 'Standard Push-Up')
21
+ @moves << Move.new(name: 'Wide Front Pull-Up')
22
+ @moves << Move.new(name: 'Military Push-Up')
23
+ @moves << Move.new(name: 'Reverse Grip Chin-Up')
24
+ add_break
25
+ @moves << Move.new(name: 'Wide Fly Push-Ups')
26
+ @moves << Move.new(name: 'Closed Grip Overhand Pull-Up')
27
+ @moves << Move.new(name: 'Decline Push-Up')
28
+ @moves << Move.new(name: 'Heavy Pants', weight: 0)
29
+ add_break
30
+ @moves << Move.new(name: 'Diamond Push-Up')
31
+ @moves << Move.new(name: 'Lawnmowers', weight: 0)
32
+ @moves << Move.new(name: 'Dive-Bomber Push-Ups')
33
+ @moves << Move.new(name: 'Back Flys', weight: 0)
34
+ add_break
35
+ @moves << Move.new(name: 'Wide Front Pull-Up')
36
+ @moves << Move.new(name: 'Standard Push-Up')
37
+ @moves << Move.new(name: 'Reverse Grip Chin-Up')
38
+ @moves << Move.new(name: 'Military Push-Up')
39
+ add_break
40
+ @moves << Move.new(name: 'Closed Grip Overhand Pull-Up')
41
+ @moves << Move.new(name: 'Wide Fly Push-Ups')
42
+ @moves << Move.new(name: 'Heavy Pants', weight: 0)
43
+ @moves << Move.new(name: 'Decline Push-Up')
44
+ add_break
45
+ @moves << Move.new(name: 'Lawnmowers', weight: 0)
46
+ @moves << Move.new(name: 'Diamond Push-Up')
47
+ @moves << Move.new(name: 'Back Flys', weight: 0)
48
+ @moves << Move.new(name: 'Dive-Bomber Push-Ups')
49
+ end
50
+
51
+ def create_plyometrics
52
+ @moves << Move.new(name: 'Jump Squats')
53
+ @moves << Move.new(name: 'Run Stance Squats')
54
+ @moves << Move.new(name: 'Airborne Heismans')
55
+ @moves << Move.new(name: 'Swing Kicks')
56
+ @moves << Move.new(name: 'Jump Squats')
57
+ @moves << Move.new(name: 'Run Stance Squats')
58
+ @moves << Move.new(name: 'Airborne Heismans')
59
+ @moves << Move.new(name: 'Swing Kicks')
60
+ add_break
61
+ @moves << Move.new(name: 'Squat Reach Jumps')
62
+ @moves << Move.new(name: 'Run Stance Squat Switch Pick Ups')
63
+ @moves << Move.new(name: 'Double Airborne Heismans')
64
+ @moves << Move.new(name: 'Circle Runs')
65
+ @moves << Move.new(name: 'Squat Reach Jumps')
66
+ @moves << Move.new(name: 'Run Stance Squat Switch Pick Ups')
67
+ @moves << Move.new(name: 'Double Airborne Heismans')
68
+ @moves << Move.new(name: 'Circle Runs')
69
+ add_break
70
+ @moves << Move.new(name: 'Jump Knee Tucks')
71
+ @moves << Move.new(name: 'Mary Katherine Lunges')
72
+ @moves << Move.new(name: 'Leapfrog Squats')
73
+ @moves << Move.new(name: 'Twist Combos')
74
+ @moves << Move.new(name: 'Jump Knee Tucks')
75
+ @moves << Move.new(name: 'Mary Katherine Lunges')
76
+ @moves << Move.new(name: 'Leapfrog Squats')
77
+ @moves << Move.new(name: 'Twist Combos')
78
+ add_break
79
+ @moves << Move.new(name: 'Rock Star Hops')
80
+ @moves << Move.new(name: 'Gap Jumps')
81
+ @moves << Move.new(name: 'Squat Jacks')
82
+ @moves << Move.new(name: 'Military March')
83
+ @moves << Move.new(name: 'Rock Star Hops')
84
+ @moves << Move.new(name: 'Gap Jumps')
85
+ @moves << Move.new(name: 'Squat Jacks')
86
+ @moves << Move.new(name: 'Military March')
87
+ add_break
88
+ @moves << Move.new(name: 'Run Squat 180 Jump Switches')
89
+ @moves << Move.new(name: 'Lateral Leapfrog Squats')
90
+ @moves << Move.new(name: 'Monster Truck Tires')
91
+ @moves << Move.new(name: 'Hot Foot Jumps')
92
+ @moves << Move.new(name: 'Run Squat 180 Jump Switches')
93
+ @moves << Move.new(name: 'Lateral Leapfrog Squats')
94
+ @moves << Move.new(name: 'Monster Truck Tires')
95
+ @moves << Move.new(name: 'Hot Foot Jumps')
96
+ add_break
97
+ @moves << Move.new(name: 'Pitch and Catch')
98
+ @moves << Move.new(name: 'Jump Shots')
99
+ @moves << Move.new(name: 'Football Hero')
100
+ end
101
+
102
+ def create_shoulders_and_arms
103
+ @moves << Move.new(name: 'Alternating Shoulder Press', weight: 0)
104
+ @moves << Move.new(name: 'In & Out Bicep Curls', weight: 0)
105
+ @moves << Move.new(name: 'Two-Arm Tricep Kickback', weight: 0)
106
+ @moves << Move.new(name: 'Alternating Shoulder Press', weight: 0)
107
+ @moves << Move.new(name: 'In & Out Bicep Curls', weight: 0)
108
+ @moves << Move.new(name: 'Two-Arm Tricep Kickback', weight: 0)
109
+ add_break
110
+ @moves << Move.new(name: "Deep Swimmer's Presses", weight: 0)
111
+ @moves << Move.new(name: 'Full Supination Concentration Curls', weight: 0)
112
+ @moves << Move.new(name: 'Chair Dips')
113
+ @moves << Move.new(name: "Deep Swimmer's Presses", weight: 0)
114
+ @moves << Move.new(name: 'Full Supination Concentration Curls', weight: 0)
115
+ @moves << Move.new(name: 'Chair Dips')
116
+ add_break
117
+ @moves << Move.new(name: 'Upright Rows', weight: 0)
118
+ @moves << Move.new(name: 'Static Arm Curls', weight: 0)
119
+ @moves << Move.new(name: 'Flip Grip Twist Tricep Kickbacks', weight: 0)
120
+ @moves << Move.new(name: 'Upright Rows', weight: 0)
121
+ @moves << Move.new(name: 'Static Arm Curls', weight: 0)
122
+ @moves << Move.new(name: 'Flip Grip Twist Tricep Kickbacks', weight: 0)
123
+ add_break
124
+ @moves << Move.new(name: 'Seated Two-Angle Shoulder Fly', weight: 0)
125
+ @moves << Move.new(name: 'Crouching Cohen Curls', weight: 0)
126
+ @moves << Move.new(name: 'Lying Down Triceps Extensions', weight: 0)
127
+ @moves << Move.new(name: 'Seated Two-Angle Shoulder Fly', weight: 0)
128
+ @moves << Move.new(name: 'Crouching Cohen Curls', weight: 0)
129
+ @moves << Move.new(name: 'Lying Down Triceps Extensions', weight: 0)
130
+ add_break
131
+ @moves << Move.new(name: 'In & Out Straight-Arm Shoulder Fly', weight: 0)
132
+ @moves << Move.new(name: 'Congdon Curls', weight: 0)
133
+ @moves << Move.new(name: 'Side-Tri Rises')
134
+ @moves << Move.new(name: 'In & Out Straight-Arm Shoulder Fly', weight: 0)
135
+ @moves << Move.new(name: 'Congdon Curls', weight: 0)
136
+ @moves << Move.new(name: 'Side-Tri Rises')
137
+ end
138
+
139
+ def create_yoga_x
140
+ @moves << Move.new(name: "Runner's Pose")
141
+ @moves << Move.new(name: 'Crescent Pose')
142
+ @moves << Move.new(name: 'Warrior One')
143
+ @moves << Move.new(name: 'Warrior Two')
144
+ @moves << Move.new(name: 'Reverse Warrior')
145
+ @moves << Move.new(name: 'Triangle Pose')
146
+ @moves << Move.new(name: 'Twisting Triangle')
147
+ @moves << Move.new(name: 'Chair to Twisting Chair (Prayer Twist)')
148
+ @moves << Move.new(name: 'Right-Angle Pose to Extended Right-Angle Pose & Grab')
149
+ @moves << Move.new(name: "Prayer twist from Runner's Pose to Side Arm Balance")
150
+ @moves << Move.new(name: 'Warrior Three to Standing Splits')
151
+ @moves << Move.new(name: 'Half Moon to Twisting Half Moon')
152
+ add_break
153
+ @moves << Move.new(name: 'Tree')
154
+ @moves << Move.new(name: 'Royal Dancer')
155
+ @moves << Move.new(name: 'Standing Leg Extension')
156
+ add_break
157
+ @moves << Move.new(name: 'Crane (Pre-Handstand)')
158
+ @moves << Move.new(name: 'Seated Spinal Stretch')
159
+ @moves << Move.new(name: 'Cat Stretch')
160
+ @moves << Move.new(name: 'Frog')
161
+ @moves << Move.new(name: 'Bridge or Wheel')
162
+ @moves << Move.new(name: 'Plough into Shoulder Stand with Leg Variations into Plough')
163
+ @moves << Move.new(name: 'Table')
164
+ @moves << Move.new(name: 'Cobbler Pose')
165
+ @moves << Move.new(name: 'One-Legged Hamstring Stretch into Two-Legged Hamstring Stretch')
166
+ add_break
167
+ @moves << Move.new(name: 'Touch the Sky')
168
+ @moves << Move.new(name: 'Boat')
169
+ @moves << Move.new(name: 'Half Boat')
170
+ @moves << Move.new(name: 'Scissor')
171
+ @moves << Move.new(name: 'Torso Twist Hold')
172
+ @moves << Move.new(name: 'Deep Torso Twist Hold')
173
+ @moves << Move.new(name: 'Touch the Sky')
174
+ add_break
175
+ @moves << Move.new(name: 'Side Twist')
176
+ @moves << Move.new(name: 'Glute Stretch')
177
+ @moves << Move.new(name: 'Happy Baby')
178
+ @moves << Move.new(name: "Child's Pose")
179
+ @moves << Move.new(name: 'Shavasana (Corpse Pose)')
180
+ @moves << Move.new(name: 'Fetal Pose')
181
+ @moves << Move.new(name: 'Meditation Pose (Lotus)')
182
+ end
183
+
184
+ def create_legs_and_back
185
+ @moves << Move.new(name: 'Balanced Lunges', weight: 0)
186
+ @moves << Move.new(name: 'Calf-Raise Squats', weight: 0)
187
+ @moves << Move.new(name: 'Reverse Grip Chin-Ups')
188
+ @moves << Move.new(name: 'Super Skaters')
189
+ @moves << Move.new(name: 'Wall Squats')
190
+ @moves << Move.new(name: 'Wide Front Pull-Ups')
191
+ @moves << Move.new(name: 'Step Back Lunge', weight: 0)
192
+ @moves << Move.new(name: 'Alternating Side Lunge', weight: 0)
193
+ @moves << Move.new(name: 'Closed Grip Overhead Pull-Ups')
194
+ @moves << Move.new(name: 'Single-Leg Wall Squat')
195
+ @moves << Move.new(name: 'Deadlift Squats', weight: 0)
196
+ @moves << Move.new(name: 'Switch Grip Pull-Ups')
197
+ add_break
198
+ @moves << Move.new(name: 'Three-Way Lunge')
199
+ @moves << Move.new(name: 'Sneaky Lunge')
200
+ @moves << Move.new(name: 'Reverse Grip Chin-Ups')
201
+ @moves << Move.new(name: 'Chair Salutations')
202
+ @moves << Move.new(name: 'Toe-Roll Iso Lunge', weight: 0)
203
+ @moves << Move.new(name: 'Wide Front Pull-Ups')
204
+ @moves << Move.new(name: 'Groucho Walk')
205
+ @moves << Move.new(name: 'Calf Raises (Toes Out)', weight: 0)
206
+ @moves << Move.new(name: 'Calf Raises (Feet Parallel)', weight: 0)
207
+ @moves << Move.new(name: 'Calf Raises (Toes In)', weight: 0)
208
+ @moves << Move.new(name: 'Closed Grip Overhand Pull-Ups')
209
+ @moves << Move.new(name: '80/20 Siebers-Speed Squats')
210
+ @moves << Move.new(name: 'Switch Grip Pull-Ups')
211
+ end
212
+
213
+ def create_kenpo_x
214
+ @moves << Move.new(name: 'Twist and Pivot', weight: 0)
215
+ @moves << Move.new(name: 'Twist and Pivot with Hook and Uppercut', weight: 0)
216
+ @moves << Move.new(name: 'Jabs', weight: 0)
217
+ @moves << Move.new(name: 'Jab-Cross', weight: 0)
218
+ @moves << Move.new(name: 'Jab-Cross-Hook', weight: 0)
219
+ @moves << Move.new(name: 'Jab-Cross-Hook-Uppercut', weight: 0)
220
+ add_break
221
+ @moves << Move.new(name: 'Step Drag, High-Low Punch', weight: 0)
222
+ @moves << Move.new(name: 'Jab-Cross Switch', weight: 0)
223
+ @moves << Move.new(name: 'Hook-Uppercut Switch', weight: 0)
224
+ @moves << Move.new(name: 'Knee Kick', weight: 0)
225
+ @moves << Move.new(name: 'Ball Kick', weight: 0)
226
+ add_break
227
+ @moves << Move.new(name: 'Side Kick', weight: 0)
228
+ @moves << Move.new(name: 'Back Kick', weight: 0)
229
+ @moves << Move.new(name: 'Three-Direction Kick', weight: 0)
230
+ @moves << Move.new(name: 'Side Lunge with High Sword-Low Hammer', weight: 0)
231
+ @moves << Move.new(name: 'Step-Drag-Claw-Low Punch', weight: 0)
232
+ add_break
233
+ @moves << Move.new(name: 'High Block', weight: 0)
234
+ @moves << Move.new(name: 'Inward Block', weight: 0)
235
+ @moves << Move.new(name: 'Outward Block', weight: 0)
236
+ @moves << Move.new(name: 'Downward Block', weight: 0)
237
+ @moves << Move.new(name: 'Star Block', weight: 0)
238
+ add_break
239
+ @moves << Move.new(name: 'Front Shuffle with High Block-Low Punch', weight: 0)
240
+ @moves << Move.new(name: 'Knee-Back Kick', weight: 0)
241
+ @moves << Move.new(name: 'Front and Back Knuckles, Ball Kick, Back Kick', weight: 0)
242
+ @moves << Move.new(name: 'Hook, Uppercut, Low Side Kick', weight: 0)
243
+ @moves << Move.new(name: 'Elbow Series', weight: 0)
244
+ @moves << Move.new(name: 'Vertical Punches', weight: 0)
245
+ end
246
+
247
+ def create_core_synergistics
248
+ @moves << Move.new(name: 'Stacked Foot / Staggered Hands Push-Ups')
249
+ @moves << Move.new(name: 'Banana Rolls')
250
+ @moves << Move.new(name: 'Leaning Crescent Lunges', weight: 0)
251
+ @moves << Move.new(name: 'Squat Runs', weight: 0)
252
+ @moves << Move.new(name: 'Sphinx Push-Ups')
253
+ @moves << Move.new(name: 'Bow to Boat')
254
+ @moves << Move.new(name: 'Low Lateral Skaters')
255
+ @moves << Move.new(name: 'Lunge & Reach', weight: 0)
256
+ add_break
257
+ @moves << Move.new(name: 'Prison Cell Push-Ups')
258
+ @moves << Move.new(name: 'Side Hip Raise')
259
+ @moves << Move.new(name: 'Squat X-Press', weight: 0)
260
+ @moves << Move.new(name: 'Plank to Chaturanga Run')
261
+ @moves << Move.new(name: 'Walking Push-Ups')
262
+ @moves << Move.new(name: 'Superman Banana')
263
+ @moves << Move.new(name: 'Lunge Kickback Curl Press', weight: 0)
264
+ @moves << Move.new(name: 'Towel Hoppers')
265
+ add_break
266
+ @moves << Move.new(name: 'Reach High & Under Push-Ups')
267
+ @moves << Move.new(name: 'Steam Engine')
268
+ @moves << Move.new(name: 'Dreya Rolls')
269
+ @moves << Move.new(name: 'Plan to Chaturanga Iso')
270
+ @moves << Move.new(name: 'Halfback')
271
+ @moves << Move.new(name: 'Table Dip Leg Raises')
272
+ end
273
+
274
+ def create_chest_shoulders_triceps
275
+ @moves << Move.new(name: 'Slow-Motion 3-in-1 Push-Ups')
276
+ @moves << Move.new(name: 'In & Out Shoulder Flys', weight: 0)
277
+ @moves << Move.new(name: 'Chair Dips')
278
+ @moves << Move.new(name: 'Plange Push-Ups')
279
+ @moves << Move.new(name: 'Pike Presses')
280
+ @moves << Move.new(name: 'Side Tri-Rises')
281
+ @moves << Move.new(name: 'Floor Flys (Switch every 4 reps)')
282
+ @moves << Move.new(name: 'Scarecrows', weight: 0)
283
+ @moves << Move.new(name: 'Overhead Triceps Extensions', weight: 0)
284
+ @moves << Move.new(name: 'Two-Twitch Speed Push-Ups (4 Fast, 3 Slow)')
285
+ @moves << Move.new(name: 'Y-Presses', weight: 0)
286
+ @moves << Move.new(name: 'Lying Triceps Extensions', weight: 0)
287
+ add_break
288
+ @moves << Move.new(name: 'Side-to-Side Push-Ups')
289
+ @moves << Move.new(name: 'Pour Flys', weight: 0)
290
+ @moves << Move.new(name: 'Side-Leaning Triceps Extensions', weight: 0)
291
+ @moves << Move.new(name: 'One-Arm Push-Ups')
292
+ @moves << Move.new(name: 'Weighted Circles (2 X 20 reps)', weight: 0)
293
+ @moves << Move.new(name: 'Throw the Bomb', weight: 0)
294
+ @moves << Move.new(name: 'Clap or Plyo Push-Ups')
295
+ @moves << Move.new(name: 'Slo-Mo Throws', weight: 0)
296
+ @moves << Move.new(name: 'Front-to-Back Triceps Extensions', weight: 0)
297
+ @moves << Move.new(name: 'One-Arm Balance Push-Ups')
298
+ @moves << Move.new(name: 'Fly-Row-Presses', weight: 0)
299
+ @moves << Move.new(name: 'Dumbbell Cross-Body Blows', weight: 0)
300
+ end
301
+
302
+ def create_back_and_biceps
303
+ @moves << Move.new(name: 'Wide Front Pull-Ups')
304
+ @moves << Move.new(name: 'Lawnmowers', weight: 0)
305
+ @moves << Move.new(name: 'Twenty-Ones', weight: 0)
306
+ @moves << Move.new(name: 'One-Arm Cross-Body Curls', weight: 0)
307
+ @moves << Move.new(name: 'Switch Grip Pull-Ups (Switch every 2 reps)')
308
+ @moves << Move.new(name: 'Elbows-Out Lawnmowers', weight: 0)
309
+ @moves << Move.new(name: 'Standing Bicep Curls', weight: 0)
310
+ @moves << Move.new(name: 'One-Arm Concentration Curls', weight: 0)
311
+ @moves << Move.new(name: 'Corn Cob Pull-Ups')
312
+ @moves << Move.new(name: 'Reverse Grip Bent-Over Rows', weight: 0)
313
+ @moves << Move.new(name: 'Open-Arm Curls', weight: 0)
314
+ @moves << Move.new(name: 'Static-Arm Curls', weight: 0)
315
+ add_break
316
+ @moves << Move.new(name: 'Towel Pull-Ups (Switch every 3)')
317
+ @moves << Move.new(name: 'Congdon Locomotives', weight: 0)
318
+ @moves << Move.new(name: 'Crouching Cohen Curls', weight: 0)
319
+ @moves << Move.new(name: 'One-Arm Corkscrew Curls', weight: 0)
320
+ @moves << Move.new(name: 'Chin-Ups')
321
+ @moves << Move.new(name: 'Seated Bent-Over Back Flys', weight: 0)
322
+ @moves << Move.new(name: 'Curl-Up/Hammer Downs', weight: 0)
323
+ @moves << Move.new(name: 'Hammer Curls', weight: 0)
324
+ @moves << Move.new(name: 'Max Rep Pull-Ups')
325
+ @moves << Move.new(name: 'Superman (6 x 10 seconds)')
326
+ @moves << Move.new(name: 'In-Out Hammer Curls', weight: 0)
327
+ @moves << Move.new(name: 'Strip-Set Curls (round 1 of 4)', weight: 0)
328
+ @moves << Move.new(name: 'Strip-Set Curls (round 2 of 4)', weight: 0)
329
+ @moves << Move.new(name: 'Strip-Set Curls (round 3 of 4)', weight: 0)
330
+ @moves << Move.new(name: 'Strip-Set Curls (round 4 of 4)', weight: 0)
331
+ end
332
+
333
+ def create_cardio_x
334
+ @moves << Move.new(name: 'Sun Salutations')
335
+ @moves << Move.new(name: 'Runner Poses')
336
+ @moves << Move.new(name: 'Warrior One')
337
+ @moves << Move.new(name: 'Warrior Two')
338
+ @moves << Move.new(name: 'Reverse Warrior')
339
+ add_break
340
+ @moves << Move.new(name: 'Ball Kicks')
341
+ @moves << Move.new(name: 'Hook-Uppercut-Side Kick')
342
+ @moves << Move.new(name: 'Front & Back Knuckles-Ball Kick-Back Kick')
343
+ @moves << Move.new(name: 'Jab-Cross-Hook-Uppercut')
344
+ @moves << Move.new(name: 'Three Direction Kicks')
345
+ add_break
346
+ @moves << Move.new(name: 'Airborne Heisman')
347
+ @moves << Move.new(name: 'Swing Kicks')
348
+ @moves << Move.new(name: 'Jump Shots')
349
+ @moves << Move.new(name: 'Tires')
350
+ @moves << Move.new(name: 'Wacky Jacks')
351
+ @moves << Move.new(name: 'Airborne Heisman')
352
+ @moves << Move.new(name: 'Swing Kicks')
353
+ @moves << Move.new(name: 'Jump Shots')
354
+ @moves << Move.new(name: 'Tires')
355
+ @moves << Move.new(name: 'Wacky Jacks')
356
+ add_break
357
+ @moves << Move.new(name: 'Squat X Press')
358
+ @moves << Move.new(name: 'Steam Engine')
359
+ @moves << Move.new(name: 'Dreya Roll')
360
+ @moves << Move.new(name: 'Squat Run')
361
+ @moves << Move.new(name: 'Superman Banana')
362
+ end
363
+
364
+ def create_ab_ripper_x
365
+ @moves << Move.new(name: 'In & Outs')
366
+ @moves << Move.new(name: 'Seated Bicycle')
367
+ @moves << Move.new(name: 'Reverse Bicycle')
368
+ @moves << Move.new(name: 'Crunchy Frogs')
369
+ @moves << Move.new(name: 'Crossed Leg/Wide Leg Sit-Ups')
370
+ @moves << Move.new(name: 'Fifer Scissors')
371
+ @moves << Move.new(name: "Hip Rock 'N Raise")
372
+ @moves << Move.new(name: 'Pulse-Ups (Heels to the Heavens)')
373
+ @moves << Move.new(name: 'Roll-Up/V-Up Combo')
374
+ @moves << Move.new(name: 'Oblique V-Ups')
375
+ @moves << Move.new(name: 'Leg Climbers')
376
+ @moves << Move.new(name: 'Mason Twist')
377
+ end
378
+
379
+ def create_rest_stretch
380
+ @moves << Move.new(name: 'Sun Salutations')
381
+ @moves << Move.new(name: 'Neck Stretch')
382
+ @moves << Move.new(name: 'Back Up the Car')
383
+ @moves << Move.new(name: 'Head Rolls')
384
+ @moves << Move.new(name: 'Expand Chest')
385
+ @moves << Move.new(name: 'Shoulder Stretch')
386
+ @moves << Move.new(name: 'Forearm Flex')
387
+ @moves << Move.new(name: 'Dreya Stretch')
388
+ @moves << Move.new(name: 'Cat Stretch')
389
+ @moves << Move.new(name: 'Glute Stretch')
390
+ @moves << Move.new(name: 'Arm Circles')
391
+ @moves << Move.new(name: 'Shoulder/Triceps Combo')
392
+ @moves << Move.new(name: 'Hamstring Stretch')
393
+ @moves << Move.new(name: 'Camel')
394
+ @moves << Move.new(name: 'Roller')
395
+ @moves << Move.new(name: 'Shoulder Stand')
396
+ @moves << Move.new(name: 'Back Hero')
397
+ @moves << Move.new(name: 'Quad Stretch')
398
+ @moves << Move.new(name: 'Frog')
399
+ @moves << Move.new(name: 'Seated Stretch')
400
+ @moves << Move.new(name: 'Standing Hamstring')
401
+ @moves << Move.new(name: 'Downward Dog')
402
+ @moves << Move.new(name: 'Upward Dog')
403
+ @moves << Move.new(name: 'Child’s Pose')
404
+ end
405
+
406
+ def load_moves
407
+ case @name
408
+ when Routine::CHEST_AND_BACK then create_chest_and_back
409
+ when Routine::PLYOMETRICS then create_plyometrics
410
+ when Routine::SHOULDERS_AND_ARMS then create_shoulders_and_arms
411
+ when Routine::YOGA_X then create_yoga_x
412
+ when Routine::LEGS_AND_BACK then create_legs_and_back
413
+ when Routine::KENPO_X then create_kenpo_x
414
+ when Routine::CORE_SYNERGISTICS then create_core_synergistics
415
+ when Routine::CHEST_SHOULDERS_AND_TRICEPS then create_chest_shoulders_triceps
416
+ when Routine::BACK_AND_BICEPS then create_back_and_biceps
417
+ when Routine::CARDIO_X then create_cardio_x
418
+ when Routine::AB_RIPPER_X then create_ab_ripper_x
419
+ when Routine::REST_STRETCH then create_rest_stretch
420
+ end
421
+ end
422
+ end
423
+ end
data/lib/workouts.rb ADDED
@@ -0,0 +1,8 @@
1
+ class Workouts
2
+ end
3
+
4
+ require 'workouts/day'
5
+ require 'workouts/move'
6
+ require 'workouts/round'
7
+ require 'workouts/routine'
8
+ require 'workouts/workout'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: workouts
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.0
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Teo Dell'Amico
@@ -16,7 +16,12 @@ executables: []
16
16
  extensions: []
17
17
  extra_rdoc_files: []
18
18
  files:
19
- - lib/workout.rb
19
+ - lib/workouts.rb
20
+ - lib/workouts/day.rb
21
+ - lib/workouts/move.rb
22
+ - lib/workouts/round.rb
23
+ - lib/workouts/routine.rb
24
+ - lib/workouts/workout.rb
20
25
  homepage: http://rubygems.org/gems/workouts
21
26
  licenses:
22
27
  - MIT
data/lib/workout.rb DELETED
@@ -1,2 +0,0 @@
1
- class Workout
2
- end