pushkin_ballet_res.qsrc 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363
  1. # pushkin_ballet_res
  2. !! Date Created: 17th Sept, 2022
  3. !! Version: .01
  4. !! Author: Hooded Silence
  5. !!
  6. !! Ballet Summer School - Residential accomodation activities.
  7. !! Residental block is restricted to communal shower, room and a bedroom.
  8. !! Curfew for the block is 2100, with penalties to final school score for breaching it. Entry is gated by buzzer.
  9. !!
  10. !! Variables
  11. !!
  12. !! ballet_first_visit - used to set first night
  13. !! ballet_day - Sets which day of the course you are on.
  14. !! prep - How much prep work for the exam has been done. To be used as part of the assessment mechanics.
  15. if $ARGS[0] = 'start':
  16. *clr & cla
  17. gs 'shortgs', 'setloc', 'pushkin_ballet_res', $ARGS[0]
  18. minut += 45
  19. gs 'stat'
  20. '<center><h1>Welcome and Introduction</h1></center>'
  21. '<center><img <<$set_imgh>> src="mod/img_ballet/pushkin/npc/warden.jpg"></center>'
  22. *nl
  23. 'As you and your group enter the halls for the first time, you are greeted by a matronly-looking woman who will be your warden during your stay.'
  24. '"Welcome, students, to your first night at these halls. I''m your warden, <<$npc_firstname[''A3513'']>> <<$npc_lastname[''A3513'']>>. If you have any problems or need assistance, you can find me in the room to the right." She gestures towards a door with a brass plaque that reads "Warden".'
  25. '"I will go through the student roster, and you will respond each evening. You can also find a list of rules in your bedroom, which will be strictly enforced. We do not tolerate any behavior that brings this school into disrepute."'
  26. *pl '"Do you understand?" '
  27. 'With that, you and the other students answer in unison, "Yes, Ms. <<$npc_lastname[''A3513'']>>."'
  28. '"Very well. I suggest you read the rules in your bedroom. Ignorance will not be accepted as an excuse."'
  29. *nl
  30. '"With that out of the way, I will now assign your rooms." She consults her clipboard and starts reading out student names, ticking them off as she allocates rooms.'
  31. '"<<$pcs_firstname>> <<$pcs_lastname>>?" "Here!" you reply, "You''ve been assigned to room twelve, first floor to the right of the staircase. Do you have any questions? No? I will see you in the communal room once you''ve settled in."'
  32. act 'Find your room': gt 'pushkin_ballet_res', 'bedroom'
  33. end
  34. if $ARGS[0] = 'bedroom':
  35. *clr & cla
  36. !! Init
  37. gs 'shortgs', 'setloc', 'pushkin_ballet_res', $ARGS[0]
  38. $location_type = 'private'
  39. $setloc['StageTitle'] = 'Residental Bedroom'
  40. $setloc['StageImage'] = 'pushkin/residence/bedroom'
  41. gs 'themes', 'indoors'
  42. gs 'stat'
  43. gs 'core_library', 'stage_title'
  44. if ballet_first_visit = 0:
  45. ballet_first_visit = 1
  46. if week ! 7 : ballet_day = week
  47. 'You look around your room that will be the bedroom for the next week, and a small comfortable bed sits in the corner. You have a desk you can study on. In the corner, there''s a full-size <a href="exec:gt ''wardrobe'', ''start''">wardrobe</a> with a mirror on one of the doors.'
  48. 'You start to unpack your suitcase into the wardrobe and settle for the evening before preparing to meet your fellow students.'
  49. 'On the wall beside the entrance are various instructions for fire evacuation. Alongside these instructions is a sheet of paper with the words <b>Accommodation Rules</b>.'
  50. act 'Explore the rest of the accommodation': gt 'pushkin_ballet_res', 'hallway'
  51. act 'Read the rules': gt 'pushkin_ballet_res', 'rules'
  52. else
  53. 'You enter your room and sit at your desk, wondering what to do next.'
  54. 'In the corner is your <a href="exec:gt ''wardrobe'', ''start''">wardrobe</a> containing a Ballet Blanc for your upcoming assessment and your clothes for the week.'
  55. if komp = 1: 'Your <a href="exec: gt ''Komp'',''start''">computer</a> is on your desk.'
  56. 'Your <a href="exec:gt ''budilnik'', ''start''">alarm clock</a> is set to <b>'+iif(timer < 10,'0<<timer>>','<<timer>>')+':'+iif(timerM < 10,'0<<timerM>>','<<timerM>>')+'</b> during the week and <b>'+iif(timerEnd < 10,'0<<timerEnd>>','<<timerEnd>>')+':'+iif(timerEndM < 10,'0<<timerEndM>>','<<timerEndM>>')+'</b> during the weekend. It is currently turned '+iif(budilnikOn = 0, '<a href="exec: budilnikOn = 1 & gt $loc">OFF</a>.', '<a href="exec: budilnikOn = 0 & gt $loc">ON</a>.')
  57. gs 'exercise', 'start'
  58. ! act 'Enter Shop': gt 'pushkin_ballet_shop', 'init'
  59. act 'Go to the hallway': minut += 5 & gt 'pushkin_ballet_res', 'hallway'
  60. !! Default actions
  61. gs 'core_library', 'bedroom'
  62. !! Non-standard actions
  63. if hour >= 16 and week ! 7:
  64. act 'Barre Practice (60m)': gt 'pushkin_ballet_evt', 'barre_exercise'
  65. act 'Study (60m)': gt 'pushkin_ballet_res', 'study'
  66. ! act 'Practice make up' : gt 'pushkin_ballet_evt', 'make_up'
  67. if feet_track ! daystart: act 'Take care of your feet': gt 'pushkin_ballet_res', 'feetcare'
  68. end
  69. act 'Listen to the radio (30m)': gt 'pushkin_ballet_res', 'radio'
  70. act 'Read the rules': gt 'pushkin_ballet_res', 'rules'
  71. act 'Debug data': gs 'pushkin_ballet_init', 'score_debug'
  72. end
  73. ! First Maya event
  74. if ballet_day = 3 and mayaqw['grave'] = 0:
  75. act 'Answer the knock <<$mod_ballet[''icon_green'']>>' : gt 'npc_3501_init','grave'
  76. elseif ballet_day = 3 and hour > 19 and mayaqw['grave'] = 1:
  77. act 'Another knock': gt 'npc_3501_init', 'post_grave'
  78. end
  79. end
  80. if $ARGS[0] = 'rules':
  81. *clr & cla
  82. minut += 5
  83. gs 'stat'
  84. *pl '<center><h2>Residence Rules</h2></center>'
  85. *pl 'You look at the rules on the wall.'
  86. *pl 'Whilst you stay in this accommodation, you will follow these rules:'
  87. '1) No males are allowed in the accommodation block.'
  88. '2) All residents must return to the block by 21:00. No exceptions. If you are late, you will have to report to the duty warden.'
  89. '3) No smoking, drinking, or drug use is allowed in the accommodation. If you are caught, you will face immediate dismissal from the school.'
  90. '4) Breakfast is from 06:00 to 07:00.'
  91. '5) All rooms must be kept clean and tidy.'
  92. '6) Valuables can be left with the duty warden if required. All thefts or problems are to be reported immediately.'
  93. '7) You are to follow the duty warden''s instructions in an emergency.'
  94. act 'Look away': gt 'pushkin_ballet_res', 'bedroom'
  95. end
  96. if $ARGS[0] = 'radio':
  97. *clr & cla
  98. minut += 30
  99. pcs_mood += rand(1,5)
  100. pcs_sleep -= rand(1,10)
  101. if ballet_day >= 1 and week ! 7:
  102. instrmusic_exp += rand(1,3)
  103. pcs_perform += rand(1,3)
  104. mod_homework[week] += 1
  105. mod_daily_score[week] += 1
  106. end
  107. gs 'stat'
  108. '<center><h2>Radio</h2></center>'
  109. '<center><img <<$set_imgh>> src="mod/img_ballet/pushkin/residence/russian_radio.jpg"></center>'
  110. 'You start to listen to the radio for half an hour, taking notes of the performance with the ideas from your earlier lesson. Then, you close your eyes and start humming along to the familiar music after a while. '
  111. act 'Turn the radio off': gt 'pushkin_ballet_res', 'bedroom'
  112. end
  113. if $ARGS[0] = 'hallway':
  114. *clr & cla
  115. gs 'shortgs', 'setloc', 'pushkin_ballet_res', $ARGS[0]
  116. $setloc['StageTitle'] = 'Residental Hallway'
  117. $setloc['StageImage'] = 'pushkin/residence/hall'
  118. $location_type = 'public_indoors'
  119. gs 'themes', 'indoors'
  120. gs 'stat'
  121. gs 'core_library', 'stage_title'
  122. ! Visit NPCs
  123. ballet_awol = 0
  124. if ballet_day ! week :
  125. ballet_day = week
  126. end
  127. nclass = 0
  128. act 'Leave building': minut += 5 & ballet_awol = 1 & gt 'pushkin_ballet_center', 'start'
  129. act 'Go to your room': minut += 5 & gt 'pushkin_ballet_res', 'bedroom'
  130. act 'Enter the communal room': minut += 5 & gt 'pushkin_ballet_res', 'communal_area'
  131. act 'Go to the bathroom': minut += 5 & gt 'pushkin_ballet_class', 'shower'
  132. act 'Go to the kitchen': minut += 5 & gt 'pushkin_ballet_res', 'kitchen'
  133. if week ! 7:
  134. ! act 'Visit Maya' : minut += 5 & gt 'pushkin_ballet_res', 'maya_room'
  135. end
  136. !act 'Knock on wardens door' : minut += 5 & gt 'pushkin_ballet_res', 'warden_room'
  137. if ballet_day = 7:
  138. 'The hall is bustling with various students settling into their rooms. A few of them wave or smile at you as you pass by. You see Bronya at the end of the hall, keeping an eye on the students and ready to ask questions.'
  139. elseif week = 2 and hour <= 18:
  140. gs 'pushkin_ballet_evt', 'res_events', 'birthday', 1
  141. else
  142. amb_event = rand(1,4)
  143. if amb_event = 1:
  144. 'You enter the elegant hallway of your residence, and hear music coming from one of the rooms to the side of you.'
  145. elseif amb_event = 2:
  146. 'As you enter the hallway you hear some giggling and laughter coming from one of the girls'' rooms.'
  147. elseif amb_event = 3:
  148. 'As you leave the room, you see a student dashing down the corridor, almost bumping into you. You hear them say "sorry" before vanishing into one of the rooms.'
  149. elseif amb_event = 4:
  150. if hour < 8 or hour > 21:
  151. 'You hear someone trying to play the piano at this hour. Before you can complain, you hear the piano being slammed shut, and you wince. A few moments later, two girls emerge from the communal room, arguing heatedly.'
  152. else
  153. 'You hear someone playing the piano in the communal room. You don''t recognize the piece being played, but its soothing melody relaxes you.'
  154. end
  155. end
  156. end
  157. if $ARGS[0] = 'warden':
  158. !! residential buzzer logic statements
  159. if (hour > 20 or hour < 6) and ballet_awol = 1:
  160. '"Pushkin Ballet Residential Block, how may I help you?", you hear Bronya''s icy voice through the intercom.'
  161. '"<<$pcs_firstname>> <<$pcs_lastname>>, can I be let in please?", there''s a few seconds pause.'
  162. '"<<$pcs_firstname>> <<$pcs_lastname>>, you will see me in my office. Now." You can swear the temperature around you just plummeted a few degrees and the door was buzzed open.'
  163. gt 'pushkin_ballet_res', 'warden_room'
  164. elseif (hour >= 17 or hour < 21 ) and ballet_awol = 1:
  165. '"Pushkin Ballet Residential Block, how may I help you?", you hear Bronya''s voice through the intercom.'
  166. '"<<$pcs_firstname>> <<$pcs_lastname>>, can I be let in please?", there''s a few seconds pause and you hear the door being buzzed open.'
  167. gt 'pushkin_ballet_res', 'hallway'
  168. elseif ballet_awol = 1:
  169. '"Pushkin Ballet Residential Block, how may I help you?", you hear Bronya''s voice through the intercom.'
  170. '"<<$pcs_firstname>> <<$pcs_lastname>>, can I be let in please?", there''s a few seconds pause.'
  171. '"<<$pcs_firstname>> <<$pcs_lastname>>, where the hell have you been? Get in here. Now.", you gulp at her voice and with trepidation make your way to her office.'
  172. gt 'pushkin_ballet_res', 'warden_room'
  173. else
  174. 'You press the buzzer but there''s no response.'
  175. act 'Return': gt 'pushkin_ballet_center', 'start'
  176. end
  177. end
  178. if $ARGS[0] = 'warden_room':
  179. *clr & cla
  180. gs 'shortgs', 'setloc', 'pushkin_ballet_res', $ARGS[0]
  181. $location_type = 'private'
  182. $setloc['StageTitle'] = 'Wardens Residence'
  183. $setloc['StageImage'] = 'npc/warden'
  184. $location_type = 'public_indoors'
  185. gs 'themes', 'indoors'
  186. gs 'stat'
  187. gs 'core_library', 'stage_title'
  188. ! Punishment or plot
  189. act 'Go to the hallway': minut += 5 & ballet_awol = 0 & gt 'pushkin_ballet_res', 'hallway'
  190. end
  191. if $ARGS[0] = 'maya_room':
  192. *clr & cla
  193. gs 'shortgs', 'setloc', 'pushkin_ballet_res', $ARGS[0]
  194. $location_type = 'private'
  195. gs 'themes', 'indoors'
  196. gs 'stat'
  197. '<center><h2>Maya''s Residental Bedroom</h2></center>'
  198. '<center><img <<$set_imgh>> src="mod/img_ballet/pushkin/residence/bedroom.jpg"></center>'
  199. 'Maya''s room closely resembles your own. Her wardrobe is open, and you see her collection of tutus hanging from the rails. On the desk, there are several books, including an open poetry book. A quick glance reveals the page title "Like a White Stone" by Akhmatova.'
  200. act 'Go to the hallway': minut += 5 & gt 'pushkin_ballet_res', 'hallway'
  201. ! Maya events
  202. end
  203. if $ARGS[0] = 'communal_area':
  204. *clr & cla
  205. gs 'shortgs', 'setloc', 'pushkin_ballet_res', $ARGS[0]
  206. $setloc['StageTitle'] = 'Communal Room'
  207. $setloc['StageImage'] = 'pushkin/residence/communal'
  208. $location_type = 'public_indoors'
  209. gs 'themes', 'indoors'
  210. gs 'stat'
  211. !!'You enter the communal room.'
  212. act 'Go to the hallway': minut += 5 & gt 'pushkin_ballet_res', 'hallway'
  213. if week = 7 and ballet_mod['res_mg'] = 0:
  214. ballet_mod['res_mg'] = 1
  215. gs 'pushkin_ballet_evt', 'res_events', 'introduction'
  216. elseif week = 2 and ((hour >= 18 and minut > 30) or (hour >= 19 or hour < 21)):
  217. !! minute += 90
  218. 'Attend party'
  219. elseif week =2 and hour < 18:
  220. !! minut += 20
  221. 'Write help setting out food.'
  222. end
  223. ! Communal random events
  224. end
  225. if $ARGS[0] = 'kitchen':
  226. *clr & cla
  227. gs 'shortgs', 'setloc', 'pushkin_ballet_res', $ARGS[0]
  228. $setloc['StageTitle'] = 'Residental Kitchen'
  229. $setloc['StageImage'] = 'pushkin/residence/kitchen'
  230. $location_type = 'communal'
  231. gs 'themes', 'indoors'
  232. gs 'stat'
  233. gs 'core_library', 'stage_title'
  234. act 'Go to the hallway': minut += 5 & gt 'pushkin_ballet_res', 'hallway'
  235. !! Set up events
  236. *nl
  237. if hour > 15:
  238. act 'Eat a light meal':gs 'food', 's_meal'
  239. act 'Eat an Evening Meal': dynamic $edahotd
  240. elseif (hour > 4 and hour < 8) and mayaqw['grave'] = 4 and sharedmeal ! daystart:
  241. act 'Have breakfast with Maya':
  242. *clr & cla
  243. sharedmeal = daystart
  244. gs 'food', 'family_meals', 'breakfast'
  245. gs 'stat'
  246. 'You encounter Maya as she prepares breakfast. You lend a hand with the preparations and engage in a conversation about your upcoming lessons while enjoying your morning meal.'
  247. act 'Finish breakfast': gt 'pushkin_ballet_res', 'kitchen'
  248. end
  249. elseif hour > 4 and hour < 8:
  250. act 'Eat breakfast':
  251. *clr & cla
  252. gs 'food', 'family_meals', 'breakfast'
  253. gs 'stat'
  254. 'You look in the fridge for some fruit and then make some porridge for breakfast.'
  255. act 'Finish breakfast': gt 'pushkin_ballet_res', 'kitchen'
  256. end
  257. end
  258. if week = 2 and (hour > 17 and hour < 19):
  259. gs 'pushkin_ballet_evt', 'kitchen_birthday'
  260. else
  261. 'You enter the kitchen area and you''re grateful the school provides the essentials for cooking and snacks for the pupils to eat during the evenings.'
  262. end
  263. end
  264. ! Activities
  265. if $ARGS[0] = 'feetcare':
  266. ! Feet care - to be expanded. with different routines.
  267. ! feet soak in Epsom salts
  268. ! Arnica gel to help reduce swelling around calfs and ankles, or soaking in witch hazel
  269. ! sew ballet shoes and break the soles for prep.
  270. ! Thera band for feet exercises
  271. ! check toe pads
  272. *clr & cla
  273. mood += rand(1, 10)
  274. pcs_health += 15
  275. mod_homework[week] += 1
  276. mod_daily_score[week] += 1
  277. minut +=30
  278. feet_track = daystart
  279. gs 'stat'
  280. '<center><img <<$set_imgh>> src="mod/img_ballet/pushkin/events/feet_soak.jpg"></center>'
  281. 'After a long day, you diligently inspect your calves and feet for injuries, gently massaging Arnica Gel onto your calves and ankles to alleviate stiffness and swelling. Next, you carefully examine your calluses and check for any blisters.'
  282. 'With the checks completed, you reach for your exercise band, commencing a series of foot-stretching exercises, culminating in a soothing massage using a tennis ball on your calves and soles.'
  283. 'You take a brief moment to unwind before donning your foot warmers, making your way to the kitchen to fetch cold water and investigate the freezer for ice. Fortunately, the school has stored ice cube trays. After replenishing the trays, you fill a bowl and carry it back to your room.'
  284. 'Seated on your bed, you pour the bowl of ice cubes and water into a larger container. Adding a touch of Epsom Salts, you brace yourself as you immerse your feet in the chilling water. Your body shudders briefly from the shock, but after a few moments, the sensation subsides. You close your eyes and attempt to relax.'
  285. ! logic check for then you check your new ballet shoes, and start sewing the ribbons on and break the sole to relax whilst your feet soak.
  286. act 'Finish feet care': gt 'pushkin_ballet_res', 'bedroom'
  287. end
  288. if $ARGS[0] = 'study':
  289. ! Study ballet and music
  290. *clr & cla
  291. mood -= rand(1, 10)
  292. minut += 60
  293. mod_homework[week] += 1
  294. mod_daily_score[week] += 1
  295. gs 'stat'
  296. '<center><img <<$set_imgh>> src="mod/img_ballet/pushkin/residence/study.jpg"></center>'
  297. 'You gather your school books and notebook to begin studying ballet movements, history, and musical theory, diligently taking notes as you progress. After an hour of reading, you notice your eyes beginning to glaze over. Recognizing the need for a break, you decide to stand up and stretch.'
  298. act 'Finish studying': gt 'pushkin_ballet_res', 'bedroom'
  299. end
  300. --- pushkin_ballet_res ---------------------------------