journal.qsrc 44 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960
  1. # journal
  2. !! 2021/05/02 Initial code
  3. !! Refactored 24 Aug 22
  4. !! Amended by Hooded Silence
  5. !! Game Character Journal - central core game data area for players.
  6. !! V .01 Refactored to enable menu bar navigation for UI consistency.
  7. !! V .02 Redesign and integration of content areas.
  8. !! V .03 Bug fixes.
  9. !!
  10. !! Sections:
  11. !! 0 Magic (if enabled)
  12. !! 1 Housing
  13. !! 2 Work - calls in journal_work
  14. !! 3 Quests - calls in journal_quest section
  15. !! 4 Relations / Current Group - pulls in various elements refactored from other areas to make tracking relationships easier. To be expanded on.
  16. !! 5 General Information
  17. !! 6 User Notes - custom function
  18. !!
  19. !! Menu Variables
  20. !! menutrack = tracks current menu position
  21. !! jumploc = call in the active menu section
  22. !! $tablebody = Container to create the menu body to work around QSP deadspace display issues.
  23. !! Section Variables
  24. !! employed[qw] = Work tracker if employed. To be set on starting or leaving a job.
  25. !! Header section start
  26. if $ARGS[0] = 'records':
  27. *clr & cla
  28. $BACKIMAGE = ''
  29. gs 'housing', 'rent'
  30. gs 'journal', 'journalmenu'
  31. ! records
  32. end
  33. if $ARGS[0]='journalmenu':
  34. *clr & cla
  35. gs 'stat'
  36. *nl
  37. $tablebody = '<tr>'
  38. if $start_type[1] ! 'nomagic': $tablebody += '<th><a href="exec:menutrack = 0 & gs ''journal'', ''magictab''">Magic</a></th>'
  39. $tablebody += '<th><a href="exec:menutrack = 1 & gs ''journal'', ''housingtab''">Housing</a></th>'
  40. $tablebody += '<th><a href="exec:menutrack = 2 & gs ''journal_work'', ''start''">Work</a></th>'
  41. $tablebody += '<th><a href="exec:menutrack = 2 & gs ''journal_quests'', ''start''">Quests</a></th>'
  42. $tablebody += '<th><a href="exec:menutrack = 4 & gs ''journal'', ''relationstab''">Relations</a></th>'
  43. $tablebody += '<th><a href="exec:menutrack = 5 & gs ''journal'', ''generaltab''">Game Information</a></th>'
  44. $tablebody += '<th><a href="exec:menutrack = 6 & gs ''journal'', ''notestab''">Notes</a></th>'
  45. $tablebody += '<th><a href="exec:menutrack = 7 & gs ''journal'', ''notification_log''">Notifications</a></th>'
  46. $tablebody += '</tr>'
  47. !display the table here.
  48. '<center><table width="90%" align="center" width="90%" cellspacing="0" cellpadding="0" valign="top"><tr><<$tablebody>></tr></table></center>'
  49. if $jumploc = '' or jclose = 1:
  50. if $start_type[1] ! 'nomagic':
  51. menutrack = 0
  52. jclose = 0
  53. gt 'journal', 'magictab'
  54. else
  55. menutrack = 1
  56. jclose = 0
  57. gt 'journal', 'housingtab'
  58. end
  59. end
  60. gs 'journal', 'leaveactions'
  61. ! Journal Menu
  62. end
  63. !!-------------------------!1
  64. !! Magic !!
  65. !!-------------------------!!
  66. if $ARGS[0] = 'magictab':
  67. $jumploc = 'magictab'
  68. gs 'journal', 'journalmenu'
  69. '<center><h2>Spells</h2></center><br>'
  70. '<center><h2>Spells to Cast</h2></center><br>'
  71. func('spellBook','cast','$nonComSpells', 'gt ''journal'', ''magictab''', 'jclose = 1')
  72. !!''''
  73. '<br><center><h2>Spell Learning</h2></center><br>'
  74. '<br><center><h3>Combat</h3></center><br>'
  75. func('spellBook','learn','$combatSpells')
  76. '<br><center><h3>Non-Combat</h3></center><br>'
  77. func('spellBook','learn','$nonComSpells')
  78. delact 'Never mind'
  79. ! magic
  80. end
  81. !!-------------------------!!
  82. !! Housing !!
  83. !!-------------------------!!
  84. if $ARGS[0] = 'housingtab':
  85. $jumploc = 'housingtab'
  86. gs 'journal', 'journalmenu'
  87. '<center><h2>Housing</h2></center>'
  88. *nl
  89. if accessible_property['shared_apartment'] = 4:'You share an apartment with three others in Pavlovsk. Your bills are paid by the other tenants in exchange for your house services'
  90. if accessible_property['city_apartment'] = 1:'You rent a two room apartment in the city residential area. Your rent for the apartment is subtracted automatically in sum of <<accessible_property[''city_apartment-rent'']>> <b>₽</b> us electric bill on 25th of each month. You are currently paid up for <b><<accessible_property[''city_apartment-days-left'']>></b> days'
  91. if accessible_property['city_apartment'] = 2:'You own a two room apartment in the city residential area. Your utility bills are due on the 25th of each month.'
  92. if accessible_property['city_apartment'] = 3:'You own a two room apartment in the city residential area. It''s currently occupied by your tenants.'
  93. if accessible_property['parents_home'] = 4:'You live with your parents and siblings in a two room apartment in Pavlovsk.'
  94. if accessible_property['village_cottage']= 2 :'You own a small holiday cottage with an adjacent allotment in the communal village.'
  95. if accessible_property['old_town_apartment'] = 1:'You rent a two room apartment in Pushkin. Your rent for the apartment is subtracted automatically in the sum of <<accessible_property[''old_town_apartment-rent'']>> <b>₽</b> us electric bill on the 25th of each month. You are currently paid up for <b><<accessible_property[''old_town_apartment-days-left'']>></b> days'
  96. if accessible_property['matryona_mansion'] = 2 and constructionstatus = 0:'You own a vacant block in the city suburbs.'
  97. if accessible_property['matryona_mansion'] = 2 and constructionstatus = 1:'You own a plot of land in the city suburbs upon which you are building a house.' + iif(banaMansion = 1, 'Your utility bills are due on the 25th of each month.', '')
  98. if accessible_property['matryona_mansion'] = 2 and constructionstatus = 2:'You own an impressive mansion in the city suburbs. ' + iif(banaMansion = 1, 'Your utility bills are due on the 25th of each month.', '')
  99. if accessible_property['city_house'] = 2:'You own a nice house on the edge of the city residential district. Your utility bills are due on the 25th of each month.'
  100. if accessible_property['meynold_household'] = 4:'You live with Vicky, Katja and Tamara Meynold. You have your own room and get an allowance based on helping out around the house and/or studying with Tamara.'
  101. *nl
  102. if car > 0:
  103. '<center><h2>Car</h2></center>'
  104. *nl
  105. if cardrive = 1: 'Your car is parked in St. Petersburg''s residential area.'
  106. if cardrive = 2: 'Your car is parked in St. Petersburg''s city center.'
  107. if cardrive = 3: 'Your car is parked in St. Petersburg''s industrial region.'
  108. if cardrive = 4: 'Your car is parked at St. Petersburg''s Lake.'
  109. if cardrive = 5: 'Your car is parked at St. Petersburg''s Park.'
  110. if cardrive = 6: 'Your car is parked at the gas station in St. Petersburg''s industrial region.'
  111. if cardrive = 7: 'Your car is parked at the Car Repair Shop in St. Petersburg.'
  112. if cardrive = 8: 'Your car is parked at your house in St. Petersburg''s residential area.'
  113. if cardrive = 9: 'Your car is parked at the Car Dealership in St. Petersburg.'
  114. if cardrive = 10: 'Your car is parked at St. Petersburg''s Park.'
  115. if cardrive = 11: 'Your car is parked at St. Petersburg''s Sauna.'
  116. if cardrive = 12: 'Your car is parked at the construction site.'
  117. if cardrive = 13: 'Your car is parked in the Suburban Cooperative.'
  118. if cardrive = 14: 'Your car is parked in Old Town district of Pavlovsk.'
  119. if cardrive = 18: 'Your car is parked at Matryona Mansion.'
  120. if cardrive = 19: 'Your car is parked at St. Petersburg''s industrial train station.'
  121. if cardrive = 20: 'Your car is parked in Pavlovsk''s residential area.'
  122. if cardrive = 21: 'Your car is parked at the gas station near Pavlovsk.'
  123. if cardrive = 22: 'Your car is parked on the highway.'
  124. if cardrive = 23: 'Your car is parked in Gadukino.'
  125. if cardrive = 24: 'Your car is parked in Pavlovsk''s commercial region.'
  126. if cardrive = 25: 'Your car is parked in Vasilyevsky Island'
  127. if cardrive = 26: 'Your car is parked in Pavlovsk''s industrial region.'
  128. if cardrive = 27: 'Your car is parked in St. Petersburg''s red light district.'
  129. if cardrive = 28: 'Your car is parked in St. Petersburg''s suburbs.'
  130. end
  131. !! housing
  132. end
  133. !!-------------------------!!
  134. !! Relationships !!
  135. !!-------------------------!!
  136. if $ARGS[0] = 'relationstab':
  137. $jumploc = 'relationstab'
  138. gs 'journal', 'journalmenu'
  139. '<center><h2>Relationships</h2></center>'
  140. '<h2>Family</h2>'
  141. 'Mother:'
  142. gs 'journal', 'relindex', 'A29'
  143. 'Stepfather:'
  144. gs 'journal', 'relindex', 'A28'
  145. 'Sister:'
  146. gs 'journal', 'relindex', 'A33'
  147. 'Brother:'
  148. gs 'journal', 'relindex', 'A34'
  149. if mid($start_type,1,2) = 'sg' and SchoolAtestat = 0 and SchoolBlock = 0:
  150. '<center><h2>Standings by Social Group</h2></center>'
  151. if grupTipe < 5 and grupvalue[grupTipe] > 700:
  152. $journal_school_standing = ' You are well respected and liked within your clique.'
  153. elseif grupTipe < 5 and grupvalue[grupTipe] > 300:
  154. $journal_school_standing = ' You are in good standing with your clique.'
  155. elseif grupTipe < 5:
  156. $journal_school_standing = '<font color="red"> You have to work on your clique standing. You''re in danger of being cast out.</font>'
  157. end
  158. if grupTipe = 0:
  159. 'You are not a member of any particular school social group.' + $journal_school_standing
  160. elseif grupTipe = 1:
  161. 'Your school social group consists of the popular, cool and beautiful.' + $journal_school_standing
  162. elseif grupTipe = 2:
  163. 'Your school social group consists of jocks and natural athletes.' + $journal_school_standing
  164. elseif grupTipe = 3:
  165. 'Your school social group consists of nerds, geeks and good students.' + $journal_school_standing
  166. if nerd_game['game_day'] > daystart: 'You have been invited to a games night on <<$week[(week + (nerd_game[''game_day''] - daystart))]>> at 20:00 in the community center library.'
  167. if nerd_game['game_day'] = daystart: 'You have been invited to a games night tonight at 20:00 in the community center library.'
  168. elseif grupTipe = 4:
  169. 'Your school social group consists of gopniks, rebels, punks or troublemakers.' + $journal_school_standing
  170. elseif grupTipe = 5:
  171. 'Your school social group consists of losers, teacher''s pets, sluts and the ugly.'
  172. end
  173. *nl
  174. 'Cool Kids'
  175. gs 'indik', '4', grupvalue[1]/10, grupvalue[1], 1 & '<<$ind>>'
  176. 'Jocks'
  177. gs 'indik', '4', grupvalue[2]/10, grupvalue[2], 2 & '<<$ind>>'
  178. 'Nerds'
  179. gs 'indik', '4', grupvalue[3]/10, grupvalue[3], 3 & '<<$ind>>'
  180. 'Gopnik'
  181. gs 'indik', '4', grupvalue[4]/10, grupvalue[4], 4 & '<<$ind>>'
  182. '<center><h2>Popular Kids Relations</h2></center>'
  183. if npc_rel['A1'] > 0: 'Friendship with Dimka:' & gs 'journal', 'relindex', 'A1'
  184. if npc_rel['A4'] > 0: 'Friendship with Igor:' & gs 'journal', 'relindex', 'A4'
  185. if npc_rel['A14'] > 0: 'Friendship with Katja:' & gs 'journal', 'relindex', 'A14'
  186. if npc_rel['A15'] > 0: 'Friendship with Vicky:' & gs 'journal', 'relindex', 'A15'
  187. if npc_rel['A17'] > 0: 'Friendship with Irina:' & gs 'journal', 'relindex', 'A17'
  188. if npc_rel['A22'] > 0: 'Friendship with Bella:' & gs 'journal', 'relindex', 'A22'
  189. if npc_rel['A146'] > 0: 'Friendship with Marcus:' & gs 'journal', 'relindex', 'A146'
  190. if npc_rel['A147'] > 0: 'Friendship with Andrey:' & gs 'journal', 'relindex', 'A147'
  191. if npc_rel['A148'] > 0: 'Friendship with Mefodiy:' & gs 'journal', 'relindex', 'A148'
  192. if soniaPS = 0 and npc_rel['A25'] > 0: 'Friendship with Sonia:' & gs 'journal', 'relindex', 'A25'
  193. if npc_rel['A139'] > 0: 'Friendship with Stasya:' & gs 'journal', 'relindex', 'A139'
  194. if npc_rel['A140'] > 0: 'Friendship with Lizaveta:' & gs 'journal', 'relindex', 'A140'
  195. '<center><h2>Jocks Relations</h2></center>'
  196. if npc_rel['A3'] > 0: 'Friendship with Ivan:' & gs 'journal', 'relindex', 'A3'
  197. if fedormasha = 0 and npc_rel['A5'] > 0: 'Friendship with Fedor:' & gs 'journal', 'relindex', 'A5'
  198. if npc_rel['A8'] > 0: 'Friendship with Svyatoslav:' & gs 'journal', 'relindex', 'A8'
  199. if npc_rel['A13'] > 0: 'Friendship with Lariska:' & gs 'journal', 'relindex', 'A13'
  200. if npc_rel['A18'] > 0: 'Friendship with Christina:' & gs 'journal', 'relindex', 'A18'
  201. if npc_rel['A19'] > 0: 'Friendship with Lina:' & gs 'journal', 'relindex', 'A19'
  202. if npc_rel['A23'] > 0: 'Friendship with Albina:' & gs 'journal', 'relindex', 'A23'
  203. if npc_rel['A149'] > 0: 'Friendship with Lazar:' & gs 'journal', 'relindex', 'A149'
  204. if npc_rel['A150'] > 0: 'Friendship with Erast:' & gs 'journal', 'relindex', 'A150'
  205. if npc_rel['A141'] > 0: 'Friendship with Veronika:' & gs 'journal', 'relindex', 'A141'
  206. if npc_rel['A165'] > 0: 'Friendship with Vanya:' & gs 'journal', 'relindex', 'A165'
  207. '<center><h2>Nerds Relations</h2></center>'
  208. if npc_rel['A2'] > 0: 'Friendship with Artem:' & gs 'journal', 'relindex', 'A2'
  209. if npc_rel['A6'] > 0: 'Friendship with Petka:' & gs 'journal', 'relindex', 'A6'
  210. if npc_rel['A12'] > 0: 'Friendship with Julia:' & gs 'journal', 'relindex', 'A12'
  211. if npc_rel['A16'] > 0: 'Friendship with Natasha:' & gs 'journal', 'relindex', 'A16'
  212. if npc_rel['A151'] > 0: 'Friendship with Evgeny:' & gs 'journal', 'relindex', 'A151'
  213. if npc_rel['A152'] > 0: 'Friendship with Feofan:' & gs 'journal', 'relindex', 'A152'
  214. if npc_rel['A153'] > 0: 'Friendship with Gerasim:' & gs 'journal', 'relindex', 'A153'
  215. if npc_rel['A142'] > 0: 'Friendship with Zinaida:' & gs 'journal', 'relindex', 'A142'
  216. if npc_rel['A240'] > 0: 'Friendship with Natalia:' & gs 'journal', 'relindex', 'A240'
  217. '<center><h2>Gopnik Relations</h2></center>'
  218. if npc_rel['A9'] > 0: 'Friendship with Vitek:' & gs 'journal', 'relindex', 'A9'
  219. if npc_rel['A10'] > 0: 'Friendship with Dan:' & gs 'journal', 'relindex', 'A10'
  220. if npc_rel['A11'] > 0: 'Friendship with Vasily:' & gs 'journal', 'relindex', 'A11'
  221. if npc_rel['A20'] > 0: 'Friendship with Lena:' & gs 'journal', 'relindex', 'A20'
  222. if npc_rel['A21'] > 0: 'Friendship with Lera:' & gs 'journal', 'relindex', 'A21'
  223. if npc_rel['A24'] > 0: 'Friendship with Pauline:' & gs 'journal', 'relindex', 'A24'
  224. if npc_rel['A154'] > 0: 'Friendship with Radomir:' & gs 'journal', 'relindex', 'A154'
  225. if npc_rel['A155'] > 0: 'Friendship with Lavrenti:' & gs 'journal', 'relindex', 'A155'
  226. if npc_rel['A156'] > 0: 'Friendship with Arkadi:' & gs 'journal', 'relindex', 'A156'
  227. if npc_rel['A157'] > 0: 'Friendship with Roman:' & gs 'journal', 'relindex', 'A157'
  228. if npc_rel['A158'] > 0: 'Friendship with Valentin:' & gs 'journal', 'relindex', 'A158'
  229. if npc_rel['A143'] > 0: 'Friendship with Alyona:' & gs 'journal', 'relindex', 'A143'
  230. if npc_rel['A144'] > 0: 'Friendship with Anushka:' & gs 'journal', 'relindex', 'A144'
  231. if npc_rel['A145'] > 0: 'Friendship with Ekaterina:' & gs 'journal', 'relindex', 'A145'
  232. if npc_rel['A189'] > 0: 'Friendship with Niko:' & gs 'journal', 'relindex', 'A189'
  233. '<center><h2>Outcast/Loner Relations</h2></center>'
  234. if npc_rel['A7'] > 0: 'Friendship with Lesco:' & gs 'journal', 'relindex', 'A7'
  235. if npc_rel['A159'] > 0: 'Friendship with Petia:' & gs 'journal', 'relindex', 'A159'
  236. if soniaPS > 0 and npc_rel['A25'] > 0: 'Friendship with Sonia:' & gs 'journal', 'relindex', 'A25'
  237. if fedormasha = 1 and npc_rel['A5'] > 0: 'Friendship with Fedor:' & gs 'journal', 'relindex', 'A5'
  238. '<center><h2>Teachers/Coaches/School Staff Relations</h2></center>'
  239. if npc_rel['A26'] > 0: 'Friendship with Anatoly Tsarev (Math Teacher):' & gs 'journal', 'relindex', 'A26'
  240. if npc_rel['A69'] > 0: 'Friendship with Mikhail Nikolaevich (Volleyball Coach):' & gs 'journal', 'relindex', 'A69'
  241. if npc_rel['A128'] > 0: 'Friendship with Makar Vasilyev (Art Teacher):' & gs 'journal', 'relindex', 'A128'
  242. if npc_rel['A129'] > 0: 'Friendship with Serafim Ivanov (Computer Science Teacher):' & gs 'journal', 'relindex', 'A129'
  243. if npc_rel['A130'] > 0: 'Friendship with Ilya Yenotin (Literature Teacher):' & gs 'journal', 'relindex', 'A130'
  244. if npc_rel['A131'] > 0: 'Friendship with Viktor Pavlovich (P.E. Teacher):' & gs 'journal', 'relindex', 'A131'
  245. if npc_rel['A132'] > 0: 'Friendship with Ruslan Kuznetsov (Shop Teacher):' & gs 'journal', 'relindex', 'A132'
  246. if npc_rel['A133'] > 0: 'Friendship with Rolan Metveev (Janitor):' & gs 'journal', 'relindex', 'A133'
  247. if npc_rel['A134'] > 0: 'Friendship with Aleksandrina Volkov (Headmistress):' & gs 'journal', 'relindex', 'A134'
  248. if npc_rel['A135'] > 0: 'Friendship with Yeva Sokoloff (Geography Teacher):' & gs 'journal', 'relindex', 'A135'
  249. if npc_rel['A136'] > 0: 'Friendship with Olga Aleksandrov (School Nurse):' & gs 'journal', 'relindex', 'A136'
  250. if npc_rel['A137'] > 0: 'Friendship with Raven Braakman (English Teacher):' & gs 'journal', 'relindex', 'A137'
  251. if npc_rel['A138'] > 0: 'Friendship with Arina Orlov (Biology Teacher):' & gs 'journal', 'relindex', 'A138'
  252. !!!WD: Formatting
  253. if (npc_rel['A93'] + npc_rel['A41'] + npc_rel['A42'] + npc_rel['A43'] + gosh + npc_rel['A220'] + npc_rel['A219'] + npc_QW['A192'] + npc_rel['A218']) > 0:*nl
  254. *nl
  255. end
  256. '<center><h2>Pavlovsk Relations</h2></center>'
  257. if npc_rel['A54'] > 0: 'Friendship with Uncle Misha:' & gs 'journal', 'relindex', 'A54'
  258. if npc_rel['A57'] > 0: 'Friendship with Rex:' & gs 'journal', 'relindex', 'A57'
  259. if npc_rel['A217'] > 0: 'Friendship with Pavlin:' & gs 'journal', 'relindex', 'A217'
  260. if npc_rel['A112'] > 0: 'Friendship with Sergey Shulgin:' & gs 'journal', 'relindex', 'A112'
  261. if npc_rel['A119'] > 0: 'Friendship with Borislav:' & gs 'journal', 'relindex', 'A119'
  262. '<center><h2>Gadukino Relations</h2></center>'
  263. if npc_rel['A31'] > 0: 'Friendship with Elena (your great-grandmother):' & gs 'journal', 'relindex', 'A31'
  264. if npc_rel['A32'] > 0: 'Friendship with Zlatek (your great-grandfather):' & gs 'journal', 'relindex', 'A32'
  265. if npc_rel['A60'] > 0: 'Friendship with Mira:' & gs 'journal', 'relindex', 'A60'
  266. if npc_rel['A61'] > 0: 'Friendship with Kolyamba:' & gs 'journal', 'relindex', 'A61'
  267. if npc_rel['A62'] > 0: 'Friendship with Vasyan:' & gs 'journal', 'relindex', 'A62'
  268. if npc_rel['A63'] > 0: 'Friendship with Mitka:' & gs 'journal', 'relindex', 'A63'
  269. if npc_rel['A64'] > 0: 'Friendship with Afanasiy:' & gs 'journal', 'relindex', 'A64'
  270. if npc_rel['A65'] > 0: 'Friendship with Vtialiy:' & gs 'journal', 'relindex', 'A65'
  271. if npc_rel['A221'] > 0: 'Friendship with Grigory:' & gs 'journal', 'relindex', 'A221'
  272. if npc_rel['A172'] > 0: 'Friendship with Andrei (hunter):' & gs 'journal', 'relindex', 'A172'
  273. if npc_rel['A173'] > 0: 'Friendship with Igor (hunter):' & gs 'journal', 'relindex', 'A173'
  274. if npc_rel['A174'] > 0: 'Friendship with Sergei (hunter):' & gs 'journal', 'relindex', 'A174'
  275. '<center><h2>Saint Petersburg Relations</h2></center>'
  276. if npc_QW['A192'] > 0: 'Friendship with Nastya:' & gs 'journal', 'relindex', 'A192'
  277. if npc_rel['A218'] > 0: 'Friendship with Tanya:' & gs 'journal', 'relindex', 'A218'
  278. if npc_rel['A219'] > 0: 'Friendship with Kat:' & gs 'journal', 'relindex', 'A219'
  279. if npc_rel['A220'] > 0: 'Friendship with Vika:' & gs 'journal', 'relindex', 'A220'
  280. if npc_rel['A93'] > 0: 'Friendship with Ira:' & gs 'journal', 'relindex', 'A93'
  281. if npc_rel['A43'] > 0: 'Friendship with Tamara:' & gs 'journal', 'relindex', 'A43'
  282. if npc_rel['A35'] > 0: 'Friendship with Mikhail Kuznetsov (your biological father):' & gs 'journal', 'relindex', 'A35'
  283. if npc_rel['A169'] > 0: 'Friendship with Dima:' & gs 'journal', 'relindex', 'A169'
  284. if npc_rel['A89'] > 0: 'Friendship with Eugene:' & gs 'journal', 'relindex', 'A89'
  285. if npc_rel['A216'] > 0: 'Friendship with Martin:' & gs 'journal', 'relindex', 'A216'
  286. ! '<center><h2>Other Relations</h2></center>'
  287. ! Uncomment if re-introduced into the game ensure you use NPC ID to update them
  288. ! if alla > 0: 'Friendship with Alla <<alla>>'
  289. ! if masha > 0: 'Friendship with Masha <<masha>>'
  290. ! if npc_rel['A41'] > 0: 'Friendship with Givi K. <<npc_rel[''A41'']>>'
  291. ! if npc_rel['A42'] > 0: 'Friendship with Ashot <<npc_rel[''A42'']>>'
  292. if husband > 0:'You have been married for <<husbanday>> days. Your husband <<$husName>> <<$husBody>> <<$husFat>> <<$husHair>>. Member <<husDick>> Relationship <<husband>>.'
  293. if kid > 0:
  294. i = 0
  295. if kid = 1:
  296. 'You have a child, a <<$polreb[0]>> named <<$kidname[0]>>. Born <<daykid[0]>>-<<monthkid[0]>>-<<yearkid[0]>>. Aged <<kidage[0]>>.'
  297. else
  298. 'You have children:'
  299. :LoopKidCounter
  300. if i < kid:
  301. '<br> a <<$polreb[i]>> named <<$kidname[i]>>. Born <<daykid[i]>>-<<monthkid[i]>>-<<yearkid[i]>>. Aged <<kidage[i]>>.'
  302. i += 1
  303. jump 'LoopKidCounter'
  304. end
  305. end
  306. *nl
  307. end
  308. *nl
  309. !! This has some sex info but also weirdness like npc number and smilie face is dick the right length. Its about first time with a random lover
  310. !! if $bfsex > 0:'<<$bfsex>>'
  311. *nl
  312. if loverGender[0] = 0:
  313. $obj_loverintro = 'Your boyfriend'
  314. $obj_loverpron = 'He'
  315. else
  316. $obj_loverintro = 'Your girlfriend'
  317. $obj_loverpron = 'She'
  318. end
  319. if pcs_lovers[0] = 1:'<<$obj_loverintro>> <<$loverdesc[0]>> is <<$loverbody[0]>> height and <<$loverbod[0]>> build with <<$loverface[0]>> hair. <<$loverdesc[0]>> is <<$loverClo[0]>>. Your relationship is <<loverrelation[0]>> after <<loverdays[0]>> days dating.'
  320. if haraklover[0] = 0 and loverrelation[0] > 1:'<<$obj_loverpron>>''s timid and lacks confidence.'
  321. if haraklover[0] = 1 and loverrelation[0] > 1:'<<$obj_loverpron>> has a cheerful and sociable personality.'
  322. if haraklover[0] = 2 and loverrelation[0] > 1:'<<$obj_loverpron>>''s short-tempered and strict.'
  323. if loverGender[1] = 0:
  324. $obj_loverintro = 'Your boyfriend'
  325. $obj_loverpron = 'He'
  326. else
  327. $obj_loverintro = 'Your girlfriend'
  328. $obj_loverpron = 'She'
  329. end
  330. if pcs_lovers[1] = 1:'<<$obj_loverintro>> <<$loverdesc[1]>> is <<$loverbody[1]>> height and <<$loverbod[1]>> build with <<$loverface[1]>> hair. <<$loverdesc[1]>> is <<$loverClo[1]>>. Your relationship is <<loverrelation[1]>> after <<loverdays[1]>> days dating.'
  331. if haraklover[1] = 0 and loverrelation[1] > 1:'<<$obj_loverpron>>''s timid and lacks confidence.'
  332. if haraklover[1] = 1 and loverrelation[1] > 1:'<<$obj_loverpron>> has a cheerful and sociable personality.'
  333. if haraklover[1] = 2 and loverrelation[1] > 1:'<<$obj_loverpron>>''s short-tempered and strict.'
  334. if loverGender[2] = 0:
  335. $obj_loverintro = 'Your boyfriend'
  336. $obj_loverpron = 'He'
  337. else
  338. $obj_loverintro = 'Your girlfriend'
  339. $obj_loverpron = 'She'
  340. end
  341. if pcs_lovers[2] = 1:'<<$obj_loverintro>> <<$loverdesc[2]>> is <<$loverbody[2]>> height and <<$loverbod[2]>> build with <<$loverface[2]>> hair. <<$loverdesc[2]>> is <<$loverClo[2]>>. Your relationship is <<loverrelation[2]>> after <<loverdays[2]>> days dating.'
  342. if haraklover[2] = 0 and loverrelation[2] > 1:'<<$obj_loverpron>>''s timid and lacks confidence.'
  343. if haraklover[2] = 1 and loverrelation[2] > 1:'<<$obj_loverpron>> has a cheerful and sociable personality.'
  344. if haraklover[2] = 2 and loverrelation[2] > 1:'<<$obj_loverpron>>''s short-tempered and strict.'
  345. *nl
  346. !! relations
  347. end
  348. !!-------------------------!!
  349. !! General Information !!
  350. !!-------------------------!!
  351. if $ARGS[0] = 'generaltab':
  352. $jumploc = 'generaltab'
  353. gs 'journal', 'journalmenu'
  354. !! generaltab
  355. '<center><h2>General Information</h2></center>'
  356. if ARRSIZE('$portfolio_locations') > 0 or ARRSIZE('$portfolio_people') > 0:
  357. act 'View your photography portfolio': gt 'journal_portfolio'
  358. end
  359. '<br><center><a href="exec: gs ''journal'', ''locations''">Locations</a></center>'
  360. '<br><center><a href="exec: gs ''journal'', ''family''">Family</a></center>'
  361. '<br><center><a href="exec: gs ''journal'', ''pav_res''">Pavlovsk Residents</a></center>'
  362. '<br><center><a href="exec: gs ''journal'', ''gad_res''">Gadukino Residents</a></center>'
  363. '<br><center><a href="exec: gs ''journal'', ''city_res''">City Residents</a></center>'
  364. if mod_ballet['blocker'] > 0 or balletqw['school'] > 0: '<br><center><a href="exec: gs ''journal'', ''ballet''">Ballet Career</a></center>'
  365. if SchoolAtestat = 0 and mid($start_type, 1, 2) = 'sg' and SchoolBlock = 0:
  366. '<br><center><a href="exec: gs ''journal_school'', ''school''">School</a></center>
  367. <br><center><a href="exec: gs ''journal_school'', ''coursesinfo''">School Courses and Grades</a></center>'
  368. end
  369. !!Make this an elseif, add a third option to see where our friends end up in city-life??
  370. if university['student'] = 1:
  371. '<br><center><a href="exec: gs ''journal'', ''uni''">University</a></center>'
  372. end
  373. '<br><center><a href="exec: gs ''journal'', ''clothing''">Clothing information</a></center>'
  374. end
  375. !!-------------------------!!
  376. !! Notes !!
  377. !!-------------------------!!
  378. if $ARGS[0] = 'notestab':
  379. $jumploc = 'notestab'
  380. gs 'journal', 'journalmenu'
  381. '<center><h2>Notes</h2></center>'
  382. 'Create notes to keep track of any information you need.'
  383. *nl
  384. '<a href="exec: $zapis[] = input(''What do you want to record?'') & gt ''journal'',''notestab'' ">Make a note</a>'
  385. jur_temp = 0
  386. :jur_loop
  387. if jur_temp < arrsize('$zapis'):
  388. '<<$zapis[jur_temp]>> <a href="exec: dynamic ''killvar''''$zapis'''',<<jur_temp>> & gt ''''journal'''', ''''notestab'''''' ">Delete</a>'
  389. jur_temp += 1
  390. jump 'jur_loop'
  391. end
  392. killvar 'jur_temp'
  393. !! notes
  394. end
  395. !!---------------------------------!!
  396. !! notifications !!
  397. !!---------------------------------!!
  398. if $ARGS[0] = 'notification_log':
  399. $jumploc = 'notification_log'
  400. gs 'journal', 'journalmenu'
  401. '<center><h2>Notifications</h2></center>'
  402. *nl
  403. !! DEBUG
  404. !!'<a href="exec: notif_debug_counter += 1 & gs ''notification'', ''add'', ''test message <<notif_debug_counter>>'' & gt ''journal'',''notification_log''">DEBUG</a>'
  405. if $notification_log[0] ! '':
  406. notification_log_loop_index = arrsize('$notification_log') - 1
  407. :notification_log_loop
  408. *pl $notification_log[notification_log_loop_index]
  409. *nl
  410. if notification_log_loop_index > 0: notification_log_loop_index -= 1 & jump 'notification_log_loop'
  411. else
  412. 'Notification log is empty.'
  413. end
  414. end
  415. !! -- Ballet School infor - only shown if active
  416. if $ARGS[0] = 'ballet':
  417. $jumploc = 'ballet'
  418. gs 'journal', 'journalmenu'
  419. '<center><h1>Ballet Career</h1></center>'
  420. '<center><img <<$set_imgh>> src="mod/img_ballet/system/readme.jpg"></center>'
  421. 'Пан или пропал (You become the master or, leave).'
  422. 'A narrative based mod and activities for the Dancer start. The MC has been given a grant to attend a intensive 6 day summer class with an assessment, that if, she passes can lead to a weekly rehearsal and a Winter dance show in December.'
  423. 'Note: this storyline will play out over a long time span and your actions will have consequences that won''t be obvious initially. Some of this is dependent on the development of main Girl Life codebase.'
  424. 'Current and planned features:'
  425. '• New dancer start option, with other starts being granted access later or uni/city years pay to join.'
  426. '• 6 day intensive course during the school summer break - look for the letter at your parents kitchen to notify you.'
  427. '• New pen friend(s), with meet ups and theatre or ballet nights with family or partner.'
  428. '• Dance instructor, who''s intentions may prevent MC from joining the Pushkin Ballet Company or could have far ranging consequences on both on herself and NPC characters.'
  429. '• New dance gigs, at each rehearsal there''s a chance that you may get dance job for the local theatre or the city if you passed with merit.'
  430. 'NB: There is no sex acts in this mod at present, if you wish to write scenes based on the content contact me at the Girl Life Discord Server.'
  431. '<center><h2>In Memoriam — Hooded Silence.</h2></center>'
  432. *nl
  433. 'This content is being maintained as part of Hooded Silence''s legacy, I have approximately 1-2 years of original content to add but if you wish to contribute then note there is no sexual content in this mod until at least year 3 as per his notes. '
  434. 'This is a narrative driven addition to the game and your actions do and will count towards what happens both for yourself and others. These moments are easily missable but they will represent consquences of your decisions such as:'
  435. *nl
  436. ' • Failure to adhere to the residential schools rules or live up to the high standards of the school.'
  437. ' • Get drunk too often or fall pregnant - kicked off the Corp De Ballet.'
  438. ' • Fail to maintain your appearance - reprimands or loss of income, leading to expulsion.'
  439. *nl
  440. 'These are the obvious repercussions, but there will be subtle consequences for your interactions with NPCs. This mod is meant to be played blind for your initial playthrough and the only feedback will be the varying conversations'
  441. end
  442. !! ---- Other Sections ----
  443. !! --- General Information -- Clothing
  444. if $ARGS[0] = 'clothing':
  445. $jumploc = 'generalsub'
  446. gs 'journal', 'journalmenu'
  447. '<center>Clothing information</center>'
  448. *nl
  449. 'Clothing has a strength value, which decreases by 1 for every day you wear that outfit. At 0 it is ruined and you will have to throw it away.'
  450. 'You can attempt to fix outfits when their strength is very low and you have a high enough sewing skill. Clothes you throw away will appear back in the shop.'
  451. *nl
  452. 'Quality of clothing is ranked in this order:'
  453. ' Crappy quality outfit'
  454. ' Very low quality outfit'
  455. ' Low quality outfit'
  456. ' Average quality outfit'
  457. ' Reasonable quality outfit'
  458. ' Good quality outfit'
  459. ' Outstanding quality outfit'
  460. gs 'journal', 'leaveactions'
  461. end
  462. !! --- General Information -- University
  463. if $ARGS[0] = 'uni':
  464. $jumploc = 'generalsub'
  465. gs 'journal', 'journalmenu'
  466. '<center><h2>University</h2></center>'
  467. if university['diploma'] > 0:
  468. 'You have graduated from the University of St. Petersburg with a degree in '+func('uni_programs', 'program_name')+'.'
  469. else
  470. 'You have are enrolled in the '+trim(MID(' first, second, third, fourth, fifth, sixth,seventh, eighth, ninth, tenth', university['enrolled_in_semester']*8-7,7))+' semester of the '+func('uni_programs', 'program_name')+' at the University of St. Petersburg.'
  471. end
  472. if $university['elective1'] ! '' or $university['elective2'] ! '' or $university['elective3'] ! '':
  473. *nl
  474. 'This semester, you are taking the following elective classes: <<$university[''elective1'']>>, <<$university[''elective2'']>>, <<$university[''elective1'']>>.'
  475. end
  476. j = 1
  477. :semester_loop
  478. if university['semester_passed'] >= j:
  479. gs 'grades', 'assing_grade_description', 'uni_<<$university[''enrolled_in'']>>_semester_<<j>>'
  480. *nl
  481. 'You passed the' + trim(MID(' first, second, third, fourth, fifth, sixth,seventh, eighth, ninth, tenth', j*8 - 7, 7)) + ' semester with the following grades:'
  482. k = 0
  483. :class_loop
  484. if $class_list_institution[k] = 'uni_<<$university[''enrolled_in'']>>_semester_<<j>>':
  485. '<<$class_list_name[k]>>: <<$class[''<<$class_list_institution[k]>>_<<$class_list_name[k]>>_grade'']>>'
  486. end
  487. k += 1
  488. if ARRSIZE('class_list_institution') >= k: jump 'class_loop'
  489. killvar 'k'
  490. end
  491. j += 1
  492. if j < 8: jump 'semester_loop'
  493. killvar 'j'
  494. if university['semester_passed'] = university['enrolled_in_semester'] and university['diploma'] = 0:
  495. *nl
  496. 'You need to register for your next semester at the university administration'
  497. elseif university['semester_week'] <= 0 and university['exam_week'] = 0:
  498. *nl
  499. 'You currently have a break between semesters.'
  500. if university['semester_week'] = -1:
  501. 'The next semester will start next week'
  502. end
  503. '<center><h2>Class schedule for Next Semester</h2></center>'
  504. 'Monday: ' + func('uni_programs', 'uni_period_first', 'monday' ) + ' ' + func('uni_programs', 'uni_period_second', 'monday' ) + ' ' + func('uni_programs', 'uni_period_third', 'monday' )
  505. 'Tuesday: ' + func('uni_programs', 'uni_period_first', 'tuesday' ) + ' ' + func('uni_programs', 'uni_period_second', 'tuesday' ) + ' ' + func('uni_programs', 'uni_period_third', 'tuesday' )
  506. 'Wednesday: ' + func('uni_programs', 'uni_period_first', 'wednesday') + ' ' + func('uni_programs', 'uni_period_second', 'wednesday') + ' ' + func('uni_programs', 'uni_period_third', 'wednesday')
  507. 'Thursday: ' + func('uni_programs', 'uni_period_first', 'thursday' ) + ' ' + func('uni_programs', 'uni_period_second', 'thursday' ) + ' ' + func('uni_programs', 'uni_period_third', 'thursday' )
  508. elseif university['semester_week'] > 0:
  509. *nl
  510. if university['semester_week'] < 11:
  511. 'You are in the '+trim(MID(' first, second, third, fourth, fifth, sixth,seventh, eighth, ninth, tenth', university['semester_week']*8-7,7))+' week of the semester, which last 15 weeks.'
  512. else
  513. 'You are in the '+str(university['semester_week']) + 'th week of the semester which last 15 weeks.'
  514. end
  515. '<center><h2>Class schedule</h2></center>'
  516. 'Monday: ' + func('uni_programs', 'uni_period_first', 'monday' ) + ' ' + func('uni_programs', 'uni_period_second', 'monday' ) + ' ' + func('uni_programs', 'uni_period_third', 'monday' )
  517. 'Tuesday: ' + func('uni_programs', 'uni_period_first', 'tuesday' ) + ' ' + func('uni_programs', 'uni_period_second', 'tuesday' ) + ' ' + func('uni_programs', 'uni_period_third', 'tuesday' )
  518. 'Wednesday: ' + func('uni_programs', 'uni_period_first', 'wednesday') + ' ' + func('uni_programs', 'uni_period_second', 'wednesday') + ' ' + func('uni_programs', 'uni_period_third', 'wednesday')
  519. 'Thursday: ' + func('uni_programs', 'uni_period_first', 'thursday' ) + ' ' + func('uni_programs', 'uni_period_second', 'thursday' ) + ' ' + func('uni_programs', 'uni_period_third', 'thursday' )
  520. '<center><h2>Grades</h2></center>'
  521. gs 'grades', 'assing_grade_description', 'uni_<<$university[''enrolled_in'']>>_semester_<<university[''enrolled_in_semester'']>>'
  522. j = 0
  523. :grade_loop
  524. if $class_list_institution[j] = 'uni_<<$university[''enrolled_in'']>>_semester_<<university[''enrolled_in_semester'']>>':
  525. if dyneval( 'RESULT = class[''<<$class_list_institution[j]>>_<<$class_list_name[j]>>_grade'']') >= dyneval( 'RESULT = (4*<<university[''semester_week'']>> + 32)'):
  526. 'You think you are doing great in <<$class_list_name[j]>> and will probably pass with a top grade if you keep this up.'
  527. elseif dyneval( 'RESULT = class[''<<$class_list_institution[j]>>_<<$class_list_name[j]>>_grade'']') > dyneval( 'RESULT = (2*<<university[''semester_week'']>> + 32)'):
  528. 'You are following the <<$class_list_name[j]>> class well and will probably pass with a good grade if you keep this up, but to get the top mark you need to put in some more effort.'
  529. elseif dyneval( 'RESULT = class[''<<$class_list_institution[j]>>_<<$class_list_name[j]>>_grade'']') >= dyneval( 'RESULT = (1*<<university[''semester_week'']>> + 32)'):
  530. 'You have trouble following the <<$class_list_name[j]>> class, but will probably still pass. If you want a good grade, then you''ll really need to do something about it.'
  531. elseif dyneval( 'RESULT = class[''<<$class_list_institution[j]>>_<<$class_list_name[j]>>_grade'']') < 40:
  532. 'You will fail your <<$class_list_name[j]>> class unless you do something about it right now. It might even be too late to catch up.'
  533. else
  534. 'You are hopelessly behind in your <<$class_list_name[j]>> class, but can probably still pass. Any hope of getting a good grade will require that you start doing something about it right now.'
  535. end
  536. end
  537. j += 1
  538. if ARRSIZE('class_list_institution') >= j: jump 'grade_loop'
  539. killvar 'j'
  540. elseif university['exam_week'] > 0:
  541. *nl
  542. 'You are in the ' + iif(university['exam_week'] = 1, 'first', 'second') + ' of the two weeks of exams. ' + func('uni_programs', 'exam', 'schedule')
  543. *nl
  544. gs 'grades', 'assing_grade_description', 'uni_<<$university[''enrolled_in'']>>_semester_<<university[''enrolled_in_semester'']>>'
  545. j = 0
  546. :exam_loop
  547. if $class_list_institution[j] = 'uni_<<$university[''enrolled_in'']>>_semester_<<university[''enrolled_in_semester'']>>':
  548. if dyneval( 'RESULT = class[''<<$class_list_institution[j]>>_<<$class_list_name[j]>>_exam_done'']') = 1:
  549. 'You did your <<$class_list_name[j]>> exam and think you will get an <<$class[''<<$class_list_institution[j]>>_<<$class_list_name[j]>>_grade'']>>.'
  550. elseif func('uni_programs', 'exam', 'is_over', $class_list_name[j]) = 1:
  551. 'Your exam <<$class_list_name[j]>> is over and you did not go. This means you will fail the class and thefore also the semester.'
  552. elseif dyneval( 'RESULT = class[''<<$class_list_institution[j]>>_<<$class_list_name[j]>>_grade'']') >= 100:
  553. 'You think you are well prepared in your <<$class_list_name[j]>> exam and will probably pass with the highest mark possible.'
  554. elseif dyneval( 'RESULT = class[''<<$class_list_institution[j]>>_<<$class_list_name[j]>>_grade'']') >= 90:
  555. 'You think you are well prepared in your <<$class_list_name[j]>> exam and will probably pass with a 5, but a little more studying never hurts.'
  556. elseif dyneval( 'RESULT = class[''<<$class_list_institution[j]>>_<<$class_list_name[j]>>_grade'']') >= 70:
  557. 'You think that you are prepared pretty well for your <<$class_list_name[j]>> exam and will probably get a 4. With some more studying, you might get a 5.'
  558. elseif dyneval( 'RESULT = class[''<<$class_list_institution[j]>>_<<$class_list_name[j]>>_grade'']') >= 40:
  559. 'You think you are prepared enough to pass your <<$class_list_name[j]>> exam, but if you want a good grade, then you need to do some serious studying.'
  560. else
  561. 'If your <<$class_list_name[j]>> exam was today, then you would fail. Time to hit the books if you don''t want to fail the semester.'
  562. end
  563. end
  564. j += 1
  565. if ARRSIZE('class_list_institution') >= j: jump 'exam_loop'
  566. killvar 'j'
  567. end
  568. *nl
  569. !!Added a link to the various Character Journal entries for location: journal_uni.
  570. !!Should probably be put somewhere else. Blame Anjuna and Nutluck
  571. '<center><h2>Students and Teachers</h2></center>'
  572. '<br><center><a href="exec: gs ''journal_uni'', ''professors''">Professors</a></center>'
  573. '<br><center><a href="exec: gs ''journal_uni'', ''pavlovsk_university_students''">University Students from Pavlovsk</a></center>'
  574. '<br><center><a href="exec: gs ''journal_uni'', ''university_students''">Other University Students</a></center>'
  575. *nl
  576. '<br><center><a href="exec: gs ''journal_uni'', ''former_pavlovsk_students''">Former Pavlovsk Students</a></center>'
  577. act 'Go back': gt 'journal', 'generaltab'
  578. gs 'journal', 'leaveactions'
  579. end
  580. !! --- General Information -- Locations
  581. if $ARGS[0] = 'locations':
  582. $jumploc = 'generalsub'
  583. gs 'journal', 'journalmenu'
  584. '<center><h2>Pavlovsk</h2></center>'
  585. 'Pavlovsk is a small town. It is somewhat of a tourist trap thanks to the Catharina Palace and the former palace grounds, which have been converted into a large park centered around the train station. There is an open air market near the train station that is open year round where many bargains can be found. The cafe where your mother works can also be found near the train station. It caters to the visitors coming in by train. The downtown area contains businesses and some middle class housing, while the residential area is a mixture of houses and old Soviet era apartment blocks.'
  586. *nl
  587. 'The wealthier families live in large houses near the park on the outskirts of town, while the poorest homes are found near the old industrial area where several factories have long since been abandoned. The only factory still open is the G&M clothing factory, which also has a local store front and a tailor that can adjust your clothing. The industrial area is now mostly home to prostitutes and drug dealers and is not considered a safe area to walk around at night. Despite being a tourist destination, the area is seen as fairly poor and without many jobs.'
  588. '<center><h2>Gadukino</h2></center>'
  589. 'You''ve spent several summers at your grandparents'' village. It''s a small village where everyone is very tightly knit together. You remember spending your days playing with the local children at the river or visiting the little shop that had everything a kid needed. When your great grandparents were younger, they used to take you out into the woods where you picked mushrooms and berries. Your great grandfather also showed you around the hunting grounds and told you all kind of stories about the hunters that visit the area.'
  590. '<center><h2>St. Petersburg</h2></center>'
  591. 'You''ve heard many rumors about the city from both family members and school friends. They all say it''s both a great and bad place. The few memories you have are connected to the big park that you and your family visited once, which had a large amusement park with lots of rides. You also know about the University because you''ve overheard Anya and your mother argue about it. Sometimes, your mother would drag you and Anya along to the city mall while she was visiting the beauty salon. You remember running through the stores asking your mother to buy you clothes.'
  592. act 'Go back': gt 'journal', 'generaltab'
  593. gs 'journal', 'leaveactions'
  594. end
  595. !! -- General Information -- Family
  596. if $ARGS[0] = 'family':
  597. $jumploc = 'generalsub'
  598. gs 'journal', 'journalmenu'
  599. '<center><h2>Family</h2></center>'
  600. !!Mother
  601. gs 'journal_NPC_information', 'A29'
  602. *nl
  603. !!Bio-father
  604. gs 'journal_NPC_information', 'A35'
  605. *nl
  606. !!Step-Father
  607. gs 'journal_NPC_information', 'A28'
  608. *nl
  609. !!Anya
  610. gs 'journal_NPC_information', 'A33'
  611. *nl
  612. !!Kolka
  613. gs 'journal_NPC_information', 'A34'
  614. *nl
  615. !!Aunt
  616. gs 'journal_NPC_information', 'A30'
  617. *nl
  618. !!Olu
  619. gs 'journal_NPC_information', 'A55'
  620. *nl
  621. !!Grandpa
  622. gs 'journal_NPC_information', 'A31'
  623. *nl
  624. !!Grandmum
  625. gs 'journal_NPC_information', 'A32'
  626. *nl
  627. !!Misha
  628. gs 'journal_NPC_information', 'A54'
  629. act 'Go back': gt 'journal', 'generaltab'
  630. gs 'journal', 'leaveactions'
  631. elseif $ARGS[0] = 'pav_res':
  632. $jumploc = 'generalsub'
  633. gs 'journal', 'journalmenu'
  634. '<center><h2>Pavlovsk Residents</h2></center>'
  635. !! Post Secondary school !!
  636. if yearstart > 1:
  637. !!Mefodiy
  638. gs 'journal_NPC_information', 'A148', 'uni'
  639. *nl
  640. !!Ivan
  641. gs 'journal_NPC_information', 'A3', 'uni'
  642. *nl
  643. !!Fedor
  644. gs 'journal_NPC_information', 'A5', 'uni'
  645. *nl
  646. !!Erast Vagin
  647. gs 'journal_NPC_information', 'A150', 'uni'
  648. *nl
  649. !!Veronika
  650. gs 'journal_NPC_information', 'A141', 'uni'
  651. *nl
  652. !!Evgany
  653. gs 'journal_NPC_information', 'A151', 'uni'
  654. *nl
  655. !!Natalia
  656. gs 'journal_NPC_information', 'A240', 'uni'
  657. *nl
  658. !!Vitek
  659. gs 'journal_NPC_information', 'A9', 'uni'
  660. *nl
  661. !!Dan
  662. gs 'journal_NPC_information', 'A10', 'uni'
  663. *nl
  664. !!Vasily
  665. gs 'journal_NPC_information', 'A11', 'uni'
  666. *nl
  667. !!Roman
  668. gs 'journal_NPC_information', 'A157', 'uni'
  669. *nl
  670. !!Kayuska Maksimov
  671. gs 'journal_NPC_information', 'A145', 'uni'
  672. *nl
  673. !!Pauline
  674. gs 'journal_NPC_information', 'A24', 'uni'
  675. *nl
  676. !!Kikolai
  677. gs 'journal_NPC_information', 'A189', 'uni'
  678. *nl
  679. !!Lena
  680. gs 'journal_NPC_information', 'A20', 'uni'
  681. *nl
  682. !!Lera
  683. gs 'journal_NPC_information', 'A21', 'uni'
  684. *nl
  685. !!Alyona
  686. gs 'journal_NPC_information', 'A143', 'uni'
  687. *nl
  688. end
  689. !!Sergey
  690. gs 'journal_NPC_information', 'A112'
  691. act 'Go back': gt 'journal', 'generaltab'
  692. gs 'journal', 'leaveactions'
  693. elseif $ARGS[0] = 'gad_res':
  694. $jumploc = 'generalsub'
  695. gs 'journal', 'journalmenu'
  696. '<center><h2>Gadukino Residents</h2></center>'
  697. !!Grandpa
  698. gs 'journal_NPC_information', 'A31'
  699. *nl
  700. !!Grandma
  701. gs 'journal_NPC_information', 'A32'
  702. *nl
  703. !!Mira
  704. if npc_known['A60'] = 1:
  705. gs 'journal_NPC_information', 'A60'
  706. *nl
  707. end
  708. !!Mitka
  709. gs 'journal_NPC_information', 'A63'
  710. *nl
  711. !!Kolyamba
  712. if mitka_first_drink > 1:
  713. gs 'journal_NPC_information', 'A61'
  714. *nl
  715. end
  716. !!Vasyan
  717. if mitka_first_drink > 1:
  718. gs 'journal_NPC_information', 'A62'
  719. *nl
  720. end
  721. !!Afanasiy (Mira''s father)
  722. if npc_known['A60'] = 1:
  723. gs 'journal_NPC_information', 'A64'
  724. *nl
  725. end
  726. !!Vtialiy (Mira''s brother)
  727. if npc_known['A60'] = 1:
  728. gs 'journal_NPC_information', 'A64'
  729. *nl
  730. end
  731. !!Grigory
  732. if npc_qw['A221'] > 0:
  733. gs 'journal_NPC_information', 'A221'
  734. *nl
  735. end
  736. !!Hunters
  737. if hunters_were_met > 0:
  738. gs 'journal_NPC_information', 'A172'
  739. *nl
  740. gs 'journal_NPC_information', 'A173'
  741. *nl
  742. gs 'journal_NPC_information', 'A174'
  743. *nl
  744. end
  745. act 'Go back': gt 'journal', 'generaltab'
  746. gs 'journal', 'leaveactions'
  747. elseif $ARGS[0] = 'city_res':
  748. $jumploc = 'generalsub'
  749. gs 'journal', 'journalmenu'
  750. '<center><h2>City Residents</h2></center>'
  751. !! Post Secondary school !!
  752. if yearstart > 1:
  753. !!Radomir
  754. gs 'journal_NPC_information', 'A154', 'uni'
  755. *nl
  756. !!Arkadi
  757. gs 'journal_NPC_information', 'A154', 'uni'
  758. *nl
  759. !!Valentin
  760. gs 'journal_NPC_information', 'A154', 'uni'
  761. end
  762. act 'Go back': gt 'journal', 'generaltab'
  763. gs 'journal', 'leaveactions'
  764. end
  765. !! Helper functions
  766. if $ARGS[0] = 'relindex':
  767. gs 'indik', '1', npc_rel['<<$ARGS[1]>>'], npc_rel['<<$ARGS[1]>>'], 100 & '<<$ind>>'
  768. *nl
  769. elseif $ARGS[0] = 'leaveactions':
  770. act 'Put your notebook down':
  771. killvar 'jumploc'
  772. jclose = 1
  773. gt $loc, $loc_arg
  774. end
  775. end
  776. --- journal ---------------------------------