miroslava_schedule.qsrc 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411
  1. # miroslava_schedule
  2. !2024/05/05
  3. !locat['A60'] tells us where Mira is Located
  4. !----------------------------------------------
  5. !locat['A60'] = 10 In front of her home
  6. !locat['A60'] = 11 Home
  7. !locat['A60'] = 20 Grandparents yard <- gad_gpyard
  8. !locat['A60'] = 21 Grandparents house <- gad_gphouse
  9. !locat['A60'] = 22 Grandparents banya <- gad_gpbath
  10. !locat['A60'] = 23 Grandparents barn <- gad_gpbarn
  11. !locat['A60'] = 30 Gadukino
  12. !locat['A60'] = 31 Church
  13. !locat['A60'] = 40 Forest road
  14. !locat['A60'] = 41 Bus station
  15. !locat['A60'] = 42 With the Gopniks
  16. !locat['A60'] = 50 River
  17. !locat['A60'] = 51 Beach
  18. !locat['A60'] = 60 Forest-edge
  19. !locat['A60'] = 61 Meadow
  20. !locat['A60'] = 62 Forest-outskirts
  21. !locat['A60'] = 63 Forest-center
  22. !locat['A60'] = 64 Forest-swamp
  23. !locat['A60'] = 70 Field
  24. !locat['A60'] = 80 Highway
  25. !locat['A60'] = 81 Train station
  26. !locat['A60'] = 82 Lorry
  27. if $ARGS[0] = 'get_locat_from_loc':
  28. if $loc = 'gad_miroslava_home':
  29. result = 10
  30. elseif $loc = 'gad_gpyard':
  31. result = 20
  32. elseif $loc = 'gad_gphouse':
  33. result = 21
  34. elseif $loc = 'gad_gpbath':
  35. result = 22
  36. elseif $loc = 'gad_gpbarn':
  37. result = 23
  38. elseif $loc = 'gadukino':
  39. result = 30
  40. elseif $loc = 'gad_church':
  41. result = 31
  42. elseif $loc = 'gad_road':
  43. result = 40
  44. elseif $loc = 'bus' and strpos('gadukino|gadukino_tickets|gadukino_busses', $loc_arg) > 0:
  45. result = 41
  46. elseif $loc = 'mitkabuh' or $loc = 'mitkabuh_group':
  47. result = 42
  48. elseif $loc = 'gad_river':
  49. result = 50
  50. elseif $loc = 'gad_beach':
  51. result = 51
  52. elseif $loc = 'gad_forest' and $loc_arg = 'forest_edge':
  53. result = 60
  54. elseif $loc = 'gad_meadow':
  55. result = 61
  56. elseif $loc = 'gad_forest' and $loc_arg = 'forest_outskirts':
  57. result = 62
  58. elseif $loc = 'gad_forest' and $loc_arg = 'forest_center':
  59. result = 63
  60. elseif $loc = 'gad_swamp':
  61. result = 64
  62. elseif $loc = 'field':
  63. result = 70
  64. elseif $loc = 'road' and nroad = 10:
  65. result = 80
  66. elseif $loc = 'train' and $loc_arg = 'gadukino':
  67. result = 81
  68. elseif $loc = 'furi' and nroad = 10:
  69. result = 82
  70. end
  71. end
  72. if $ARGS[0] = 'cikl':
  73. MiraVars['sched'] = rand(0, 5)
  74. MiraVars['prost_today'] = (rand(0, 2) > 0)
  75. end
  76. if $ARGS[0] = 'force_change':
  77. temp_start_loc = locat['A60']
  78. gs 'miroslava_schedule'
  79. i = 0
  80. :mira_loop_start
  81. if locat['A60'] = temp_start_loc:
  82. gs 'miroslava_schedule', 'cikl'
  83. gs 'miroslava_schedule'
  84. i += 1
  85. if i < 10: jump 'mira_loop_start'
  86. end
  87. killvar 'i'
  88. killvar 'temp_start_loc'
  89. end
  90. if $ARGS[0] = '':
  91. locat['A60_prev'] = locat['A60']
  92. gs 'miroslava_schedule', 'update_locat'
  93. end
  94. if $ARGS[0] = 'update_locat':
  95. if daystart < MiraVars['emb_day']:
  96. ! Embarrassed Mira is at Home
  97. locat['A60'] = 10
  98. exit
  99. end
  100. if MiraVars['follower'] = 1:
  101. MiraVars['follower'] = 0
  102. ! Mira is your follower, so set her location to your location.
  103. locat['A60'] = func('miroslava_schedule', 'get_locat_from_loc')
  104. exit
  105. elseif Miravars['follow_time'] > 0:
  106. locat['A60'] = locat['A60_prev']
  107. end
  108. if MiraVars['guest'] = 1:
  109. !! check if mira and sveta are in the same location.
  110. !! if so: locat['A60'] remains the same
  111. !! else: MiraVars['guest'] = 0
  112. if $loc = 'gad_gpyard':
  113. locat['A60'] = 20
  114. elseif $loc = 'gad_gphouse':
  115. locat['A60'] = 21
  116. elseif $loc = 'gad_gpbath':
  117. locat['A60'] = 22
  118. elseif $loc = 'gad_gpbarn':
  119. locat['A60'] = 23
  120. elseif $loc = 'gad_field':
  121. MiraVars['guest'] = 0
  122. locat['A60'] = 70
  123. else
  124. MiraVars['guest'] = 0
  125. gs 'miroslava_schedule', ''
  126. end
  127. exit
  128. end
  129. gs 'miroslava_schedule', 'get_base_schedule'
  130. if npc_known['A60'] = 0 and locat['A60'] ! 10 and locat['A60'] ! 30: locat['A60'] = 30 & ! Sveta and Mira aren''t friends yet.
  131. if MiraVars['QW'] > 15 and MiraVars['prost_today'] and hour >= 16 and hour < 20: locat['A60'] = 80 & ! Prostitution
  132. if locat['A60'] = 61 and (MiraVars['meadow'] = 2 or MiraVars['meadow'] = 5): locat['A60'] = 60 & ! If meadow not unlocked -> Forest edge
  133. if locat['A60'] = 51 and (sunweather = 0 or temper < 15 or month < 5 or month > 9): locat['A60'] = 10 & ! Winter = No Beach
  134. if locat['A60'] = 42 and (MiraVars['QW'] = 0 or npc_drunk['A60'] > 0): locat['A60'] = 10 & ! drunk or doesn''t know the guys
  135. if (locat['A60'] / 10) = 2 and grandpaQW['chore_herd_cattle'] = 1 and $loc = 'gad_field' and npc_rel['A60'] >= 15 and (npc_QW['A63'] < 13 or MiraVars['QW'] >= 10 or MiraVars['had_sex'] > 1): locat['A60'] = 70 & ! Mira visits in the field if she was planning to visit you either way.
  136. if sunWeather = 0:
  137. if locat['A60'] >= 30 and locat['A60'] ! 42:
  138. if MiraVars['guestday'] >= daystart or npc_known['A60'] = 0 or hour < 8 or hour >= 20 or npc_rel['A60'] < 15 or (npc_QW['A63'] >= 11 and MiraVars['QW'] < 11 and MiraVars['had_sex'] <= 1):
  139. locat['A60'] = 10
  140. else
  141. MiraVars['invite_rand'] = rand(0, 1)
  142. MiraVars['guestday'] = daystart
  143. if MiraVars['invite_rand'] = 0:
  144. locat['A60'] = 21
  145. else
  146. locat['A60'] = 10
  147. end
  148. end
  149. end
  150. end
  151. end
  152. if $ARGS[0] = 'get_base_schedule':
  153. !! Mira does not naturally show up in the Forest after 11:00
  154. !! Mira leaves beach after 20:00 and isn''t there before 9:00
  155. !!npc_rel['A60'] >= 15 and sunWeather = 1 and hour >= 10 and temp = 1 and daystart >= MiraVars['emb_day'] and (npc_QW['A63'] < 13 or MiraVars['QW'] >= 10 or MiraVars['had_sex'] > 1) and npc_known['A60'] = 1
  156. !{
  157. elseif MiraVars['sched'] = 10:
  158. !! 0-8, 8-10, 10-12, 12-14, 14-16, 16-18, 18-20, 20-22, 22-00
  159. !! Sched0: Home, Home, Home, Home, Home, Home, Home, Home, Home
  160. if hour < 8:
  161. locat['A60'] = 10
  162. elseif hour < 10:
  163. locat['A60'] = 10
  164. elseif hour < 12:
  165. locat['A60'] = 10
  166. elseif hour < 14:
  167. locat['A60'] = 10
  168. elseif hour < 16:
  169. locat['A60'] = 10
  170. elseif hour < 18:
  171. locat['A60'] = 10
  172. elseif hour < 20:
  173. locat['A60'] = 10
  174. elseif hour < 22:
  175. locat['A60'] = 10
  176. else
  177. locat['A60'] = 10
  178. end
  179. }
  180. if MiraVars['sched'] = 0:
  181. !! 0-8, 8-10, 10-14, 14-16, 16-18, 18-20, 20-00
  182. !! Sched0: Home, Forest, Beach, Gad, Meadow, Gad, gopn
  183. if hour <= 7:
  184. locat['A60'] = 10
  185. elseif hour <= 9:
  186. locat['A60'] = 60
  187. elseif hour <= 13:
  188. locat['A60'] = 51
  189. elseif hour <= 15:
  190. locat['A60'] = 30
  191. elseif hour <= 17:
  192. locat['A60'] = 61
  193. elseif hour <= 19:
  194. locat['A60'] = 30
  195. else
  196. locat['A60'] = 42
  197. end
  198. elseif MiraVars['sched'] = 1:
  199. !! 0-10, 10-16, 16-20, 20-00
  200. !! Sched1: Home, Beach grandp, home
  201. if hour <= 9:
  202. locat['A60'] = 10
  203. elseif hour <= 15:
  204. locat['A60'] = 51
  205. elseif hour <= 19:
  206. locat['A60'] = 20
  207. else
  208. locat['A60'] = 10
  209. end
  210. elseif MiraVars['sched'] = 2:
  211. !! 0-8, 8-10, 10-14, 14-16, 16-18, 18-20, 20-00
  212. !! Sched2: Home, Forest, Meadow, Beach, Meadow, Forest, gopn
  213. if hour <= 7:
  214. locat['A60'] = 10
  215. elseif hour <= 9:
  216. locat['A60'] = 60
  217. elseif hour <= 13:
  218. locat['A60'] = 61
  219. elseif hour <= 15:
  220. locat['A60'] = 51
  221. elseif hour <= 17:
  222. locat['A60'] = 61
  223. elseif hour <= 19:
  224. locat['A60'] = 60
  225. else
  226. locat['A60'] = 42
  227. end
  228. elseif MiraVars['sched'] = 3:
  229. !! 0-8, 8-10, 10-12, 12-14, 14-16, 16-18, 18-20, 20-22, 22-00
  230. !! Sched3: Home, Home, Home, Home, Home, Home, Home, Home, Home
  231. if hour < 8:
  232. locat['A60'] = 10
  233. elseif hour < 14:
  234. locat['A60'] = 20
  235. elseif hour < 18:
  236. locat['A60'] = 51
  237. else
  238. locat['A60'] = 10
  239. end
  240. elseif MiraVars['sched'] = 4:
  241. !! 0-8, 8-10, 10-12, 12-14, 14-16, 16-18, 18-20, 20-22, 22-00
  242. !! Sched4: Home, Home, Home, Home, Home, Home, Home, Home, Home
  243. if hour < 8:
  244. locat['A60'] = 10
  245. elseif hour < 10:
  246. locat['A60'] = 60
  247. elseif hour < 14:
  248. locat['A60'] = 61
  249. elseif hour < 20:
  250. locat['A60'] = 51
  251. else
  252. locat['A60'] = 10
  253. end
  254. elseif MiraVars['sched'] = 5:
  255. !! 0-8, 8-10, 10-12, 12-14, 14-16, 16-18, 18-20, 20-22, 22-00
  256. !! Sched5: Home, Home, Home, Home, Home, Home, Home, Home, Home
  257. if hour < 8:
  258. locat['A60'] = 10
  259. elseif hour < 10:
  260. locat['A60'] = 61
  261. elseif hour < 12:
  262. locat['A60'] = 60
  263. elseif hour < 14:
  264. locat['A60'] = 60
  265. elseif hour < 16:
  266. locat['A60'] = 30
  267. elseif hour < 18:
  268. locat['A60'] = 30
  269. elseif hour < 20:
  270. locat['A60'] = 20
  271. elseif hour < 22:
  272. locat['A60'] = 20
  273. else
  274. locat['A60'] = 20
  275. end
  276. end
  277. end
  278. !New
  279. if $ARGS[0] = 'getLocation':
  280. gs 'miroslava_schedule', 'update_locat'
  281. if locat['A60'] = 10:
  282. $npcLocation['A60'] = 'Mira is at home'
  283. elseif locat['A60'] = 20:
  284. $npcLocation['A60'] = 'Mira is in your Grandparents yard'
  285. elseif locat['A60'] = 21:
  286. $npcLocation['A60'] = 'Mira is at your Grandparents house'
  287. elseif locat['A60'] = 30:
  288. $npcLocation['A60'] = 'Mira is walking around Gad'
  289. elseif locat['A60'] = 31:
  290. $npcLocation['A60'] = 'Mira is at the church'
  291. elseif locat['A60'] = 40:
  292. $npcLocation['A60'] = 'Mira at the forest road'
  293. elseif locat['A60'] = 41:
  294. $npcLocation['A60'] = 'Mira is at the bus station'
  295. elseif locat['A60'] = 42:
  296. $npcLocation['A60'] = 'Mira is with the gopniks'
  297. elseif locat['A60'] = 50:
  298. $npcLocation['A60'] = 'Mira is at the river'
  299. elseif locat['A60'] = 51:
  300. $npcLocation['A60'] = 'Mira is at the beach'
  301. elseif locat['A60'] = 60:
  302. $npcLocation['A60'] = 'Mira is at the forest edge'
  303. elseif locat['A60'] = 61:
  304. $npcLocation['A60'] = 'Mira is at the meadow'
  305. elseif locat['A60'] = 62:
  306. $npcLocation['A60'] = 'Mira is in the forest outskirts'
  307. elseif locat['A60'] = 63:
  308. $npcLocation['A60'] = 'Mira is in the center of the forest'
  309. elseif locat['A60'] = 64:
  310. $npcLocation['A60'] = 'Mira is at the swamps'
  311. elseif locat['A60'] = 70:
  312. $npcLocation['A60'] = 'Mira is at field'
  313. elseif locat['A60'] = 80:
  314. $npcLocation['A60'] = 'Mira is at the highway'
  315. elseif locat['A60'] = 81:
  316. $npcLocation['A60'] = 'Mira is at the train station'
  317. elseif locat['A60'] = 82:
  318. $npcLocation['A60'] = 'Mira is at the lorry'
  319. !{
  320. elseif locat['A60'] = 90:
  321. $npcLocation['A60'] = 'Mira is with you'
  322. }
  323. end
  324. end
  325. !{!OLD
  326. if $ARGS[0] = 'getLocation':
  327. if locat['A60'] = 0:
  328. $npcLocation['A60'] = 'Mira is at home'
  329. elseif locat['A60'] = 1:
  330. $npcLocation['A60'] = 'Mira is at river'
  331. elseif locat['A60'] = 2:
  332. $npcLocation['A60'] = 'Mira is at meadow'
  333. elseif locat['A60'] = 3:
  334. $npcLocation['A60'] = 'Mira is at forest'
  335. elseif locat['A60'] = 4:
  336. $npcLocation['A60'] = 'Mira is at field'
  337. elseif locat['A60'] = 41:
  338. $npcLocation['A60'] = 'Mira is at field'
  339. elseif locat['A60'] = 42:
  340. $npcLocation['A60'] = 'Mira is at field'
  341. elseif locat['A60'] = 43:
  342. $npcLocation['A60'] = 'Mira is at field'
  343. elseif locat['A60'] = 5:
  344. $npcLocation['A60'] = 'Mira is at gop'
  345. elseif locat['A60'] = 6:
  346. $npcLocation['A60'] = 'Mira is at gad_gphouse'
  347. elseif locat['A60'] = 7:
  348. $npcLocation['A60'] = 'Mira is at gad_gpyard'
  349. elseif locat['A60'] = 8:
  350. $npcLocation['A60'] = 'Mira is at the highway'
  351. elseif locat['A60'] = 9:
  352. $npcLocation['A60'] = 'Mira is with you'
  353. end
  354. end
  355. }
  356. --- miroslava_schedule ---------------------------------