160 Commits 516d51e418 ... d497ed61ce

Author SHA1 Message Date
  LinaHirata d497ed61ce [added] by popular request, therapist weekly limit cheat 2 months ago
  Kevin_Smarts 78f0375ed4 [fixed] The masturbation in the tree circle was generating more arousal than it relieved. Have shortened stimulation time. 2 months ago
  Kevin_Smarts 5cd4cad900 Merge remote-tracking branch 'Anjuna/master' 2 months ago
  Kevin_Smarts 877948035d Merge remote-tracking branch 'Lusticon/master' 2 months ago
  Kevin_Smarts 97efed6bde [fixed] Removed Valentin's TF cum trick so he can't sire Radomir's kids now 2 months ago
  anjuna krokus ece7140f72 [added] new event in Natbel's questline! Currently not yet available in game. Written by BBZ01 2 months ago
  anjuna krokus 01d8f88211 [added] sleep_reflections should now only fire once per day, preventing it from firing repeatedly. 2 months ago
  anjuna krokus 696bc5fdf6 [changed] variable migration for the amateur and professional runner questline (both in pavlovsk and St. Petersburg). 2 months ago
  anjuna krokus 71c73f9ae7 [added] option to let Maksim (Anushka's little brother) win when he bets you for a secret 2 months ago
  anjuna krokus fa58ae5695 [removed] unneeded gruptipe check which prevented a part of a gopnik park event from firing correctly 2 months ago
  anjuna krokus 6b886fb8d5 [fixed] Prioritised the Marisha wakeup event to prevent her from sleeping over multiple days 2 months ago
  anjuna krokus cbb50995b5 [fixed] wrong display in the train schedule from pavlovsk to St. Petersburg 2 months ago
  anjuna krokus e37b7cbe3d [added] sleep reflections for Anushka and Artem. Written by Nutluck 2 months ago
  Lusticon fe805d4ef2 [fixed] deposit pay 2 months ago
  Lusticon 764e7cb01b Merge branch 'master' of https://git.tfgames.site/Kevin_Smarts/glife 2 months ago
  Lusticon cb7f9ce58c [fixed] unknown error and other code optimizations 2 months ago
  bgkjdgbizgblzdgbr 83825ae484 [cahnged] New exp calculations. Be prepared to a much slower increase in stats. Any feed back will be appriciated. 2 months ago
  bgkjdgbizgblzdgbr 184074f4ba [fixed/chenged] Some varaible names was still not updated to the "new" fame system, so the running and kickboxing interveiws at the modeling agency could not fire. Also chnaged the values for the fame requirements to better mathc the current version of fame. 2 months ago
  bgkjdgbizgblzdgbr 021e139dbb [cahnged] Deleted old code not used anymore. 2 months ago
  Kevin_Smarts dce36a12fb [fixed] Bad image links 2 months ago
  Kevin_Smarts 9c41a08f7a [fixed] Bad link so oyu couldn't do sub training 2 months ago
  anjuna krokus 817b4723bc [removed] exidentally added unfinished (highly broken) content 2 months ago
  anjuna krokus a3efa81632 [fixed] Used an older version for the weight function. This should minimize any changes 2 months ago
  anjuna krokus b3cde0f8d1 [changed] pcs_butt now has a new level (heart-shaped) and ranges between 0 and 60+ (instead of 0 and 12+) 2 months ago
  anjuna krokus a247eaaa62 [added/changed] Updated the weight function to now be centered around 165 cm (as requested). New function which calculates the optimal `pcs_mass['body']` (bmi = 22.5). Expect a shift in bmi when loading an old save. 2 months ago
  anjuna krokus 2789f4ac8d Merge remote-tracking branch 'master/master' 2 months ago
  Kevin_Smarts 73eda1636b [added] unlocked two more demo options at current last Anna stage after getting them sorted out. 2 months ago
  anjuna krokus 0378d9e1fd [fixed] sleeping/napping drunk in gadukino should no longer crash the game 2 months ago
  anjuna krokus c8321f9b13 [fixed] small mistake in drugs caused breastcream and steroids to trigger during the body update 2 months ago
  anjuna krokus f57f5098ed [added] environment and simple example for reflections (requested by Nutluck) 2 months ago
  anjuna krokus 0374f307c4 [changed] Mass variable migration surrounding "drugs". This includes an experimental move of stat, hourly_events, and cikl. Almost certain something's going to break. My bad 2 months ago
  Kevin_Smarts 8536329b49 [fixed] Wrong variable zeroed 2 months ago
  Kevin_Smarts 80b8d24dc9 Merge remote-tracking branch 'Lusticon/master' 2 months ago
  bgkjdgbizgblzdgbr 6e27dd997e [fixde/added] Variable not set, so no chance for Katja inviting you home for some extra, if the men on your date did not get her of. 2 months ago
  Kevin_Smarts de8e2fc416 [fixed] no $ for string variable in 6 bdsm mansion files 2 months ago
  Lusticon 6e9f7d586a [added] clean cum need a private place msg 2 months ago
  Kevin_Smarts 8ca04b88a8 [changed] Removed a couple of random oral for Mistress and made them player choice instead. Makes it more realistic and quicker for player to progress if they want to 2 months ago
  Kevin_Smarts 7637d83afe [fixed] wrong value for panty quality 2 months ago
  Anya c650bb50fc [fixed] dick swap 2 months ago
  bgkjdgbizgblzdgbr 4749a45894 Merge branch 'master' of https://git.tfgames.site/Kevin_Smarts/glife 2 months ago
  bgkjdgbizgblzdgbr 2121c5584a [fixed] Strange ` and som wrongly used " 2 months ago
  Kevin_Smarts 17f66babe4 Merge remote-tracking branch 'Anya/master' 2 months ago
  bgkjdgbizgblzdgbr df44acfda6 [fixed] Missing end 2 months ago
  bgkjdgbizgblzdgbr 95661efebd [fixed] Missing , 2 months ago
  Kevin_Smarts 56acac6549 [changed] updated version history for bug fix release 2 months ago
  Anya a24dd92c69 [fixed] broken albina flashdrive event 2 months ago
  bgkjdgbizgblzdgbr 45f2bf71a4 Merge branch 'master' of https://git.tfgames.site/Kevin_Smarts/glife 2 months ago
  bgkjdgbizgblzdgbr 28f207951c [fixed] Mitchmatch between attibute used and where the expwrience was gained. 2 months ago
  Kevin_Smarts 0fbdb801de Merge remote-tracking branch 'Lusticon/master' 2 months ago
  Kevin_Smarts 4f35ce7599 Merge remote-tracking branch 'Anjuna/master' 2 months ago
  Lusticon c88109ac70 [fixed] correct mom rape talk var 2 months ago
  Lusticon 53804d1fd0 [fixed] dead end 2 months ago
  Lusticon 9f546d6e67 [fixed] mom rape talk vars 2 months ago
  Lusticon 654b4bd7a0 [fixed] wrong location call 2 months ago
  Lusticon ded188d41e [fixed] mom finds dildos vars 2 months ago
  Lusticon 3e312cf662 Merge branch 'master' of https://git.tfgames.site/Kevin_Smarts/glife 2 months ago
  Kevin_Smarts 54786a5ba4 [fixed] Clothes handling when doing Lake activities with Katya 2 months ago
  Kevin_Smarts 205ca1a026 [fixed] Forgot to remove these files from .qproj 2 months ago
  anjuna krokus 89541826ca [fixed] Cheatmenu didn't properly set the weight change messages and didn't change `bust_gen`. 2 months ago
  Lusticon 564e38cfcb Merge branch 'master' of https://git.tfgames.site/Kevin_Smarts/glife 2 months ago
  Lusticon 52a2b20536 [fixed] typo 2 months ago
  Kevin_Smarts 1ae7c04a5e [changed] Simplified the BDSM mansion navigation quite a bit and removed a few roms that are not needed 2 months ago
  Kevin_Smarts b03b36c2b2 Merge remote-tracking branch 'Violet_Kitten/master' 2 months ago
  Violet Kitten 93d19b67ff Updated the slut fame call for Fedor's chat, and did a quick rewrite for the Fedor vs Vitek fight scene, improving the text a bit. 2 months ago
  Lusticon 83e5efd486 [fixed] pornstudio var 2 months ago
  Lusticon fbbf66eda8 [fixed] missing image 2 months ago
  Lusticon c007e48bc6 [fixed] dead end 2 months ago
  Lusticon a94f039f56 Merge branch 'master' of https://git.tfgames.site/Kevin_Smarts/glife 2 months ago
  Lusticon 961de1b1a2 [fixed] missing images 2 months ago
  Kevin_Smarts f6f7124765 Merge branch 'master' of https://git.tfgames.site/Kevin_Smarts/glife 2 months ago
  bgkjdgbizgblzdgbr 603ac626e3 [fixed] Simple cut and paste had made the incilization of the grades for nursing degree not working correctly. This will only be fised if you start a new game, or enroll in a new semester. 2 months ago
  Lusticon 71c317cbee [fixed] working hours for client 2 months ago
  Lusticon 441f10fb09 [fixed] sweat var 2 months ago
  Lusticon b8d94bb2bb [fixed] missed videos 2 months ago
  Lusticon 35326ac4fd Merge branch 'master' of https://git.tfgames.site/Kevin_Smarts/glife 2 months ago
  Kevin_Smarts 9020230341 Merge remote-tracking branch 'Anjuna/master' 2 months ago
  Lusticon ffab3e22b4 [fixed] missing videos 2 months ago
  Kevin_Smarts 8bac85be0e [fixed] missed a clear screen when adding this part 2 months ago
  anjuna krokus 414366853b [fixed] npc's should now cannot have no humor. Added a fix to set npc_humor in case that it hasn't for a partner. 2 months ago
  anjuna krokus c00a408315 [fixed] added an else clause to prevent dead ends in `sex_ev_pillow_talk2, how_stay_hard`, when `$npc_humor` isn't properly set. 2 months ago
  Kevin_Smarts 0342d5449a Merge remote-tracking branch 'Anjuna/master' 2 months ago
  anjuna krokus e2665b16a9 [fixed] Correct path to the "image_needed" image in `bus`. Found by Dasha 2 months ago
  anjuna krokus 19a4e55c96 [fixed] breaking up -> sexually incompatible -> end things -> you don't satisfy me loop in hookups. Found by Dasha 2 months ago
  anjuna krokus 8555415aa6 [fixed] removed trailing tabs, added forgotten killvars of temporary variables including `checked_homes` which caused a bug in the real estate agency 2 months ago
  Lusticon 6fbea59614 [removed] gt 'sistersleep', 'drunk_after_party' 2 months ago
  Lusticon 5fd6130fa9 [fixed] missied : 2 months ago
  Lusticon 6fc9ed7b3d [fixed] Black Screen while dancing with a guy 2 months ago
  Lusticon dcc4399f85 Merge branch 'master' of https://git.tfgames.site/Kevin_Smarts/glife 2 months ago
  Lusticon 4b2b06abef [fixed] wrong image name 2 months ago
  anjuna krokus 09aa9f8bc6 [fixed] Anushka-Artem Threesome wasn't properly commented out in the city (Artem doesn't have a room there yet). 2 months ago
  Kevin_Smarts cf36be06d5 [update] Version history updated for bug fix release 2 months ago
  Kevin_Smarts 68abab66dc Merge remote-tracking branch 'Lusticon/master' 3 months ago
  Kevin_Smarts 1d02906912 [fixed] some inherent bugs and weirdness in the BDSM mansion variable handling and intro. Converted the variables in an array in the process. 3 months ago
  Lusticon 300525615f Merge branch 'master' of https://git.tfgames.site/Kevin_Smarts/glife 3 months ago
  Lusticon 908889f51c [changed] wav to mp3 3 months ago
  Kevin_Smarts e412f7f01a [fixed] Incorrect $ARGS in link 3 months ago
  Lusticon 5fbfd5bde3 [fixed] $ARGS duplicates 3 months ago
  Lusticon 8d89189446 [fixed] Blank screen while "walking with Mira " and meeting Mitka 3 months ago
  Lusticon 8d7c65ffa7 [fixed] remove broken pregnancy+ 3 months ago
  Kevin_Smarts 07fe029ae5 [fixed] Text edit 3 months ago
  Kevin_Smarts 0ff2ddc0d8 [changed] Updated version number and corrected the version number for last saveupdater entry 3 months ago
  Lusticon 0225e4c3f6 [fixed] remove broken pregnancy 3 months ago
  Kevin_Smarts 128944a2e1 Merge remote-tracking branch 'Anjuna/master' 3 months ago
  anjuna krokus f907c2de64 [fixed] Double closing tag in sex_ev_talk 3 months ago
  Lusticon f50d163613 [fixed] pregnancy: father empty name 3 months ago
  anjuna krokus eb56240112 [fixed] Cemetary bus stop now correctly takes you to the road and cemetary proper. Leaving the cemetary bus platform no longer teleports you to the communal village 3 months ago
  anjuna krokus a787c298f4 [fixed] Trying to leave the therapists hotelroom while naked would teleport you. Woops 3 months ago
  anjuna krokus 23b2fa94b8 [fixed] small balance fix for specific edgecases around pcs_mass['body'] between 50 and 60 and weird starting values for bust and butt 3 months ago
  anjuna krokus 5d29becc43 [fixed] Girl dates should now use that correct image for the potential lover, instead of the first in the list 3 months ago
  anjuna krokus 9b597f1e3e [fixed] Bust and Butt unaffected by weight cheat re-implemented 3 months ago
  anjuna krokus 7beead8061 [fixed] (Re)Setting mass distributions should now more closely follow the real steady-state distributions, thus resulting in fewer post cheat fluctuations. Appearance should no longer be displayed as 1 (Hopefully)? 3 months ago
  anjuna krokus b5ab4a3dd1 [fixed] visual bug in tailor 3 months ago
  Kevin_Smarts af464c281b Merge remote-tracking branch 'Anjuna/master' 3 months ago
  anjuna krokus afcc7f16c3 [fixed] moved `narkday = daystart` to `drugs` fixing multiple locations where this variable isn't set. 3 months ago
  anjuna krokus 28c36fdd91 [fixed] dead end in albina wine event small tit talk 3 months ago
  anjuna krokus 4afa287297 Merge remote-tracking branch 'Master/master' 3 months ago
  bgkjdgbizgblzdgbr 39466fe87c [fixed] Missing exit 3 months ago
  anjuna krokus 04220bf11a [fixed] Saveupdater should now properly distribute salo over body bust and butt. 3 months ago
  anjuna krokus 06af7204b7 [fixed] Added boyStat calls to the therapist files. That should fix any weird "unkown father" pregnancy issues 3 months ago
  Anya 9c97a4e7a2 [fixed] Endless Anushka dancing 3 months ago
  Anya c5c928ae44 [fixed] Anya chat option 3 months ago
  anjuna krokus 8039d005f5 [changed] correct indentation in cum_call 3 months ago
  anjuna krokus b0d4fc0767 [fixed] wrong image location in pav_station. Thanx to chlu 3 months ago
  anjuna krokus d97ae40746 [changed] forgotten layout changes 3 months ago
  anjuna krokus b9370b7e5e [fixed] ballet_secrets image should now properly load when you enroll. Changed spaces into tabs 3 months ago
  anjuna krokus df20d1df2b [fixed] There should no longer be a permanent "You have a strong desire to read!!!" notice for characters with glasses 3 months ago
  anjuna krokus 1e5a990cba [fixed] wrong get_npc_selfie_totals call. Found by chlu, solved by beef supreme. 3 months ago
  Kevin_Smarts e01b26725a [fixed] Wrong labels in Erotomaniac when viewing shoes or stripper clothing 3 months ago
  anjuna krokus 09a9aecfa3 [fixed] wrong image paths for the communal bus stop 3 months ago
  anjuna krokus e72dbabbce [fixed] uni and city TG starts now properly give the new again trait. 3 months ago
  Kevin_Smarts 02641ffdd5 Merge remote-tracking branch 'Anjuna/master' 3 months ago
  Kevin_Smarts ab33e2ce62 [fixed?] Error that might be from line split but honestly don't know 3 months ago
  JurriaandeGier 71b2f44674 [fixed] Albina should now properly appear in the art class as a model, the image paths are now correct, and a small layout update 3 months ago
  JurriaandeGier e31ff087eb [fixed] "You seem to be losing weight" messages. They should now trigger only when actually losing/gaining weight 3 months ago
  JurriaandeGier b360b5cffc [fixed] Wrong function name caused infinite loop in therapist hotel questline. Found by Daddy Dom 3 months ago
  JurriaandeGier 31af827765 [fixed] magic sg starts not having a start_type['cat'] or start_type['group'] 3 months ago
  Kevin_Smarts 334d063f60 [text edit] missing text for fairy and wrong plane/plain useage both spotted by yoyodyne 3 months ago
  Kevin_Smarts 867b971f78 [fixed] Sorry! 3 months ago
  Kevin_Smarts 0d4fc0d329 [fixed] I can't spell 3 months ago
  Kevin_Smarts d3c8553400 Merge remote-tracking branch 'Hooded_Silence/master' 3 months ago
  Hooded Silence 6db196d547 [Bug Fix] provided a jail card to prevent a dead end 3 months ago
  Hooded Silence a2e1058dd6 Merge branch 'master' of https://git.tfgames.site/Kevin_Smarts/glife 3 months ago
  anjuna krokus 44d5ebec43 [fixed] more character -> characters and 4 spaces to tab 3 months ago
  anjuna krokus b2040eeb44 [fixed] text edits in Cheatmenu (found by Ryanwire) and Igorhome 3 months ago
  anjuna krokus b10ab2b971 Merge branch 'master' of https://git.tfgames.site/Kevin_Smarts/glife 3 months ago
  anjuna krokus 086222ac70 [fixed] Should not have removed the `cla` 3 months ago
  Kevin_Smarts ff36ae59d4 [fixed] Essential fix 3 months ago
  Kevin_Smarts 681e522d64 Merge remote-tracking branch 'Anjuna/master' 3 months ago
  Kevin_Smarts 1401cbcd7e [fixed] Game breaking bug! 3 months ago
  anjuna krokus 278d0a3cd2 [fixed] Kevin wrote my name wrong. But only sometimes 3 months ago
  Kevin_Smarts be2fac25b0 [changed] updated version number and save updater for new release 3 months ago
  Kevin_Smarts 089d555c67 [updated] Change log update in preperation for release 3 months ago
  anjuna krokus 12d8f02d7f [fixed] last thingy in library 3 months ago
  anjuna krokus 363ce6686d [fixed] potential dead ends in the library 3 months ago
  anjuna krokus f50ba6a24c Merge branch 'release' of https://git.tfgames.site/Kevin_Smarts/glife 3 months ago
  anjuna krokus 20eb437bdb [fixed] pcs_money to money and forgotten update to uni_library 3 months ago
  Vengeance_11 0d7a9b8eae Weird dead end in the library debt 3 months ago
  Kevin_Smarts 30327a3442 Merge remote-tracking branch 'Anjuna/master' 3 months ago
  Kevin_Smarts 63513ebcfd [fixed] typo 3 months ago
  anjuna krokus 0a975aa7e9 [fixed] wrong image paths. Thanks to T7792 3 months ago
100 changed files with 2146 additions and 2344 deletions
  1. 1 2
      glife.qproj
  2. 55 63
      locations/BDSM_training.qsrc
  3. 96 52
      locations/Cheatmenu_din.qsrc
  4. 2 2
      locations/Cum_Manage.qsrc
  5. 9 9
      locations/FedorEv.qsrc
  6. 2 2
      locations/FedorEv2.qsrc
  7. 4 10
      locations/FedorMisc.qsrc
  8. 1 1
      locations/HotelRoom.qsrc
  9. 1 1
      locations/JuliaMilHome.qsrc
  10. 1 1
      locations/KatjaHomeTalk.qsrc
  11. 1 1
      locations/Komp.qsrc
  12. 31 70
      locations/MagEncounterFairy.qsrc
  13. 1 1
      locations/MartinTalk.qsrc
  14. 1 1
      locations/Vika.qsrc
  15. 1 1
      locations/_attributes_danilovich_panties.qsrc
  16. 1 2
      locations/abduction.qsrc
  17. 1 0
      locations/albina_house_events.qsrc
  18. 1 2
      locations/albina_wine_event.qsrc
  19. 1 2
      locations/albinahome.qsrc
  20. 3 5
      locations/anush_bedroom.qsrc
  21. 3 5
      locations/anush_bedroom_city.qsrc
  22. 61 57
      locations/anushaptbr.qsrc
  23. 3 5
      locations/anushka.qsrc
  24. 3 2
      locations/anushkachat_city.qsrc
  25. 2 3
      locations/anushkaev2.qsrc
  26. 1 1
      locations/balkon.qsrc
  27. 204 207
      locations/ballet_secrets.qsrc
  28. 1 1
      locations/bass.qsrc
  29. 2 2
      locations/bdsm_ballroom.qsrc
  30. 1 1
      locations/bdsm_basement.qsrc
  31. 1 1
      locations/bdsm_bathrooms.qsrc
  32. 27 55
      locations/bdsm_bedeast.qsrc
  33. 4 4
      locations/bdsm_bedwest.qsrc
  34. 2 2
      locations/bdsm_conservatory.qsrc
  35. 1 2
      locations/bdsm_dining.qsrc
  36. 26 2
      locations/bdsm_dressing.qsrc
  37. 1 1
      locations/bdsm_gameroom.qsrc
  38. 1 1
      locations/bdsm_garden.qsrc
  39. 24 63
      locations/bdsm_hallway.qsrc
  40. 4 3
      locations/bdsm_kitchen.qsrc
  41. 24 44
      locations/bdsm_landing.qsrc
  42. 0 27
      locations/bdsm_library.qsrc
  43. 0 17
      locations/bdsm_livingroom.qsrc
  44. 124 152
      locations/bdsm_mansion.qsrc
  45. 3 1
      locations/bedrPar.qsrc
  46. 2 2
      locations/beg.qsrc
  47. 101 101
      locations/beg1.qsrc
  48. 73 70
      locations/body.qsrc
  49. 5 3
      locations/body_desc.qsrc
  50. 1 1
      locations/bordel.qsrc
  51. 12 13
      locations/brothel.qsrc
  52. 40 39
      locations/bus.qsrc
  53. 4 18
      locations/cikl.qsrc
  54. 14 22
      locations/city_bobka.qsrc
  55. 3 3
      locations/city_church.qsrc
  56. 23 23
      locations/city_drugden.qsrc
  57. 4 2
      locations/city_kafe.qsrc
  58. 5 7
      locations/city_library.qsrc
  59. 1 1
      locations/city_mansion_residence_2.qsrc
  60. 11 19
      locations/city_nightclub.qsrc
  61. 8 7
      locations/city_park.qsrc
  62. 2 2
      locations/city_redlight.qsrc
  63. 1 1
      locations/city_residential.qsrc
  64. 3 3
      locations/city_saunawhore.qsrc
  65. 1 1
      locations/city_suburbs.qsrc
  66. 3 3
      locations/cum_call.qsrc
  67. 28 28
      locations/dateF.qsrc
  68. 3 9
      locations/dimaEv.qsrc
  69. 10 30
      locations/din_bad.qsrc
  70. 13 15
      locations/din_van.qsrc
  71. 1 1
      locations/dream_events.qsrc
  72. 531 205
      locations/drugs.qsrc
  73. 4 4
      locations/etoexhib.qsrc
  74. 12 12
      locations/events.qsrc
  75. 29 29
      locations/exercise.qsrc
  76. 4 4
      locations/exhibitionistshop.qsrc
  77. 7 3
      locations/exp_gain.qsrc
  78. 2 2
      locations/fame_events.qsrc
  79. 1 1
      locations/femcyc.qsrc
  80. 6 6
      locations/fit.qsrc
  81. 100 24
      locations/foto_events.qsrc
  82. 128 129
      locations/foto_events2.qsrc
  83. 5 1
      locations/foto_model_documentary.qsrc
  84. 3 3
      locations/gad_church.qsrc
  85. 3 4
      locations/gadbana.qsrc
  86. 2 2
      locations/gadhouse.qsrc
  87. 1 1
      locations/gadsarai.qsrc
  88. 5 8
      locations/gas_station_gp_117.qsrc
  89. 2 2
      locations/gopnik_initiation.qsrc
  90. 7 8
      locations/gschool_coolkid_chats.qsrc
  91. 1 1
      locations/gschool_events.qsrc
  92. 53 53
      locations/gschool_grounds.qsrc
  93. 1 1
      locations/gschool_lessons.qsrc
  94. 7 8
      locations/gschool_lessons4.qsrc
  95. 4 4
      locations/homes_properties.qsrc
  96. 1 0
      locations/homes_properties_attr.qsrc
  97. 1 2
      locations/hookahlounge.qsrc
  98. 14 15
      locations/hookup_after.qsrc
  99. 4 7
      locations/hotel_anna.qsrc
  100. 99 494
      locations/hotel_anna_gear.qsrc

+ 1 - 2
glife.qproj

@@ -85,6 +85,7 @@
 	<Folder name="Sleep">
 		<Location name="pre_sleep"/>
 		<Location name="pre_sleep_events"/>
+		<Location name="sleep_reflections"/>
 		<Location name="dream_events"/>
 		<Location name="sleep"/>
 		<Location name="sleep_simple"/>
@@ -387,7 +388,6 @@
 		<Location name="bdsm_dressing"/>
 		<Location name="bdsm_landing"/>
 		<Location name="bdsm_dining"/>
-		<Location name="bdsm_library"/>
 		<Location name="bdsm_ballroom"/>
 		<Location name="bdsm_garden"/>
 		<Location name="bdsm_conservatory"/>
@@ -396,7 +396,6 @@
 		<Location name="bdsm_bedwest"/>
 		<Location name="bdsm_bedeast"/>
 		<Location name="bdsm_gameroom"/>
-		<Location name="bdsm_livingroom"/>
 		<Location name="bdsm_bathrooms"/>
 	</Folder>
 	<Folder name="Trade Representative">

+ 55 - 63
locations/BDSM_training.qsrc

@@ -1,32 +1,29 @@
 # bdsm_training
-if $ARGS[0] = 'start':
+
+if $ARGS[0] = 'sub':
 	menu_off = 1
-	if BDSMpayDay < daystart - 30:
-		BDSMpayDay = daystart
-		money -= 10000
-		'You pay for another 30 days access to the club.'
-		act 'Continue':gt 'bdsm_training', 'start'
-	elseif BDSMmeet = 1:
-		BDSMmeet += 1
+	bdsmclub['training_daystart'] = daystart
+	if bdsmclub['subtraining'] = 0:
+		bdsmclub['subtraining'] = 1
 		gt 'bdsm_training', '1'
-	elseif BDSMmeet = 2:
-		BDSMmeet += 1
+	elseif bdsmclub['subtraining'] = 1:
+		bdsmclub['subtraining'] = 2
 		gt 'bdsm_training', '2'
-	elseif BDSMmeet = 3:
-		BDSMmeet += 1
+	elseif bdsmclub['subtraining'] = 2:
+		bdsmclub['subtraining'] = 3
 		gt 'bdsm_training', '3'
 	end
-end	
-	
+end
 	
+
 if $ARGS[0] = '1':
 	menu_off = 1
-	BDSMday = daystart
+	bdsmclub['training_daystart'] = daystart
 	money -= 10000
 	*clr & cla
 	minut += 10
 	gs 'stat'
-	'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_1.jpg"></center>'
+	'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r2_1.jpg"></center>'
 	'You are in the Club, security check your name off the list and let you in.  You give an elderly bookkeeper money and the security guard takes you into a small outbuilding away from the mansion. As you enter, you understand, almost the entire wing is a large room for BDSM-sessions.'
 	'Hanging from the ceiling chains with hooks and ropes, on the walls – lashes, whips, handcuffs, gags.  Submerged in the darkness of the far end of the hall you can just make out pads, tables, crosses and some odd device, you can only guess as to what it does. You are met by the lady from yesterday, her suit replaced by tight leather.  She holds in her hands a stick with glands at the ends.'
 	'"W-Hello," you just about manage.'
@@ -35,7 +32,7 @@ if $ARGS[0] = '1':
 	act 'Further':
 		*clr & cla
 		gs 'stat'
-		'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_2.jpg"></center>'
+		'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r2_2.jpg"></center>'
 		'"This is for electrical shocks." Explains Mistress. "You will meet him later."'
 		'She licks the contacts, then shifts her gaze to you.'
 		'"Are you still dressed, bitch?"'
@@ -50,7 +47,7 @@ if $ARGS[0] = '1':
 		act 'Obey':
 			*clr & cla
 			gs 'stat'
-			'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_3.jpg"></center>'
+			'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r2_3.jpg"></center>'
 			'The Mistress removes from the wall and you puts on you, a leather collar, then wrist cuffs and ankle bracelets with hooks. The collar presses. You reach up to loosen it, but that earns you a slap. The Mistress walks around, the toe of her boot pushes your feet.'
 			'"That''s right! This is the posture of attention. Does this position make the sub?'
 			'"I don''t know, Mistress!" You answer. Between your legs burns a flame, you feel it building, and flowing down your legs.'
@@ -69,7 +66,7 @@ if $ARGS[0] = '1':
 			act 'Listen':
 				*clr & cla
 				gs 'stat'
-				'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_4.jpg"></center>'
+				'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r2_4.jpg"></center>'
 				'Mistress hits you a few times on your inner thighs.'
 				'"During the session the submissive only speaks with permission. You may ask for permission to speak, but only if very important. Without permission sub only breathes. Permission is required to move, change positions or cum... we may only cum with permission.'
 				'Cumming without permission will be punished. You will usually be given just one minute to cum. Don''t manage it in that minute and you stop, immediately. When you cum, we need to report it.'
@@ -83,7 +80,7 @@ if $ARGS[0] = '1':
 				act 'Remember':
 					*clr & cla
 					gs 'stat'
-					'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_5.jpg"></center>'
+					'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r2_5.jpg"></center>'
 					'You feel covered in arousal. The Mistress sees your condition and puts her hand between your legs.'
 					'"You''re all wet! I knew that you were a perverted bitch. Yes?'
 					'"Yes, Mistress, yes!'
@@ -109,7 +106,7 @@ if $ARGS[0] = '1':
 						minut += 10
 						pcs_horny += 15
 						gs 'stat'
-						'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_6.jpg"></center>'
+						'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r2_6.jpg"></center>'
 						'"Now we have found the first topic to practice - restraint."'
 						'Mistresses manicured finger lifts your chin and looks you in the eye.'
 						'"Cum only with permission, bitch! Clear?"'
@@ -117,7 +114,7 @@ if $ARGS[0] = '1':
 						act 'Follow':
 							*clr & cla
 							gs 'stat'
-							'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_7.jpg"></center>'
+							'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r2_7.jpg"></center>'
 							'Mistress leads you to the diagonal cross and latches the bracelets to you. You can not move.'
 							'"Failure to comply will be punished."'
 							'Skillfully, Mistress plays with your clit, first fingers, then various tools. You moan, ready to cum, but she is very much aware. Noticing your condition, she removes her hand from your flower and whips you in the stomach.'
@@ -132,7 +129,7 @@ if $ARGS[0] = '1':
 								minut += 10
 								if pcs_horny < 100:pcs_horny = 100
 								gs 'stat'
-								'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_8.jpg"></center>'
+								'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r2_8.jpg"></center>'
 								'Eventually, you stop noticing the difference between pain and pleasure. Your face is covered in sweat, you squirm on the cross. You beg mistress to let you cum, but she is adamant.'
 								'"You must earn it!"'
 								$orgasm_or = 'no'
@@ -147,7 +144,7 @@ if $ARGS[0] = '1':
 										gs 'willpower', 'hj', 'resist', 'hard'
 										gs 'willpower', 'pay', 'resist'
 										gs 'stat'
-										'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_9.jpg"></center>'
+										'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r2_9.jpg"></center>'
 										'You decide to cheat and, with an incredible force of will, take control of the body. It goes unnoticed, Mistress continues, and you rapidly cum.'
 										'"What''s going on?!" Yells Mistress in your ear. "You bitch, tricking me like that!'
 										'She unhooks you from the cross, puts you on your knees and slaps you a few times. You are so happy, being able to cum, that you laugh.'
@@ -165,7 +162,7 @@ if $ARGS[0] = '1':
 									minut += 10
 									if pcs_horny < 100:pcs_horny = 100
 									gs 'stat'
-									'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_8.jpg"></center>'
+									'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r2_8.jpg"></center>'
 									'Mistress forbids you to cum, and you struggle, hampered.'
 									$orgasm_or = 'no'
 									gs 'stat'
@@ -184,7 +181,7 @@ if $ARGS[0] = 'BDSMend':
 	*clr & cla
 	menu_off = 1
 	gs 'stat'
-	'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_10.jpg"></center>'
+	'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r2_10.jpg"></center>'
 	'"Well, enough for today." You do not immediately understand, when Mistress announces the completion of the session. "A good start, but there is still work to do."'
 	'"Is that all?" You ask, having temporarily forgotten about the real world.'
 	'"Almost..."'
@@ -193,17 +190,17 @@ if $ARGS[0] = 'BDSMend':
 	gs 'arousal', 'cuni_give', 10, 'sub', 'lesbian', 'maso', 'bound'
 	gs 'arousal', 'end'
 	gs 'stat'
-			
+
 	act 'Leave':gt 'bdsm_mansion','start'
 end
 
 if $ARGS[0] = '2':
 	menu_off = 1
-	BDSMday = daystart
+	bdsmclub['training_daystart'] = daystart
 	minut += 10
 	pcs_horny += 5
 	gs 'stat'
-	'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_1.jpg"></center>'
+	'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r3_1.jpg"></center>'
 	'You are in the Club and go to the training hall. You are scared and excited. The thought of what awaits you, and of Mistress, has you wet between your legs.'
 	'Once you enter the hall, mistress walks up to you and slaps you.'
 	'"Late, bitch? I''ll teach you!"'
@@ -215,21 +212,21 @@ if $ARGS[0] = '2':
 		*clr & cla
 		minut += 10
 		gs 'stat'
-		'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_2.jpg"></center>'
+		'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r3_2.jpg"></center>'
 		'Mistress puts a collar, foot and hand bracelets on you, and puts you on the wooden platform.'
  		'"A good spanking will teach you not to be late!"'
 		'Mistress ties you onto the platform face down and picks up the whip.'
 		act 'Wait':
 			*clr & cla
 			gs 'stat'
-			'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_3.jpg"></center>'
+			'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r3_3.jpg"></center>'
 			'You are lying on the platform, Mistress, slowly and methodically, punishes you, using various whips, lashes and paddles.'
 			gs 'arousal', 'foreplay', 10, 'sub', 'lesbian', 'maso', 'bound'
 			gs 'stat'
 			act 'Endure':
 				*clr & cla
 				gs 'stat'
-				'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_4.jpg"></center>'
+				'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r3_4.jpg"></center>'
 				'It is becoming unbearable, and Mistress says.'
 				'"Tired, bitch? Take a break!"'
 				'She then sits in front of you, and squatting raises your head to her pussy. You diligently use your tongue to stimulate the labia and clitoris of mistress.'
@@ -240,7 +237,7 @@ if $ARGS[0] = '2':
 					if pcs_horny < 90: pcs_horny = 90
 					pcs_vag += 1
 					gs 'stat'
-					'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_5.jpg"></center>'
+					'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r3_5.jpg"></center>'
 					'"Well, you deserve a little encouragement..."'
 					'Mistress unties you, flips you on your back and locks you up again. She holds up a huge vibrator and know it is intended for your pussy. Soon it has you ready to cum. Looking at Misstress, you ask.'
 					'"Mistress, cum! Please!'
@@ -252,14 +249,14 @@ if $ARGS[0] = '2':
 					act 'Further':
 						*clr & cla
 						gs 'stat'
-						'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_6.jpg"></center>'
+						'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r3_6.jpg"></center>'
 						'Flogging resumes. The whole time you are kept on the brink of pain and pleasure.'
 						gs 'arousal', 'foreplay', 10, 'sub', 'lesbian', 'maso', 'bound'
 						gs 'stat'
 						act 'Further':
 							*clr & cla
 							gs 'stat'
-							'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_7.jpg"></center>'
+							'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r3_7.jpg"></center>'
 							'"Let''s get weaving..."'
 							'Mistress unties you, leads to a large box, makes to climb on top with your butt in the air. Squinting your eyes, you see, she is unwinding rope. Immediately it is obvious, she has great experience.'
 							'Ropes cover your ankles, wrists, knees and pulling your neck, forcing your nose to the box. After a few minutes you realise, that can''t move. Your ass points to the ceiling, feet apart, displaying your pussy and ass. From helplessness and complete openness you get excited once more.'
@@ -270,14 +267,14 @@ if $ARGS[0] = '2':
 								*clr & cla
 								pcs_vag += 1
 								gs 'stat'
-								'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_8.jpg"></center>'
+								'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r3_8.jpg"></center>'
 								'Mistress puts on a strap-on, makes you lick and suck it, then walks around behind you. You feel it press against your pussy, slipping inside with no resistance, it begins to thrust back and forth.'
 								gs 'arousal', 'vaginal_strap', 10, 'sub', 'lesbian', 'maso', 'bound'
 								gs 'stat'
 								act 'Further':
 									*clr & cla
 									gs 'stat'
-									'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_9.jpg"></center>'
+									'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r3_9.jpg"></center>'
 									'Mistress Fucks you with a strapon and again brings to your peak, but does not give you the finish the desire.'
  									'"Boring..." Disappointedly Mistress pulls out, while you try to catch your breath. "How about hanging you?"'
 									'Mistresses fingers flash so quickly, you can''t keep up. She changes the location of the ropes, turns to you and rattles some chains. You realize with horror, she has tied you hanging from the ceiling chain. The motor sounds, and your body rises.'
@@ -291,7 +288,7 @@ if $ARGS[0] = '2':
 										minut += 10
 										pcs_horny += 5
 										gs 'stat'
-										'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_10.jpg"></center>'
+										'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r3_10.jpg"></center>'
 										'The ropes cut into your skin, but mistress knows her stuff. For all it hurts, it isn''t so much as to drive away the excitement. You hang upside down and the room slowly rotates around you.'
 										gs 'arousal', 'foreplay', 10, 'sub', 'lesbian', 'maso', 'bound'
 										gs 'stat'
@@ -300,7 +297,7 @@ if $ARGS[0] = '2':
 											pcs_vag += 1
 											vgape = 2
 											gs 'stat'
-											'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_11.jpg"></center>'
+											'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r3_11.jpg"></center>'
 											'"Well, let''s see, how ready is your hole!"'
 											'Mistress pulls out a huge Dildo, attached to a stick, and enters it into your pussy. You think you are being torn apart. You scream out and beg for mercy, but it is useless. Mistress energetically moves the stick up and down, like she is unblocking a toilet.'
 											gs 'arousal', 'vaginal_dildo', 10, 'sub', 'lesbian', 'maso', 'bound', 'rough'
@@ -308,7 +305,7 @@ if $ARGS[0] = '2':
 											act 'Stop it':
 												*clr & cla
 												gs 'stat'
-												'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_12.jpg"></center>'
+												'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r3_12.jpg"></center>'
 												'Just as you are ready to scream "Red!", mistress takes the dildo out of you. Again the motor buzzes, you kneel on the floor. Madam binds your hands behind your back and puts you on the knees.'
 												'"Rest!"'
 												'Mistresses leg is in your face, and you understand what to do. You kiss and lick the foot, sucking her toes.'
@@ -320,7 +317,7 @@ if $ARGS[0] = '2':
 													pcs_ass += 1
 													agape = 2
 													gs 'stat'
-													'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_13.jpg"></center>'
+													'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r3_13.jpg"></center>'
 													'"And now for the ass!" Declares Mistress and knocks you sideways. You lose you balance and she quickly has you upside down supported on your shoulders and bound hands.'
 													'Her strapon rests on the edge of your anus, Mistress hisses with displeasure and with a sharp move of her hips, drives it in entirely. You scream and moan, but quickly the pain turns to pleasure.'
 													'"Oh fuck, cum! Please!" You can hardly form the words.'
@@ -332,7 +329,7 @@ if $ARGS[0] = '2':
 													act 'Recover':
 														*clr & cla
 														gs 'stat'
-														'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_14.jpg"></center>'
+														'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r3_14.jpg"></center>'
 														'"Finished?"  Mistress leans over to you.'
 														'"Yes, Mistress, thank you, Mistress!" You cry.'
 														'Mistress unties you. For a moment you think, that the session is ending, but no. Rope again binds your wrists, and she plugs your mouth with a ball-gag.'
@@ -345,7 +342,7 @@ if $ARGS[0] = '2':
 															*clr & cla
 															pcs_vag += 1
 															gs 'stat'
-															'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_15.jpg"></center>'
+															'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r3_15.jpg"></center>'
 															'Mistress lies on her back, and forces you to ride her, and you are grinding on her strap-on. The satisfied moans of Mistress and the clear visual evidence tell you she has already cum several times.'
 															'Satisfied, Mistress unties you, approvingly slaps you on the cheek and lets you go, ordering you to come tomorrow.'
 															gs 'arousal', 'vaginal_strap', 10, 'sub', 'lesbian', 'maso', 'bound'
@@ -370,17 +367,17 @@ end
 
 if $ARGS[0] = '3':
 	menu_off = 1
-	BDSMday = daystart
+	bdsmclub['training_daystart'] = daystart
 	minut += 10
 	pcs_horny += 10
 	gs 'stat'
-	'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_1.jpg"></center>'
+	'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r4_1.jpg"></center>'
 	'You enter the training hall for your next training session. Mistress said you, this session is the last one before you will be admitted to the mansion. If you manage to fulfill all her instructions.'
 	'"Did you dress up pretty for me?" Says Mistress as she checks you out in a predatory manner, "Well, ready then? Get undressed and get over here!'
 	act 'Obey':
 		*clr & cla
 		gs 'stat'
-		'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_2.jpg"></center>'
+		'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r4_2.jpg"></center>'
 		'Mistress orders you to get into the cage, you are reminded of a parrot cage. Your body does not fit entirely, and your legs hang out. Your neck is held by a heavy iron collar, attached by chains to the bars of the cage. Mistress pushes a button and the cage rises.'
 		'"Straighten your legs! In front of you, here!" Orders Mistress. Your bare feet are in front of her.'
 		gs 'arousal', 'foreplay', 10, 'sub', 'lesbian','bound', 'feet'
@@ -388,7 +385,7 @@ if $ARGS[0] = '3':
 		act 'Further':
 			*clr & cla
 			gs 'stat'
-			'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_3.jpg"></center>'
+			'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r4_3.jpg"></center>'
 			'Mistress tickles your heels and growls at you everytime you try to move your legs.'
 			'"Return to position!"'
 			'You obey. Mistress leans forward and you feel something touching your pussy. Then you hear a buzzing sound, and you feel the vibration.'
@@ -397,7 +394,7 @@ if $ARGS[0] = '3':
 			act 'Further':
 				*clr & cla
 				gs 'stat'
-				'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_4.jpg"></center>'
+				'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r4_4.jpg"></center>'
 				'"Leg!"'
 				'You lift up your leg. Mistress is holding a thin cane, with considerable force, see hits the sole of your foot.'
 				'"And again..."'
@@ -407,7 +404,7 @@ if $ARGS[0] = '3':
 				act 'Further':
 					*clr & cla
 					gs 'stat'
-					'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_5.jpg"></center>'
+					'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r4_5.jpg"></center>'
 					'You are responding, feeling waves of pleasure spread through your body. The vibrator buzzing and twitching, driving you crazy. Unable to restrain himself, you shout.'
 					'"Mistress, please! Come!"'
 					'"No! Restraint! Restraint!"'
@@ -416,7 +413,7 @@ if $ARGS[0] = '3':
 					act 'Restrain':
 						*clr & cla
 						gs 'stat'
-						'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_6.jpg"></center>'
+						'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r4_6.jpg"></center>'
 						'Mistress monitors your condition, and the moment before you orgasm, she turns off the vibrator.'
 						'"Well, you know the rules... Now let''s see you in action..."'
 						'Mistress frees you from the cage and puts you on your knees.'
@@ -428,7 +425,7 @@ if $ARGS[0] = '3':
 							*clr & cla
 							guy += 1
 							gs 'stat'
-							'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_7.jpg"></center>'
+							'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r4_7.jpg"></center>'
 							'"Show me you know how to suck!"'
 							'You obediently take cock in your mouth and carefully suck. Mistress walks around and says.'
 							'"C grade suck, C grade! Need to practice!"'
@@ -438,14 +435,14 @@ if $ARGS[0] = '3':
 								*clr & cla
 								pcs_vag += 1
 								gs 'stat'
-								'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_8.jpg"></center>'
+								'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r4_8.jpg"></center>'
 								'At a sign from Mistress, the man lies on the box. You climb up, lower your pussy onto his dick and start to ride. Mistress walks around and encourages with the cane.'
 								gs 'arousal', 'vaginal', 10, 'sub'
 								gs 'stat'
 								act 'Further':
 									*clr & cla
 									gs 'stat'
-									'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_9.jpg"></center>'
+									'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r4_9.jpg"></center>'
 									'"Stop!" Orders Mistress.'
 									'You stop, freezing in position. Mistress gets clothespins tied to ropes, and begins to attach them to you. The clothespins hurt, especially on your nipples and tongue, but you endure. At a silent command from Mistress, you resume movement.'
 									gs 'arousal', 'vaginal', 10, 'sub', 'maso'
@@ -454,7 +451,7 @@ if $ARGS[0] = '3':
 										*clr & cla
 										pcs_mood += 25
 										gs 'stat'
-										'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_10.jpg"></center>'
+										'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r4_10.jpg"></center>'
 										'"Now jerk!" Orders Mistress.'
 										'You begin to pull at your clit, while grinding on the dick. Soon you feel, that you are at the brink, and ask permission.'
 										'"Finish!" Allows Mistress.'
@@ -467,9 +464,8 @@ if $ARGS[0] = '3':
 										act 'Breathe':
 											*clr & cla
 											minut += 10
-											BDSMClubIn = 1
 											gs 'stat'
-											'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_11.jpg"></center>'
+											'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r4_11.jpg"></center>'
 											'The lady takes you by the hair and turns your face to hers.'
  											'"Welcome to the Club, slave!"'
 											'Hardly able to walk and your legs buckling you get in the shower. As you exit, you are handed a membership card, you can now enter to the Club as a full member.'
@@ -488,11 +484,10 @@ if $ARGS[0] = '3':
 	end
 end
 
-if $ARGS[0] = 'd_start':
+if $ARGS[0] = 'dom':
 	menu_off = 1
-	BDSMday = daystart
-	money -= 10000
 	*clr & cla
+	bdsmclub['domtraining'] = 1
 	minut += 10
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r2_1.jpg"></center>'
@@ -525,8 +520,6 @@ if $ARGS[0] = 'd_start':
 				gs 'stat'
 				act 'Carry on':
 					*clr & cla
-					BDSMClubIn = 1
-					minut += 10
 					pcs_horny += 30
 					gs 'stat'
 					'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/sex/r3_5.jpg"></center>'
@@ -536,8 +529,7 @@ if $ARGS[0] = 'd_start':
 					'Using the body massager you tease the sub for about 10 minutes, but stop short of letting her orgasm. Eletra surprises you by kissing you on the cheek, "I think I''m going to like having you around."'
 					'She walks back to the front gate with you and gives you a shiny new membership card. Suddenly realising she is still in her leather outfit she blushes lightly and briskly walks back.'
 					gs 'arousal', 'vaginal_vibe_give', 10, 'dom', 'lesbian'
-					gs 'arousal', 'kiss', 10, 'lesbian'
-					minut -= 10
+					gs 'arousal', 'kiss', 2, 'lesbian'
 					gs 'arousal', 'end'
 					gs 'stat'
 					act 'Leave':gt 'bdsm_mansion','start'

+ 96 - 52
locations/Cheatmenu_din.qsrc

@@ -128,6 +128,17 @@ $cheatmenu['noFat'] = {
 	end
 }
 
+$cheatmenu['static_assets'] = {
+	if bodyVars['cheat_staticAssets'] = 0:
+		bodyVars['cheat_staticAssets'] = 1
+		dynamic $cheatmenu['permanent']
+		exit
+	elseif bodyVars['cheat_staticAssets'] = 1:
+		bodyVars['cheat_staticAssets'] = 0
+		dynamic $cheatmenu['permanent']
+	end
+}
+
 $cheatmenu['health'] = {
 	if cheatHealth = 0:
 		cheatHealth = 1
@@ -287,20 +298,21 @@ $cheatmenu['bodyMod'] = {
 }
 
 $cheatmenu['addict'] = {
-	if NarkImmune = 0:
-		NarkImmune = 1
-		smoker = 0
-		smokerNeed = 0
-		joint_count = 0
-		alcohol_count = 0
-		cocaine_count = 0
-		amphetamine_count = 0
-		SNarkTimes = 0
+	if drugVars['cheat_immune'] = 0:
+		drugVars['cheat_immune'] = 1
+		drugVars['cigarettes_used'] = 0
+		drugVars['cigarettes_need'] = 0
+		drugVars['weed_used'] = 0
+		drugVars['alcohol_used'] = 0
+		drugVars['cocaine_used'] = 0
+		drugVars['amphetamine_used'] = 0
+		drugVars['heroin_used'] = 0
 		dynamic $cheatmenu['permanent']
 		exit
-	elseif NarkImmune = 1:
-		NarkImmune = 0
+	elseif drugVars['cheat_immune'] = 1:
+		drugVars['cheat_immune'] = 0
 		dynamic $cheatmenu['permanent']
+		exit
 	end
 }
 
@@ -420,12 +432,12 @@ $cheatmenu['exhib_block'] = {
 $cheatmenu['addictive_block'] = {
 	if addictive_cheat = 0:
 		addictive_cheat = 1
-		smoke_exp = 0
-		joint_exp = 0
-		heroin_exp = 0
-		cocaine_exp = 0
-		amphetamine_exp = 0
-		alcohol_exp = 0
+		drugVars['cigarettes_exp'] = 0
+		drugVars['weed_exp'] = 0
+		drugVars['heroin_exp'] = 0
+		drugVars['cocaine_exp'] = 0
+		drugVars['amphetamine_exp'] = 0
+		drugVars['alcohol_exp'] = 0
 		addictive_exp = 0
 		addictive_trait_lvl = 0
 		dynamic $cheatmenu['permanent']
@@ -536,12 +548,14 @@ $cheatmenu['permanent'] = {
 	if cheatNoMood = 1: $cheatNoMood = 'Currently ON'
 	if cheatNoFat = 0: $cheatNoFat = 'Currently OFF'
 	if cheatNoFat = 1: $cheatNoFat = 'Currently ON'
+	if bodyVars['cheat_staticAssets'] = 0: $bodyVars['cheat_staticAssets_text'] = 'Currently OFF'
+	if bodyVars['cheat_staticAssets'] = 1: $bodyVars['cheat_staticAssets_text'] = 'Currently ON'
 	if cheatHealth = 0: $cheatHealth = 'Enabled'
 	if cheatHealth = 1: $cheatHealth = 'Disabled'
 	if cheatPee = 0: $cheatPee = 'Enabled'
 	if cheatPee = 1: $cheatPee = 'Disabled'
-	if NarkImmune = 0: $NarkImmune = 'Currently OFF'
-	if NarkImmune = 1: $NarkImmune = 'Currently ON'
+	if drugVars['cheat_immune'] = 0: $drugVars['cheat_immune_text'] = 'Currently OFF'
+	if drugVars['cheat_immune'] = 1: $drugVars['cheat_immune_text'] = 'Currently ON'
 	if InfWillpwer = 0: $InfWillpwer = 'Currently OFF'
 	if InfWillpwer = 1: $InfWillpwer = 'Currently ON'
 	if cheatSlut = 0: $cheatSlut = 'Enabled'
@@ -598,7 +612,8 @@ $cheatmenu['permanent'] = {
 	'Never sleep: <a href="exec:dynamic $cheatmenu[''noSleep'']"><<$cheatNoSleep>></a>'
 	'Never unhappy: <a href="exec:dynamic $cheatmenu[''noMood'']"><<$cheatNoMood>></a>'
 	'Never lose or gain weight: <a href="exec:dynamic $cheatmenu[''noFat'']"><<$cheatNoFat>></a>'
-	'Never get addicted: <a href="exec:dynamic $cheatmenu[''addict'']"><<$NarkImmune>></a>'
+	'Bust and butt unaffected by weight: <a href="exec: dynamic $cheatmenu[''static_assets'']"><<$bodyVars[''cheat_staticAssets_text'']>></a>'
+	'Never get addicted: <a href="exec:dynamic $cheatmenu[''addict'']"><<$drugVars[''cheat_immune_text'']>></a>'
 	'Never shave legs: <a href="exec:dynamic $cheatmenu[''shaveLegs'']"><<$cheatShaveLegs>></a>'
 
 	if Enable_sforma = 1:
@@ -631,6 +646,12 @@ $cheatmenu['permanent'] = {
 
 	*nl
 
+	*p 'Remove ''once a week'' therapist limit: '
+	if therapist_weekly_cheat = 0:
+		'<a href="exec: therapist_weekly_cheat = 1 && dynamic $cheatmenu[''permanent'']">on</a>&nbsp;|&nbsp;off'
+	else
+		'on&nbsp;|&nbsp;<a href="exec: therapist_weekly_cheat = 0 && dynamic $cheatmenu[''permanent'']">off</a>'
+	end
 	'Who says bimbos can''t be smart? Smart bimbo mode: <a href="exec:dynamic $cheatmenu[''SmartBimbo'']"><<$cheatBimbo2>></a>'
 	'Succubus bimbo mode: <a href="exec:dynamic $cheatmenu[''SuccuBimbo'']"><<$cheatBimbo3>></a>'
 
@@ -700,7 +721,7 @@ $cheatmenu['state'] = {
 		'<b>You need to open a bank account before getting access to change money in the bank</b>'
 	end
 	'<a href="exec:dynamic $cheatmenu[''std_cure''] & gs ''stat''">Cure all stds</a>'
-	'<a href="exec:vgape = 0 & agape = 0 & nippain = 0 & painpub = 0 & pirs_pain_ton = 0 & mesec = 0 & spanked = 0 & SLomka = 0 & Narkoman = 0 & strongnark = 0 & SNarkTimes = 0 & nark = 0 & fingal = 0 & mosol = 0 & frost = 0 & sick = 0 & hypnoAddict = 0 & hypnoWithdrawal = 0 & dynamic $cheatmenu[''std_cure''] & dynamic $cheatmenu[''pain_killer''] & gs ''stat''">Cure all ailments.</a>'
+	'<a href="exec:vgape = 0 & agape = 0 & nippain = 0 & painpub = 0 & pirs_pain_ton = 0 & mesec = 0 & spanked = 0 & drugVars[''heroin_need''] = 0 & drugVars[''cocaine_addict''] = 0 & drugVars[''heroin_high''] = 0 & drugVars[''heroin_used''] = 0 & drugVars[''cocaine_system''] = 0 & fingal = 0 & mosol = 0 & frost = 0 & sick = 0 & hypnoAddict = 0 & hypnoWithdrawal = 0 & dynamic $cheatmenu[''std_cure''] & dynamic $cheatmenu[''pain_killer''] & gs ''stat''">Cure all ailments.</a>'
 	*nl
 	'<a href="exec:dynamic $cheatmenu[''force_preg''] & gs ''stat''">Force random pregnancy</a>'
 	'<a href="exec:dynamic $cheatmenu[''remove_preg''] & gs ''stat''">Remove pregnancy</a>'
@@ -836,7 +857,7 @@ $cheatmenu['looks'] = {
 	'<a href="exec:dynamic $cheatmenu[''visualage'']">Change apparent age</a>'
 	*nl
 	'You are <<pcs_hgt>> centimetres tall'
-	'<a href="exec:pcs_hgt = input(''Enter <<$pcs_nickname>>s height in centimetres<br><br>(default 170, min 100, max 200, values below 160 and above 180 will cause problems in the calculation of BMI/weight the more you deviate from the default 170)'') & dynamic $cheatmenu[''looks'']">Change <<$pcs_nickname>>''s height</a>'
+	'<a href="exec:pcs_hgt = input(''Enter <<$pcs_nickname>>s height in centimetres<br><br>(default 165, min 100, max 200, values below 150 and above 180 will cause problems in the calculation of BMI/weight the more you deviate from the default 170)'') & dynamic $cheatmenu[''looks'']">Change <<$pcs_nickname>>''s height</a>'
 	*nl
 	*p 'Musculature (<<stren_plus_lvl>>): ' & dynamic $cheatmenu['printLooksLinks'], 'stren_plus', 'Musculature'
 	*pl '<font color="grey">Allows strength to go past 100'
@@ -845,26 +866,31 @@ $cheatmenu['looks'] = {
 	*p 'Toned Butt (<<butt_tr_lvl>>): ' & dynamic $cheatmenu['printLooksLinks'], 'butt_tr', 'Toned Butt'
 	*nl
 	'You have <<$titsize>> breasts'
-	if tits => 0 and tits < 11:'<a href="exec: bodyVars[''bust_silicone''] += 5 & dynamic $cheatmenu[''looks'']">Enlarge breasts(silicone)</a>'
-	if bodyVars['bust_silicone'] => 1:'<a href="exec: bodyVars[''bust_silicone''] -= 5 & dynamic $cheatmenu[''looks'']">Shrink breasts(silicone)</a>'
-	if tits => 0 and tits < 11:'<a href="exec: pcs_mass[''bust''] += 5 & dynamic $cheatmenu[''looks'']">Enlarge breasts(natural)</a>'
-	if pcs_mass['bust'] => 1: '<a href="exec: pcs_mass[''bust''] -= 5 & titreduc = 1 & dynamic $cheatmenu[''looks'']">Shrink breasts(natural)</a>'
+	if tits < 11:'<a href="exec: bodyVars[''bust_silicone''] += 5 & dynamic $cheatmenu[''looks'']">Enlarge breasts(silicone)</a>'
+	if bodyVars['bust_silicone'] => 1:'<a href="exec: bodyVars[''bust_silicone''] = min(0, bodyVars[''bust_silicone'']-5) & dynamic $cheatmenu[''looks'']">Shrink breasts(silicone)</a>'
+	if tits < 11:'<a href="exec: gs ''Cheatmenu_din'', ''change_pcs_mass_bust'', 5">Enlarge breasts (natural)</a>'
+	if pcs_mass['bust'] => 6: '<a href="exec: titreduc = 1 & gs ''Cheatmenu_din'', ''change_pcs_mass_bust'', -5">Shrink breasts (natural)</a>'
 	*nl
-	if pcs_butt <= 4:
+	if pcs_butt <= 14:
 		$pcs_butt[1] = 'flat'
-	elseif pcs_butt <= 8:
+	elseif pcs_butt <= 25:
 		$pcs_butt[1] = 'average'
-	elseif pcs_butt <= 12:
+	elseif pcs_butt <= 40:
 		$pcs_butt[1] = 'pert'
+	elseif pcs_butt <= 59:
+		$pcs_butt[1] = 'heart-shaped'
 	else
 		$pcs_butt[1] = 'bubble'
 	end
-	'You have <<$pcs_butt[1]>> butt'
-	if pcs_butt < 20:'<a href="exec: bodyVars[''butt_cheat''] += 2 & dynamic $cheatmenu[''looks'']">Enlarge butt</a>'
-	if pcs_butt > 1:'<a href="exec: bodyVars[''butt_cheat''] -= 2 & dynamic $cheatmenu[''looks'']">Shrink butt</a>'
-	if bodyVars['butt_cheat'] ! 0:'<a href="exec: bodyVars[''butt_cheat''] = 0 & dynamic $cheatmenu[''looks'']">Reset butt shape to default</a>'
-	if bodyVars['butt_silicone'] => 1:'<a href="exec: bodyVars[''butt_silicone''] = 0 & dynamic $cheatmenu[''looks'']">Remove butt implants</a>'
-	if bodyVars['butt_silicone'] = 0:'<a href="exec: bodyVars[''butt_silicone''] += 16 & dynamic $cheatmenu[''looks'']">Add butt implants</a>'
+	'You have a <<$pcs_butt[1]>> butt'
+	if pcs_butt < 60: '<a href="exec: bodyVars[''butt_silicone''] += 10 & dynamic $cheatmenu[''looks'']">Enlarge butt (silicone)</a>'
+	if bodyVars['butt_silicone'] => 1: '<a href="exec: bodyVars[''butt_silicone''] = max(0, bodyVars[''butt_silicone'']-10) & dynamic $cheatmenu[''looks'']">Shrink butt (silicone)</a>'
+	if pcs_butt < 60: '<a href="exec: gs ''Cheatmenu_din'', ''change_pcs_mass_butt'', 10">Enlarge butt (natural)</a>'
+	if pcs_mass['butt'] => 6: '<a href="exec: assreduc = 1 & gs ''Cheatmenu_din'', ''change_pcs_mass_butt'', -10">Shrink butt (natural)</a>'
+
+!	if pcs_butt < 20:'<a href="exec: bodyVars[''butt_cheat''] += 2 & dynamic $cheatmenu[''looks'']">Enlarge butt</a>'
+!	if pcs_butt > 1:'<a href="exec: bodyVars[''butt_cheat''] -= 2 & dynamic $cheatmenu[''looks'']">Shrink butt</a>'
+!	if bodyVars['butt_cheat'] ! 0:'<a href="exec: bodyVars[''butt_cheat''] = 0 & dynamic $cheatmenu[''looks'']">Reset butt shape to default</a>'
 	*nl
 	'<<$lip>>'
 	if pcs_lip < 4:'<a href="exec:pcs_lip += 1 & dynamic $cheatmenu[''looks'']">Enlarge lips</a>'
@@ -914,7 +940,7 @@ $cheatmenu['looks'] = {
 	if dounspell = 0:
 		if fat ! 0: '<a href="exec:fat = 0 & dynamic $cheatmenu[''looks'']">Zero fat</a>'
 		'Body Fat = (<<pcs_mass[''body'']>>): <a href="exec: gs ''Cheatmenu_din'', ''change_pcs_mass_body'', -10">-10</a> <a href="exec: gs ''Cheatmenu_din'', ''change_pcs_mass_body'', -5">-5</a> <a href="exec: gs ''Cheatmenu_din'', ''change_pcs_mass_body'', -1">-1</a> <a href="exec: gs ''Cheatmenu_din'', ''change_pcs_mass_body'', 1">+1</a> <a href="exec: gs ''Cheatmenu_din'', ''change_pcs_mass_body'', 5">+5</a> <a href="exec: gs ''Cheatmenu_din'', ''change_pcs_mass_body'', 10">+10</a>'
-		'Note: You need some Body Fat to survive, any value under 11 is clasified as "starving" and a value of 0 can lead to a Game Over. 60 is the center of a healthy bodyweight.'
+		'Note: You need some Body Fat to survive, any value under 11 is clasified as "starving" and a value of 0 can lead to a Game Over. <<func(''body'', ''CalcOptBodyMass'')>> gives a bmi of 22.5.'
 	end
 	*nl
 	'<a href="exec:dynamic $cheatmenu[''tatoo'']">Tattoo removal</a>'
@@ -963,9 +989,27 @@ $cheatmenu['looks'] = {
 
 if $ARGS[0] = 'change_pcs_mass_body':
 	gs 'body', 'Set_mass_distribution_using_body', pcs_mass['body'] + ARGS[1]
+	pcs_mass['body_message'] = pcs_mass['body']
 	dynamic $cheatmenu['looks']
 end
 
+if $ARGS[0] = 'change_pcs_mass_bust':
+	pcs_mass['bust'] += ARGS[1]
+	pcs_mass['bust_gen'] += ARGS[1]
+	if pcs_mass['bust'] < 2: pcs_mass['bust'] = 2
+	if pcs_mass['bust_gen'] < 2: pcs_mass['bust_gen'] = 2
+	pcs_mass['bust_message'] = pcs_mass['bust']
+	dynamic $cheatmenu['looks']
+end
+
+if $ARGS[0] = 'change_pcs_mass_butt':
+	pcs_mass['butt'] += ARGS[1]
+	pcs_mass['butt_gen'] += ARGS[1]
+	if pcs_mass['butt'] < 2: pcs_mass['butt'] = 2
+	if pcs_mass['butt_gen'] < 2: pcs_mass['butt_gen'] = 2
+	pcs_mass['butt_message'] = pcs_mass['butt']
+	dynamic $cheatmenu['looks']
+end
 
 if $ARGS[0] = 'vagenlarge':
 	if pcs_vag = 0:
@@ -1063,7 +1107,7 @@ $cheatmenu['parameters'] = {
 	'magtarcup = <<magtarcup>>'
 	'normbuffpick = <<normbuffpick>>'
 	'nrmbfpckct = <<nrmbfpckct>>'
-	'btwarn = <<btwarn>>'
+	'bodyVars[''weight_warning''] = <<bodyVars[''weight_warning'']>>'
 	'salolast = <<salolast>>'
 }
 
@@ -1300,7 +1344,7 @@ $cheatmenu['stats'] = {
 		*pl 'History grade: <<class[''school_his_grade'']>> '    + iif(class['school_his_grade']  < 100, ' <a href="exec:gs ''grades'', ''grade_award'',''school'', ''his'',  10 & dynamic $cheatmenu[''stats'']">+10</a>', '') + iif(class['school_his_grade']  > 0, ' <a href="exec:gs ''grades'', ''grade_award'',''school'', ''his'',  -10 & dynamic $cheatmenu[''stats'']">-10</a>', '')
 		*pl 'Shop grade: <<class[''school_shop_grade'']>> '      + iif(class['school_shop_grade'] < 100, ' <a href="exec:gs ''grades'', ''grade_award'',''school'', ''shop'', 10 & dynamic $cheatmenu[''stats'']">+10</a>', '') + iif(class['school_shop_grade'] > 0, ' <a href="exec:gs ''grades'', ''grade_award'',''school'', ''shop'', -10 & dynamic $cheatmenu[''stats'']">-10</a>', '')
 		*pl 'Computer grade: <<class[''school_comp_grade'']>> '  + iif(class['school_comp_grade'] < 100, ' <a href="exec:gs ''grades'', ''grade_award'',''school'', ''comp'', 10 & dynamic $cheatmenu[''stats'']">+10</a>', '') + iif(class['school_comp_grade'] > 0, ' <a href="exec:gs ''grades'', ''grade_award'',''school'', ''comp'', -10 & dynamic $cheatmenu[''stats'']">-10</a>', '')
-		*pl 'History grade: <<class[''school_mus_grade'']>> '    + iif(class['school_mus_grade']  < 100, ' <a href="exec:gs ''grades'', ''grade_award'',''school'', ''mus'',  10 & dynamic $cheatmenu[''stats'']">+10</a>', '') + iif(class['school_mus_grade']  > 0, ' <a href="exec:gs ''grades'', ''grade_award'',''school'', ''mus'',  -10 & dynamic $cheatmenu[''stats'']">-10</a>', '')
+		*pl 'Music grade: <<class[''school_mus_grade'']>> '      + iif(class['school_mus_grade']  < 100, ' <a href="exec:gs ''grades'', ''grade_award'',''school'', ''mus'',  10 & dynamic $cheatmenu[''stats'']">+10</a>', '') + iif(class['school_mus_grade']  > 0, ' <a href="exec:gs ''grades'', ''grade_award'',''school'', ''mus'',  -10 & dynamic $cheatmenu[''stats'']">-10</a>', '')
 		*pl 'P.E. grade: <<class[''school_pe_grade'']>> '        + iif(class['school_pe_grade']   < 100, ' <a href="exec:gs ''grades'', ''grade_award'',''school'', ''pe'',   10 & dynamic $cheatmenu[''stats'']">+10</a>', '') + iif(class['school_pe_grade']   > 0, ' <a href="exec:gs ''grades'', ''grade_award'',''school'', ''pe'',   -10 & dynamic $cheatmenu[''stats'']">-10</a>', '')
 
 		if schoolprogul >= 0: *pl '<a href="exec: schoolprogul = 0 & dynamic $cheatmenu[''stats'']">Zero Absenteeism (School): <<schoolprogul>></a>'
@@ -3163,14 +3207,14 @@ $cheatmenu['vartracker'] = {
 	'min_arousal: <<min_arousal>>'
 	'pcs_nips: <<pcs_nips>>'
 	'clit_size: <<clit_size>>'
-	'steroid_have: <<steroid_have>>'
-	'steroid_counter: <<steroid_counter>>'
-	'steroid_dose: <<steroid_dose>>'
-	'aphrodisiac_have: <<aphrodisiac_have>>'
+	'steroids: <<mc_inventory[''steroids'']>>'
+	'steroids_used: <<drugVars[''steroids_used'']>>'
+	'steroid_dose: <<drugVars[''steroids_dose'']>>'
+	'aphrodisiac pills: <<mc_inventory[''aphrodisiac'']>>'
 	'aphrodisiac_counter: <<aphrodisiac_counter>>'
-	'aphrodisiac_timer: <<aphrodisiac_timer>>'
-	'aphrodisiac_addiction: <<aphrodisiac_addiction>>'
-	'bcream_have: <<bcream_have>>'
+	'aphrodisiac_timer: <<drugVars[''aphrodisiac_timer'']>>'
+	'aphrodisiac_addiction: <<drugVars[''aphrodisiac_addict'']>>'
+	'breastcream: <<mc_inventory[''breastcream'']>>'
 	'motherQW: <<npc_QW[''A29'']>>'
 	'Anastasia quest level: <<npc_QW[''A192'']>>'
 	'sex: <<stat[''vaginal'']>>'
@@ -3773,13 +3817,13 @@ $cheatmenu['items'] = {
 	if showNarcoticsItems = 1:
 		'<a href = "exec: showNarcoticsItems = 0 & dynamic $cheatmenu[''items'']">Hide Details </a>'
 		*pl 'Cigarettes: <a href="exec:mc_inventory[''cigarettes'']=input(''Set number'') & dynamic $cheatmenu[''items'']"><b> <<mc_inventory[''cigarettes'']>> </b></a>'
-		*pl 'Joints: <a href="exec:joint=input(''Set number'') & dynamic $cheatmenu[''items'']"><b> <<joint>> </b></a>'
-		*pl 'Cocaine: <a href="exec:dur=input(''Set number'') & dynamic $cheatmenu[''items'']"><b> <<dur>> </b></a>'
-		*pl 'Amphetamine: <a href="exec:amphetamine=input(''Set number'') & dynamic $cheatmenu[''items'']"><b> <<amphetamine>> </b></a>'
-		*pl 'Neuroboosters: <a href="exec:mentats_have=input(''Set number'') & dynamic $cheatmenu[''items'']"><b> <<mentats_have>> </b></a>'
-		*pl 'Steroids: <a href="exec:steroid_have=input(''Set number'') & dynamic $cheatmenu[''items'']"><b> <<steroid_have>> </b></a>'
-		*pl 'Breast cream: <a href="exec:bcream_have=input(''Set number'') & dynamic $cheatmenu[''items'']"><b> <<bcream_have>> </b></a>'
-		*pl 'Aphrodisiacs: <a href="exec:aphrodisiac_have=input(''Set number'') & dynamic $cheatmenu[''items'']"><b> <<aphrodisiac_have>> </b></a>'
+		*pl 'Joints: <a href="exec:mc_inventory[''joints'']=input(''Set number'') & dynamic $cheatmenu[''items'']"><b> <<mc_inventory[''joints'']>> </b></a>'
+		*pl 'Cocaine: <a href="exec:mc_inventory[''cocaine'']=input(''Set number'') & dynamic $cheatmenu[''items'']"><b> <<mc_inventory[''cocaine'']>> </b></a>'
+		*pl 'Amphetamine: <a href="exec:mc_inventory[''amphetamine'']=input(''Set number'') & dynamic $cheatmenu[''items'']"><b> <<mc_inventory[''amphetamine'']>> </b></a>'
+		*pl 'Neuroboosters: <a href="exec:mc_inventory[''mentats'']=input(''Set number'') & dynamic $cheatmenu[''items'']"><b> <<mc_inventory[''mentats'']>> </b></a>'
+		*pl 'Steroids: <a href="exec:mc_inventory[''steroids'']=input(''Set number'') & dynamic $cheatmenu[''items'']"><b> <<mc_inventory[''steroids'']>> </b></a>'
+		*pl 'Breast cream: <a href="exec:mc_inventory[''breastcream'']=input(''Set number'') & dynamic $cheatmenu[''items'']"><b> <<mc_inventory[''breastcream'']>> </b></a>'
+		*pl 'Aphrodisiacs: <a href="exec:mc_inventory[''aphrodisiac'']=input(''Set number'') & dynamic $cheatmenu[''items'']"><b> <<mc_inventory[''aphrodisiac'']>> </b></a>'
 	end
 	'<h4>Sex shop items</h4>'
 	if showSexItems = 0:

+ 2 - 2
locations/Cum_Manage.qsrc

@@ -955,11 +955,11 @@ if $ARGS[0] = 'cum_stat_display':
 			end
 		if j < 7: j+=1 & jump 'ageloop'
 
-		if stat_cumloc_check = 1 and cheatKlisma = 1 and (FUNC('Cum_Manage', 'check_private', i) = 0 _ 
+		if stat_cumloc_check = 1 and (FUNC('Cum_Manage', 'check_private', i) = 0 _ 
 		or (i <> 0 and cumsumass = 0 and cumsumvag > 0 and FUNC('Cum_Manage', 'check_innards', 0) = 0) _ 
 		or (i <> 3 and cumsumvag = 0 and cumsumass > 0 and FUNC('Cum_Manage', 'check_innards', 3) = 0) _ 
 		or (i > 3 and cumsumvag > 0 and FUNC('Cum_Manage', 'check_innards', 0) = 0 and cumsumass > 0 and FUNC('Cum_Manage', 'check_innards', 3) = 0)):
-			stat_cumloc_check = 0
+			stat_cumloc_check = 2
 		end
 
 	if i < 18: i+=1 & jump 'cumlocloop'

+ 9 - 9
locations/FedorEv.qsrc

@@ -17,15 +17,15 @@ if $ARGS[0] = '' or $ARGS[0] = 'Start':
 		gt 'FedorEv', 'Strela Chat'
 	elseif FedorvsDimka = 2:
 		gt 'FedorEv4', 'Dimka Aftermath'
-	elseif GorSlut = 1 and fedorkoztalk = 0 and FedorLove = 0:
+	elseif fedorKozlovQW >= 10 and fame['pav_slut'] >= 150 and fame['pav_slut'] < 250 and fedorkoztalk = 0 and FedorLove = 0:
 		gt 'FedorEv', 'Gorslut'
-	elseif fedorKozlovQW >= 10 and GorSlut > 1 and FedorLove = 0:
+	elseif fedorKozlovQW >= 10 and fame['pav_slut'] >= 250 and FedorLove = 0:
 		gt 'FedorEv', 'Gorslut 2'
 	elseif fedorKozlovQW = 10 and FedorLuv < -5:
 		gt 'FedorEv2', 'Fedor Breakup'
 	elseif fedorKozlovQW >= 10 and dimaFilm = 1 and FedorvsDimka = 1:
 		gt 'FedorMisc', 'Fedor Vs Dimka'	
-	elseif fedorKozlovQW >= 20 and GorSlut < 2:
+	elseif fedorKozlovQW >= 20 and fame['pav_slut'] < 250:
 		if rand(0,1) = 0:
 			gt 'FedorEv', 'Fedor Date 2'
 		else
@@ -43,7 +43,7 @@ if $ARGS[0] = 'Vitek Vs Fedor':
 	gs 'stat'
 	'<center><b><h4><font color="red"><<"Viktor [Vitek] Kotov">></font></h4></b></center>'
 	'<center><img <<$set_imgh>> src="images/characters/shared/headshots_main/big9.jpg"></center>'
-	'When you approach Fedor, Vitek sees you walking Fedor''s way and follows you right away. He shoves Fedor roughly: "What do you think you''re doing, punk? <<$pcs_firstname>> is <b>mine!</b>" Fedor turns his face to Vitek and calmly says, "I''m not doing anything. <<$pcs_firstname>> is with me now, so you should just leave us alone." Vitek theatrically moves his hand to his ear, and says, in a threatening voice: "What did you just say!?" to which Fedor calmly replies: "You heard me." You can tell that Vitek is seething with rage now, the knuckles on his clenched fists turning white. Fedor moves his face even closer to Vitek''s and repeats, also clenching his fists: "You heard me. Get away from <<$pcs_firstname>>, Vitek."'
+	'You approach Fedor, and wrap you arms around him, as he does the same, embracing you firmly, when Vitek quickly approaches Fedor from behind, before violently shoving Fedor back, and saying in a menacing tone, "What do you think you''re doing, punk? <<$pcs_firstname>> is <b>mine!</b>" Fedor turns his face to Vitek, and firmly states, "<<$pcs_firstname>> is with me now, so why don''t you hit the road?" Vitek theatrically moves his hand to his ear, and says, in a threatening tone, "What did you just say!?" To which Fedor boldly replies, "You heard me." You can tell that Vitek is seething with rage now, as his face turns red, and the knuckles on his clenched fists, turn a deathly white. Fedor moves his face even closer to Vitek''s, and repeats, also clenching his fists: "You heard me. Get away from <<$pcs_firstname>>, Vitek."'
 
 	act 'Tell Vitek you want to be with Fedor':
 		*clr & cla
@@ -52,7 +52,7 @@ if $ARGS[0] = 'Vitek Vs Fedor':
 		gs 'stat'
 		'<center><b><h4><font color="red"><<"Viktor [Vitek] Kotov">></font></h4></b></center>'
 		'<center><img <<$set_imgh>> src="images/characters/shared/headshots_main/big9.jpg"></center>'
-		'You tell Vitek that you don''t want to be with him any more. You can tell he''s very angry, and has to restrain himself from hitting you in the face. Ultimately he exclaims "Fuck you, bitch!" and leaves, kicking over several garbage cans on the way. You fear that this might not be the last thing you''ve heard of him.'
+		'Not wanting to see Fedor hurt, you tell Vitek the truth, "Vitek please calm down, I know we had some fun together, but I''m with Fedor now." Vitek grimaces, obviously furious with both of you, but fortunately, has enough composure to restrain himself from hitting you in the face. He ultimately, calms himself, before looking you in the eyes, and shouting, "You''re going to pay for this, you fucking cheating, bitch!" Vitek begins walking away, but not before kicking over several garbage cans on the way. you can''t help but shutter at the feeling that this might not be the last you''ve heard of him.'
 
 		act 'Continue':gt $curloc
 	end
@@ -62,9 +62,9 @@ if $ARGS[0] = 'Vitek Vs Fedor':
 		minut += 5
 		gs 'stat'
 		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/fedor/fedorev/Strela/fvsv.jpg"></center>'
-		'Vitek suddenly hits Fedor on the chin with a quick jab, which sends Fedor flying backwards landing on his back on the pavement. Vitek immediately gets on top of him, grabbing him by the collar with his left hand while he keeps punching Fedor in the face with his right hand. Fedor tries to ball up and kick Vitek, but doesn''t manage and Vitek gives him a hard kick in the ribs when he gets back up, which makes Fedor double over grasping his stomach. When Fedor tries to get up, Vitek kicks him against the head which makes Fedor fall over again. Then you see Vasily and Dan coming around the corner, they run towards Vitek when they notice he''s fighting. "Vitek, what''s going on?" Vasily asks. Vitek kicks the now prone Fedor once more in his sides. "This fucker is trying to steal my girl!" he exclaims, pointing at Fedor. For a moment' 
+		'Vitek suddenly hits Fedor on the chin with a quick jab, which sends Fedor flying backwards; landing backward on the pavement. Vitek immediately climbs on top of him, grabbing him by the collar, with his left hand, while punching Fedor in the face with his right one. Fedor tries to ball up and kick Vitek, but doesn''t manage to phase him, as Vitek gives him a hard kick in the ribs when he gets back up, which makes Fedor fall over grasping his stomach. As Fedor tries to get up, Vitek kicks him in his head, which causes Fedor fall over again. As Fedor hits the ground, you see Vasily and Dan coming around the corner, they run towards Vitek when they notice that he''s fighting. "Vitek, what''s going on?" Vasily asks. Vitek kicks the now prone Fedor, once more in his sides. "This fucker is trying to steal my girl!" He exclaims, pointing at Fedor.' 
 		*nl
-		'you''re scared he''s going to beat you up too, but he doesn''t. Dan moves over to Fedor''s barely conscious body and asks: "Hasn''t anyone told you that it''s rude to steal someone''s girl, Fedor? What do you have to say for yourself?" Fedor looks up, barely realizing what''s going on any more. His face is all busted up, but he''s not willing to let it go: "<<$pcs_firstname>> is my girl..." he moans. Vasily laughs like a jackal, while Vitek is furious once more: "You little shit! I''m going to..." Dan interrupts him: "Relax, Vitek. Look at his face. I think he realizes his mistake. Or do you want to make things even worse for yourself?" That last question was directed at Fedor.'
+		'Feeling terrified that Vitek might hurt you too, in his blind rage, you remain silent. Dan moves over to Fedor''s, as Fedor struggles to remain conscious, and asks: "Hasn''t anyone told you that it''s rude to steal someone''s girl, Fedor? What do you have to say for yourself?" Fedor looks up, barely realizing what''s going on any more. His face is all busted up, but he''s not willing to let it go: "<<$pcs_firstname>> is my girl..." He groans. Vasily begins laughing like a jackal, while Vitek furiously shouts at Fedor once more: "You little shit! I''m going to..." Dan interrupts him: "Relax, Vitek. Look at his face. I think he realizes his mistake. Or do you want to make things even worse for yourself?" That last question was directed at Fedor.'
 		'<center><b><font color="maroon"><<"Vasily [Shulga] Shulgin">></font></b></center>'
 		'<center><img <<$set_imgh>> src="images/characters/shared/headshots_main/big11.jpg"></center>'
 
@@ -75,7 +75,7 @@ if $ARGS[0] = 'Vitek Vs Fedor':
 			gs 'stat'
 			'<center><b><h4><font color="blue"><<"Fyodor [Fedor] Kozlov">></font></h4></b></center>'
 			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/fedor/fedorev/fedorangry.jpg"></center>'
-			'Fedor slowly rises to his feet, and softly mutters: "Fucking Gopniks..." Vasily hears him though, and immediately slams his fist into Fedor''s face. Fedor tries to keep standing, but immediately gets hit by Dan as well. No longer able to support his weight, he falls to his hands and knees. Vasily jokes: "Look at him... already assuming the position!" making the other Gopniks laugh. Vitek kicks him in the stomach again, and Fedor lies flat on the ground. Vitek looks at Dan and asks: "Can you believe I have to put up with this shit?"' 
+			'Fedor slowly rises to his feet, and softly mutters: "Fucking Gopniks..." Vasily hears him clearly, immediately slamming his fist into Fedor''s face, but Fedor refuses to fall until he is immediately hit by Dan in his stomach. No longer able to support his weight, he falls to his hands and knees. Vasily jokes: "Look at him... already assuming the position!" Making the other Gopniks laugh. Vitek kicks him in the stomach again, knocking Fedor onto his back, laying flat on the ground. Realizing he won, Vitek looks to Dan and asks: "Can you believe the shit I have to put up with?"' 
 
 			act 'Hear what Dan has to say':
 				*clr & cla
@@ -83,7 +83,7 @@ if $ARGS[0] = 'Vitek Vs Fedor':
 				gs 'stat'			
 				'<center><b><h4><font color="blue"><<"Fyodor [Fedor] Kozlov">></font></h4></b></center>'
 				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/fedor/fedorev/Strela/fedor.jpg"></center>'				
-				'Dan replies: "We could ask Vadim Bely to take care of him. He''ll know how to punish Fedor in a way that he''ll never forget." Vitek nods: "Good plan. Set it up, will you?" He then turns to Fedor "We''re settling this tomorrow, kid. You better be here after school, it''ll be ten times worse for you if you don''t." He then waves for his friends to follow him "Come on guys. Let''s go have some beers in the park, I need to relax. <<$pcs_nickname>>, if you want to join us, you know where we''ll be." Vitek and Dan leave Fedor on the ground and head for the schoolyard exit, but Vasily walks over to Fedor and kicks him in the ribs one more time, still laughing that signature jackal laugh of his. He then joins his friends, and moments later they''re gone.'
+				'Dan replies: "We could ask Vadim Bely to take care of him. He''ll know how to punish Fedor in a way that he''ll never forget." Vitek nods: "Good plan. Set it up, will you?" He then turns to Fedor "We''re settling this tomorrow, kid. You better be here after school, it''ll be ten times worse for you if you don''t." He then waves for his friends to follow him "Come on guys. Let''s go have some beers in the park, I need to relax. <<$pcs_nickname>>, if you want to join us, you know where we''ll be." Vitek and Dan leave Fedor on the ground then head for the schoolyard exit, but as they pass Fedor, Vasily quickly kicks him in the ribs one more time, still laughing that signature jackal laugh of his. He then joins his friends, and moments later, they''re gone.'
 
 				act 'Leave the school courtyard':gt 'pav_residential'
 			end

+ 2 - 2
locations/FedorEv2.qsrc

@@ -575,11 +575,11 @@ if $ARGS[0] = 'Wash Up':
 	menu_off = 1
 	pcs_mood += 25
 	if pcs_health < 100: pcs_health = 100
-	sweat = 7 + rand(0,4)
+	gs 'sweat', 'add', 7 + rand(0,4)
 	hapri = 1
 	mop = 1
 	cumspclnt = 1
-	gs 'cum_cleanup'	
+	gs 'cum_cleanup'
 	frost = 0
 	FedorLuv = 100
 	gs 'boyStat', 'A5'

+ 4 - 10
locations/FedorMisc.qsrc

@@ -513,8 +513,7 @@ if $ARGS[0] = 'Smoke':
 	*clr & cla
 	menu_off = 1
 	npc_rel['A5'] += 5
-	mc_inventory['cigarettes'] += 1
-	gs 'drugs', 'smoke'
+	gs 'drugs', 'smoke', 1
 	cumspclnt = 2
 	gs 'cum_cleanup'
 	pcs_breath = 0
@@ -531,13 +530,8 @@ if $ARGS[0] = 'Smoke 2':
 	*clr & cla
 	menu_off = 1
 	npc_rel['A5'] += 5
-	mc_inventory['cigarettes'] += 1
-	gs 'drugs', 'smoke'
-	cumspclnt = 2
-	gs 'cum_cleanup'
-	pcs_breath = 0
-	pcs_mood += 100
-	gs 'stat'
+	gs 'drugs', 'smoke', 1
+
 	'<center><b><h4><font color="blue"><<"Fyodor [Fedor] Kozlov">></font></h4></b></center>'
 	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/fedor/school/Hall/smoke.jpg"></center>'
 	'"Sure thing." Fedor hands you a cigarette then puts one in his mouth as he collects his lighter from his pocket then lights both cigarettes. You both spend the next few minute gossiping about your classmates.'
@@ -644,7 +638,7 @@ if $ARGS[0] = 'Strength':
 	*clr & cla
 	menu_off = 1
 	minut += 30
-	gs 'exp_gain', 'stren', rand(1, 4) + (steroid_dose - rand(0,steroid_dose)) & gs 'obj_din', 'steroids'
+	gs 'exp_gain', 'stren', rand(1, 4) + rand(0, drugVars['steroids_dose']) & gs 'obj_din', 'steroids'
 	fat -= 1
 	pcs_mood += 5
 	gs 'sweat', 'add', 30

+ 1 - 1
locations/HotelRoom.qsrc

@@ -173,7 +173,7 @@ if $ARGS[0] = 'therapist':
 			killvar '$hotel'
 		else
 			msg'<b><font color = red>You need to get dressed before leaving your hotel room.</font></b>'
-			gt 'HotelRoom', 'better'
+			gt 'HotelRoom', 'therapist'
 		end
 	end
 

+ 1 - 1
locations/JuliaMilHome.qsrc

@@ -370,7 +370,7 @@ if $ARGS[0] = 'julia_room':
 			juliaQW['homework_day'] = daystart
 			gs 'npc_relationship', 'modify', 'A12', 'love' 
 			lern += rand(3,6)
-			gs 'exp_gain', 'intel', rand(1,2) + (mentats_dose - rand(0,mentats_dose))
+			gs 'exp_gain', 'intel', rand(1,2) + rand(0, drugVars['mentats_dose'])
 			gs 'stat'
 
 			*clr & cla

+ 1 - 1
locations/KatjaHomeTalk.qsrc

@@ -779,7 +779,7 @@ if $ARGS[0] = 'homework':
 	npc_rel['A14'] += 2
 	gs 'grades', 'homework', 'school', 'yes', 1, 1, 'A14'
 	lern += rand(2, 4)
-	gs 'exp_gain', 'intel', rand(0, 1) + (mentats_dose - rand(0,mentats_dose))
+	gs 'exp_gain', 'intel', rand(0, 1) + rand(0, drugVars['mentats_dose'])
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/characters/shared/headshots_main/big14.jpg"></center>'
 	'For half an hour you and Katja pour over your books, you fully learn the lessons and pretty well understand the material.'

+ 1 - 1
locations/Komp.qsrc

@@ -549,7 +549,7 @@ if $ARGS[0] = 'study':
 	minut += 30
 	elektro += 3
 	gs 'internet_mobile', 'use_internet', $subs, 30
-	gs 'exp_gain', 'intel', 1 + (mentats_dose - rand(0,mentats_dose))
+	gs 'exp_gain', 'intel', 1 + rand(0, drugVars['mentats_dose'])
 	gs 'exp_gain', 'compskl', 1
 	'<center><b>The Institute for Education Measurement</b></center>'
 	'<center><img <<$set_imgh>> src="images/pc/items/accessories/computer/study.jpg"></center>'

+ 31 - 70
locations/MagEncounterFairy.qsrc

@@ -6,6 +6,7 @@ menu_off = 1
 
 if $ARGS[0] = '':
 	if knowsfairy = 1:
+		'You find yourself in the area where you know the fairy to hang around.'
 		if fairyshoo = 0:
 			act 'Look for the fairy to chat': gt 'MagEncounterFairy', 'fairy_chat'
 			act 'Just be on your way': gt $loc, $loc_arg
@@ -15,11 +16,13 @@ if $ARGS[0] = '':
 			act 'Shoo the pesky fairy away': gt 'MagEncounterFairy', 'fairy_shoo'
 		end
 	elseif pcs_magik + rand (1,10) >= 8:
+		'There appears to be a firefly here and its getting closer.'
 		act 'Investigate the strange glow': gt 'MagEncounterFairy', 'fairy_chat_no1'
 		act 'Shoo the pesky firefly away': gt 'MagEncounterFairy', 'fairy_shoo'
 		act 'Ignore the firefly': fairyskip = 1 & gt $loc, $loc_arg
 	else
 		gs 'stat'
+		'This part of the park has a weird feel to it causing the hairs on the back of your neck to stand on end.'
 		'You have the strange feeling of being watched, but looking around you don''t see anybody.'
 		act 'Shake off the feeling and move on': fairyskip = 1 & gt $loc, $loc_arg
 	end
@@ -47,8 +50,8 @@ if $ARGS[0] = 'fairy_chat_no1':
 			pcs_horny += 10
 			gs 'stat'
 			'The fairy bids you farewell. Just as she flies off, she returns fluttering in front of your face.'
-			''
 			wait 725
+			*nl
 			'"You know, someone as nice as you should look just as lovely.", she says. "Hold still and don''t breath!"'
 			'Before you can do anything, the fairy blows some sparkling dust into your face. Surprised you hold your breath, albeit barely. You feel the powdery substance soak into your skin and your face starts tingling. It is not uncomfortable, rather like the brush of a feather.'
 			' ''That must have been MAGICAL FAIRY DUST!'', it hits you as the fairy flies off.'
@@ -91,7 +94,7 @@ if $ARGS[0] = 'fairy_chat':
 	act 'Chat with the fairy':
 		cla
 		minut += 30
-		if fairyshoo = 1 and rand (1, 3) = 2:
+		if fairyshoo = 1 and rand(1,3) = 2:
 			fairyshoo = 0
 		elseif fairyshoo > 1 and (fairyshoo * 3 - fairychat) <= 0:
 			fairyshoo -= 1
@@ -99,111 +102,75 @@ if $ARGS[0] = 'fairy_chat':
 		fairychat += 1
 		pcs_mana += 25 * pcs_magik
 		pcs_mood += 15
+		gs 'stat'
 		gs 'MagEncounterFairy', 'fairychattopic'
 		if fairyday['skin_increase'] <= 10 and fairyday ! daystart and fairyshoo = 0:
+			cla
 			pcs_skin += 10
 			if pcs_skin > 1000: pcs_skin = 1000
 			fairyday['skin_increase'] += 1
 			fairyday = daystart
 			gs 'stat'
 			'The fairy bids you farewell.'
-			*nl
 			wait 725
+			*nl
 			'Just as she flies off, she returns fluttering in front of your face.'
 			'"You know, you could still look lovelier.", she says. "Don''t move."'
 			'Remembering the last time you hold your breath and close your eyes. Just a moment later you feel your skin start tingling, again, as if brushed by a feather.'
+			act 'Go on your way': gt $loc, $loc_arg
 		elseif fairyday['skin_increase'] > 10 and fairyday < daystart and fairyshoo = 0 and pcs_magik >= 8 and fairychat > 9 and succubusQW < 1:
 			!Sets the Succubus setup dream
+			cla
 			succubusQW = 1
 			pcs_horny = 100
 			fairyday = daystart
 			gs 'stat'
 			'The fairy bids you farewell.'
-			*nl
 			wait 725
+			*nl
 			'Just as she flies off, she returns fluttering in front of your face.'
 			'"You know, you''re almost a magical creature now.", she says. "Don''t move."'
 			'Remembering the last time you hold your breath and close your eyes. Just a moment later you feel a much more intense tingling, this time seeming to go all the way through you.'
+			act 'Go on your way': gt $loc, $loc_arg
 		elseif fairyday ! daystart and (pcs_nips < 80 or clit_size < 80):
 			fairyday = daystart
-			gs 'stat'
 			'The fairy takes another quick look at you, rubs her chin, and says "Hmm, since you''ve been a little nice to me, maybe I could be a little nice to you."'
 			act 'Huh?':
 				cla
 				*nl
-				'You look at her, puzzled, wondering if you heard her right.  She just shrugs her shoulders and says "Okay, if you''re not interested"'
+				'You look at her, puzzled, wondering if you heard her right. She just shrugs her shoulders and says "Okay, if you''re not interested"'
 				act 'Go on your way': gt $loc, $loc_arg
 			end
 			act 'Sure':
 				cla
 				fday_surprise += 1
-				fairy_surprise = RAND(1,9)
-				if fairy_surprise =< 2:
+				fairy_surprise = rand(1,8)
+				if fairy_surprise = 1:
 					pcs_nips += 5
 					pcs_horny += 10
-					gs 'stat'
-					if pcs_nips < 20:
-						'<center><img <<$set_imgh>> src="images/pc/body/nipples/nipples1.jpg"></center>'
-					elseif pcs_nips < 40:
-						'<center><img <<$set_imgh>> src="images/pc/body/nipples/nipples2.jpg"></center>'
-					elseif pcs_nips < 60:
-						'<center><img <<$set_imgh>> src="images/pc/body/nipples/nipples3.jpg"></center>'
-					elseif pcs_nips < 80:
-						'<center><img <<$set_imgh>> src="images/pc/body/nipples/nipples4.jpg"></center>'
-					else
-						'<center><img <<$set_imgh>> src="images/pc/body/nipples/nipples5.jpg"></center>'
-					end
+					*clr
+					'<center><img <<$set_imgh>> src="images/pc/body/nipples/nipples<<max(1,min(5,pcs_nips/20+1))>>.jpg"></center>'
 					'You hear a giggle.  Suddenly, your nipples get really firm and pointed, and seem to be a bit larger now.'
 					'You can''t help but rub both breasts, feeling the warm tingling in them, and in your pussy.'
-				elseif fairy_surprise = 3:
+				elseif fairy_surprise = 2:
 					pcs_nips -= 5
-					gs 'stat'
-					if pcs_nips < 20:
-						'<center><img <<$set_imgh>> src="images/pc/body/nipples/nipples1.jpg"></center>'
-					elseif pcs_nips < 40:
-						'<center><img <<$set_imgh>> src="images/pc/body/nipples/nipples2.jpg"></center>'
-					elseif pcs_nips < 60:
-						'<center><img <<$set_imgh>> src="images/pc/body/nipples/nipples3.jpg"></center>'
-					elseif pcs_nips < 80:
-						'<center><img <<$set_imgh>> src="images/pc/body/nipples/nipples4.jpg"></center>'
-					else
-						'<center><img <<$set_imgh>> src="images/pc/body/nipples/nipples5.jpg"></center>'
-					end
+					*clr
+					'<center><img <<$set_imgh>> src="images/pc/body/nipples/nipples<<max(1,min(5,pcs_nips/20+1))>>.jpg"></center>'
 					'You hear a giggle.  Suddenly, your nipples get really firm and pointed, yet seem to be smaller then before.'
 					'You can''t help but rub both breasts, feeling the warm tingling in them, and in your pussy.'
-				elseif fairy_surprise <= 4:
+				elseif fairy_surprise = 3:
 					clit_size += 5
 					pcs_horny += 10
-					gs 'stat'
-					if clit_size < 20:
-						'<center><img <<$set_imgh>> src="images/pc/body/clit/clit1.jpg"></center>'
-					elseif clit_size < 40:
-						'<center><img <<$set_imgh>> src="images/pc/body/clit/clit2.jpg"></center>'
-					elseif clit_size < 60:
-						'<center><img <<$set_imgh>> src="images/pc/body/clit/clit3.jpg"></center>'
-					elseif clit_size < 80:
-						'<center><img <<$set_imgh>> src="images/pc/body/clit/clit4.jpg"></center>'
-					else
-						'<center><img <<$set_imgh>> src="images/pc/body/clit/clit5.jpg"></center>'
-					end
+					*clr
+					'<center><img <<$set_imgh>> src="images/pc/body/clit/clit<<max(1,min(5,clit_size/20+1))>>.jpg"></center>'
 					'You hear a giggle and you feel a warm tingle at the top of your slit, you reach down and part your pussy lips with your fingers.'
 					'Your clitoris has swollen, and seems to stand out even more than before! You can''t help but rub all around it, feeling the warm tingling and the moisture build at the entrance.'
 					'The fairy admires the changes she''s made, and smiles at you, looking again at your puffy pussy and licking her lips.'
 					'You two say your goodbyes and the fairy flies off.'
-				elseif fairy_surprise = 5:
+				elseif fairy_surprise = 4:
 					clit_size -= 5
-					gs 'stat'
-					if clit_size < 20:
-						'<center><img <<$set_imgh>> src="images/pc/body/clit/clit1.jpg"></center>'
-					elseif clit_size < 40:
-						'<center><img <<$set_imgh>> src="images/pc/body/clit/clit2.jpg"></center>'
-					elseif clit_size < 60:
-						'<center><img <<$set_imgh>> src="images/pc/body/clit/clit3.jpg"></center>'
-					elseif clit_size < 80:
-						'<center><img <<$set_imgh>> src="images/pc/body/clit/clit4.jpg"></center>'
-					else
-						'<center><img <<$set_imgh>> src="images/pc/body/clit/clit5.jpg"></center>'
-					end
+					*clr
+					'<center><img <<$set_imgh>> src="images/pc/body/clit/clit<<max(1,min(5,clit_size/20+1))>>.jpg"></center>'
 					'You hear a giggle and you feel a warm tingle at the top of your slit, you reach down and part your pussy lips with your fingers.'
 					'Your clitoris has shunk, and seems to more demure than before! You can''t help but rub all around it, feeling the warm tingling and the moisture build at the entrance.'
 				elseif fairy_surprise <= 6:
@@ -215,14 +182,13 @@ if $ARGS[0] = 'fairy_chat':
 					'You hear a giggle, then sparkles surround your body and you get all tingly.'
 					'You suddenly feel colder and less aroused then before.'
 				end
+				gs 'stat'
 				act 'Go on your way': gt $loc, $loc_arg
 			end
 		end
 	end
 end
 
-killvar '$din_fairy_chat_no1' & killvar '$din_fairy_shoo' & killvar '$din_fairy_chat'
-
 if $ARGS[0] = 'fairychattopic':
 !!	These are the random chat texts for the Fairy from UsagiTripleSix
 	frandchat = rand(1,16)
@@ -258,10 +224,12 @@ if $ARGS[0] = 'fairychattopic':
 	elseif frandchat = 15:
 		'Today the fairy introduces you to fairy knock-knock jokes. She spends almost half an hour telling joke after joke, but you failed to understand a single one. By the time you''re ready to leave, she''s complaining about how humans have no sense of humor.'
 	else
-		killvar 'frandchat' & gt 'MagEncounterFairy', 'teleport'
+		killvar 'frandchat'
+		gt 'MagEncounterFairy', 'teleport'
 	end
 
-	act 'Go on your way': killvar 'frandchat' & gt $loc, $loc_arg
+	killvar 'frandchat'
+	act 'Go on your way': gt $loc, $loc_arg
 
 end
 
@@ -270,20 +238,13 @@ if $ARGS[0] = 'teleport':
 	if spellKnown['teleport'] = 0:
 		!show and teach Teleport spell
 		'The Fairy wraps her arms around your thumb and lightly tugs you over to a mysterious circle of trees.'
-		''
 		'She says, "You may have seen these circles of trees around the lands. Fairies planted them long ago and used their magic to tether them together. Since you also have Fae magic, I can show you how to use them."'
-		''
 		'She continues, "Most of the work was already done in the binding. In a way, the trees of each circle are the same trees. You just have to stand inside the circle, then hold in your mind a picture of another circle that you have been to before. Then you say the word <i>inla</i>. If your will is strong enough and you have enough magical energy, your energy can be used to enact your will."'
-		''
 		'She giggles. "This lets you dance through any field you like! "Let''s go!"'
-		''
 		'She grunts and give you a nudge into the circle.'
 		act 'Stumble into Circle':
-			''
 			'The view outside the circle seems blurry and a little indistinct.  The Fairy''s face scrunches up in concentration as she incants "inla", and the world outside seems to shimmer a little. You feel like you understand how she did that.  Though you can''t tell exactly where you are now in the blurriness, it does look different.'
-			''
 			'The Fairy says, "It''s important to take the time to feel each Fairy Ring, that''s how you can find your way back."  She flies off.'
-			''
 			'You decide it would be wise to memorize your surroundings.'
 			spellKnown['teleport'] = 1
 			tpKnown['GadForest'] = 1

+ 1 - 1
locations/MartinTalk.qsrc

@@ -259,7 +259,7 @@ if $ARGS[0] = '':
 			end
 		end
 		
-		if swinbeggor > 0:
+		if runnerQW['pav_wins2'] > 0:
 			act 'Athletics':
 				cla
 				$MartinHobby = 'athletics training'

+ 1 - 1
locations/Vika.qsrc

@@ -178,7 +178,7 @@ end
 
 if $ARGS[0] = 'study':
 	minut += 60
-	gs 'exp_gain', 'intel', 1 + (mentats_dose - rand(0,mentats_dose))
+	gs 'exp_gain', 'intel', 1 + rand(0, drugVars['mentats_dose'])
 	gs 'npc_relationship', 'modify', 'A220', 'like'
 	gs 'stat'
 

+ 1 - 1
locations/_attributes_danilovich_panties.qsrc

@@ -46,7 +46,7 @@ elseif ARGS[1] = 6:
 elseif ARGS[1] = 7:
 	PanType = 1
 	PanFun = 2
-	PanQuality = 2
+	PanQuality = 3
 	PanThinness = 2
 	underwear['pair'] = 7
 

+ 1 - 2
locations/abduction.qsrc

@@ -651,8 +651,7 @@ if $ARGS[0] = 'abdFood':
 		if pain['total'] > 0 and pain['killer'] = 0:
 			act 'Take a painkiller':
 				cla
-				pain['killer'] += 1
-				mc_inventory['painkillers'] -= 1
+				gs 'drugs', 'painkiller'
 				if pcs_hydra >= 100:
 					pcs_hydra += 25
 				else

+ 1 - 0
locations/albina_house_events.qsrc

@@ -1265,6 +1265,7 @@ if $ARGS[0] = 'study_door':
 			'You find yourself in a modern, lavishly decorated study. You take a quick look around, but find nothing of any real interest to you. This was clearly her father''s study. No wonder Albina hates coming in here. Just as you''re about to leave, you accidently knock one of the heavy books off the shelf, gritting your teeth in pain when it lands on your foot. Thankfully, nobody seems to have heard and you kneel down to pick it back up. As you do, something falls out from between the pages. Placing the book back, you glance down and see a flash drive at your feet.' 
 			'You pick it up and pocket it, curious about why someone would hide it. You just need a computer to access it.' 
 			'With nothing else to see, you quickly duck back out of the study, being careful to leave the door in its original ajar position before heading to Albina''s bedroom.'
+			AlbinaQW['flashdrive'] = 1
 			act 'Continue': gt 'albinahome', 'bedroom'
 		end
 	end

+ 1 - 2
locations/albina_wine_event.qsrc

@@ -661,7 +661,6 @@ if $ARGS[0] = 'boob_size_talk':
 !!			$titsize = 'AA cup'
 			'"That you''re... flat...?"'
 			'Shockingly, Albina seems... <i>embarrassed?</i> Have you ever seen her embarrassed about anything before?'
-			gs 'albina_wine_event','small_tits'
 		elseif pcs_cupsize <= 10:
 !!			$titsize = 'A cup'
 			'"That your... boobs are... tiny...?"'
@@ -671,8 +670,8 @@ if $ARGS[0] = 'boob_size_talk':
 			'Shockingly, Albina seems... <i>embarrassed?</i> Have you ever seen her embarrassed about anything before?'
 !!		elseif pcs_cupsize <= 15:
 !!			$titsize = 'B cup'
-			gs 'albina_wine_event','small_tits'
 		end
+		gs 'albina_wine_event','small_tits'
 	else
 		if pcs_cupsize <= 20:
 !!			$titsize = 'C cup'

+ 1 - 2
locations/albinahome.qsrc

@@ -170,8 +170,7 @@ if $ARGS[0] = 'bathroom':
 		if pain['total'] > 0 and pain['killer'] = 0:
 			act 'Take a painkiller':
 				cla
-				pain['killer'] += 1
-				mc_inventory['painkillers'] -= 1
+				gs 'drugs', 'painkiller'
 				pcs_hydra += 20
 				gs 'stat'
 				*nl

+ 3 - 5
locations/anush_bedroom.qsrc

@@ -341,7 +341,6 @@ if $ARGS[0] = 'night_stand':
 		act 'Joint':
 			*clr & cla
 			minut += 2
-			joint += 1
 			gs 'stat'
 			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/anushroom/take_joint.jpg"></center>'
 			'You pull out one of the joints and hold it up. "Yeah, I like this..."'
@@ -350,9 +349,8 @@ if $ARGS[0] = 'night_stand':
 			'She flips you off for your snarky comeback. "Fuck you, bitch. Here, hand it over." You hand over the joint as she takes a lighter off the nightstand and lights it up, taking a long slow drag off it before handing it back to you.'
 			act 'Take a drag':
 				*clr & cla
-				minut += 20
-				gs 'drugs', 'joint'
-				gs 'stat'
+				minut += 30
+				gs 'drugs', 'joint', 1
 				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/anushroom/get_high.jpg"></center>'
 				'You take the joint from her and take a hit off it as you sit on the bed next to her. The two of you discuss various topics as you hand the joint back and forth, taking turns taking hits. Before too long, the joint is gone, and you feel pretty high.'
 				act 'Chill out': AnushkaLoc = 2 & gt 'anushkachat', 'chat'
@@ -369,7 +367,7 @@ if $ARGS[0] = 'night_stand':
 		act 'Take joint':
 			*clr & cla
 			minut += 2
-			joint += 1
+			mc_inventory['joints'] += 1
 			gs 'stat'
 			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/anushroom/take_joint.jpg"></center>'
 			'You decide to take one of the joints. Surely she won''t mind that you took just one? You take it out and look at it before placing it in your purse for later and closing the drawer.'

+ 3 - 5
locations/anush_bedroom_city.qsrc

@@ -240,7 +240,6 @@ if $ARGS[0] = 'night_stand':
 		act 'Joint':
 			*clr & cla
 			minut += 2
-			joint += 1
 			gs 'stat'
 			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/anushroom/take_joint.jpg"></center>'
 			'You pull out one of the joints and hold it up. "Yeah, I like this..."'
@@ -249,9 +248,8 @@ if $ARGS[0] = 'night_stand':
 			'She flips you off for your snarky comeback. "Fuck you, bitch. Here, hand it over." You hand over the joint as she takes a lighter off the nightstand and lights it up, taking a long slow drag off it before handing it back to you.'
 			act 'Take a drag':
 				*clr & cla
-				minut += 20
-				gs 'drugs', 'joint'
-				gs 'stat'
+				minut += 30
+				gs 'drugs', 'joint', 1
 				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/anushroom/get_high.jpg"></center>'
 				'You take the joint from her and take a hit off it as you sit on the bed next to her. The two of you discuss various topics as you hand the joint back and forth, taking turns taking hits. Before too long, the joint is gone, and you feel pretty high.'
 				act 'Chill out': locat['A144'] = 2 & gt 'anushkachat_city', 'chat'
@@ -268,7 +266,7 @@ if $ARGS[0] = 'night_stand':
 		act 'Take joint':
 			*clr & cla
 			minut += 2
-			joint += 1
+			mc_inventory['joints'] += 1
 			gs 'stat'
 			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/anushroom/take_joint.jpg"></center>'
 			'You decide to take one of the joints. Surely she won''t mind that you took just one? You take it out and look at it before placing it in your purse for later and closing the drawer.'

+ 61 - 57
locations/anushaptbr.qsrc

@@ -254,64 +254,9 @@ if $ARGS[0] = 'brotherroom':
 						'He frowns. "Fine then! Get out of my room. Just get out!"'
 						'You back out of the doorway. "Okay... Okay, I''m going."'
 						act 'Leave': gt 'anushapt', 'hallway'
-					end	
-					act 'Deal':
-						*clr & cla
-						minut += 20
-						gs 'exp_gain', 'gaming', rand(1,3)
-						gs 'stat'
-						'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/maksimplay.jpg"></center>'
-						if pcs_gaming <= 40:
-							'The two of you start playing, and it quickly becomes obvious he''s played this game a lot and is very good at it. You try, but you''re unable to keep up with him. You come close a few times, but you''re mostly hopelessly outmatched. After a few matches, he pauses the game and looks at you with a lustful grin. "Haha you lost! Now show me your boobs."'
-							gs 'willpower', 'exhib', 'resist'
-							if will_cost <= pcs_willpwr:	
-								act 'Refuse (<<will_cost>> Willpower)':
-									*clr & cla
-									gs 'willpower', 'pay', 'resist'
-									gs 'stat'
-									'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/broroom.jpg"></center>'
-									'You shake your head. "No, I don''t think so. You''re too young anyways."'
-									'His eyes flash in fury. "You promised!"'
-									'You shrug. "I lied."'
-									'"GET OUT! Get out of my room!" he yells.'
-									'Not wanting anyone to come and find out what''s going on, you quickly get up and leave.'
-									act 'Leave': gt 'anushapt', 'hallway'
-								end
-							else
-								act 'Refuse (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
-							end
-							act 'Show him your boobs':
-								*clr & cla
-								gs 'flash', 'tits', 'indoors', 1, 1
-								gs 'stat'
-								'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/maksimshow.jpg"></center>'
-								'"A bet''s a bet," you shrug.'
-								'You stand and pull your top up, his eyes growing wide as he stares at your breasts. Before either of you can say anything, you hear the front door slam. "Maksim... Maksim... Come see... Come see!" Timofey yells as he runs down the hall.'
-								'You pull your top back into place just before he bursts into the room and Maksim gives him a dirty look. "Why do you always have to ruin everything?!"'
-								'Timofey stops, obviously not understanding what''s going on. He looks between the two of you completely confused. "I just wanted to show you something..." You use this as an opportunity to slip out of the room and close the door behind you, leaving the two of them behind to argue.'
-								act 'Leave': gt 'anushapt', 'hallway'
-							end
-						else
-							'You play a game with him. He''s pretty good, but not good enough to beat you. After a while, he grows frustrated. "I''m bored with this game!" he declares, turning it off in the middle of your last game and pulling out a single player one.'
-							'You smile, knowing he only switched games because he couldn''t win. "Well?"'
-							'He glances at you. "Well what?"'
-							'You smile at him. "You said you would tell me a secret about your sister, so what is it?"'
-							if maksimQW['secret1'] = 0 and hotcat >= 6 and npc_rel['A144'] >= 50:
-								maksimQW['secret1'] = 1
-								'He makes a ''V'' shape with his fingers and puts it against his mouth before sticking his tongue between them in the universal sign for eating pussy, mimicking licking for a few seconds. "She <i>likes</i> you."' 
-								'You just shake your head. You should have known he wouldn''t actually tell you anything you didn''t already know.'
-							elseif maksimQW['secret2'] = 0:
-								maksimQW['secret2'] = 1
-								'He looks around for a few seconds. "She keeps a bunch of drugs in her dresser."'
-								'You smile. "How would you know that? Have you been going through her panty drawer?" you ask in a teasing tone.'
-								'He turns bright red. "NO! Shut up and get out of my room!"' 
-								'You sigh and get up, leaving his room before he throws a fit.'
-							else
-								'He sighs and tells you about some nonsense thing she did as a kid that no one would care about, once again learning nothing worth knowing. You don''t know why you keep playing against him. You just shake your head and leave.'
-							end
-							act 'Leave': gt 'anushapt', 'hallway'
-						end
 					end
+					act 'Deal': gt 'anushaptbr', 'race_maksim_result'
+					if pcs_inhib > 30: act 'Deal (Go easy on Maksim)': gt 'anushaptbr', 'race_maksim_result', 1
 				end	
 			end
 		else
@@ -324,6 +269,65 @@ if $ARGS[0] = 'brotherroom':
 	end
 end 
 
+
+if $ARGS[0] = 'race_maksim_result':
+	minut += 20
+	gs 'exp_gain', 'gaming', rand(1 - ARGS[1], 3 - 2 * ARGS[1])
+	gs 'stat'
+	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/maksimplay.jpg"></center>'
+	if pcs_gaming <= 40 or ARGS[1] > 0:
+		'The two of you start playing, and it quickly becomes obvious he''s played this game a lot and is very good at it. You try, but you''re unable to keep up with him. You come close a few times, but you''re mostly hopelessly outmatched. After a few matches, he pauses the game and looks at you with a lustful grin. "Haha you lost! Now show me your boobs."'
+		gs 'willpower', 'exhib', 'resist'
+		if will_cost <= pcs_willpwr:
+			act 'Refuse (<<will_cost>> Willpower)':
+				*clr & cla
+				gs 'willpower', 'pay', 'resist'
+				gs 'stat'
+				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/broroom.jpg"></center>'
+				'You shake your head. "No, I don''t think so. You''re too young anyways."'
+				'His eyes flash in fury. "You promised!"'
+				'You shrug. "I lied."'
+				'"GET OUT! Get out of my room!" he yells.'
+				'Not wanting anyone to come and find out what''s going on, you quickly get up and leave.'
+				act 'Leave': gt 'anushapt', 'hallway'
+			end
+		else
+			act 'Refuse (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+		end
+		act 'Show him your boobs':
+			*clr & cla
+			gs 'flash', 'tits', 'indoors', 1, 1
+			gs 'stat'
+			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/maksimshow.jpg"></center>'
+			'"A bet''s a bet," you shrug.'
+			'You stand and pull your top up, his eyes growing wide as he stares at your breasts. Before either of you can say anything, you hear the front door slam. "Maksim... Maksim... Come see... Come see!" Timofey yells as he runs down the hall.'
+			'You pull your top back into place just before he bursts into the room and Maksim gives him a dirty look. "Why do you always have to ruin everything?!"'
+			'Timofey stops, obviously not understanding what''s going on. He looks between the two of you completely confused. "I just wanted to show you something..." You use this as an opportunity to slip out of the room and close the door behind you, leaving the two of them behind to argue.'
+			act 'Leave': gt 'anushapt', 'hallway'
+		end
+	else
+		'You play a game with him. He''s pretty good, but not good enough to beat you. After a while, he grows frustrated. "I''m bored with this game!" he declares, turning it off in the middle of your last game and pulling out a single player one.'
+		'You smile, knowing he only switched games because he couldn''t win. "Well?"'
+		'He glances at you. "Well what?"'
+		'You smile at him. "You said you would tell me a secret about your sister, so what is it?"'
+		if maksimQW['secret1'] = 0 and hotcat >= 6 and npc_rel['A144'] >= 50:
+			maksimQW['secret1'] = 1
+			'He makes a ''V'' shape with his fingers and puts it against his mouth before sticking his tongue between them in the universal sign for eating pussy, mimicking licking for a few seconds. "She <i>likes</i> you."' 
+			'You just shake your head. You should have known he wouldn''t actually tell you anything you didn''t already know.'
+		elseif maksimQW['secret2'] = 0:
+			maksimQW['secret2'] = 1
+			'He looks around for a few seconds. "She keeps a bunch of drugs in her dresser."'
+			'You smile. "How would you know that? Have you been going through her panty drawer?" you ask in a teasing tone.'
+			'He turns bright red. "NO! Shut up and get out of my room!"' 
+			'You sigh and get up, leaving his room before he throws a fit.'
+		else
+			'He sighs and tells you about some nonsense thing she did as a kid that no one would care about, once again learning nothing worth knowing. You don''t know why you keep playing against him. You just shake your head and leave.'
+		end
+		act 'Leave': gt 'anushapt', 'hallway'
+	end
+end
+
+
 if $ARGS[0] = 'rematch':
 	$menu_loc = 'anushaptbr'
 	$menu_arg = 'rematch'

+ 3 - 5
locations/anushka.qsrc

@@ -117,14 +117,12 @@ if $ARGS[0] = 'plan':
 				npc_rel['A144'] += 1
 				npc_rel['A158'] += 1
 				grupvalue[4] += 1
-				minut += 3
+				minut += 13
 				gs 'drugs', 'alcohol',  'moonshine', 1
-				gs 'drugs', 'joint'
-				gs 'stat'
+				gs 'drugs', 'joint', 1
 				'<center><b><font color="maroon">Detention</font></b></center>'
 				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/detention/sex/detcbj.jpg"></center>'
 				'You take the offered drink and take a swig as well. You immediately regret it because you choke and cough from the burning liquid. This results in them both laughing. Whatever is in the flask is much stronger than you expected. Anushka soon takes out a joint and lights it up before passing it around. After only a few drinks each, the flask is empty, and the joint doesn''t last much longer. With the flask empty and the joint smoked to ashes, you''re feeling pretty buzzed and watch in dazed fascination as Valentin pulls his pants down.'
-				gs 'stat'
 				if hotcat >= 6:
 					'As Anushka and Valentin make out, she reaches down to close her hand around his cock and immediately starts to jerk him. After she has him good and hard, she reaches toward you with both hands to grab your head and push you down into his lap.'			
 					gs 'willpower', 'bj', 'resist'
@@ -659,7 +657,7 @@ if $ARGS[0] = 'chatwhilewaiting':
 					end
 					if artemQW['bf'] = 1:
 						act 'Artem':
-							cla					
+							cla
 							'"Artem," you tell her.'
 							'She arches a slender brow slightly. "Artem? The nerd?" She seems to consider it for a moment. "Well, I guess he is kind of cute, and I bet you have him totally pussy whipped to do whatever you want. Yeah ok, I can see the appeal." she says with a giggle.'
 							'You shake your head at her comment. "He''s sweet and really nice to me."'

+ 3 - 2
locations/anushkachat_city.qsrc

@@ -308,6 +308,7 @@ if $ARGS[0] = 'chat':
 				'"I''m not sure, but I guess I have a few options," you tell her.'
 				'She nods. "Well, you should decide before you get stuck in this crappy little town married to some asshole whose kids you''re popping out every few years. Not judging you, unless that''s what you want. I''m just saying..."'
 				'You''re not sure what more to say about it, so you decide to change the subject.'
+			end
 			act 'Stop talking': gt 'anush_bedroom_city','anushroom'
 			act 'Keep talking': gt 'anushkachat_city', 'chat'
 		end
@@ -494,7 +495,7 @@ if $ARGS[0] = 'chat':
 		act 'Follow her':gt 'anushapt','snack'
 	end
 !!Artem is commented out until Artem is introduce at the Uni and I do his room and start his story arc there.
-	!!if artemQW['nush3some_ask'] = 2:
+	!!{if artemQW['nush3some_ask'] = 2:
 		act 'Talk about Artem threesome':
 			*clr & cla
 			minut += 5
@@ -513,7 +514,7 @@ if $ARGS[0] = 'chat':
 			act 'Stop talking': gt 'anush_bedroom_city','anushroom'
 			act 'Keep talking': gt 'anushkachat_city', 'chat'
 		end
-	end
+	end}
 end
 
 if $ARGS[0] = 'photo_chat':

+ 2 - 3
locations/anushkaev2.qsrc

@@ -1270,9 +1270,8 @@ if $ARGS[0] = 'disco_emptyroom':
 	'You find an unlocked door and tell her to go inside. "Head in, I''ll join you in a minute." You quickly walk to the womens restroom, enter one of the stalls and slide the strap-on harness on under your skirt so the dildo hangs between your legs. The strap-on in place, you head back to the room where you left Anushka. When you enter, you look around, unsure what the purpose of the room is before locking the door. Anushka is standing in a corner smoking a joint as you walk over and lean against the wall. She looks you over with a hungry lust filled look in her eye and offers you a hit of the joint.'
 	act 'Take a hit':
 		cla
-		joint += 1
-		minut += 5
-		gs 'drugs', 'joint'
+		minut += 15
+		gs 'drugs', 'joint', 1
 		*nl
 		'You take the offered joint from her and take a hit of it before handing it back. You spend several minutes passing the joint back and forth until it''s gone. Feeling nice and high, it''s time to show her what you''re already wearing.'
 		act 'Show her the strapon':

+ 1 - 1
locations/balkon.qsrc

@@ -52,7 +52,7 @@ if $ARGS[0] = 'start':
 	act 'Approach the railing':gt 'balkon2', 'niz'
 	
 	if mc_inventory['cigarettes'] >= 1: act 'Light a cigarette':gt 'balkon2', 'kurit'
-	if joint > 0 and jointhigh = 0: act 'Smoke a joint': gs 'drugs', 'joint' & gt 'balkon', 'start'
+	if mc_inventory['joints'] > 0 and drugVars['weed_high'] = 0: act 'Smoke a joint': minut += 10 & gs 'drugs', 'joint' & gt 'balkon', 'start'
 	if pcs_horny >= 50 and pcs_inhib > 30: act 'Masturbate':gt 'balkon2', 'masopt'	
 end
 

+ 204 - 207
locations/ballet_secrets.qsrc

@@ -9,140 +9,138 @@
 $default_img_path = 'locations/pushkin/ballet_secrets/'
 
 if $ARGS[0] = 'init':
-  *clr & cla
-  gs 'shortgs', 'setloc', 'ballet_secrets', $ARGS[0] 
-  $location_type = 'public_indoors'
-  $setloc['StageTitle'] = 'Ballet Secrets'
-  $setloc['StageImage'] =  '<<$default_img_path>>ballet-shop-window'
-  $location_type = 'public_indoors'
-  gs 'themes', 'indoors'
-  gs 'core_library', 'stage_title'
-  minut += 5
-  gs 'stat'
-  if week < 7 and hour >= 9 and hour <= 17:
-    'You enter the shop and 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.'
-    if balletqw['ballet_secrets'] = 1:
-      act 'Approach the woman': gt 'ballet_secrets', 'first_visit'
-    else
-      act 'Enter studio area': gt 'ballet_secrets', 'reception'
-      !! act 'Talk to assistant':
-      !! act'Look at equipment'
-      !! act 'look at dance wear'
-      act 'Leave shop': gt 'pushkin_sq'
-    end
-  else
-    'You look at the shop window and realise 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.'
-    if balletqw['membership'] >= daystart:
-      act 'Swipe membership card': gt 'ballet_secrets', 'reception'
-    end
-  end
+	*clr & cla
+	gs 'shortgs', 'setloc', 'ballet_secrets', $ARGS[0] 
+	$location_type = 'public_indoors'
+	$setloc['StageTitle'] = 'Ballet Secrets'
+	$setloc['StageImage'] =	'<<$default_img_path>>ballet-shop-window'
+	$location_type = 'public_indoors'
+	gs 'themes', 'indoors'
+	gs 'core_library', 'stage_title'
+	minut += 5
+	gs 'stat'
+	if week < 7 and hour >= 9 and hour <= 17:
+		'You enter the shop and 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.'
+		if balletqw['ballet_secrets'] = 1:
+			act 'Approach the woman': gt 'ballet_secrets', 'first_visit'
+		else
+			act 'Enter studio area': gt 'ballet_secrets', 'reception'
+			!! act 'Talk to assistant':
+			!! act'Look at equipment'
+			!! act 'look at dance wear'
+			act 'Leave shop': gt 'pushkin_sq'
+		end
+	else
+		'You look at the shop window and realise 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.'
+		act 'Return to Okhlopkov Square' : gt 'pushkin_sq'
+		if balletqw['membership'] >= daystart:
+			act 'Swipe membership card': gt 'ballet_secrets', 'reception'
+		end
+	end
 
 end
 
 !! Intro
 
 if $ARGS[0] = 'first_visit':
-  balletqw['ballet_secrets_visit'] = 1
-  balletqw['shoe_order'] = daystart + 14
-  $setloc['StageImage'] =  '<<$default_img_path>>ballet_secrets_fitting_1'
-  minut += 60
-  gs 'core_library', 'stage_title'
-  gs 'stat'
-
-  'You are greeted by a middle aged woman. "Hello, how may I help you?" She askes politely.'
-  '"Hello, I am <<$pcs_firstname>> <<$pcs_lastname>>. I am part of the ballet school intake." you give her a smile and hand over the schools letter as proof.'
-  '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"'
-  'Before you say anything she''s dragging you through the shop towards the back we are are greeted by a wall of shoes and there is pictures on the wall signed by dancers with shoes next to them. You look at the woman.'
-  '"Yes, they are all dancers who are or have been clients of our establishment", she noticed your gaze and explains with pride."We will only provide the best for the school."'
-  !! Set up gate for sponsored or not, not implemented system needs to be added to the end of year assessment.
-  '"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"'
-  '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.'
-  '"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.'
-  '"Is there anything else you neeed? 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>>."'
-  act 'Leave': gt 'pushkin_sq'
-  act 'Return to shop': gt 'ballet_secrets', 'init'
-  
-
+	balletqw['ballet_secrets_visit'] = 1
+	balletqw['shoe_order'] = daystart + 14
+	$setloc['StageImage'] =	'<<$default_img_path>>ballet_secrets_fitting_1'
+	minut += 60
+	gs 'core_library', 'stage_title'
+	gs 'stat'
+
+	'You are greeted by a middle aged woman. "Hello, how may I help you?" She askes politely.'
+	'"Hello, I am <<$pcs_firstname>> <<$pcs_lastname>>. I am part of the ballet school intake." you give her a smile and hand over the schools letter as proof.'
+	'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"'
+	'Before you say anything she''s dragging you through the shop towards the back we are are greeted by a wall of shoes and there is pictures on the wall signed by dancers with shoes next to them. You look at the woman.'
+	'"Yes, they are all dancers who are or have been clients of our establishment", she noticed your gaze and explains with pride."We will only provide the best for the school."'
+	!! Set up gate for sponsored or not, not implemented system needs to be added to the end of year assessment.
+	'"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"'
+	'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.'
+	'"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.'
+	'"Is there anything else you neeed? 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>>."'
+	act 'Leave': gt 'pushkin_sq'
+	act 'Return to shop': gt 'ballet_secrets', 'init'
 end
 !! Services
 
 !! Sports Area - Req Membership card
 
 if $ARGS[0] = 'reception':
-  gs 'shortgs', 'setloc', 'ballet_secrets', $ARGS[0] 
-  $location_type = 'public_indoors'
-  $setloc['StageTitle'] = 'Ballet Secrets - Reception'
-  $setloc['StageImage'] =  '<<$default_img_path>>reception'
-  $location_type = 'public_indoors'
-  gs 'themes', 'indoors'
-  gs 'core_library', 'stage_title'
-  minut += 5
-  gs 'stat'
-  'As you enter you are greeted warmly by the gym staff. The gym has an industrial feel reflecting the buildng being converted from an old factory.'
-
-  'There is a <a href="exec: gt ''food'', ''watercooler''">drinking fountain</a> near the doors to the gym hall to refill your water bottle.'
- 
-
-  act 'Return to shop': gt 'ballet_secrets', 'init'
-  act 'Changing rooms': gt 'ballet_secrets', 'changing_room'
-  !! if membership not active:
-  if balletqw['membership'] = 0 or balletqw['membership'] < daystart:
-    act 'Discuss membership': gt 'ballet_secrets', 'enrol'
-  elseif hour <= 15 and $clothingworntype = 'danilovich_outfits' and $shoeworntype = 'danilovich' and pcs_stam >= stammax / 5 and pcs_energy >= 20:
-    !! link to services:
-    !! if membership active
-    !! act 'Attend Physio': gt 'ballet_secrets', 'physio'
-    !! act 'Attend a gymnastics class.': gt 'ballet_secrets', 'gymnastics_courses'
-    !! act 'Attend a dance class': gt 'ballet_secrets', 'ballet_courses'
-    act 'Attend a yoga class': gt 'ballet_secrets', 'yoga_courses'
-  elseif hour >= 16:
-    'All the evening classes have started today, you need to be here before 16:00 to ensure you can attend.'
-  end
+	gs 'shortgs', 'setloc', 'ballet_secrets', $ARGS[0] 
+	$location_type = 'public_indoors'
+	$setloc['StageTitle'] = 'Ballet Secrets - Reception'
+	$setloc['StageImage'] =	'<<$default_img_path>>reception'
+	$location_type = 'public_indoors'
+	gs 'themes', 'indoors'
+	gs 'core_library', 'stage_title'
+	minut += 5
+	gs 'stat'
+	'As you enter you are greeted warmly by the gym staff. The gym has an industrial feel reflecting the buildng being converted from an old factory.'
+
+	'There is a <a href="exec: gt ''food'', ''watercooler''">drinking fountain</a> near the doors to the gym hall to refill your water bottle.'
+
+	act 'Return to shop': gt 'ballet_secrets', 'init'
+	act 'Changing rooms': gt 'ballet_secrets', 'changing_room'
+	!! if membership not active:
+	if balletqw['membership'] = 0 or balletqw['membership'] < daystart:
+		act 'Discuss membership': gt 'ballet_secrets', 'enrol'
+	elseif hour <= 15 and $clothingworntype = 'danilovich_outfits' and $shoeworntype = 'danilovich' and pcs_stam >= stammax / 5 and pcs_energy >= 20:
+		!! link to services:
+		!! if membership active
+		!! act 'Attend Physio': gt 'ballet_secrets', 'physio'
+		!! act 'Attend a gymnastics class.': gt 'ballet_secrets', 'gymnastics_courses'
+		!! act 'Attend a dance class': gt 'ballet_secrets', 'ballet_courses'
+		act 'Attend a yoga class': gt 'ballet_secrets', 'yoga_courses'
+	elseif hour >= 16:
+		'All the evening classes have started today, you need to be here before 16:00 to ensure you can attend.'
+	end
 end
+
 if $ARGS[0]= 'enrol':
-  
 	$epayments['method'] = ''
 	$epayments['item_variable'] = ''
 	$epayments['description'] = 'gym facilities access'
 	$epayments['loc'] = 'ballet_secrets'
 	$epayments['loc_arg'] = 'reception'
-	$epayments['banner']= 'locations/<<$default_img_path>>reception.jpg'
-  gs 'core_library', 'stage_title'
-  minut += 30
-  gs 'stat'
-
-  if balletqw['membership'] = 0:
-    'You approach the reception to discuss membership to the gym.'
-  elseif balletqw['membership'] ! 0:
-    'You approach the reception to renew your membership.'
-  end
-  act 'Return to the studio entrance': gt 'ballet_secrets', 'reception'
-
-  'The gym offers a weekly or monthly subscription for of 1,500<b> ₽</b>  or 5,000<b> ₽</b> respectively to use the facilities with some courses included. Physio appointments are charged seperately.'
-  'The subscriptions includes classes in gymnastics, yoga and introductory ballet. For advanced classes there is an additional instructor charge. A physical trainer is on hand to assist at all times if you so need one.'
-  '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.'
-
-  if money >= 5000 or karta + bankDebtLimit >= 5000:
-    '<td> <a href="exec: epayments[''value''] = 5000 & balletqw[''membership''] = daystart + 30  & gs ''shortgs'',''payments'' ">Purchase a monthly subscription for 5,000<b> ₽</b></a></td>'
-  end
-  if money >= 1500 or karta + bankDebtLimit >= 1500:
-    '<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>'
+	$epayments['banner']= '<<$default_img_path>>reception.jpg'
+	gs 'core_library', 'stage_title'
+	minut += 30
+	gs 'stat'
+
+	if balletqw['membership'] = 0:
+		'You approach the reception to discuss membership to the gym.'
+	elseif balletqw['membership'] ! 0:
+		'You approach the reception to renew your membership.'
+	end
+	act 'Return to the studio entrance': gt 'ballet_secrets', 'reception'
+
+	'The gym offers a weekly or monthly subscription for of 1,500<b> ₽</b>	or 5,000<b> ₽</b> respectively to use the facilities with some courses included. Physio appointments are charged seperately.'
+	'The subscriptions includes classes in gymnastics, yoga and introductory ballet. For advanced classes there is an additional instructor charge. A physical trainer is on hand to assist at all times if you so need one.'
+	'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.'
+
+	if money >= 5000 or karta + bankDebtLimit >= 5000:
+		'<td> <a href="exec: epayments[''value''] = 5000 & balletqw[''membership''] = daystart + 30	& gs ''shortgs'',''payments'' ">Purchase a monthly subscription for 5,000<b> ₽</b></a></td>'
+	end
+	if money >= 1500 or karta + bankDebtLimit >= 1500:
+		'<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>'
 	end
 end
 
 if $ARGS[0] = 'changing_room':
-  menu_off = 0
-  gs 'shortgs', 'setloc', 'ballet_secrets', $ARGS[0] 
+	menu_off = 0
+	gs 'shortgs', 'setloc', 'ballet_secrets', $ARGS[0] 
 	$location_type = 'private'
 	$locclass = 'changingroom'
-  gs 'themes', 'indoors'
-  minut += 5
-  gs 'stat'
-  '<center><h2>Changing Room</h2></center>'
+	gs 'themes', 'indoors'
+	minut += 5
+	gs 'stat'
+	'<center><h2>Changing Room</h2></center>'
 	'<center><img <<$set_imgh>> src="images/locations/city/citycenter/gym/locker.jpg"></center>'
 
-  act 'Return to the studio reception': gt 'ballet_secrets', 'reception'
-  if mc_inventory['shampoo'] > 0:
+	act 'Return to the studio reception': gt 'ballet_secrets', 'reception'
+	if mc_inventory['shampoo'] > 0:
 		act 'Take a shower (0:15)':
 			cla
 			*clr
@@ -176,13 +174,13 @@ if $ARGS[0] = 'changing_room':
 
 	gs 'wardrobe', 'default_sport_options'
 
-  if mc_inventory['deodorant'] > 0 and deodorant_on = 0:
-		'Your deodorant will last you for <b><<mc_inventory[''deodorant'']>></b> more '+iif(mc_inventory['deodorant'] =  1, 'application.', 'applications.')
+	if mc_inventory['deodorant'] > 0 and deodorant_on = 0:
+		'Your deodorant will last you for <b><<mc_inventory[''deodorant'']>></b> more '+iif(mc_inventory['deodorant'] =	1, 'application.', 'applications.')
 		act 'Apply deodorant (0:01)':
 			*clr & cla
 			menu_off = 1
 			minut += 1
-			mc_inventory['deodorant'] -=  1
+			mc_inventory['deodorant'] -=	1
 			gs 'sweat', 'deo'
 			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>')
 			'You apply deodorant to your armpits. It will keep you feeling fresh and clean for longer.'
@@ -190,130 +188,129 @@ if $ARGS[0] = 'changing_room':
 		end
 	end
 	dynamic $tampon
-  
 end
 
 !! Physiotherapy
 if $ARGS[0] = 'physio':
-  gs 'shortgs', 'setloc', 'ballet_secrets', $ARGS[0] 
-  $location_type = 'public_indoors'
-  $setloc['StageTitle'] = 'Ballet Secrets - Physio'
-  $setloc['StageImage'] =  '<<$default_img_path>>physio'
-  $location_type = 'public_indoors'
-  gs 'themes', 'indoors'
-  gs 'core_library', 'stage_title'
-
-  !! write attendance spiel 
-  act 'Leave': gt 'pushkin_sq'
+	gs 'shortgs', 'setloc', 'ballet_secrets', $ARGS[0] 
+	$location_type = 'public_indoors'
+	$setloc['StageTitle'] = 'Ballet Secrets - Physio'
+	$setloc['StageImage'] =	'<<$default_img_path>>physio'
+	$location_type = 'public_indoors'
+	gs 'themes', 'indoors'
+	gs 'core_library', 'stage_title'
+
+	!! write attendance spiel 
+	act 'Leave': gt 'pushkin_sq'
 end
 
 !! Gymnastics
 
 if $ARGS[0] = 'gymnastics_courses':
-  gs 'shortgs', 'setloc', 'ballet_secrets', $ARGS[0] 
-  $location_type = 'public_indoors'
-  $setloc['StageTitle'] = 'Ballet Secrets - Gymnastics Class'
-  $setloc['StageImage'] =  '<<$default_img_path>>gymnastics'
-  $location_type = 'public_indoors'
-  gs 'themes', 'indoors'
-  gs 'core_library', 'stage_title'
-
-  !! write attendance spiel and some random reactions for post-exercise such that was a great workout, you didn''t feel you did well today
-  act 'Leave': gt 'pushkin_sq'
+	gs 'shortgs', 'setloc', 'ballet_secrets', $ARGS[0] 
+	$location_type = 'public_indoors'
+	$setloc['StageTitle'] = 'Ballet Secrets - Gymnastics Class'
+	$setloc['StageImage'] =	'<<$default_img_path>>gymnastics'
+	$location_type = 'public_indoors'
+	gs 'themes', 'indoors'
+	gs 'core_library', 'stage_title'
+
+	!! write attendance spiel and some random reactions for post-exercise such that was a great workout, you didn''t feel you did well today
+	act 'Leave': gt 'pushkin_sq'
 end
 
 !! Ballet Courses Easy, Intermediate and advanced
 if $ARGS[0] = 'ballet_courses':
-  gs 'shortgs', 'setloc', 'ballet_secrets', $ARGS[0] 
-  $location_type = 'public_indoors'
-  $setloc['StageTitle'] = 'Ballet Secrets - Courses'
-  $setloc['StageImage'] =  '<<$default_img_path>>ballet_class'
-  $location_type = 'public_indoors'
-  gs 'themes', 'indoors'
-  gs 'core_library', 'stage_title'
+	gs 'shortgs', 'setloc', 'ballet_secrets', $ARGS[0] 
+	$location_type = 'public_indoors'
+	$setloc['StageTitle'] = 'Ballet Secrets - Courses'
+	$setloc['StageImage'] =	'<<$default_img_path>>ballet_class'
+	$location_type = 'public_indoors'
+	gs 'themes', 'indoors'
+	gs 'core_library', 'stage_title'
 end
 
-  !! Gymnastics
+	!! Gymnastics
 
 if $ARGS[0] = 'yoga_courses':
-  gs 'shortgs', 'setloc', 'ballet_secrets', $ARGS[0] 
-  $location_type = 'public_indoors'
-  $setloc['StageTitle'] = 'Ballet Secrets - Yoga Class'
-  $setloc['StageImage'] =  '<<$default_img_path>>yoga_class'
-  $location_type = 'public_indoors'
-  gs 'themes', 'indoors'
-  gs 'core_library', 'stage_title'
-  minut += 5
-  gs 'stat'
-  if balletqw['yoga_session'] ! daystart:
-    act 'Attend Yoga Class':
-      cla
-      balletqw['yoga_session'] = daystart
-      lesson_tier = rand(1,3)
-      if lesson_tier = 1:
-        gs 'exercise', 'tier1', 60, 'sprt', 'agil'
-      'You spend sixty minutes in an easy going class today, leaving you feeling refreshed and ready to face the world again.'
-      elseif lesson_tier = 2:
-        '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.'
-        gs 'exercise', 'tier2', 60, 'sprt', 'agil'
-      else 
-        gs 'exercise', 'tier3', 60, 'sprt', 'agil', 'stren'
-        '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.'
-      end
-      pcs_willpwr += rand(1,lesson_tier)
-      !! Set minor pain to reflect exercising
-
-      gs 'pain', 2, 'legL', 'stretch'
-      gs 'pain', 2, 'legR', 'stretch'
-      gs 'pain', 2, 'shoulders', 'stretch'
-      gs 'pain', 2, 'armL', 'stretch'
-      gs 'pain', 2, 'armR', 'stretch'
-      gs 'pain', 2, 'back', 'stretch'
-      gs 'pain', 2, 'chest', 'stretch'
-
-      killvar 'lesson_tier'
-      act 'Return to the studio reception': gt 'ballet_secrets', 'reception'
-    end
-  else 
-    'There is another fitness class in progress and no more yoga sessions today.'
-  end
-  act 'Return to the studio reception': gt 'ballet_secrets', 'reception'
+	gs 'shortgs', 'setloc', 'ballet_secrets', $ARGS[0] 
+	$location_type = 'public_indoors'
+	$setloc['StageTitle'] = 'Ballet Secrets - Yoga Class'
+	$setloc['StageImage'] =	'<<$default_img_path>>yoga_class'
+	$location_type = 'public_indoors'
+	gs 'themes', 'indoors'
+	gs 'core_library', 'stage_title'
+	minut += 5
+	gs 'stat'
+	if balletqw['yoga_session'] ! daystart:
+		act 'Attend Yoga Class':
+			cla
+			balletqw['yoga_session'] = daystart
+			lesson_tier = rand(1,3)
+			if lesson_tier = 1:
+				gs 'exercise', 'tier1', 60, 'sprt', 'agil'
+			'You spend sixty minutes in an easy going class today, leaving you feeling refreshed and ready to face the world again.'
+			elseif lesson_tier = 2:
+				'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.'
+				gs 'exercise', 'tier2', 60, 'sprt', 'agil'
+			else 
+				gs 'exercise', 'tier3', 60, 'sprt', 'agil', 'stren'
+				'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.'
+			end
+			pcs_willpwr += rand(1,lesson_tier)
+			!! Set minor pain to reflect exercising
+
+			gs 'pain', 2, 'legL', 'stretch'
+			gs 'pain', 2, 'legR', 'stretch'
+			gs 'pain', 2, 'shoulders', 'stretch'
+			gs 'pain', 2, 'armL', 'stretch'
+			gs 'pain', 2, 'armR', 'stretch'
+			gs 'pain', 2, 'back', 'stretch'
+			gs 'pain', 2, 'chest', 'stretch'
+
+			killvar 'lesson_tier'
+			act 'Return to the studio reception': gt 'ballet_secrets', 'reception'
+		end
+	else 
+		'There is another fitness class in progress and no more yoga sessions today.'
+	end
+	act 'Return to the studio reception': gt 'ballet_secrets', 'reception'
 end 
 
 !! Shopping
 if $ARGS[0] = 'clothing':
-  gs 'shortgs', 'setloc', 'ballet_secrets', $ARGS[0] 
-  $location_type = 'public_indoors'
-  $setloc['StageTitle'] = 'Ballet Secrets - Dancewear'
-  $setloc['StageImage'] =  '<<$default_img_path>>sports_shop'
-  $location_type = 'public_indoors'
-  gs 'themes', 'indoors'
-  gs 'core_library', 'stage_title'
-  act 'Leave': gt 'pushkin_sq'
+	gs 'shortgs', 'setloc', 'ballet_secrets', $ARGS[0] 
+	$location_type = 'public_indoors'
+	$setloc['StageTitle'] = 'Ballet Secrets - Dancewear'
+	$setloc['StageImage'] =	'<<$default_img_path>>sports_shop'
+	$location_type = 'public_indoors'
+	gs 'themes', 'indoors'
+	gs 'core_library', 'stage_title'
+	act 'Leave': gt 'pushkin_sq'
 end
 
 !! Custom Tutus for quests/shows, ballet shoe fitting, clothing, physio items, portable ballet equipment (barre) etc.
 if $ARGS[0] = 'quest':
-  gs 'shortgs', 'setloc', 'ballet_secrets', $ARGS[0] 
-  $location_type = 'public_indoors'
-  $setloc['StageTitle'] = 'Ballet Secrets'
-  $setloc['StageImage'] =  '<<$default_img_path>>quest'
-  $location_type = 'public_indoors'
-  gs 'themes', 'indoors'
-  gs 'core_library', 'stage_title'
-  act 'Leave': gt 'pushkin_sq'
+	gs 'shortgs', 'setloc', 'ballet_secrets', $ARGS[0] 
+	$location_type = 'public_indoors'
+	$setloc['StageTitle'] = 'Ballet Secrets'
+	$setloc['StageImage'] =	'<<$default_img_path>>quest'
+	$location_type = 'public_indoors'
+	gs 'themes', 'indoors'
+	gs 'core_library', 'stage_title'
+	act 'Leave': gt 'pushkin_sq'
 end
 
 if $ARGS[0] = 'food':
-  gs 'shortgs', 'setloc', 'ballet_secrets', $ARGS[0] 
-  $location_type = 'public_indoors'
-  $setloc['StageTitle'] = 'Food Court'
-  $setloc['StageImage'] =  '<<$default_img_path>>food_court'
-  $location_type = 'public_indoors'
-  gs 'themes', 'indoors'
-  gs 'core_library', 'stage_title'
-
-  'There is a small area set aside for vending machines to provide drinks and food. '
-  act 'Leave': gt 'pushkin_sq'
+	gs 'shortgs', 'setloc', 'ballet_secrets', $ARGS[0] 
+	$location_type = 'public_indoors'
+	$setloc['StageTitle'] = 'Food Court'
+	$setloc['StageImage'] =	'<<$default_img_path>>food_court'
+	$location_type = 'public_indoors'
+	gs 'themes', 'indoors'
+	gs 'core_library', 'stage_title'
+
+	'There is a small area set aside for vending machines to provide drinks and food. '
+	act 'Leave': gt 'pushkin_sq'
 end
 --- ballet_secrets ---------------------------------

+ 1 - 1
locations/bass.qsrc

@@ -111,7 +111,7 @@ if $ARGS[0] = 'a':
 			if pcs_sweat > 15 : pcs_sweat = 10 + rand(0,4)
 			pcs_mood += 5
 
-			if pcs_stren < 40:gs 'exp_gain', 'stren', 1 + (steroid_dose - rand(0,steroid_dose)) & gs 'obj_din', 'steroids'
+			if pcs_stren < 40:gs 'exp_gain', 'stren', 1 + rand(0, drugVars['steroids_dose']) & gs 'obj_din', 'steroids'		& ! obj_din does not have a steroids sublocation??
 			if KisameSex = 0:KisameSex = 1 & Set guy += 1
 			gs 'boyStat', 'A40'
 			'<center><img <<$set_imgh>> src="images/characters/city/kisame/sex/kisamebj.jpg"></center>'

+ 2 - 2
locations/bdsm_ballroom.qsrc

@@ -11,8 +11,8 @@ if $ARGS[0] = 'ballroom':
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/ballroom.jpg"></center>'
 	'Ballroom'
-	act 'Go to west wing hall': gt 'bdsm_hallway', 'west'
-	act 'Go to the atrium': gt 'bdsm_ballroom', 'atrium'
+	act 'Go to the Foyer': gt 'bdsm_hallway', 'foyer'
+	act 'Go to the Atrium': gt 'bdsm_ballroom', 'atrium'
 end
 
 

+ 1 - 1
locations/bdsm_basement.qsrc

@@ -93,7 +93,7 @@ if $ARGS[0] = 'start':
 		'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/basement.jpg"></center>'
 		'Basement, for torture and whatnot'
 
-		act 'Go upstairs to the east wing hallway': killvar 'bdsm_basement_rand' & gt 'bdsm_hallway', 'east'
+		act 'Go upstairs': killvar 'bdsm_basement_rand' & gt 'bdsm_hallway', 'foyer'
 	end
 end
 

+ 1 - 1
locations/bdsm_bathrooms.qsrc

@@ -10,7 +10,7 @@ if $ARGS[0] = 'bath':
 	'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/bath1.jpg"></center>'
 	'A luxrious bathroom, designed to indulge and relax.'
 	gs 'din_van', 'private'
-	act 'Return to east wing landing':gt'bdsm_landing', 'east'
+	act 'Return to landing':gt'bdsm_landing'
 end
 
 if $ARGS[0] = 'ensuite':

+ 27 - 55
locations/bdsm_bedeast.qsrc

@@ -1,18 +1,22 @@
 # bdsm_bedeast
 
-if $ARGS[0] = 'guestB':
+if $ARGS[0] = 'start':
     $location_type = 'private'
 	$locclass = 'bedr'
 	$loc = 'bdsm_bedeast'
-	$loc_arg = 'guestB'
+	$loc_arg = 'start'
 	$menu_loc = 'bdsm_bedeast'
-	$menu_arg = 'guestB'
+	$menu_arg = 'start'
 	menu_off = 0
 	*clr & cla
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/bedb.jpg"></center>'
-	'Guest bedroom B'
-	act 'Go to the east wing landing': gt 'bdsm_landing', 'east'
+	'Guest bedroom 2'
+	act 'Go to the landing': gt 'bdsm_landing'
+	gs 'bdsm_bedeast', 'events'
+end
+
+if $ARGS[0] = 'events':
 	if rand (0,100) < 3:
 		menu_off = 1
 		*clr & cla
@@ -23,7 +27,7 @@ if $ARGS[0] = 'guestB':
 		gs 'arousal', 'voyeur_sex', 5
 		gs 'stat'
 	
-		act 'Return':gt 'bdsm_bedeast', 'guestB'
+		act 'Return':gt 'bdsm_bedeast', 'start'
 	elseif rand (0,100) < 3:
 		menu_off = 1
 		*clr & cla
@@ -34,7 +38,7 @@ if $ARGS[0] = 'guestB':
 		gs 'arousal', 'voyeur', 5
 		gs 'stat'
 		
-		act 'Return':gt 'bdsm_bedeast', 'guestB'
+		act 'Return':gt 'bdsm_bedeast', 'start'
 	elseif rand (0,100) < 3:
 		menu_off = 1
 		*clr & cla
@@ -45,8 +49,8 @@ if $ARGS[0] = 'guestB':
 		gs 'arousal', 'voyeur_sex', 5
 		gs 'stat'
 		
-		act 'Return':gt 'bdsm_bedeast', 'guestB'
-		if $BDSMrole = 's':
+		act 'Return':gt 'bdsm_bedeast', 'start'
+		if $bdsmclub['role'] = 'sub':
 			act 'Join them':
 				*clr & cla
 				gs 'npcgeneratec', 0, 'Dominant man from the Club', rand(18,45)
@@ -61,26 +65,10 @@ if $ARGS[0] = 'guestB':
 				gs 'arousal', 'end'
 				gs 'stat'
 		
-				act 'Return':gt 'bdsm_bedeast', 'guestB'
+				act 'Return':gt 'bdsm_bedeast', 'start'
 			end
 		end
-	end
-end
-
-if $ARGS[0] = 'guestC':
-    $location_type = 'private'
-	$locclass = 'bedr'
-	$loc = 'bdsm_bedeast'
-	$loc_arg = 'guestC'
-	$menu_loc = 'bdsm_bedeast'
-	$menu_arg = 'guestC'
-	menu_off = 0
-	*clr & cla
-	gs 'stat'
-	'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/bedc.jpg"></center>'
-	'Guest bedroom C'
-	act 'Go to the east wing landing':gt 'bdsm_landing', 'east'
-	if rand (0,100) < 3:
+	elseif rand (0,100) < 3:
 		menu_off = 1
 		*clr & cla
 		gs 'stat'
@@ -90,8 +78,8 @@ if $ARGS[0] = 'guestC':
 		gs 'arousal', 'voyeur_sex', 5
 		gs 'stat'
 		
-		act 'Return':gt 'bdsm_bedeast', 'guestC'
-		if $BDSMrole = 's':
+		act 'Return':gt 'bdsm_bedeast', 'start'
+		if $bdsmclub['role'] = 'sub':
 			act 'Join them':
 				*clr & cla
 				gs 'stat'
@@ -105,7 +93,7 @@ if $ARGS[0] = 'guestC':
 				gs 'arousal', 'end'
 				gs 'stat'
 		
-				act 'Return':gt 'bdsm_bedeast', 'guestC'
+				act 'Return':gt 'bdsm_bedeast', 'start'
 			end
 		end
 	elseif rand (0,100) < 3:
@@ -119,7 +107,7 @@ if $ARGS[0] = 'guestC':
 		gs 'arousal', 'end'
 		gs 'stat'
 		
-		act 'Return':gt 'bdsm_bedeast', 'guestC'
+		act 'Return':gt 'bdsm_bedeast', 'start'
 	elseif rand (0,100) < 3:
 		menu_off = 1
 		*clr & cla
@@ -131,24 +119,8 @@ if $ARGS[0] = 'guestC':
 		gs 'arousal', 'end'
 		gs 'stat'
 		
-		act 'Return':gt 'bdsm_bedeast', 'guestC'
-	end
-end
-
-if $ARGS[0] = 'guestD':
-    $location_type = 'private'
-	$locclass = 'bedr'
-	$loc = 'bdsm_bedeast'
-	$loc_arg = 'guestD'
-	$menu_loc = 'bdsm_bedeast'
-	$menu_arg = 'guestD'
-	menu_off = 0
-	*clr & cla
-	gs 'stat'
-	'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/bedd.jpg"></center>'
-	'Guest bedroom D'
-	act 'Go to the east wing landing':gt 'bdsm_landing', 'east'
-	if rand (0,100) < 3:
+		act 'Return':gt 'bdsm_bedeast', 'start'
+	elseif rand (0,100) < 3:
 		menu_off = 1
 		*clr & cla
 		gs 'stat'
@@ -158,7 +130,7 @@ if $ARGS[0] = 'guestD':
 		gs 'arousal', 'voyeur_sex', 5
 		gs 'stat'
 		
-		act 'Return':gt 'bdsm_bedeast', 'guestD'
+		act 'Return':gt 'bdsm_bedeast', 'start'
 	elseif rand (0,100) < 3:
 		menu_off = 1
 		*clr & cla
@@ -169,8 +141,8 @@ if $ARGS[0] = 'guestD':
 		gs 'arousal', 'voyeur_sex', 5
 		gs 'stat'
 		
-		act 'Return':gt 'bdsm_bedeast', 'guestD'
-		if $BDSMrole = 's':
+		act 'Return':gt 'bdsm_bedeast', 'start'
+		if $bdsmclub['role'] = 'sub':
 			act 'Watch':
 				*clr & cla
 				'<center><video autoplay loop src="images/locations/city/suburb/bdsm_club/sex/bedrand6.mp4"></video></center>'
@@ -191,7 +163,7 @@ if $ARGS[0] = 'guestD':
 					gs 'arousal', 'end'
 					gs 'stat'
 					
-					act 'Return':gt 'bdsm_bedeast', 'guestD'
+					act 'Return':gt 'bdsm_bedeast', 'start'
 				end
 			end
 		end
@@ -206,7 +178,7 @@ if $ARGS[0] = 'guestD':
 		gs 'arousal', 'end'
 		gs 'stat'
 		
-		act 'Return':gt 'bdsm_bedeast', 'guestD'
+		act 'Return':gt 'bdsm_bedeast', 'start'
 	elseif rand (0,100) < 3:
 		menu_off = 1
 		*clr & cla
@@ -218,7 +190,7 @@ if $ARGS[0] = 'guestD':
 		gs 'arousal', 'end'
 		gs 'stat'
 		
-		act 'Return':gt 'bdsm_bedeast', 'guestD'
+		act 'Return':gt 'bdsm_bedeast', 'start'
 	end
 end
 

+ 4 - 4
locations/bdsm_bedwest.qsrc

@@ -13,7 +13,7 @@ if $ARGS[0] = 'master':
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/masterbed.jpg"></center>'
 	'Master bedroom'
-	act 'Go to the west wing landing':gt 'bdsm_landing', 'west'
+	act 'Go to the landing':gt 'bdsm_landing'
 	if rand (0,100) < 3:
 		menu_off = 1
 		*clr & cla
@@ -50,7 +50,7 @@ if $ARGS[0] = 'master':
 		gs 'stat'
 		
 		act 'Return':gt 'bdsm_bedwest', 'master'
-	elseif rand (0,100) < 3 and $BDSMrole = 's':
+	elseif rand (0,100) < 3 and $bdsmclub['role'] = 'sub':
 		menu_off = 1
 		*clr & cla
 		pcs_horny += 5
@@ -77,8 +77,8 @@ if $ARGS[0] = 'guest':
 	*clr & cla
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/beda.jpg"></center>'
-	'Guest bedroom A'
-	act 'Go to the west wing landing':gt 'bdsm_landing', 'west'
+	'Guest bedroom'
+	act 'Go to the landing':gt 'bdsm_landing'
 	if rand (0,100) < 3:
 		menu_off = 1
 		*clr & cla

+ 2 - 2
locations/bdsm_conservatory.qsrc

@@ -11,8 +11,8 @@ gs 'stat'
 '<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/conservatory.jpg"></center>'
 'This huge glass fronted room is kept very warm and houses a number of rare and exotic plants.'
 'It is one of the few places where you can just relax and enjoy the opulence of the mansion.'
-act 'Go to the garden': gt 'bdsm_garden', 'garden'
-act 'Go to east wing hall': gt 'bdsm_hallway', 'east'
+act 'Go to the Garden': gt 'bdsm_garden', 'garden'
+act 'Go to the Foyer': gt 'bdsm_hallway', 'foyer'
 
 --- bdsm_conservatory ---------------------------------
 

+ 1 - 2
locations/bdsm_dining.qsrc

@@ -9,8 +9,7 @@ menu_off = 0
 cls
 gs 'stat'
 '<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/diningroom.jpg"></center>'
-act 'Go to foyer': gt 'bdsm_hallway', 'foyer'
-act 'Go to the east wing hallway':gt 'bdsm_hallway', 'east'
+act 'Go to the Foyer': gt 'bdsm_hallway', 'foyer'
 
 if rand (0,100) < 3:
 	menu_off = 1

+ 26 - 2
locations/bdsm_dressing.qsrc

@@ -8,6 +8,8 @@ $loc = 'bdsm_dressing'
 $loc_arg = ''
 $menu_loc = 'bdsm_dressing'
 $menu_arg = ''
+!! Role cleared here and set when re-entering to allow for sub and dom usage
+$bdsmclub['role'] = ''
 menu_off = 0
 cls
 gs 'stat'
@@ -15,9 +17,31 @@ gs 'stat'
 'A huge dressing room. Mostly used by submissives to dress as staff and because of this, it is a safe space and games are not allowed.'
 'It contains several <a href="exec:gt ''wardrobe'', ''start''">wardrobes</a> (where you can choose outfits and organize your clothing).'
 'There are whole cabinets filled with designer clothing belonging to various club members and plenty of <a href="exec:gt ''mirror'',''start''">mirrors</a> you can use.'
+*nl
+'It is here where you must set your role for your visit, you can also change it here but must be wearing the correct clothing for your role or you will only be able to leave.'
+'Submissives must wear either maid or submissive sex shop clothing or be naked.'
+'Dominants must wear clothing of minimum "expensive" quality.'
+if ($clothingworntype = 'gm_maid' or PCloStyle2 = 1) or CloStyle3 = 2 or $clothingworntype = 'nude':
+	act 'Enter the club''s foyer (submissive role)':
+		$bdsmclub['role'] = 'sub'
+		gt 'bdsm_hallway', 'foyer'
+	end
+end
+if PCloQuality >= 5 and bdsmclub['payday'] + 30 > daystart and bdsmclub['domtraining'] = 2:
+	act 'Enter the club''s foyer (dominant role)':
+		$bdsmclub['role'] = 'dom'
+		gt 'bdsm_hallway', 'foyer'
+	end
+end
 
-act 'Go to foyer': gt 'bdsm_hallway', 'foyer'
-act 'Go to east wing hall': gt 'bdsm_hallway', 'east'
+if bdsmclub['payday'] + 30 <= daystart:
+	*nl
+	'You do not have a paid subscription so you cannot enter the club as a dominant, you can go direct to the office and pay from here.'
+	act 'Go to office and pay subscription': gt 'bdsm_mansion', 'office'
+end
+
+act 'Go to the Foyer (no role set)': gt 'bdsm_hallway', 'foyer'
+act 'Leave the club':gt 'city_suburbs', 'start'
 
 --- bdsm_dressing ---------------------------------
 

+ 1 - 1
locations/bdsm_gameroom.qsrc

@@ -8,7 +8,7 @@ $menu_arg = ''
 menu_off = 0
 '<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/games.jpg"></center>'
 'Games room'
-act 'Go to the west wing landing':gt 'bdsm_landing', 'west'
+act 'Go to the landing':gt 'bdsm_landing'
 
 if rand (0,100) < 3:
 	menu_off = 1

+ 1 - 1
locations/bdsm_garden.qsrc

@@ -15,7 +15,7 @@ if $ARGS[0] = 'garden':
 	act 'Go to the conservatory': gt 'bdsm_conservatory'
 	act 'Go to the garage': gt 'bdsm_garden', 'garage'
 
-	if $BDSMrole = 's' and rand (0, 100) < 5 and stat['think_virgin'] = 0:
+	if $bdsmclub['role'] = 'sub' and rand (0, 100) < 5 and stat['think_virgin'] = 0:
 		gt 'bdsm_garden', 'gEV1'
 	elseif rand (0,100) < 3:
 		menu_off = 1

+ 24 - 63
locations/bdsm_hallway.qsrc

@@ -1,6 +1,8 @@
 # bdsm_hallway
 
 CLOSE ALL
+
+
 if $ARGS[0] = 'foyer':
     $location_type = 'private'
 	$loc = 'bdsm_hallway'
@@ -13,65 +15,24 @@ if $ARGS[0] = 'foyer':
 	'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/foyer.jpg"></center>'
 	'You stand in the grand foyer, your eye is draw towards and up the dual staircases. To your left is the Dinning room, to your right the dressing room.'
 	'Discreetly to the sides of the staircases are two rest rooms.'
-	act 'Leave the club':
-		if $clothingworntype ! 'nude':
-			gt 'bdsm_mansion', 'start'
-		else
-			msg'<b><font color = red>You need to get dressed.</font></b>'
-			gt'bdsm_hallway','foyer'
-		end
-	end
-	if $BDSMrole = 's':
+
+	if $bdsmclub['role'] = '':
+		*nl
+		'You have not chosen a role in the dressing room so you cannot enter the rest of the club.'
+		act 'Go to Dressing room': gt 'bdsm_dressing'
+	else
 		act 'Go to Dressing room': gt 'bdsm_dressing'
-		if ($clothingworntype ! 'gm_maid' or PCloStyle2 ! 1) and  $clothingworntype ! 'nude':exit
+		act 'Go to Reception':gt 'bdsm_mansion', 'reception'
+		act 'Go upstairs':gt 'bdsm_landing'
+		act 'Go down to the basement':gt 'bdsm_basement', 'start'
+		act 'Go to the Rest room': gt 'bdsm_bathrooms', 'restroom'
+		act 'Go to the Dining room':gt 'bdsm_dining'
+		act 'Go to the Ball room':gt 'bdsm_ballroom', 'ballroom'
+		act 'Go to the Conservatory': gt 'bdsm_conservatory'
+		act 'Go to the Kitchen':gt 'bdsm_kitchen', 'kitchen'
 	end
-	act 'Go upstairs to the west wing landing':gt 'bdsm_landing', 'west'
-	act 'Go upstairs to the east wing landing':gt 'bdsm_landing', 'east'
-	act 'Go to the Dining room':gt 'bdsm_dining'
-	act 'Go to the west wing hallway':gt 'bdsm_hallway', 'west'
-	act 'Go to the east wing hallway':gt 'bdsm_hallway', 'east'
-	act 'Go to the rest room': gt 'bdsm_bathrooms', 'restroom'
-end
-
-if $ARGS[0] = 'west':
-    $location_type = 'private'
-	$loc = 'bdsm_hallway'
-	$loc_arg = 'west'
-	$menu_loc = 'bdsm_hallway'
-	$menu_arg = 'west'
-	menu_off = 0
-	*clr & cla
-	gs 'stat'
-	'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/hall.jpg"></center>'
-	'You are standing in the west wing hallway, the reception and office are located here. If you need to speak to management, you need to go to the reception.'
-	'The dressing room is to your right and at the end of the hallway is the ball room leading to the atrium.'
-	act 'Go to the foyer':gt 'bdsm_hallway', 'foyer'
-	act 'Go to reception':gt 'bdsm_mansion', 'reception'
-	act 'Go to the libary':gt 'bdsm_library'
-	act 'Go to the Ball room':gt 'bdsm_ballroom', 'ballroom'
-end
-
-if $ARGS[0] = 'east':
-    $location_type = 'private'
-	$loc = 'bdsm_hallway'
-	$loc_arg = 'east'
-	$menu_loc = 'bdsm_hallway'
-	$menu_arg = 'east'
-	menu_off = 0
-	killvar '$locclass'
-	*clr & cla
-	gs 'stat'
-	'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/hall.jpg"></center>'
-	'You are standing in the east wing hallway, you can feel the warm air from the conservatory to your right and the dinning room is to your left.'
-	'Further down the hallway are the kitchen, pantry and laundry room. At the end of the hall is are stairs leading up to the guest bedrooms and down to the basement.'
-	act 'Go to the foyer':gt 'bdsm_hallway', 'foyer'
-	act 'Go to the conservatory': gt 'bdsm_conservatory'
-	act 'Go to the dining room':gt 'bdsm_dining'
-	act 'Go to the kitchen':gt 'bdsm_kitchen', 'kitchen'
-	act 'Go to the laundry':gt 'bdsm_kitchen', 'laundry'
-	act 'Go upstairs to the west wing landing':gt 'bdsm_landing', 'west'
-	act 'Go down to the basement':gt 'bdsm_basement', 'start'
 
+!! Random scenes
 	if rand (0,100) < 3:
 		menu_off = 1
 		*clr & cla
@@ -83,7 +44,7 @@ if $ARGS[0] = 'east':
 		gs 'arousal', 'end'
 		gs 'stat'
 		
-		act 'Return': gt 'bdsm_hallway', 'east'
+		act 'Return': gt 'bdsm_hallway', 'foyer'
 	elseif rand (0,100) < 3:
 		menu_off = 1
 		*clr & cla
@@ -94,7 +55,7 @@ if $ARGS[0] = 'east':
 		gs 'arousal', 'voyeur', 5
 		gs 'stat'
 		
-		if $BDSMrole = 'slave':
+		if $bdsmclub['role'] = 'sub':
 		    'The woman rides her ponyboy over to you and looks you over, grabbing hold of your chin as if she was inspecting you. "Well arn''t you just a cute little filly. I''ve been thinking about putting my boy here out to stud and I think you will do nicely. Come along." She says as she attaches a lead to your collar from the saddle, the she uses the spurs to get ponyboy going and rides him up the stairs pulling you behind them.'
 			!follow up scene to come
 		end
@@ -102,7 +63,7 @@ if $ARGS[0] = 'east':
 		gs 'arousal', 'end'
 		gs 'stat'
 		
-		act 'Return': gt 'bdsm_hallway', 'east'
+		act 'Return': gt 'bdsm_hallway', 'foyer'
 	elseif rand (0,100) < 3:
 		menu_off = 1
 		*clr & cla
@@ -113,7 +74,7 @@ if $ARGS[0] = 'east':
 		gs 'arousal', 'voyeur', 5
 		gs 'stat'
 		
-		if $BDSMrole = 'slave':
+		if $bdsmclub['role'] = 'sub':
 		    'The man in leathers notices you and smiles, motioning you over as he keeps talking to the couple.'
 			'You obediently walk over to him, as you do he simply points a finger at the floor and you kneel down next to the other girl.'
 			'After several minutes the man ends his conversation with the couple. "Well it was nice seeing you again, but I need to get going. As you can see I have a couple of bitches in need of training." He says with a laugh, while the couple look at you with a knowing smile.'
@@ -124,7 +85,7 @@ if $ARGS[0] = 'east':
 		gs 'arousal', 'end'
 		gs 'stat'
 		
-		act 'Return': gt 'bdsm_hallway', 'east'
+		act 'Return': gt 'bdsm_hallway', 'foyer'
 	elseif rand (0,100) < 3:
 		menu_off = 1
 		*clr & cla
@@ -135,7 +96,7 @@ if $ARGS[0] = 'east':
 		gs 'arousal', 'voyeur_sex', 5
 		gs 'stat'
 		
-		act 'Return': gt 'bdsm_hallway', 'east'
+		act 'Return': gt 'bdsm_hallway', 'foyer'
 	elseif rand (0,100) < 3:
 		menu_off = 1
 		*clr & cla
@@ -156,7 +117,7 @@ if $ARGS[0] = 'east':
 			gs 'arousal', 'end'
 			gs 'stat'
 		
-			act 'Return': gt 'bdsm_hallway', 'east'
+			act 'Return': gt 'bdsm_hallway', 'foyer'
 		end
 	end
 end

+ 4 - 3
locations/bdsm_kitchen.qsrc

@@ -10,8 +10,9 @@ if $ARGS[0] = 'kitchen':
 	menu_off = 0
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/kitchen.jpg"></center>'
-	act 'Go to the east hall': gt 'bdsm_hallway', 'east'
-	act 'look in the pantry': gt 'bdsm_kitchen', 'pantry'
+	act 'Go to the Foyer': gt 'bdsm_hallway', 'foyer'
+	act 'Go to the laundry room': gt 'bdsm_kitchen', 'laundry'
+	act 'Look in the pantry': gt 'bdsm_kitchen', 'pantry'
 end
 
 if $ARGS[0] = 'laundry':
@@ -23,7 +24,7 @@ if $ARGS[0] = 'laundry':
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/laundry.jpg"></center>'
 	'The laundry'
-	act 'Go to the east hall': gt 'bdsm_hallway', 'east'
+	act 'Return to the Kitchen': gt 'bdsm_kitchen', 'kitchen'
 end
 
 if $ARGS[0] = 'pantry':

+ 24 - 44
locations/bdsm_landing.qsrc

@@ -2,54 +2,34 @@
 $location_type = 'private'
 killvar '$locclass'
 
-if $ARGS[0] = 'west':
-	*clr & cla
-	$loc = 'bdsm_landing'
-	$loc_arg = 'west'
-	$menu_loc = 'bdsm_landing'
-	$menu_arg = 'west'
-	menu_off = 0
-	gs 'stat'
-	'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/wlanding.jpg"></center>'
-	act 'Go to the east wing landing':gt 'bdsm_landing', 'east'
-	act 'Go downstairs to the foyer':gt 'bdsm_hallway', 'foyer'
-	act 'Visit the master bedroom':gt 'bdsm_bedwest', 'master'
-	act 'Visit guest bedroom A':gt 'bdsm_bedwest', 'guest'
-	act 'Visit the games room':gt 'bdsm_gameroom'
+*clr & cla
+$loc = 'bdsm_landing'
+$loc_arg = 'west'
+$menu_loc = 'bdsm_landing'
+$menu_arg = 'west'
+menu_off = 0
+gs 'stat'
+'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/wlanding.jpg"></center>'
 
-	if rand (0,100) < 3:
-		menu_off = 1
-		*clr & cla
-		gs 'stat'
-		'<center><video autoplay loop src="images/locations/city/suburb/bdsm_club/sex/maid_sex_b1.mp4"></video></center>'
-		'A maid is being helped with the vacuum cleaning by a man in casual clothing, you think about reporting him, but he''s a bit busy right now.'
-		
-		gs 'arousal', 'voyeur_sex', 5
-		gs 'arousal', 'end'
-		gs 'stat'
-		
-		act 'Return': gt 'bdsm_landing', 'west'
-	end
-end
+act 'Go downstairs to the foyer':gt 'bdsm_hallway', 'foyer'
+act 'Visit the master bedroom':gt 'bdsm_bedwest', 'master'
+act 'Visit guest bedroom':gt 'bdsm_bedwest', 'guest'
+act 'Visit guest bedroom 2':gt 'bdsm_bedeast', 'start'
+act 'Go to the bathroom': gt 'bdsm_bathrooms', 'bath'
+act 'Visit the games room':gt 'bdsm_gameroom'
 
-if $ARGS[0] = 'east':
+if rand (0,100) < 3:
+	menu_off = 1
 	*clr & cla
-	killvar '$locclass'
-	$loc = 'bdsm_landing'
-	$loc_arg = 'east'
-	$menu_loc = 'bdsm_landing'
-	$menu_arg = 'east'
-	menu_off = 0
 	gs 'stat'
-	'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/elanding.jpg"></center>'
-	act 'Go to the west wing landing':gt 'bdsm_landing', 'west'
-	act 'Go downstairs to the foyer':gt 'bdsm_hallway', 'foyer'
-	act 'Go downstairs to the west wing hallway':gt 'bdsm_hallway', 'west'
-	act 'Visit guest bedroom B':gt 'bdsm_bedeast', 'guestB'
-	act 'Visit guest bedroom C':gt 'bdsm_bedeast', 'guestC'
-	act 'Visit guest bedroom D':gt 'bdsm_bedeast', 'guestD'
-	act 'Go to the bathroom': gt 'bdsm_bathrooms', 'bath'
-	act 'Go to the living room': gt 'bdsm_livingroom'
+	'<center><video autoplay loop src="images/locations/city/suburb/bdsm_club/sex/maid_sex_b1.mp4"></video></center>'
+	'A maid is being helped with the vacuum cleaning by a man in casual clothing, you think about reporting him, but he''s a bit busy right now.'
+	
+	gs 'arousal', 'voyeur_sex', 5
+	gs 'arousal', 'end'
+	gs 'stat'
+	
+	act 'Return': gt 'bdsm_landing', 'west'
 end
 
 --- bdsm_landing ---------------------------------

+ 0 - 27
locations/bdsm_library.qsrc

@@ -1,27 +0,0 @@
-# bdsm_library
-
-$location_type = 'private'
-$loc = 'bdsm_library'
-$loc_arg = ''
-$menu_loc = 'bdsm_library'
-$menu_arg = ''
-menu_off = 0
-*clr & cla
-gs 'stat'
-'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/library.jpg"></center>'
-'Library, full of books.'
-
-if hour = 18:
-	menu_off = 1
-	pcs_horny += 10
-	*clr & cla
-	gs 'stat'
-	'<center><video autoplay loop src="images/locations/city/suburb/bdsm_club/librand.mp4"></video></center>'
-	'It looks like the librarian has put one of the books back in the wrong place, she really does seem to like the being punished.'
-	act 'Leave her to it': gt 'bdsm_hallway', 'west'
-end
-
-act 'Go to west wing hall': gt 'bdsm_hallway', 'west'
-
---- bdsm_library ---------------------------------
-

+ 0 - 17
locations/bdsm_livingroom.qsrc

@@ -1,17 +0,0 @@
-# bdsm_livingroom
-
-$location_type = 'private'
-$locclass = 'livingr'
-$loc = 'bdsm_livingroom'
-$loc_arg = ''
-$menu_loc = 'bdsm_livingroom'
-$menu_arg = ''
-menu_off = 0
-*clr & cla
-gs 'stat'
-'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/living.jpg"></center>'
-'Living room'
-act 'Go to the east wing landing':gt 'bdsm_landing', 'east'
-
---- bdsm_livingroom ---------------------------------
-

+ 124 - 152
locations/bdsm_mansion.qsrc

@@ -1,17 +1,38 @@
 # bdsm_mansion
-if $ARGS[0] = 'Hos':
+
+!!{variables for BDSM mansion
+	bdsmclub['unlocked'] = 1 - club unlocked
+	bdsmclub['intro'] = 1 - intro interview complete
+	bdsmclub['subtraining'] - sub training counter
+	bdsmclub['domtraining'] - dom training counter
+	bdsmclub['annatraining'] = 1 - bypass train if you have been trained by Anna
+	bdsmclub['training_daystart'] = daystart - check to stop further training on same day
+	bdsmclub['payday'] = daystart - subscription paid for dom access due every 30 days
+	$bdsmclub['role'] = 'sub' or 'dom' - access used and maintained during that visit as either a sub or a dom
+}
+
+if $ARGS[0] = 'taxi':
+	$loc_arg = 'start'
+	$loc = 'bdsm_mansion'
+	$location_type = 'public_outdoors'
+	$menu_loc = 'bdsm_mansion'
+	$menu_arg = 'start'
+	menu_off = 0
 	*clr & cla
-	menu_off = 1
-	minut += 10
-	lesbiday = daystart
-	BDSMClub = 1
-	gs 'drugs', 'alcohol', 'wine'
+	minut += 5
 	gs 'stat'
-	'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/hosjaika.jpg"></center>'
-	'After a few visits to your Mistress you are getting a little closer. Seeing her this evening, you catch her a little tipsy. Instead of already familiar perversions, you just sit in the kitchen and drink wine, talking about life. In conversation, the Mistress mentions a BDSM club. Sounds interesting, you and the Mistress pour glass after glass and slowly you gather details from her. Turns out, the city has an elite BDSM-club, and the missus is in it. After much persuasion, she gives you a business card – a piece of cardboard with three-dimensional logo without inscriptions, and explains how to get to the Club.'
-	act 'Leave':gt 'city_residential'
+	'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/club.jpg"></center>'
+	if hour < 16 and hour > 2:
+		bdsmclub['unlocked'] = 1
+		'The taxi brings you in a gated community outside of town and drops you off at the closed wrought iron gate. You attempt to enter the secret club but the guard tells you it is closed. You show your card and he tells you to come back after 16:00.'
+		act 'Leave':gt 'city_suburbs', 'start'
+	else
+		'The taxi brings you in a gated community outside of town and drops you off at the closed wrought iron gate. From the booth comes a guard, you show him the business card. Without saying anything, he opens the gate and points you towards the door. You walk alone a marble tiled walkway past the neatly clipped shrubs and flower beds. An other guard meets you, and leads you into the mansion through the main door.'
+		act 'Enter club':gt 'bdsm_mansion', 'intro'
+	end
 end
 
+
 if $ARGS[0] = 'start':
 	$loc_arg = 'start'
 	$loc = 'bdsm_mansion'
@@ -20,150 +41,106 @@ if $ARGS[0] = 'start':
 	$menu_arg = 'start'
 	menu_off = 0
 	*clr & cla
-	minut += 10
+	minut += 5
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/club.jpg"></center>'
-	if BDSMtaxi = 1 and BDSMmeet = 0:
-		if hour < 16 and hour > 2:
-			'The taxi brings you in a gated community outside of town and drops you off at the closed wrought iron gate. You attempt to enter the secret club but the guard tells you it is closed. You show your card and he tells you to come back after 16:00.'
-			act 'Leave':gt 'city_suburbs', 'start'
-		else
-			'The taxi brings you in a gated community outside of town and drops you off at the closed wrought iron gate. From the booth comes a guard, you show him the business card. Without saying anything, he opens the gate and points you in the direction. You walk to a marble tiled walkway past the neatly clipped shrubs and flower beds. An other guard meets you, and leads you into the mansion through an inconspicuous side door.'
-			act 'Enter club':gt 'bdsm_mansion', 'in'
-		end
-	elseif BDSMday = daystart and hour > 16 or hour < 2:
-		act 'Return to the club':gt 'bdsm_mansion', 'start'
-	elseif BDSMClubIn = 1:
+	'You are standing a large mansion in the suburbs of St Petersberg.'
+	if bdsmclub['unlocked'] = 1:
+		'You know this to be a BDSM club for rich people and you have access.'
+		act 'Go to the elite settlement':gt 'city_suburbs', 'start'
 		if hour < 16 and hour > 2:
-			'You are standing outside the BDSM club but it is closed until 16:00.'
+			*nl
+			'The club is closed until 16:00.'
 			act 'Leave':gt 'city_suburbs', 'start'
 		else
-			'You are standing outside the BDSM club which is currently open.'
-			act 'Leave':gt 'city_suburbs', 'start'
-			if $BDSMrole ! '':
-				act 'Enter the club':gt 'bdsm_mansion', 'start'
-			else
-				act 'Enter the club':BDSMday = daystart & gt 'bdsm_hallway', 'foyer'
-			end
-		end
-	elseif BDSMmeet = 1:
-		if $BDSMrole = 's' and ($clothingworntype ! 'gm_maid' or PCloStyle2 ! 1):
-			'You are not wearing a maid uniform or suitable fetish wear and security refuse you entry.'
-		else
-			if $BDSMrole = 's':
-				gt 'bdsm_training', 'start'
-			else
-				gt 'bdsm_training', 'd_start'
+			if bdsmclub['training_daystart'] ! daystart:
+				if bdsmclub['subtraining'] < 3:
+					act 'Get submissive training': gt 'bdsm_training', 'sub'
+				end
+				if bdsmclub['domtraining'] < 1:
+					if bdsmclub['payday'] + 30 > daystart:
+						act 'Get Dominant training': gt 'bdsm_training', 'dom'
+					else
+						act 'Get Dominant training (unavailable until subscription is paid)': gt 'bdsm_mansion', 'start'
+					end
+				end
+				act 'Enter the club':gt 'bdsm_hallway', 'foyer'
 			end
 		end
-	elseif BDSMmeet < 4:
-		gt 'bdsm_training', 'start'
+		gs 'taxi'		
+	else
+		act 'Go to the elite settlement':gt 'city_suburbs', 'start'
 	end
-
-	gs 'taxi'
-	act 'Elite settlement':gt 'city_suburbs', 'start'
 end
 
-if $ARGS[0] = 'in':
+if $ARGS[0] = 'intro':
 	*clr & cla
 	menu_off = 1
-	BDSMmeet += 1
-	BDSMday = daystart
+	bdsmclub['intro'] = 1
+	bdsmclub['training_daystart'] = daystart
+	gs 'stat'
+	*clr & cla
+	minut += 10
 	gs 'stat'
-	if BDSMmeet = 1:
+	'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/1_1.jpg"></center>'
+	'You''re standing in an office, at a table in front of you sits a woman in a strict business suit. Her strict gaze as looks right through you. You show her the card, she briefly says.'
+	'"Candidate? Passport."'
+	'Your hand trembles as you reach out your passport.'
+	'The woman points you to a chair, turns to the computer and starts clicking on the keys. She nods a few times, but says nothing. Then takes the phone and speaks to someone called Vladimir Viktorovich, discussing you. "There''s candidacy, but a bit young, can you check and sort the paperwork? She hangs up, after a few minutes from the office comes a strapping man in a perfectly fitting suit and glasses with gold rim. He says, "Hello." And sits down next to you.'
+	'"What''s your name? <<$pcs_nickname>>? Fine. How old are you?"'
+	'You answer the questions.'
+	'"Tell me, are you sure you want this?"'
+	'You understand, all of the questions he is asking and why.'
+	'"Sure!" You tell him firmly.'
+	'"Well... everything here seems to be in order, there are no issues. Let''s sign some papers. A mere formality, to formally record, that you have grasped everything.'
+	'The man puts a sheet of paper on the table.'
+	'"Read aloud and sign."'
+	'You take the sheet and read "The application for voluntary informed consent" a long, binding document filled with legal terms, confirming your consent to voluntarily participate in actions of a sexual nature, which may be humiliating or degrading in nature and be accompanied by mild corporal punishment. You are not a lawyer, but you understand, this covers them if something goes wrong and takes every step to prevent that.'
+	'"I agree."'
+	'"Well," the woman puts her hands together and looks at you. Due to the nature of this club I have to carry out a visual inspection to confirm physical suitability.'
+	'"I do not know," you shrug. "What does that mean?"'
+	'"Simple you remove all your clothing and I have a good look, its a perk of the job. Besides we record this interview and it helps discourage talk about the club reaching people it should not."'
+	act 'Hesitate':
 		*clr & cla
 		minut += 10
-		$BDSMrole = ''
+		bdsmclub['intro'] = 1
 		gs 'stat'
-		'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/1_1.jpg"></center>'
-		'You''re standing in an office, at a table in front of you sits a woman in a strict business suit. Her strict gaze as looks right through you. You show her the card, she briefly says.'
-		'"Candidate? Passport."'
-		'Your hand trembles as you reach out your passport.'
-		'The woman points you to a chair, turns to the computer and starts clicking on the keys. She nods a few times, but says nothing. Then takes the phone and speaks to someone called Vladimir Viktorovich, discussing you. "There''s candidacy, but a bit young, can you check and sort the paperwork? She hangs up, after a few minutes from the office comes a strapping man in a perfectly fitting suit and glasses with gold rim. He says, "Hello." And sits down next to you.'
-		'"What''s your name? <<$pcs_nickname>>? Fine. How old are you?"'
-		'You answer the questions.'
-		'"Tell me, are you sure you want this?"'
-		'You understand, all of the questions he is asking and why.'
-		'"Sure!" You tell him firmly.'
-		'"Well... everything here seems to be in order, there are no issues. Let''s sign some papers. A mere formality, to formally record, that you have grasped everything.'
-		'The man puts a sheet of paper on the table, take a videocamera from the draw and points it at you and clicks the button.'
-		'"Read aloud and sign."'
-		'You take the sheet and read "The application for voluntary informed consent" a long, binding document filled with legal terms, confirming your consent to voluntarily participate in actions of a sexual nature, which may be humiliating or degrading in nature and be accompanied by mild corporal punishment. You are not a lawyer, but you understand, this covers them if something goes wrong and takes every step to prevent that.'
-		'"I agree."'
-		'"Well," the woman puts her hands together and looks at you. Who do you want to be? Top or bottom?'
-		'"I do not know," you shrug. "What does that mean?"'
-		'"Dominant or submissive?"'
-		act 'Submissive':
+		'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r1_2.jpg"></center>'
+		'The woman''s eyes light up. She stands up behind the desk and orders you.'
+		'"Stand up!"'
+		'You jump, than understand, why you did. The imperious voice of this Lady holds you in awe.'
+		'"Undress!"'
+		'"But..."'
+		'"Undress, now! Or I''ll have security do it for you!" She has her hand on the table, her finger hovering over a small red button which you have to assume will summon the security guard.'
+		'You look to Vladimir you were just talking to, but he just stands there, expressionless. You undress.'
+		'"Sign!"'
+		'You sign the document. The man places the paper in a folder and leaves.'
+		'"Listen carefully..."'
+		act 'Listen':
 			*clr & cla
-			minut += 10
-			$BDSMrole = 's'
-			gs 'stat'
-			'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/r<<BDSMmeet>>_2.jpg"></center>'
-			'The woman''s eyes light up. She stands up behind the desk and orders you.'
-			'"Stand up!"'
-			'You jump, than understand, why you did. The imperious voice of this Lady holds you in awe.'
-			'"No sitting lower in the presence of top. Understood?"'
-			'"Yes."'
-			'"Wrong! Try again!"'
-			'"Yes, Mistress."'
-			'The woman nods. "Undress!"'
-			'"But..."'
-			'"Undress, now! Or I''ll have security do it for you!" Mistress has her hand on the table, her finger hovering over a small red button which you have to assume will summon the security guard.'
-			'You look to the man you were just talking to, but he just stands there, expressionless. You undress.'
-			'"Sign!"'
-			'You sign the document. The man places the paper in a folder.'
-			'"Listen carefully..."'
-			'She explains to you, that the club costs 30,000 <b>₽</b> registration, a slave has free entry but must comply with any requests made of them. Failure to do so can result in your registration being revoked. If the slave is well behaved there may be additional tasks they can carry out to earn some more money.'
-			'Untrained slaves are not allowed in the Mansion, you will require training. You''ll have to report to me for that, I''m going to enjoy it.'
-			'"Come back when you are ready for training. Be clean, have an enema. You must own a maid outfit, so you will be wearing it. Everything clear?'
-			'"But... what if I don''t have a maid outfit?..." You whisper.'
-			'"Find a branch of G & M and buy one, and don''t forget to bring the 30 thousand <b>₽</b> registration fee. We are not a charitable organization. But the main thing – do not talk. We have important clients and don''t need advertising so do not tell anyone about us. Everything clear?"'
-			'"Clear... Mistress..."'
-			'As you are leaving you think, <<$OpenInnerThought>>"Where will I get the money for the down payment."<<$CloseInnerThought>>'
-			act 'Leave':gt 'bdsm_mansion', 'start'
-		end
-		gs 'willpower', 'misc', 'resist', 'hard'
-		if will_cost <= pcs_willpwr:
-			act 'Dominant (<<will_cost>> Willpower)':
-				*clr & cla
-				minut += 10
-				$BDSMrole = 'd'
-				gs 'willpower', 'misc', 'resist', 'hard'
-				gs 'willpower', 'pay', 'resist'
-				gs 'stat'
-				!'<center><img <<$set_imgh>> src="images/bdsm_club/<<$BDSMrole>><<BDSMmeet>>_2.jpg"></center>'
-				'The woman sighs disappointedly.'
-				'"Pity, we are short on subs."'
-				'"There is a registration fee of 30,000 <b>₽</b>, then there is a monthly fee of 15,000 <b>₽</b> with your first month free. You should wear nice clothing, don''t want to get mistaken for staff or a sub."'
-				'"That seems reasonable" You reply.'
-				'"If you find a submissive and come together, then they can earn you tips. Alternatively if you want to change things up then you could visit as a sub, for that there is no need to have your monthly fee paid but you must be dressed as a maid or in submissive fetish wear. You would need to do the sub training with me too." She licks her lips as she says this.'
-				act 'Thanks but not my thing':
-					'"Of course, I am simply presenting the option"'
-					gs 'bdsm_mansion', 'in2'
-				end
-				act 'We''ll see':
-					'She smiles and her hand goes to her thigh, clearly she finds being a Dom arousing.'
-					'"Any time you want sub training you just let me know."'
-					gs 'bdsm_mansion', 'in2'
-				end
+			'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/1_1.jpg"></center>'
+			'She explains that there are two ways to visit the club, either as a submissive where you will be subject to sexualization and humiliation, but its free. Or you can pay a monthly fee of 10,000<b>₽</b> and visit as a Dominant, in this case you will be able to sexualize and humiliate the submissives.'
+			'For each role there is something of a dress code in that subs must dress either in submissive fetishwear, as a maid or be naked. A dominant simply has to be dressed in expensive quality clothing.'
+			'There is also a required training aspect.'
+			if bdsmclub['annatraining'] = 1:
+				'You tell Mistress Electra that you have been training with Anna'
+				'"OMG! She told me to look out for you and I clean forgot. I''m so sorry, I''ll mark your training for both roles as complete."'
+				'Due to some contract law you can''t use the club today but you will be able to from tomorrow.'
+			else
+				'Before you can use the club you must either have paid your monthly subscription and I will run you through the rules for Dominants.'
+				'Or You can do my complimentary submissive training over 4 days of your choice (not Tuesdays or Thursdays) and then you can enjoy the free submissive experience.'
 			end
-		else
-			act 'Dominant (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
+			'"When you arrive at the club you must go to the dressing room and change into suitable clothing for your role, that role remains while in the club but for those wanting to experience all that we have to offer you can switch my changing into the appropriate clothing in the dressing room, but remember you cannot enter as a Dom unless your subscription is paid in advance."'
+			'"We are do here, you may leave."'
+			act 'Leave': gt 'bdsm_mansion', 'start'
 		end
 	end
 end
 
-if $ARGS[0] = 'in2':
-	'"Before you can enter the club there are rules and guidelines that even our Doms must follow, so you will have some orientation under the guidance of an experienced mistress." She points at herself, "The cost of this is covered by your registration fee. If you are satisfied, sign this document."'
-	'You sign the document. The man places the paper in a folder.'
-	'As you are leaving, you think, <<$OpenInnerThought>>"Where will I get the money for the registration fee and how can I persuade someone to come here as a sub."<<$CloseInnerThought>>'
-	act 'Leave':gt 'bdsm_mansion', 'start'
-end
-
-if $ARGS[0] = 'start':
+if $ARGS[0] = 'office':
 	*clr & cla
 	$menu_loc = 'bdsm_mansion'
-	$menu_arg = 'start'
+	$menu_arg = 'office'
 	menu_off = 0
 	gs 'stat'
 	if week = 2 or week = 4:
@@ -173,28 +150,25 @@ if $ARGS[0] = 'start':
 		'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/1_1.jpg"></center>'
 		'You enter the club and Mistress Elektra is sitting at her desk overseeing admissions.'
 	end
-	if $BDSMrole = 's' or BDSMpayDay < daystart + 30:
-		act 'Enter the club':gt 'bdsm_hallway', 'foyer'
+	act 'Return to dressing room':gt 'bdsm_dressing'
+	if money < 10000 and karta  < 10000:
+		*nl
+		'You cannot afford the 10,000 rubes required to extend your club membership.'
 	else
-		act 'Leave':gt 'bdsm_mansion', 'start'
-		if money < 10000 and karta  > 10000:
-			'You cannot afford the 10,000 rubes required to extend your club membership.'
-		else
-			if money > 10000:
-				act 'Pay 10,000 <b>₽</b> to extend your membership and enter the club':
-					BDSMpayDay = daystart
-					BDSMday = daystart
-					money -= 10000
-					gt 'bdsm_hallway', 'foyer'
-				end
+		if money > 10000:
+			act 'Pay 10,000 <b>₽</b> to extend your membership and return to the dressing room':
+				bdsmclub['payday'] = daystart
+				bdsmclub['training_daystart'] = daystart
+				money -= 10000
+				gt 'bdsm_dressing'
 			end
-			if karta > 10000:
-				act 'Pay 10,000 <b>₽</b> to extend your membership and enter the club':
-					BDSMpayDay = daystart
-					BDSMday = daystart
-					money -= 10000
-					gt 'bdsm_hallway', 'foyer'
-				end
+		end
+		if karta > 10000:
+			act 'Pay 10,000 <b>₽</b> to extend your membership and return to the dressing room':
+				bdsmclub['payday'] = daystart
+				bdsmclub['training_daystart'] = daystart
+				money -= 10000
+				gt 'bdsm_dressing'
 			end
 		end
 	end
@@ -214,12 +188,10 @@ if $ARGS[0] = 'reception':
 		'<center><img <<$set_imgh>> src="images/locations/city/suburb/bdsm_club/1_1.jpg"></center>'
 		'You go to the reception, Mistress Elektra is sitting at her desk looking a little bored.'
 	end
-	act 'Go to west wing hall': gt 'bdsm_hallway', 'west'
+	act 'Go to the Foyer': gt 'bdsm_hallway', 'foyer'
 	act 'Go to the garage': gt 'bdsm_garden', 'garage'
 end
 
-if $ARGS[0] = 'office':
-end
 
 --- bdsm_mansion ---------------------------------
 

+ 3 - 1
locations/bedrPar.qsrc

@@ -182,7 +182,9 @@ if $ARGS[0] = '' or $ARGS[0] = 'start':
 				elseif locat['Anya'] = 26 or (locat['Anya'] = 1 and locat['Anya_party_day'] >= daystart - 1):
 					if sisboypartyQW = 1: sisboypartyQW = 2
 					if sisboyparty = -1: sisboyparty = 1
-					'A drunken <a href="exec:gt ''sistersleep'', ''drunk_after_party''">Anya</a> is sound asleep in her bed.'
+					'A drunken Anya is sound asleep in her bed.'
+					!! In the future should point to 'sistersleep', 'drunk_after_party' when that content is added again
+					!! 'A drunken <a href="exec:gt ''sistersleep'', ''drunk_after_party''">Anya</a> is sound asleep in her bed.'
 				end
 			end
 		end

+ 2 - 2
locations/beg.qsrc

@@ -21,7 +21,7 @@ if $ARGS[0] = 'start':
 	end
 end
 
-if begsec > 0:
+if runnerQW['joined_team'] > 0:
 	act 'Go to your coach':
 		cla
 		'Igor Yurisovich is your coach, a man with a rough voice who never seems to gets tired of motivational one-liners. "The only one who can keep you from winning is you" is his current favorite.'
@@ -31,7 +31,7 @@ if begsec > 0:
 			'"You have to train harder, girl. With a time like this, you would come in dead last. Hell, you wouldn''t even qualify for the main race! If you want to be better, you have to watch your diet, maybe go to the banya after training, but most importantly: Practice, practice, practice!"'
 
 			act 'Leave':gt 'beg', 'start'
-		elseif pcs_run >= 50 and razradbegEG = 0:
+		elseif pcs_run >= 50 and runnerQW['champ_gold'] = 0:
 			'Despite looking occupied with the other trainees, Igor Yurisovich not only watched your practice runs but timed them as well. And while you''re pretty sure he is physically incapable of looking excited or even content, you think that he looks a little less grim than usual as he looks at you.'
 			'"You''re doing fine, girl. Better than fine; you could have a great future in athletics if you play your cards right. If you keep working hard, you might even have it in you to become European champion, perhaps more. But remember, girl, the key to victory is your spirit: If you have the right mindset, you can do anything."'
 			

+ 101 - 101
locations/beg1.qsrc

@@ -5,45 +5,45 @@ if $ARGS[0] = 'start':
 	menu_off = 1
 	gs 'stat'
 	minut += 30
-	kolsorev += 1
-	razdtumbler = 0
-	begmon = month
-	begminus = 0
+	runnerQW['races_ran'] += 1
+	!razdtumbler = 0	& !these do not appear anywhere else
+	!begmon = month		& !these do not appear anywhere else
+	runnerQW['bmi_penalty'] = 0
 
-	if razradbeg = 0:
+	if runnerQW['prof_stage'] = 0:
 		'You''re registered for an amateur''s race. The results will determine if you join the club''s junior squad and entry in the semi-professional runner circuit.'
 
 		act 'Go to the track field.':gt 'beg1', 'br'
-	elseif razradbeg = 1:
+	elseif runnerQW['prof_stage'] = 1:
 		'As a member of your club''s junior squad, you''re registered for a semi-professional''s race. The results will determine if you join the veteran squad.'
 
 		act 'Go to the track field.':gt 'beg1', 'kms'
-	elseif razradbeg = 2:
+	elseif runnerQW['prof_stage'] = 2:
 		'As a member of your club''s veteran squad, you''re registered for a semi-professional''s race. The results will determine your entry in the professional runner circuit.'
 
 		act 'Go to the track field.':gt 'beg1', 'ross'
-	elseif razradbeg >= 3 and razradbeg < 14:
+	elseif runnerQW['prof_stage'] >= 3 and runnerQW['prof_stage'] < 14:
 		'As one of your club''s best athletes, you can take part in a series of qualifying races in the professional circuit. Winning 9 out of 11 would qualify you for the St. Petersburg Track Championship, that is celebrated seasonally.'
 		nl
-		'Qualifying Races Attended: <<razradbeg - 3>>'
-		'Top 3 finishes in Qualifying Races: <<razradbegK>>'
+		'Qualifying Races Attended: <<runnerQW[''prof_stage''] - 3>>'
+		'Top 3 finishes in Qualifying Races: <<runnerQW[''qualifiers'']>>'
 
 		act 'Go to the stadium':gt 'beg1', 'kval'
-	elseif razradbeg = 14 and razradbegK < 9:
+	elseif runnerQW['prof_stage'] = 14 and runnerQW['qualifiers'] < 9:
 		cla
-		razradbegK = 0
-		razradbeg = 3
+		runnerQW['qualifiers'] = 0
+		runnerQW['prof_stage'] = 3
 		'You were unable to qualify for the St. Petersburg Championship.'
 
 		! WD: Argument is 'dressing room'
 		act 'Go back to the dressing room':gt 'fit', 'dressing_room'
-	elseif razradbeg = 14 and razradbegK >= 9:
+	elseif runnerQW['prof_stage'] = 14 and runnerQW['qualifiers'] >= 9:
 		cla
-		razradbegK = 0
-		razradbeg = 3
+		runnerQW['qualifiers'] = 0
+		runnerQW['prof_stage'] = 3
 		'You qualified for the <<year>> St. Petersburg Track Championship, taking place this season in the Petrovsky Stadium.'
 
-		act 'Go to the stadium':gt 'beg1', 'evro'
+		act 'Go to the stadium': gt 'beg1', 'evro'
 	end
 end
 
@@ -51,13 +51,13 @@ if $ARGS[0] = 'br':
 	cla
 	gs 'exercise', 'tier2', 30, 'run'
 
-	begminus = 0
+	runnerQW['bmi_penalty'] = 0
 	if pcs_bmi > 25:
-		begminus = ((pcs_bmi - 25)*4)
+		runnerQW['bmi_penalty'] = ((pcs_bmi - 25)*4)
 	elseif pcs_bmi < 20:
-		begminus = ((20 - pcs_bmi)*(20-pcs_bmi))
+		runnerQW['bmi_penalty'] = ((20 - pcs_bmi)*(20-pcs_bmi))
 	end
-	begresult = pcs_run - begminus
+	runnerQW['result'] = pcs_run - runnerQW['bmi_penalty']
 
 	'<center><img <<$set_imgh>> src="images/locations/city/citycenter/gym/race/ready.jpg"></center>'
 	'Your discipline: The Women''s 400 Meter Dash.'
@@ -73,35 +73,35 @@ if $ARGS[0] = 'br':
 	'Go! - You''re away!'
 	wait 725
 
-	if begresult < 5:
+	if runnerQW['result'] < 5:
 		grupvalue[2] -= 3
 		'Sadly, you barely managed to reach the finish line, walking the last 100 meters. Of course, you came in last - but you also made a bit of a fool of yourself.'
-	elseif begresult < 10:
+	elseif runnerQW['result'] < 10:
 		grupvalue[2] -= 2
 		'You performed well for an amateur but still only came in last (8th place).'
-	elseif begresult < 15:
+	elseif runnerQW['result'] < 15:
 		grupvalue[2] -= 1
 		'You fought hard, but managed to only take the penultimate place (7th place).'
-	elseif begresult < 20:
+	elseif runnerQW['result'] < 20:
 		'You fought hard, but only managed to take 6th place.'
-	elseif begresult < 35:
+	elseif runnerQW['result'] < 35:
 		grupvalue[2] += 1
 		'You fought hard, but only managed to take 5th place.'
-	elseif begresult < 40:
+	elseif runnerQW['result'] < 40:
 		grupvalue[2] += 2
 		'You fought hard, but only managed to take 4th place.'
-	elseif begresult < 45:
+	elseif runnerQW['result'] < 45:
 		grupvalue[2] += 3
 		gs 'fame', 'city', 'running', 14
-		bronzebeg += 1 & money += 150 & 'You fought hard and managed to take 3rd place, earning a prize: You receive a bronze badge and a prize of 150 <b>₽</b>'
-	elseif begresult < 50:
+		runnerQW['bronze_medals'] += 1 & money += 150 & 'You fought hard and managed to take 3rd place, earning a prize: You receive a bronze badge and a prize of 150 <b>₽</b>'
+	elseif runnerQW['result'] < 50:
 		grupvalue[2] += 4
 		gs 'fame', 'city', 'running', rand(14,15)
-		silverbeg += 1 & money += 300 & 'You fought hard and managed to take 2nd place, earning a prize: You receive a silver badge and a prize of 300 <b>₽</b>'
+		runnerQW['silver_medals'] += 1 & money += 300 & 'You fought hard and managed to take 2nd place, earning a prize: You receive a silver badge and a prize of 300 <b>₽</b>'
 	else
 		grupvalue[2] += 5
 		gs 'fame', 'city', 'running', rand(14,16)
-		razradbeg = 1 & goldbeg += 1 & money += 600 & 'You fought hard and managed to take 1st place! You receive a gold badge, a prize of 600 <b>₽</b> and are now part of your club''s junior squad, performing at the semi-professional level.'
+		runnerQW['prof_stage'] = 1 & runnerQW['gold_medals'] += 1 & money += 600 & 'You fought hard and managed to take 1st place! You receive a gold badge, a prize of 600 <b>₽</b> and are now part of your club''s junior squad, performing at the semi-professional level.'
 	end
 
 	act 'Leave':gt 'fit', 'dressing_room'
@@ -111,13 +111,13 @@ if $ARGS[0] = 'kms':
 	cla
 	gs 'exercise', 'tier2', 30, 'run'
 
-	begminus = 0
+	runnerQW['bmi_penalty'] = 0
 	if pcs_bmi > 25:
-		begminus = ((pcs_bmi - 25)*4)
+		runnerQW['bmi_penalty'] = ((pcs_bmi - 25)*4)
 	elseif pcs_bmi < 20:
-		begminus = ((20 - pcs_bmi)*(20-pcs_bmi))
+		runnerQW['bmi_penalty'] = ((20 - pcs_bmi)*(20-pcs_bmi))
 	end
-	begresult = pcs_run - begminus
+	runnerQW['result'] = pcs_run - runnerQW['bmi_penalty']
 
 	'<center><img <<$set_imgh>> src="images/locations/city/citycenter/gym/race/ready.jpg"></center>'
 	'Your discipline: The Women''s 400 Meter Dash.'
@@ -133,38 +133,38 @@ if $ARGS[0] = 'kms':
 	'Go! - You''re away!'
 	wait 725
 
-	if begresult < 20:
+	if runnerQW['result'] < 20:
 		grupvalue[2] -= 2
-		razradbeg = 0 & 'But you barely managed to reach the finish line, walking the last 100 meters. Of course, you came in last - but you also made of a fool of yourself. People on the ranks seem to be asking themselves how you even managed to make it this far. Maybe they are right? Your performance is so atrocious that the coach decides to return you to the amateur rank.'
-	elseif begresult < 25:
+		runnerQW['prof_stage'] = 0 & 'But you barely managed to reach the finish line, walking the last 100 meters. Of course, you came in last - but you also made of a fool of yourself. People on the ranks seem to be asking themselves how you even managed to make it this far. Maybe they are right? Your performance is so atrocious that the coach decides to return you to the amateur rank.'
+	elseif runnerQW['result'] < 25:
 		grupvalue[2] -= 1
 		'You fought hard but still have a lot of work ahead of you if you want to be better than your competition. You didn''t manage to reach any classification.'
-	elseif begresult < 30:
+	elseif runnerQW['result'] < 30:
 		'You fought hard but still have a lot of work ahead of you if you want to be better than your competition. You only came in last (8th place).'
-	elseif begresult < 35:
+	elseif runnerQW['result'] < 35:
 		'You fought hard, but managed to only take the penultimate place (7th place).'
-	elseif begresult < 40:
+	elseif runnerQW['result'] < 40:
 		grupvalue[2] += 1
 		'You fought hard, but only managed to take 6th place.'
-	elseif begresult < 45:
+	elseif runnerQW['result'] < 45:
 		grupvalue[2] += 2
 		'You fought hard, but only managed to take 5th place.'
-	elseif begresult < 50:
+	elseif runnerQW['result'] < 50:
 		grupvalue[2] += 3
 		gs 'fame', 'city', 'running', 14
 		'You fought hard, but only managed to take 4th place.'
-	elseif begresult < 55:
+	elseif runnerQW['result'] < 55:
 		grupvalue[2] += 4
 		gs 'fame', 'city', 'running', rand(14,15)
-		bronzebeg += 1 & money += 300 & 'You fought hard and managed to take 3rd place, earning a prize: You get a bronze medal and a prize of 300 <b>₽</b>'
-	elseif begresult < 60:
+		runnerQW['bronze_medals'] += 1 & money += 300 & 'You fought hard and managed to take 3rd place, earning a prize: You get a bronze medal and a prize of 300 <b>₽</b>'
+	elseif runnerQW['result'] < 60:
 		grupvalue[2] += 5
 		gs 'fame', 'city', 'running', rand(14,16)
-		silverbeg += 1 & money += 600 & 'You fought hard and managed to take 2nd place, earning a prize: You get a silver medal and a prize of 600 <b>₽</b>'
+		runnerQW['silver_medals'] += 1 & money += 600 & 'You fought hard and managed to take 2nd place, earning a prize: You get a silver medal and a prize of 600 <b>₽</b>'
 	else
 		grupvalue[2] += 6
 		gs 'fame', 'city', 'running', rand(14,17)
-		razradbeg = 3 & goldbeg += 1 & money += 1000 & 'You fought hard and managed to take 1st place! You get a gold medal, a prize of 1,000 <b>₽</b> and are now part of your club''s veteran squad, performing at the semi-professional level.'
+		runnerQW['prof_stage'] = 3 & runnerQW['gold_medals'] += 1 & money += 1000 & 'You fought hard and managed to take 1st place! You get a gold medal, a prize of 1,000 <b>₽</b> and are now part of your club''s veteran squad, performing at the semi-professional level.'
 	end
 	act 'Leave':gt 'fit', 'dressing_room'
 end
@@ -173,13 +173,13 @@ if $ARGS[0] = 'ross':
 	cla
 	gs 'exercise', 'tier2', 30, 'run'
 
-	begminus = 0
+	runnerQW['bmi_penalty'] = 0
 	if pcs_bmi > 25:
-		begminus = ((pcs_bmi - 25)*4)
+		runnerQW['bmi_penalty'] = ((pcs_bmi - 25)*4)
 	elseif pcs_bmi < 20:
-		begminus = ((20 - pcs_bmi)*(20-pcs_bmi))
+		runnerQW['bmi_penalty'] = ((20 - pcs_bmi)*(20-pcs_bmi))
 	end
-	begresult = pcs_run - begminus
+	runnerQW['result'] = pcs_run - runnerQW['bmi_penalty']
 
 	'<center><img <<$set_imgh>> src="images/locations/city/citycenter/gym/race/ready.jpg"></center>'
 	'Your discipline: The Women''s 400 Meter Dash.'
@@ -195,38 +195,38 @@ if $ARGS[0] = 'ross':
 	'Go! - You''re away!'
 	wait 725
 
-	if begresult < 30:
-		razradbeg = 1 & 'But you barely managed to reach the finish line, walking the last 100 meters. Of course, you came in last - but you also made of a fool of yourself. People on the ranks seem to be asking themselves how you even managed to make it this far. Maybe they are right? Your performance is so atrocious that the coach decides to return you to the junior rank.'
-	elseif begresult < 35:
+	if runnerQW['result'] < 30:
+		runnerQW['prof_stage'] = 1 & 'But you barely managed to reach the finish line, walking the last 100 meters. Of course, you came in last - but you also made of a fool of yourself. People on the ranks seem to be asking themselves how you even managed to make it this far. Maybe they are right? Your performance is so atrocious that the coach decides to return you to the junior rank.'
+	elseif runnerQW['result'] < 35:
 		'You fought hard but still have a lot of work ahead of you if you want to be better than your competition. You didn''t manage to reach any classification.'
-	elseif begresult < 40:
+	elseif runnerQW['result'] < 40:
 		'You fought hard but still have a lot of work ahead of you if you want to be better than your competition. You only came in last (8th place).'
-	elseif begresult < 45:
+	elseif runnerQW['result'] < 45:
 		grupvalue[2] += 1
 		'You fought hard, but managed to only take the penultimate place (7th place).'
-	elseif begresult < 50:
+	elseif runnerQW['result'] < 50:
 		grupvalue[2] += 2
 		'You fought hard, but only managed to take 6th place.'
-	elseif begresult < 55:
+	elseif runnerQW['result'] < 55:
 		grupvalue[2] += 3
 		gs 'fame', 'city', 'running', 14
 		'You fought hard, but only managed to take 5th place.'
-	elseif begresult < 60:
+	elseif runnerQW['result'] < 60:
 		grupvalue[2] += 4
 		gs 'fame', 'city', 'running', rand(14,15)
 		'You fought hard, but only managed to take 4th place.'
-	elseif begresult < 65:
+	elseif runnerQW['result'] < 65:
 		grupvalue[2] += 5
 		gs 'fame', 'city', 'running', rand(14,16)
-		bronzebeg += 1 & money += 600 & 'You fought hard and managed to take 3rd place, earning a prize: You get a bronze medal and a prize of 600 <b>₽</b>'
-	elseif begresult < 70:
+		runnerQW['bronze_medals'] += 1 & money += 600 & 'You fought hard and managed to take 3rd place, earning a prize: You get a bronze medal and a prize of 600 <b>₽</b>'
+	elseif runnerQW['result'] < 70:
 		grupvalue[2] += 6
 		gs 'fame', 'city', 'running', rand(14,17)
-		silverbeg += 1 & money += 1000 & 'You fought hard and managed to take 2nd place, earning a prize: You get a silver medal and a prize of 1,000 <b>₽</b>'
+		runnerQW['silver_medals'] += 1 & money += 1000 & 'You fought hard and managed to take 2nd place, earning a prize: You get a silver medal and a prize of 1,000 <b>₽</b>'
 	else
 		grupvalue[2] += 7
 		gs 'fame', 'city', 'running', rand(14,18)
-		razradbeg = 3 & goldbeg += 1 & money += 1500 & 'You fought hard and managed to take 1st place! You get a gold medal, a prize of 1,500 <b>₽</b> and gain entry to the professional circuit.'
+		runnerQW['prof_stage'] = 3 & runnerQW['gold_medals'] += 1 & money += 1500 & 'You fought hard and managed to take 1st place! You get a gold medal, a prize of 1,500 <b>₽</b> and gain entry to the professional circuit.'
 	end
 	act 'Leave':gt 'fit', 'dressing_room'
 end
@@ -234,16 +234,16 @@ end
 if $ARGS[0] = 'kval':
 	cla
 	gs 'exercise', 'tier2', 30, 'run'
-	razradbeg += 1
+	runnerQW['prof_stage'] += 1
 	minut += 60
 
-	begminus = 0
+	runnerQW['bmi_penalty'] = 0
 	if pcs_bmi > 25:
-		begminus = ((pcs_bmi - 25)*4)
+		runnerQW['bmi_penalty'] = ((pcs_bmi - 25)*4)
 	elseif pcs_bmi < 20:
-		begminus = ((20 - pcs_bmi)*(20-pcs_bmi))
+		runnerQW['bmi_penalty'] = ((20 - pcs_bmi)*(20-pcs_bmi))
 	end
-	begresult = pcs_run - begminus
+	runnerQW['result'] = pcs_run - runnerQW['bmi_penalty']
 
 	'<center><img <<$set_imgh>> src="images/locations/city/citycenter/gym/race/ready.jpg"></center>'
 	'Your discipline: The Women''s 400 Meter Dash.'
@@ -260,40 +260,40 @@ if $ARGS[0] = 'kval':
 	'Go! - You''re away!'
 	wait 725
 
-	if begresult < 40:
+	if runnerQW['result'] < 40:
 		grupvalue[2] -= 1
-		razradbeg = 2 & razradbegK = 0 & 'But you barely managed to reach the finish line, walking the last 100 meters. Of course, you came in last - but you also made of a fool of yourself. People on the ranks seem to be asking themselves how you even managed to make it this far. Maybe they are right? Your performance is so atrocious that the coach decides to return you to the semi-professional rank.'
-	elseif begresult < 45:
+		runnerQW['prof_stage'] = 2 & runnerQW['qualifiers'] = 0 & 'But you barely managed to reach the finish line, walking the last 100 meters. Of course, you came in last - but you also made of a fool of yourself. People on the ranks seem to be asking themselves how you even managed to make it this far. Maybe they are right? Your performance is so atrocious that the coach decides to return you to the semi-professional rank.'
+	elseif runnerQW['result'] < 45:
 		'You fought hard but still have a lot of work ahead of you if you want to be better than your competition. You didn''t manage to reach any classification.'
-	elseif begresult < 50:
+	elseif runnerQW['result'] < 50:
 		'You fought hard but still have a lot of work ahead of you if you want to be better than your competition. You only came in last (8th place).'
-	elseif begresult < 55:
+	elseif runnerQW['result'] < 55:
 		grupvalue[2] += 2
 		'You fought hard, but managed to only take the penultimate place (7th place).'
-	elseif begresult < 60:
+	elseif runnerQW['result'] < 60:
 		grupvalue[2] += 3
 		gs 'fame', 'city', 'running', 14
 		'You fought hard, but only managed to take 6th place.'
-	elseif begresult < 65:
+	elseif runnerQW['result'] < 65:
 		grupvalue[2] += 4
 		gs 'fame', 'city', 'running', rand(14,15)
 		'You fought hard, but only managed to take 5th place.'
-	elseif begresult < 70:
+	elseif runnerQW['result'] < 70:
 		grupvalue[2] += 5
 		gs 'fame', 'city', 'running', rand(14,16)
 		'You fought hard, but only managed to take 4th place.'
-	elseif begresult < 75:
+	elseif runnerQW['result'] < 75:
 		grupvalue[2] += 6
 		gs 'fame', 'city', 'running', rand(14,17)
-		razradbegK += 1 & bronzebeg += 1 & money += 1000 & 'You fought hard and managed to take 3rd place, earning a prize. You get a bronze badge and a prize of 1,000 <b>₽</b>, but sadly, only the 1st place adds to your qualification for the European championship.'
-	elseif begresult < 80:
+		runnerQW['qualifiers'] += 1 & runnerQW['bronze_medals'] += 1 & money += 1000 & 'You fought hard and managed to take 3rd place, earning a prize. You get a bronze badge and a prize of 1,000 <b>₽</b>, but sadly, only the 1st place adds to your qualification for the European championship.'
+	elseif runnerQW['result'] < 80:
 		grupvalue[2] += 7
 		gs 'fame', 'city', 'running', rand(14,18)
-		razradbegK += 1 & silverbeg += 1 & money += 1500 & 'You fought hard and managed to take 2nd place, earning a prize. You get a silver medal and a prize of 1,500 <b>₽</b>, but sadly, only the 1st place adds to your qualification for the European championship.'
+		runnerQW['qualifiers'] += 1 & runnerQW['silver_medals'] += 1 & money += 1500 & 'You fought hard and managed to take 2nd place, earning a prize. You get a silver medal and a prize of 1,500 <b>₽</b>, but sadly, only the 1st place adds to your qualification for the European championship.'
 	else
 		grupvalue[2] += 8
 		gs 'fame', 'city', 'running', rand(14,19)
-		razradbegK += 1 & goldbeg += 1 & money += 2000 & 'You fought hard and managed to take 1st place! You get a gold medal, a prize of 2,000 <b>₽</b> and are one step closer to qualifying for the St. Petersburg Championship.'
+		runnerQW['qualifiers'] += 1 & runnerQW['gold_medals'] += 1 & money += 2000 & 'You fought hard and managed to take 1st place! You get a gold medal, a prize of 2,000 <b>₽</b> and are one step closer to qualifying for the St. Petersburg Championship.'
 	end
 	act 'Leave':gt 'fit', 'dressing_room'
 end
@@ -303,13 +303,13 @@ if $ARGS[0] = 'evro':
 	gs 'exercise', 'tier2', 30, 'run'
 	minut += 120
 
-	begminus = 0
+	runnerQW['bmi_penalty'] = 0
 	if pcs_bmi > 25:
-		begminus = ((pcs_bmi - 25)*4)
+		runnerQW['bmi_penalty'] = ((pcs_bmi - 25)*4)
 	elseif pcs_bmi < 20:
-		begminus = ((20 - pcs_bmi)*(20-pcs_bmi))
+		runnerQW['bmi_penalty'] = ((20 - pcs_bmi)*(20-pcs_bmi))
 	end
-	begresult = pcs_run - begminus
+	runnerQW['result'] = pcs_run - runnerQW['bmi_penalty']
 
 	'<center><img <<$set_imgh>> src="images/locations/city/citycenter/gym/race/ready.jpg"></center>'
 	'Your discipline: The Women''s 400 Meter Dash.'
@@ -326,57 +326,57 @@ if $ARGS[0] = 'evro':
 	'Go! - You''re away!'
 	wait 725
 
-	if begresult < 50:
+	if runnerQW['result'] < 50:
 		grupvalue[2] -= 1
-		razradbeg = 2 & razradbegK = 0 & 'But you barely managed to reach the finish line, walking the last 100 meters. Of course, you came in last - but you also made of a fool of yourself. People on the ranks seem to be asking themselves how you even managed to make it this far. Maybe they are right? Your performance is so atrocious that the coach decide to return you to the semi-proffessional rank.'
+		runnerQW['prof_stage'] = 2 & runnerQW['qualifiers'] = 0 & 'But you barely managed to reach the finish line, walking the last 100 meters. Of course, you came in last - but you also made of a fool of yourself. People on the ranks seem to be asking themselves how you even managed to make it this far. Maybe they are right? Your performance is so atrocious that the coach decide to return you to the semi-proffessional rank.'
 		gs 'fame', 'city', 'running', rand(14,19)
 		act 'Leave':gt 'fit', 'dressing_room'
-	elseif begresult < 55:
+	elseif runnerQW['result'] < 55:
 		'You fought hard but still have a lot of work ahead of you if you want to be better than your competition. You didn''t manage to reach any classification.'
 		gs 'fame', 'city', 'running', rand(15,21)
 		act 'Leave':gt 'fit', 'dressing_room'
-	elseif begresult < 60:
+	elseif runnerQW['result'] < 60:
 		gs 'fame', 'city', 'running', rand(16,23)
 		'You fought hard but still have a lot of work ahead of you if you want to be better than your competition. You only came in last (8th place).'
 		act 'Leave':gt 'fit', 'dressing_room'
-	elseif begresult < 65:
+	elseif runnerQW['result'] < 65:
 		grupvalue[2] += 1
 		gs 'fame', 'city', 'running', rand(18,25)
 		'You fought hard, but managed to only take the penultimate place (7th place).'
 		act 'Leave':gt 'fit', 'dressing_room'
-	elseif begresult < 70:
+	elseif runnerQW['result'] < 70:
 		grupvalue[2] += 2
 		gs 'fame', 'city', 'running', rand(20,25)
 		'You fought hard, but only managed to take 6th place.'
 		act 'Leave':gt 'fit', 'dressing_room'
-	elseif begresult < 75:
+	elseif runnerQW['result'] < 75:
 		grupvalue[2] += 3
 		gs 'fame', 'city', 'running', rand(25,50)
 		'You fought hard, but only managed to take 5th place.'
 		act 'Leave':gt 'fit', 'dressing_room'
-	elseif begresult < 80:
+	elseif runnerQW['result'] < 80:
 		grupvalue[2] += 4
 		gs 'fame', 'city', 'running', rand(50,100)
 		'You fought hard, but only managed to take 4th place.'
 		act 'Leave':gt 'fit', 'dressing_room'
-	elseif begresult < 85:
+	elseif runnerQW['result'] < 85:
 		grupvalue[2] += 6
 		gs 'fame', 'city', 'running', 'BronzeMedal'
-		razradbegEB += 1
+		runnerQW['champ_bronze'] += 1
 		money += 10000
 		'You fought hard and managed to take 3rd place, earning a prize. You get a bronze medal and a prize of 10,000 <b>₽</b>'
 		act 'Leave':gt 'fit', 'dressing_room'
-	elseif begresult < 90:
+	elseif runnerQW['result'] < 90:
 		grupvalue[2] += 8
 		gs 'fame', 'city', 'running', 'SilverMedal'
-		razradbegES += 1
+		runnerQW['champ_silver'] += 1
 		money += 15000
 		'You fought hard and managed to take 2nd place, earning a prize. You get a silver medal and a prize of 15,000 <b>₽</b>'
 		act 'Leave':gt 'fit', 'dressing_room'
 	else
 		grupvalue[2] += 10
 		gs 'fame', 'city', 'running', 'GoldMedal'
-		razradbegEG += 1
+		runnerQW['champ_gold'] += 1
 		money += 20000
 		'You fought hard and managed to take 1st place. You get a gold medal, a prize of 20,000 <b>₽</b> and are now the "St. Petersburg Track Champion"!'
 		act 'Continue': gt 'beg1', 'Family extension'

+ 73 - 70
locations/body.qsrc

@@ -20,7 +20,7 @@
 !!magf2bdo = flag for magic bust increase; 0, ready; 1, do it; 2, ask; 3, no
 !!mgf2bnocnt = used to count the number of times a bust increase was turned down and stop asking after 3
 !!magtarcup = set in the dream code as the target cup size 
-!!btwarn = used to flag if to display the gaining/losing weight message when bathing
+!!bodyVars['weight_warning'] = used to flag if to display the gaining/losing weight message when bathing
 !!salolast = used when doing a soft rest to control the cycling of the main code
 !!bodyresetflag = used to prevent a code chunk from firing on a soft or hard reset
 !!Image set variables
@@ -59,7 +59,7 @@ if $ARGS[0] = 'UpdateBodyMeasurement':
 	pcs_waist = (pcs_hips  * bodyVars['wratio']) / 100 + bodyVars['vofat']
 	pcs_band  = (pcs_waist * bodyVars['bratio']) / 100 + bodyVars['vofat']
 	pcs_bust  = (pcs_waist * bodyVars['bratio']) / 100 + pcs_mass['bust'] + bodyVars['bust_magic'] + bodyVars['bust_silicone'] + max(-10, min(bodyVars['bust_other'], 10))
-	pcs_butt  = (pcs_hips  * 10    ) / 100 + bodyVars['butt_bonus'] + bodyVars['butt_silicone'] + bodyVars['butt_cheat'] + pcs_butt_tr + max(-5, min(bodyVars['butt_other'], 5))
+	pcs_butt  = min(pcs_mass['butt'], 50) + bodyVars['butt_bonus'] + bodyVars['butt_silicone'] + bodyVars['butt_cheat'] + pcs_butt_tr + max(-10, min(bodyVars['butt_other'], 10))
 
 	!! pcs_cupsize = pcs_mass['bust'] + bodyVars['bust_magic'] + bodyVars['bust_silicone'] - bodyVars['vofat']
 	pcs_cupsize = pcs_bust - pcs_band
@@ -71,7 +71,7 @@ if $ARGS[0] = 'CalcWeight':
 	This is an approximation, so that a sveta with a different height has the same BMI for the same pcs_mass['body'] values.
 	The default height of 170 cm is used as a starting point. The bmi deviates by 0.06 for a deviation of 10cm and 0.4 for a deviation of 20cm.}
 
-	result = (600 + 7 * (pcs_mass['body'] + pcs_mass['bust'] + pcs_mass['butt']) + 14 * (pcs_hgt - 170)) / 20
+	result = (2820 + 33 * (pcs_mass['body'] + pcs_mass['bust'] + pcs_mass['butt']) + 70 * (pcs_hgt - 165)) / 100
 
 	!{Do not remove (julzor)
 	This is the old more complex function, but it doesn''t work correctly.
@@ -83,7 +83,7 @@ end
 
 if $ARGS[0] = 'CalcWeight2':
 	!! weight2 = 10 * weight
-	result = (600 + 7 * (pcs_mass['body'] + pcs_mass['bust'] + pcs_mass['butt']) + 14 * (pcs_hgt - 170)) / 2
+	result = (2820 + 33 * (pcs_mass['body'] + pcs_mass['bust'] + pcs_mass['butt']) + 70 * (pcs_hgt - 165)) / 10
 	!result = (pcs_hgt * 62 / 17) + (10 * (vhips + (bodyVars['vofat'] * 2))) / 4 + 10 * tits
 end
 
@@ -98,6 +98,10 @@ if $ARGS[0] = 'CalcBMI2':
 end
 
 
+if $ARGS[0] = 'CalcOptBodyMass':
+	result = ((pcs_hgt * pcs_hgt * 225) - 2820000 - 70000 * (pcs_hgt - 165)) / (550 * (60 + pcs_mass['bust_gen'] + pcs_mass['butt_gen']))
+end
+
 
 
 	!!===================================================!!
@@ -167,9 +171,9 @@ if $ARGS[0] = 'DailyUpdate':
 end
 
 if $ARGS[0] = 'Update_Appearance':
-	gs 'body', 'UpdateBodyImage'
 	gs 'AppearanceSystem'
 	gs 'body_desc'
+	gs 'body', 'UpdateBodyImage'
 end
 
 
@@ -181,7 +185,6 @@ if $ARGS[0] = 'UpdateBodyImage':
 		salocatnow = (pcs_hips / 10) - 5
 	end
 
-
 	$bodyVars['desc']     = func('body_structure', 'body_desc')
 	$bodyVars['img']      = func('body_structure', 'body_img')
 	$bodyVars['bmi_desc'] = func('body_structure', 'bmi_desc')
@@ -374,12 +377,23 @@ if $ARGS[0] = 'Update_Body':
 	salocatnow = func('body', 'Calc_salocat')
 
 	!!This will trigger the warning notices in the bathing code (the +/- 12 should always be +/- 11 + the max change to pcs_mass['body'] w/ fat)
-	if salolast > pcs_mass['body'] and pcs_mass['body'] <= (20 * (salocatnow - 1)) + 12:
-		btwarn = 1
-	elseif salolast < pcs_mass['body'] and pcs_mass['body'] >= (20 * (salocatnow + 1)) - 12:
-		btwarn = 2
+
+!	if salolast > pcs_mass['body'] and pcs_mass['body'] <= (20 * (salocatnow - 1)) + 12:
+!		bodyVars['weight_warning'] = 1
+!	elseif salolast < pcs_mass['body'] and pcs_mass['body'] >= (20 * (salocatnow + 1)) - 12:
+!		bodyVars['weight_warning'] = 2
+!	end
+
+	if pcs_mass['body'] < pcs_mass['body_message'] - 5:
+		bodyVars['weight_warning'] = 1
+		pcs_mass['body_message'] = pcs_mass['body']
+	elseif pcs_mass['body'] > pcs_mass['body_message'] + 5:
+		bodyVars['weight_warning'] = 2
+		pcs_mass['body_message'] = pcs_mass['body']
 	end
 
+
+
 	!!This will trigger the dream for the option to use magic to increase bust
 	!!Three nos at the dream will lock it out (1 yes resets the count)
 	if pcs_magik >= 5 and MagikDostup = 0 and magf2bdo = 0:
@@ -462,26 +476,8 @@ if $ARGS[0] = 'Update_daily_body_other':
 		end
 	end
 
-	if bcream_used >= 1:
-		bcream_used = 0
-
-		temp = pcs_mass['bust'] - pcs_mass['bust_gen']
-		temp = rand(0, 5 + max(0, temp)) / max(1, temp)
-
-		if temp > 0:
-			bodyVars['bust_other'] += 1
-			'Feels like your breasts have grown slightly.'
-		end
-		killvar 'temp'
-	end
-	
-	if steroid_dose >= 1:
-		if lashair < 1:
-			pcs_pubes += steroid_dose
-			pcs_leghair += steroid_dose
-		end
-		steroid_dose = 0
-	end
+	gs 'drugs', 'breastcream', 'cikl'
+	gs 'drugs', 'steroids', 'cikl'
 end
 
 
@@ -582,7 +578,7 @@ if $ARGS[0] = 'Redistribute_Mass':
 	end
 
 
-	if salobustdo = 0:
+	if salobustdo = 0 and bodyVars['cheat_staticAssets'] = 0:
 		!!This controls the movement of pcs_mass['body'] to/from bust in order of precedence
 
 		!!===============    MAGIC    ===============!!
@@ -608,17 +604,13 @@ if $ARGS[0] = 'Redistribute_Mass':
 		
 		!!===============    Low Weight    ===============!!
 		if pcs_mass['body'] < 10:
-			if pcs_mass['bust'] > 0:
-				temp_diff = min(pcs_mass['bust'], 3)
-				pcs_mass['bust'] -= temp_diff
-				pcs_mass['body'] += temp_diff
-			end
+			temp_diff = min(pcs_mass['bust'], 3)
+			pcs_mass['bust'] -= temp_diff
+			pcs_mass['body'] += temp_diff
 
-			if pcs_mass['butt'] > 0:
-				temp_diff = min(pcs_mass['butt'], 3)
-				pcs_mass['butt'] -= temp_diff
-				pcs_mass['body'] += temp_diff
-			end
+			temp_diff = min(pcs_mass['butt'], 3)
+			pcs_mass['butt'] -= temp_diff
+			pcs_mass['body'] += temp_diff
 
 		else
 			temp_total_mass = pcs_mass['body'] + pcs_mass['bust'] + pcs_mass['butt']
@@ -628,12 +620,13 @@ if $ARGS[0] = 'Redistribute_Mass':
 			temp_mass_bust = (pcs_mass['bust_gen'] * temp_total_mass) / temp_tot_gen_mass
 
 				!!----------- Small -----------!!
-			if pcs_mass['body'] >= 50 and pcs_mass['bust'] < pcs_mass['bust_gen']:
-				if pcs_mass['bust'] < pcs_mass['bust_gen']:
-					temp_diff = min(pcs_mass['bust_gen'] - pcs_mass['bust'], 3)
-					pcs_mass['bust'] += temp_diff
-					pcs_mass['body'] -= temp_diff
-				end
+			if temp_total_mass >= temp_tot_gen_mass - 10 and pcs_mass['bust'] < pcs_mass['bust_gen']:
+				temp_diff = min(pcs_mass['bust_gen'] - pcs_mass['bust'], 2)
+				pcs_mass['bust'] += temp_diff
+				pcs_mass['body'] -= temp_diff
+			
+			elseif temp_total_mass >= temp_tot_gen_mass - 10 and temp_total_mass <= temp_tot_gen_mass and pcs_mass['bust'] = pcs_mass['bust_gen']:
+				!Keep bust at genetic level if pcs_mass['body'] >= 50 and pcs_mass['body'] <= 60
 
 				!!-----------    Growth    -----------!!
 			elseif temp_mass_bust > pcs_mass['bust']:
@@ -651,17 +644,18 @@ if $ARGS[0] = 'Redistribute_Mass':
 			temp_mass_ass  = (pcs_mass['butt_gen']  * temp_total_mass) / temp_tot_gen_mass
 
 				!!----------- Small -----------!!
-			if pcs_mass['body'] >= 50 and pcs_mass['butt'] < pcs_mass['butt_gen']:
-				temp_diff = min(pcs_mass['butt_gen'] - pcs_mass['butt'], 3)
+			if temp_total_mass >= temp_tot_gen_mass - 10 and pcs_mass['butt'] < pcs_mass['butt_gen']:
+				temp_diff = min(pcs_mass['butt_gen'] - pcs_mass['butt'], 2)
 				pcs_mass['butt'] += temp_diff
 				pcs_mass['body'] -= temp_diff
+			
+			elseif temp_total_mass >= temp_tot_gen_mass - 10 and temp_total_mass <= temp_tot_gen_mass and pcs_mass['butt'] = pcs_mass['butt_gen']:
+				!Keep butt at genetic level if pcs_mass['body'] >= 50 and pcs_mass['body'] <= 60
 
 				!!-----------    Rest    -----------!!
 			elseif temp_mass_ass > pcs_mass['butt']:
-				!if pcs_mass['butt'] < 2 * pcs_mass['butt_gen'] + 40:
-					pcs_mass['butt'] += 1
-					pcs_mass['body'] -= 1
-				!end
+				pcs_mass['butt'] += 1
+				pcs_mass['body'] -= 1
 
 			elseif temp_mass_ass < pcs_mass['butt'] and pcs_mass['butt'] > 0:
 				pcs_mass['butt'] -= 1
@@ -675,7 +669,10 @@ if $ARGS[0] = 'Redistribute_Mass':
 			killvar 'temp_diff'
 		end
 
-		if bodyresetflag = 0:
+		if bodyresetflag ! 0:
+			pcs_mass['bust_message'] = pcs_mass['bust']
+			pcs_mass['butt_message'] = pcs_mass['butt']
+		else
 			if pcs_mass['bust'] > pcs_mass['bust_message'] + 3:
 				pcs_mass['bust_message'] = pcs_mass['bust']
 
@@ -716,9 +713,6 @@ if $ARGS[0] = 'Redistribute_Mass':
 					'<b>Your ass seem to be getting smaller</b>'
 				end
 			end
-		else
-			pcs_mass['bust_message'] = pcs_mass['bust']
-			pcs_mass['butt_message'] = pcs_mass['butt']
 		end
 	end
 
@@ -735,14 +729,19 @@ if $ARGS[0] = 'Reset_mass_distribution':
 	total_mass = pcs_mass['body'] + pcs_mass['bust'] + pcs_mass['butt']
 	total_gen_mass = 60 + pcs_mass['bust_gen'] + pcs_mass['butt_gen']
 
-
-	pcs_mass['bust'] = (pcs_mass['bust_gen'] * total_mass) / total_gen_mass
-	pcs_mass['butt']  = (pcs_mass['butt_gen']  * total_mass) / total_gen_mass
+	if total_mass >= total_gen_mass - 10 and total_mass <= total_gen_mass:
+		pcs_mass['bust'] = pcs_mass['bust_gen']
+		pcs_mass['butt'] = pcs_mass['butt_gen']
+	else
+		pcs_mass['bust'] = (pcs_mass['bust_gen'] * total_mass) / total_gen_mass
+		pcs_mass['butt'] = (pcs_mass['butt_gen'] * total_mass) / total_gen_mass
+	end
 
 	pcs_mass['body'] = total_mass - pcs_mass['bust'] - pcs_mass['butt']
 
-	pcs_mass['bust_last'] = pcs_mass['body']
-	pcs_mass['butt_last']  = pcs_mass['body']
+	pcs_mass['bust_message'] = pcs_mass['bust']
+	pcs_mass['butt_message'] = pcs_mass['butt']
+	pcs_mass['body_message'] = pcs_mass['body']
 
 	killvar 'total_mass'
 	killvar 'total_gen_mass'
@@ -753,15 +752,18 @@ end
 
 if $ARGS[0] = 'Set_mass_distribution_using_body':
 	pcs_mass['body'] = ARGS[1]
-	pcs_mass['bust'] = (pcs_mass['bust_gen'] * ARGS[1]) / 60
-	pcs_mass['butt'] = (pcs_mass['butt_gen'] * ARGS[1]) / 60
+	if ARGS[1] >= 50 and ARGS[1] <= 60:
+		pcs_mass['bust'] = pcs_mass['bust_gen']
+		pcs_mass['butt'] = pcs_mass['butt_gen']
+	else
+		pcs_mass['bust'] = (pcs_mass['bust_gen'] * ARGS[1]) / 60
+		pcs_mass['butt'] = (pcs_mass['butt_gen'] * ARGS[1]) / 60
+	end
+	bodyVars['vhips'] = (pcs_mass['body'] + pcs_mass['butt'] - 80) / 2
 
-	gs 'body', 'Reset_mass_distribution'
-	
 	pcs_mass['bust_message'] = pcs_mass['bust']
 	pcs_mass['butt_message'] = pcs_mass['butt']
-	
-	bodyVars['vhips'] = (pcs_mass['body'] + pcs_mass['butt'] - 80) / 2
+	pcs_mass['body_message'] = pcs_mass['body']
 end
 
 
@@ -858,7 +860,7 @@ if $ARGS[0] = 'softreset':
 
 	!!Clears the warning and reset status flags if they were set
 	bodyresetflag = 0
-	btwarn = 0
+	bodyVars['weight_warning'] = 0
 end
 
 if $ARGS[0] = 'hardreset':
@@ -910,12 +912,13 @@ if $ARGS[0] = 'hardreset':
 			end
 		end
 
+		pcs_mass['body_message'] = pcs_mass['body']
 		pcs_mass['bust_message'] = pcs_mass['bust']
 		pcs_mass['butt_message'] = pcs_mass['butt']
 
 		bodyresetflag = 0
 		normbuffpick = 0
-		btwarn = 0
+		bodyVars['weight_warning'] = 0
 		magf2bdo = 0
 
 		killvar 'dounsplkil'

+ 5 - 3
locations/body_desc.qsrc

@@ -389,12 +389,14 @@ end
 
 if $ARGS[0] = 'butt':
 	!natural butt
-	if pcs_butt <= 4:
+	if pcs_butt <= 14:
 		$pcs_butt = 'Your <a href="exec:view''images/pc/body/ass/1.jpg''">ass</a> is square and as flat as a plank.'
-	elseif pcs_butt <= 8:
+	elseif pcs_butt <= 25:
 		$pcs_butt = 'You have an average, feminine looking <a href="exec:view''images/pc/body/ass/2.jpg''">ass</a>.'
-	elseif pcs_butt <= 12:
+	elseif pcs_butt <= 40:
 		$pcs_butt = 'Your <a href="exec:view''images/pc/body/ass/3.jpg''">ass</a> is bigger, rounder and firmer than average.'
+	elseif pcs_butt <= 59:
+		$pcs_butt = 'You have a large heart-shaped <a href="exec:view''images/pc/body/ass/4.jpg''">butt</a> that jiggles and sways as you walk.'
 	else
 		$pcs_butt = 'You have a large bubble <a href="exec:view''images/pc/body/ass/4.jpg''">butt</a> that jiggles and sways as you walk.'
 	end

+ 1 - 1
locations/bordel.qsrc

@@ -64,7 +64,7 @@ if $ARGS[0] = 'brothel':
 		else
 			act 'Go to the reception room and wait for customers':
 
-				if (cumloc[6] = 1 or cumloc[7] = 1) or cumloc[11] = 1 or pcs_makeup < 2 or pcs_leghair > 3 or pcs_pubes > 3 or sweat > 25 or pcs_hairbsh < 1:
+				if cumloc[6] = 1 or cumloc[7] = 1 or cumloc[11] = 1 or pcs_makeup < 2 or pcs_leghair > 3 or pcs_pubes > 3 or pcs_sweat > 25 or pcs_hairbsh < 1:
 					cla
 					'The brothel madam comes over to you and says, "Our customers expect you to be clean, shaven, made-up and with your hair looking nice. Go and sort yourself out, now!"'
 

+ 12 - 13
locations/brothel.qsrc

@@ -35,15 +35,15 @@ $rec_font = '585858'
 
 dbg = 0
 if dbg = 1:
-	'loc: '+$loc
-	'args: '+$ARGS[0]
-	'session: '+$sessionB
-	'stage: '+stage
-	'pain: '+pain['total']
-	'step: '+step
-	'bonus '+bonus
-	'custTime '+custTime
-	'caneFeetCount '+caneFeetCount
+	'loc: ' + $loc
+	'args: ' + $ARGS[0]
+	'session: ' + $sessionB
+	'stage: ' + stage
+	'pain: ' + pain['total']
+	'step: ' + step
+	'bonus: ' + bonus
+	'custTime: ' + custTime
+	'caneFeetCount: ' + caneFeetCount
 end
 
 if orgasmMeter > 100: orgasmMeter = 100
@@ -605,8 +605,7 @@ if $ARGS[0] = 'brothel_dressingroom':
 	if mc_inventory['razor'] > 0: dynamic $brit
 	if mc_inventory['painkillers'] > 0 and pain['total'] >0 and pain['killer'] = 0:
 		act 'Take a painkiller':
-			pain['killer'] += 1
-			mc_inventory['painkillers'] -= 1
+			gs 'drugs', 'painkiller'
 			pcs_hydra += 20
 			gt 'brothel', 'brothel_dressingroom', $ARGS[1]
 		end
@@ -2316,7 +2315,7 @@ if $ARGS[0] = 'section2_lobby':
 	'The section 2 lobby. This lobby is quite small, offering only enough room for a couch and a small table.'
 	'Only a single room is attached to the lobby by a wide door.Judging by the state of the floor, a lot of heavy equipment is regularly dragged in and out.'
 	'One of the doors also leads to a <a href="exec:gt ''brothel'', ''brothel_dressingroom'',''2''">room</a> made for the girls. '
-	if (klismaday = daystart and pcs_leghair <= 3 and pcs_pubes <= 3 and pcs_hairbsh = 1 and pcs_makeup > 2 and pcs_lipbalm >= 1 and $pantyworntype = 'none' and $clothingworntype = 'nude' and (cumloc[1] = 0 and cumloc[4] = 0 and cumloc[8] = 0 and cumloc[9] = 0 and cumloc[10] = 0 and cumloc[11] = 0 and cumloc[15] = 0 and cumloc[16] = 0 and cumloc[17] = 0) and pcs_sweat < 40 and alko < 3 and StrongNarkota = 0 or jointhigh = 0):
+	if (klismaday = daystart and pcs_leghair <= 3 and pcs_pubes <= 3 and pcs_hairbsh = 1 and pcs_makeup > 2 and pcs_lipbalm >= 1 and $pantyworntype = 'none' and $clothingworntype = 'nude' and (cumloc[1] = 0 and cumloc[4] = 0 and cumloc[8] = 0 and cumloc[9] = 0 and cumloc[10] = 0 and cumloc[11] = 0 and cumloc[15] = 0 and cumloc[16] = 0 and cumloc[17] = 0) and pcs_sweat < 40 and alko < 3 and drugVars['heroin_high'] = 0 or drugVars['weed_high'] = 0):
 		!!stage = 1
 		!!act 'Party with a client': gt 'brothel', 'section2_party'
 		!!act 'Have a bender': gt 'brothel', 'section2_bender'
@@ -2333,7 +2332,7 @@ if $ARGS[0] = 'section2_lobby':
 		if $pantyworntype ! 'none': '- remove your panties.'
 		if $clothingworntype ! 'nude': '- strip off your clothes.'
 		if alko > 3: '- be not drunk'
-		if StrongNarkota > 0 or jointhigh > 0: '- be sober'
+		if drugVars['heroin_high'] > 0 or drugVars['weed_high'] > 0: '- be sober'
 	end
 	act 'Go to the girl''s room':gt 'brothel', 'brothel_dressingroom', '2'
 	act 'Go to the reception': gt 'brothel', 'reception'

+ 40 - 39
locations/bus.qsrc

@@ -314,7 +314,7 @@ if $ARGS[0] = 'construction':
 	*nl
 	gs 'transport_functions', 'set_bus_wait_time', 'construction'
 
-	act 'Walk to the construction site (0:05)': minut += 5 & nroad = 16 & gt 'road'
+	act 'Walk to the road (0:05)': minut += 5 & nroad = 16 & gt 'road'
 
 	if transportVars['bus_wait_pavlovsk'] <= 60 or transportVars['bus_wait_gadukino'] <= 60:
 		'The next bus in the direction of Gadukino ' + iif(transportVars['bus_wait_gadukino'] = 0, 'is leaving now!', 'leaves in <<transportVars[''bus_wait_gadukino'']>> minutes.')
@@ -490,15 +490,15 @@ if $ARGS[0] = 'communal':
 
 	if month >= 11 or month <= 3:
 		if hour >= 9 and hour <= 16:
-			'<center><img <<$set_imgh>> src="images/shared/bus/winter_day<<rand(1, 3)>>.jpg"></center>'
+			'<center><img <<$set_imgh>> src="images/locations/shared/bus/winter_day<<rand(1, 3)>>.jpg"></center>'
 		else
-			'<center><img <<$set_imgh>> src="images/shared/bus/winter_night<<rand(1, 3)>>.jpg"></center>'
+			'<center><img <<$set_imgh>> src="images/locations/shared/bus/winter_night<<rand(1, 3)>>.jpg"></center>'
 		end
 	else
 		if hour >= 7 and hour <= 18:
-			'<center><img <<$set_imgh>> src="images/shared/bus/day<<rand(1, 3)>>.jpg"></center>'
+			'<center><img <<$set_imgh>> src="images/locations/shared/bus/day<<rand(1, 3)>>.jpg"></center>'
 		else
-			'<center><img <<$set_imgh>> src="images/shared/bus/night<<rand(1, 3)>>.jpg"></center>'
+			'<center><img <<$set_imgh>> src="images/locations/shared/bus/night<<rand(1, 3)>>.jpg"></center>'
 		end
 	end
 
@@ -601,7 +601,8 @@ if $ARGS[0] = 'graveyard':
 	*nl
 	gs 'transport_functions', 'set_bus_wait_time', 'graveyard'
 
-	act 'Walk to the graveyard (0:01)': minut += 1 & nroad = 3 & gt 'road'
+	act 'Walk to the road (0:01)': minut += 1 & nroad = 3 & gt 'road'
+	act 'Walk to the cemetary (0:15)': minut += 15 & gt 'graveyard'
 
 	if transportVars['bus_wait_gadukino'] <= 60 or transportVars['bus_wait_suburbs'] <= 60:
 		'The next bus in the direction of Gadukino ' + iif(transportVars['bus_wait_gadukino'] = 0, 'is leaving now!', 'leaves in <<transportVars[''bus_wait_gadukino'']>> minutes.')
@@ -644,7 +645,7 @@ elseif $ARGS[0] = 'graveyard_busses':
 	'The next bus in the direction of the suburbs of the St. Petersburg suburbs ' + iif(transportVars['bus_wait_suburbs'] = 0, 'is leaving now!', 'leaves in <<transportVars[''bus_wait_suburbs'']>> minutes.')
 	'The next bus in the direction of Gadukino ' + iif(transportVars['bus_wait_gadukino'] = 0, 'is leaving now!', 'leaves in <<transportVars[''bus_wait_gadukino'']>> minutes.')
 
-	act 'Leave the platform': gt 'bus', 'communal'
+	act 'Leave the platform': gt 'bus', 'graveyard'
 
 	act 'Look at the bus schedule':
 		*clr & cla
@@ -783,7 +784,7 @@ if $ARGS[0] = 'community_pavstation':
 		end
 	end
 
-	'<center><img <<$set_imgh>> src="images/locations/system/image_needed.jpg" ></center>'
+	'<center><img <<$set_imgh>> src="images/system/image_needed.png" ></center>'
 	'After <<transportVars[''timecost'']>> minutes, the bus stops at the Pavlovsk train station bus station.'
 	act 'Get off the bus':
 		if rand(1, 100) <= 5: gt 'bus_incidental', 'end'
@@ -809,7 +810,7 @@ elseif $ARGS[0] = 'community_pushkin':
 		end
 	end
 
-	'<center><img <<$set_imgh>> src="images/locations/system/image_needed.jpg" ></center>'
+	'<center><img <<$set_imgh>> src="images/system/image_needed.png" ></center>'
 	'After <<transportVars[''timecost'']>> minutes, the bus stops at the Pushkin bus station.'
 	act 'Get off the bus':
 		if rand(1, 100) <= 5: gt 'bus_incidental', 'end'
@@ -835,7 +836,7 @@ elseif $ARGS[0] = 'community_construction':
 		end
 	end
 
-	'<center><img <<$set_imgh>> src="images/locations/system/image_needed.jpg" ></center>'
+	'<center><img <<$set_imgh>> src="images/system/image_needed.png" ></center>'
 	'After <<transportVars[''timecost'']>> minutes, the bus stops at the construction site bus station.'
 	act 'Get off the bus':
 		if rand(1, 100) <= 5: gt 'bus_incidental', 'end'
@@ -861,7 +862,7 @@ elseif $ARGS[0] = 'community_gadukino':
 		end
 	end
 
-	'<center><img <<$set_imgh>> src="images/locations/system/image_needed.jpg" ></center>'
+	'<center><img <<$set_imgh>> src="images/system/image_needed.png" ></center>'
 	'After <<transportVars[''timecost'']>> minutes, the bus stops at the Gadukino bus station.'
 	act 'Get off the bus':
 		if rand(1, 100) <= 5: gt 'bus_incidental', 'end'
@@ -895,7 +896,7 @@ if $ARGS[0] = 'pavstation_community':
 		end
 	end
 
-	'<center><img <<$set_imgh>> src="images/locations/system/image_needed.jpg" ></center>'
+	'<center><img <<$set_imgh>> src="images/system/image_needed.png" ></center>'
 	'After <<transportVars[''timecost'']>> minutes, the bus stops at the Pavlovsk community center bus station.'
 	act 'Get off the bus':
 		if rand(1, 100) <= 5: gt 'bus_incidental', 'end'
@@ -921,7 +922,7 @@ elseif $ARGS[0] = 'pavstation_pushkin':
 		end
 	end
 
-	'<center><img <<$set_imgh>> src="images/locations/system/image_needed.jpg" ></center>'
+	'<center><img <<$set_imgh>> src="images/system/image_needed.png" ></center>'
 	'After <<transportVars[''timecost'']>> minutes, the bus stops at the Pushkin bus station.'
 	act 'Get off the bus':
 		if rand(1, 100) <= 5: gt 'bus_incidental', 'end'
@@ -947,7 +948,7 @@ elseif $ARGS[0] = 'pavstation_construction':
 		end
 	end
 
-	'<center><img <<$set_imgh>> src="images/locations/system/image_needed.jpg" ></center>'
+	'<center><img <<$set_imgh>> src="images/system/image_needed.png" ></center>'
 	'After <<transportVars[''timecost'']>> minutes, the bus stops at the construction site bus station.'
 	act 'Get off the bus':
 		if rand(1, 100) <= 5: gt 'bus_incidental', 'end'
@@ -973,7 +974,7 @@ elseif $ARGS[0] = 'pavstation_gadukino':
 		end
 	end
 
-	'<center><img <<$set_imgh>> src="images/locations/system/image_needed.jpg" ></center>'
+	'<center><img <<$set_imgh>> src="images/system/image_needed.png" ></center>'
 	'After <<transportVars[''timecost'']>> minutes, the bus stops at the Gadukino bus station.'
 	act 'Get off the bus':
 		if rand(1, 100) <= 5: gt 'bus_incidental', 'end'
@@ -1007,7 +1008,7 @@ if $ARGS[0] = 'pushkin_community':
 		end
 	end
 
-	'<center><img <<$set_imgh>> src="images/locations/system/image_needed.jpg" ></center>'
+	'<center><img <<$set_imgh>> src="images/system/image_needed.png" ></center>'
 	'After <<transportVars[''timecost'']>> minutes, the bus stops at the Pavlovsk community center bus station.'
 	act 'Get off the bus':
 		if rand(1, 100) <= 5: gt 'bus_incidental', 'end'
@@ -1033,7 +1034,7 @@ elseif $ARGS[0] = 'pushkin_pavstation':
 		end
 	end
 
-	'<center><img <<$set_imgh>> src="images/locations/system/image_needed.jpg" ></center>'
+	'<center><img <<$set_imgh>> src="images/system/image_needed.png" ></center>'
 	'After <<transportVars[''timecost'']>> minutes, the bus stops at the Pavlovsk train station bus station.'
 	act 'Get off the bus':
 		if rand(1, 100) <= 5: gt 'bus_incidental', 'end'
@@ -1059,7 +1060,7 @@ elseif $ARGS[0] = 'pushkin_construction':
 		end
 	end
 
-	'<center><img <<$set_imgh>> src="images/locations/system/image_needed.jpg" ></center>'
+	'<center><img <<$set_imgh>> src="images/system/image_needed.png" ></center>'
 	'After <<transportVars[''timecost'']>> minutes, the bus stops at the construction site bus station.'
 	act 'Get off the bus':
 		if rand(1, 100) <= 5: gt 'bus_incidental', 'end'
@@ -1085,7 +1086,7 @@ elseif $ARGS[0] = 'pushkin_gadukino':
 		end
 	end
 
-	'<center><img <<$set_imgh>> src="images/locations/system/image_needed.jpg" ></center>'
+	'<center><img <<$set_imgh>> src="images/system/image_needed.png" ></center>'
 	'After <<transportVars[''timecost'']>> minutes, the bus stops at the Gadukino bus station.'
 	act 'Get off the bus':
 		if rand(1, 100) <= 5: gt 'bus_incidental', 'end'
@@ -1119,7 +1120,7 @@ if $ARGS[0] = 'construction_community':
 		end
 	end
 
-	'<center><img <<$set_imgh>> src="images/locations/system/image_needed.jpg" ></center>'
+	'<center><img <<$set_imgh>> src="images/system/image_needed.png" ></center>'
 	'After <<transportVars[''timecost'']>> minutes, the bus stops at the Pavlovsk community center bus station.'
 	act 'Get off the bus':
 		if rand(1, 100) <= 5: gt 'bus_incidental', 'end'
@@ -1145,7 +1146,7 @@ elseif $ARGS[0] = 'construction_pavstation':
 		end
 	end
 
-	'<center><img <<$set_imgh>> src="images/locations/system/image_needed.jpg" ></center>'
+	'<center><img <<$set_imgh>> src="images/system/image_needed.png" ></center>'
 	'After <<transportVars[''timecost'']>> minutes, the bus stops at the Pavlovsk train station bus station.'
 	act 'Get off the bus':
 		if rand(1, 100) <= 5: gt 'bus_incidental', 'end'
@@ -1171,7 +1172,7 @@ elseif $ARGS[0] = 'construction_pushkin':
 		end
 	end
 
-	'<center><img <<$set_imgh>> src="images/locations/system/image_needed.jpg" ></center>'
+	'<center><img <<$set_imgh>> src="images/system/image_needed.png" ></center>'
 	'After <<transportVars[''timecost'']>> minutes, the bus stops at the Pushkin bus station.'
 	act 'Get off the bus':
 		if rand(1, 100) <= 5: gt 'bus_incidental', 'end'
@@ -1197,7 +1198,7 @@ elseif $ARGS[0] = 'construction_gadukino':
 		end
 	end
 
-	'<center><img <<$set_imgh>> src="images/locations/system/image_needed.jpg" ></center>'
+	'<center><img <<$set_imgh>> src="images/system/image_needed.png" ></center>'
 	'After <<transportVars[''timecost'']>> minutes, the bus stops at the Gadukino bus station.'
 	act 'Get off the bus':
 		if rand(1, 100) <= 5: gt 'bus_incidental', 'end'
@@ -1231,7 +1232,7 @@ if $ARGS[0] = 'gadukino_community':
 		end
 	end
 
-	'<center><img <<$set_imgh>> src="images/locations/system/image_needed.jpg" ></center>'
+	'<center><img <<$set_imgh>> src="images/system/image_needed.png" ></center>'
 	'After <<transportVars[''timecost'']>> minutes, the bus stops at the Pavlovsk community center bus station.'
 	act 'Get off the bus':
 		if rand(1, 100) <= 5: gt 'bus_incidental', 'end'
@@ -1257,7 +1258,7 @@ elseif $ARGS[0] = 'gadukino_pavstation':
 		end
 	end
 
-	'<center><img <<$set_imgh>> src="images/locations/system/image_needed.jpg" ></center>'
+	'<center><img <<$set_imgh>> src="images/system/image_needed.png" ></center>'
 	'After <<transportVars[''timecost'']>> minutes, the bus stops at the Pavlovsk train station bus station.'
 	act 'Get off the bus':
 		if rand(1, 100) <= 5: gt 'bus_incidental', 'end'
@@ -1283,7 +1284,7 @@ elseif $ARGS[0] = 'gadukino_pushkin':
 		end
 	end
 
-	'<center><img <<$set_imgh>> src="images/locations/system/image_needed.jpg" ></center>'
+	'<center><img <<$set_imgh>> src="images/system/image_needed.png" ></center>'
 	'After <<transportVars[''timecost'']>> minutes, the bus stops at the Pushkin bus station.'
 	act 'Get off the bus':
 		if rand(1, 100) <= 5: gt 'bus_incidental', 'end'
@@ -1309,7 +1310,7 @@ elseif $ARGS[0] = 'gadukino_construction':
 		end
 	end
 
-	'<center><img <<$set_imgh>> src="images/locations/system/image_needed.jpg" ></center>'
+	'<center><img <<$set_imgh>> src="images/system/image_needed.png" ></center>'
 	'After <<transportVars[''timecost'']>> minutes, the bus stops at the construction site bus station.'
 	act 'Get off the bus':
 		if rand(1, 100) <= 5: gt 'bus_incidental', 'end'
@@ -1335,7 +1336,7 @@ elseif $ARGS[0] = 'gadukino_communal':
 		end
 	end
 
-	'<center><img <<$set_imgh>> src="images/locations/system/image_needed.jpg" ></center>'
+	'<center><img <<$set_imgh>> src="images/system/image_needed.png" ></center>'
 	'After <<transportVars[''timecost'']>> minutes, the bus stops at the communal village bus station.'
 	act 'Get off the bus':
 		if rand(1, 100) <= 5: gt 'bus_incidental', 'end'
@@ -1361,7 +1362,7 @@ elseif $ARGS[0] = 'gadukino_graveyard':
 		end
 	end
 
-	'<center><img <<$set_imgh>> src="images/locations/system/image_needed.jpg" ></center>'
+	'<center><img <<$set_imgh>> src="images/system/image_needed.png" ></center>'
 	'After <<transportVars[''timecost'']>> minutes, the bus stops at the graveyard bus station.'
 	act 'Get off the bus':
 		if rand(1, 100) <= 5: gt 'bus_incidental', 'end'
@@ -1387,7 +1388,7 @@ elseif $ARGS[0] = 'gadukino_suburbs':
 		end
 	end
 
-	'<center><img <<$set_imgh>> src="images/locations/system/image_needed.jpg" ></center>'
+	'<center><img <<$set_imgh>> src="images/system/image_needed.png" ></center>'
 	'After <<transportVars[''timecost'']>> minutes, the bus stops at the suburbs bus station.'
 	act 'Get off the bus':
 		if rand(1, 100) <= 5: gt 'bus_incidental', 'end'
@@ -1421,7 +1422,7 @@ if $ARGS[0] = 'communal_gadukino':
 		end
 	end
 
-	'<center><img <<$set_imgh>> src="images/locations/system/image_needed.jpg" ></center>'
+	'<center><img <<$set_imgh>> src="images/system/image_needed.png" ></center>'
 	'After <<transportVars[''timecost'']>> minutes, the bus stops at the Gadukino bus station.'
 	act 'Get off the bus':
 		if rand(1, 100) <= 5: gt 'bus_incidental', 'end'
@@ -1447,7 +1448,7 @@ elseif $ARGS[0] = 'communal_graveyard':
 		end
 	end
 
-	'<center><img <<$set_imgh>> src="images/locations/system/image_needed.jpg" ></center>'
+	'<center><img <<$set_imgh>> src="images/system/image_needed.png" ></center>'
 	'After <<transportVars[''timecost'']>> minutes, the bus stops at the graveyard bus station.'
 	act 'Get off the bus':
 		if rand(1, 100) <= 5: gt 'bus_incidental', 'end'
@@ -1473,7 +1474,7 @@ elseif $ARGS[0] = 'communal_suburbs':
 		end
 	end
 
-	'<center><img <<$set_imgh>> src="images/locations/system/image_needed.jpg" ></center>'
+	'<center><img <<$set_imgh>> src="images/system/image_needed.png" ></center>'
 	'After <<transportVars[''timecost'']>> minutes, the bus stops at the suburbs bus station.'
 	act 'Get off the bus':
 		if rand(1, 100) <= 5: gt 'bus_incidental', 'end'
@@ -1507,7 +1508,7 @@ if $ARGS[0] = 'graveyard_gadukino':
 		end
 	end
 
-	'<center><img <<$set_imgh>> src="images/locations/system/image_needed.jpg" ></center>'
+	'<center><img <<$set_imgh>> src="images/system/image_needed.png" ></center>'
 	'After <<transportVars[''timecost'']>> minutes, the bus stops at the Gadukino bus station.'
 	act 'Get off the bus':
 		if rand(1, 100) <= 5: gt 'bus_incidental', 'end'
@@ -1533,7 +1534,7 @@ elseif $ARGS[0] = 'graveyard_communal':
 		end
 	end
 
-	'<center><img <<$set_imgh>> src="images/locations/system/image_needed.jpg" ></center>'
+	'<center><img <<$set_imgh>> src="images/system/image_needed.png" ></center>'
 	'After <<transportVars[''timecost'']>> minutes, the bus stops at the communal village bus station.'
 	act 'Get off the bus':
 		if rand(1, 100) <= 5: gt 'bus_incidental', 'end'
@@ -1559,7 +1560,7 @@ elseif $ARGS[0] = 'graveyard_suburbs':
 		end
 	end
 
-	'<center><img <<$set_imgh>> src="images/locations/system/image_needed.jpg" ></center>'
+	'<center><img <<$set_imgh>> src="images/system/image_needed.png" ></center>'
 	'After <<transportVars[''timecost'']>> minutes, the bus stops at the suburbs bus station.'
 	act 'Get off the bus':
 		if rand(1, 100) <= 5: gt 'bus_incidental', 'end'
@@ -1593,7 +1594,7 @@ if $ARGS[0] = 'suburbs_gadukino':
 		end
 	end
 
-	'<center><img <<$set_imgh>> src="images/locations/system/image_needed.jpg" ></center>'
+	'<center><img <<$set_imgh>> src="images/system/image_needed.png" ></center>'
 	'After <<transportVars[''timecost'']>> minutes, the bus stops at the Gadukino bus station.'
 	act 'Get off the bus':
 		if rand(1, 100) <= 5: gt 'bus_incidental', 'end'
@@ -1619,7 +1620,7 @@ elseif $ARGS[0] = 'suburbs_communal':
 		end
 	end
 
-	'<center><img <<$set_imgh>> src="images/locations/system/image_needed.jpg" ></center>'
+	'<center><img <<$set_imgh>> src="images/system/image_needed.png" ></center>'
 	'After <<transportVars[''timecost'']>> minutes, the bus stops at the communal village bus station.'
 	act 'Get off the bus':
 		if rand(1, 100) <= 5: gt 'bus_incidental', 'end'
@@ -1645,7 +1646,7 @@ elseif $ARGS[0] = 'suburbs_graveyard':
 		end
 	end
 
-	'<center><img <<$set_imgh>> src="images/locations/system/image_needed.jpg" ></center>'
+	'<center><img <<$set_imgh>> src="images/system/image_needed.png" ></center>'
 	'After <<transportVars[''timecost'']>> minutes, the bus stops at the graveyard bus station.'
 	act 'Get off the bus':
 		if rand(1, 100) <= 5: gt 'bus_incidental', 'end'

+ 4 - 18
locations/cikl.qsrc

@@ -560,14 +560,6 @@ gs 'traits', 'overnight'
 !! Clothing wear and tear
 gs 'starenie'
 
-!!cocaine reduction
-if nark > 60:
-	nark = 60
-elseif nark > 30:
-	nark -= 3
-elseif nark > 0:
-	nark -= 1
-end
 
 if pregchem > 240:fat += 1
 
@@ -1023,16 +1015,10 @@ mosal_time = totminut
 !!also, the first thing you do in the morning is visiting your porcelain friend, no?
 killvar 'last_pee'
 
-if aphrodisiac_overdose = 1: aphrodisiac_overdose = 0
-if aphrodisiac_timer ! 0: aphrodisiac_timer	= 0
-
-if mentats_dose = 1:
-	mentats_dose = 0
-elseif mentats_dose > 1:
-	pain['head'] += 20 * mentats_dose
-	mentats_dose = 0
-end
-
+!!Drugs reduction
+gs 'drugs', 'cocaine', 'cikl'
+gs 'drugs', 'mentats', 'cikl'
+gs 'drugs', 'aphrodisiac', 'cikl'
 
 gs 'gaddvor','cikl'
 

+ 14 - 22
locations/city_bobka.qsrc

@@ -147,14 +147,11 @@ end
 if $ARGS[0] = 'inject':
 	cls
 	minut += 5
-	StrongNarkota += 25
-	SNarkTimes += 1
-	NarkShmaraTimes += 1
-	pcs_mood += 40
-	gs 'stat'
+	drugVars['heroin_whore'] += 1
+	gs 'drugs', 'heroin'
 	$tempval = ''
 
-	if narkoman ! 0:$tempval = ' with trembling hands'
+	if drugVars['cocaine_addict'] ! 0:$tempval = ' with trembling hands'
 
 	'<center><img <<$set_imgh>> src="images/locations/city/residential/den/crackwhore.jpg"></center>'
 	'You grab the syringe desperately and inject yourself<<$tempval>>. Meanwhile Bobka is looking down at you haughtily, shaking his head while laughing softly. "Another happy customer. Just like you''re going to make a lot of customers happy one day..."'
@@ -240,7 +237,7 @@ if $ARGS[0] = 'peeface':
 	'<center><img <<$set_imgh>> src="images/characters/city/bobka/sex/peeface.jpg"></center>'
 	'Bobka releases his flaccid penis from his trousers, and unleashes a warm stream of urine almost immediately. When you wince and close your eyes, he shouts angrily: "Don''t turn away! Open your eyes and look at me, slut! Right now!"'
 
-	act 'Look into his eyes':gt 'city_bobka', 'peeface2'
+	act 'Look into his eyes': gt 'city_bobka', 'peeface2'
 end
 
 if $ARGS[0] = 'peeface2':
@@ -252,7 +249,7 @@ if $ARGS[0] = 'peeface2':
 	'You open your eyes and look at him obediently, keeping your face so the urine at least won''t splash up your nose. His urine smells horribly and slowly drips down your body, forming a puddle underneath you. Your mind is going through a desperate struggle as you sit there; on the one hand you feel terrible for demeaning yourself so much, but on the other hand you''re happily anticipating your next high.'
 	'When you wipe your eyes clear with the back of your trembling hands, Bobka smiles meanly.'
 
-	act 'Ask for the dose':gt 'city_bobka', 'peeface3'
+	act 'Ask for the dose': gt 'city_bobka', 'peeface3'
 end
 
 if $ARGS[0] = 'peeface3':
@@ -264,7 +261,7 @@ if $ARGS[0] = 'peeface3':
 	'Bobka gets closer to you and shakes the last drops off his penis, and then wipes it on your hair.'
 	'"Did you like your shower? It seems just right, for the whore that you are..." he smiles serenely, seeing the defeated look in your eyes. He knows he''s very close to breaking you for good, and offers you the syringe without playing any games.'
 
-	act 'Grab the syringe':gt 'city_bobka', 'peewhore'
+	act 'Grab the syringe': gt 'city_bobka', 'peewhore'
 end
 
 if $ARGS[0] = 'peeswallow':
@@ -279,7 +276,7 @@ if $ARGS[0] = 'peeswallow':
 	'<center><img <<$set_imgh>> src="images/characters/city/bobka/sex/peeswallow.jpg"></center>'
 	'As soon as you open your mouth, a torrent of Bobka''s urine enters your mouth. You nearly choke and cough from the horrible taste, and grimace from the nasty smell that fills your nostrils.'
 
-	act 'Cough uncontrollably':gt 'city_bobka', 'peeswallow2'
+	act 'Cough uncontrollably': gt 'city_bobka', 'peeswallow2'
 end
 
 if $ARGS[0] = 'peeswallow2':
@@ -293,7 +290,7 @@ if $ARGS[0] = 'peeswallow2':
 	'"Swallow it, whore! Swallow it all, or you''re not getting anything!" Bobka barks loudly.'
 	'You throw your head back and open your mouth as far as you can, just letting the urine flow directly into your stomach without even bothering to swallow. Your stomach fills quickly, and you feel a bit bloated when the stream finally slows down.'
 
-	act 'Swallow the last drops':gt 'city_bobka', 'peeswallow3'
+	act 'Swallow the last drops': gt 'city_bobka', 'peeswallow3'
 end
 
 if $ARGS[0] = 'peeswallow3':
@@ -304,7 +301,7 @@ if $ARGS[0] = 'peeswallow3':
 	'<center><img <<$set_imgh>> src="images/characters/city/bobka/sex/peeswallow3.jpg"></center>'
 	'Bobka steps a bit closer to you and puts the tip of his cock directly onto your lower lip and then makes you close your mouth, making you suck the last drops out of him directly.'
 
-	act 'Lick his cock clean':gt 'city_bobka', 'peeswallow4'
+	act 'Lick his cock clean': gt 'city_bobka', 'peeswallow4'
 end
 
 if $ARGS[0] = 'peeswallow4':
@@ -318,26 +315,21 @@ if $ARGS[0] = 'peeswallow4':
 	'While you try not to think about what you just did to earn it, you extend your trembling hand.'
 	'Bobka laughs as he offers you a syringe and the 100 <b>₽</b> he promised you: "I think you may have found your calling! This might be a decent career for you... maybe I can make some arrangements. Anyway, here you go. I hope it was worth it."'
 
-	act 'Grab the syringe':gt 'city_bobka', 'peewhore'
+	act 'Grab the syringe': gt 'city_bobka', 'peewhore'
 end
 
 if $ARGS[0] = 'peewhore':
 	cla
 	cls
 	minut += 5
-	StrongNarkota += 25
-	SNarkTimes += 1
-	NarkShmaraTimes += 1
-	pcs_mood += 40
 	pcs_hydra += 20
-	gs 'stat'
+	drugVars['heroin_whore'] += 1
+	gs 'drugs', 'heroin'
+
 	'<center><img <<$set_imgh>> src="images/characters/city/bobka/sex/peewhore.jpg"></center>'
 	'You don''t even bother washing yourself as you quickly grab the syringe, and inject yourself with it. Bobka looks down on you with a devious smile, he knows he''s very close to completely controlling your life. Soon, you won''t be able to say no any more...'
 
-	act 'Leave the drug den':
-		minut += 5
-		gt 'city_residential'
-	end
+	act 'Leave the drug den': minut += 5 & gt 'city_residential'
 end
 
 --- city_bobka ---------------------------------

+ 3 - 3
locations/city_church.qsrc

@@ -109,7 +109,7 @@ if $ARGS[0] = 'Narthex':
 	*clr & cla
 	gs 'themes', 'indoors'
 	gs 'stat'
-	PLAY 'sound/church/76139__dkustic__090227-01-people-church-concert.wav',30
+	PLAY 'sound/church/76139__dkustic__090227-01-people-church-concert.mp3',30
 	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/church/enterchurch.jpg"></center>'
 	'You enter the church and the scent of incense and beeswax fills your lungs. Your eyes are drawn past the Narthex into the Nave with its walls covered in lovingly painted icons while a thousand points of light dance in joy throughout God''s house from the magnificent chandelier that hangs from the ceiling.'
 	'To your left is a counter where a deacon sells candles, icons and prayer books. He smiles and nods at you absently, acknowledging your presence without really seeing you.'
@@ -201,14 +201,14 @@ if $ARGS[0] = 'pray':
 			pcs_mood += 50
 			church_moral += 1
 			minut += rand(30,60)
-			if nark > 1: nark = nark/2
+			if drugVars['cocaine_system'] > 1: drugVars['cocaine_system'] = drugVars['cocaine_system'] / 2
 			'The Nave is lit only with small candles, leaving your surroundings in darkness, but you find it comforting. You get the urge to pray very intensely and before you know it, an hour has passed and you feel cleansed.'
 		else
 			pcs_horny = 0
 			pcs_mood = 100
 			church_moral += 1
 			minut += 60
-			if nark > 1: nark = ((nark/4)*3)
+			if drugVars['cocaine_system'] > 1: drugVars['cocaine_system'] = 3 * drugVars['cocaine_system'] / 4
 			'The Nave is lit only with candles and small presence lights and the darkness feels very comforting, like being in the womb. You get the urge to pray very intensely and before you know it, more than an hour has passed and you feel reborn and cleansed.'
 		end
 		gs 'stat'

+ 23 - 23
locations/city_drugden.qsrc

@@ -23,7 +23,7 @@ if $ARGS[0] = 'start':
 		act 'Ask for amphetamine': gt 'city_drugden', 'amphetamine'
 		act 'Ask for weed': gt 'city_drugden', 'joints'
 		act 'Ask for cocaine': gt 'city_drugden', 'cocaine'
-		if mid($start_type,1,2) = 'sg' and snarkozak = 0: act 'Ask for a drop-off point in Pavlovsk':	minut += 5 & gs 'events', 'narkozakladka'
+		if mid($start_type,1,2) = 'sg' and drugVars['pav_dropoff'] = 0: act 'Ask for a drop-off point in Pavlovsk':	minut += 5 & gs 'events', 'ask_pav_drug_dropoff'
 	elseif drugUser = 0:
 		'"Ahhh, what do you have?" you ask.'
 		'His eyes light up at a freshy and smiles wildy, "Well I have some H and amphetamine."'
@@ -32,7 +32,7 @@ if $ARGS[0] = 'start':
 		act 'Ask for amphetamine': gt 'city_drugden', 'amphetamine'
 		act 'Ask for weed': gt 'city_drugden', 'joints'
 		act 'Ask for cocaine': gt 'city_drugden', 'cocaine'
-	elseif (StrongNarkota > 23 and amphHigh > 23) or amphHigh > 23 or StrongNarkota > 23:
+	elseif drugVars['amphetamine_high'] > 23 or drugVars['heroin_high'] > 23:
 		gt 'city_drugden', 'kiteHigh'
 	end
 end
@@ -45,13 +45,13 @@ if $ARGS[0] = 'amphetamine':
 	'<center><b>Local drug den</b></center>'
 	'<center><img <<$set_imgh>> src="images/locations/city/residential/den/narkopriton.jpg"></center>'
 	'"That''ll be 80 <b>₽</b> per pill," he says.'
-	'You have <<amphetamine>> pills.'
+	'You have <<mc_inventory[''amphetamine'']>> pills.'
 	act 'Leave the drug den': minut += 5 & gt 'city_residential'
 	if money >= 1600:
 		act 'Buy 20 (1,600 <b>₽</b>)':
 			money -= 1600
 			drugUser = 1
-			amphetamine += 20
+			mc_inventory['amphetamine'] += 20
 			minut += 5
 			gt 'city_drugden', 'amphetamine'
 		end
@@ -60,7 +60,7 @@ if $ARGS[0] = 'amphetamine':
 		act 'Buy 10 (800 <b>₽</b>)':
 			money -= 800
 			drugUser = 1
-			amphetamine += 10
+			mc_inventory['amphetamine'] += 10
 			minut += 5
 			gt 'city_drugden', 'amphetamine'
 		end
@@ -69,7 +69,7 @@ if $ARGS[0] = 'amphetamine':
 		act 'Buy 5 (400 <b>₽</b>)':
 			money -= 400
 			drugUser = 1
-			amphetamine += 5
+			mc_inventory['amphetamine'] += 5
 			minut += 5
 			gt 'city_drugden', 'amphetamine'
 		end
@@ -85,13 +85,13 @@ if $ARGS[0] = 'joints':
 	'<center><b>Local drug den</b></center>'
 	'<center><img <<$set_imgh>> src="images/locations/city/residential/den/narkopriton.jpg"></center>'
 	'"That''ll be 250 <b>₽</b> for enough weed to make five joints," he says.'
-	'You have enough weed for <<joint>> joints.'
+	'You have enough weed for <<mc_inventory[''joints'']>> joints.'
 	act 'Leave the drug den': minut += 5 & gt 'city_residential'
 	if money >= 1000:
 		act 'Buy enough weed for 20 joints (1,000 <b>₽</b>)':
 			money -= 1000
 			drugUser = 1
-			joint += 20
+			mc_inventory['joints'] += 20
 			minut += 5
 			gt 'city_drugden', 'joints'
 		end
@@ -100,7 +100,7 @@ if $ARGS[0] = 'joints':
 		act 'Buy enough weed for 10 joints  (500 <b>₽</b>)':
 			money -= 500
 			drugUser = 1
-			joint += 10
+			mc_inventory['joints'] += 10
 			minut += 5
 			gt 'city_drugden', 'joints'
 		end
@@ -109,7 +109,7 @@ if $ARGS[0] = 'joints':
 		act 'Buy enough weed for 5 joints  (250 <b>₽</b>)':
 			money -= 250
 			drugUser = 1
-			joint += 5
+			mc_inventory['joints'] += 5
 			minut += 5
 			gt 'city_drugden', 'joints'
 		end
@@ -125,13 +125,13 @@ if $ARGS[0] = 'cocaine':
 	'<center><b>Local drug den</b></center>'
 	'<center><img <<$set_imgh>> src="images/locations/city/residential/den/narkopriton.jpg"></center>'
 	'"That''ll be 360 <b>₽</b> for enough cocaine to get you high once," he says.'
-	'You have enough cocaine for <<dur>> lines.'
+	'You have enough cocaine for <<mc_inventory[''cocaine'']>> lines.'
 	act 'Leave the drug den': minut += 5 & gt 'city_residential'
 	if money >= 7200:
 		act 'Buy enough cocaine for 20 lines (7,200 <b>₽</b>)':
 			money -= 7200
 			drugUser = 1
-			dur += 20
+			mc_inventory['cocaine'] += 20
 			minut += 5
 			gt 'city_drugden', 'cocaine'
 		end
@@ -140,7 +140,7 @@ if $ARGS[0] = 'cocaine':
 		act 'Buy enough cocaine for 10 highs (3,600 <b>₽</b>)':
 			money -= 3600
 			drugUser = 1
-			dur += 10
+			mc_inventory['cocaine'] += 10
 			minut += 5
 			gt 'city_drugden', 'cocaine'
 		end
@@ -149,7 +149,7 @@ if $ARGS[0] = 'cocaine':
 		act 'Buy enough cocaine for 5 highs (1,800 <b>₽</b>)':
 			money -= 1800
 			drugUser = 1
-			dur += 5
+			mc_inventory['cocaine'] += 5
 			minut += 5
 			gt 'city_drugden', 'cocaine'
 		end
@@ -169,7 +169,7 @@ if $ARGS[0] = 'heroin':
 	if money >= 420:
 		act 'Buy heroin and smoke it (420 <b>₽</b>)':
 			money -= 420
-			if SNarkTimes <= 10:
+			if drugVars['heroin_used'] <= 10:
 				*clr & cla
 				minut += 20
 				gs 'stat'
@@ -208,7 +208,7 @@ if $ARGS[0] = 'heroin':
 					gs 'stat'
 					act 'You lay there briefly rolling, before leaving': gs 'events', 'snkayf1'
 				end
-			elseif SNarkTimes['inject'] < 1:
+			elseif drugVars['heroin_inject'] < 1:
 				*clr & cla
 				minut += 10
 				gs 'stat'
@@ -246,7 +246,7 @@ if $ARGS[0] = 'heroin':
 					'"Thanks." You take the needle and go find a couch in the house to sit on.'
 					'You inject the needle into your arm unable to stop yourself from trembling a little.'
 					'The rush is instantaneous, you close your eyes as it rolls over you.'
-					SNarkTimes['inject'] = 1
+					drugVars['heroin_inject'] = 1
 					drugUser = 1
 					gs 'drugs', 'heroin'
 					gs 'stat'
@@ -266,7 +266,7 @@ if $ARGS[0] = 'heroin':
 				act 'Leave the drug den': minut += 5 & gt 'city_residential'
 			end
 		end
-	elseif money < 420 and SLomka > 0:
+	elseif money < 420 and drugVars['heroin_need'] > 0:
 		act 'Beg him to give you some':	gs 'city_drugden', 'drugslut'
 	end
 	act 'Buy some amphetamine instead':	gt 'city_drugden', 'amphetamine'
@@ -281,7 +281,7 @@ if $ARGS[0] = 'drugslut':
 	minut += 5
 	gs 'stat'
 
-	if NarkShmaraTimes > 0:
+	if drugVars['heroin_whore'] > 0:
 		'"Bobka, please! You remember me, right? I''m good for it, you can trust me!" you beg him, but he gives you a wicked grin.'
 		'"Come on, <<$pcs_nickname>>! You know I don''t do credit!" he snorts.'
 		
@@ -326,7 +326,7 @@ if $ARGS[0] = 'drugslut':
 				'<center><img <<$set_imgh>> src="images/locations/city/residential/den/narkopriton.jpg"></center>'
 				'You keep begging Bobka to give you some heroin, while you follow him to an empty room. He just laughs at you and says: <<$bobtalk>>'
 
-				act '<<$bobtext>>':	NarkShmaraTimes += 1 & gt 'city_bobka', bobrand
+				act '<<$bobtext>>':	drugVars['heroin_whore'] += 1 & gt 'city_bobka', bobrand
 				
 				gs 'willpower', 'bj', 'resist'
 				if will_cost <= pcs_willpwr:
@@ -343,7 +343,7 @@ if $ARGS[0] = 'drugslut':
 			end
 		end
 
-		if NarkShmaraTimes > 5:
+		if drugVars['heroin_whore'] > 5:
 			act 'Submit to your fate':
 				*clr & cla
 				over = 8
@@ -392,7 +392,7 @@ if $ARGS[0] = 'drugslut':
 				end
 			end
 		end
-	elseif NarkShmaraTimes = 0:
+	elseif drugVars['heroin_whore'] = 0:
 		'You beg the man: "Please! I need a hit... I need it badly! Please, I''ll pay you back! I promise!"'
 		'The guy laughs: "Yea, sure. Do you know how many times a day I hear that? If I had a ruble for every time someone told me that, I would''ve retired by now! I don''t do credit, simple as that. Get lost."'
 		
@@ -425,7 +425,7 @@ if $ARGS[0] = 'drugslut':
 				act 'Suck his cock':
 					*clr & cla
 					guy += 1
-					NarkShmaraTimes += 1
+					drugVars['heroin_whore'] += 1
 					gs 'cum_call', 'mouth_swallow', $boy, 1
 					gs 'dinSex', 'std_trigger'
 					'<center><img <<$set_imgh>> src="images/characters/city/bobka/sex/bj.jpg"></center>'

+ 4 - 2
locations/city_kafe.qsrc

@@ -565,8 +565,10 @@ if $ARGS[0] = 'tips':
 	workKafe['tips_roll'] = 0
 	!! Skill and attribute gains
 	if pcs_servng < 100: gs 'exp_gain', 'servng', 1
-	if pcs_vital < 30: gs 'exp_gain', 'vital', 1 + rand(0,steroid_dose) & steroidcheck = 1
-	if steroidcheck = 1 and steroid_dose > 0 and rand(1,5) <= steroid_dose:clit_size += rand(0,1) & killvar 'steroidcheck'
+	if pcs_vital < 30:
+		gs 'exp_gain', 'vital', 1 + rand(0, drugVars['steroids_dose'])
+		if drugVars['steroids_dose'] > 0 and rand(1, 5) <= drugVars['steroids_dose']: clit_size += rand(0, 1) & killvar 'steroidcheck'
+	end
 	gs 'stat'
 	'<center><b><font color="maroon">The Roadhouse</font></b></center>'
 	'<center><img <<$set_imgh>> src="images/locations/city/residential/cafe/kafe.jpg"></center>'

+ 5 - 7
locations/city_library.qsrc

@@ -95,7 +95,7 @@ if $ARGS[0] = 'read':
 	cla
 	act 'Read a book on science (1:00)':
 		dynamic $downlibrary['BookStudy'], ''
-		gs 'exp_gain', 'intel', rand(3,6) + (mentats_dose - rand(0,mentats_dose))
+		gs 'exp_gain', 'intel', rand(3,6) + rand(0, drugVars['mentats_dose'])
 		grupvalue[3] += 1
 		gs 'stat'
 		'<center><img <<$set_imgh>> src="images/pc/items/accessories/books/science1.jpg"></center>'
@@ -193,14 +193,12 @@ if $ARGS[0] = 'loan':
 			if lib_debt <= 0: lib_debt = 0
 			gt 'city_library'
 		end
-
-		act 'Go back': gt 'city_library'
 	end
 
 	if lib_debt > 0:
-		'You''ve owe an outstanding debt of <<lib_debt>> <b>₽</b> to the library.'
+		'You owe an outstanding debt of <<lib_debt>> <b>₽</b> to the library.'
 		if money < lib_debt and karta < lib_debt:
-			act '<font color="red">Pay your debt</font>': '<br><font color="red">You don''t have enough money to pay your debt.</font>'
+			'You don''t have enough money to pay your debt!'
 		else
 			if money >= lib_debt:
 				act 'Pay your debt (cash)':
@@ -280,9 +278,9 @@ if $ARGS[0] = 'loan':
 			'"You need to return it within 2 weeks. Every day that you''re late incurs a 50 <b>₽</b> fine."'
 			act 'Continue': gt 'city_library'
 		end}
-	
-		act 'Go back': gt 'city_library'
 	end
+
+	act 'Go back': gt 'city_library'
 end
 
 --- city_library ---------------------------------

+ 1 - 1
locations/city_mansion_residence_2.qsrc

@@ -156,7 +156,7 @@ if $ARGS[0] = 'ylibrary':
 		'A huge collection of books are neatly placed on the bookshelves.'
 		act 'Read a book on science (1:00)':
 			dynamic $downlibrary['read']
-			gs 'exp_gain', 'intel', rand(3,6) + (mentats_dose - rand(0,mentats_dose))
+			gs 'exp_gain', 'intel', rand(3,6) + rand(0, drugVars['mentats_dose'])
 			grupvalue[3] +=1
 			gs 'stat'
 

+ 11 - 19
locations/city_nightclub.qsrc

@@ -315,32 +315,24 @@ if $ARGS[0] = 'dance_guy':
 
 	act 'Kiss':
 		cla
+		'You''re passionately kissing the guy, while he''s continuously groping you, always dedicating one of his hands to either your tits or your ass.'
 		if rand(0,1) = 1:
-			'You''re passionately kissing the guy, while he''s continuously groping you, always dedicating one of his hands to either your tits or your ass. "Why don''t we go to the VIP rooms? We''ll have a bit more privacy there," he says between kisses.'
+			'"Why don''t we go to the VIP rooms? We''ll have a bit more privacy there," he says between kisses.'
 			gs 'arousal', 'kiss', 5
 			gs 'stat'
-			if pcs_horny < 70: act 'Go to the dance floor': gt 'city_nightclub', 'dance'
 			act 'Go to a private room with the guy': picrand = 38 & $sexloc = 'city_nightclub' & xgt 'sex', 'var'
-			act 'Suggest going to his place':
-				cla
-				'You lean in and whisper in his ear. "How about we have fun at your place instead?"'
-				'His eyes light up and he grabs your hand before quickly dragging you to the exit.'
-				act 'Go with him': gt 'sex_ev_start', 'hookup_npc_home_start'
-			end
 		else
-			'You''re passionately kissing the guy while he continuously gropes you, always dedicating one of his hands to either your breasts or your ass. "Let''s go to the toilet," he says with a smile.'
+			'"Let''s go to the toilet," he says with a smile.'
 			gs 'arousal', 'kiss', 5
 			gs 'stat'
-			if pcs_horny < 70: 
-				act 'Go to the dance floor': gt 'city_nightclub', 'dance'
-				act 'Go to the toilet with him': gt 'city_nightclub', 'sex'
-				act 'Suggest going to his place':
-					cla
-					'You lean in and whisper in his ear. "How about we have fun at your place instead?"'
-					'His eyes light up and he grabs your hand before quickly dragging you to the exit.'
-					act 'Go with him': gt 'sex_ev_start', 'hookup_npc_home_start'
-				end
-			end
+			act 'Go to the toilet with him': gt 'city_nightclub', 'sex'
+		end
+		if pcs_horny < 70: act 'Go to the dance floor': gt 'city_nightclub', 'dance'
+		act 'Suggest going to his place':
+			cla
+			'You lean in and whisper in his ear. "How about we have fun at your place instead?"'
+			'His eyes light up and he grabs your hand before quickly dragging you to the exit.'
+			act 'Go with him': gt 'sex_ev_start', 'hookup_npc_home_start'
 		end
 	end
 end

+ 8 - 7
locations/city_park.qsrc

@@ -38,7 +38,7 @@ if $ARGS[0] = 'start':
 	*nl
 	if hour >= 10 and hour <= 22:'The small café in the park is open. You could sit there and have some food.'
 
-	if SNarkPriton = 0:'Near the cafe, the <a href="exec: gt ''city_park'', ''junkies''">junkies</a> hang out.'
+	if drugVars['city_drugden'] = 0:'Near the cafe, the <a href="exec: gt ''city_park'', ''junkies''">junkies</a> hang out.'
 
 	if hour >= 9 or hour <= 20:
 		'There is an all year <a href="exec:gt ''city_park'', ''luna''">fair</a> at the park, which you can visit.'
@@ -94,7 +94,7 @@ if $ARGS[0] = 'start':
 
 	act 'Sit on a bench': gt'placer_sex','sitting_park_bench'
 	
-	if joint > 0 and jointhigh = 0: act 'Smoke a joint': gs 'drugs', 'joint' & gt $loc, $loc_arg
+	if mc_inventory['joints'] > 0 and drugVars['weed_high'] = 0: act 'Smoke a joint': minut += 10 & gs 'drugs', 'joint' & gt $loc, $loc_arg
 
 	if pusher = 1 and hour >= 6 and hour <= 21:
 		'There''s a drug dealer casually sitting on one of the benches. He''s trying not to be too suspicious.'
@@ -104,15 +104,16 @@ if $ARGS[0] = 'start':
 				cla
 				menu_off = 1
 				minut += 10
-				palelady = input ("How many doses you want to buy?")
+				temp_doses = input ("How many doses you want to buy?")
 
-				if palelady * 360 > money or palelady <= 0:
+				if temp_doses * 360 > money or temp_doses <= 0:
 					'Either tell me how many you want to buy or get lost.'
 				else
-					money -= palelady * 360
-					dur += palelady
+					money -= temp_doses * 360
+					mc_inventory['cocaine'] += temp_doses
 					'You get out your purse and pay him quickly, hoping nobody else saw you giving him money. He passes you the doses you''ve paid for. You can safely sniff the stuff at home.'
 				end
+				killvar 'temp_doses'
 
 				act 'Casually walk away':gt 'city_park', 'start'
 			end
@@ -678,7 +679,7 @@ end
 if $ARGS[0] = 'junkies':
 	*clr & cla
 	gs 'stat'
-	SNarkPriton = 1
+	drugVars['city_drugden'] = 1
 	'The junkies look at you with an apprehensive gaze. They probably think you are a police officer. Then one of them says, "we don''t sell no drugs. Go to the Drug House, ye can get zome there."'
 
 	act 'Walk away from them':gt 'city_park', 'start'

+ 2 - 2
locations/city_redlight.qsrc

@@ -31,9 +31,9 @@ if $ARGS[0] = 'start':
 	else
 		'The strip club is closed for the day and will reopen at 18:00.'
 	end
-	if pornstudio = 1 and hour >= 10 and hour < 22:
+	if pornstudio > 0 and hour >= 10 and hour < 22:
 		'The <a href="exec:gt ''pornstudio'', ''start''">porn studio</a> is housed within one of the few warehouses that hasn''t been abandoned.'
-	elseif pornstudio = 1 and (hour < 10 or hour >= 22):
+	elseif pornstudio > 0 and (hour < 10 or hour >= 22):
 		'The porn studio is closed and will reopen at 10:00.'
 	end
 	if hour < 3 or hour >= 11: 

+ 1 - 1
locations/city_residential.qsrc

@@ -183,7 +183,7 @@ else
 	'You see several <a href="exec: minut += 1 & gt ''city_trashplace''">trash bins</a> in the courtyard of your <a href="exec: gt ''city_apt_building'',''floor_1''">apartment building</a>.'
 end
 
-if SNarkPriton > 0:'The <a href="exec:minut += 1 & gt ''city_drugden''">drug house</a> is clearly recognizable by the syringes and trash that lies in front of it.'
+if drugVars['city_drugden'] > 0:'The <a href="exec:minut += 1 & gt ''city_drugden''">drug house</a> is clearly recognizable by the syringes and trash that lies in front of it.'
 if hour >= 8 and hour <= 23 or saunaWorkWhore > 0 or workDisk = 2:'<a href="exec:minut += 10 & gt ''city_sauna''">The sauna</a> is a 10 minute walk away. Rumors say that it''s just a front for a brothel.'
 
 if hour >= 20 or hour <= 4:

+ 3 - 3
locations/city_saunawhore.qsrc

@@ -51,16 +51,16 @@ if $ARGS[0] = 'saunawork':
 
 	act 'Use the staff bathroom': minut += 1 & gt 'city_saunawhore', 'bathroom'
 
-	if workDolg > 0 and (pcs_mood <= 10 or SLomka > 0):
+	if workDolg > 0 and (pcs_mood <= 10 or drugVars['heroin_need'] > 0):
 		cls
 		workDolg += 420
 		gs 'stat'
 		'You are beckoned by the nurse. You walk up to her and she demands to see your arm. You present your arm and she takes out a syringe filled with drugs. "Sit still, I''ll give you a shot now and it will make you feel like normal again."'
 
 		act 'Leave':
-			gs 'drugs', 'heroin'
 			minut += 10
-			gs 'stat'
+			gs 'drugs', 'heroin'
+
 			gt 'city_saunawhore', 'saunawork'
 		end
 		exit

+ 1 - 1
locations/city_suburbs.qsrc

@@ -29,7 +29,7 @@ if $ARGS[0] = 'start':
 	end
 	act 'Walk to the bus station (0:05)': minut += 5 & gt 'bus', 'suburbs'
 
-	if BDSMClub = 1 or BDSMmeet > 0:
+	if bdsmclub['unlocked'] = 1:
 		act 'Go to the BDSM club': gt 'bdsm_mansion','start'
 	end
 

+ 3 - 3
locations/cum_call.qsrc

@@ -29,6 +29,7 @@ gs 'cum_call', 'anus' - for an unknown partner named "unknown", or
 gs 'cum_call', 'anus', 'plumber' - for an unknown partner named "plumber"}
 
 if $ARGS[0] ! 'precum':
+	$cumboy = $boy
 
 	if $boy ! $ARGS[1] and $ARGS[1] ! '': $boy = $ARGS[1]
 
@@ -51,8 +52,6 @@ if $ARGS[0] ! 'precum':
 		gs 'boyStat', $ARGS[1]
 	end
 
-	$cumboy = $boy
-
 	sexvolume  = iif(ARGS[5] ! 0,  ARGS[5], 40)
 	sexspecpot = iif(ARGS[4] ! 0,  ARGS[4], 0)
 	sexcontra  = max(0, min(7, ARGS[3]), sexcontra)
@@ -64,7 +63,7 @@ if $ARGS[0] ! 'precum':
 		sexpartkno = 1
 	end
 
-		if arrpos('$ARGS', 'labia') >= 0:
+	if arrpos('$ARGS', 'labia') >= 0:
 		spafinloc = 1
 	elseif arrpos('$ARGS', 'pantyfront') >= 0:
 		spafinloc = 2
@@ -116,6 +115,7 @@ if $ARGS[0] ! 'precum':
 	$boy = $cumboy
 
 	sexcontra = 0
+	killvar '$cumboy'
 else
 	!This is to check for pregnancy and stds from precum. It is added for readability when it is used in the code.
 	!It will call cum_call with potency of 1 40th of what it would be for a normal call.

+ 28 - 28
locations/dateF.qsrc

@@ -29,19 +29,19 @@ if $ARGS[0] = 'start':
 	act 'Ignore her and hurry away':gt $loc, $loc_arg
 	!!1) Sveta in a school uniform
 	if PCloStyle2 = 4:
-		'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/'+lover_picrand+'.jpg"></center>'
+		'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/<<lover_picrand[$boy]>>.jpg"></center>'
 		'You notice <<$boybody_pref>> girl with <<$boybod_pref>> body and <<$boyface>> hair approaching you. She is wearing <<$boyClo>>'
 		'As she nears you, she presents herself; "Hi. My name is <<$boydesc>>. What are you doing here all by yourself?"'
 		act 'Greet her':
 			*clr & cla
 			minut += 5
 			gs 'stat'
-			'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/'+lover_picrand+'.jpg"></center>'
+			'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/<<lover_picrand[$boy]>>.jpg"></center>'
 			'"Hi! My name is <<$pcs_nickname>>." you answer. "School just ended so I was trying to figure out what to do for the rest of the day."'
 			'"Oh really." After a moment of silence <<$boydesc>> finally speaks up; "Don''t take this the wrong way but what school do you attend?" she asks.'
 			act 'Don''t tell her which school':
 				*clr & cla
-				'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/'+lover_picrand+'.jpg"></center>'
+				'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/<<lover_picrand[$boy]>>.jpg"></center>'
 				'You break out into laughter, "Why would I tell you that, for all I know you could be a weird stalker."'
 				'"Did you just accuse me for being a stalker?" she asks as her voice changes to a more serious tone.'
 				'"I didn''t mean to make you upset, but don''t you thinks it''s a bit creepy for someone unknown to walk up a schoolgirl and ask what school they go to?" you answer.'
@@ -51,7 +51,7 @@ if $ARGS[0] = 'start':
 			end
 			act 'Tell her':
 				*clr & cla
-				'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/'+lover_picrand+'.jpg"></center>'
+				'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/<<lover_picrand[$boy]>>.jpg"></center>'
 				'"I don''t really know if I should tell you that. For all I know you might be a creepy woman that wants to kidnap me."'
 				'"I''m sorry I knew I would come off as creepy, but I got a bit thrown off by your school outfit. I didn''t mean anything by it."'
 				if $loc = 'pav_residential' or $loc = 'pav_commercial':
@@ -67,7 +67,7 @@ if $ARGS[0] = 'start':
 				end
 				act 'Decline':
 					*clr & cla
-					'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/'+lover_picrand+'.jpg"></center>'
+					'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/<<lover_picrand[$boy]>>.jpg"></center>'
 					'As you''re talking you get a creepy feeling about this girl, "I''m sorry but I just remembered I was supposed to meet a friend."'
 					'<<$boydesc>> looks at you disappointed. "Oh, that''s a shame. Could I get-..."'
 					'You''re already moving away from her before she even finished her sentence not hearing what she wanted.'
@@ -75,7 +75,7 @@ if $ARGS[0] = 'start':
 				end
 				act 'Decline politely':
 					*clr & cla
-					'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/'+lover_picrand+'.jpg"></center>'
+					'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/<<lover_picrand[$boy]>>.jpg"></center>'
 					'"I''m sorry but I''m not interested. I sort of have a boyfriend..." you answer wanting to reject the girl as easy as possible.'
 					'"That''s too bad... I should have guessed a girl in that hot outfit would be taken."'
 					'As you move away from her, you''re glad you declined, especially after the last comment.'
@@ -83,7 +83,7 @@ if $ARGS[0] = 'start':
 				end
 				act 'I would love to':
 					*clr & cla
-					'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/'+lover_picrand+'.jpg"></center>'
+					'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/<<lover_picrand[$boy]>>.jpg"></center>'
 					'"Sure, that sounds fun and I just so happen to have some time to kill." You say with a wink.'
 					'"Great!" answers <<$boydesc>> "So, what do you want to do?".'
 					gs 'dateF', 'date_choice'
@@ -91,7 +91,7 @@ if $ARGS[0] = 'start':
 				act 'I would love to but can''t right now':
 					*clr & cla
 					gs 'girlfriend', 'start'
-					'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/'+lover_picrand+'.jpg"></center>'
+					'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/<<lover_picrand[$boy]>>.jpg"></center>'
 					'"I''m sorry, I would love to go on a date with you but I''m busy right. What if I give you my number so you can call me?"'
 					'"I say that''s a great idea. I''ll be in touch." <<$boydesc>> adds your number to her contact list.'
 					'"You better be." you say teasingly.'
@@ -101,26 +101,26 @@ if $ARGS[0] = 'start':
 		end
 	!!2) Gopnik Sveta
 	elseif gruptipe = 4:
-		'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/'+lover_picrand+'.jpg"></center>'
+		'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/<<lover_picrand[$boy]>>.jpg"></center>'
 		'You notice <<$boybody_pref>> girl with <<$boybod_pref>> body and <<$boyface>> hair approaching you. She is wearing <<$boyClo>>'
 		'As she nears you, you hear her say, "Hey baby, you seem like a girl that likes to have fun. What do you say, wanna hang out?"'
 		act 'Look at her':
 			*clr & cla
 			minut += 5
 			gs 'stat'
-			'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/'+lover_picrand+'.jpg"></center>'
+			'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/<<lover_picrand[$boy]>>.jpg"></center>'
 			'You give her a once over and then give her an amused look, "What did you say? I hope you know what you''re getting yourself into."'
 			'Not fazed by your brashness she continues on, "I know it''s just a front with girls like you. All of you just act hard but I''ve got you all figured out. Tell me this instead, what is your name?"'
 			act 'No':
 				*clr & cla
-				'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/'+lover_picrand+'.jpg"></center>'
+				'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/<<lover_picrand[$boy]>>.jpg"></center>'
 				'"How about I kick your ass instead? Now get out of here before you know what my boot feels like shoved up your ass." you reply angrily.'
 				'"Okay, okay, sheesh... take it easy." she says loudly as she''s moving away from you.'
 				act 'Continue': gt $loc, $loc_arg
 			end
 			act 'Answer her':
 				*clr & cla
-				'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/'+lover_picrand+'.jpg"></center>'
+				'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/<<lover_picrand[$boy]>>.jpg"></center>'
 				'You give her a contemptuous look. "Oh, you have me all figured out do you? My name is <<$pcs_nickname>>, not that it is any of your business."'
 				if $loc = 'pav_residential' or $loc = 'pav_commercial':
 					'"Well, I spotted you while I was on my way to a friend''s place and your looks caught my attention. Simply said, I want to add another trophy to my trophy wall." she impudently answers.'
@@ -134,7 +134,7 @@ if $ARGS[0] = 'start':
 				act 'Not now':
 					*clr & cla
 					gs 'girlfriend', 'start'
-					'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/'+lover_picrand+'.jpg"></center>'
+					'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/<<lover_picrand[$boy]>>.jpg"></center>'
 					'"I''m busy right now." You tell her and watch her become disappointed. "But maybe I will get bored out of my skull and you will seem like a better open, so take my number and maybe I will answer if you call."'
 					'She laughs at your response. "Thanks. I''ll try to make sure to call you when you''re really bored." <<$boydesc>> adds your number to her contact list.'
 					'"Don''t count on it loser." you answer.'
@@ -150,7 +150,7 @@ if $ARGS[0] = 'start':
 				end
 				act 'Fine':
 					*clr & cla
-					'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/'+lover_picrand+'.jpg"></center>'
+					'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/<<lover_picrand[$boy]>>.jpg"></center>'
 					'You give her a hard look and eye her up and down. "Fine I''m fucking bored anyways, but you''re paying."'
 					'"Good, I expected no other outcome." she says. "I''ll give it to you to decide what we should do?".'
 					gs 'dateF', 'date_choice'
@@ -159,12 +159,12 @@ if $ARGS[0] = 'start':
 		end
 	!!3 - unattractive or average Sveta
 	elseif hotcat < 6:
-		'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/'+lover_picrand+'.jpg"></center>'
+		'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/<<lover_picrand[$boy]>>.jpg"></center>'
 		'You notice <<$boybody_pref>> girl with <<$boybod_pref>> body and <<$boyface>> hair approaching you. She is wearing <<$boyClo>>'
 		'As she nears you, she reaches out her hand for a handshake. "Hi. My name is <<$boydesc>>."'
 		act 'Refuse and walk away':
 			*clr & cla
-			'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/'+lover_picrand+'.jpg"></center>'
+			'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/<<lover_picrand[$boy]>>.jpg"></center>'
 			'Not really impressed, you decide to teach her a lesson, "Sure thing, here''s my number."'
 			'<<$boydesc>> quickly scribbles it down not knowing you''ve just given her a totally unknown number.'
 			act 'Continue': gt $loc, $loc_arg
@@ -173,14 +173,14 @@ if $ARGS[0] = 'start':
 			*clr & cla
 			minut += 5
 			gs 'stat'
-			'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/'+lover_picrand+'.jpg"></center>'
+			'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/<<lover_picrand[$boy]>>.jpg"></center>'
 			'You think <<$boydesc>> is cute-looking and even though you''re not sure about this you decide grasping her hand.'
 			'"Aren''t you going to tell me your name?" she asks.'
 	!!I would suggest an option for Sveta to be happy about it.
 			act 'Decline':gt 'dateF', 'decline'
 			act 'Happily tell her your name':
 				*clr & cla
-				'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/'+lover_picrand+'.jpg"></center>'
+				'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/<<lover_picrand[$boy]>>.jpg"></center>'
 				'All of a sudden you get a bubbly feeling in your stomach thinking if she''s really asking your name?'
 				'You break out in a smile telling her, "My name is <<$pcs_nickname>>."'
 				'"What a beautiful name and a loving smile." <<$boydesc>> tells you.'
@@ -189,7 +189,7 @@ if $ARGS[0] = 'start':
 				act 'Decline':gt 'dateF', 'decline'
 				act 'I would love to':
 					*clr & cla
-					'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/'+lover_picrand+'.jpg"></center>'
+					'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/<<lover_picrand[$boy]>>.jpg"></center>'
 					'You think about it a moment and figure why not "Sure I would love to out with you."'
 					'"Great!" answers <<$boydesc>> "So, what do you want to do?".'
 					gs 'dateF', 'date_choice'
@@ -197,7 +197,7 @@ if $ARGS[0] = 'start':
 				act 'I would love to but can''t right now':
 					*clr & cla
 					gs 'girlfriend', 'start'
-					'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/'+lover_picrand+'.jpg"></center>'
+					'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/<<lover_picrand[$boy]>>.jpg"></center>'
 					'"I''m sorry, I would love to go on a date with you but I''m busy right. What if I give you my number so you can call me?"'
 					'"I say that''s a great idea. I''ll be in touch." <<$boydesc>> adds your number to her contact list.'
 					'"You better be." you say teasingly.'
@@ -206,19 +206,19 @@ if $ARGS[0] = 'start':
 			end
 		end 
 	else
-		'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/'+lover_picrand+'.jpg"></center>'
+		'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/<<lover_picrand[$boy]>>.jpg"></center>'
 		'You notice <<$boybody_pref>> girl with <<$boybod_pref>> body and <<$boyface>> hair approaching you. She is wearing <<$boyClo>>'
 		'She walks up to full of confidence, "Damn, baby, on a scale from 1 to 10, you''re an 11. How about a date?"'
 		act 'Excuse me?':
 			*clr & cla
 			minut += 5
 			gs 'stat'
-			'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/'+lover_picrand+'.jpg"></center>'
+			'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/<<lover_picrand[$boy]>>.jpg"></center>'
 			'"Yeah, you heard me." said <<$boydesc>>. "Don''t act all that surprised, you''re good-looking, I''m good-looking we would be the perfect couple, so what do you say?"'
 			'"Isn''t someone full of confidence." you comment, seizing control of the conversation, as you contemplate your next move...'
 			act 'Remain silent':
 				*clr & cla
-				'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/'+lover_picrand+'.jpg"></center>'
+				'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/<<lover_picrand[$boy]>>.jpg"></center>'
 				'"Come on, gorgeous, don''t give me the silent treatment."'
 				'As you hear the word gorgeous you melt straight away. You blush and mumble thanks, stammering like a buffoon.'
 				'<<$boydesc>> noticing that you''re having some trouble, smiles and tells you, "I''ll ask you one more time, I don''t want to come off as desperate." she says laughing.'
@@ -230,7 +230,7 @@ if $ARGS[0] = 'start':
 				
 				act 'Decline':
 					*clr & cla
-					'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/'+lover_picrand+'.jpg"></center>'
+					'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/<<lover_picrand[$boy]>>.jpg"></center>'
 					'"I''m sorry but I don''t feel myself attracted to you enough and I don''t want to lead you on."'
 					'<<$boydesc>> looks at you disappointed. "Oh well, I didn''t think I had a chance but you can''t blame me for trying."'
 					'The two of you say goodbye to each other.'
@@ -239,7 +239,7 @@ if $ARGS[0] = 'start':
 				
 				act 'Look at her in disgust':
 					*clr & cla
-					'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/'+lover_picrand+'.jpg"></center>'
+					'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/<<lover_picrand[$boy]>>.jpg"></center>'
 					'"I''m sorry, it''s good that you have all this confidence, but I''m way out of your league. There''s no way I would be caught seen out with you."'
 					'"What did you say, you little..." you''re not able to hear the rest as you walk away...'
 					act 'Continue': gt $loc, $loc_arg
@@ -247,7 +247,7 @@ if $ARGS[0] = 'start':
 				
 				act 'Agree to a date':
 					*clr & cla
-					'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/'+lover_picrand+'.jpg"></center>'
+					'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/<<lover_picrand[$boy]>>.jpg"></center>'
 					'"Stop, you''re making me blush again. Sure, sounds like fun, I would love to."'
 					'"Great!" answers <<$boydesc>> "So, what do you want to do gorgeous?".'
 					gs 'dateF', 'date_choice'
@@ -256,7 +256,7 @@ if $ARGS[0] = 'start':
 				act 'I would love to but can''t right now':
 					*clr & cla
 					gs 'girlfriend', 'start'
-					'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/'+lover_picrand+'.jpg"></center>'
+					'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/<<lover_picrand[$boy]>>.jpg"></center>'
 					'"I''m sorry, I would love to go on a date with you but I''m busy right. What if I give you my number so you can call me?"'
 					'"I say that''s a great idea. I''ll be in touch." <<$boydesc>> adds your number to her contact list.'
 					'"You better be." you say teasingly.'
@@ -269,7 +269,7 @@ end
 
 if $args[0] = 'decline':
 	*clr & cla
-	'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/'+lover_picrand+'.jpg"></center>'
+	'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/<<lover_picrand[$boy]>>.jpg"></center>'
 	'"I''m sorry but I don''t feel us clicking so I''ll have to decline."'
 	'<<$boydesc>> looks at you disappointed and then shrugs. "Well can''t blame a girl for trying, right?"'
 	'The two of you say goodbye to each other.'

+ 3 - 9
locations/dimaEv.qsrc

@@ -77,9 +77,7 @@ end
 if $ARGS[0] = 'drugged':
 	*clr & cla
 	minut += 15
-	narkday = daystart
-	dur += 1
-	gs 'drugs', 'cocaine'
+	gs 'drugs', 'cocaine', 1
 	gs 'stat'
 	'<center><b><font color="maroon"><<$npc_firstname[''A1'']>> <<$npc_lastname[''A1'']>></font></b></center>'
 	'<center><img <<$set_imgh>> src="images/characters/shared/headshots_main/big1.jpg"></center>'
@@ -90,9 +88,7 @@ end
 if $ARGS[0] = 'cocaine':
 	*clr & cla
 	minut += 15
-	narkday = daystart
-	dur += 1
-	gs 'drugs', 'cocaine'
+	gs 'drugs', 'cocaine', 1
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/shared/drugs/dur.jpg"></center>'
 	'You sniff up the dose of powder. For a moment you just feel numb, then you feel yourself get aroused. The heat coming from your pussy intensifying as it soaks itself. You gasp. It is almost too much to take. You desperately need someone to fuck you. "Oh, fuck". You don''t think this is normal. He must have laced it with something. You blink a few times trying to clear your head, but soon your thoughts grow murky.'
@@ -369,9 +365,7 @@ if $ARGS[0] = 'dimkaplays':
 	act 'Snort':
 		*clr & cla
 		minut += 15
-		narkday = daystart
-		dur += 1
-		gs 'drugs', 'cocaine'
+		gs 'drugs', 'cocaine', 1
 		gs 'stat'
 		'<center><img <<$set_imgh>> src="images/shared/drugs/dur.jpg"></center>'
 		'You sniff up the dose of powder. For a moment, you just feel numb, then you feel yourself get aroused, the heat coming from your pussy as it soaks itself, you gasp, it is almost too much to take, you desperately need someone to fuck you. "Oh, fuck". You don''t think this is normal, he must have laced it with something. You blink a few times trying to clear your head, but soon your thoughts grow murky'

+ 10 - 30
locations/din_bad.qsrc

@@ -124,7 +124,7 @@ if $ARGS[0] = 'd_bag':
 	'<td cellspacing="0" cellpadding="0" valign="top">'
 	if mc_inventory['makeup_wipes'] > 0: 'You have <b><<mc_inventory[''makeup_wipes'']>></b> wet wipes left in your purse. <a href="exec:dynamic $d_salf">Use a tissue</a>'
 	if mc_inventory['painkillers'] > 0 and pain['total'] > 0 and pain['killer'] = 0: 
-		'You have <b><<mc_inventory[''painkillers'']>></b> painkiller'+iif(mc_inventory['painkillers'] > 1, 's ', ' ')+'left in your purse. <a href="exec: pain[''killer''] += 1 & mc_inventory[''painkillers''] -= 1 & gs ''din_bad'', ''d_bag''">Take One</a>'
+		'You have <b><<mc_inventory[''painkillers'']>></b> painkiller'+iif(mc_inventory['painkillers'] > 1, 's ', ' ')+'left in your purse. <a href="exec: gs ''drugs'', ''painkiller'' & gs ''din_bad'', ''d_bag''">Take One</a>'
 	elseif mc_inventory['painkillers'] > 0 and (pain['total'] = 0 or pain['killer'] > 0):
 		'You have <b><<mc_inventory[''painkillers'']>></b> painkiller'+iif(mc_inventory['painkillers'] > 1, 's ', ' ')+'left in your purse.'
 	end
@@ -198,8 +198,8 @@ if $ARGS[0] = 'd_bag':
 		if pirsA + pirsB + pirsC + pirsD + pirsE + pirsF + pirsN + pirsG > 0: act 'Manage your piercings': gt 'piercing_management', 'main'
 	end
 	*nl
-	if amphetamine > 0:	'You have <b><<amphetamine>></b> tablets of amphetamine left in your purse. <a href="exec: gs ''drugs'', ''amphetamine'' & gs ''din_bad'', ''d_bag''">Take One</a>'
-	if joint > 0: 'You have enough weed for <b><<joint>></b> joints.'
+	if mc_inventory['amphetamine'] > 0:	'You have <b><<mc_inventory[''amphetamine'']>></b> tablets of amphetamine left in your purse. <a href="exec: gs ''drugs'', ''amphetamine'' & gs ''din_bad'', ''d_bag''">Take One</a>'
+	if mc_inventory['joints'] > 0: 'You have enough weed for <b><<mc_inventory[''joints'']>></b> joints.'
 	if mc_inventory['contraceptive_pill'] > 0 and pillsleft[ptype] > 0:
 		'You have <b><<mc_inventory[''contraceptive_pill'']>></b> unopened packages of <a href="exec:dynamic $d_tabletkied">birth control pills</a> and <b><<pillsleft[ptype]>></b> pills left in your opened package.'
 	elseif mc_inventory['contraceptive_pill']	= 0 and pillsleft[ptype] > 0:
@@ -218,14 +218,14 @@ if $ARGS[0] = 'd_bag':
 	else
 		'You have no morning after pills.'
 	end
-	if mentats_have > 0 and mentats_dose < 3:
-		'<a href="exec: gs ''drugs'', ''mentats'' & gs ''din_bad'', ''d_bag'' & *pl ''<font color = green><br>You swallow the neurobooster pill.</font>''">Use a neurobooster pill in your purse.</a> There are <b><<mentats_have>></b> pills left. The warning label says not to take more than one per day.'
-	elseif mentats_have > 0:
-		'There are <b><<mentats_have>></b> neurobooster pills left. You really shouldn''t take any more pills today.'
+	if mc_inventory['mentats'] > 0 and drugVars['mentats_dose'] < 3:
+		'<a href="exec: gs ''drugs'', ''mentats'' & gs ''din_bad'', ''d_bag'' & *pl ''<font color = green><br>You swallow the neurobooster pill.</font>''">Use a neurobooster pill in your purse.</a> There are <b><<mc_inventory[''mentats'']>></b> pills left. The warning label says not to take more than one per day.'
+	elseif mc_inventory['mentats'] > 0:
+		'There are <b><<mc_inventory[''mentats'']>></b> neurobooster pills left. You really shouldn''t take any more pills today.'
 	end
-	if steroid_have > 0:'<a href="exec:dynamic $use_steroids & gs ''din_bad'', ''d_bag''">Use steroids.</a> You have <b><<steroid_have>></b> steroids left in your purse.'
-	if bcream_have > 0:'<a href="exec:dynamic $use_bcream & gs ''din_bad'', ''d_bag''">Apply breast cream.</a> You have <b><<bcream_have>></b> cream left in your purse.'
-	if aphrodisiac_have > 0:'<a href="exec: gs ''drugs'', ''aphrodisiac'' & gs ''din_bad'', ''d_bag'' & *pl $aphrodisiac_msg & *pl $min_arousal_msg & killvar ''$min_arousal_msg''">Chew aphrodisiac gum.</a> You have <b><<aphrodisiac_have>></b> gum left in your purse.'
+	if mc_inventory['steroids'] > 0:'<a href="exec:dynamic gs ''drugs'', ''steroids'' & gs ''din_bad'', ''d_bag''">Use steroids.</a> You have <b><<mc_inventory[''steroids'']>></b> steroids left in your purse.'
+	if mc_inventory['breastcream'] > 0:'<a href="exec: gs ''drugs'', ''breastcream'' & gs ''din_bad'', ''d_bag''">Apply breast cream.</a> You have <b><<mc_inventory[''breastcream'']>></b> cream left in your purse.'
+	if mc_inventory['aphrodisiac'] > 0:'<a href="exec: gs ''drugs'', ''aphrodisiac'' & gs ''din_bad'', ''d_bag'' & *pl $drugVars[''aphrodisiac_msg''] & *pl $min_arousal_msg & killvar ''$min_arousal_msg''">Chew aphrodisiac gum.</a> You have <b><<mc_inventory[''aphrodisiac'']>></b> gum left in your purse.'
 
 	if mc_inventory['refill_bottle'] = 4: 
 		'You carry your sports water bottle in your purse. It''s still completely full. <a href="exec: mc_inventory[''refill_bottle''] = 3 & pcs_hydra += 75 & cumspclnt = 2 & gs ''cum_cleanup'' & gs ''stat'' & gs ''din_bad'', ''d_bag''">Drink</a>'
@@ -1057,26 +1057,6 @@ $d_pregmovement = {
 	end
 }
 
-$use_steroids = {
-	if steroid_dose < 3:
-		'<font color = blue>You swallow the orange pill.</font>'
-		steroid_dose += 1
-		steroid_counter += 1
-		steroid_have -= 1
-	else
-		'You really shouldn''t take any more pills today.'
-	end
-}
-
-$use_bcream = {
-	if bcream_used < 1:
-		'<font color = #DB7093>You smear the cream onto your breasts and rub it in.</font>'
-		bcream_used = 1
-		bcream_have -= 1
-	else
-		'Using any more cream won''t have any effect.'
-	end
-}
 
 if $ARGS[0] = 'takepill':
 	birth_control['using_bc'] = 3

+ 13 - 15
locations/din_van.qsrc

@@ -102,11 +102,11 @@ $shower = {
 
 		if deodorant_on = 1: gs 'sweat', 'remove_deo' & 'Your deodorant gets washed away in the shower.'
 
-		if btwarn > 0:
-			if btwarn = 1: $weightwarn = 'losing'
-			if btwarn = 2: $weightwarn = 'gaining'
+		if bodyVars['weight_warning'] > 0:
+			if bodyVars['weight_warning'] = 1: $weightwarn = 'losing'
+			if bodyVars['weight_warning'] = 2: $weightwarn = 'gaining'
 			'<font color="red"><b>You seem to be <<$weightwarn>> weight.</b></font>'
-			killvar '$weightwarn' & btwarn = 0
+			killvar '$weightwarn' & bodyVars['weight_warning'] = 0
 		end
 		if normbuffpick = 1:
 			*nl
@@ -243,11 +243,11 @@ $bath = {
 
 		if deodorant_on = 1: gs 'sweat', 'remove_deo' & 'Your deodorant gets washed away in the bath.'
 
-		if btwarn > 0:
-			if btwarn = 1: $weightwarn = 'losing'
-			if btwarn = 2: $weightwarn = 'gaining'
+		if bodyVars['weight_warning'] > 0:
+			if bodyVars['weight_warning'] = 1: $weightwarn = 'losing'
+			if bodyVars['weight_warning'] = 2: $weightwarn = 'gaining'
 			'<font color="red"><b>You seem to be <<$weightwarn>> weight.</b></font>'
-			killvar '$weightwarn' & btwarn = 0
+			killvar '$weightwarn' & bodyVars['weight_warning'] = 0
 		end
 		if normbuffpick = 1:
 			''
@@ -1035,14 +1035,13 @@ $toymanage = {
 }
 
 $palelady = {
-	if dur > 0:'You have enough cocaine for <<dur>> '+iif(dur = 1, ' line.', ' lines.')
+	if mc_inventory['cocaine'] > 0:'You have enough cocaine for <<mc_inventory[''cocaine'']>> ' + iif(mc_inventory['cocaine'] = 1, ' line.', ' lines.')
 
-	if dur > 0 and narkday ! daystart:
+	if mc_inventory['cocaine'] > 0 and drugVars['cocaine_day'] ! daystart:
 		act 'Do a line of cocaine (0:05)':
 			*clr & cla
 			menu_off = 1
 			minut += 5
-			narkday = daystart
 			gs 'drugs', 'cocaine'
 			if $locclass = 'restroom':
 				'<center><img <<$set_imgh>> src="images/shared/drugs/public_rr_coke.jpg"></center>'
@@ -1125,8 +1124,7 @@ if $ARGS[0] = 'private':
 		if pain['total'] > 0 and pain['killer'] = 0:
 			act 'Take a painkiller':
 				cla
-				pain['killer'] += 1
-				mc_inventory['painkillers'] -= 1
+				gs 'drugs', 'painkiller'
 				pcs_hydra += 20
 				gs 'stat'
 
@@ -1138,8 +1136,8 @@ if $ARGS[0] = 'private':
 		end
 	end
 
-	if bcream_have > 0:
-		'<a href="exec:dynamic $use_bcream & gt $loc, $loc_arg">Apply breast cream.</a> Uses left: <<bcream_have>>.'
+	if mc_inventory['breastcream'] > 0:
+		'<a href="exec:gs ''drugs'', ''breastcream'' & gt $loc, $loc_arg">Apply breast cream.</a> Uses left: <<mc_inventory[''breastcream'']>>.'
 	end
 
 	if pirsA + pirsB + pirsC + pirsD + pirsE + pirsF + pirsN + pirsG > 0:'<a href="exec:*clr & cla & dynamic $pirManage">Manage your piercings</a>'

+ 1 - 1
locations/dream_events.qsrc

@@ -537,7 +537,7 @@ if $ARGS[0] = 'succub_dreams':
 		end
 	elseif ivrand = 2:
 		'<center><img <<$set_imgh>> src="images/shared/home/bedroom/dream/sucrandream2.jpg"></center>'
-		'You dream that you were victorious over Toby and the entire Order of Dawn.'
+		'You dream that you have crushed all those who stand in your way and earned your seat at the council.'
 	elseif ivrand = 3:
 		'<center><img <<$set_imgh>> src="images/shared/home/bedroom/dream/sucrandream3.jpg"></center>'
 		if succublvl < 3:

+ 531 - 205
locations/drugs.qsrc

@@ -1,13 +1,15 @@
 # drugs
 
 !! How to use:
-!! Smoking: gs 'drugs', 'smoke' (if it isn''t svetas cigarette, you have to add mc_inventory['cigarettes'] += 1)
-!! Joint/Weed: gs 'drugs', 'joint' (if it isn''t svetas joint, you have to add joint += 1)
-!! Heroin: gs 'drugs', 'heroin'
-!! Cocaine: gs 'drugs', 'cocaine' (if it isn''t svetas cocaine, you have to add dur += 1)
-!! Amphetamine: gs 'drugs', 'amphetamine' (if it isn''t svetas amphetamine, you have to add amphetamine += 1)
-!! Neurobooster: gs 'drugs', 'mentats' (if it isn''t svetas mentats, you have to add mentats_have += 1)
-!! Aphrodisiac: gs 'drugs', 'aphrodisiac' (if it isn''t svetas aphrodisiac, you have to add aphrodisiac_have += 1)
+!! Smoking:		gs 'drugs', 'smoke' (if it isn''t svetas cigarette, you have to use use  gs 'drugs', 'smoke', 1  OR add  mc_inventory['cigarettes'] += 1 or )
+!! Joint/Weed:	gs 'drugs', 'joint' (if it isn''t svetas joint, you have to use  gs 'drugs', 'joint', 1  OR add  mc_inventory['joints'] += 1)
+!! Heroin:		gs 'drugs', 'heroin'
+!! Cocaine:		gs 'drugs', 'cocaine' (if it isn''t svetas cocaine, you have to use  gs 'drugs', 'cocaine', 1  OR add  mc_inventory['cocaine'] += 1)
+!! Amphetamine:	gs 'drugs', 'amphetamine' (if it isn''t svetas amphetamine, you have to use  gs 'drugs', 'amphetamine', 1  OR add  mc_inventory['amphetamine'] += 1)
+!! Neurobooster:gs 'drugs', 'mentats' (if it isn''t svetas mentats, you have to  use  gs 'drugs', 'mentats', 1  OR add  mc_inventory['mentats'] += 1)
+!! Aphrodisiac:	gs 'drugs', 'aphrodisiac' (if it isn''t svetas aphrodisiac, you have to use  gs 'drugs', 'aphrodisiac', 1  OR add  mc_inventory['aphrodisiac'] += 1)
+!! Steroids:	gs 'drugs', 'steroids' (if it isn''t svetas steroids, you have to use  gs 'drugs', 'steroids', 1  OR add  mc_inventory['steroids'] += 1)
+!! Breast Cream:gs 'drugs', 'breastcream' (if it isn''t svetas breast cream, you have to use  gs 'drugs', 'breastcream', 1  OR add mc_inventory['breastcream'] += 1)
 
 !! Alcohol: gs 'drugs', 'alcohol', 'type', count
 !! Types: beer, champagne, moonshine, rum, scotch, vodka, wine, whiskey
@@ -15,239 +17,563 @@
 !! Example 1: sveta drinks vodka gs 'drugs', 'alcohol', 'vodka' (or gs 'drugs', 'alcohol', 'vodka', 1)
 !! Example 2: sveta drinks 2 beer gs 'drugs', 'alcohol', 'beer', 2
 
-if $ARGS[0] = 'smoke':
-	if NarkImmune = 0: 
-		smoker += 1
-		if smoker > 20 and smoke_exp = 0: smoke_exp = 1
+
+if $ARGS[0] = 'cikl':
+	gs 'drugs', 'cocaine', 'cikl'
+	gs 'drugs', 'mentats', 'cikl'
+	gs 'drugs', 'aphrodisiac', 'cikl'
+
+elseif $ARGS[0] = 'hourly_events':
+	gs 'drugs', 'smoke', 'hourly_events'
+	gs 'drugs', 'joint', 'hourly_events'
+	gs 'drugs', 'heroin', 'hourly_events'
+	gs 'drugs', 'cocaine', 'hourly_events'
+	gs 'drugs', 'amphetamine', 'hourly_events'
+	gs 'drugs', 'aphrodisiac', 'hourly_events'
+
+elseif $ARGS[0] = 'stat':
+	gs 'drugs', 'heroin', 'stat'
+	gs 'drugs', 'alcohol', 'stat'
+	gs 'drugs', 'cocaine', 'stat'
+	gs 'drugs', 'amphetamine', 'stat'
+
+elseif $ARGS[0] = 'pain_relief':
+	if alko > 9:
+		pain['relief'] = 70
+	elseif alko > 6:
+		pain['relief'] = 40
+	elseif alko > 3:
+		pain['relief'] = 15
 	end
-	
-	stat['cigarettes_smoked'] += 1
-	smokeDay = daystart
-	smokeHour = hour
-	smokeminut = minut + 3
-	smokerNeed = 0
-	cumspclnt = 2
-	teeth['smoked'] += 1
-	gs 'cum_cleanup'
-	pcs_breath = 0
-	pcs_mood += 100
-	if pcs_hydra >= 100:
-		pcs_hydra -= 5
-	else
-		pcs_hydra -= 10
+
+	if drugVars['heroin_high'] > 0:
+		pain['relief'] = 90
+	elseif drugVars['cocaine_system'] > 0:
+		pain['relief'] = 60
+	elseif pain['killer'] > 12 and alko <= 9:
+		pain['relief'] = 50
 	end
-	if pcs_energy < 80: pcs_energy += 4
-	gs 'stat'
-	if siga_bum = 1:
-		siga_bum = 0
+
+
+elseif $ARGS[0] = 'smoke':
+	if $ARGS[1] = 'hourly_events':
+		if drugVars['cigarettes_used'] >= 20 and drugVars['cheat_immune'] = 0: drugVars['cigarettes_need'] += 1
+		if drugVars['cigarettes_need'] > 10 and InSleep = 0 and pcs_mood > 20 and drugVars['cheat_immune'] = 0: pcs_mood -= pcs_mood / 10
+
+		if drugVars['cigarettes_need'] > 300:
+			drugVars['cigarettes_need'] = 0
+			drugVars['cigarettes_used'] = 0
+		end
 	else
-		mc_inventory['cigarettes'] -= 1
-		if mc_inventory['cigarettes'] = 0:msg'That was your last cigarette.'
+		if ARGS[1] = 0 and $ARGS[1] = '':
+			mc_inventory['cigarettes'] -= 1
+			if mc_inventory['cigarettes'] <= 0: mc_inventory['cigarettes'] = 0 & msg 'That was your last cigarette.'
+		end
+
+		if drugVars['cheat_immune'] = 1:
+			drugVars['cigarettes_used'] += 1
+			if drugVars['cigarettes_used'] > 20 and drugVars['cigarettes_exp'] = 0: drugVars['cigarettes_exp'] = 1
+		end
+		
+		stat['cigarettes_smoked'] += 1
+		drugVars['cigarettes_day'] = daystart
+		drugVars['cigarettes_hour'] = hour
+		drugVars['cigarettes_minute'] = minut + 3
+		drugVars['cigarettes_need'] = 0
+		teeth['smoked'] += 1
+
+		pcs_breath = 0
+		pcs_mood += 100
+		if pcs_hydra >= 100:
+			pcs_hydra -= 5
+		else
+			pcs_hydra -= 10
+		end
+		if pcs_energy < 80: pcs_energy += 4
+
+		cumspclnt = 2
+		gs 'cum_cleanup'
+		gs 'stat'
 	end
+
 	
 elseif $ARGS[0] = 'joint':
-	minut += 10
-	if NarkImmune = 0: 
-		joint_smoked += 1
-		if joint_smoked > 5 and joint_exp = 0: joint_exp = 1
-	end
-	joint -= 1
-	jointday = daystart
-	jointhour = hour
-	jointminut = minut + 2
-	if minut > 30:
-		jointhigh = 2
-	else
-		jointhigh = 1
-	end	
-	cumspclnt = 2
-	gs 'cum_cleanup'
-	pcs_breath = 0
-	pcs_mood += 100
-	if pcs_hydra >= 100:
-		pcs_hydra -= 5
+	if $ARGS[1] = 'hourly_events':
+		if drugVars['weed_high'] > 0: drugVars['weed_high'] -= 1
 	else
-		pcs_hydra -= 10
-	end
-	if pcs_energy > 20: 
-		pcs_energy -= 20
-	else
-		pcs_energy = 0
+		if ARGS[1] = 0 and $ARGS[1] = '':
+			mc_inventory['joints'] -= 1
+			if mc_inventory['joints'] <= 0: mc_inventory['joints'] = 0 & msg 'That was your last joint.'
+		end
+
+		if drugVars['cheat_immune'] = 0:
+			drugVars['weed_used'] += 1
+			if drugVars['weed_used'] > 5 and drugVars['weed_exp'] = 0: drugVars['weed_exp'] = 1
+		end
+
+		if minut > 30:
+			drugVars['weed_high'] = 2
+		else
+			drugVars['weed_high'] = 1
+		end
+		drugVars['weed_day'] = daystart
+		drugVars['weed_hour'] = hour
+		drugVars['weed_minute'] = minut + 2
+
+		pcs_breath = 0
+		pcs_mood += 100
+		if pcs_hydra >= 100:
+			pcs_hydra -= 5
+		else
+			pcs_hydra -= 10
+		end
+		pcs_energy = max(0, pcs_energy - 20)
+
+		cumspclnt = 2
+		gs 'cum_cleanup'
+		gs 'stat'
 	end
-	gs 'stat'
+
+
 elseif $ARGS[0] = 'heroin':
-	if NarkImmune = 0: 
-		SNarkTimes += 1
-		if SNarkTimes > 1 and heroin_exp = 0: heroin_exp = 1
+	if $ARGS[1] = 'hourly_events':
+		if drugVars['heroin_high'] > 0: 
+			pcs_mood -= (40 / drugVars['heroin_high'])
+			drugVars['heroin_high'] -= 1
+		end
+
+		if drugVars['heroin_need'] > 0 and pcs_mood > 10: 
+			drugVars['heroin_need'] += 1
+			pcs_mood -= pcs_mood / 10
+		end
+		if drugVars['heroin_need'] > 100 and drugVars['heroin_high'] <= 0: 
+			drugVars['heroin_need'] = 0
+			drugVars['heroin_used'] = 0
+		end
+	elseif $ARGS[1] = 'stat':
+		if drugVars['heroin_high'] >= 20 and alko > 0: alko = 0
+		if drugVars['heroin_high'] <= 0:
+			if drugVars['heroin_used'] >= 3 and drugVars['heroin_need'] = 0: drugVars['heroin_need'] = 1
+		else
+			if drugVars['heroin_need'] > 0: drugVars['heroin_need'] = 0
+			pcs_mood = 100
+		end
+		if drugVars['heroin_used'] >= drugVars['heroin_penalty'] * 25:
+			if drugVars['heroin_penalty'] > 0: vidage += 1
+			drugVars['heroin_penalty'] += 1
+		end
+	else
+		if drugVars['cheat_immune'] = 0:
+			drugVars['heroin_used'] += 1
+			if drugVars['heroin_used'] > 1 and drugVars['heroin_exp'] = 0: drugVars['heroin_exp'] = 1
+		end
+
+		drugVars['heroin_high'] += 25
+		drugVars['heroin_day'] = daystart
+
+		pcs_mood = 100
+		pcs_health -= 10
+		gs 'stat'
 	end
-	StrongNarkota += 25
-	narkozakday = day
-	pcs_mood = 100
-	pcs_health -= 10
-	gs 'stat'
+
+
 elseif $ARGS[0] = 'cocaine':
-	if NarkImmune = 0: 
-		cocaine_count += 1
-		if cocaine_count > 3 and cocaine_exp = 0: cocaine_exp = 1
+	if $ARGS[1] = 'cikl':
+		if drugVars['cocaine_system'] > 60:
+			drugVars['cocaine_system'] = 60
+		elseif drugVars['cocaine_system'] > 30:
+			drugVars['cocaine_system'] -= 3
+		elseif drugVars['cocaine_system'] > 0:
+			drugVars['cocaine_system'] -= 1
+		end
+	elseif $ARGS[1] = 'hourly_events':
+		if drugVars['cocaine_addict'] = 1 and drugVars['cocaine_day'] ! daystart:
+			pcs_health -= 5
+			
+			!! Changed from pcs_mood > 40 -> pcs_mood > 45 to avoid pcs_mood becoming lower than 5. Blame Anjuna
+			if pcs_mood > 45:
+				pcs_mood -= 40
+			else
+				pcs_mood = 5
+			end
+		end
+	elseif $ARGS[1] = 'stat':
+		if drugVars['cheat_immune'] = 1:
+			if drugVars['cocaine_addict'] ! 0: drugVars['cocaine_addict'] = 0
+		elseif drugVars['cocaine_system'] >= 30 and drugVars['cocaine_addict'] = 0 and drugVars['cheat_immune'] = 0:
+			drugVars['cocaine_addict'] = 1
+		elseif drugVars['cocaine_system'] = 0 and drugVars['cocaine_addict'] = 1:
+			drugVars['cocaine_addict'] = 0
+		end
+	else
+		if ARGS[1] = 0 and $ARGS[1] = '':
+			mc_inventory['cocaine'] -= 1
+			if mc_inventory['cocaine'] <= 0: mc_inventory['cocaine'] = 0 & msg 'That was your last line of cocaine.'
+		end
+		if drugVars['cheat_immune'] = 0:
+			drugVars['cocaine_used'] += 1
+			if drugVars['cocaine_used'] > 3 and drugVars['cocaine_exp'] = 0: drugVars['cocaine_exp'] = 1
+		end
+
+		drugVars['cocaine_system'] += 10
+		drugVars['cocaine_day'] = daystart
+		if drugVars['cocaine_willday'] ! daystart: drugVars['cocaine_willday'] = daystart & pcs_willpwr += 10
+
+		pcs_health = pcs_vital * 10 + pcs_stren * 5
+		pcs_mood = 100
+		pcs_horny = 100
+		gs 'stat'
 	end
-	dur -= 1
-	pcs_health = pcs_vital * 10 + pcs_stren * 5
-	if willday_cocaine ! daystart: willday_cocaine = daystart & pcs_willpwr += 10
-	pcs_mood = 100
-	pcs_horny = 100
-	nark += 10
-	gs 'stat'
+
+
 elseif $ARGS[0] = 'amphetamine':
-	if NarkImmune = 0: 
-		amphetamine_count += 1
-		if amphetamine_count > 5 and amphetamine_exp = 0: amphetamine_exp = 1
-	end
-	if amphIntake < 2:
-		'<font color= blue>You swallow the white pill.</font>'
-		amphIntake += 1
-		amphetamine -=1
-		amphHigh = 12
+	if $ARGS[1] = 'hourly_events':
+		if insleep = 1:
+			if drugVars['amphetamine_high'] > 0:
+				pcs_energy -= (4 / drugVars['amphetamine_bonus'])
+				pcs_hydra  -= (8 / drugVars['amphetamine_bonus'])
+			else
+				pcs_energy -= (4 * drugVars['amphetamine_bonus'])
+				pcs_hydra  -= (8 * drugVars['amphetamine_bonus'])
+			end
+		else
+			if drugVars['amphetamine_high'] > 0:
+				pcs_energy -= ( 8 / drugVars['amphetamine_bonus'])
+				pcs_hydra  -= (16 / drugVars['amphetamine_bonus'])
+			else
+				pcs_energy -= ( 8 * drugVars['amphetamine_bonus'])
+				pcs_hydra  -= (16 * drugVars['amphetamine_bonus'])
+			end
+		end
+
+		if drugVars['amphetamine_withdrawl'] >= 5: 
+			drugVars['amphetamine_withdrawl'] += 1
+			pcs_mood -= (drugVars['amphetamine_withdrawl'] / 5)
+		end
+
+		if drugVars['amphetamine_high'] > 0:
+			if drugVars['amphetamine_withdrawl'] < 2: drugVars['amphetamine_withdrawl'] = 2
+			drugVars['amphetamine_bonus'] = 3
+			drugVars['amphetamine_high'] -= 4
+			pcs_mood += (2 * drugVars['amphetamine_high'])
+
+		elseif drugVars['amphetamine_high'] <= 0 and drugVars['amphetamine_withdrawl'] = 2:
+			if drugVars['amphetamine_intake'] > 0:
+				drugVars['amphetamine_intake'] -= 1
+			else
+				drugVars['amphetamine_withdrawl'] = 0
+			end
+
+			drugVars['amphetamine_high'] = 0
+			drugVars['amphetamine_bonus'] = 2
+			pcs_mood -= pcs_mood / 10
+
+		elseif drugVars['amphetamine_intake'] > 0:
+			drugVars['amphetamine_withdrawl'] += 1
+
+		elseif drugVars['amphetamine_high'] = 0 and drugVars['amphetamine_withdrawl'] = 0:
+			drugVars['amphetamine_bonus'] = 1
+		end
+
+		if drugVars['amphetamine_withdrawl'] > 169: 
+			drugVars['amphetamine_withdrawl'] = 1
+			drugVars['amphetamine_bonus'] = 1
+			drugVars['amphetamine_used'] = 0
+		end
+
+	elseif $ARGS[1] = 'stat':
+		if drugVars['amphetamine_used'] > 3 and drugVars['amphetamine_high'] <= 0:
+			temp_addictChance = rand(1,10)
+			if temp_addictChance > 8:
+				drugVars['amphetamine_withdrawl'] = 2
+			end
+			killvar 'temp_addictChance'
+		end
 	else
-		'Your heart is already beating uncontrollably in your chest, you should avoid taking anymore pills.'
+		if drugVars['amphetamine_intake'] >= 2:
+			'Your heart is already beating uncontrollably in your chest, you should avoid taking anymore pills.'
+		else
+			'<font color= blue>You swallow the white pill.</font>'
+
+			if ARGS[1] = 0 and $ARGS[1] = '':
+				mc_inventory['amphetamine'] -= 1
+				if mc_inventory['amphetamine'] <= 0: mc_inventory['amphetamine'] = 0 & msg 'That was your last amphetamine pill.'
+			end
+			if drugVars['cheat_immune'] = 0: 
+				drugVars['amphetamine_used'] += 1
+				if drugVars['amphetamine_used'] > 5 and drugVars['amphetamine_exp'] = 0: drugVars['amphetamine_exp'] = 1
+			end
+
+			drugVars['amphetamine_intake'] += 1
+			drugVars['amphetamine_high'] = 12
+		end
+		gs 'stat'
 	end
-	gs 'stat'
-elseif $ARGS[0] = 'alcohol':
-	if NarkImmune = 0: 
-		alcohol_count += 1
-		if alcohol_count > 15 and alcohol_exp = 0: alcohol_exp = 1
-	end	
-	if ARGS[2] <= 1: 
-		alc_count = 1
+
+
+elseif $ARGS[0] = 'mentats':
+	if $ARGS[1] = 'cikl':
+		if drugVars['mentats_dose'] = 1:
+			drugVars['mentats_dose'] = 0
+		elseif drugVars['mentats_dose'] > 1:
+			pain['head'] += 20 * drugVars['mentats_dose']
+			drugVars['mentats_dose'] = 0
+		end
 	else
-		alc_count = ARGS[2]
+		if ARGS[1] = 0 and $ARGS[1] = '':
+			mc_inventory['mentats'] -= 1
+			if mc_inventory['mentats'] <= 0: mc_inventory['mentats'] = 0 & msg 'That was your last neurobooster pill.'
+		end
+		drugVars['mentats_used'] += 1
+		drugVars['mentats_dose'] += 1
+		gs 'stat'
 	end
-	:alcohol_jump
-	alc_count -= 1
-	frost = 0
-	pcs_health -= 5
-	pcs_energy -= 5
-	cumspclnt = 2
-	gs 'cum_cleanup'
-	pcs_breath = 0
-	if $ARGS[1] = 'beer':
-		if pcs_traits['alko_status'] = -1:
-			alko += rand(1,2)
-		elseif pcs_traits['alko_status'] = 1:
-			alko += rand(0,1)
-		else
-			alko += 1
+
+elseif $ARGS[0] = 'steroids':
+	if $ARGS[1] = 'cikl':
+		if drugVars['steroids_dose'] >= 1:
+			if lashair < 1:
+				pcs_pubes += drugVars['steroids_dose']
+				pcs_leghair += drugVars['steroids_dose']
+			end
+			drugVars['steroids_dose'] = 0
 		end
-		fat += 3
-		pcs_mood += 10
-		if pcs_hydra >= 100:
-			pcs_hydra += 5
-		else
-			pcs_hydra += 10
-		end
-		pcs_traits['alko_day'] += 1
-	elseif $ARGS[1] = 'wine' or $ARGS[1] = 'champagne':
-		if pcs_traits['alko_status'] = -1:
-			alko += 3
-		elseif pcs_traits['alko_status'] = 1:
-			alko += 1
+	else
+		if drugVars['steroids_dose'] < 3:
+			'<font color = blue>You swallow the orange pill.</font>'
+
+			if ARGS[1] = 0 and $ARGS[1] = '':
+				mc_inventory['steroids'] -= 1
+				if mc_inventory['steroids'] <= 0: mc_inventory['steroids'] = 0 & msg 'That was your last steroid pill.'
+			end
+
+			drugVars['steroids_used'] += 1
+			drugVars['steroids_dose'] += 1
 		else
-			alko += 2
+			'You really shouldn''t take any more pills today.'
 		end
-		fat += 4
-		pcs_mood += 20
-		if pcs_hydra >= 100:
-			pcs_hydra += 5
-		else
-			pcs_hydra += 10
-		end
-		pcs_traits['alko_day'] += 2
-	elseif $ARGS[1] = 'vodka' or $ARGS[1] = 'whiskey' or $ARGS[1] = 'scotch' or $ARGS[1] = 'rum':
-		if pcs_traits['alko_status'] = -1:
-			alko += rand(4,5)
-		elseif pcs_traits['alko_status'] = 1:
-			alko += rand(1,2)
-		else
-			alko += 3
+		gs 'stat'
+	end
+
+
+elseif $ARGS[0] = 'breastcream':
+	if $ARGS[1] = 'cikl':
+		if drugVars['breastcream_dose'] >= 1:
+			drugVars['breastcream_dose'] = 0
+
+			temp = pcs_mass['bust'] - pcs_mass['bust_gen']
+			temp = rand(0, 5 + max(0, temp)) / max(1, temp)
+
+			if temp > 0:
+				bodyVars['bust_other'] += 1
+				'Feels like your breasts have grown slightly.'
+			end
+			killvar 'temp'
 		end
-		fat += 6
-		if pcs_hydra >= 100:
-			pcs_hydra -= 5
+	else
+		if drugVars['breastcream_dose'] < 1:
+			'<font color = #DB7093>You smear the cream onto your breasts and rub it in.</font>'
+
+			if ARGS[1] = 0 and $ARGS[1] = '':
+				mc_inventory['breastcream'] -= 1
+				if mc_inventory['breastcream'] <= 0: mc_inventory['breastcream'] = 0 & msg 'That was your last bit of breast cream.'
+			end
+
+			drugVars['breastcream_used'] += 1
+			drugVars['breastcream_dose'] = 1
 		else
-			pcs_hydra -= 10
+			'Using any more cream won''t have any effect.'
 		end
-		pcs_traits['alko_day'] += 3
-	elseif $ARGS[1] = 'moonshine':
-		if pcs_traits['alko_status'] = -1:
-			alko += rand(7,8)
-		elseif pcs_traits['alko_status'] = 1:
-			alko += rand(2,3)
-		else
-			alko += 5
+		gs 'stat'
+	end
+
+elseif $ARGS[0] = 'painkiller':
+	if ARGS[1] = 0 and $ARGS[1] = '':
+		mc_inventory['painkillers'] -= 1
+		if mc_inventory['painkillers'] <= 0: mc_inventory['painkillers'] = 0 & msg 'That was your last painkiller.'
+	end
+
+	drugVars['painkillers_used'] += 1
+	pain['killer'] += 1
+	gs 'stat'
+
+elseif $ARGS[0] = 'alcohol':
+	if $ARGS[1] = 'stat':
+		if alko > 9:
+			pain['relief'] = 70
+		elseif alko > 6:
+			pain['relief'] = 40
+		elseif alko > 3:
+			pain['relief'] = 15
 		end
-		fat += 6
-		if pcs_hydra >= 100:
-			pcs_hydra -= 5
+	else
+		if drugVars['cheat_immune'] = 0: 
+			drugVars['alcohol_used'] += 1
+			if drugVars['alcohol_used'] > 15 and drugVars['alcohol_exp'] = 0: drugVars['alcohol_exp'] = 1
+		end	
+
+		if ARGS[2] <= 1: 
+			temp_alc_count = 1
 		else
-			pcs_hydra -= 10
+			temp_alc_count = ARGS[2]
 		end
-		pcs_traits['alko_day'] += 5
-	else
-		'<br><font color = red>Developer note: The type of alcohol is missing in this scene. Please report this and a small part of the text of the current scene as a bug.</font>'
+
+		:alcohol_jump
+			temp_alc_count -= 1
+			pcs_health -= 5
+			pcs_energy -= 5
+
+			if $ARGS[1] = 'beer':
+				if pcs_traits['alko_status'] = -1:
+					alko += rand(1,2)
+				elseif pcs_traits['alko_status'] = 1:
+					alko += rand(0,1)
+				else
+					alko += 1
+				end
+				pcs_traits['alko_day'] += 1
+
+				fat += 3
+				pcs_mood += 10
+				if pcs_hydra >= 100:
+					pcs_hydra += 5
+				else
+					pcs_hydra += 10
+				end
+
+			elseif $ARGS[1] = 'wine' or $ARGS[1] = 'champagne':
+				if pcs_traits['alko_status'] = -1:
+					alko += 3
+				elseif pcs_traits['alko_status'] = 1:
+					alko += 1
+				else
+					alko += 2
+				end
+				pcs_traits['alko_day'] += 2
+
+				fat += 4
+				pcs_mood += 20
+				if pcs_hydra >= 100:
+					pcs_hydra += 5
+				else
+					pcs_hydra += 10
+				end
+
+			elseif $ARGS[1] = 'vodka' or $ARGS[1] = 'whiskey' or $ARGS[1] = 'scotch' or $ARGS[1] = 'rum':
+				pcs_traits['alko_day'] += 3
+				if pcs_traits['alko_status'] = -1:
+					alko += rand(4,5)
+				elseif pcs_traits['alko_status'] = 1:
+					alko += rand(1,2)
+				else
+					alko += 3
+				end
+
+				fat += 6
+				if pcs_hydra >= 100:
+					pcs_hydra -= 5
+				else
+					pcs_hydra -= 10
+				end
+
+			elseif $ARGS[1] = 'moonshine':
+				if pcs_traits['alko_status'] = -1:
+					alko += rand(7,8)
+				elseif pcs_traits['alko_status'] = 1:
+					alko += rand(2,3)
+				else
+					alko += 5
+				end
+				pcs_traits['alko_day'] += 5
+
+				fat += 6
+				if pcs_hydra >= 100:
+					pcs_hydra -= 5
+				else
+					pcs_hydra -= 10
+				end
+
+			else
+				'<br><font color = red>Developer note: The type of alcohol: (<<$ARGS[1]>>) is missing in this scene. Please report this and a small part of the text of the current scene as a bug.</font>'
+			end
+		if temp_alc_count > 0: jump 'alcohol_jump'
+		killvar 'temp_alc_count'
+
+		frost = 0
+		pcs_breath = 0
+		cumspclnt = 2
+		gs 'cum_cleanup'
+		gs 'stat'
 	end
-	if alc_count > 0: jump 'alcohol_jump'
-	killvar 'alc_count'
-	gs 'stat'
-elseif $ARGS[0] = 'mentats':
-	mentats_dose += 1
-	mentats_have -= 1
+
 elseif $ARGS[0] = 'aphrodisiac':
-	if aphrodisiac_overdose = 1:
-		$aphrodisiac_msg = '<br>You''ve had enough aphrodisiac for today.'
-	elseif aphrodisiac_timer = 0:
-		$aphrodisiac_msg = '<font color = #DB7093><br>You take a gum and chew it. It tastes like strawberry, but is also kind of spicy.</font>'
-		aphrodisiac_have -= 1
-		aphrodisiac_timer += 8
-		pcs_horny = 80
-	elseif aphrodisiac_timer > 0 and aphrodisiac_timer <= 8:
-		$aphrodisiac_msg = '<font color = #DB7093><br>You take another gum and chew it. It makes your mouth feel kinda tingly.</font>'
-		aphrodisiac_have -= 1
-		aphrodisiac_timer += 8
-		pcs_horny = 100
-	elseif aphrodisiac_timer > 8 and min_arousal < 60:
-		$aphrodisiac_msg = '<font color = red><b><br>You take yet another gum and start chewing it. Suddenly you find yourself in grip of an intense orgasm!<br>It goes on and on and you sink to the ground and do your best to endure it.</b></font>'
-		aphrodisiac_have -= 1
-		orgasm += 1
-		pcs_mood = 100
-		min_arousal += 10
-		aphrodisiac_overdose = 1
-		if min_arousal = 10:
-			pcs_horny = min_arousal
-			$min_arousal_msg = '<font color = #DB7093>That was intense! You can still feel the tingles.</font>'
-		elseif min_arousal = 20:
-			pcs_horny = min_arousal
-			$min_arousal_msg = '<font color = #DB7093>You are really starting to enjoy these! Your crotch still feels kinda hot though.</font>'
-		elseif min_arousal = 30:
-			pcs_horny = min_arousal
-			$min_arousal_msg = '<font color = #DB7093>As you are trying to get back to your feet you notice that you are still horny. What is happening to you?</font>'
-		elseif min_arousal = 40:
-			pcs_horny = min_arousal
-			$min_arousal_msg = '<font color = #DB7093>You are certain of it. Every time those gums give you an orgasm they also increase your libido.</font>'
-		elseif min_arousal = 50:
-			pcs_horny = min_arousal
-			$min_arousal_msg = '<font color = #DB7093>You run a finger across your slit and shudder. You really should stop chewing these gums while you can still think of something other than sex.</font>'
-		elseif min_arousal = 60:
-			pcs_horny = min_arousal
-			$min_arousal_msg = '<font color = #DB7093>You are burning up. You feel like you could fuck anything and everything all day long.</font>'
+	if $ARGS[1] = 'cikl':
+		if drugVars['aphrodisiac_overdose'] = 1: drugVars['aphrodisiac_overdose'] = 0
+		if drugVars['aphrodisiac_timer'] ! 0: drugVars['aphrodisiac_timer']	= 0
+	elseif $ARGS[1] = 'hourly_events':
+		if drugVars['aphrodisiac_timer'] >= 1:
+			!! Changed from pcs_horny < 80 -> pcs_horny < 70 to ensure a minimum increase of +10. Blame Anjuna
+			if pcs_horny < 70:
+				pcs_horny = 80
+			else
+				pcs_horny += 10
+			end
+			drugVars['aphrodisiac_timer'] -= 1
 		end
 	else
-		$aphrodisiac_msg = '<font color = #DB7093>You chew another gum with trepidation, looking forward to more orgasms but nothing happens. Huh. Have you become immune?</font>'
-		aphrodisiac_have -= 1
+		if drugVars['aphrodisiac_overdose'] = 1:
+			$drugVars['aphrodisiac_msg'] = '<br>You''ve had enough aphrodisiac for today.'
+		else
+			if ARGS[1] = 0 and $ARGS[1] = '':
+				mc_inventory['aphrodisiac'] -= 1
+				if mc_inventory['aphrodisiac'] <= 0: mc_inventory['aphrodisiac'] = 0 & msg 'That was your last aphrodisiac pill.'
+			end
+
+			drugVars['aphrodisiac_used'] += 1
+
+			if drugVars['aphrodisiac_timer'] = 0:
+				$drugVars['aphrodisiac_msg'] = '<font color = #DB7093><br>You take a gum and chew it. It tastes like strawberry, but is also kind of spicy.</font>'
+				drugVars['aphrodisiac_timer'] += 8
+				pcs_horny = 80
+			elseif drugVars['aphrodisiac_timer'] > 0 and drugVars['aphrodisiac_timer'] <= 8:
+				$drugVars['aphrodisiac_msg'] = '<font color = #DB7093><br>You take another gum and chew it. It makes your mouth feel kinda tingly.</font>'
+				drugVars['aphrodisiac_timer'] += 8
+				pcs_horny = 100
+			elseif drugVars['aphrodisiac_timer'] > 8 and min_arousal < 60:
+				$drugVars['aphrodisiac_msg'] = '<font color = red><b><br>You take yet another gum and start chewing it. Suddenly you find yourself in grip of an intense orgasm!<br>It goes on and on and you sink to the ground and do your best to endure it.</b></font>'
+				drugVars['aphrodisiac_overdose'] = 1
+				pcs_horny = min_arousal
+
+				orgasm += 1
+				pcs_mood = 100
+				min_arousal += 10
+
+				if min_arousal <= 10:
+					$min_arousal_msg = '<font color = #DB7093>That was intense! You can still feel the tingles.</font>'
+				elseif min_arousal <= 20:
+					$min_arousal_msg = '<font color = #DB7093>You are really starting to enjoy these! Your crotch still feels kinda hot though.</font>'
+				elseif min_arousal <= 30:
+					$min_arousal_msg = '<font color = #DB7093>As you are trying to get back to your feet you notice that you are still horny. What is happening to you?</font>'
+				elseif min_arousal <= 40:
+					$min_arousal_msg = '<font color = #DB7093>You are certain of it. Every time those gums give you an orgasm they also increase your libido.</font>'
+				elseif min_arousal <= 50:
+					$min_arousal_msg = '<font color = #DB7093>You run a finger across your slit and shudder. You really should stop chewing these gums while you can still think of something other than sex.</font>'
+				else
+					$min_arousal_msg = '<font color = #DB7093>You are burning up. You feel like you could fuck anything and everything all day long.</font>'
+				end
+			else
+				$drugVars['aphrodisiac_msg'] = '<font color = #DB7093>You chew another gum with trepidation, looking forward to more orgasms but nothing happens. Huh. Have you become immune?</font>'
+			end
+		end
+		gs 'stat'
 	end
 else
 	'<br><font color = red>Developer note: The type of drug is wrong or missing in this scene. Please report this and a small part of the text of the current scene as a bug.</font>'
 end
 
+
+
+
 gs 'traits', 'addictive_personality'
 
 --- drugs ---------------------------------
-

+ 4 - 4
locations/etoexhib.qsrc

@@ -1168,9 +1168,9 @@ if $ARGS[0] = 'pos27':
 			minut += 60
 			pcs_mood -= 5
 
-			if mentats_dose > 0:gs 'exp_gain', 'intel', mentats_dose - rand(0,mentats_dose)
-			if pcs_intel < 80:gs 'exp_gain', 'intel', 1 + (mentats_dose - rand(0,mentats_dose))
-			if CloStyle3 = 4 and (pcs_makeup = 1 or pcs_makeup = 2) and teachlevel < 70:teachlevel += 1
+			if drugVars['mentats_dose'] > 0: gs 'exp_gain', 'intel', rand(0, drugVars['mentats_dose'])
+			if pcs_intel < 80: gs 'exp_gain', 'intel', 1 + rand(0, drugVars['mentats_dose'])
+			if CloStyle3 = 4 and (pcs_makeup = 1 or pcs_makeup = 2) and teachlevel < 70: teachlevel += 1
 			if pcs_makeup = 4:teachlevel -= 1
 
 			money += 150
@@ -1635,7 +1635,7 @@ if $ARGS[0] = 'pos53':
 			gt 'etoexhib','pos52'
 		end
 	end
-	if joint > 0 and jointhigh = 0: act 'Smoke a joint': gs 'drugs', 'joint' & gt $loc, $loc_arg
+	if mc_inventory['joints'] > 0 and drugVars['weed_high'] = 0: act 'Smoke a joint': minut += 10 & gs 'drugs', 'joint' & gt $loc, $loc_arg
 	if PCloswimwear = 1 or $clothingworntype = 'nude':
 		act 'Change back into clothes':
 			minut += 5

+ 12 - 12
locations/events.qsrc

@@ -352,7 +352,7 @@ if $ARGS[0] = 'snkayf':
 	end
 end
 
-if $ARGS[0] = 'narkozakladka':
+if $ARGS[0] = 'ask_pav_drug_dropoff':
 	*clr & cla
 	'<center><b>Shooting galleries</b></center>'
 	'<center><img <<$set_imgh>> src="images/locations/city/residential/den/narkopriton.jpg"></center>'
@@ -360,7 +360,7 @@ if $ARGS[0] = 'narkozakladka':
 	'And then he looks at you menacingly "And if I hear that you''ve caused any trouble, well death will seem like a good escape."'
 	act 'Agree':
 		*clr & cla
-		snarkozak = 1
+		drugVars['pav_dropoff'] = 1
 		'<center><b>Shooting galleries</b></center>'
 		'<center><img <<$set_imgh>> src="images/locations/city/residential/den/narkopriton.jpg"></center>'
 		'You gulp and stammer "I assure you there willl be no problems"'
@@ -369,7 +369,7 @@ if $ARGS[0] = 'narkozakladka':
 	end
 end
 
-if $ARGS[0] = 'snarkozaka':
+if $ARGS[0] = 'pav_drug_dropoff':
 	*clr & cla
 	minut += 20
 	gs 'stat'
@@ -389,7 +389,7 @@ if $ARGS[0] = 'snarkozaka':
 	if money >= 560:
 		act 'Buy and use heroin (560 <b>₽</b>)':
 			money -= 560
-			if SNarkTimes['inject'] < 1:
+			if drugVars['heroin_inject'] < 1:
 				*clr & cla
 				minut += 5
 				drugUser = 1
@@ -399,7 +399,7 @@ if $ARGS[0] = 'snarkozaka':
 				'<center><img <<$set_imgh>> src="images/locations/city/residential/den/chase_dragon.jpg"></center>'
 				'You pour the heroin onto some foil, heat it up and then using a straw you quickly inhale the steam.'
 				'The rush is instantaneous, you close your eyes as it rolls over you.'
-				act 'You lay there briefly rolling, before leaving': gt 'events', 'snarkozaka'
+				act 'You lay there briefly rolling, before leaving': gt 'events', 'pav_drug_dropoff'
 			else
 				*clr & cla
 				minut += 5
@@ -410,7 +410,7 @@ if $ARGS[0] = 'snarkozaka':
 				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/trainstation/event/usingheroin.jpg"></center>'
 				'You buy some heroin and find a quiet place behind the platform to use it, and without thinking twice you shoot up.'
 				'The rush is instantaneous, you close your eyes as it rolls over you.'
-				act 'You lay there briefly rolling, before leaving': gt 'events', 'snarkozaka'
+				act 'You lay there briefly rolling, before leaving': gt 'events', 'pav_drug_dropoff'
 			end
 		end
 	else
@@ -420,9 +420,9 @@ if $ARGS[0] = 'snarkozaka':
 	if money >= 2100:
 		act 'Buy enough cocaine for 5 lines (1800 <b>₽</b>)':
 			money -= 2100
-			dur += 5
+			mc_inventory['cocaine'] += 5
 			minut += 5
-			gt 'events', 'snarkozaka'
+			gt 'events', 'pav_drug_dropoff'
 		end
 	else
 		'You don''t have enough money to buy cocaine.'
@@ -431,8 +431,8 @@ if $ARGS[0] = 'snarkozaka':
 	if money >= 600:
 		act 'Buy 5 Amphetamine (600 <b>₽</b>)':
 			money -= 600
-			amphetamine += 5
-			gt 'events', 'snarkozaka'
+			mc_inventory['amphetamine'] += 5
+			gt 'events', 'pav_drug_dropoff'
 		end
 	else
 		'You don''t have enough money to buy amphetamine.'
@@ -442,9 +442,9 @@ if $ARGS[0] = 'snarkozaka':
 		act 'Buy enough weed for 5 joints (300 <b>₽</b>)':
 			money -= 300
 			drugUser = 1
-			joint += 5
+			mc_inventory['joints'] += 5
 			minut += 5
-			gt 'events', 'snarkozaka'
+			gt 'events', 'pav_drug_dropoff'
 		end
 	else
 		'You don''t have enough money to buy weed.'

+ 29 - 29
locations/exercise.qsrc

@@ -549,8 +549,8 @@ if $ARGS[0] = 'tier1':
 	if $ARGS[3] = '':
 		gs 'exp_gain', $ARGS[2], 1
 		if $ARGS[2] = 'vital' or $ARGS[2] = 'stren':
-			gs 'exp_gain', $ARGS[2], rand(0,steroid_dose)
-			if steroid_dose > 0 and rand(1,5) <= steroid_dose:clit_size += rand(0,1)
+			gs 'exp_gain', $ARGS[2], rand(0, drugVars['steroids_dose'])
+			if drugVars['steroids_dose'] > 0 and rand(1, 5) <= drugVars['steroids_dose']: clit_size += rand(0, 1)
 		end
 	else
 		i = 2
@@ -558,16 +558,16 @@ if $ARGS[0] = 'tier1':
 		if $ARGS[i] ! '':
 			gs 'exp_gain', $ARGS[i], rand(0,1)
 			if $ARGS[i] = 'vital' or $ARGS[i] = 'stren': 
-				gs 'exp_gain', $ARGS[i], rand(0,steroid_dose)
+				gs 'exp_gain', $ARGS[i], rand(0, drugVars['steroids_dose'])
 				steroidcheck = 1
 			end
 			i += 1
 			jump 'exploop1'
-		else
-			if steroidcheck = 1 and steroid_dose > 0 and rand(1,5) <= steroid_dose:clit_size += rand(0,1)
-			killvar 'steroidcheck'
-			killvar 'i'
 		end
+
+		if steroidcheck = 1 and drugVars['steroids_dose'] > 0 and rand(1, 5) <= drugVars['steroids_dose']: clit_size += rand(0, 1)
+		killvar 'steroidcheck'
+		killvar 'i'
 	end
 	mcnt += 1
 	if mcnt < mult: jump 'timeexploop1'
@@ -597,8 +597,8 @@ if $ARGS[0] = 'tier2':
 	if $ARGS[3] = '':
 		gs 'exp_gain', $ARGS[2], rand(2,3)
 		if $ARGS[2] = 'vital' or $ARGS[2] = 'stren':
-			gs 'exp_gain', $ARGS[2], rand(0,steroid_dose)
-			if steroid_dose > 0 and rand(1,5) <= steroid_dose:clit_size += rand(0,1)
+			gs 'exp_gain', $ARGS[2], rand(0, drugVars['steroids_dose'])
+			if drugVars['steroids_dose'] > 0 and rand(1, 5) <= drugVars['steroids_dose']: clit_size += rand(0, 1)
 		end
 	else
 		i = 2
@@ -606,16 +606,16 @@ if $ARGS[0] = 'tier2':
 		if $ARGS[i] ! '':
 			gs 'exp_gain', $ARGS[i], rand(1,2)
 			if $ARGS[i] = 'vital' or $ARGS[i] = 'stren': 
-				gs 'exp_gain', $ARGS[i], rand(0,steroid_dose)
+				gs 'exp_gain', $ARGS[i], rand(0, drugVars['steroids_dose'])
 				steroidcheck = 1
 			end
 			i += 1
 			jump 'exploop2'
-		else
-			if steroidcheck = 1 and steroid_dose > 0 and rand(1,5) <= steroid_dose:clit_size += rand(0,1)
-			killvar 'steroidcheck'
-			killvar 'i'
 		end
+
+		if steroidcheck = 1 and drugVars['steroids_dose'] > 0 and rand(1, 5) <= drugVars['steroids_dose']: clit_size += rand(0, 1)
+		killvar 'steroidcheck'
+		killvar 'i'
 	end
 	mcnt += 1
 	if mcnt < mult: jump 'timeexploop2'
@@ -645,25 +645,25 @@ if $ARGS[0] = 'tier3':
 	if $ARGS[3] = '':
 		gs 'exp_gain', $ARGS[2], rand(3,5)
 		if $ARGS[2] = 'vital' or $ARGS[2] = 'stren':
-			gs 'exp_gain', $ARGS[2], rand(0,steroid_dose)
-			if steroid_dose > 0 and rand(1,5) <= steroid_dose:clit_size += rand(0,1)
+			gs 'exp_gain', $ARGS[2], rand(0, drugVars['steroids_dose'])
+			if drugVars['steroids_dose'] > 0 and rand(1, 5) <= drugVars['steroids_dose']: clit_size += rand(0, 1)
 		end
 	else
 		i = 2
 		:exploop3
 		if $ARGS[i] ! '':
 			gs 'exp_gain', $ARGS[i], rand(2,3)
-			if $ARGS[i] = 'vital' or $ARGS[i] = 'stren': 
-				gs 'exp_gain', $ARGS[i], rand(0,steroid_dose)
+			if $ARGS[i] = 'vital' or $ARGS[i] = 'stren':
+				gs 'exp_gain', $ARGS[i], rand(0, drugVars['steroids_dose'])
 				steroidcheck = 1
 			end
 			i += 1
 			jump 'exploop3'
-		else
-			if steroidcheck = 1 and steroid_dose > 0 and rand(1,5) <= steroid_dose:clit_size += rand(0,1)
-			killvar 'steroidcheck'
-			killvar 'i'
 		end
+
+		if steroidcheck = 1 and drugVars['steroids_dose'] > 0 and rand(1,5) <= drugVars['steroids_dose']: clit_size += rand(0, 1)
+		killvar 'steroidcheck'
+		killvar 'i'
 	end
 	mcnt += 1
 	if mcnt < mult: jump 'timeexploop3'
@@ -693,8 +693,8 @@ if $ARGS[0] = 'tier4':
 	if $ARGS[3] = '':
 		gs 'exp_gain', $ARGS[2], rand(7,10)
 		if $ARGS[2] = 'vital' or $ARGS[2] = 'stren':
-			gs 'exp_gain', $ARGS[2], rand(0,steroid_dose)
-			if steroid_dose > 0 and rand(1,5) <= steroid_dose:clit_size += rand(0,1)
+			gs 'exp_gain', $ARGS[2], rand(0, drugVars['steroids_dose'])
+			if drugVars['steroids_dose'] > 0 and rand(1, 5) <= drugVars['steroids_dose']: clit_size += rand(0, 1)
 		end
 	else
 		i = 2
@@ -702,16 +702,16 @@ if $ARGS[0] = 'tier4':
 		if $ARGS[i] ! '':
 			gs 'exp_gain', $ARGS[i], rand(3,5)
 			if $ARGS[i] = 'vital' or $ARGS[i] = 'stren': 
-				gs 'exp_gain', $ARGS[i], rand(0,steroid_dose)
+				gs 'exp_gain', $ARGS[i], rand(0, drugVars['steroids_dose'])
 				steroidcheck = 1
 			end
 			i += 1
 			jump 'exploop4'
-		else
-			if steroidcheck = 1 and steroid_dose > 0 and rand(1,5) <= steroid_dose:clit_size += rand(0,1)
-			killvar 'steroidcheck'
-			killvar 'i'
 		end
+
+		if steroidcheck = 1 and drugVars['steroids_dose'] > 0 and rand(1, 5) <= drugVars['steroids_dose']: clit_size += rand(0, 1)
+		killvar 'steroidcheck'
+		killvar 'i'
 	end
 	mcnt += 1
 	if mcnt < mult: jump 'timeexploop4'

+ 4 - 4
locations/exhibitionistshop.qsrc

@@ -121,19 +121,19 @@ end
 if $ARGS[0] = 'ksenya_shop':
     *clr & cla
 	KsenyaQW = 3
-    '<center><img <<$set_imgh>> src="images/character/pushkin/ksenya/shop1.jpg"></center>'
+    '<center><img <<$set_imgh>> src="images/characters/pushkin/ksenya/shop1.jpg"></center>'
     'You are taken to Ksenya''s office and it is open a crack and you look inside. You see her sitting on a chair looking back at you.'
     '"Hey <<$pcs_nickname>>, Come in, Come in. What do I owe the pleasure?" she asks and closes the door to her office behind you after which she hugs you gently.' 
     act 'continue':
         *clr & cla
-        '<center><img <<$set_imgh>> src="images/character/pushkin/ksenya/shop2.jpg"></center>'
+        '<center><img <<$set_imgh>> src="images/characters/pushkin/ksenya/shop2.jpg"></center>'
         '"I wanna ask about what happened at the lake. Was that... for me?" you ask blushing.'
         '"Which part?" she asks sitting on the edge of that same chair. She doesn''t seem that bothered by being seen in her underwear.'
         '"The... flashing part when you saw me" you say without making eye contact.'
         '"Maybe" she teases.'
         act 'continue':
             *clr & cla
-            '<center><img <<$set_imgh>> src="images/character/pushkin/ksenya/shop3.jpg"></center>'
+            '<center><img <<$set_imgh>> src="images/characters/pushkin/ksenya/shop3.jpg"></center>'
             '"Did you like what you saw?" she asks.'
             'You look at her as she teases removing her bra. "I did, I think you are very beautiful." you tell her.'
             '"Would you like to be my girlfriend?" she asks bluntly.'
@@ -148,7 +148,7 @@ if $ARGS[0] = 'ksenya_shop':
             end
             act 'No thanks':
                 *clr & cla
-                '<center><img <<$set_imgh>> src="images/character/pushkin/ksenya/shop4.jpg"></center>'
+                '<center><img <<$set_imgh>> src="images/characters/pushkin/ksenya/shop4.jpg"></center>'
                 '"I''m sorry Ksenya, this is moving too fast. I don''t think I''m ready for that right now" you tell her.'
                 'She looks upset at your answer as she leans on the chair. "That''s ok, I''ll be here when you are ready." she says and goes to her desk like nothing ever happened.'
                 'You walk out of her office feeling you are no longer welcome there today.'

+ 7 - 3
locations/exp_gain.qsrc

@@ -9,7 +9,7 @@
 
 if ARGS[1] > 0:
 !!	Prevents EXP gain for stren_plus if its 50 or higher and Sveta ISNT using steroids
-	if $ARGS[0] = 'stren_plus' and stren_plus_lvl >= 50 and steroid_dose = 0:
+	if $ARGS[0] = 'stren_plus' and stren_plus_lvl >= 50 and drugVars['steroids_dose'] = 0:
 		exit
 	end
 
@@ -55,8 +55,12 @@ if ARGS[1] > 0:
 		end
 	end
 
-!!	EXP Assignment
-	dynamic "<<$ARGS[0]>>_exp += <<ARGS[1]>>"
+!!	EXP Assignment. If at max just extends the period before degeneration of the stat starts.
+	if dyneval('RESULT = <<$ARGS[0]>>_lvl ') < dyneval('RESULT = 100 + <<$ARGS[0]>>_muta'):
+		dynamic "<<$ARGS[0]>>_exp += <<ARGS[1]>>"
+	else
+		dynamic "<<$ARGS[0]>>_deg = 2 + <<$ARGS[0]>>_muta"
+	end
 end
 
 --- exp_gain ---------------------------------

+ 2 - 2
locations/fame_events.qsrc

@@ -75,7 +75,7 @@ if $ARGS[0] = 'boy':
 		if $fame['activity'] = 'kickboxing':
 			'"I try to watch all you matches, you are best kickboxer in the city. I am sure you will beat all your opponents!"'
 		elseif $fame['activity'] = 'running':
-			if razradbegEG > 0:
+			if runnerQW['champ_gold'] > 0:
 				'"I try to watch all you races, you are best runner in the city. I am sure you will also win the next championship!"'
 			else
 				'"I try to watch all you races, you are best runner in the city. I am sure you will become the next champion in no time!"'
@@ -169,7 +169,7 @@ if $ARGS[0] = 'girl':
 		if $fame['activity'] = 'kickboxing':
 			'"I try to watch all you matches, you are best kickboxer in the city. I am sure you will beat all your opponents!"'
 		elseif $fame['activity'] = 'running':
-			if razradbegEG > 0:
+			if runnerQW['champ_gold'] > 0:
 				'"I try to watch all you races, you are best runner in the city. I am sure you will also win the next championship!"'
 			else
 				'"I try to watch all you races, you are best runner in the city. I am sure you will become the next champion in no time!"'

+ 1 - 1
locations/femcyc.qsrc

@@ -763,7 +763,7 @@ if $ARGS[0] = 'cyc3':
 	:implant_loop
 	if implant_idx < implant_sz:
 
-		if Babyptype[implant_idx] = 0:
+		if Babyptype[implant_idx] = 0 and $ChildFath[implant_idx] ! '':
 			imp_rand = rand(0,120000)
 
 			if ferteggage < 120 and broodcurse <= 0:

+ 6 - 6
locations/fit.qsrc

@@ -174,12 +174,12 @@ if $ARGS[0] = 'dressing_room':
 			end
 		end
 
-		if begsec = 0:
+		if runnerQW['joined_team'] = 0:
 			act 'Join track team':
 				cla
 				*clr
 				minut += 5
-				begsec = 1
+				runnerQW['joined_team'] = 1
 				'You signed up for the track team.'
 
 				act 'Leave':gt 'fit', 'dressing_room'
@@ -187,17 +187,17 @@ if $ARGS[0] = 'dressing_room':
 			end
 		elseif $clothingworntype = 'danilovich_outfits' and $shoeworntype = 'danilovich' and pcs_stam >= stammax / 5 and pcs_energy >= 20:
 			act 'Go to team practice':gt 'beg', 'start'
-			if week = 6 and pcs_run >= 20 and run_comp_day ! daystart:
-				act '<b>Enter competition race</b>':run_comp_day = daystart & gt 'beg1', 'start'
+			if week = 6 and pcs_run >= 20 and runnerQW['comp_day'] ! daystart:
+				act '<b>Enter competition race</b>':runnerQW['comp_day'] = daystart & gt 'beg1', 'start'
 			end
 		elseif $clothingworntype = 'danilovich_outfits' and $shoeworntype = 'danilovich' and pcs_stam >= stammax / 5:
 			act 'Go to team practice': '<br><font color="red">You feel too hungry to do this.</font>'
-			if week = 6 and pcs_run >= 20 and run_comp_day ! daystart:
+			if week = 6 and pcs_run >= 20 and runnerQW['comp_day'] ! daystart:
 				act '<b>Enter competition race</b>': '<br><font color="red">You feel too hungry to do this.</font>'
 			end
 		elseif $clothingworntype = 'danilovich_outfits' and $shoeworntype = 'danilovich':
 			act 'Go to team practice': '<br><font color="red">You are to exhausted to do this. Recover your stamina before trying to train.</font>'
-			if week = 6 and pcs_run >= 20 and run_comp_day ! daystart:
+			if week = 6 and pcs_run >= 20 and runnerQW['comp_day'] ! daystart:
 				act '<b>Enter competition race</b>': '<br><font color="red">You are to exhausted to do this. Recover your stamina before entering the race.</font>'
 			end
 		end

+ 100 - 24
locations/foto_events.qsrc

@@ -513,7 +513,7 @@ if $ARGS[0] = 'lingerie_persuasion':
 	'<center><img <<$set_imgh>> src="images/locations/city/citycenter/photo/fotograph.jpg"></center>'
 	'"I''d like to do a fashion shoot," you say.'
 	if foto_persuade = 0:
-		'By the way <<$model[''firstname'']>>, you''ve been here a while, you''ve done quite a few fashion jobs for us and your work for us has been great!"'
+		'"By the way <<$model[''firstname'']>>, you''ve been here a while, you''ve done quite a few fashion jobs for us and your work for us has been great!"'
 		'"Oh! Thanks!"'
 		'"But we also think that you could take it a step farther, show off more of your beautiful body. How would you feel about doing a lingerie shoot? The exposure is about the same but the pay is a little bit better. What do you say?"'
 	elseif foto_persuade = 2:
@@ -993,7 +993,7 @@ if $ARGS[0] = 'special':
 	'<center><img <<$set_imgh>> src="images/locations/city/citycenter/photo/fotograph.jpg"></center>'
 	'"I''m looking for some more work, any special jobs still available today?"'
 	act'Return to the main floor':gt'foto','studio'
-	if specialjob1 > 95 or specialjob2 > 95 or specialjob3 > 95 or specialjob4 > 95 or specialjob5 > 95 or specialjob6 > 95 or (specialjob7 > 95 and city_kickboxing >=30 and pcs_inhib >= 45) or (specialjob8 > 95 and city_running >=30 and pcs_inhib >= 50 and month >= 3 and month <=8):
+	if specialjob1 > 95 or specialjob2 > 95 or specialjob3 > 95 or specialjob4 > 95 or specialjob5 > 95 or specialjob6 > 95 or (specialjob7 > 95 and fame['city_kickboxing'] >=100 and pcs_inhib >= 45) or (specialjob8 > 95 and fame['city_running'] >=100 and pcs_inhib >= 50 and month >= 3 and month <=8):
 		'"Sure, we have a few today. Come take a look at the list, tell me if you''re interested in doing something."'
 		act'Look at the list':gt 'foto_events','list'
 	else
@@ -1020,8 +1020,8 @@ if $ARGS[0] = 'list':
 	if specialjob4 > 95:'<a href="exec:gt ''foto_events'',''aphrodite_advert''">	Aphrodite Advert</a>'
 	if specialjob5 > 95:'<a href="exec:gt ''foto_events'',''independent_art''">	Independent Art Project</a>'
 	if specialjob6 > 95:'<a href="exec:gt ''foto_events'',''designer_wedding''">	Designer Wedding Dress</a>'
-	if specialjob7 > 95 and fame['city_kickboxing'] >=30 and pcs_inhib >= 45:'<a href="exec:gt ''foto_events2'',''kickboxing_documentary''">   Kickboxing documentary</a>'
-    if specialjob8 > 95 and fame['city_running'] >=30 and pcs_inhib >= 50 and month >= 3 and month <=8:'<a href="exec:gt ''foto_events2'',''track_&_field_documentary''">   Track & Field documentary</a>'
+	if specialjob7 > 95 and fame['city_kickboxing'] >=100 and pcs_inhib >= 45:'<a href="exec:gt ''foto_events2'',''kickboxing_documentary''">   Kickboxing documentary</a>'
+    if specialjob8 > 95 and fame['city_running'] >=100 and pcs_inhib >= 50 and month >= 3 and month <=8:'<a href="exec:gt ''foto_events2'',''track_&_field_documentary''">   Track & Field documentary</a>'
 !!		if specialjob9 >= 95:'<a href="exec:gt ''foto_events'',''model_portraits''">photo albums</a>'
 !!	if specialjob9 >= 95:'<a href="exec:gt ''foto_events2'',''terry1''">Terry Request</a>'
 !!	if specialjob6 >= 95:'<a href="exec:gt ''foto_events'',''documentary''">	Documentary</a>'
@@ -1052,7 +1052,11 @@ if $ARGS[0] = 'high_fashion':
 			else
 				gs 'fame', 'city', 'modelling', 'small'
 			end
-			money += modelpayfin
+			if $model['pay_method'] = 'direct_deposit':
+				karta += modelpayfin
+			else
+				money += modelpayfin
+			end
 			modelfoto['earnings'] += modelpayfin
 			'You spend the duration of the shoot changing in and out of designer bodices, corsets, and other tops, all of which conspicuously lack any kind of bottom, leaving your pussy exposed.'
 			*nl
@@ -1237,10 +1241,22 @@ if $ARGS[0] = 'fine_art2':
 		act'Continue':
 			modelfoto['shoots'] += 1
 			model_week = (daystart - week) / 7
-			if fine_art_deal = 1:money += modelpayfin + 30000
-			if art_resign = 1:money += modelpayfin
-			if fine_art_deal = 1:modelfoto['earnings'] += modelpayfin + 30000
-			if art_resign = 1:modelfoto['earnings'] += modelpayfin
+			if fine_art_deal = 1:
+				if $model['pay_method'] = 'direct_deposit':
+					karta += modelpayfin + 30000
+				else
+					money += modelpayfin + 30000
+				end
+				modelfoto['earnings'] += modelpayfin + 30000
+			end
+			if art_resign = 1:
+				if $model['pay_method'] = 'direct_deposit':
+					karta += modelpayfin
+				else
+					money += modelpayfin
+				end
+				modelfoto['earnings'] += modelpayfin
+			end
 			minut += 90
 			pcs_mood -= 5
 			gs 'arousal', 'end'
@@ -1265,7 +1281,11 @@ if $ARGS[0] = 'fine_art2':
 			end
 		end
 	elseif fine_art_deal = 3:
-		money += modelpayfin
+		if $model['pay_method'] = 'direct_deposit':
+			karta += modelpayfin
+		else
+			money += modelpayfin
+		end
 		modelfoto['earnings'] += modelpayfin
 		minut += 90
 		'<center><img <<$set_imgh>> src="images/locations/city/citycenter/photo/special/art1.jpg"></center>'
@@ -1284,7 +1304,11 @@ if $ARGS[0] = 'fine_art2':
 	elseif fine_art_deal = 4:
 		gs 'arousal', 'vaginal', 1
 		gs 'stat'
-		money += modelpayfin + 2000
+		if $model['pay_method'] = 'direct_deposit':
+			karta += modelpayfin + 2000
+		else
+			money += modelpayfin + 2000
+		end
 		modelfoto['earnings'] += modelpayfin + 2000
 		minut += 90
 		'<center><img <<$set_imgh>> src="images/locations/city/citycenter/photo/special/art1.jpg"></center>'
@@ -1343,7 +1367,11 @@ if $ARGS[0] = 'modern_art':
 				'<center><img <<$set_imgh>> src="images/locations/city/citycenter/photo/special/art2.jpg"></center>'
 				minut += 90
 				modelpayfin = 2000 + (50+rand(1,9)*rand(0,7))
-				money += modelpayfin
+				if $model['pay_method'] = 'direct_deposit':
+					karta += modelpayfin
+				else
+					money += modelpayfin
+				end
 				modelfoto['earnings'] += modelpayfin
 				modelfoto['topless'] += 1
 				modelfoto['nude'] += 1
@@ -1385,7 +1413,11 @@ if $ARGS[0] = 'aphrodite_advert':
 		act'Do the shoot':
 			minut += 120
 			modelpayfin = 1000
-			money += modelpayfin
+			if $model['pay_method'] = 'direct_deposit':
+				karta += modelpayfin
+			else
+				money += modelpayfin
+			end
 			modelfoto['earnings'] += modelpayfin
 			modelfoto['topless'] += 1
 			modelfoto['nude'] += 1
@@ -1427,7 +1459,11 @@ if $ARGS[0] = 'independent_art':
 			minut += 120
 			gs'stat'
 			modelpayfin = 1600 + (modelpay) + (35*rand(0,5))
-			money += modelpayfin
+			if $model['pay_method'] = 'direct_deposit':
+				karta += modelpayfin
+			else
+				money += modelpayfin
+			end
 			modelfoto['earnings'] += modelpayfin
 			modelfoto['nip'] += 1
 			gs 'exp_gain', 'mdlng', rand(2,8)
@@ -1461,7 +1497,11 @@ if $ARGS[0] = 'designer_wedding':
 			minut += 60
 			gs'stat'
 			modelpayfin = 1200 + (modelpay) + (35*rand(0,5))
-			money += modelpayfin
+			if $model['pay_method'] = 'direct_deposit':
+				karta += modelpayfin
+			else
+				money += modelpayfin
+			end
 			modelfoto['earnings'] += modelpayfin
 			modelfoto['nip'] += 1
 			modelfoto['pussy'] += 1
@@ -1610,7 +1650,11 @@ if $ARGS[0] = 'topless1.1':
 								minut += 60
 								'<center><img <<$set_imgh>> src="images/locations/city/citycenter/down.jpg"></center>'
 								'You get dressed again while they load everything back into the van and then you all drive back to the studio. They drop you on the curb with your pay of <<modelpayfin>> <b>₽</b> for today''s work. You can see there''s even a little extra!'
-								money += modelpayfin
+								if $model['pay_method'] = 'direct_deposit':
+									karta += modelpayfin
+								else
+									money += modelpayfin
+								end
 								modelfoto['earnings'] += modelpayfin
 								modelfoto['nip'] += 1
 								modelfoto['topless'] += 1
@@ -1720,7 +1764,11 @@ if $ARGS[0] = 'pool1':
 						'You spend various portions of the next few hours in and around the pool. Sometimes by yourself, sometimes with the other girls in the background. Eventually your portion of the shoot is over and you spend the rest of the time lazing on a chaise lounge while the other girls finish up. It''s so comfortable, you couldn''t care less when the photographers decide to snap a few more pictures of you and your invitingly exposed ass.'
 						act'Continue':
 							*clr & cla
-							money += modelpayfin
+							if $model['pay_method'] = 'direct_deposit':
+								karta += modelpayfin
+							else
+								money += modelpayfin
+							end
 							modelfoto['earnings'] += modelpayfin
 							gs 'underwear', 'wear'
 							gs 'stat'
@@ -1818,7 +1866,11 @@ if $ARGS[0] = 'tennis':
 							'<center><img <<$set_imgh>> src="images/locations/city/citycenter/photo/foto.jpg"></center>'
 							minut += 120
 							modelpayfin = 2500 + (modelpay * 2) + (50*rand(0,7))
-							money += modelpayfin
+							if $model['pay_method'] = 'direct_deposit':
+								karta += modelpayfin
+							else
+								money += modelpayfin
+							end
 							modelfoto['earnings'] += modelpayfin
 							modelfoto['nip'] += 1
 							modelfoto['topless'] += 1
@@ -1894,7 +1946,11 @@ if $ARGS[0] = 'topless2':
 							*clr & cla
 							minut += 30
 							modelpayfin = 2000 + (modelpay * 2) + (35*rand(0,5))
-							money += modelpayfin
+							if $model['pay_method'] = 'direct_deposit':
+								karta += modelpayfin
+							else
+								money += modelpayfin
+							end
 							modelfoto['earnings'] += modelpayfin
 							gs 'fame', 'city', 'modelling', 'medium'
 							gs 'exp_gain', 'mdlng', rand(8,10)
@@ -1977,7 +2033,11 @@ if $ARGS[0] = 'beach2':
 								*clr & cla
 								minut += 60
 								modelpayfin = 2500 + (modelpay * 2) + (50*rand(0,7))
-								money += modelpayfin + 1000
+								if $model['pay_method'] = 'direct_deposit':
+									karta += modelpayfin + 1000
+								else
+									money += modelpayfin + 1000
+								end
 								modelfoto['earnings'] += modelpayfin + 1000
 								modelfoto['topless'] += 1
 								gs 'fame', 'city', 'modelling', 'medium'
@@ -2048,7 +2108,11 @@ if $ARGS[0] = 'pool2':
 						*clr & cla
 						minut += 30
 						modelpayfin = 2500 + (modelpay * 2) + (50*rand(0,7))
-						money += modelpayfin
+						if $model['pay_method'] = 'direct_deposit':
+							karta += modelpayfin
+						else
+							money += modelpayfin
+						end
 						modelfoto['earnings'] += modelpayfin
 						gs 'fame', 'city', 'modelling', 'medium'
 						gs 'exp_gain', 'mdlng', rand(8,10)
@@ -2195,7 +2259,11 @@ if $ARGS[0] = 'runway2':
 							act'Continue':
 								*clr & cla
 								hour += 1
-								money += modelpayfin
+								if $model['pay_method'] = 'direct_deposit':
+									karta += modelpayfin
+								else
+									money += modelpayfin
+								end
 								modelfoto['earnings'] += modelpayfin
 								gs'stat'
 								'<center><img <<$set_imgh>> src="images/locations/city/citycenter/photo/foto.jpg"></center>'
@@ -2282,7 +2350,11 @@ if $ARGS[0] = 'wet1':
 							else
 								gs 'fame', 'city', 'modelling', 'small'
 							end
-							money += modelpayfin
+							if $model['pay_method'] = 'direct_deposit':
+								karta += modelpayfin
+							else
+								money += modelpayfin
+							end
 							modelfoto['earnings'] += modelpayfin
 							'Eventually, the shoot is over and they leave you with chattering teeth, really hard nipples and a dry wad of <<modelpayfin>> <b>₽</b> in your shiving hands. But you have to admit photos do look pretty nice.'
 							act'Back to the studio':gt'foto','studio'
@@ -2340,7 +2412,11 @@ if $ARGS[0] = 'wet2':
 				else
 					gs 'fame', 'city', 'modelling', 'small'
 				end
-				money += modelpayfin
+				if $model['pay_method'] = 'direct_deposit':
+					karta += modelpayfin
+				else
+					money += modelpayfin
+				end
 				modelfoto['earnings'] += modelpayfin
 				'Eventually, the shoot is over and they leave you with chattering teeth, really hard nipples and a dry wad of <<modelpayfin>> <b>₽</b> in your shiving hands. But you have to admit photos do look pretty nice.'
 				act'Back to the studio':gt'foto','studio'

+ 128 - 129
locations/foto_events2.qsrc

@@ -80,10 +80,10 @@ if $ARGS[0] = 'champagne1.2':
 	pcs_lipbalm += 8
 	modelpay = (pcs_mdlng/2 * 10) + min(fame['city_modelling'], 700) + pcs_apprnc
 	modelpayfin = 600 + (modelpay * 2) + (15*rand(0,5))
-	modelfoto['nude']  += 1
-	modelfoto['fullnude']  += 1
-	modelfoto['nip']  += 1
-	modelfoto['pussy']  += 1
+	modelfoto['nude'] += 1
+	modelfoto['fullnude'] += 1
+	modelfoto['nip'] += 1
+	modelfoto['pussy'] += 1
 	gs 'exp_gain', 'mdlng', rand(9,10)
 	'<center><img <<$set_imgh>> src="images/locations/city/citycenter/photo/mirrors.jpg"></center>'
 	'You walk over to the makeup department and the dressers get your hair and face ready before going to meet the photographer on set. Just before you leave, they have you slip on a gold thong and then send you on your way.'
@@ -103,7 +103,7 @@ if $ARGS[0] = 'champagne1.2':
 				*clr & cla
 				pcs_sweat += 25
 				money += modelpayfin
-				modelfoto['earnings']  += modelpayfin
+				modelfoto['earnings'] += modelpayfin
 				gs 'fame', 'city', 'modelling', 'medium'
 				gs 'stat'
 				'<center><img <<$set_imgh>> src="images/locations/city/citycenter/photo/foto.jpg"></center>'
@@ -121,71 +121,71 @@ end
 !! ----------------------------------------------------------------------------------------------------
 
 if $ARGS[0] = 'kickboxing_documentary':
-    cla & *clr
-    '<center><img <<$set_imgh>> src="images/locations/city/citycenter/photo/fotograph.jpg"></center>'
-    '"A kickboxing documentary?" you ask."'
-    '"Yea. The local sports magazine, is doing a coverage of the Female Kickboxing League. We are doing the graphic part, lots of work doing artistic naked pics, making you women look badass and beautifull. As you are gaining in popularity, they will want a journalist to do an interview. The royalties and the advertising are great. Are you interested?."'
-    '"Hmmm..."'
-    act'Back to the list':gt'foto_events','list'
-    act'Yeah! I''m in!':
-        cla
-        *nl
-        specialjob7 = 0
-        '"Great! The photographers are all ready doing their job in the Havanna Fitness Center. You will meet the journalist there."'
-        act'Do the shoot':
-            cla & *clr
-            '<center><img <<$set_imgh>> src="images/locations/city/citycenter/photo/KD1.jpg"></center>'
-            minut += 120
-            modelpayfin = 900 + (modelpay * 2) + (50*rand(0,7)) + ((fame['city_kickboxing'] + pcs_apprnc)/2)*2
-            modelfoto['nude']  += 1
-            gs 'exp_gain', 'mdlng', rand(1,2)
+	cla & *clr
+	'<center><img <<$set_imgh>> src="images/locations/city/citycenter/photo/fotograph.jpg"></center>'
+	'"A kickboxing documentary?" you ask.'
+	'"Yea. The local sports magazine, is doing a coverage of the Female Kickboxing League. We are doing the graphic part, lots of work doing artistic naked pics, making you women look badass and beautiful. As you are gaining in popularity, they will want a journalist to do an interview. The royalties and the advertising are great. Are you interested?."'
+	'"Hmmm..."'
+	act'Back to the list':gt'foto_events','list'
+	act'Yeah! I''m in!':
+		cla
+		*nl
+		specialjob7 = 0
+		'"Great! The photographers are all ready doing their job in the Havanna Fitness Center. You will meet the journalist there."'
+		act'Do the shoot':
+			cla & *clr
+			'<center><img <<$set_imgh>> src="images/locations/city/citycenter/photo/KD1.jpg"></center>'
+			minut += 120
+			modelpayfin = 900 + (modelpay * 2) + (50*rand(0,7)) + ((fame['city_kickboxing'] + pcs_apprnc)/2)*2
+			modelfoto['nude'] += 1
+			gs 'exp_gain', 'mdlng', rand(1,2)
 			gs 'fame', 'city', 'kickboxing', 'medium'
-            gs 'fame', 'city', 'modelling', 'medium'
+			gs 'fame', 'city', 'modelling', 'medium'
 			gs 'arousal', 'flash', 5
 			gs 'arousal', 'end'
-            money += modelpayfin
-            modelfoto['earnings']  += modelpayfin
-            inhib_exp += 2
-            gs 'stat'
-            'You aren''t the only one doing this documentay. Around you, walking between photographers, there are others kickboxers trying to follow the instructions to be "dynamic". Beyond that, the modeling, is fairlly artistic, showing skin, but hidding the important bits, between props and poses.'
-            *nl
-            'After doing several shots, finally a journalist has time to talk with you.'
-            act'Do the interview.':
-                cla & *clr
-                gs 'stat'
-                '<center><img <<$set_imgh>> src="images/locations/city/citycenter/photo/KD2.jpg"></center>'
-                if fame['city_kickboxing'] >=150 and kickbox['sash'] >= 5:
-                    '"You are <<$pcs_lastname>> Isn''t it?"'
-                    'The journalist shakes your hand with a big smile on his face. Interviewing you, must be a great thing, as practically without stopping, you are showered with questions, from the sport-related to the personal, passing for the absolute trivial.'
-                    '"Your feeling about that victory? Your favorite color? A man in your life?"'
-                    'The interview goes and goes like this during a long time, until your allocated time end, and then reluctantly the journalist leaves you to talk to another kickboxer.'            
-                elseif fame['city_kickboxing'] >=60 and kickbox['sash'] >= 2:
-                    'Between shots, a journalist comes and asks you questions. Most of them, are fairly generic. Personal data, your opinions about the league, confirmation on their information. In general, it doesn''t seem too deep but it is evident that the journalist has his hands more than full, catching up with all the women in the gymnasium.'
-                else
-                    'You wait between shots, but the journalist seems to find somebody else more interesting and forgets to talk with you.'
+			money += modelpayfin
+			modelfoto['earnings'] += modelpayfin
+			inhib_exp += 2
+			gs 'stat'
+			'You aren''t the only one doing this documentay. Around you, walking between photographers, there are others kickboxers trying to follow the instructions to be "dynamic". Beyond that, the modeling, is fairlly artistic, showing skin, but hidding the important bits, between props and poses.'
+			*nl
+			'After doing several shots, finally a journalist has time to talk with you.'
+			act'Do the interview.':
+				cla & *clr
+				gs 'stat'
+				'<center><img <<$set_imgh>> src="images/locations/city/citycenter/photo/KD2.jpg"></center>'
+				if fame['city_kickboxing'] >=400 and kickbox['sash'] >= 5:
+					'"You are <<$pcs_lastname>> Isn''t it?"'
+					'The journalist shakes your hand with a big smile on his face. Interviewing you, must be a great thing, as practically without stopping, you are showered with questions, from the sport-related to the personal, passing for the absolute trivial.'
+					'"Your feeling about that victory? Your favorite color? A man in your life?"'
+					'The interview goes and goes like this during a long time, until your allocated time end, and then reluctantly the journalist leaves you to talk to another kickboxer.'
+				elseif fame['city_kickboxing'] >=200 and kickbox['sash'] >= 2:
+					'Between shots, a journalist comes and asks you questions. Most of them, are fairly generic. Personal data, your opinions about the league, confirmation on their information. In general, it doesn''t seem too deep but it is evident that the journalist has his hands more than full, catching up with all the women in the gymnasium.'
+				else
+					'You wait between shots, but the journalist seems to find somebody else more interesting and forgets to talk with you.'
 				end
-                act' Finally the job is done':                        
-                    cla & *clr   
-                    gs 'stat'
-                    '<center><img <<$set_imgh>> src="images/locations/city/citycenter/photo/KD3.jpg"></center>'
-                    if fame['city_kickboxing'] >=150 and kickbox['sash'] >= 5:						                               
-                        'Two hours later, the model session/interviews end. After returning to the studio, you are handed <<modelpayfin>> <b>₽</b> in payment for the job.'
-                        'Sometime later, the article is sent to your phone...' 
-                        'And is a little awkward... The realization, that you are getting famous, as one of the best, if not the BEST, female kickboxer in all St. Petersburg. Practically, the article turns around you. With even fans asking all kinds of personal questions. Damn! You are Hot, Mean and Famous!'                            
-                    elseif fame['city_kickboxing'] >=60 and kickbox['sash'] >= 2:
-                        'Two hours later, the model session/interviews end. After returning to the studio, you are handed <<modelpayfin>> <b>₽</b> in payment for the job.' 
-                        'Sometime later, the article is sent to your phone...' 
-                        'Being true, is a little dry, mentioning your name, general information and that you are an up-and-coming kickboxer.'
-                    else
-                        'Two hours later, the model session/interviews end. After returning to the studio, you are handed <<modelpayfin>> <b>₽</b> in payment for the job.' 
-                        'Sometime later, the article is sent to your phone...' 
-                        'And is disappointing! Beyond your photo is only your name, and the mention, that you are a participant in the League.'
-                    end
-					act'Go back to the main floor':gt'foto','studio'    
-                end
-            end                   
-        end
-    end
+				act' Finally the job is done':
+					cla & *clr
+					gs 'stat'
+					'<center><img <<$set_imgh>> src="images/locations/city/citycenter/photo/KD3.jpg"></center>'
+					if fame['city_kickboxing'] >=400 and kickbox['sash'] >= 5:
+						'Two hours later, the model session/interviews end. After returning to the studio, you are handed <<modelpayfin>> <b>₽</b> in payment for the job.'
+						'Sometime later, the article is sent to your phone...' 
+						'And is a little awkward... The realization, that you are getting famous, as one of the best, if not the BEST, female kickboxer in all St. Petersburg. Practically, the article turns around you. With even fans asking all kinds of personal questions. Damn! You are Hot, Mean and Famous!'
+					elseif fame['city_kickboxing'] >=200 and kickbox['sash'] >= 2:
+						'Two hours later, the model session/interviews end. After returning to the studio, you are handed <<modelpayfin>> <b>₽</b> in payment for the job.' 
+						'Sometime later, the article is sent to your phone...' 
+						'Being true, is a little dry, mentioning your name, general information and that you are an up-and-coming kickboxer.'
+					else
+						'Two hours later, the model session/interviews end. After returning to the studio, you are handed <<modelpayfin>> <b>₽</b> in payment for the job.' 
+						'Sometime later, the article is sent to your phone...' 
+						'And is disappointing! Beyond your photo is only your name, and the mention, that you are a participant in the League.'
+					end
+					act'Go back to the main floor':gt'foto','studio'
+				end
+			end
+		end
+	end
 end
 
 !! ----------------------------------------------------------------------------------------------------
@@ -195,74 +195,74 @@ end
 !! ----------------------------------------------------------------------------------------------------
 
 if $ARGS[0] = 'track_&_field_documentary':
-    cla & *clr
-    '<center><img <<$set_imgh>> src="images/locations/city/citycenter/photo/fotograph.jpg"></center>'
-    '"A Track & Field documentary?" you ask."'
-    '"Aja. During the warmer seasons, local sports magazines, they like to do articles about the women on the running business. With the sun and heat, they can take them to the field and do some artistic photos. We are doing the graphic part in a reserved field. Most photos will be naked, and as they want you to do some runs, it will not be posible to hide all of your bodyparts. As you are gaining in popularity, they will whant a journalist to do an interview. The royalties and the advertising are great. Are you interested?."'
-    '"Hmmm..."'
-    act'Back to the list':gt'foto_events','list'
-    act'I''d like to do this one':
-        cla
-        *nl
-        specialjob8 = 0
-        '"I''d like to do this one."'
-        '"Great! The photographers are all ready doing their job in the field near the Havanna Fitness Center. You will meet a journalist there."'
-        act'Do the shoot':
-            cla & *clr
-            '<center><img <<$set_imgh>> src="images/locations/city/citycenter/photo/TD1.jpg"></center>'
-            minut += 120
-            modelpayfin = 1800 + (modelpay * 2) + (50*rand(0,7)) + ((fame['city_running'] + pcs_apprnc)/2)*2
-            modelfoto['nude']  += 1
-            gs 'exp_gain', 'mdlng', rand(1,2)
+	cla & *clr
+	'<center><img <<$set_imgh>> src="images/locations/city/citycenter/photo/fotograph.jpg"></center>'
+	'"A Track & Field documentary?" you ask.'
+	'"Aja. During the warmer seasons, local sports magazines, they like to do articles about the women on the running business. With the sun and heat, they can take them to the field and do some artistic photos. We are doing the graphic part in a reserved field. Most photos will be naked, and as they want you to do some runs, it will not be possible to hide all of your bodyparts. As you are gaining in popularity, they will want a journalist to do an interview. The royalties and the advertising are great. Are you interested?."'
+	'"Hmmm..."'
+	act'Back to the list':gt'foto_events','list'
+	act'I''d like to do this one':
+		cla
+		*nl
+		specialjob8 = 0
+		'"I''d like to do this one."'
+		'"Great! The photographers are all ready doing their job in the field near the Havanna Fitness Center. You will meet a journalist there."'
+		act'Do the shoot':
+			cla & *clr
+			'<center><img <<$set_imgh>> src="images/locations/city/citycenter/photo/TD1.jpg"></center>'
+			minut += 120
+			modelpayfin = 1800 + (modelpay * 2) + (50*rand(0,7)) + ((fame['city_running'] + pcs_apprnc)/2)*2
+			modelfoto['nude'] += 1
+			gs 'exp_gain', 'mdlng', rand(1,2)
 			gs 'fame', 'city', 'running', 'small'
-            gs 'fame', 'city', 'modelling', 'small'
-            money += modelpayfin
-            modelfoto['earnings']  += modelpayfin
-            modelfoto['topless']  += 1
+			gs 'fame', 'city', 'modelling', 'small'
+			money += modelpayfin
+			modelfoto['earnings'] += modelpayfin
+			modelfoto['topless'] += 1
 			gs 'arousal', 'flash', 5
 			gs 'arousal', 'end'
-            gs 'stat'
-            'You aren''t the only one doing this documentay. Around you, walking between photographers, there are other runners trying to follow the instructions to be "dynamic". Beyond that, the models, try to be fairlly artistic, showing skin, but hiding the important bits, between props and poses, sadlly with all the movement, that is easier said than done, and the security have their hands full, shooing away all the voyeurs trying to catch a peek.'
-            *nl
-            'After doing several shots, finally a journalist has time to talk with you.'
-            act'Do the interview.':
-                cla & *clr   
-                gs 'stat' 
-                '<center><img <<$set_imgh>> src="images/locations/city/citycenter/photo/TD2.jpg"></center>'              
-                if fame['city_running'] >=90 and razradbeg >= 3:
-                    '"You are <<$pcs_lastname>> Isn''t it?"'
-                    'The journalist shakes your hand with a big smile on his face. Interviewing you must be a great thing, as practically without stoping, you are showered with questions, from the sport-related to the personal, passing for the absolute trivial.'
-                    '"Your feeling about that victory? Your favorite color? A man in your life?"'
-                    'The interview goes on and on like this for a long time, until you''re allocated time ends, and then reluctantly the journalist leaves you to talk to another runner.'            
-                elseif fame['city_running'] >=30 and razradbeg >= 1:
-                    'Between shots, a journalist comes and asks you questions. Most of them, are fairly generic. Personal data, your opinions about the Championship, confirmation on their information. In general, it doesn''t seem too deep but it is evident that the journalist has his hands more than full, catching up with all the women in the field.'
-                else
-                    'You wait between shots, but the journalist seems to find somebody else more interesting and forgets to talk with you.'
+			gs 'stat'
+			'You aren''t the only one doing this documentary. Around you, walking between photographers, there are other runners trying to follow the instructions to be "dynamic". Beyond that, the models, try to be fairlly artistic, showing skin, but hiding the important bits, between props and poses, sadlly with all the movement, that is easier said than done, and the security have their hands full, shooing away all the voyeurs trying to catch a peek.'
+			*nl
+			'After doing several shots, finally a journalist has time to talk with you.'
+			act'Do the interview.':
+				cla & *clr
+				gs 'stat'
+				'<center><img <<$set_imgh>> src="images/locations/city/citycenter/photo/TD2.jpg"></center>'
+				if fame['city_running'] >=400 and runnerQW['prof_stage'] >= 3:
+					'"You are <<$pcs_lastname>> Isn''t it?"'
+					'The journalist shakes your hand with a big smile on his face. Interviewing you must be a great thing, as practically without stopping, you are showered with questions, from the sport-related to the personal, passing for the absolute trivial.'
+					'"Your feeling about that victory? Your favorite color? A man in your life?"'
+					'The interview goes on and on like this for a long time, until you''re allocated time ends, and then reluctantly the journalist leaves you to talk to another runner.'
+				elseif fame['city_running'] >=200 and razradbeg >= 1:
+					'Between shots, a journalist comes and asks you questions. Most of them, are fairly generic. Personal data, your opinions about the Championship, confirmation on their information. In general, it doesn''t seem too deep but it is evident that the journalist has his hands more than full, catching up with all the women in the field.'
+				else
+					'You wait between shots, but the journalist seems to find somebody else more interesting and forgets to talk with you.'
 				end
 				
-                act' Finally the job is done':
-                    cla & *clr   
-                    gs 'stat'
-                    '<center><img <<$set_imgh>> src="images/locations/city/citycenter/photo/TD3.jpg"></center>'                      
-                    if fame['city_running'] >=90 and razradbeg >= 3:					
-                        'Two hours later, the model session/interviews ends. After returning to the studio, you are handed <<modelpayfin>> <b>₽</b> in payment for the job.'
-                        'Sometime later, the article is sent to your phone...' 
-                        'And is a little awkward... The realization, that you are getting famous, as one of the best, if not THE best runner in The Women''s 400 Meter Dash category in all of St. Petersburg. Practically, the article turns around you. With even fans asking all kinds of personal questions. Damn! You are Hot, Fast and Famous!'                            
-                    elseif fame['city_running'] >=30 and razradbeg >= 1:
-                        'Two hours later, the model session/interviews ends. After returning to the studio, you are handed <<modelpayfin>> <b>₽</b> in payment for the job.' 
-                        'Sometime later, the article is sent to your phone...' 
-                        'Being true, is a little dry, mentioning your name, general information and that you are an up-and-coming runner in The Women''s 400 Meter Dash category.'
-                    else
-                        '<center><img <<$set_imgh>> src="images/locations/city/citycenter/photo/TD2.jpg"></center>'
-                        'Two hours later, the model session/interview ends. After returning to the studio, you are handed <<modelpayfin>> <b>₽</b> in payment for the job.' 
-                        'Sometime later, the article is sent to your phone...' 
-                        'And is disappointing! Beyond your photo is only your name, and the mention, that you are a new runner in The Women''s 400 Meter Dash category.' 
+				act' Finally the job is done':
+					cla & *clr
+					gs 'stat'
+					'<center><img <<$set_imgh>> src="images/locations/city/citycenter/photo/TD3.jpg"></center>'
+					if fame['city_running'] >=400 and runnerQW['prof_stage'] >= 3:
+						'Two hours later, the model session/interviews ends. After returning to the studio, you are handed <<modelpayfin>> <b>₽</b> in payment for the job.'
+						'Sometime later, the article is sent to your phone...'
+						'And is a little awkward... The realization, that you are getting famous, as one of the best, if not THE best runner in The Women''s 400 Meter Dash category in all of St. Petersburg. Practically, the article turns around you. With even fans asking all kinds of personal questions. Damn! You are Hot, Fast and Famous!'							
+					elseif fame['city_running'] >=200 and runnerQW['prof_stage'] >= 1:
+						'Two hours later, the model session/interviews ends. After returning to the studio, you are handed <<modelpayfin>> <b>₽</b> in payment for the job.' 
+						'Sometime later, the article is sent to your phone...'
+						'Being true, is a little dry, mentioning your name, general information and that you are an up-and-coming runner in The Women''s 400 Meter Dash category.'
+					else
+						'<center><img <<$set_imgh>> src="images/locations/city/citycenter/photo/TD2.jpg"></center>'
+						'Two hours later, the model session/interview ends. After returning to the studio, you are handed <<modelpayfin>> <b>₽</b> in payment for the job.' 
+						'Sometime later, the article is sent to your phone...'
+						'And is disappointing! Beyond your photo is only your name, and the mention, that you are a new runner in The Women''s 400 Meter Dash category.' 
 					end
-                    act'Go back to the main floor':gt'foto','studio'   
-                end
-            end                   
-        end
-    end
+					act'Go back to the main floor':gt'foto','studio'
+				end
+			end
+		end
+	end
 end
 
 
@@ -271,4 +271,3 @@ end
 
 
 --- foto_events2 ---------------------------------
-

+ 5 - 1
locations/foto_model_documentary.qsrc

@@ -1123,7 +1123,11 @@ if $ARGS[0] = '1st_documentary_end':
 	gs 'fame', 'city', 'modelling', 'medium'
 	if fame['city_modelling'] > 200: gs 'fame', 'city', 'modelling', 'small'
 	inhib_exp += rand(1,3)
-	money += modelpayfin
+	if $model['pay_method'] = 'direct_deposit':
+		karta += modelpayfin
+	else
+		money += modelpayfin
+	end
 	modelfoto['earnings'] += modelpayfin
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/locations/city/citycenter/photo/foto.jpg"></center>'

+ 3 - 3
locations/gad_church.qsrc

@@ -109,7 +109,7 @@ if $ARGS[0] = 'Narthex':
 	*clr & cla
 	gs 'themes', 'indoors'
 	gs 'stat'
-	PLAY 'sound/church/76139__dkustic__090227-01-people-church-concert.wav',30
+	PLAY 'sound/church/76139__dkustic__090227-01-people-church-concert.mp3',30
 	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/church/enterchurch.jpg"></center>'
 	'You enter the church, and the scent of incense and beeswax fills your lungs. Your eyes are drawn past the Narthex into the Nave with its walls covered in lovingly painted icons while a thousand points of light dance in joy throughout God''s house from the magnificent chandelier that hangs from the ceiling.'
 	'To your left is a counter with many candles, icons and prayer books, a small jar resting next to it with a few rubles and donations for taking a candle.'
@@ -190,14 +190,14 @@ if $ARGS[0] = 'pray':
 			pcs_mood += 50
 			church_moral += 1
 			minut += rand(30,60)
-			if nark > 1: nark = nark/2
+			if drugVars['cocaine_system'] > 1: drugVars['cocaine_system'] = drugVars['cocaine_system'] / 2
 			'The Nave is lit only with small candles, leaving your surroundings in darkness, but you find it comforting. You get the urge to pray very intensely, and before you know it, an hour has passed, and you feel cleansed.'
 		else
 			pcs_horny = 0
 			pcs_mood = 100
 			church_moral += 1
 			minut += 60
-			if nark > 1: nark = ((nark/4)*3)
+			if drugVars['cocaine_system'] > 1: drugVars['cocaine_system'] = 3 * drugVars['cocaine_system'] / 4
 			'The Nave is lit only with candles and small presence lights, and the darkness feels very comforting, like being in the womb. You get the urge to pray very intensely, and before you know it, more than an hour has passed, and you feel reborn and cleansed.'
 		end
 		gs 'stat'

+ 3 - 4
locations/gadbana.qsrc

@@ -165,8 +165,7 @@ if mira_guest = 0:
 			act 'Take a painkiller':
 				cla
 				menu_off = 1
-				pain['killer'] += 1
-				mc_inventory['painkillers'] -= 1
+				gs 'drugs', 'painkiller'
 				pcs_hydra += 20
 				gs 'stat'
 
@@ -198,8 +197,8 @@ if mira_guest = 0:
 		'You have <b><<mc_inventory[''sanitary_pads'']>></b> pads.'
 	end
 
-	if bcream_have > 0:
-		'<a href="exec:dynamic $use_bcream & gt $loc, $loc_arg">Apply breast cream.</a> Uses left: <<bcream_have>>.'
+	if mc_inventory['breastcream'] > 0:
+		'<a href="exec: gs ''drugs'', ''breastcream'' & gt $loc, $loc_arg">Apply breast cream.</a> Uses left: <<mc_inventory[''breastcream'']>>.'
 	end
 
 	if (cumloc[6] = 1 or cumloc[7] = 1):

+ 2 - 2
locations/gadhouse.qsrc

@@ -1081,7 +1081,7 @@ if $ARGS[0] = 'grandma':
 				elseif temp = 7:
 					'"One day, my mother, rest her soul, sent us four siblings out to the forest for berry gathering", your grandma begins. "We took our berry collectors and headed out. We reached the forest entrance quickly and decided that it would be best to split up to complete the task faster. Since we were familiar with the area, we all dispersed to our cherished spots and began gathering berries."'
 					'"My favourite spot was a plot surrounded by dense bushes, and in the middle of the plot, there was a huge stump. It was a great spot, and as I approached, I noticed a vast number of ripe strawberries. I rejoiced over the thought that I would gather more than my brothers, slowly gathering the berries and putting them in my berry collector. Then, suddenly, I hear some rustling behind the bushes. I turn towards the sound, but I''m met with silence. I didn''t notice anyone, but I still couldn''t get rid of the eerie feeling."'
-					'"I shook off the eerie feeling and returned to gathering strawberries again. All of a sudden, I get this strange feeling... I look up, and I see a person squatting on the stump. He''s completely still and just stares at me. I got terrified and ran away, screaming and crying towards my brothers. They tried to stop and calm me down, but I kept running. My brothers started running after me, trying to keep up. I could hear my oldest brother shouting to run towards the kolkhoz. You saw Sveta a long time ago. Your grandma explains that we had central collective farms called kolkhoz."'
+					'"I shook off the eerie feeling and returned to gathering strawberries again. All of a sudden, I get this strange feeling... I look up, and I see a person squatting on the stump. He''s completely still and just stares at me. I got terrified and ran away, screaming and crying towards my brothers. They tried to stop and calm me down, but I kept running. My brothers started running after me, trying to keep up. I could hear my oldest brother shouting to run towards the kolkhoz. You see <<$pcs_firstname>>, a long time ago we had central collective farms called kolkhoz."'
 					'"We were lucky that the farms were close to the forest and didn''t have to run through the woods for long. I kept looking back to see if this person was following us, but there was no sign of him. We knew we were safe when we saw the brigade''s farmers. My brothers and I ran to the foreman and explained what had happened. He immediately grabbed the phone and called someone. The other farmers reassured us that we were safe now. After we had calmed down, we got sent home. Our mother met us at home. She fed us and comforted me."'
 					'"The following day, we were informed that some people found dismantled railroad rails not far from the train station Ratomka. Apparently, it was done by the man I encountered in the forest. I didn''t know it then, but before the war, our area was prone to sabotage by infiltrators. Staying hidden was easy, as the territory is covered by forest, stretching to the border."'
 					'"Ever since that day, the fear I experienced never disappeared, as I''ve felt it throughout my life. I''ll carry on this fear for the remaining days of my life..."'
@@ -1707,7 +1707,7 @@ if $ARGS[0] = 'intro':
 			if month = 6:
 				'As soon as you get off your now coverless bed, your <<$npc_nickname[''A29'']>> is quick to resume her nagging, telling you again what you already heard from her a few moments ago. "The work around the farm normally gets done in the morning, so you can''t sleep in anymore, not even for another fifteen minutes." She''s not even looking at you while she talks, but luckily for you, she misses you rolling your eyes.'
 			else
-			'As soon as you get off your now coverless bed, <<$npc_nickname[''A29'']>> is quick to resume her nagging, telling you again what you already heard from her a few moments ago. "Summer is almost over. You can''t sleep in anymore, not even for another fifteen minutes." Of course, she''s not even looking at you while she talks, but luckily for you, she misses you rolling your eyes.'
+				'As soon as you get off your now coverless bed, <<$npc_nickname[''A29'']>> is quick to resume her nagging, telling you again what you already heard from her a few moments ago. "Summer is almost over. You can''t sleep in anymore, not even for another fifteen minutes." Of course, she''s not even looking at you while she talks, but luckily for you, she misses you rolling your eyes.'
 			end
 			'"What are you going to do when school starts, or when you get a job? You better get into the habit of setting your alarm so you can wake up bright and early."'
 			act 'Continue':

+ 1 - 1
locations/gadsarai.qsrc

@@ -299,7 +299,7 @@ if $ARGS[0] = 'boar':
 end
 
 if $ARGS[0] = 'barn_room':
-	$location_type = 'private'    
+	$location_type = 'private'
 	$setloc['StageTitle'] = 'Guest Room'
 	$setloc['StageImage'] =   '<<$default_img_path>>village/gad_room'
 	minut += 5

+ 5 - 8
locations/gas_station_gp_117.qsrc

@@ -185,15 +185,14 @@ if $ARGS[0] = 'restroom':
 		'<br>You don''t have enough money to use the restroom.'
 	end
 
-	if joint > 0:
+	if mc_inventory['joints'] > 0:
 		act 'Smoke a joint':
 			*clr & cla
 			menu_off = 1
-			minut += 5
+			minut += 15
+			gs 'drugs', 'joint'
 			'<center><img <<$set_imgh>> src="images/shared/drugs/joint_smoking.jpg"></center>'
 			'You go behind the restrooms and pull a joint out of your purse and light it up. Not before long you''re starting to feel the relaxing effects as you''re getting high.'
-			gs 'drugs', 'joint'
-			gs 'stat'
 			act 'Go back': gt 'gas_station_gp_117', 'restroom'
 		end
 	end
@@ -262,11 +261,10 @@ if $ARGS[0] = 'restroom_women':
 	'A <a href="exec:gt ''mirror'',''start''">mirror</a>, where you can ' + iif(pcs_hairbsh = 0,'<a href="exec: gt ''mirror'',''brush''">brush</a>','brush') + ' your hair hangs over each sink.'
 	act 'Go outside': minut += 1 & gt 'gas_station_gp_117', 'restroom'
 
-	if dur > 0 and narkday ! daystart:
+	if mc_inventory['cocaine'] > 0 and drugVars['cocaine_day'] ! daystart:
 		act 'Do a line of cocaine (0:05)':
 			*clr & cla
 			menu_off = 1
-			narkday = daystart
 			gs 'drugs', 'cocaine'
 			minut += 5
 			gs 'stat'
@@ -301,11 +299,10 @@ if $ARGS[0] = 'restroom_men':
 
 	act 'Go outside': minut += 1 & gt 'gas_station_gp_117', 'restroom'
 
-	if dur > 0 and narkday ! daystart:
+	if mc_inventory['cocaine'] > 0 and drugVars['cocaine_day'] ! daystart:
 		act 'Do a line of cocaine (0:05)':
 			*clr & cla
 			menu_off = 1
-			narkday = daystart
 			gs 'drugs', 'cocaine'
 			minut += 5
 			gs 'stat'

+ 2 - 2
locations/gopnik_initiation.qsrc

@@ -543,7 +543,7 @@ if $ARGS[0] = 'tPauline':
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/characters/shared/headshots_main/big24.jpg"></center>'
 	'You approach Pauline as she angrily turns towards you. "What the fuck what you want?!"'
-	if smoker >= 20:
+	if drugVars['cigarettes_used'] >= 20:
 		'Surprised by her reaction, you lower your gaze. "I saw you were having a smoke and I wanted to ask if I could have one?"'
 		'Pauline sighs and hands over a pack of cigarettes.'
 		act 'Thank her':
@@ -555,7 +555,7 @@ if $ARGS[0] = 'tPauline':
 			'"I know the feeling. I usually always get that feeling after kicking someone''s ass," she replies.'
 			minut += 2
 			pcs_mood += 10
-			gs 'shortgs','smoker'
+			gs 'drugs','smoke'
 			gs 'stat'
 			act 'Sounds like a bad habit':
 				*clr & cla

+ 7 - 8
locations/gschool_coolkid_chats.qsrc

@@ -128,10 +128,10 @@ if $ARGS[0] = 'dim_drugs':
 	'He smiles at you with a smug grin. "Sure. Do you have any money?"'
 	if money >= 420:
 		act 'Change your mind': gt 'gschool_lessons', 'short_break'
-		if money >= 420: act 'Buy enough for 1 line (420 <b>₽</b>)': palelady = 1 & gt 'gschool_coolkid_chats', 'dimka_pay'
-		if money >= 840: act 'Buy enough for 2 lines (840 <b>₽</b>)': palelady = 2 & gt 'gschool_coolkid_chats', 'dimka_pay'
-		if money >= 1680: act 'Buy enough for 5 lines (1680 <b>₽</b>)': palelady = 5 & gt 'gschool_coolkid_chats', 'dimka_pay'
-		if money >= 3720: act 'Buy enough for 10 lines (3320 <b>₽</b>)': palelady = 10 & gt 'gschool_coolkid_chats', 'dimka_pay'
+		if money >= 420: act 'Buy enough for 1 line (420 <b>₽</b>)': gt 'gschool_coolkid_chats', 'dimka_pay', 1
+		if money >= 840: act 'Buy enough for 2 lines (840 <b>₽</b>)': gt 'gschool_coolkid_chats', 'dimka_pay', 2
+		if money >= 1680: act 'Buy enough for 5 lines (1680 <b>₽</b>)': gt 'gschool_coolkid_chats', 'dimka_pay', 5
+		if money >= 3720: act 'Buy enough for 10 lines (3320 <b>₽</b>)': gt 'gschool_coolkid_chats', 'dimka_pay', 10
 	else
 		*nl
 		'You bite your lower lip nervously and look down as you shake your head. "No, but can you just give me some now and I can pay you back later? Please?"'
@@ -144,9 +144,8 @@ end
 
 if $ARGS[0] = 'dimka_pay':
 	*clr & cla
-	money -= palelady * 420
-	dur += palelady
-	palelady = 0
+	money -= ARGS[1] * 420
+	mc_inventory['cocaine'] += ARGS[1]
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/shared/drugs/cocainebag.jpg"></center>'
 	'You nod your head and dig around in your purse before pulling out the money and quickly handing it to him. He takes his time slowly counting it out, which seems like an eternity before he finally hands over a small baggy. You snatch it from him and quickly leave.'
@@ -197,7 +196,7 @@ if $ARGS[0] = 'dimka_sex':
 						'He puts his dick away and buttons up his pants. "I want my money by next week," he demands before he walks out, leaving you to get cleaned up on your own.'
 						act 'Time for the next class': gt 'gschool_lessons', 'short_break'
 					else
-						dur += 1
+						mc_inventory['cocaine'] += 1
 						dimka_debt += 2000
 						'He puts his dick away and buttons up his pants. "I want my money by next week," he demands before tossing a small baggy of white power on the floor before walking out, leaving you to get cleaned up on your own. Not even thinking about the cum on your face, you quickly snatch up the baggy.'
 						act 'Time for the next class': gt 'gschool_lessons', 'short_break'

+ 1 - 1
locations/gschool_events.qsrc

@@ -601,7 +601,7 @@ if $ARGS[0] = 'break_events':
 	elseif break_rand = 12 and hotcat > 5 and PCloSkirt > 0:
 		cla
 		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/events/skirtpulledup.jpg"></center>'
-		if func('pcs_has_attr', 'OR', 'body_ass_big', 'body_ass_bubble'):
+		if func('pcs_has_attr', 'OR', 'body_ass_big', 'body_ass_heart', 'body_ass_bubble'):
 			'As you walk down the hallway, you feel someone moving in behind you and quickly pulling your skirt up. Your skirt is barely in the air before you feel a hand firmly squeezing your ass. As you move to turn around, the hand quickly pulls away. You can tell from his admiring expression that Lazar was the one groping your ass. All the workouts you''ve been doing have made your ass big and firm enough to impress him.'
 		else
 			'As you walk down the hallway, you feel someone moving in behind you and quickly pulling your skirt up. Your skirt is barely in the air before you feel hands pawing at your ass. As you move to turn around, the hand quickly pulls away. You can tell from his disappointed expression that Lazar was the one groping your ass. Perhaps he was expecting something firmer after hanging out with the athletic girls so much? Maybe you should work out more...'

+ 53 - 53
locations/gschool_grounds.qsrc

@@ -190,7 +190,7 @@ if $ARGS[0] = 'main':
 
 	act 'Go to the sports field': minut += 1 & gt 'gschool_grounds', 'sports'
 
-	if joint > 0 and jointhigh = 0: act 'Smoke a joint behind the school building': gs 'drugs', 'joint' & gt $loc, $loc_arg
+	if mc_inventory['joints'] > 0 and drugVars['weed_high'] = 0: act 'Smoke a joint behind the school building': minut += 10 & gs 'drugs', 'joint' & gt $loc, $loc_arg
 
 	if week = 6 and hour = 8 and mid($start_type,1,2) = 'sg' and SchoolAtestat = 0 and detention_set = 1 and SchoolBlock = 0: act 'Go to detention': gt 'gschool_detention', 'start'
 
@@ -379,7 +379,7 @@ if $ARGS[0] = 'sports':
 
 	if hour >= 9 and hour < 18 and mid($start_type,1,2) = 'sg' and SchoolAtestat = 0 and kanikuli = 0: 'With the school open, you can go to the <a href="exec: minut += 1 & gt ''gschool_grounds'', ''change_room''">changing rooms</a> by the gym and change your outfit.'
 
-	if week = 6 and SchoolSorev = 2 and hour = 10 and SchoolBlock = 0:
+	if week = 6 and runnerQW['pav_racetype'] = 2 and hour = 10 and SchoolBlock = 0:
 		*nl
 		'Athletic students of your school and other schools in the area have gathered at the athletics track near your school. Everyone is getting ready for the running competition.'
 		if $clothingworntype = 'danilovich_outfits' and $shoeworntype = 'danilovich':
@@ -389,7 +389,7 @@ if $ARGS[0] = 'sports':
 		end
 	end
 
-	if week = 6 and SchoolSorev = 1 and hour = 10 and SchoolBlock = 0:
+	if week = 6 and runnerQW['pav_racetype'] = 1 and hour = 10 and SchoolBlock = 0:
 		*nl
 		'Athletic students of your school and other schools in the area have gathered at the athletics track near your school. Everyone is getting ready for the running competition.'
 
@@ -509,8 +509,8 @@ if $ARGS[0] = 'SchoolRun':
 	act 'Go to the start':
 		*clr & cla
 		minut += 30
-		SchoolSorev = 0
-		kolsorev += 1
+		runnerQW['pav_racetype'] = 0
+		runnerQW['races_ran'] += 1
 		gs 'stat'
 		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/grounds/begsor.jpg"></center>'
 		'The 400m sprint event for girls is up next. You take off your jacket and go the starting line, mentally preparing yourself for the race.'
@@ -522,19 +522,19 @@ if $ARGS[0] = 'SchoolRun':
 		'Go!'
 		wait 725
 
-		begminus = 0
+		runnerQW['bmi_penalty'] = 0
 		if pcs_bmi > 25:
-			begminus = ((pcs_bmi - 25)*4)
+			runnerQW['bmi_penalty'] = ((pcs_bmi - 25)*4)
 		elseif pcs_bmi < 20:
-			begminus = ((20 - pcs_bmi)*(20-pcs_bmi))
+			runnerQW['bmi_penalty'] = ((20 - pcs_bmi)*(20-pcs_bmi))
 		end
-		begresult = pcs_run - begminus
+		runnerQW['result'] = pcs_run - runnerQW['bmi_penalty']
 
 		act 'Run': gs 'gschool_grounds', 'SchoolRun_result'
 		gs 'willpower', 'skill', 'run_lvl', 'hard'
 		if will_cost <= pcs_willpwr:
 			act 'Give it your best (<<will_cost>> Willpower)':
-				begresult += 10
+				runnerQW['result'] += 10
 				gs 'willpower', 'pay', 'self'
 				gs 'gschool_grounds', 'SchoolRun_result'
 			end
@@ -546,30 +546,30 @@ end
 
 if $ARGS[0] = 'SchoolRun_result':
 	cla
-	if begresult < 10:
+	if runnerQW['result'] < 10:
 		grupvalue[2] -= 2
 		'You barely manage to reach the finish line at all. There''s no point in checking where you finished, you already know you were last by quite a large margin.'
-	elseif begresult < 15:
+	elseif runnerQW['result'] < 15:
 		grupvalue[2] -= 1
 		'You struggle to keep up with the other girls, and finish in last place.'
-	elseif begresult < 20:
+	elseif runnerQW['result'] < 20:
 		'You run as fast as you can, but only manage to finish second to last.'
-	elseif begresult < 25:
+	elseif runnerQW['result'] < 25:
 		'You run as fast as you can, but only manage to take 6th place.'
-	elseif begresult < 30:
+	elseif runnerQW['result'] < 30:
 		grupvalue[2] += 1
 		'You run as fast as you can, but only manage to take 5th place.'
-	elseif begresult < 35:
+	elseif runnerQW['result'] < 35:
 		grupvalue[2] += 1
 		'You run as fast as you can, but only manage to take 4th place.'
-	elseif begresult < 45:
+	elseif runnerQW['result'] < 45:
 		grupvalue[2] += 2
 		'You run as fast as you can, and manage to take 3rd place. Mr. Pavlovich, the P.E. teacher at your school, congratulates you.'
-	elseif begresult < 50:
+	elseif runnerQW['result'] < 50:
 		grupvalue[2] += 3
 		'You run as fast as you can, and manage to take 2nd place. Mr. Pavlovich, the P.E. teacher at your school, congratulates you on your achievement.'
 	else
-		swinbeg += 1
+		runnerQW['pav_wins1'] += 1
 		grupvalue[2] += 5
 		'You run as fast as you can, and manage to reach the finish line first. Mr. Pavlovich, the P.E. teacher at your school, congratulates you on winning the competition as you walk around with your arms raised in triumph.'
 	end
@@ -577,18 +577,18 @@ if $ARGS[0] = 'SchoolRun_result':
 	gs 'exp_gain', 'run', 1
 	fat -= 2
 
-	if swinbeg = 3 and LocalRun = 0:
-		LocalRun = 1
-		if razradbeg < 1:
+	if runnerQW['pav_wins1'] = 3 and runnerQW['pav_stage'] = 0:
+		runnerQW['pav_stage'] = 1
+		if runnerQW['prof_stage'] < 1:
 			'You have won the school running competition three times now and Mr. Pavlovich, the P.E. teacher at your school, announces that your success has not gone unnoticed. He smiles and awards you the third tier sports trophy in running, which you proudly accept and show to everyone.'
-			razradbeg = 1
+			runnerQW['prof_stage'] = 1
 		else
 			'You have won the school running competition three times now and Mr. Pavlovich, the P.E. teacher at your school, smiles and awards you a local competition trophy which you proudly accept and show to everyone.'
 		end
 	end
 
 	gs 'stat'
-	if begresult > 50:
+	if runnerQW['result'] >= 50:
 		act 'Continue': gt 'gschool_grounds','Family extension'
 	else
 		act 'Return to town': gt 'gschool_grounds', 'main'
@@ -604,28 +604,28 @@ if $ARGS[0] = 'SchoolRun2':
 	'You think you might be able to win, and sign up to participate in the competition. After quickly changing into your running gear you return to the track. The guys are having their race first, and you watch them as you prepare. As expected, Ivan Prokhorov wins. When the guys have finished, it is the girls'' turn.'
 
 	if christinaQW['fight'] = 1 or christinaQW['blackmail'] = 2:
-		if swinbeggor = 0:
+		if runnerQW['pav_wins2'] = 0:
 			'You find Lina at the starting line with a smile on her face. Seeing you she waves and calls out cheerfully "Good luck, <<$pcs_nickname>>!"'
-		elseif swinbeggor = 1:
+		elseif runnerQW['pav_wins2'] = 1:
 			'You find Lina at the starting line with a smile on her face. Seeing you she waves and calls out cheerfully "I am going to get you this time, <<$pcs_nickname>>!"'
-		elseif swinbeggor = 2:
+		elseif runnerQW['pav_wins2'] = 2:
 			'You find Lina at the starting line with a smile on her face. Seeing you she waves and calls out cheerfully "Not going to get me a third time, <<$pcs_nickname>>!"'
 		end
 	else
-		if swinbeggor = 0:
+		if runnerQW['pav_wins2'] = 0:
 			'Getting ready at the starting line is Christina, one of the girls in your class. She just scoffs at you. "You''ll never beat me!"'
-		elseif swinbeggor = 1:
+		elseif runnerQW['pav_wins2'] = 1:
 			'Getting ready at the starting line is Christina, one of the girls in your class. She looks at you angrily and says "You beat me once, but never again!"'
-		elseif swinbeggor = 2:
+		elseif runnerQW['pav_wins2'] = 2:
 			'Getting ready at the starting line is Christina, one of the girls in your class. She looks at you with pure hatred. "You again, bitch? You''re going down this time, I promise you!"'
 		end
 	end
 
 	act 'Go to the start':
 		*clr & cla
-		kolsorev += 1
+		runnerQW['races_ran'] += 1
 		minut += 30
-		SchoolSorev = 0
+		runnerQW['pav_racetype'] = 0
 		gs 'stat'
 		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/grounds/begsor.jpg"></center>'
 		'The 400m sprint event for girls is up next. You take off your jacket and go the starting line, mentally preparing yourself for the race.'
@@ -637,19 +637,19 @@ if $ARGS[0] = 'SchoolRun2':
 		'Go!'
 		wait 725
 
-		begminus = 0
+		runnerQW['bmi_penalty'] = 0
 		if pcs_bmi > 25:
-			begminus = ((pcs_bmi - 25)*4)
+			runnerQW['bmi_penalty'] = ((pcs_bmi - 25)*4)
 		elseif pcs_bmi < 18:
-			begminus = ((25 - pcs_bmi)*6)
+			runnerQW['bmi_penalty'] = ((25 - pcs_bmi)*6)
 		end
-		begresult = pcs_run - begminus
+		runnerQW['result'] = pcs_run - runnerQW['bmi_penalty']
 
 		act 'Run': gs 'gschool_grounds', 'SchoolRun2_result'
 		gs 'willpower', 'skill', 'run_lvl', 'hard'
 		if will_cost <= pcs_willpwr:
 			act 'Give it your best (<<will_cost>> Willpower)':
-				begresult += 10
+				runnerQW['result'] += 10
 				gs 'willpower', 'pay', 'self'
 				gs 'gschool_grounds', 'SchoolRun2_result'
 			end
@@ -661,30 +661,30 @@ end
 
 if $ARGS[0] = 'SchoolRun2_result':
 	cla
-	if begresult < 10:
+	if runnerQW['result'] < 10:
 		grupvalue[2] -= 2
 		'You barely manage to reach the finish line at all. There''s no point in checking where you finished, you already know you were last by quite a large margin.'
-	elseif begresult < 15:
+	elseif runnerQW['result'] < 15:
 		grupvalue[2] -= 1
 		'You struggle to keep up with the other girls, and finish in last place.'
-	elseif begresult < 20:
+	elseif runnerQW['result'] < 20:
 		'You run as fast as you can, but only manage to finish second to last.'
-	elseif begresult < 25:
+	elseif runnerQW['result'] < 25:
 		'You run as fast as you can, but only manage to take 6th place.'
-	elseif begresult < 30:
+	elseif runnerQW['result'] < 30:
 		grupvalue[2] += 1
 		'You run as fast as you can, but only manage to take 5th place.'
-	elseif begresult < 35:
+	elseif runnerQW['result'] < 35:
 		grupvalue[2] += 1
 		'You run as fast as you can, but only manage to take 4th place.'
-	elseif begresult < 40:
+	elseif runnerQW['result'] < 40:
 		grupvalue[2] += 2
 		'You run as fast as you can, and manage to take 3rd place. Mr. Pavlovich, the P.E. teacher at your school, congratulates you.'
-	elseif begresult < 50:
+	elseif runnerQW['result'] < 50:
 		grupvalue[2] += 3
 		'You run as fast as you can, and manage to take 2nd place. Mr. Pavlovich, the P.E. teacher at your school, congratulates you on your achievement.'
 	else
-		swinbeggor += 1
+		runnerQW['pav_wins2'] += 1
 		grupvalue[2] += 5
 		'You run as fast as you can, and manage to reach the finish line first. Mr. Pavlovich, the P.E. teacher at your school, congratulates you on winning the competition yet again while you walk around with your arms raised in triumph.'
 	end
@@ -692,11 +692,11 @@ if $ARGS[0] = 'SchoolRun2_result':
 	gs 'exp_gain', 'run', 1
 	fat -= 2
 
-	if swinbeggor = 3 and LocalRun = 1:
-		LocalRun = 2
-		if razradbeg < 2:
+	if runnerQW['pav_wins2'] = 3 and runnerQW['pav_stage'] = 1:
+		runnerQW['pav_stage'] = 2
+		if runnerQW['prof_stage'] < 2:
 			'You have won the competition three more times and Mr. Pavlovich awards you the second tier sports trophy in running.'
-			razradbeg = 2
+			runnerQW['prof_stage'] = 2
 		else
 			'You have won the competition three more times and Mr. Pavlovich awards you another trophy.'
 		end
@@ -706,7 +706,7 @@ if $ARGS[0] = 'SchoolRun2_result':
 		else
 			'Christina stands nearby glaring at you the whole time, her hands balled into fists. She''s seething with rage, realizing she cannot beat you.'
 		end
-	elseif swinbeggor = 2 and begresult >= 130:
+	elseif runnerQW['pav_wins2'] = 2 and runnerQW['result'] >= 130:
 		if christinaQW['fight'] = 1 or christinaQW['blackmail'] = 2:
 			gs 'npc_relationship', 'modify', 'A19', 'love'
 			'Lina stands at at the finish line, gasping for breath. Even though you beat her a second time, she flashes you a bright smile in congratulations.'
@@ -714,7 +714,7 @@ if $ARGS[0] = 'SchoolRun2_result':
 			gs 'npc_relationship', 'modify', 'A18', 'loathe'
 			'Christina is gasping for breath at the finish line. She was unable to overtake you, and came second again. Christina avoids your gaze, not wanting to look you in the eye.'
 		end
-	elseif swinbeggor = 1 and begresult >= 130:
+	elseif runnerQW['pav_wins2'] = 1 and runnerQW['result'] >= 130:
 		if christinaQW['fight'] = 1 or christinaQW['blackmail'] = 2:
 			gs 'npc_relationship', 'modify', 'A19', 'love'
 			'Lina stands at at the finish line, gasping for breath. Even though you beat her, she flashes you a bright smile in congratulations.'
@@ -725,7 +725,7 @@ if $ARGS[0] = 'SchoolRun2_result':
 	end
 
 	gs 'stat'
-	if begresult > 50:
+	if runnerQW['result'] > 50:
 		act 'Continue': gt 'gschool_grounds','Family extension'
 	else
 		act 'Leave': gt 'gschool_grounds', 'main'

+ 1 - 1
locations/gschool_lessons.qsrc

@@ -21,7 +21,7 @@ if $ARGS[0] = 'morning':
 		lernSkill += 1
 		lernHome += 1
 
-		if SchoolSorev = 1: SchoolSorev = 0
+		if runnerQW['pav_racetype'] = 1: runnerQW['pav_racetype'] = 0
 		if hour < 8: gs 'gschool_socialchg', 'test'
 	end
 		

+ 7 - 8
locations/gschool_lessons4.qsrc

@@ -656,11 +656,11 @@ if $ARGS[0] = 'pe':
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/gym/fizra.jpg"></center>'
 	'You arrive in the gym and head straight to the girls locker room. Once inside, you quickly change into your athletic clothes before heading back out into the hall. Once everyone is ready, Coach Pavlovich conducts a roll call to ensure everyone is present.'
-	if week = 5 and LocalRun = 0:
-		if SchoolSorev = 0:SchoolSorev = 1
+	if week = 5 and runnerQW['pav_stage'] = 0:
+		if runnerQW['pav_racetype'] = 0: runnerQW['pav_racetype'] = 1
 		'Coach Pavlovich announces that the inter-school running competition will be held this Saturday at 11:00. If you want to participate, you should come to school between 10:00 and 11:00.'
-	elseif week = 5 and LocalRun = 1:
-		if SchoolSorev = 0:SchoolSorev = 2
+	elseif week = 5 and runnerQW['pav_stage'] = 1:
+		if runnerQW['pav_racetype'] = 0: runnerQW['pav_racetype'] = 2
 		'Coach Pavlovich announces that the inter-school running competition will be held this Saturday at 11:00. If you want to participate, you should come to school between 10:00 and 11:00.'
 	end
 	act 'Continue':
@@ -1962,12 +1962,11 @@ if $ARGS[0] = 'post_dress':
 			act'Continue':gt 'gschool_lessons4', 'post_dress'
 		end
 	end
-	if joint >= 1:
+	if mc_inventory['joints'] > 0:
 		act 'Smoke a joint':
 			*clr & cla
-			gs 'drugs', 'joint', 1
-			minut += 5
-			gs 'stat'
+			minut += 15
+			gs 'drugs', 'joint'
 			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/school/gym/locker/smokejoint.jpg"></center>'
 			'You feel the urge to get high before you leave school, so you take a seat on one of the benches and take a joint out of your purse, placing it between your lips before lighting it up and taking a long drag. You quickly feel yourself relaxing and smile as you lean back against the lockers. You spend the next few minutes smoking the joint until you''re as high as a kite. Once you''re done, you throw the roach in one of the toilets.'
 			act'Continue':gt 'gschool_lessons4', 'post_dress'

+ 4 - 4
locations/homes_properties.qsrc

@@ -564,7 +564,7 @@ if $ARGS[0] = 'get_properties_for_sale':
 			i += 1
 		if i < count: jump 'get_properties_for_sale_loop'
 	end
-	killvar 'count' & killvar 'i' & killvar 'j' & killvar 'propcode' & killvar 'checked_homes' & killvar 'ishome' & killvar 'hasprice'
+	killvar 'count' & killvar 'i' & killvar 'j' & killvar 'propcode' & killvar 'checked_homes' & killvar 'ishome' & killvar 'hasprice' & killvar '$getforsalespropcode'
 end
 
 !! Use it as `gs`, creates a set of arrays that contains the relevant info for 
@@ -634,7 +634,7 @@ if $ARGS[0] = 'get_internet_enabled_properties':
 				checked_homes[$getnetenabledprocode] = 1
 				gs 'homes_properties_attr', 'get_property_attr', $getnetenabledprocode
 				accesscheck = ($ARGS[2] = 'hasaccess' and accessible_property[$getnetenabledprocode] ! 0 and accessible_property[$getnetenabledprocode] ! 4) or $ARGS[2] = ''
-				typecheck = (($ARGS[1] ! 'home' and INSTR($property['type'], 'residence') = 0) or ($ARGS[1] ! 'business' and INSTR($property['type'], 'residence') > 0))				
+				typecheck = (($ARGS[1] ! 'home' and INSTR($property['type'], 'residence') = 0) or ($ARGS[1] ! 'business' and INSTR($property['type'], 'residence') > 0))
 				if accesscheck and typecheck and property['internet_enabled']:
 					$property_name[j] = $property['name']
 					$property_code[j] = $getnetenabledprocode
@@ -653,11 +653,11 @@ if $ARGS[0] = 'get_internet_enabled_properties':
 					killvar 'accesscheck' & killvar 'typecheck'
 				end
 				killvar 'property'
-			end			
+			end
 			i += 1
 		if i < count: jump 'get_internet_enabled_properties_loop'
 	end
-	killvar 'count' & killvar 'i' & killvar 'j' & killvar 'propcode'
+	killvar 'count' & killvar 'i' & killvar 'j' & killvar 'propcode' & killvar 'checked_homes'
 end
 
 

+ 1 - 0
locations/homes_properties_attr.qsrc

@@ -138,6 +138,7 @@ if ARRSIZE('home_name') < 4:
 	$home_name['gadbana'] = 'grandparents_house'
 	$home_name['gadgarden'] = 'grandparents_house'
 	$home_name['gadhouse'] = 'grandparents_house'
+	$home_name['gadsarai'] = 'grandparents_house'
 
 
 	!! CITY HOUSE

+ 1 - 2
locations/hookahlounge.qsrc

@@ -52,9 +52,8 @@ if $ARGS[0] = 'Smoke_Hookah':
 		cla & *clr
 		smoketab = 0
 		minut += 60
-		gs 'stat'
-		mc_inventory['cigarettes'] += 1
 		gs 'drugs', 'smoke', 1
+
 		'<center><img <<$set_imgh>> src="images/locations/city/redlight/hookahlounge/HookahSmoke.jpg"></center>'
 		'You smoke using the hookah'
 		act 'Stop using Hookah': gt 'hookahlounge', 'start'

+ 14 - 15
locations/hookup_after.qsrc

@@ -853,9 +853,8 @@ if $ARGS[0] = 'light_cigarette':
 				'"Well it''s a good thing I paid up front then," you smile back, plucking one from his pack.' 
 				act'Continue':
 					cla & *clr
-					mc_inventory['cigarettes'] += 1
-					siga_bum = 1
-					gs 'drugs', 'smoke'
+					gs 'drugs', 'smoke', 1
+
 					'<center><img <<$set_imgh>> src="images/shared/sex/after/bed_smoke3.jpg"></center>'
 					'He leans over with the lighter and lights it for you and you inhale with him, savoring the smoke that fills your lungs as the two of you sit back and puff away together.'
 					gs 'hookup_after', 'pre'
@@ -870,9 +869,8 @@ if $ARGS[0] = 'light_cigarette':
 					'You decide to grab a smoke too, pulling one from your purse. You place it in your mouth, sparking it with your lighter while you inhale.'
 					act'Continue':
 						cla & *clr
-						siga_bum = 1
 						gs 'drugs', 'smoke'
-						gs 'stat'
+
 						'<center><img <<$set_imgh>> src="images/shared/sex/after/bed_smoke3.jpg"></center>'
 						'Smoke fills your lungs and you hold it there, savoring it, before exhaling slowly. As the smoke blows past your lips, it''s like all your stress goes with it and you sigh happily, relaxing into the bed as both of you unwind with a post-fuck smoke together.'
 						gs 'hookup_after', 'pre'
@@ -890,7 +888,7 @@ if $ARGS[0] = 'light_cigarette':
 				act'Continue':
 					cla & *clr
 					gs 'drugs', 'smoke'
-					gs 'stat'
+
 					'<center><img <<$set_imgh>> src="images/shared/sex/after/bed_smoke1.jpg"></center>'
 					'Smoke fills your lungs and you hold it there, savoring it, before exhaling slowly. As the smoke blows past your lips, it''s like all your stress goes with it and you sigh happily, relaxing into the bed.'
 					gs 'hookup_after', 'pre'
@@ -911,9 +909,8 @@ if $ARGS[0] = 'light_cigarette2':
 		'"Well it''s a good thing I paid up front then," you smile back, plucking one from his pack.' 
 		act'Continue':
 			cla & *clr
-			mc_inventory['cigarettes'] += 1
-			siga_bum = 1
-			gs 'drugs', 'smoke'
+			gs 'drugs', 'smoke', 1
+
 			'<center><img <<$set_imgh>> src="images/shared/sex/after/bed_smoke3.jpg"></center>'
 			'He leans over with the lighter and lights it for you and you inhale with him, savoring the smoke that fills your lungs as the two of you sit back and puff away together.'
 			gs 'hookup_after', 'pre'
@@ -929,7 +926,7 @@ if $ARGS[0] = 'light_cigarette2':
 			act'Continue':
 				cla & *clr
 				gs 'drugs', 'smoke'
-				gs 'stat'
+
 				'<center><img <<$set_imgh>> src="images/shared/sex/after/bed_smoke3.jpg"></center>'
 				'Smoke fills your lungs and you hold it there, savoring it, before exhaling slowly. As the smoke blows past your lips, it''s like all your stress goes with it and you sigh happily, relaxing into the bed as both of you unwind with a post-fuck smoke together.'
 				gs 'hookup_after', 'pre'
@@ -1403,8 +1400,9 @@ if $ARGS[0] = 'start':
 		'The two of you let the conversation die off as you puff away at the last of nubs of your cigarette.'
 	elseif hookup['cigarette'] = 3:
 		cla & *clr
-		'<center><img <<$set_imgh>> src="images/shared/sex/after/phone_smoke.jpg"></center>'
 		gs 'drugs', 'smoke'
+
+		'<center><img <<$set_imgh>> src="images/shared/sex/after/phone_smoke.jpg"></center>'
 		if npc_smoker[$boy] > 0:
 			'Reaching down to your purse, you pull out your phone and a cigarette, sparking the latter and taking a long enjoyable drag from it. <<$npc_firstname[$boy]>> sees you light up and does the same, pulling his own smokes from his nightstand. The two of your relax, smoking together, while you unwind checking messages and scrolling through social media feeds.'
 		else
@@ -1412,20 +1410,21 @@ if $ARGS[0] = 'start':
 		end
 	elseif npc_smoker[$boy] > 0 and hookup['cigarette'] = 2:
 		cla & *clr
+		gs 'drugs', 'smoke', 1
+
 		'<center><img <<$set_imgh>> src="images/shared/sex/after/bed_smoke3.jpg"></center>'
-		mc_inventory['cigarettes'] += 1
-		siga_bum = 1
-		gs 'drugs', 'smoke'
 		'The two of you lay back and relax, enjoying a post-fuck smoke together as you wind down.'
 	elseif npc_smoker[$boy] > 0 and hookup['cigarette'] = 1:
 		cla & *clr
-		'<center><img <<$set_imgh>> src="images/shared/sex/after/bed_smoke3.jpg"></center>'
 		gs 'drugs', 'smoke'
+
+		'<center><img <<$set_imgh>> src="images/shared/sex/after/bed_smoke3.jpg"></center>'
 		'Seeing you light up, <<$npc_firstname[$boy]>> does as well, pulling a pack from his nightstand. You spark the end with your lighter and relax, taking a long drag, relishing the flavor as it fills your mouth and lungs. The two of you just sit there in silence for a few minutes, enjoying a post-fuck smoke together as you wind down.'
 	elseif hookup['cigarette'] = 1:
 		cla & *clr
 		gs 'drugs', 'smoke'
 		gs 'stat'
+
 		'<center><img <<$set_imgh>> src="images/shared/sex/after/bed_smoke1.jpg"></center>'
 		'Smoke fills your lungs and you hold it there, savoring it, before exhaling slowly. As the smoke blows past your lips, it''s like all your stress goes with it and you sigh happily, relaxing into the bed.'
 	elseif npc_smoker[$boy] > 0:

+ 4 - 7
locations/hotel_anna.qsrc

@@ -401,12 +401,9 @@ if $ARGS[0] = '4a':
 					gs 'stat'
 					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/zrestr.jpg"></center>'
 					'A set of items stand in front of you
-					<table border=1><tr><td><a href="exec:gs ''hotel_anna_gear'', ''restraints_rope''">Ropes</a></td><td><a href="exec:gs ''hotel_anna_gear'', ''restraints_harness''">Harness</a></td></tr>'
-					
-					!!Don''t forget to move the TR back when re adding this
-					!!'<td><a href="exec:gs ''hotel_anna_gear'', ''restraints_leash''">Collar and leash</a></td><td><a href="exec:gs ''hotel_anna_gear'', ''restraints_cuff''">Cuffs</a></td>'
-
-					act 'go away': gt'pav_hotel'
+					<table border=1><tr><td><a href="exec:gs ''hotel_anna_gear'', ''restraints_rope''">Ropes</a></td><td><a href="exec:gs ''hotel_anna_gear'', ''restraints_harness''">Harness</a></td>'
+					'<td><a href="exec:gs ''hotel_anna_gear'', ''restraints_leash''">Collar and leash</a></td><td><a href="exec:gs ''hotel_anna_gear'', ''restraints_cuff''">Cuffs</a></td></tr>'
+					act 'Leave': gt'pav_hotel'
 				end
 				act'Skip the demo':
 					minut += 10
@@ -777,7 +774,7 @@ if ARGS[0] = 8:
 end
 
 if ARGS[0] = 9:
-	'BDSMtaxi = 1'
+	bdsmclub['unlocked'] = 1
 	'Anna_see_asub = <<Anna_see_asub>>'
 	'Anna_see_adom = <<Anna_see_adom>>'
 	'Anna_see_aswitch = <<Anna_see_aswitch>>'

+ 99 - 494
locations/hotel_anna_gear.qsrc

@@ -733,21 +733,21 @@ if $ARGS[0] = 'toys_wand':
 						gs 'stat'
 						Anna_trust -= 1
 						'"No no! It''s just my hair that stands up! Yes...that''s it." You try to avoid being honest with Anna.'
-						'"Well assuming you are telling the truth... that''s  normal. It''s not something that usually surprise people. Anyway, if you were telling the truth you are really impressionable, i have to say. But we''ll leave that for another day. Let''s head to the front door, you probably have homework to do." Anna leads you to the door, you shake her hand and go outside.'
+						'"Well assuming you are telling the truth... that''s  normal. It''s not something that usually surprise people. Anyway, if you were telling the truth you are really impressionable, i have to say. But we''ll leave that for another day. Let''s head to the door, you probably have homework to do." Anna leads you to the door, you shake her hand and you return to the hotel lobby.'
 						act 'Leave': gs 'hotel_anna_gear', 'toys_images_clear' & gt 'pav_hotel'
 					end
 				end
 				act'Never felt something like that before':
 					*clr & cla
 					gs 'stat'
-					'"The wand does have it''s own special way of stimulating. It can offer so much more than this. This was only a little demonstration of what it can do... But I think this is enough for today, you learned something new so we''ll end it here, let me show you out, we can continue this next time." Anna leads you to the door, you shake her hand and go to the residential area.'
+					'"The wand does have it''s own special way of stimulating. It can offer so much more than this. This was only a little demonstration of what it can do... But I think this is enough for today, you learned something new so we''ll end it here, let me show you out, we can continue this next time." Anna leads you to the door, you shake her hand and return to the hotel lobby.'
 					act 'Leave': gs 'hotel_anna_gear', 'toys_images_clear' & gt 'pav_hotel'
 				end
 				act'Emmmh...what am i suppose to feel?':
 					*clr & cla
 					gs 'stat'
 					Anna_see_abrat += 1
-					'"That was enough to move your finger so you definitely felt something that''s for sure. Don''t be blinded by the excitement, especially in BDSM world. It''s easy to over estimate your limits, and that is dangerous when we talk about BDSM. Always, be honest with yourself. That''s enough today. Let me follow you out." Anna leads you to the door, you shake her hand and head out the residential area.'
+					'"That was enough to move your finger so you definitely felt something that''s for sure. Don''t be blinded by the excitement, especially in BDSM world. It''s easy to over estimate your limits, and that is dangerous when we talk about BDSM. Always, be honest with yourself. That''s enough today. Let me follow you out." Anna leads you to the door, you shake her hand and return to the hotel lobby.'
 					act 'Leave': gs 'hotel_anna_gear', 'toys_images_clear' & gt 'pav_hotel'
 				end
 			end
@@ -808,25 +808,9 @@ if $ARGS[0] = 'restraints_rope':
 	'"What can you tell me about ropes?"'
 	'"They are pretty simple, you can use them to restrain a sub or restrict movements, but there are other uses: For example they can be used to create elaborate patterns tied into a harness called "shibari" but that takes years of training.'
 	'"Also ropes can be used for suspension this is an advantage over tape as ropes are very strong, the ropes we use have soft fibres, sometimes silk so that they are comfortable. A base knowledge of knots is normally required in the beginning you can get away with any knots but if they are used in a suspension game you have to be sure the knots are strong and can be undone quickly if something goes wrong.'
-	'So <<$pcs_nickname>>, do you want to see what ropes can do on you?'
-	act'On me?':
-		*clr & cla
-		AnnaQW['switch'] += 1
-		BDSM_Knowledge += 1
-		gs 'stat'
-		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/anna2restr5.jpg"></center>'
-		'"Not necessarily you can learn both ways, I can be your guinea pig if you want to be tying the knots, but you have to follow my instructions or you can learn about knots by watching me tie them on you.'
-		'It is your choice."'
-		act'Tie them on me, I''ll learn from watching you': gt 'hotel_anna_gear', 'restraints_rope_sub'
-		act'Sounds complex but I would like to tie the knots on you': gt 'hotel_anna_gear', 'restraints_rope_dom'
-	end
-	act'OK, I guess. Show me':
-		AnnaQW['sub'] += 1
-		BDSM_Knowledge += 1
-		gt 'hotel_anna_gear', 'restraints_rope_sub'
-	end
-		
-	act'Shouldn''t it be me tying the knots?':
+	'"Ropes are a dominant choice and the best way to learn is by doing so <<$pcs_nickname>>, do you want to tie me up?'
+	
+	act'That sounds fun':
 		AnnaQW['dom'] += 1
 		BDSM_Knowledge += 1
 		gt 'hotel_anna_gear', 'restraints_rope_dom'
@@ -843,67 +827,6 @@ if $ARGS[0] = 'restraints_rope':
 	end
 end
 
-if $ARGS[0] = 'restraints_rope_sub':
-	*clr & cla
-	AnnaQW['sub'] += 1
-	BDSM_Knowledge += 1
-	gs 'arousal', 'foreplay', 5
-	gs 'stat'
-	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/restrope0.jpg"></center>'
-	'"For this you will have to strip naked"'
-	'"Sorry?"'
-	'"It is possible to tie someone up while wearing clothing but it is more complex and you won''t feel the ropes on your skin. Plus clothing can get caught and pinch, trust me you''ll enjoy it more this way."'
-	'Seems you have no choice so you strip. "This will help with understanding the mental side of rope play too, for this you are now the submissive." She starts to bind your arms and legs. Soon ropes wrap your arms and bind both of them behind your back, the ropes continue up and wrapping them above the elbow and then around your chest putting your breasts on display. Another rope binds each of your legs together "This knotting is used for pet play; in that case usually a knee pad and elbow pad are used to avoid bruising but we will be done long before that.'
-	'So how does it feel?"'
-	act'...I''m getting a cramp!...':
-		*clr & cla
-		gs 'arousal', 'end'
-		gs 'stat'
-		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/restrope1.jpg"></center>'
-		'"Hold still I''ll free you." Anna immediately unties you.'
-		'"Thank you Anna. I don''t think I could endure another minute of that"'
-		'"We''re doing this so you can learn. With practice there are some adjustments you can do while bound to avoid cramps, and a good lifestyle could help with that. A fit body can endure a forced position for much longer and some small movements can help your muscles when you stay in the same position for a prolonged time. Now, if you are willing I can show you something else ropes can be used for, I promise no cramps this time. What do you say?"'
-		gs 'hotel_anna_gear', 'restraints_rope_sub1'
-	end
-	act'It''s...strange...':
-		*clr & cla
-		gs 'arousal', 'foreplay', 5
-		gs 'arousal', 'end'
-		gs 'stat'
-		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/restrope1.jpg"></center>'
-		'"That''s the sensation of restricted movement. To avoid cramps you can try some little movements which will help if tied up for a long time, fortunately you seem to be quit good at this.'
-		'This is a basic binding, there are more complex and elaborate ones. In fact there are so many I could never teach you them all. Now, if you are willing I can show you something else ropes can be used for. What do you say?"'
-		gs 'hotel_anna_gear', 'restraints_rope_sub1'
-	end
-end
-
-if $ARGS[0] = 'restraints_rope_sub1':
-	act'...Ok...':
-		*clr & cla
-		gs 'arousal', 'foreplay', 5
-		gs 'arousal', 'end'
-		gs 'stat'
-		AnnaQW['trust'] += 1
-		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/restrope3.jpg"></center>'
-		'Anna frees you from most of the ropes and works on some knots. "Now raise your legs."'
-		'"I''m swinging!"'
-		'"Yes you are, I cannot let you try the fisting swing. As a swing." Anna shakes her head seeing your reaction, "I was hardly going to suggest a fisting, you still look nervous being naked in front of me."'
-		'"So this will give you an idea of how suspension feels, it also shows how versatile ropes are for BDSM play. Of course you still need to have a secure fixing to suspend someone from safely. This fixing point is good for 150kg so you are perfectly safe.'
-		'Right, We can continue this next time." Anna helps you down and you put your clothes back on, after a few words with Anna she sees you out. "Next time I hope to have something a little more exciting if I can get it arranged, see you then <<$pcs_nickname>>."'
-		'"Thank you Anna, goodbye."'
-		act 'Leave': gt'pav_hotel'
-	end
-	act'Thanks Anna but I think that''s enough for today...':
-		*clr & cla
-		gs 'arousal', 'end'
-		gs 'stat'
-		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/anna2restr5.jpg"></center>'
-		'"Of course dear. Restraints can be a bit overwhelming when you first try them and they are not for everyone." You put your clothes on, and after exchanging a few words with Anna she leads you to the door. "Next time I hope to have something a little more exciting if I can get it arranged, see you then <<$pcs_nickname>>."'
-		'"Thank you Anna, good bye.'
-		act 'Leave': gt'pav_hotel'
-	end
-end
-
 if $ARGS[0] = 'restraints_rope_dom':
 	*clr & cla
 	gs 'arousal', 'BDSM_give', 5
@@ -911,8 +834,8 @@ if $ARGS[0] = 'restraints_rope_dom':
 	AnnaQW['dom'] += 1
 	BDSM_Knowledge += 1
 	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/anna2restr5.jpg"></center>'
-	'"We can try that, but you have to follow my instructions to the letter"'
-	'"Sure. This is easiest if I''m naked, ropes can get caught in clothing unless you know exactly what you are doing." Anna strips down. "I''m keeping the stockings on as they make my legs look great and will not be in the way." She smiles.'
+	'"Ropes can be dangerous so you have to follow my instructions to the letter."'
+	'"This will be easiest if I''m naked, ropes can get caught in clothing unless you know exactly what you are doing." Anna strips down. "I''m keeping the stockings on as they make my legs look great and will not be in the way." She smiles.'
 	'"Ok, now pass that rope around my above my right breast and then below the left, I''ll correct any mistakes at the end." You follow Anna''s instructions until you have wrapped the rope tightly around her breasts in a figure of eight.'
 	act'Continue':
 		*clr & cla
@@ -1114,7 +1037,11 @@ if $ARGS[0] = 'restraints_cuff':
 		*clr & cla
 		gs 'stat'
 		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/cuffn.jpg"></center>'
-		'"Now, the cuffs, cuffs are one of the fastest way to lock limbs together; they also come in all sort of different materials and can provide a variety of uses. There''s also manacles there''s a difference between cuffs and manacles. Usually cuffs is intended to wrap completely wrist or ankle, while manacle doesn''t need to do that. Also manacles usually comes chained together, while cuffs have to be linked. Their use is to restrict movements of course, but they are also a great sign of submission: if otherwise told, letting Master/Mistress find His/Her sub/subs just cuffed without waiting, is a great sign of obedience less than being collared but great anyway... Say <<$pcs_nickname>>, are you willing to try cuffs a little?"'
+		'"Now, the cuffs, cuffs are one of the fastest way to lock limbs together; they also come in all sort of different materials and can provide a variety of uses. Usually cuffs need to be attached together but there are exceptions such as handcuffs."'
+		'"Handcuffs are actually a type of manacle. Manacles usually come chained together, while cuffs have to be linked."'
+		'"Their use is to restrict movement of course, but they are also a great sign of submission: if otherwise told, letting Master/Mistress find His/Her sub/subs just cuffed without waiting, is a great sign of obedience. Less than being collared and both is just, chef''s kiss..."'
+		'"Now these are all about submission training and there is no way you can understand them without being the one wearing them and submitting."'
+		'"So <<$pcs_nickname>>, are you willing to try on some cuffs?"'
 		act'Mmmm...what should I do?':
 			*clr & cla
 			gs 'arousal', 'foreplay', 5
@@ -1128,7 +1055,7 @@ if $ARGS[0] = 'restraints_cuff':
 				AnnaQW['sub'] += 1
 				BDSM_Knowledge += 1
 				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/cuff0.jpg"></center>'
-				'You what Anna orders you to. "L-like... t-this?"'
+				'You do what Anna orders you to. "L-like... t-this?"'
 				'"Exactly, now I will take care of the rest."'
 				act'Let Anna do her work...':
 					*clr & cla
@@ -1155,16 +1082,20 @@ if $ARGS[0] = 'restraints_cuff':
 						gs 'stat'
 						'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/cuff1.jpg"></center>'
 						'"Sure <<$pcs_nickname>> Just lay still and I''ll unlock the cuffs." Anna starts freeing your ankles and wrists.'
-						'"Just remember, I won''t force you to do anything you don''t want... the main things is to improve your knowledge about this, and I feel you learned something today." Anna smiles at you in a reassuring way. Once free and with your panties back on, she takes you to the front door where you say goodbye'
+						'"Just remember, I won''t force you to do anything you don''t want... the main things is to improve your knowledge about this, and I feel you learned something today." Anna smiles at you in a reassuring way."'
+						'"Once free and with your panties back on, she directs you to the door where you say goodbye'
 						act 'Leave': gt'pav_hotel'
 					end
 				end
 			end
-			act'I-is ... that...necessary?':
+			act'Is that necessary?':
 				*clr & cla
 				gs 'stat'
 				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/cuffn.jpg"></center>'
-				'"Like I told you this will help you better understand all aspects of BDSM... That way you''ll have a better knowledge of what cuffs can be used for, and when to use them."'
+				'"Like I told you the only way to understand what the cuffs symbolize is from the perspective of a submissive and in order to experience that you must be vulnerable."'
+				'"You can''t be much more vulnerable than lying on my bed with no panties one, can you?"'
+				'Her weird logic does make sense even if you suspect being used.'
+				'"You do want to understand exactly what cuffs can be used for, and when to use them?"'
 				act'O-ok....':
 					*clr & cla
 					gs 'stat'
@@ -1201,10 +1132,11 @@ if $ARGS[0] = 'restraints_cuff':
 						end
 					end
 				end
-				act'I''m sorry Anna, i cannot do that...':
+				act'I''m sorry Anna, I cannot do that':
 					cla
 					gs 'stat'
-					'"No worries." Anna smiles at you in a reassuring way. "If you don''t want to I will not force you. We''ll end it here, but I hope you''ve learned a little bit about cuffs and what they bring to BDSM. Now, I think it''t time you got home, you probably have homework to do." Anna leads you to the door and you say goodbye and leave.'
+					'"No worries." Anna smiles at you in a reassuring way. "If you don''t want to I will not force you. We''ll end it here, but I hope you''ve learnt a little bit and it does seem you are starting to understand you boundaries with power dynamics." She says with a smile.'
+					'"Now, I think it''t time you got home, you probably have homework to do." Anna leads you to the door and you say goodbye and leave.'
 					act 'Leave': gt'pav_hotel'
 				end
 			end
@@ -1213,150 +1145,60 @@ if $ARGS[0] = 'restraints_cuff':
 				gs 'stat'
 				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/cuffn.jpg"></center>'
 				'"That''s okay." Anna smiles at you in a reassuring way.'
-				'"I''m not going to push you into doing things you don''t want to, We''ll wrap this up for now, but I hope you''ve learned a thing or two about cuffs and what they can be used for. Now you should get going home, it''s getting late and I got some housework to do." Anna leads you to the front door and you say goodbye and leave.'
+				'"I''m not going to push you into doing things you don''t want to, We''ll wrap this up for now, but I hope you''ve learned a thing or two about cuffs and what they can be used for. Now you should get going home, it''s getting late and I got some housework to do." Anna leads you to the door and you say goodbye and leave.'
 				act 'Leave': gt'pav_hotel'
 			end
 		end
-		act'On you? Sure...you got ropes too...this should be fun.':
-			*clr & cla
-			gs 'stat'
-			AnnaQW['dom'] += 1
-			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/cuffd0.jpg"></center>'
-			'"I totally agree. Ropes could be really fun; but you asked for cuffs and we should focus on that today."'
-			'"Okay, we''ll just do cuffs today then."'
-			'"But I have to tell you there is not really much point in me using the cuffs, this is about you learning what cuffs can bring to BDSM and the different ways it can be used to restrict movement. Some items could require me to offer you a practical demonstration so you don''t make mistakes, or simply to let you have some practice. So... if you are willing you should lay on your belly and remove your panties."'
-			act'No way!':
-				*clr & cla
-				gs 'stat'
-				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/cuffd1.jpg"></center>'
-				'"No way, if we can''t try them on you we''re not doing it."'
-				'"Cuffs have a meaning dear, and you need to learn all aspects of this. We are not a BDSM session now, this is an learning session and has no meaning unless you are willing to try. but as i said i won''t force you if you don''t want to."'
-				'"I think it''s best if we end it here today."'
-				'"Sure, we wrap ut. Let me lead show you out." You both walk out of the bedroom and down the hallway to the front door where you say goodbye.'
-				act 'Leave': gt'pav_hotel'
-			end
-			act'Mfffh...do not try anything. Was i clear?':
-				*clr & cla
-				gs 'stat'
-				BDSM_Knowledge += 1
-				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/cuff0.jpg"></center>'
-				'"This is an instructive session and has no meaning unless you feel personally it does. You have nothing to be worried about." You do as Anna says.'
-				'"You say that, but you''re not gonna try anything right?"'
-				'"Again, instructive session dear. This is just to teach. Now, let me do the rest."'
-				act'Let Anna do her work...':
-					*clr & cla
-					gs 'stat'
-					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/cuff1.jpg"></center>'
-					'"As you can see, cuffs can be used to made subs assume revealing positions. There''s a lot to talk about when it comes to exposure, but we don''t have that much time. Anyway this will help you have a basic idea... So <<$pcs_nickname>>... how is it?"'
-					act'It''s not a big deal...':
-						*clr & cla
-						gs 'stat'
-						AnnaQW['trust'] += 1
-						'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/cuff1.jpg"></center>'
-						'"I thought it would be worse"'
-						'"Now that you''ve got a better understanding. Remember, what you learn from our sessions is entirely up to you. We are doing this to improve your knowledge, and we''ve learned a lot today I''d say so we''ll end it here."'
-						'You nod. "Okay" Anna smiles at you as she removes your cuffs; once free and with your panties back on, you chat a little bit about school before you say goodbye and leave.'
-						act 'Leave': gt'pav_hotel'
-					end
-					act'Can you free me now?':
-						*clr & cla
-						gs 'stat'
-						'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/cuff1.jpg"></center>'
-						'"Sure <<$pcs_nickname>>... just give me a moment." Anna starts freeing your ankles and wrists.'
-						'"Just remember <<$pcs_nickname>> I won''t force you to do anything you don''t want to... the main things is for you to learn, and it seems you''ve learned enough today."'
-						'"Just get me out of this please." Anna smiles as she removes your cuffs. Once your arms and legs are free you hurriedly get dressed, you chat a little with Anna before she she walks you to the front door and say goodbye and walk out to the residential area.'
-						act 'Leave': gt'pav_hotel'
-					end
-				end
-			end
-		end
-		act'On me?':
+		act'I''m sorry Anna, I can''t...':
 			*clr & cla
 			gs 'stat'
 			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/cuffn.jpg"></center>'
-			'"Well, yes. This is a learning session after all, I''ll help you to put cuffs on of course; but there''s not much sense in me trying the cuffs on so you can just look. This is intended to show what cuffs can offer you in terms of restriction and their in putting the body on display. Other items would require me to offer you a practical demonstration so we avoid mistakes, or simply to let you have some practice. Now...if you are willing to try you should lay on your belly and remove your panties."'
-			act'Ok....':
-				*clr & cla
-				gs 'stat'
-				BDSM_Knowledge += 1
-				AnnaQW['switch'] += 1
-				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/cuff0.jpg"></center>'
-				'You follow Anna''s order. "I-is this correct?"'
-				'"Yes it is, now lay still and I will take care of the rest."'
-				act'Let Anna do her work...':
-					*clr & cla
-					gs 'stat'
-					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/cuff1.jpg"></center>'
-					'Anna puts a couple of cuffs on your wrists and ankles, then she links them together with a x cross strap. "I... so exposed." You blush at the thought of Anna seeing you like this.'
-					'"Cuffs can be used to made subs assume revealing positions as you can see. I could go on about different uses but we don''t have all the time in the world. But this should help you have a basic idea so... Impressions?... Feelings?... Sensations?... Tell me <<$pcs_nickname>>... how is it?"'
-					act'I-i...':
-						*clr & cla
-						gs 'stat'
-						if Anna_see_asub >= 10:
-							AnnaQW['trust'] += 1
-						end
-						'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/cuff2.jpg"></center>'
-						'"I-i..."'
-						'"No words... I suspect you really felt something. But I don''t think we should puss this much further... the main thing today is to improve your basic knowledge, and we''ve done that today. Now... let me loosen the cuffs." You nod. Anna smiles at you while freeing you; once freed and with your panties on, you chat a little bit about school before you leave.'
-						act 'Leave': gt'pav_hotel'
-					end
-					act'C-can you free me now?':
-						*clr & cla
-						gs 'stat'
-						if Anna_see_asub >= 10:
-							Anna_see_asub -= 1
-						end
-						'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/cuff1.jpg"></center>'
-						'"Sure <<$pcs_nickname>>... just let me get undo the straps." Anna start freeing your ankles and wrists.'
-						'"I want you to remember that I won''t make you do anything you don''t want to... the main things is that you learn, and I think you''ve learned enough for today." She smiles and removes the cuffs... Once freed and with your panties on, chat a little thanking her for teaching you before you leave.'
-						act 'Leave': gt'pav_hotel'
-					end
-				end
-			end
-			act'I''m sorry Anna, I can''t...':
-				*clr & cla
-				gs 'stat'
-				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/cuffn.jpg"></center>'
-				'"No worries." Anna smiles at you in a reassuring way.'
-				'"Let me just get these cuffs off you. Ok, then I think we''re done for today; I hope you''ve learned a little bit more about BDSM. Let me walk you out" Anna leads you to the front and you walk out to the residential area.'
-				act 'Leave': gt'pav_hotel'
-			end
+			'"No worries." Anna smiles at you in a reassuring way. Submission isn''t for everyone."'
+			'"Ok, then I think we''re done for today; I hope you''ve learned a little bit more about BDSM. Let me walk you out" Anna leads you to the door and you return to the hotel lobby.'
+			act 'Leave': gt'pav_hotel'
 		end
 	end
 	act'Leave':
 		*clr & cla
 		gs 'stat'
 		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/annaintro1.jpg"></center>'
-		'"Alright. If you don''t want to I can understand that and I won''t force you. Just think about some of the things you''ve seen here today okay? Now, let me show you out." Anna leads you to the front door and you leave.'
+		'"Alright. If you don''t want to I can understand that and I won''t force you. Just think about some of the things you''ve seen here today okay? Now, let me show you out." Anna leads you to the door and you return to the hotel lobby.'
 		act 'Leave': gt'pav_hotel'
 	end
 end
-		
+
 if $ARGS[0] = 'restraints_leash':
 	*clr & cla
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/anna2restr5.jpg"></center>'
 	'"What about this. What can you tell me about the collar and leash?"'
-	'"Good choice dear, a collar and leash is a classic... That one is a simple leather set, there''s not much to say though they are quite self explanatory. I brought them to explain you something else. Getting collared is a meaningful ritual within the BDSM community: to be collared means that the slave is owned by the Master/Mistress; it''s one of the highest signs of obedience for the slave. Leash is intended to be the hand that grip slave''s life, and a tool to guide them. So <<$pcs_nickname>>... are you willing to try the collar and the leash? If so just strip this will allow me to explain its purpose better."'
-	act'The...i-i...o-ok...':
+	'"The choice of a submissive, a collar and leash is a classic... That one is a simple leather set, there''s not much to say though they are quite self explanatory."'
+	'"I brought them to explain to you something else. Getting collared is a meaningful ritual within the BDSM community: to be collared means that the slave is owned by the Master/Mistress; it''s one of the highest signs of obedience for the slave."'
+	'"The leash is intended to be the hand that grips slave''s life, and a tool to guide them."'
+	'"So <<$pcs_nickname>>... are you willing to try the collar and the leash? If so just strip this will allow me to explain its purpose better."'
+	act 'OK':
 		*clr & cla
 		gs 'stat'
 		AnnaQW['sub'] += 1
 		BDSM_Knowledge += 1
 		'<center><video autoplay loop src="images/characters/pavlovsk/resident/Anna/sessionhotel/collnomean.mp4"></video></center>'
-		'You strip down; Anna puts the collar on you and closes it around your neck, she then links the leash to the collar. "You know some collars can be worn as a jewelry you know. You look wonderful dear. I don''t mean anything by it of course... Ok <<$pcs_nickname>>... let''s go for a walk, are you willing to try that? Few steps in the room, nothing serious... Then you can show me if you are able to understand what the meaning of submission is."'
-		act'Show':
+		'You strip down; Anna puts the collar on you and closes it around your neck, she has you kneel down so she can attach the leash. "Some collars can be worn as a jewellery you know. You look wonderful dear."'
+		'"Ok <<$pcs_nickname>>... let''s go for a walk? Just a few steps around the room, nothing serious. First, can you show me what it is to be submissive?"'
+		act 'Show her':
 			*clr & cla
 			gs 'stat'
 			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/leashow.jpg"></center>'
-			'You show Anna what it means to be a good puppy... You stand naked in front of her holding the leash shake with your mouth. Anna seems to be pleased, but she seems to not be really interested in your willing performance. "That''s a good way to show obedience. Just remember there is no right or wrong today, this just to for you to get a feeling of the collar and the leash." Looks at you kindly. "Shall we go?" You nod.'
-			act'Follow Anna''s lead...':
+			'You show Anna what it means to be a good puppy... You stand naked in front of her holding the leash in your mouth. Anna seems to be pleased, but she seems to not be really interested in your willing performance."'
+			'"That''s a good way to show obedience. Just remember there is no right or wrong today, this just to for you to get a feeling of the collar and the leash." She looks at you kindly. "Shall we go?"'
+			'You nod.'
+			act 'Follow Anna''s lead...':
 				*clr & cla
 				gs 'stat'
 				AnnaQW['trust'] += 1
 				'<center><video autoplay loop src="images/characters/pavlovsk/resident/Anna/sessionhotel/leash.mp4"></video></center>'
-				'Anna lets you walk in the room a little; understanding the meaning of being exposed "How is it going so far <<$pcs_nickname>>?"'
-				act'...Fine...i think...':
+				'Anna walks you around the room a little, you feel exposed and a little humiliated."'
+				'"How is it going so far <<$pcs_nickname>>?"'
+				act '"Fine, I think"':
 					*clr & cla
 					gs 'stat'
 					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/leashnakfine.jpg"></center>'
@@ -1364,32 +1206,43 @@ if $ARGS[0] = 'restraints_leash':
 					'"Thank you Anna." You get dressed and chat a little about collars before saying goodbye and leaving.'
 					act 'Leave': gt'pav_hotel'
 				end
-				act'S-stop...':
+				act '"Please stop"':
 					*clr & cla
 					gs 'stat'
 					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/leashnakstop.jpg"></center>'
-					'You loose all interest in completing the walk. "Uh? Oh... ok." The walk ends. Anna immediately stops as soon as she sees you no longer want to continue. she dosen''t tighten her grip, the only tightness you feel is from the sudden stop. "I assume it was too much for you. I think we should end it here, you should get dressed <<$pcs_nickname>>."'
-					'"Y-yes..." You weren''t able to complete your sentence feeling too much shame from the walk. As soon as you put clothes back on you exchange few words with Anna. She reassures you about the session and your feelings, telling again that there''s no reason to worry as it''s only a learning session. You finally finish the chat and leave for today.'
+					'You lose all interest in completing the walk. "Uh? Oh... ok." The walk ends. Anna immediately stops as soon as she sees you no longer want to continue. She dosen''t tighten her grip but you feel the sudden stop through the collar.'
+					'"I think we should end it here, you should get dressed <<$pcs_nickname>>."'
+					'"Y-yes..."'
+					'You can''t even complete your sentence as the shame pushes down on you. You quickly put your clothes back and exchange few words with Anna.'
+					'She reassures you about the session and your feelings, telling you again that there''s no reason to worry and it''s only a learning session.'
+					'You finally finish the chat and leave for today.'
 					act 'Leave': gt'pav_hotel'
 				end
-				act'...':
+				act 'Too turned on to speak':
 					*clr & cla
 					gs 'stat'
 					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/leashnakwet.jpg"></center>'
 					'No answer comes from you. "Uh?..." Anna immediately stops moving worried by the lack of answer. "Is there a problem <<$pcs_nickname>>?"'
-					'"Y-yes..."'
-					'"What''s wrong?" You are too ashamed to lift your head: you are soaking wet.'
-					'"M-my... my pussy." Anna immediately realizes what you are talking about.'
-					'"Oh... I see." As if this is totally normal Anna reassures you. "Don''t worry... this can be a highly arousing situation: no matter what end of the leash you''re on. It''s totally natural, but I think we''ll end it there, you''ve learned enough for today. Let me go get your clothes." You put your clothes back on while trying to focus on something else. She reassures you about the session and your feelings. after a brief chat and given yourself time to calm down you say goodbye and leave the apartment.'
+					'"Y-yes."'
+					'"What''s wrong?"'
+					'You are too ashamed to lift your head: you are soaking wet.'
+					'"M-my, my pussy." is all you can manage.'
+					'Anna immediately realizes what you are talking about. "Oh... interesting." Anna says as if its completely normal.'
+					'"Don''t worry. This can be a highly arousing situation regardless of which end of the leash you''re on. It''s totally natural, but I think we''ll end it there, you''ve learned enough for today."'
+					'You put your clothes back on while trying to focus on something else. She reassures you about the session and your feelings. after a brief chat and time to calm down you say goodbye and leave the apartment.'
 					act 'Leave': gt'pav_hotel'
 				end
 			end
 		end
-		act'Don''t show':
+		act'Defy her':
 			*clr & cla
 			gs 'stat'
 			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/leashowno.jpg"></center>'
-			'You stand naked in front of Anna: your body telling you that you shouldn''t do this. Looking into your eyes Anna sees you won''t show her submission she takes the leash and gives to you. "As I told you, I have no ulterior motive... but i can understand your reaction, and i won''t force you. And as I was saying, the collar is a great sign of obedience, and leash is used to guide the slave... When used together it becomes an activity known as pet play. Now... if you want, we can go for a walk: few steps in the room on all fours; nothing serious."'
+			'You are naked and kneeling in front of Anna and will not be more submissive, so you stand up and loo her in eye to show your dominance.'
+			'Anna smiles, "You are starting to understand power dynamics and what you want, very good."'
+			'"As I told you, I have no ulterior motive, but I can understand your reaction, and won''t force you to do anything you do not want."'
+			'"As I was saying, the collar is a great sign of obedience, and leash is used to guide the slave. When used together it becomes an activity known as pet play."'
+			'"Now, if you want to go for a walk just around the room we can do that, nothing serious."'
 			act'Follow Anna''s lead...':
 				*clr & cla
 				gs 'stat'
@@ -1419,7 +1272,10 @@ if $ARGS[0] = 'restraints_leash':
 				*clr & cla
 				gs 'stat'
 				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/leashownoend.jpg"></center>'
-				'You shake your head. "Well <<$pcs_nickname>>... in that case we should end it for today. Hopefully I''ve given you some things to think about... and we''ve made some steps forward." She unclips the leash from your collar. "Move your hair so I can get the collar off." Anna removes the collar and gives you back your clothes. Once your clothes are back on you chat a little with Anna; she reassures you that there is no hidden motive. after a little while you say your thanks and head out of the apartment towards the residential area.'
+				'You shake your head. "Well <<$pcs_nickname>>, in that case we should end it for today. Hopefully I''ve given you some things to think about and we''ve made some steps forward." She unclips the leash from your collar.'
+				'"Move your hair so I can get the collar off." Anna removes the collar and you get dressed.'
+				'You chat a little with Anna and she reassures you that learning about BSDM practices can sometimes mean being submissive or Dominant even if that is not in your nature.'
+				'After your chat you say your thanks and head out to the hotel lobby.'
 				act 'Leave': gt'pav_hotel'
 			end
 		end
@@ -1430,161 +1286,22 @@ if $ARGS[0] = 'restraints_leash':
 				AnnaQW['switch'] += 1
 			end
 			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/leashownoend.jpg"></center>'
-			'"I-i... can''t I''m sorry Anna."'
-			'"Well <<$pcs_nickname>>... in that case we''ll call it a day. The main thing is that you learn... and we''ve made progress." She removes the least from your collar. "Move your hair out of the way so it dosen''t get stuck." Anna removes collar gives you your dress. As soon you''re dressed you talk a bit with Anna; she reassures you about the session saying there''s no underlying meaning and that the session is purely instructional. You feel she has no intention to make you do anything you don''t want to. Once your little chat is over Anna follows you to the front door where you say goodbye and head to the residential area.'
+			'"I can''t I''m sorry Anna."'
+			'"Well <<$pcs_nickname>>... in that case we''ll call it a day. The main thing is that you learn... and we''ve made progress." She removes the leash from your collar.'
+			'"Move your hair so I can get the collar off." Anna removes the collar and you get dressed.'
+			'You chat a little with Anna and she reassures you that learning about BSDM practices can sometimes mean being submissive or Dominant even if that is not in your nature.'
+			'After your chat you say your thanks and head out to the hotel lobby.'
 			act 'Leave': gt'pav_hotel'
 		end
 	end
-	act'If there''s no real meaning...why don''t you let me put the collar on you?':
+	act'Why don''t you let me put the collar on you?':
 		*clr & cla
 		gs 'stat'
 		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/anna2restr5.jpg"></center>'
-		'"Well considering it''s practice... we can do that; I hope you won''t find any problems doing this though so I''ll ask you again: are you sure you won''t try the collar? Do you prefer for me to give a practical demonstration? Generally it''s more instructive if you are the one wear the collar."'
-		act'I''m sure':
-			*clr & cla
-			gs 'stat'
-			AnnaQW['dom'] += 1
-			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/anna2restr5.jpg"></center>'
-			'"I''m sure."'
-			'"It''s better than nothing but you won''t learn as much: wait here, i''ll be back." Anna leaves you alone.'
-			act'Wait':
-				*clr & cla
-				gs 'stat'
-				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/leasha0.jpg"></center>'
-				'"I know it''s not polite to leave guests alone... but my bells was in the other room." Anna comes back after about a minute; she''s now naked kneeling in front of you collared with a leash and a couple of bells on her nipples; she hold her hands behind her head as waiting for something you can''t help but stare at her. "Are we going for a walk?"'
-				act'Take the leash and walk in the room for a little':
-					*clr & cla
-					gs 'stat'
-					'<center><video autoplay loop src="images/characters/pavlovsk/resident/Anna/sessionhotel/leash.mp4"></video></center>'
-					'"So <<$pcs_nickname>>, how does it feel to be walking your slave around naked, it''s exhilarating isn''t it?"'
-					'"I''ve never heard of a puppy talking."'
-					'"Right..." You walk Anna for a little. "That''s it we should stop for now."'
-					act 'Leave': gt'pav_hotel'
-				end
-			end
-		end
-		act'Uffh!...ok...you win. Just don''t make a fool out of me.':
-			*clr & cla
-			gs 'stat'
-			BDSM_Knowledge += 1
-			'<center><video autoplay loop src="images/characters/pavlovsk/resident/Anna/sessionhotel/collnomean.mp4"></video></center>'
-			'You strip down; Anna puts the collar on you and closes it around your neck, she then hooks the leash to the collar. "You know... some collars can be worn as a jewelry. I must say, you look beautiful dear. I don''t mean anything by it of course... Ok <<$pcs_nickname>>... let''s go for a walk, are you willing to try a few steps in the room? Nothing serious... Then you can show me if you are able to understand what the meaning of submission is."'
-			act'???':
-				*clr & cla
-				gs 'stat'
-				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/leashdask.jpg"></center>'
-				'"What do you mean?"'
-				'"For example to hold the leash with your mouth, sit on yor knees like a dog sitting on their back legs. Just remember there''s no hidden meaning here <<$pcs_nickname>>. If you don''t want to I will respect that; but also means that i will not correct any behavior one way or another. You are free to do as you please."'
-				'"Exactly, and I won''t do those kind of things"'
-				'"As you wish... Shall we go?"'
-				act'Follow Anna''s lead...':
-					*clr & cla
-					gs 'stat'
-					AnnaQW['trust'] += 1
-					'<center><video autoplay loop src="images/characters/pavlovsk/resident/Anna/sessionhotel/leash.mp4"></video></center>'
-					'Anna lets you walk in the room for a few steps; you begin to understand what it''s like being in such a submissive situation. "You''re doing great, how are you feeling <<$pcs_nickname>>?"'
-					act'I''ve felt worse...':
-						*clr & cla
-						gs 'stat'
-						if Anna_see_adom =< 10:
-							AnnaQW['switch'] += 1
-						end
-						'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/leashdfine.jpg"></center>'
-						'"Happy to hear it''s not a big deal for you. I think that''s enough for today." The walkie ends. "Even doing a simple practice session with no meaning could be hard we won''t go much furher, I hope <<$pcs_nickname>> I hope this little session has been informative for you; hopefully you got some better idea about the collar and the leash."'
-						'"Just... don''t try anything okay?"'
-						'"Of course not, this is your show, eventually you will decide for yourself what the sessions mean. Well, now that we''re done you can change back into your regular clothes and I''ll see you next time." You get dressed and say goodbye to Anna before you leave.'
-						act 'Leave': gt'pav_hotel'
-					end
-					act'Stop!':
-						*clr & cla
-						gs 'stat'
-						'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/leashdstop.jpg"></center>'
-						'The collar presses against you skin as you freeze. "Uh?" Anna immediately lets go letting the leash fall on the floor.'
-						'"I guess it became too much for you... Alright; you can put back your clothes <<$pcs_nickname>> we''re done for today."'
-						'"This was a big mistake."'
-						'"If you think so...then that''s what it was. It seems to have been very instructive though and we learn when we make mistakes." You weren''t able to reply, ashamed by the session; you only want this to end. Anna reassures you about the session and your feelings, saying you did nothing wrong and that it''s okay. Once you''ve gotten dressed again you say goodbye to Anna, hurrying towards the door to leave.'
-						act 'Leave': gt'pav_hotel'
-					end
-					act'Meh...':
-						*clr & cla
-						gs 'stat'
-						Anna_see_abrat += 1
-						'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/leashmeh.jpg"></center>'
-						'"Is this supposed to teach me something?"'
-						'"It should... you''re not feeling like you''re learning anything?"'
-						'"No, not really"'
-						'"Well, there are two sides to to this so perhaps you lean more towards the dominant part of this, and you''re not really in a dominant position now are you"'
-						'"Are you mocking me?"'
-						'"Don''t be silly <<$pcs_nickname>>... you decide for yourself what you want to do, and you wanted to try this. Now we know you don''t really feel anything about this so we''ve learned something. Since that''s done I think we''ll call it for today."'
-						'"Baf!" Once you''ve gotten your clothes back on you thank Anna for today and leave the apartment.'
-						act 'Leave': gt'pav_hotel'
-					end
-				end
-			end
-			act'Hey!':
-				*clr & cla
-				gs 'stat'
-				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/leashdaskno.jpg"></center>'
-				'Despite standing naked in front of Anna, you refuse to submit. Unexpectedly Anna gives you the leash. "Like I told you, I''m not trying to force you... I get you reaction I really do and can be frightening giving up control like that. Now as i was saying, collar is a great sign of showing obedience. And along with leash they can be used for pet play. Now... if you want of course, we can go for a walk: few steps in the room on all fours; nothing serious."'
-				act'Follow Anna''s lead...':
-					*clr & cla
-					gs 'stat'
-					AnnaQW['trust'] += 1
-					'<center><video autoplay loop src="images/characters/pavlovsk/resident/Anna/sessionhotel/leash.mp4"></video></center>'
-					'Anna lets you walk in the room a few steps so you can get a better understanding of the submissive side. "So, how are things going down there <<$pcs_nickname>>?"'
-					act'I''ve felt worse...':
-						*clr & cla
-						gs 'stat'
-						if Anna_see_adom =< 10:
-							AnnaQW['switch'] += 1
-						end
-						'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/leashdfine.jpg"></center>'
-						'"Glad to hear it''s not too big a problem... anyway, we should stop for now." The walk ends. "Well <<$pcs_nickname>> I assume it was an instructive session; you should have a better idea about collar, leash, submission and petplay."'
-						'"Just... don''t get any ideas okay?"'
-						'"Don''t worry I won''t. let''s wrap it up and let me get you clothes, we''ll continue next time." You get dressed and chat a bit with Anna before saying goodbye'
-						act 'Leave': gt'pav_hotel'
-					end
-					act'Stop!':
-						*clr & cla
-						gs 'stat'
-						'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/leashdstop.jpg"></center>'
-						'The collar presses against your neck as soon as you stop. "Uh?" Anna drops the leash, letting it fall.'
-						'"It can be too much in the beginning... Let''s get your clothes back on we''re done for today."'
-						'"I shouldn''t have done this."'
-						'"It''s not all bad you know, we have made progress and you''ve learned a bit today. Nothing to be ashamed of." You can''t bring yourself to answer, wanting only to go home. Anna tells you that there is nothing to worry about. Once you''ve gotten dressed you say goodbye and hurry out the door.'
-						act 'Leave': gt'pav_hotel'
-					end
-					act'I don''t know':
-						*clr & cla
-						gs 'stat'
-						Anna_see_abrat += 1
-						'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/leashmeh.jpg"></center>'
-						'"Am I supposed to learn something here?"'
-						'"I don''t know, are you?"'
-						'"Not really"'
-						'"Well, maybe we''ll try something else next time, you might be more dominant something you really aren''t right now."'
-						'"Are you mocking me?"'
-						'"Just saying my dear <<$pcs_nickname>>.. .We went down this road hoping to learn, and we''ve learned this isn''t exactly for you so we''ll stop there for today, let''s get that collar off and you can put your clothes back on." Once you''ve gotten your clothes back on you thank Anna for tonight and say goodbye.'
-						act 'Leave': gt'pav_hotel'
-					end
-				end
-				act'This was a mistake. it''s too much.':
-					*clr & cla
-					gs 'stat'
-					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/leashownoend.jpg"></center>'
-					'You shake your head unable to speak. "No worries <<$pcs_nickname>>... We''ll stop for today. Hopefully you''ve learned a little today." She unhooks the leash from your collar, then removes the collar and gives you your clothes. As soon as you''ve put back your back on you chat a little Anna; she reassures you about the session and your feelings, telling again that there''s no underlying meaning. Once you''re done talking you say goodbye and leave.'
-				end
-			end
-			act'Change your mind':
-				*clr & cla
-				gs 'stat'
-				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/leashownoend.jpg"></center>'
-				'"I think I''ll have to pass"'
-				'"That''s okay <<$pcs_nickname>> we can continue next time. I hope you''ve learned a little bit though." Anna removes the collar and leash and gives you your clothes, once you''ve gotten dressed you chat a little bit about school and life at home before you leave.'
-				act 'Leave': gt'pav_hotel'
-			end
-		end
-		act'Ok I''ll do it. But I''m not putting on a show...':
+		'"That will not teach you what the collar means. It would maybe help me understand it more but honesty I''ve worn so many of them I don''t think it will."'
+		'"This is about your education of BDSM and if you want to understand the collar and leash I must insist that you wear them."'
+		'"You will not be a submissive just for experimenting, so will you wear them?"'
+		act'Ok I''ll do it. But I''m not putting on a show':
 			*clr & cla
 			gs 'stat'
 			BDSM_Knowledge += 1
@@ -1673,7 +1390,7 @@ if $ARGS[0] = 'restraints_leash':
 						'"I don''t feel like I''m learning anything"'
 						'"Nothing? Are you sure?"'
 						'"Yeah, I''m not really feeling it"'
-						'"Well, that really depends on perspective dosen''t it, we have learned today that this dosen''t really do anything for you. you can always find some way to learn for everything you do. But we''ll end it here so this dosen''t turn into a school lecture, let me get that collar off so you can get dressed". After getting dressed you thank Anna for her time today and walk out of the apartment.'
+						'"Well, that really depends on perspective dosen''t it, we have learned today that this dosen''t really do anything for you. you can always find some way to learn for everything you do. But we''ll end it here so this doesn''t turn into a school lecture, let me get that collar off so you can get dressed". After getting dressed you thank Anna for her time today and walk out of the apartment.'
 						act 'Leave': gt'pav_hotel'
 					end
 				end
@@ -1694,147 +1411,35 @@ if $ARGS[0] = 'restraints_leash':
 				act 'Leave': gt'pav_hotel'
 			end
 		end
-	end
-	act'On me?':
-		*clr & cla
-		gs 'stat'
-		AnnaQW['switch'] += 1
-		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/anna2restr5.jpg"></center>'
-		'"Well... it''s better for you to try on the gear yourself first so you''ll get a general idea of what each participant is feeling. that way you''ll know what to do and what not to do. Since we are doing a learning session now you can choose to wear the collar or I can wear it either way I think you''ll learn something. So, what do you want to do?."'
-		
-		act'I''ll try it on':
-			*clr & cla
-			gs 'stat'
-			BDSM_Knowledge += 1
-			'<center><video autoplay loop src="images/characters/pavlovsk/resident/Anna/sessionhotel/collnomean.mp4"></video></center>'
-			'You strip down; Anna helps close the collar around your neck, then she links the leash on the collar. "You look beautiful my dear. Now, <<$pcs_nickname>>... let''s go for a little walk, think you can do that? just a few steps in the room, nothing serious. Maybe you can show me how a submissive should act in this situation."'
-			act'Show':
-				*clr & cla
-				gs 'stat'
-				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/leashow.jpg"></center>'
-				'You show Anna what means to be a good puppy. You stand naked in front of her holding the leash in your mouth. Anna seems to be pleased at your perfomance. "That''s a great way to show obedience <<$pcs_nickname>>. Just remember this is a practice session, we''re just here to teach you the basics. but this is a good start, really shows that you understand the submissive part." Anna smiles at you. "Shall we go?" You nod.'
-				act'Follow Anna''s lead...':
-					*clr & cla
-					gs 'stat'
-					Anna_trust += 1
-					'<center><video autoplay loop src="images/characters/pavlovsk/resident/Anna/sessionhotel/leash.mp4"></video></center>'
-					'Anna lets you walk in the room for a few steps; you understand a bit better what it means to be submissive to a superior. "How''s it going <<$pcs_nickname>>?" '
-					act'It''s...fine...':
-						*clr & cla
-						gs 'stat'
-						'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/leashnakfine.jpg"></center>'
-						'"I''m happy to hear you feel it''s going well but, I think it''s best if we stop for today.</font> The walk ends<font color = blue>"This was a good start, seems like you learned a lot today which is good. Now, let me get that collar off so you can get dressed"</font><br><font color = #DC143C>"Thank you Anna"</font> You get dressed  and thank Anna for her time, she smiles and leads you to the front door.'
-						act 'Leave': gt'pav_hotel'
-					end
-					act'I...don''t like it...':
-						*clr & cla
-						gs 'stat'
-						'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/leashnakbad.jpg"></center>'
-						'You sit on the floor not moving. Anna immediately lets go of her grip on the leash. "I assume it was too much for you <<$pcs_nickname>>, that''s okay, it happens. Let''s get that collar off and get your clothes we''re done for today."'
-						'"I''m sorry Anna, but I don''t think this is for me."'
-						'"I understand <<$pcs_nickname>>, it can be hard sometimes doing this." Anna watches as you get dressed telling you that you shouldn''t feel any shame over what happened. Once you''re fully dressed you thank her and you walk out of her apartment.'
-						act 'Leave': gt'pav_hotel'
-					end
-					act'...':
-						*clr & cla
-						gs 'stat'
-						'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/leashnakwet.jpg"></center>'
-						'You don''t anwser.  Anna looks at you worringly. "Is everything okay <<$pcs_nickname>>?"'
-						'"N-no..."'
-						'"What''s wrong <<$pcs_nickname>> is there a problem with the collar or something?" You just stare at the floor unable to answer: you are soaking wet.'
-						'"M-my... my pussy." You force out. Anna immediately realizes what you are talking about.'
-						'"Oh... I got scared for a moment there." As if this is totally normal Anna reassures you. "Don''t worry... for some this is a highly arousing situation: it doesn''t matter the role. It''s totally natural, but I think it''s better for you to go home now so you can focus on something else, you''ve learned enough for today." Anna removes your collar and you get dressed. After a brief conversation you thank her for understanding and you hurry out the door'
-						act 'Leave': gt'pav_hotel'
-					end
-				end
-			end
-			act'Don''t show':
-				*clr & cla
-				gs 'stat'
-				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/leashowno.jpg"></center>'
-				'You stand naked in front of Anna But you feel like you can''t show her submission. Anna looks into your eyes and sees that you are not going show any submission. Suddenly Anna gives you the leash. "I told you, I''m not going to force you and showing submission takes a lot of courage so your reaction is natural. Today we''re trying to teach you what the submissive feels, nothing else. So, if you want to, we can take a few steps around the room nothing serious so you can get the general idea."'
-				act'Follow Anna''s lead...':
-					*clr & cla
-					gs 'stat'
-					Anna_trust += 1
-					'<center><video autoplay loop src="images/characters/pavlovsk/resident/Anna/sessionhotel/leash.mp4"></video></center>'
-					'Anna lets you walk around for a few steps; you begin to understand the general idea of being subservient to a master. "Everything good so far <<$pcs_nickname>>?"'
-					act'It''s...fine...':
-						*clr & cla
-						gs 'stat'
-						'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/leashnakfine.jpg"></center>'
-						'"Glad to hear it''s not too bad, but let''s stop for today.</font> The walk ends...<font color = blue>"Now, remember this is a learning session, this dosen''t mean anything between us. you choose what to take from this, but I hope you''ve learned a little bit about what it''s like for the submissive to be led by their master or mistress. Anyways, let''s get that collar off so you can get dressed"</font> After getting redressed you talk a little with Anna about the role of being the submissive before you say goodbye and leave.'
-						act 'Leave': gt'pav_hotel'
-					end
-					act'I...don''t like this...':
-						*clr & cla
-						gs 'stat'
-						'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/leashnakbad.jpg"></center>'
-						'You sit on the floor unmoving. "Uh?" Anna drops the leash.'
-						'"I''m guessing this isn''t what you''re looking for then. Maybe it''s best we stop for today <<$pcs_nickname>> what do you say?"'
-						'"I''m sorry Anna, but I dont''t think this is for me."'
-						'"That''s okay, we''re making progress either way" Anna reassures you about the session saying maybe we should try something different next time. Once you''ve gotten the collar off and gotten dressed, you thank Anna for her time and leave.'
-						act 'Leave': gt'pav_hotel'
-					end
-				end
-				act'Don''t...':
-					*clr & cla
-					gs 'stat'
-					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/leashownoend.jpg"></center>'
-					'You shake your head unable to speak. "Okay <<$pcs_nickname>>. you''ve learned a little today but we''re stopping for today." Anna unhooks the leash and removes your collar. As soon as you''ve gotten dressed you exchange few words with Anna; she talks session and your feelings, saying that what you felt is perfectly natural. When you are done chatting Anna thanks you for stopping by today and leads you out.'
-					act 'Leave': gt'pav_hotel'
-				end
-			end
-			act'Change your mind':
-				*clr & cla
-				gs 'stat'
-				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/leashownoend.jpg"></center>'
-				'"I-i... can''t I''m sorry Anna i have to go."'
-				'"Okay <<$pcs_nickname>>...let''s wrap up for today. Hopefully we''ve made some steps forward today." Anna moves removes the leash and the collar, and gives you your clothes. As soon as you''ve gotten dressed you chat a little bit with Anna, she reminds you that you control the situation and can decide when to stop. When you''re done chatting you thank her and say goodbye before leaving out towards the residential area.'
-				act 'Leave': gt'pav_hotel'
-			end
-		end
-		act'I want you to try the collar':
+		act'No':
 			*clr & cla
 			gs 'stat'
-			BDSM_Knowledge += 1
+			AnnaQW['dom'] += 1
 			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/anna2restr5.jpg"></center>'
-			'"Sure <<$pcs_nickname>>, I''ll be right back." Anna leaves you alone.'
-			act'Turn':
+			'"Fine it''s better than nothing but you won''t really understand the meaning. Wait here, i''ll be back." Anna leaves you alone.'
+			act'Wait':
 				*clr & cla
+				gs 'arousal', 'BDSM_give', 5
 				gs 'stat'
 				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/leasha0.jpg"></center>'
-				'After about a minute Anna returns. "Hope you don''t mind, I''ve got no problems changing in front of you... but my bells was in my room."'
-				'"Okay?" Anna is now naked kneeling in front of you collared with a leash and a couple of bells pending from her nipples; she holds her hands behind her head.'
-				'"Ready to take me for a walk?"'
-				act'Take the leash and walk a little with Anna':
+				'"I know it''s not polite to leave guests alone... but my bells was in the other room." Anna comes back after about a minute.'
+				'She''s now naked and kneeling in front of you collared with a leash and a couple of bells on her nipples. She hold her hands behind her head as if waiting for something you can''t help but stare at her. "Are we going for a walk?"'
+				act'Take the leash and walk in the room for a little':
 					*clr & cla
+					gs 'arousal', 'BDSM_give', 5
+					gs 'arousal', 'end'
 					gs 'stat'
 					'<center><video autoplay loop src="images/characters/pavlovsk/resident/Anna/sessionhotel/leash.mp4"></video></center>'
-					'"Not so difficult is it? Just remember to keep a firm grip and have a firm tone so the submissive knows who''s in charge. not just to the submissive mind you but also if there are anyone else around." You continue walk Anna for a little. "That''s it we should stop now."'
-					act 'Leave': gt'pav_hotel'
+					'"So <<$pcs_nickname>>, how does it feel to be walking your slave around naked, it''s exhilarating isn''t it?"'
+					'"I''ve never heard of a puppy talking."'
+					'Anna does not reply but crawls around where you lead her enthusiastically.'
+					'After a few minutes and with you not really sure what you are doing you stop and tell Anna you are done.'
+					'She kneels in front of you and talks as if there is nothing different than during any of your other conversations explaining how petplay works and how it can be used to reenforce other aspects of D/s.'
+					'Once your chat is over you hand her back the leash handle, which she had told you was the correct way to end such a session.'
+					act 'Return to hotel lobby': gt'pav_hotel'
 				end
 			end
 		end
-		
-		act'I think i''ll pass this time.':
-			*clr & cla
-			gs 'stat'
-			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/annaintro1.jpg"></center>'
-			'"Well <<$pcs_nickname>>... in that case we''re done for today. Hopefully you''ve gotten some things to think about tonight."'
-			'"I''m sorry."'
-			'"That''s okay <<$pcs_nickname>> we''ll continue another day, let me show you out." You both chat a little as you walk to the door, when you reach the door you say goodbye and leave.'
-			act 'Leave': gt'pav_hotel'
-		end
-	end
-	act'Leave':
-		*clr & cla
-		gs 'stat'
-		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/Anna/sessionhotel/anna2restr5.jpg"></center>'
-		'"That''s okay <<$pcs_nickname>>. We''ll pick this up some other time, let me show you out." You walk towards the door through the hallway chatting as you go. "Hopefully you''ve gotten something to think about before bedtime tonight."'
-		'"I hope so too."'
-		'"Here we are, now hope to see you again soon."you smile to Anna and say goodbye before you leave out towards the residential area.'
-		act 'Leave': gt'pav_hotel'
 	end
 end
 

Some files were not shown because too many files changed in this diff