pushkin_ballet_secrets.qsrc 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359
  1. # pushkin_ballet_secrets
  2. !! Author: Hooded Silence
  3. !! Date Created: Nov, 2023
  4. !! Version: .01
  5. !! Version: .02 - added ballet lessons, and tweaked training stats growth.
  6. !! Author: Hooded Silence
  7. !! A dance shop which includes ballet, gymnastics and physio-therapy sources. Alternative path to ballet or dance career in second year and first.
  8. !! TODO: - NPCs to be created
  9. $default_img_path = 'locations/pushkin/ballet_secrets/'
  10. if $ARGS[0] = 'init':
  11. *clr & cla
  12. gs 'shortgs', 'setloc', 'pushkin_ballet_secrets', $ARGS[0]
  13. $location_type = 'public_indoors'
  14. $setloc['StageTitle'] = 'Ballet Secrets'
  15. $setloc['StageImage'] = '<<$default_img_path>>ballet-shop-window.jpg'
  16. $location_type = 'public_indoors'
  17. gs 'themes', 'indoors'
  18. gs 'core_library', 'stage_title'
  19. minut += 5
  20. gs 'stat'
  21. if week < 7 and hour >= 9 and hour <= 17:
  22. 'You enter the shop getting greeted by a riot of displays showcasing ballet and other dance equipment. A woman is sewing something in the corner and glances at you before continuing.'
  23. if balletqw['ballet_secrets'] = 1:
  24. act 'Approach the woman': gt $loc, 'first_visit'
  25. else
  26. act 'Leave the shop': gt 'pushkin_sq'
  27. act 'Enter the fitness studio': gt $loc, 'reception'
  28. !! act 'Talk to assistant':
  29. !! act'Look at equipment'
  30. !! act 'look at dance wear'
  31. end
  32. else
  33. 'You look at the shop window and realize it''s closed, there is a security door to the left of you that allows you access the studio areas if you are a member.'
  34. act 'Return to Okhlopkov Square' : gt 'pushkin_sq'
  35. if balletqw['membership'] >= daystart:
  36. act 'Swipe membership card': gt $loc, 'reception'
  37. end
  38. end
  39. end
  40. !! Intro
  41. if $ARGS[0] = 'first_visit':
  42. balletqw['ballet_secrets_visit'] = 1
  43. balletqw['shoe_order'] = daystart + 14
  44. $setloc['StageImage'] = '<<$default_img_path>>ballet_secrets_fitting_1.jpg'
  45. minut += 60
  46. gs 'core_library', 'stage_title'
  47. gs 'stat'
  48. 'You are greeted by a middle aged woman. "Hello, how may I help you?" She askes politely.'
  49. '"Hello, I am <<$pcs_firstname>> <<$pcs_lastname>>. I am part of the ballet school intake." you give her a smile and hand over the school''s letter as proof.'
  50. 'The woman smiles warmly, "Ah you are the new students for this year?" she claps her hands and then takes yours, "Come, come we must measure your feet and order your shoes"'
  51. 'Before you say anything she''s dragging you through the shop towards the back we are greeted by a wall of shoes and there are pictures on the wall signed by dancers with shoes next to them. You look at the woman.'
  52. '"Yes, they are all dancers who are or have been clients of our establishment", she noticed your gaze and explained with pride."We will only provide the best for the school."'
  53. !! TODO: Set up gate for sponsored or not, not implemented system needs to be added to the end of year assessment.
  54. '"But where are my manners I am Darya Pushkina, I am the owner of this shop and facilies" she exclaims, "now to your fitting grabbing a tape measure and fitting tools for your feet"'
  55. 'For the next hour, Madam Pushkina bombards you with questions of whether you want leather or cotton fabric, how many satin shoes and a myriad other questions before she finally relents.'
  56. '"Of course, as you are aware the school is sponsoring these costs, but only for the first year she says and you will need to manage your own equipment after this.", Madame Pushkina advises.'
  57. '"Is there anything else you need? No? Good, I will see you again in two weeks for your final shoe fitting. I would like to extend my congratulations and wish you a successful career Ms. <<$pcs_lastname>>."'
  58. act 'Leave': gt 'pushkin_sq'
  59. act 'Return to shop': gt $loc, 'init'
  60. end
  61. !! Services
  62. !! Sports Area - Req Membership card
  63. if $ARGS[0] = 'reception':
  64. gs 'shortgs', 'setloc', 'pushkin_ballet_secrets', $ARGS[0]
  65. $location_type = 'public_indoors'
  66. $setloc['StageTitle'] = 'Ballet Secrets - Reception'
  67. $setloc['StageImage'] = '<<$default_img_path>>reception.jpg'
  68. $location_type = 'public_indoors'
  69. gs 'themes', 'indoors'
  70. gs 'core_library', 'stage_title'
  71. minut += 5
  72. gs 'stat'
  73. 'As you enter you are greeted warmly by the gym staff. The gym has an industrial feel reflecting the building being converted from an old factory.'
  74. 'There is a <a href="exec: gt ''food'', ''watercooler''">drinking fountain</a> near the doors to the gym hall to refill your water bottle.'
  75. act 'Leave the studio': gt 'pushkin_sq'
  76. act 'Return to shop': gt $loc, 'init'
  77. act 'Changing rooms': gt $loc, 'changing_room'
  78. !! if membership not active:
  79. if balletqw['membership'] = 0 or balletqw['membership'] < daystart:
  80. act 'Discuss membership': gt $loc, 'enrol'
  81. elseif hour <= 15 and PCloSport = 1:
  82. if pcs_energy < 20:
  83. *nl
  84. 'You are to exhausted to participate in a class.'
  85. elseif pcs_stam < stammax / 5:
  86. *nl
  87. 'You feel to hungry to participate in a class.'
  88. else
  89. !! link to services:
  90. !! if membership active
  91. !! act 'Attend Physio': gt $loc, 'physio'
  92. !! act 'Attend a gymnastics class.': gt $loc, 'gymnastics_courses'
  93. act 'Attend a ballet class (2 hr)': gt $loc, 'ballet_courses'
  94. act 'Attend a yoga class (1 hr)': gt $loc, 'yoga_courses'
  95. !! act 'Look at jobs board': gt $loc, 'jobs'
  96. end
  97. elseif hour >= 16:
  98. *nl
  99. 'All the evening classes have started today, you need to be here before 16:00 to ensure you can attend.'
  100. end
  101. end
  102. if $ARGS[0]= 'enrol':
  103. $epayments['method'] = ''
  104. $epayments['item_variable'] = ''
  105. $epayments['description'] = 'gym facilities access'
  106. $epayments['loc'] = 'pushkin_ballet_secrets'
  107. $epayments['loc_arg'] = 'reception'
  108. $epayments['banner']= '<<$default_img_path>>reception.jpg'
  109. gs 'core_library', 'stage_title'
  110. minut += 30
  111. gs 'stat'
  112. if balletqw['membership'] = 0:
  113. 'You approach the reception to discuss membership to the gym.'
  114. elseif balletqw['membership'] ! 0:
  115. 'You approach the reception to renew your membership.'
  116. end
  117. act 'Return to the studio entrance': gt $loc, 'reception'
  118. 'The gym offers a weekly or monthly subscription for 1,500<b> ₽</b> or 5,000<b> ₽</b> to use the facilities with some courses included. Physio appointments and personal trainers are charged separately.'
  119. 'The subscriptions include classes in gymnastics, yoga and introductory ballet. For advanced classes, there is an additional instructor charge. A personal trainer is on hand to assist at all times if you so need one.'
  120. 'We also have a small café which attracts a members discount and your membership card can purchase items directly from the vending machine which will be billed to your account.'
  121. *nl
  122. if money >= 5000 or (karta >= 5000):
  123. '<td> <a href="exec: epayments[''value''] = 5000 & balletqw[''membership''] = daystart + 30 & gs ''shortgs'',''payments'' ">Purchase a monthly subscription for 5,000<b> ₽</b> and get one week free!</a></td>'
  124. end
  125. if money >= 1500 or (karta >= 1500):
  126. '<td> <a href="exec: epayments[''value''] = 1500 & balletqw[''membership''] = daystart + 7 & gs ''shortgs'',''payments'' ">Purchase a weekly subscription for 1,500<b> ₽</b></a></td>'
  127. end
  128. end
  129. if $ARGS[0] = 'changing_room':
  130. menu_off = 0
  131. gs 'shortgs', 'setloc', 'pushkin_ballet_secrets', $ARGS[0]
  132. $location_type = 'public'
  133. $locclass = 'changingroom'
  134. gs 'themes', 'indoors'
  135. minut += 5
  136. gs 'stat'
  137. '<center><h2>Changing Room</h2></center>'
  138. '<center><img <<$set_imgh>> src="images/locations/city/citycenter/gym/locker.jpg"></center>'
  139. act 'Return to the studio reception': gt $loc, 'reception'
  140. act 'Use mirror':
  141. cla
  142. gt 'mirror', 'start'
  143. end
  144. act 'Change outfit':
  145. cla
  146. gt 'wardrobe', 'start'
  147. end
  148. gs 'wardrobe', 'default_clothing_options'
  149. if mc_inventory['deodorant'] > 0 and deodorant_on = 0:
  150. 'Your deodorant will last you for <b><<mc_inventory[''deodorant'']>></b> more '+iif(mc_inventory['deodorant'] = 1, 'application.', 'applications.')
  151. act 'Apply deodorant (0:01)':
  152. *clr & cla
  153. menu_off = 1
  154. minut += 1
  155. mc_inventory['deodorant'] -= 1
  156. gs 'sweat', 'deo'
  157. iif(func('body_din','pregnancyVisibility') = 1, '<center><img <<$set_imgh>> src="images/shared/home/bathroom/deodorant_preg.jpg"></center>', '<center><img <<$set_imgh>> src="images/shared/home/bathroom/deodorant.jpg"></center>')
  158. 'You apply deodorant to your armpits. It will keep you feeling fresh and clean for longer.'
  159. act 'Continue': menu_off = 0 & gt $loc, 'changing_room'
  160. end
  161. end
  162. gs 'core_library', 'bathroom'
  163. end
  164. !! Physiotherapy
  165. if $ARGS[0] = 'physio':
  166. gs 'shortgs', 'setloc', 'pushkin_ballet_secrets', $ARGS[0]
  167. $location_type = 'public_indoors'
  168. $setloc['StageTitle'] = 'Ballet Secrets - Physio'
  169. $setloc['StageImage'] = '<<$default_img_path>>physio.jpg'
  170. $location_type = 'public_indoors'
  171. gs 'themes', 'indoors'
  172. gs 'core_library', 'stage_title'
  173. !! TODO: write attendance spiel
  174. act 'Leave': gt 'pushkin_sq'
  175. end
  176. !! Gymnastics
  177. if $ARGS[0] = 'gymnastics_courses':
  178. gs 'shortgs', 'setloc', 'pushkin_ballet_secrets', $ARGS[0]
  179. $location_type = 'public_indoors'
  180. $setloc['StageTitle'] = 'Ballet Secrets - Gymnastics Class'
  181. $setloc['StageImage'] = '<<$default_img_path>>gymnastics.jpg'
  182. $location_type = 'public_indoors'
  183. gs 'themes', 'indoors'
  184. gs 'core_library', 'stage_title'
  185. !! TODO: write attendance spiel and some random reactions for post-exercise such that was a great workout, you didn''t feel you did well today
  186. act 'Leave': gt 'pushkin_sq'
  187. end
  188. !! Ballet Courses Easy, Intermediate and advanced
  189. if $ARGS[0] = 'ballet_courses':
  190. gs 'shortgs', 'setloc', 'pushkin_ballet_secrets', $ARGS[0]
  191. $location_type = 'public_indoors'
  192. $setloc['StageTitle'] = 'Ballet Secrets - Courses'
  193. if pcs_danc <= 49:
  194. $setloc['StageImage'] = '<<$default_img_path>>basic_class.jpg'
  195. elseif pcs_danc <=74:
  196. $setloc['StageImage'] = '<<$default_img_path>>intermediate_class.jpg'
  197. else
  198. $setloc['StageImage'] = '<<$default_img_path>>advanced_class.jpg'
  199. end
  200. $location_type = 'public_indoors'
  201. gs 'themes', 'indoors'
  202. gs 'core_library', 'stage_title'
  203. if balletqw['ballet_session'] ! daystart:
  204. balletqw['ballet_session'] = daystart
  205. if pcs_danc <= 49:
  206. gs 'pain', 2, 'legL', 'stretch'
  207. gs 'pain', 2, 'legR', 'stretch'
  208. gs 'pain', 2, 'shoulders', 'stretch'
  209. gs 'pain', 2, 'armL', 'stretch'
  210. gs 'pain', 2, 'armR', 'stretch'
  211. gs 'pain', 2, 'back', 'stretch'
  212. gs 'pain', 2, 'chest', 'stretch'
  213. gs 'exercise', 'tier3', 120, 'agil', 'stren', 'danc'
  214. 'You enter the classroom and the practice barres are already set up for the class.. You start to perform your stretch exercises and warm ups before your introductory ballet lesson starts along your fellow students.'
  215. elseif pcs_danc >= 50 or dance_skill <= 74:
  216. gs 'pain', 4, 'legL', 'stretch'
  217. gs 'pain', 4, 'legR', 'stretch'
  218. gs 'pain', 3, 'shoulders', 'stretch'
  219. gs 'pain', 3, 'armL', 'stretch'
  220. gs 'pain', 3, 'armR', 'stretch'
  221. gs 'pain', 4, 'back', 'stretch'
  222. gs 'pain', 3, 'chest', 'stretch'
  223. gs 'exercise', 'tier3', 120, 'agil', 'stren', 'danc'
  224. 'You enter the classroom and the practice barres are already set up for the class. You start to perform your stretch exercises and warm ups before your intermediate lesson starts along your fellow students.'
  225. else
  226. gs 'pain', 4, 'legL', 'stretch'
  227. gs 'pain', 4, 'legR', 'stretch'
  228. gs 'pain', 3, 'shoulders', 'stretch'
  229. gs 'pain', 3, 'armL', 'stretch'
  230. gs 'pain', 3, 'armR', 'stretch'
  231. gs 'pain', 4, 'back', 'stretch'
  232. gs 'pain', 3, 'chest', 'stretch'
  233. gs 'exercise', 'tier4', 120, 'agil', 'stren', 'danc'
  234. 'You enter the classroom and the practice barres are already set up for the class. You start to perform your stretch exercises and warm ups before your advanced lesson starts along your fellow students.'
  235. end
  236. gs 'stat'
  237. act 'Return to the studio reception': gt $loc, 'reception'
  238. else
  239. 'There is another fitness class in progress and no more ballet sessions today.'
  240. end
  241. act 'Return to the studio reception': gt $loc, 'reception'
  242. end
  243. !! Yoga class
  244. if $ARGS[0] = 'yoga_courses':
  245. gs 'shortgs', 'setloc', 'pushkin_ballet_secrets', $ARGS[0]
  246. $location_type = 'public_indoors'
  247. $setloc['StageTitle'] = 'Ballet Secrets - Yoga Class'
  248. $setloc['StageImage'] = '<<$default_img_path>>yoga_class.jpg'
  249. $location_type = 'public_indoors'
  250. gs 'themes', 'indoors'
  251. gs 'core_library', 'stage_title'
  252. minut += 5
  253. gs 'stat'
  254. if balletqw['yoga_session'] ! daystart:
  255. act 'Attend Yoga Class':
  256. cla
  257. balletqw['yoga_session'] = daystart
  258. lesson_tier = rand(1,3)
  259. if lesson_tier = 1:
  260. gs 'exercise', 'tier2', 60, 'sprt', 'agil'
  261. 'You spend sixty minutes in an easy going class today, leaving you feeling refreshed and ready to face the world again.'
  262. elseif lesson_tier = 2:
  263. 'You spend sixty minutes with your instructor today correcting your poses and providing advice on how you can improve, leaving you feeling tired and some muscle aches from the exercises.'
  264. gs 'exercise', 'tier3', 60, 'sprt', 'agil'
  265. else
  266. gs 'exercise', 'tier4', 60, 'sprt', 'agil', 'stren'
  267. 'Today''s sixty minutes was challenging with the instructor taking the class through some of the more demanding positions. Leaving many of your yoga buddies look more than a little bit ragged after todays session.'
  268. end
  269. pcs_willpwr += rand(1,lesson_tier)
  270. !! Set minor pain to reflect exercising
  271. gs 'pain', 2, 'legL', 'stretch'
  272. gs 'pain', 2, 'legR', 'stretch'
  273. gs 'pain', 2, 'shoulders', 'stretch'
  274. gs 'pain', 2, 'armL', 'stretch'
  275. gs 'pain', 2, 'armR', 'stretch'
  276. gs 'pain', 2, 'back', 'stretch'
  277. gs 'pain', 2, 'chest', 'stretch'
  278. killvar 'lesson_tier'
  279. act 'Return to the studio reception': gt $loc, 'reception'
  280. end
  281. else
  282. 'There is another fitness class in progress and no more yoga sessions today.'
  283. end
  284. act 'Return to the studio reception': gt $loc, 'reception'
  285. end
  286. if $ARGS[0] = 'jobs':
  287. !! TODO: Add ad hoc dance or promo events.
  288. end
  289. !! Shopping
  290. if $ARGS[0] = 'clothing':
  291. gs 'shortgs', 'setloc', 'pushkin_ballet_secrets', $ARGS[0]
  292. $location_type = 'public_indoors'
  293. $setloc['StageTitle'] = 'Ballet Secrets - Dancewear'
  294. $setloc['StageImage'] = '<<$default_img_path>>sports_shop.jpg'
  295. $location_type = 'public_indoors'
  296. gs 'themes', 'indoors'
  297. gs 'core_library', 'stage_title'
  298. act 'Leave': gt 'pushkin_sq'
  299. end
  300. !! TODO: Custom Tutus for quests/shows, ballet shoe fitting, clothing, physio items, portable ballet equipment (barre) etc.
  301. if $ARGS[0] = 'quest':
  302. gs 'shortgs', 'setloc', 'pushkin_ballet_secrets', $ARGS[0]
  303. $location_type = 'public_indoors'
  304. $setloc['StageTitle'] = 'Ballet Secrets'
  305. $setloc['StageImage'] = '<<$default_img_path>>quest.jpg'
  306. $location_type = 'public_indoors'
  307. gs 'themes', 'indoors'
  308. gs 'core_library', 'stage_title'
  309. act 'Leave': gt 'pushkin_sq'
  310. end
  311. if $ARGS[0] = 'food':
  312. gs 'shortgs', 'setloc', 'pushkin_ballet_secrets', $ARGS[0]
  313. $location_type = 'public_indoors'
  314. $setloc['StageTitle'] = 'Food Court'
  315. $setloc['StageImage'] = '<<$default_img_path>>food_court.jpg'
  316. $location_type = 'public_indoors'
  317. gs 'themes', 'indoors'
  318. gs 'core_library', 'stage_title'
  319. 'There is a small area set aside for vending machines to provide drinks and food to help you relax and gain some energy back after your sessions. It also has knick knacks in case you forgot to bring items for your class. '
  320. act 'Leave': gt 'pushkin_sq'
  321. end
  322. --- ballet_secrets ---------------------------------