1
0

exercise.qsrc 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659
  1. # exercise
  2. !{This will centralize calls for exercise. For calls where you wish to allow multiple types of exercises, such as a bedroom or yard, use gs 'exercise', 'start'
  3. For direct calls use this format: gs 'exercise', $ARGS[0], ARG[1], $ARGS[2], $ARGS[3], $ARGS[4]
  4. $ARGS[0] is the workout tier and the higher the tier, the greater the workout intensity.
  5. Values: 'tier1' 'tier2' 'tier3' 'tier4'
  6. ARG[1] is the time override. By default the tiers are in 15 minute segments if being called from an event with predetermined time set this to 1
  7. Values: 0 (default of 15 minutes) 1 (time set to 0)
  8. $ARGS[2] and on are the stats to be affected by the workout NOTE: use the _exp variant, not the pcs_!!!!
  9. Values: 'stren_exp' 'vital_exp' 'agil_exp' 'sprt_exp' 'react_exp'
  10. Other stats can be added if desired - for a dance-a-thon you might use gs 'exercise', 'tier1', 0, 'agil_exp', 'danc_exp'
  11. }
  12. if $ARGS[0] = 'start':
  13. if (pcs_stam >=15 or pcs_stam >= 10 and bookYog + obruch > 0):
  14. 'There is enough space in the room to <a href="exec: gt ''exercise'', ''workout''">exercise</a>.'
  15. else
  16. 'There is enough space in the room for a variety of exercises, but you don''t have the energy to work out now.'
  17. end
  18. end
  19. if $ARGS[0] = 'workout':
  20. $menu_loc = 'exercise'
  21. $menu_arg = 'workout'
  22. menu_off = 0
  23. *clr & cla
  24. exer_menu = 0
  25. gs 'exercise', 'routines'
  26. clothesAtLocation = FUNC('lost_clothes_here',$loc)
  27. if $clothingworntype = 'nude' and clothesAtLocation = 1:
  28. act 'End workout and get dressed':
  29. cla
  30. minut += 5
  31. gs 'underwear', 'wear'
  32. gs 'clothing', 'recover_lost_clothes', $loc, 1
  33. gs 'stat'
  34. gt $loc, $metka
  35. end
  36. else
  37. act 'End workout':
  38. gt $loc, $metka
  39. end
  40. end
  41. if $clothingworntype = 'nude' or $clothingworntype = 'exercise':
  42. act 'Manual routines': gt 'exercise', 'manual'
  43. act 'Define routines': gt 'exercise', 'setup'
  44. if exer_stam[1] ! 0 and pcs_stam > exer_stam[1]: act '<<$excer_name[1]>> - (<<exer_stam[1]>> stamina)': exercisex = 1 & gt 'exercise', 'auto'
  45. if exer_stam[2] ! 0 and pcs_stam > exer_stam[2]: act '<<$excer_name[2]>> - (<<exer_stam[2]>> stamina)': exercisex = 2 & gt 'exercise', 'auto'
  46. if exer_stam[3] ! 0 and pcs_stam > exer_stam[3]: act '<<$excer_name[3]>> - (<<exer_stam[3]>> stamina)': exercisex = 3 & gt 'exercise', 'auto'
  47. if exer_stam[4] ! 0 and pcs_stam > exer_stam[4]: act '<<$excer_name[4]>> - (<<exer_stam[4]>> stamina)': exercisex = 4 & gt 'exercise', 'auto'
  48. if exer_stam[5] ! 0 and pcs_stam > exer_stam[5]: act '<<$excer_name[5]>> - (<<exer_stam[5]>> stamina)': exercisex = 5 & gt 'exercise', 'auto'
  49. elseif $clothingworntype ! 'nude' or $clothingworntype ! 'exercise':
  50. '<b>You need to equip the proper attire before you can exercise</b>'
  51. end
  52. end
  53. if $ARGS[0] = 'auto':
  54. exer_auto = 1
  55. if exer_rout0[exercisex] > 0:
  56. timemult = exer_rout0[exercisex] & gs 'exercise', 'timestring' & gt 'exercise', 'push'
  57. elseif exer_rout1[exercisex] > 0:
  58. timemult = exer_rout1[exercisex] & gs 'exercise', 'timestring' & gt 'exercise', 'press'
  59. elseif exer_rout2[exercisex] > 0:
  60. timemult = exer_rout2[exercisex] & gs 'exercise', 'timestring' & gt 'exercise', 'rope'
  61. elseif exer_rout3[exercisex] > 0:
  62. timemult = exer_rout3[exercisex] & gs 'exercise', 'timestring' & gt 'exercise', 'yoga'
  63. elseif exer_rout4[exercisex] > 0:
  64. timemult = exer_rout4[exercisex] & gs 'exercise', 'timestring' & gt 'exercise', 'hula'
  65. end
  66. end
  67. if $ARGS[0] = 'auto1':
  68. if exer_rout1[exercisex] > 0:
  69. timemult = exer_rout1[exercisex] & gs 'exercise', 'timestring' & gt 'exercise', 'press'
  70. elseif exer_rout2[exercisex] > 0:
  71. timemult = exer_rout2[exercisex] & gs 'exercise', 'timestring' & gt 'exercise', 'rope'
  72. elseif exer_rout3[exercisex] > 0:
  73. timemult = exer_rout3[exercisex] & gs 'exercise', 'timestring' & gt 'exercise', 'yoga'
  74. elseif exer_rout4[exercisex] > 0:
  75. timemult = exer_rout4[exercisex] & gs 'exercise', 'timestring' & gt 'exercise', 'hula'
  76. else
  77. gt 'exercise', 'auto_end'
  78. end
  79. end
  80. if $ARGS[0] = 'auto2':
  81. if exer_rout2[exercisex] > 0:
  82. timemult = exer_rout2[exercisex] & gs 'exercise', 'timestring' & gt 'exercise', 'rope'
  83. elseif exer_rout3[exercisex] > 0:
  84. timemult = exer_rout3[exercisex] & gs 'exercise', 'timestring' & gt 'exercise', 'yoga'
  85. elseif exer_rout4[exercisex] > 0:
  86. timemult = exer_rout4[exercisex] & gs 'exercise', 'timestring' & gt 'exercise', 'hula'
  87. else
  88. gt 'exercise', 'auto_end'
  89. end
  90. end
  91. if $ARGS[0] = 'auto3':
  92. if exer_rout3[exercisex] > 0:
  93. timemult = exer_rout3[exercisex] & gs 'exercise', 'timestring' & gt 'exercise', 'yoga'
  94. elseif exer_rout4[exercisex] > 0:
  95. timemult = exer_rout4[exercisex] & gs 'exercise', 'timestring' & gt 'exercise', 'hula'
  96. else
  97. gt 'exercise', 'auto_end'
  98. end
  99. end
  100. if $ARGS[0] = 'auto4':
  101. if exer_rout4[exercisex] > 0:
  102. timemult = exer_rout4[exercisex] & gs 'exercise', 'timestring' & gt 'exercise', 'hula'
  103. else
  104. gt 'exercise', 'auto_end'
  105. end
  106. end
  107. if $ARGS[0] = 'auto_end':
  108. exer_auto = 0
  109. gt 'exercise', 'workout'
  110. end
  111. if $ARGS[0] = 'manual':
  112. $menu_loc = 'exercise'
  113. $menu_arg = 'manual'
  114. menu_off = 0
  115. cla
  116. act 'Return':gt 'exercise', 'workout'
  117. if pcs_stam >= 15:
  118. Act 'Do pushups for 15 minutes': timemult = 1 & gs 'exercise', 'timestring' & gt 'exercise', 'push'
  119. Act 'Do crunches for 15 minutes': timemult = 1 & gs 'exercise', 'timestring' & gt 'exercise', 'press'
  120. if skak > 0 and $loc ! 'Meadow':
  121. Act 'Jump rope for 15 minutes': timemult = 1 & gs 'exercise', 'timestring' & gt 'exercise', 'rope'
  122. end
  123. end
  124. if pcs_stam >= 10:
  125. if bookYog > 0:
  126. Act 'Do yoga for 15 minutes': timemult = 1 & gs 'exercise', 'timestring' & gt 'exercise', 'yoga'
  127. end
  128. if obruch > 0 and $loc ! 'Meadow':
  129. Act 'Use your hula hoop for 15 minutes': timemult = 1 & gs 'exercise', 'timestring' & gt 'exercise', 'hula'
  130. end
  131. end
  132. if pcs_stam >= 30:
  133. Act 'Do pushups for 30 minutes': timemult = 2 & gs 'exercise', 'timestring' & gt 'exercise', 'push'
  134. Act 'Do crunches for 30 minutes': timemult = 2 & gs 'exercise', 'timestring' & gt 'exercise', 'press'
  135. if skak > 0 and $loc ! 'Meadow':
  136. Act 'Jump rope for 30 minutes': timemult = 2 & gs 'exercise', 'timestring' & gt 'exercise', 'rope'
  137. end
  138. end
  139. if pcs_stam >= 20:
  140. if bookYog > 0:
  141. Act 'Do yoga for 30 minutes': timemult = 2 & gs 'exercise', 'timestring' & gt 'exercise', 'yoga'
  142. end
  143. if obruch > 0 and $loc ! 'Meadow':
  144. Act 'Use your hula hoop for 30 minutes': timemult = 2 & gs 'exercise', 'timestring' & gt 'exercise', 'hula'
  145. end
  146. end
  147. if pcs_stam >= 45:
  148. Act 'Do pushups for 45 minutes': timemult = 3 & gs 'exercise', 'timestring' & gt 'exercise', 'push'
  149. Act 'Do crunches for 45 minutes': timemult = 3 & gs 'exercise', 'timestring' & gt 'exercise', 'press'
  150. if skak > 0 and $loc ! 'Meadow':
  151. Act 'Jump rope for 45 minutes': timemult = 3 & gs 'exercise', 'timestring' & gt 'exercise', 'rope'
  152. end
  153. end
  154. if pcs_stam >= 30:
  155. if bookYog > 0:
  156. Act 'Do yoga for 45 minutes': timemult = 3 & gs 'exercise', 'timestring' & gt 'exercise', 'yoga'
  157. end
  158. if obruch > 0 and $loc ! 'Meadow':
  159. Act 'Use your hula hoop for 45 minutes': timemult = 3 & gs 'exercise', 'timestring' & gt 'exercise', 'hula'
  160. end
  161. end
  162. if pcs_stam >= 60:
  163. Act 'Do pushups for 60 minutes': timemult = 4 & gs 'exercise', 'timestring' & gt 'exercise', 'push'
  164. Act 'Do crunches for 60 minutes': timemult = 4 & gs 'exercise', 'timestring' & gt 'exercise', 'press'
  165. if skak > 0 and $loc ! 'Meadow':
  166. Act 'Jump rope for 60 minutes': timemult = 4 & gs 'exercise', 'timestring' & gt 'exercise', 'rope'
  167. end
  168. end
  169. if pcs_stam >= 40:
  170. if bookYog > 0:
  171. Act 'Do yoga for 60 minutes': timemult = 4 & gs 'exercise', 'timestring' & gt 'exercise', 'yoga'
  172. end
  173. if obruch > 0 and $loc ! 'Meadow':
  174. Act 'Use your hula hoop for 60 minutes': timemult = 4 & gs 'exercise', 'timestring' & gt 'exercise', 'hula'
  175. end
  176. end
  177. if pcs_stam < 10 or pcs_stam < 15 and bookYog + obruch = 0:
  178. 'You don''t have the energy to work out anymore now.'
  179. end
  180. end
  181. if $ARGS[0] = 'routines':
  182. *clr & cla
  183. '<center><h2>Exercise Routines</h2></center>'
  184. *nl
  185. '<center><table>'
  186. '<TD><b>Routine</b></TD><TD><b>Push ups</b></TD><TD><b>Crunches</b></TD><TD><b>Jump rope</b></TD><TD><b>Yoga</TD><TD><b>Hula hoop</b></TD>'
  187. '<TR><TD width="100" cellspacing="2" align="left">'+iif(exer_menu = 1,'<a href="exec:$excer_name[1] = input (''<center>Enter name for exercise routine 1<br>Leave blank to restore default name.</center>'') & gs ''exercise'', ''rename'' & gt ''exercise'', ''setup''"><<$excer_name[1]>>:</a> ','<<$excer_name[1]>>:</a> ')+'</TD><TD width="100" cellspacing="2" align="left"><b><<exer_rout0[1]*15>></b> minutes</TD><TD width="100" cellspacing="2" align="left"><b><<exer_rout1[1]*15>></b> minutes</TD><TD width="100" cellspacing="2" align="left"><b><<exer_rout2[1]*15>></b> minutes</TD><TD width="100" cellspacing="2" align="left"><b><<exer_rout3[1]*15>></b> minutes</TD><TD width="100" cellspacing="2" align="left"><b><<exer_rout4[1]*15>></b> minutes</TD>'
  188. '<TR><TD width="100" cellspacing="2" align="left">'+iif(exer_menu = 1,'<a href="exec:$excer_name[2] = input (''<center>Enter name for exercise routine 2<br>Leave blank to restore default name.</center>'') & gs ''exercise'', ''rename'' & gt ''exercise'', ''setup''"><<$excer_name[2]>>:</a> ','<<$excer_name[2]>>:</a> ')+'</TD><TD width="100" cellspacing="2" align="left"><b><<exer_rout0[2]*15>></b> minutes</TD><TD width="100" cellspacing="2" align="left"><b><<exer_rout1[2]*15>></b> minutes</TD><TD width="100" cellspacing="2" align="left"><b><<exer_rout2[2]*15>></b> minutes</TD><TD width="100" cellspacing="2" align="left"><b><<exer_rout3[2]*15>></b> minutes</TD><TD width="100" cellspacing="2" align="left"><b><<exer_rout4[2]*15>></b> minutes</TD>'
  189. '<TR><TD width="100" cellspacing="2" align="left">'+iif(exer_menu = 1,'<a href="exec:$excer_name[3] = input (''<center>Enter name for exercise routine 3<br>Leave blank to restore default name.</center>'') & gs ''exercise'', ''rename'' & gt ''exercise'', ''setup''"><<$excer_name[3]>>:</a> ','<<$excer_name[3]>>:</a> ')+'</TD><TD width="100" cellspacing="2" align="left"><b><<exer_rout0[3]*15>></b> minutes</TD><TD width="100" cellspacing="2" align="left"><b><<exer_rout1[3]*15>></b> minutes</TD><TD width="100" cellspacing="2" align="left"><b><<exer_rout2[3]*15>></b> minutes</TD><TD width="100" cellspacing="2" align="left"><b><<exer_rout3[3]*15>></b> minutes</TD><TD width="100" cellspacing="2" align="left"><b><<exer_rout4[3]*15>></b> minutes</TD>'
  190. '<TR><TD width="100" cellspacing="2" align="left">'+iif(exer_menu = 1,'<a href="exec:$excer_name[4] = input (''<center>Enter name for exercise routine 4<br>Leave blank to restore default name.</center>'') & gs ''exercise'', ''rename'' & gt ''exercise'', ''setup''"><<$excer_name[4]>>:</a> ','<<$excer_name[4]>>:</a> ')+'</TD><TD width="100" cellspacing="2" align="left"><b><<exer_rout0[4]*15>></b> minutes</TD><TD width="100" cellspacing="2" align="left"><b><<exer_rout1[4]*15>></b> minutes</TD><TD width="100" cellspacing="2" align="left"><b><<exer_rout2[4]*15>></b> minutes</TD><TD width="100" cellspacing="2" align="left"><b><<exer_rout3[4]*15>></b> minutes</TD><TD width="100" cellspacing="2" align="left"><b><<exer_rout4[4]*15>></b> minutes</TD>'
  191. '<TR><TD width="100" cellspacing="2" align="left">'+iif(exer_menu = 1,'<a href="exec:$excer_name[5] = input (''<center>Enter name for exercise routine 5<br>Leave blank to restore default name.</center>'') & gs ''exercise'', ''rename'' & gt ''exercise'', ''setup''"><<$excer_name[5]>>:</a> ','<<$excer_name[5]>>:</a> ')+'</TD><TD width="100" cellspacing="2" align="left"><b><<exer_rout0[5]*15>></b> minutes</TD><TD width="100" cellspacing="2" align="left"><b><<exer_rout1[5]*15>></b> minutes</TD><TD width="100" cellspacing="2" align="left"><b><<exer_rout2[5]*15>></b> minutes</TD><TD width="100" cellspacing="2" align="left"><b><<exer_rout3[5]*15>></b> minutes</TD><TD width="100" cellspacing="2" align="left"><b><<exer_rout4[5]*15>></b> minutes</TD>'
  192. '<TR><TD colspan="7"><br><br><center><a href="exec:gt ''exercise'', ''setup''">Define up to 5 automated exercise routines.</a></center></TD></TR>'
  193. '</table></center>'
  194. *nl
  195. end
  196. if $ARGS[0] = 'setup':
  197. $menu_loc = 'exercise'
  198. $menu_arg = 'setup'
  199. menu_off = 0
  200. *clr & cla
  201. exer_menu = 1
  202. gs 'exercise', 'routines'
  203. act 'Return': gt 'exercise', 'workout'
  204. act 'Define <<$excer_name[1]>>':i = 1 & gt 'exercise', 'matrix'
  205. act 'Rename <<$excer_name[1]>>':
  206. $excer_name[1] = input ('<center>Enter name for exercise routine 1<br>Leave blank to restore default name.</center>')
  207. gs 'exercise', 'rename'
  208. gt 'exercise', 'setup'
  209. end
  210. act 'Define <<$excer_name[2]>>':i = 2 & gt 'exercise', 'matrix'
  211. act 'Rename <<$excer_name[2]>>':
  212. $excer_name[2] = input ('<center>Enter name for exercise routine 2<br>Leave blank to restore default name.</center>')
  213. gs 'exercise', 'rename'
  214. gt 'exercise', 'setup'
  215. end
  216. act 'Define <<$excer_name[3]>>':i = 3 & gt 'exercise', 'matrix'
  217. act 'Rename <<$excer_name[3]>>':
  218. $excer_name[3] = input ('<center>Enter name for exercise routine 3<br>Leave blank to restore default name.</center>')
  219. gs 'exercise', 'rename'
  220. gt 'exercise', 'setup'
  221. end
  222. act 'Define <<$excer_name[4]>>':i = 4 & gt 'exercise', 'matrix'
  223. act 'Rename <<$excer_name[4]>>':
  224. $excer_name[4] = input ('<center>Enter name for exercise routine 4<br>Leave blank to restore default name.</center>')
  225. gs 'exercise', 'rename'
  226. gt 'exercise', 'setup'
  227. end
  228. act 'Define <<$excer_name[5]>>':i = 5 & gt 'exercise', 'matrix'
  229. act 'Rename <<$excer_name[5]>>':
  230. $excer_name[5] = input ('<center>Enter name for exercise routine 5<br>Leave blank to restore default name.</center>')
  231. gs 'exercise', 'rename'
  232. gt 'exercise', 'setup'
  233. end
  234. !!exer_rout1 = default
  235. end
  236. if $ARGS[0] = 'rename':
  237. if $excer_name[1] = '':$excer_name[1] = 'Default 1'
  238. if $excer_name[2] = '':$excer_name[2] = 'Default 2'
  239. if $excer_name[3] = '':$excer_name[3] = 'Default 3'
  240. if $excer_name[4] = '':$excer_name[4] = 'Default 4'
  241. if $excer_name[5] = '':$excer_name[5] = 'Default 5'
  242. end
  243. if $ARGS[0] = 'matrix':
  244. *clr & cla
  245. exer_stam[i] = exer_stam0[i] + exer_stam1[i] + exer_stam2[i] + exer_stam3[i] + exer_stam4[i]
  246. act'Confirm': gt 'exercise', 'setup'
  247. 'Choose your exercise options from the following table:'
  248. '<center><table border=0 cellspacing=0 cellpadding=10 width=1000><TH>Exercise</TH><TH>None</TH><TH>15 mins</TH><TH>30 mins</TH><TH>45 mins</TH><TH>60 mins</TH>'
  249. gs 'exercise', 'matrixdata', 0, 'Push ups'
  250. gs 'exercise', 'matrixdata', 1, 'Crunches'
  251. if skak > 0 and $loc ! 'Meadow': gs 'exercise', 'matrixdata', 2, 'Jump rope'
  252. if bookYog > 0: gs 'exercise', 'matrixdata', 3, 'Yoga'
  253. if obruch > 0 and $loc ! 'Meadow': gs 'exercise', 'matrixdata', 4, 'Hula hoop'
  254. '</center></table>'
  255. *nl
  256. 'Total stamina required - <<exer_stam[i]>>'
  257. end
  258. if $ARGS[0] = 'matrixdata':
  259. '<TR>'
  260. *p '<TD><<$ARGS[2]>></TD>'
  261. if dyneval('RESULT = exer_rout<<ARGS[1]>>[<<i>>]') = 0:
  262. dynamic 'exer_stam<<ARGS[1]>>[<<i>>] = 0'
  263. *p '<TD>Selected</TD>'
  264. else
  265. *p '<TD><a href="exec:dynamic ''exer_rout<<ARGS[1]>>[i] = 0'' & gt ''exercise'', ''matrix''">Select</a></TD>'
  266. end
  267. if dyneval('RESULT = exer_rout<<ARGS[1]>>[<<i>>]') = 1:
  268. if ARGS[1] >= 3:
  269. dynamic 'exer_stam<<ARGS[1]>>[<<i>>] = 10'
  270. else
  271. dynamic 'exer_stam<<ARGS[1]>>[<<i>>] = 15'
  272. end
  273. *p '<TD>Selected</TD>'
  274. else
  275. *p '<TD><a href="exec:dynamic ''exer_rout<<ARGS[1]>>[i] = 1'' & gt ''exercise'', ''matrix''">Select</a></TD>'
  276. end
  277. if dyneval('RESULT = exer_rout<<ARGS[1]>>[<<i>>]') = 2:
  278. if ARGS[1] >= 3:
  279. dynamic 'exer_stam<<ARGS[1]>>[<<i>>] = 20'
  280. else
  281. dynamic 'exer_stam<<ARGS[1]>>[<<i>>] = 30'
  282. end
  283. *p '<TD>Selected</TD>'
  284. else
  285. *p '<TD><a href="exec:dynamic ''exer_rout<<ARGS[1]>>[i] = 2'' & gt ''exercise'', ''matrix''">Select</a></TD>'
  286. end
  287. if dyneval('RESULT = exer_rout<<ARGS[1]>>[<<i>>]') = 3:
  288. if ARGS[1] >= 3:
  289. dynamic 'exer_stam<<ARGS[1]>>[<<i>>] = 30'
  290. else
  291. dynamic 'exer_stam<<ARGS[1]>>[<<i>>] = 45'
  292. end
  293. *p '<TD>Selected</TD>'
  294. else
  295. *p '<TD><a href="exec:dynamic ''exer_rout<<ARGS[1]>>[i] = 3'' & gt ''exercise'', ''matrix''">Select</a></TD>'
  296. end
  297. if dyneval('RESULT = exer_rout<<ARGS[1]>>[<<i>>]') = 4:
  298. if ARGS[1] >= 3:
  299. dynamic 'exer_stam<<ARGS[1]>>[<<i>>] = 40'
  300. else
  301. dynamic 'exer_stam<<ARGS[1]>>[<<i>>] = 60'
  302. end
  303. *p '<TD>Selected</TD>'
  304. else
  305. *p '<TD><a href="exec:dynamic ''exer_rout<<ARGS[1]>>[i] = 4'' & gt ''exercise'', ''matrix''">Select</a></TD>'
  306. end
  307. exer_stam[i] = exer_stam0[i] + exer_stam1[i] + exer_stam2[i] + exer_stam3[i] + exer_stam4[i]
  308. end
  309. if $ARGS[0] = 'hula':
  310. cla
  311. *clr
  312. loopcount = 1
  313. :timeloophula
  314. gs 'exercise', 'tier2', 0, 'agil_exp', 'react_exp'
  315. if loopcount < timemult: loopcount += 1 & jump 'timeloophula'
  316. loopcount = 0
  317. timemult = 0
  318. if $clothingworntype ! 'nude':
  319. if $location_type = 'secluded':
  320. if month >=5 and month <= 9:
  321. '<center><img <<$set_imgh>> src="images/pc/activities/hulaoutdoors.jpg"></center>'
  322. else
  323. '<center><video autoplay loop src="images/pc/activities/hulawinter.mp4"></video></center>'
  324. end
  325. else
  326. '<center><video autoplay loop src="images/pc/activities/huladressed.mp4"></video></center>'
  327. end
  328. elseif $pantyworntype ! 'none':
  329. '<center><video autoplay loop src="images/pc/activities/hula_underwear.mp4"></video></center>'
  330. else
  331. '<center><video autoplay loop src="images/pc/activities/obruch.mp4"></video></center>'
  332. end
  333. 'You improve your dexterity by using your hula hoop for <<$timestring>> minutes.'
  334. gs 'stat'
  335. if exer_auto = 1:
  336. act 'Continue': gt 'exercise', 'auto_end'
  337. else
  338. act 'Continue': gt 'exercise', 'manual'
  339. end
  340. end
  341. if $ARGS[0] = 'yoga':
  342. cla
  343. *clr
  344. loopcount = 1
  345. :timeloopyoga
  346. gs 'exercise', 'tier2', 0, 'sprt_exp', 'agil_exp', 'pcs_willpwr'
  347. if loopcount < timemult: loopcount += 1 & jump 'timeloopyoga'
  348. loopcount = 0
  349. timemult = 0
  350. if $clothingworntype ! 'nude':
  351. if $location_type = 'secluded':
  352. '<center><img <<$set_imgh>> src="images/pc/activities/yoga_dressed_outdoor.jpg"></center>'
  353. else
  354. '<center><video autoplay loop src="images/pc/activities/yoga_dressed.mp4"></video></center>'
  355. end
  356. elseif $pantyworntype ! 'none':
  357. '<center><video autoplay loop src="images/pc/activities/yoga_underwear.mp4"></video></center>'
  358. else
  359. '<center><video autoplay loop src="images/pc/activities/yoga_naked.mp4"></video></center>'
  360. end
  361. 'You meditate for <<$timestring>> minutes, improving your will.'
  362. gs 'stat'
  363. if exer_auto = 1:
  364. act 'Continue': gt 'exercise', 'auto4'
  365. else
  366. act 'Continue': gt 'exercise', 'manual'
  367. end
  368. end
  369. if $ARGS[0] = 'rope':
  370. cla
  371. *clr
  372. loopcount = 1
  373. :timelooprope
  374. gs 'exercise', 'tier3', 0, 'agil_exp', 'react_exp'
  375. if loopcount < timemult: loopcount += 1 & jump 'timelooprope'
  376. loopcount = 0
  377. timemult = 0
  378. if $clothingworntype ! 'nude':
  379. '<center><video autoplay loop src="images/pc/activities/rope_dressed.mp4"></video></center>'
  380. elseif $pantyworntype ! 'none':
  381. '<center><img <<$set_imgh>> src="images/pc/activities/rope_underwear.jpg"></center>'
  382. else
  383. '<center><video autoplay loop src="images/pc/activities/rope_naked.mp4"></video></center>'
  384. end
  385. 'You jump rope for <<$timestring>> minutes, improving your speed.'
  386. gs 'stat'
  387. if exer_auto = 1:
  388. act 'Continue': gt 'exercise', 'auto3'
  389. else
  390. act 'Continue': gt 'exercise', 'manual'
  391. end
  392. end
  393. if $ARGS[0] = 'press':
  394. cla
  395. *clr
  396. loopcount = 1
  397. :timelooppress
  398. gs 'exercise', 'tier3', 0, 'vital_exp'
  399. if loopcount < timemult: loopcount += 1 & jump 'timelooppress'
  400. loopcount = 0
  401. timemult = 0
  402. if $clothingworntype ! 'nude':
  403. '<center><video autoplay loop src="images/pc/activities/abdominal_dressed.mp4"></video></center>'
  404. elseif $pantyworntype ! 'none':
  405. '<center><video autoplay loop src="images/pc/activities/abdominal_underwear.mp4"></video></center>'
  406. else
  407. '<center><video autoplay loop src="images/pc/activities/abdominal_naked.mp4"></video></center>'
  408. end
  409. 'You do a series of abdominal exercises for <<$timestring>> minutes, improving your endurance.'
  410. gs 'stat'
  411. if exer_auto = 1:
  412. act 'Continue': gt 'exercise', 'auto2'
  413. else
  414. act 'Continue': gt 'exercise', 'manual'
  415. end
  416. end
  417. if $ARGS[0] = 'push':
  418. cla
  419. *clr
  420. loopcount = 1
  421. :timelooppush
  422. gs 'exercise', 'tier3', 0, 'stren_exp'
  423. if loopcount < timemult: loopcount += 1 & jump 'timelooppush'
  424. loopcount = 0
  425. timemult = 0
  426. if $clothingworntype ! 'nude':
  427. '<center><video autoplay loop src="images/pc/activities/push_dressed.mp4"></video></center>'
  428. elseif $pantyworntype ! 'none':
  429. '<center><video autoplay loop src="images/pc/activities/push_underwear.mp4"></video></center>'
  430. else
  431. '<center><video autoplay loop src="images/pc/activities/push_naked.mp4"></video></center>'
  432. end
  433. 'You do push-ups for <<$timestring>> minutes, improving your strength.'
  434. randpushfact = rand(-5,5)
  435. if pcs_energy < 40: randpushfact -= RAND(1,10)
  436. pushnum = (pcs_stren * pcs_sleep * pcs_health) / ( 1 * 67 * healthmax) + randpushfact
  437. if pushnum < 1: pushnum = rand(1,5)
  438. KILLVAR 'randpushfact'
  439. '<br>You managed to do <<pushnum>> push-ups. Your previous record is <<pushrecord>>.'
  440. if pushrecord < pushnum:pushrecord = pushnum & 'This is a new record!'
  441. gs 'stat'
  442. if exer_auto = 1:
  443. act 'Continue': gt 'exercise', 'auto1'
  444. else
  445. act 'Continue': gt 'exercise', 'manual'
  446. end
  447. end
  448. if $ARGS[0] = 'tier1':
  449. if ARGS[1] = 0:
  450. minut += 15
  451. else
  452. minut += ARGS[1]
  453. end
  454. gs 'exercise', 'get_sport_clothes_exercise_bonus'
  455. pcs_stam -= (5 * (10 - sport_clothes_exercise_bonus)) / 10
  456. gs 'sweat', 'add', 3
  457. fat -= 1
  458. pcs_mood += 3
  459. pcs_willpwr += 3
  460. if $ARGS[3] = '':
  461. dynamic '<<$ARGS[2]>> += 1'
  462. if $ARGS[2] = 'vital_exp' or $ARGS[2] = 'stren_exp':
  463. dynamic '<<$ARGS[2]>> += rand(0,steroid_dose)'
  464. if steroid_dose > 0 and rand(1,5) <= steroid_dose:clit_size += rand(0,1)
  465. end
  466. else
  467. i = 2
  468. :exploop
  469. if $ARGS[i] ! '':
  470. dynamic '<<$ARGS[i]>> += rand(0,1)'
  471. if $ARGS[i] = 'vital_exp' or $ARGS[i] = 'stren_exp': dynamic '<<$ARGS[i]>> += rand(0,steroid_dose) & steroidcheck = 1'
  472. i += 1
  473. jump 'exploop'
  474. else
  475. if steroidcheck = 1 and steroid_dose > 0 and rand(1,5) <= steroid_dose:clit_size += rand(0,1)
  476. killvar 'steroidcheck'
  477. killvar 'i'
  478. exit
  479. end
  480. end
  481. end
  482. if $ARGS[0] = 'tier2':
  483. if ARGS[1] = 0:
  484. minut += 15
  485. else
  486. minut += ARGS[1]
  487. end
  488. gs 'exercise', 'get_sport_clothes_exercise_bonus'
  489. pcs_stam -= (10 * (10 - sport_clothes_exercise_bonus)) / 10
  490. gs 'sweat', 'add', 10
  491. fat -= 2
  492. pcs_mood += 5
  493. pcs_willpwr += 5
  494. if $ARGS[3] = '':
  495. dynamic '<<$ARGS[2]>> += rand(2,3)'
  496. if $ARGS[2] = 'vital_exp' or $ARGS[2] = 'stren_exp':
  497. dynamic '<<$ARGS[2]>> += rand(0,steroid_dose)'
  498. if steroid_dose > 0 and rand(1,5) <= steroid_dose:clit_size += rand(0,1)
  499. end
  500. else
  501. i = 2
  502. :exploop2
  503. if $ARGS[i] ! '':
  504. dynamic '<<$ARGS[i]>> += rand(1,2)'
  505. if $ARGS[i] = 'vital_exp' or $ARGS[i] = 'stren_exp': dynamic '<<$ARGS[i]>> += rand(0,steroid_dose) & steroidcheck = 1'
  506. i += 1
  507. jump 'exploop2'
  508. else
  509. if steroidcheck = 1 and steroid_dose > 0 and rand(1,5) <= steroid_dose:clit_size += rand(0,1)
  510. killvar 'steroidcheck'
  511. killvar 'i'
  512. end
  513. end
  514. end
  515. if $ARGS[0] = 'tier3':
  516. if ARGS[1] = 0:
  517. minut += 15
  518. else
  519. minut += ARGS[1]
  520. end
  521. gs 'exercise', 'get_sport_clothes_exercise_bonus'
  522. pcs_stam -= (15 * (10 - sport_clothes_exercise_bonus)) / 10
  523. gs 'sweat', 'add', 15
  524. fat -= 3
  525. pcs_mood += 5
  526. pcs_willpwr += 5
  527. if $ARGS[3] = '':
  528. dynamic '<<$ARGS[2]>> += rand(3,5)'
  529. if $ARGS[2] = 'vital_exp' or $ARGS[2] = 'stren_exp':
  530. dynamic '<<$ARGS[2]>> += rand(0,steroid_dose)'
  531. if steroid_dose > 0 and rand(1,5) <= steroid_dose:clit_size += rand(0,1)
  532. end
  533. else
  534. i = 2
  535. :exploop3
  536. if $ARGS[i] ! '':
  537. dynamic '<<$ARGS[i]>> += rand(2,3)'
  538. if $ARGS[i] = 'vital_exp' or $ARGS[i] = 'stren_exp': dynamic '<<$ARGS[i]>> += rand(0,steroid_dose) & steroidcheck = 1'
  539. i += 1
  540. jump 'exploop3'
  541. else
  542. if steroidcheck = 1 and steroid_dose > 0 and rand(1,5) <= steroid_dose:clit_size += rand(0,1)
  543. killvar 'steroidcheck'
  544. killvar 'i'
  545. end
  546. end
  547. end
  548. if $ARGS[0] = 'tier4':
  549. if ARGS[1] = 0:
  550. minut += 15
  551. else
  552. minut += ARGS[1]
  553. end
  554. gs 'exercise', 'get_sport_clothes_exercise_bonus'
  555. pcs_stam -= (25 * (10 - sport_clothes_exercise_bonus)) / 10
  556. gs 'sweat', 'add', 25
  557. fat -= 4
  558. pcs_mood += 5
  559. pcs_willpwr += 5
  560. if $ARGS[3] = '':
  561. dynamic '<<$ARGS[2]>> += rand(7,10)'
  562. if $ARGS[2] = 'vital_exp' or $ARGS[2] = 'stren_exp':
  563. dynamic '<<$ARGS[2]>> += rand(0,steroid_dose)'
  564. if steroid_dose > 0 and rand(1,5) <= steroid_dose:clit_size += rand(0,1)
  565. end
  566. else
  567. i = 2
  568. :exploop4
  569. if $ARGS[i] ! '':
  570. dynamic '<<$ARGS[i]>> += rand(3,5)'
  571. if $ARGS[i] = 'vital_exp' or $ARGS[i] = 'stren_exp': dynamic '<<$ARGS[i]>> += rand(0,steroid_dose) & steroidcheck = 1'
  572. i += 1
  573. jump 'exploop4'
  574. else
  575. if steroidcheck = 1 and steroid_dose > 0 and rand(1,5) <= steroid_dose:clit_size += rand(0,1)
  576. killvar 'steroidcheck'
  577. killvar 'i'
  578. end
  579. end
  580. end
  581. if $ARGS[0] = 'timestring':
  582. if timemult = 1: $timestring = 'fifteen'
  583. if timemult = 2: $timestring = 'thirty'
  584. if timemult = 3: $timestring = 'forty-five'
  585. if timemult = 4: $timestring = 'sixty'
  586. end
  587. if $ARGS[0] = 'get_sport_clothes_exercise_bonus':
  588. sport_clothes_exercise_bonus = 0
  589. if $braworntype = 'sport':
  590. sport_clothes_exercise_bonus = sport_clothes_exercise_bonus + 1
  591. end
  592. if $pantyworntype = 'sport':
  593. sport_clothes_exercise_bonus = sport_clothes_exercise_bonus + 1
  594. end
  595. if $clothingworntype = 'exercise':
  596. sport_clothes_exercise_bonus = sport_clothes_exercise_bonus + 1
  597. end
  598. if $shoeworntype = 'trainers':
  599. sport_clothes_exercise_bonus = sport_clothes_exercise_bonus + 1
  600. end
  601. end
  602. --- exercise ---------------------------------