233 Commits fbabe5f484 ... 6beeaf0bff

Author SHA1 Message Date
  anjuna krokus 6beeaf0bff [fixed/changed] Bug in AppearanceSystem. Reported by Skylah, found by Felix, caused by Kevin. Rewrote some logic and exported the bmi checks to `pcs_has_attr` and `body_structure`. 4 months ago
  anjuna krokus 0f6c6bfd34 [fixed] Changed the order of acts even though I shouldn't. 4 months ago
  Kevin_Smarts 446a5b2207 Merge branch 'master' of azdraik/glife into master 4 months ago
  Kevin_Smarts 40f5a60783 Merge branch 'master' of awatar/glife into master 4 months ago
  Kevin_Smarts bbd2942102 [fixed] was returning negative bonus for underwear in appearance if not wearing any 4 months ago
  Kevin_Smarts 76058b68b1 [fixed] a few duplicate lines and one was breaking shit 4 months ago
  anjuna krokus 977a21c3c8 [fixed] Radomir not showing up at school grounds when using the table. Reported by Dark Ether, problem found by Skylah 4 months ago
  Kevin_Smarts a597c7744c Merge remote-tracking branch 'Hooded_Silence/master' 4 months ago
  Myles Croft (Hooded Silence) 1636961129 [Bug Fixes] Fix game breaking bug in home kitchen due to npc migration and fixed $loc bugs for ballet secrets shuffle. Corrected wrong variable type in elene's schedule. 4 months ago
  Kevin_Smarts 49c412fecf Merge remote-tracking branch 'Hooded_Silence/master' 4 months ago
  Myles Croft (Hooded Silence) 0d6adc0c0e [Bug fix] Removed line duplication due to branch merge 4 months ago
  Myles Croft (Hooded Silence) 12876c03ed forgot to save the colon. 4 months ago
  Myles Croft (Hooded Silence) 106d89b108 [Code clean up] Clean up code validation errors. 4 months ago
  Myles Croft (Hooded Silence) ab25807618 Merge branch 'Beta' 4 months ago
  anjuna krokus 9feeb455fb [fixed] Forgot to reset the pregnancy pics to the old version 4 months ago
  anjuna krokus b6bdb6efa7 [fixed/added] Extracted repeated library code to a `library_functions` location. Fixed an issue with the loaned books 4 months ago
  anjuna krokus 28e7767e73 Merge remote-tracking branch 'master/master' 4 months ago
  Myles Croft (Hooded Silence) 528038eacb Merge branch 'master' of https://git.tfgames.site/Kevin_Smarts/glife 4 months ago
  Myles Croft (Hooded Silence) 38c7a81f49 no message 4 months ago
  Kevin_Smarts 1e25ca930a [fixed] A number of platform shoes with high heel values in error. 4 months ago
  Kevin_Smarts 8f24fe37a8 Merge remote-tracking branch 'Anjuna/master' 4 months ago
  Kevin_Smarts 423e7109bb Merge remote-tracking branch 'Awesome/master' 4 months ago
  Kevin_Smarts 1f0697c863 [fixed] typo and duplicate sentences for both options spotted by yoyodyne 4 months ago
  anjuna krokus 61dfa0728a [fixed] Mitka now properly uses the right `gt $loc, $loc_arg` structure. Reported by Vladzilla, problem found by Xtirp8 4 months ago
  User Namovich ecbacf7ffb [added] missing space 4 months ago
  User Namovich eda9ef9cae [fixed] 'condom_steal' talk/hear event 4 months ago
  anjuna krokus 8219c8a504 [fixed] accidentally pushed an unreleased image feature 5 months ago
  anjuna krokus f4716e4c0f [fixed] Chat with Iron Lung vladimir in `buklinik_event` leading to a blank screen. Reported by Honey 5 months ago
  anjuna krokus bb6584b19b [fixed] typo and duplicate code. Reported by Azdraik 5 months ago
  anjuna krokus 7c14f84cb1 [changed] `torgcentr` to `city_mall` 5 months ago
  anjuna krokus 578c70a826 [changed] Removed empty screen when taking a music lesson, simplyfing the code as a byproduct 5 months ago
  anjuna krokus 08024a9eed [changed] Changes to the code for clothing and shops. Extracted most (if not all) totals to their respective files (clothing, bras, panties, purses, coats, shoes). Renamed various shops to have a similar name structure (shop_{...}). Used `i = 1 + (Cloathingstock / m) mod n` structures so that shop inventory has semi-independent randomization. Simplified code structures, removed unnecessary code, and removed trailing spaces. 5 months ago
  Awesome e0ec5e6f58 [Added] Versions to the stat explanation tables so they don't have to be rebuilt on every visit 5 months ago
  anjuna krokus 68d65347a5 [changed] `gad_market` to `gad_store` in preparation for the introduction of the farmers market (to avoid confusion) 5 months ago
  anjuna krokus a4756c3e12 [fixed] Wrong use of `arrpos` caused the camera to stop working 5 months ago
  anjuna krokus 86cd578beb [fixed] Moisuriser count wasn't bolded. Reported by deuslinks 5 months ago
  anjuna krokus e0bc788c69 [changed] The body image, body description, and bmi description are now updated once per day (or on cheats). This opens the way for more random images/descriptions 5 months ago
  anjuna krokus bb87ea555c [fixed] forgotten m in `city_commcenter` caused a bug 5 months ago
  anjuna krokus ec0e009d8b [changed] Full removal of the last (I think) vestiges of `salo` and `salocat` 5 months ago
  anjuna krokus a7418bfc8a [changed/fixed] Small rewrite of the park jogging logic to prevent wrong messages 5 months ago
  Kevin_Smarts 05c08dfa8a Merge remote-tracking branch 'Anjuna/master' 5 months ago
  anjuna krokus 9eb4abdc3b [changed/fixed] `bk` to `city_commcenter`. Fixed multiple bugs related to the payments there, simplified logic. 5 months ago
  anjuna krokus 4b3a293844 [fixed] Sense to since 5 months ago
  anjuna krokus 13c2f0684a [changed/removed] Changed the logic of `drinking_game` to be an actual fuction. Removed trailing spaces, changed spaces into tabs 5 months ago
  anjuna krokus 2d0f1d5e33 [fixed] chaffing to chafing + removed trailing spaces 5 months ago
  Myles Croft (Hooded Silence) fd66da1af5 [Failed Merge] Failed merge of mainline due to connection outage, removing stream data from file. 5 months ago
  Myles Croft (Hooded Silence) c05a0056e0 no message 5 months ago
  Myles Croft (Hooded Silence) 7db520d85f [code migration] ballet migration for npcs and structure, and initial gad changes to grandparents dacha 5 months ago
  bgkjdgbizgblzdgbr 59b21bbfd0 [fixed] You should not used your own drugs when you are offered it by somebody else. 5 months ago
  bgkjdgbizgblzdgbr c9fe5c9f2b [fixed] Always use perenthisis that way you are sure the logic is correct. 5 months ago
  Lusticon ae08dda20f [changed] more secure int ARGS set 5 months ago
  Awesome a068f989be [Fixed] Wrong location call 5 months ago
  bgkjdgbizgblzdgbr 956a69a654 [fixed] Missing *clr & cla and wrong file extension for images. 5 months ago
  bgkjdgbizgblzdgbr c46f585aa0 [text edit] Made the sentece better. I hope. 5 months ago
  anjuna krokus 34eb838979 [fixed] Feofan shouldn't approach you on monday about the D&D night. This is to prevent easy conflicts with the SMS invite 5 months ago
  Kevin_Smarts b72499e420 [fixed] Shirt and skirt labelled as a dress 5 months ago
  Lusticon 4c2e801480 [fixed] missing ARGS 5 months ago
  anjuna krokus ea479ccfef [fixed] `pubes` to `pcs_pubes` 5 months ago
  anjuna krokus 0f1e95441f [fixed] Accidentally overwrote the therapist stat message instead of adding to it 5 months ago
  anjuna krokus 889d765dd8 [added/removed] Added the "shave hair" hypno event to the therapist. Removed trailing spaces 5 months ago
  anjuna krokus 9c61e299f0 [added/removed] Added the experimental trials pharmacy. Removed trailing traces 5 months ago
  Kevin_Smarts 734fffbf03 [fixed] misspelt variable spotted by Honey 5 months ago
  Kevin_Smarts c221147414 [added] updates for release 5 months ago
  anjuna krokus 0b87aa8963 [removed] Trailing Spaces 5 months ago
  anjuna krokus 6255ba365d [fixed] Open `clr` removed earlier content 5 months ago
  anjuna krokus f4cbab998e [fixed] Small trexting error 5 months ago
  azdraik 101c21d867 Case syncing of noShampoo 5 months ago
  anjuna krokus a0d1f5e77b [fixed] more bugfixes 5 months ago
  anjuna krokus 471af96da2 [fixed] stop saving empty preferences 5 months ago
  anjuna krokus ab694e46d0 [fixed/changed] Fixed an issue with the `npc_set_preference, rebuild_preferences` function. Combined `$npc_preferences` and `$npc_pref_values` into a singular array 5 months ago
  Lusticon 8c9833f2be Merge branch 'master' of https://git.tfgames.site/Kevin_Smarts/glife 5 months ago
  Lusticon 060389512e [fixed] sell acts 5 months ago
  anjuna krokus 384751d5fe [fixed] Space at the wrong place was creating blank screens 5 months ago
  anjuna krokus 746f3d9d2c [fixed] Pharmacy not unlocking from the KBI trial 5 months ago
  Kevin_Smarts 0511304b4e Merge branch 'master' of https://git.tfgames.site/Kevin_Smarts/glife 5 months ago
  Kevin_Smarts ddc5ffacf7 Merge remote-tracking branch 'origin/master' 5 months ago
  Kevin_Smarts d91487dc36 Merge remote-tracking branch 'Lusticon/master' 5 months ago
  Kevin_Smarts f20973f624 Merge remote-tracking branch 'Awesome/master' 5 months ago
  Kevin_Smarts b962e2db7b Merge remote-tracking branch 'Anjuna/master' 5 months ago
  bgkjdgbizgblzdgbr 8d0adf19d8 [fixed] You should not used your own drugs when you are offered it by somebody else. 5 months ago
  bgkjdgbizgblzdgbr 0aa6ef6aff [fixed] Always use perenthisis that way you are sure the logic is correct. 5 months ago
  Lusticon e246208127 Merge branch 'master' of https://git.tfgames.site/Kevin_Smarts/glife 5 months ago
  Lusticon 6482567e11 [changed] more secure int ARGS set 5 months ago
  Awesome a789d7f39b [Fixed] Wrong location call 5 months ago
  bgkjdgbizgblzdgbr a0d0ca49f8 [fixed] Missing *clr & cla and wrong file extension for images. 5 months ago
  bgkjdgbizgblzdgbr 67323651a3 Merge branch 'master' of https://git.tfgames.site/Kevin_Smarts/glife 5 months ago
  bgkjdgbizgblzdgbr dcafe54806 [text edit] Made the sentece better. I hope. 5 months ago
  Kevin_Smarts 4c2f87bc9b [fixed] Shirt and skirt labelled as a dress 5 months ago
  anjuna krokus 08b2ae96f1 [fixed] Feofan shouldn't approach you on monday about the D&D night. This is to prevent easy conflicts with the SMS invite 5 months ago
  Lusticon 31345adfd2 [fixed] missing ARGS 5 months ago
  Myles Croft (Hooded Silence) 69bab7c643 Merge commit 'e3f6b1cc40084e958a21c3b6af1ea5dca8972a6c' into Beta 5 months ago
  anjuna krokus 5e8154a9b0 [fixed] `pubes` to `pcs_pubes` 5 months ago
  anjuna krokus c7700ff8ae [fixed] Accidentally overwrote the therapist stat message instead of adding to it 5 months ago
  anjuna krokus 8468161c16 [added/removed] Added the "shave hair" hypno event to the therapist. Removed trailing spaces 5 months ago
  anjuna krokus f450b730c9 [added/removed] Added the experimental trials pharmacy. Removed trailing traces 5 months ago
  Kevin_Smarts 9680804ec9 [fixed] misspelt variable spotted by Honey 5 months ago
  Kevin_Smarts 92ab749fe8 [added] updates for release 5 months ago
  Kevin_Smarts e3f6b1cc40 Merge remote-tracking branch 'Lusticon/master' 5 months ago
  Myles Croft (Hooded Silence) db2dea07f1 [File maintenance] changed ballet secrets to pushkin_ballet_secrets to reflect naming convention and updated locations 5 months ago
  Lusticon 070baa247f [added] search by DNA 5 months ago
  Lusticon 11358c0fb1 [changed] random generated npc horny based on PC attractiveness 5 months ago
  Lusticon 3ab86c40bf [added] pattern npc DNA instruction 5 months ago
  Kevin_Smarts 40f7dcdeb3 [fixed] it said pants not panties and I got confused 5 months ago
  Kevin_Smarts f2a1c9f439 [fixed] Wrong willpower check as spotted by bg 5 months ago
  Kevin_Smarts b7ee82efcc [fixed] no panty check for scene 5 months ago
  Kevin_Smarts 1f59ec8f21 [fixed] Hotel rental check to prevent staying there forever for free 5 months ago
  Kevin_Smarts d1d9c6db99 Merge remote-tracking branch 'Anjuna/master' 5 months ago
  Kevin_Smarts d324cf5282 Merge remote-tracking branch 'Lusticon/master' 5 months ago
  Kevin_Smarts 9dc6ee239f Merge remote-tracking branch 'Awesome/master' 5 months ago
  Kevin_Smarts 4572a7ba9b Merge branch 'master' of https://git.tfgames.site/Kevin_Smarts/glife 5 months ago
  anjuna krokus 22b0b1bec1 Merge remote-tracking branch 'master/master' 5 months ago
  bgkjdgbizgblzdgbr f680280944 [fixed] Stopped teleportation form nush room in the city to her room in pav, couse by bad cut and paste and a overwriting return loc code. 5 months ago
  Lusticon dfc8a26259 [added] qsp_parser new version and integration instructions 5 months ago
  Lusticon 046c9ff872 [fixed] string vs integer 5 months ago
  Lusticon 24fe778075 [changed] simplified string output 5 months ago
  Lusticon 8fe5c44b40 [changed] 'if' order check 5 months ago
  Lusticon e6871272bb [fixed] string vs integer 5 months ago
  Lusticon aa383ed57a [fixed] string vs integer, vars checks, pic path 5 months ago
  Lusticon ff8653320f Merge branch 'master' of https://git.tfgames.site/Kevin_Smarts/glife 5 months ago
  Kevin_Smarts 4c682376c5 [text edit] missing space spotted by esoom on f95 5 months ago
  anjuna krokus 249ce2e853 [changed/removed] changed spaces into tabs, removed trailing spaces 5 months ago
  anjuna krokus 43a5c0d579 Merge remote-tracking branch 'master/master' 5 months ago
  Kevin_Smarts 2a0284ff5a [fixed] a couple of inconsistencies and a wrong variable 5 months ago
  Awesome cf1504a414 [Fixed] Imagepaths again 5 months ago
  Awesome 961fb69c77 [Fixed] Some more imagepaths 5 months ago
  anjuna krokus f15ecc70a2 [added] `.log` files to the gitignore 5 months ago
  Awesome d07d7f1d57 [fixed] some imagepaths 5 months ago
  anjuna krokus 8552d83783 [fixed] replaced dead 'audition' calls with an option to back out. Removed trailing spaces and unneeded *clr & cla calls 5 months ago
  anjuna krokus 42bdc67005 [changed] fixed some typos in `stat_explenations`, and changed "player character" to use her first name instead 5 months ago
  anjuna krokus 344c7b55c8 [removed] trailing spaces 5 months ago
  anjuna krokus 3faa406003 [fixed/removed] `'rad_bedroom', 'radroom'` should just be `'radapt', 'bedroom'`. 5 months ago
  anjuna krokus 949b871b88 [fixed/removed] `rapapt` should be `radapt`. Removed trailing spaces 5 months ago
  anjuna krokus b279797a22 [fixed/removed] `booty_call_start` doesn't exist and should be `booty_call`. Removed trailing spaces 5 months ago
  anjuna krokus cdb36ba7fb Merge remote-tracking branch 'master/master' 5 months ago
  Kevin_Smarts 345ededcf8 Merge remote-tracking branch 'origin/master' 5 months ago
  Kevin_Smarts 3829a651af Merge remote-tracking branch 'Anjuna/master' 5 months ago
  anjuna krokus 57df6999c4 Merge remote-tracking branch 'master/master' 5 months ago
  bgkjdgbizgblzdgbr 66562423c1 [fixed] Cheatmenu unecessarily set the floor and cealing for skills and attributes, which the gs 'stat' just before already does. Except the cheatmenu used the wrong formula (not acounting for succubus) and violated the prinible of which variables that can be cahnged outside stat_sklattrib. 5 months ago
  Lusticon 1242268e13 Merge branch 'master' of https://git.tfgames.site/Kevin_Smarts/glife 5 months ago
  anjuna krokus 92b71338b9 [fixed/changed] succubus appearance bonus fixed. Simplefied another calculation 5 months ago
  anjuna krokus 7337acd054 [changed/removed] Changed how long Mira will hang out at the grandparents on a rainy day waiting for you. Removed traling spaces. 5 months ago
  anjuna krokus 70f3787b91 [fixed] Succubus not properly moving towards optimal weight (22.5 BMI). Removed trailing spaces. Simplified some code 5 months ago
  Awesome 95b7a098af [Fixed] even more Maksim stuff 5 months ago
  Awesome 21259da7ba [Fixed] this as well 5 months ago
  Awesome df06d8c82b [Fixed] more maksim fixes 5 months ago
  Awesome 31269d2dd8 [Fixed] Some Maksim bugs 5 months ago
  Kevin_Smarts 20c7b46409 Merge remote-tracking branch 'Anjuna/master' 5 months ago
  Kevin_Smarts 8b40c8820f Merge remote-tracking branch 'Awesome/master' 5 months ago
  Kevin_Smarts 72fc977e8b Merge remote-tracking branch 'Hornguy6/master' 5 months ago
  bgkjdgbizgblzdgbr 1237995471 [fixed] Blocked Katja opening the door if you are not on her quest for now. 5 months ago
  anjuna krokus 73441aa634 [fixed] Kolka shave scene not having the correct logic. Reported by Serina 5 months ago
  Awesome 3eda4edd50 [Fixed] Wrong variable 5 months ago
  hornguy6 474f1fda17 [fixed] dead ends relating to creampies and condoms 5 months ago
  Kevin_Smarts e40eae2f7d Merge remote-tracking branch 'Awesome/master' 5 months ago
  Kevin_Smarts f94ffde74b Merge remote-tracking branch 'Anjuna/master' 5 months ago
  Kevin_Smarts 596533d668 Merge remote-tracking branch 'Lusticon/master' 5 months ago
  Lusticon 9a03d9ea79 Merge branch 'master' of https://git.tfgames.site/Kevin_Smarts/glife 5 months ago
  Awesome ca542ed6f4 [Fixed] Wrong label for BC reminder loop 5 months ago
  anjuna krokus b0ff3da36e Merge remote-tracking branch 'master/master' 5 months ago
  Kevin_Smarts 2cffe5029a Merge remote-tracking branch 'Felix/master' 5 months ago
  Kevin_Smarts a0e5ceb612 Merge remote-tracking branch 'Derryth_Love/master' 5 months ago
  LinaHirata 1b02e48f78 [fixed] redundant `cla` call 5 months ago
  Lusticon 94e836d2e4 [added] cheat menu var cleanup 5 months ago
  Lusticon c46dcfdaf4 [changed] text display layout 5 months ago
  LinaHirata 229470d7a1 [fixed] workaround for indiktab rendering incorrect color palette 5 months ago
  anjuna krokus 3ac4fda905 [fixed] `park_walkevents` saveing an npc, but not overwriting the relevant variable for the random hookup stuff. Layout changes and `i` renaming in `npcpreservec` to prevent future bugs 5 months ago
  Lusticon 5a024dd190 [fixed] string vs integer 5 months ago
  Lusticon d7d34916c9 [changed] moved 'Purge the "Blackmailer" questline' setting to cheat 5 months ago
  Lusticon a35cb84e61 [added] variables for migration 5 months ago
  Derryth_Love 5aee05d9d8 Merge branch 'master' of https://git.tfgames.site/Derryth_Love/glife 5 months ago
  Derryth_Love 6a2b5e242e [fix]Fedor will walk you to your set home 5 months ago
  anjuna krokus 5133a33727 [fixed] Hopefully fixed Miroslava showing up after asking her to leave. 5 months ago
  Kevin_Smarts 07c5274fb3 Merge remote-tracking branch 'Lusticon/master' 5 months ago
  Kevin_Smarts 8a2a27f751 [fixed] Dancer starting sportwear adjusted and some of the old sports defaults set wrong (they shouldn't do anything but corrected them for now) 5 months ago
  Lusticon def9859dc4 Merge branch 'master' of https://git.tfgames.site/Kevin_Smarts/glife 5 months ago
  Lusticon 1172b3e0b7 Merge branch 'master' of https://git.tfgames.site/Kevin_Smarts/glife 5 months ago
  Lusticon c2a1151292 [fixed] string vs integer 5 months ago
  anjuna krokus aa4699a345 [fixed] Renamed the `i` variable to prevent further problems 5 months ago
  anjuna krokus f62fae4f5f [fixed] Infinite loop in `rape_events`, fixed the missing image in the same event 5 months ago
  Kevin_Smarts 11cfbfc0d6 [fixed] cls replaced by cla & *clr to stop add desc vanishing 5 months ago
  Kevin_Smarts 3569f11538 Merge remote-tracking branch 'Anjuna/master' 5 months ago
  Kevin_Smarts ae25092df2 Merge remote-tracking branch 'Lusticon/master' 5 months ago
  anjuna krokus a1b5b338a2 [fixed] description window getting cleared during the lover phonecalls. Removed trailing spaces 5 months ago
  Kevin_Smarts 172fb8463b [fixed] use of cls meant add desc was blank when chaning outfits 5 months ago
  Lusticon 0f50d90213 [fixed] bracket 5 months ago
  Myles Croft (Hooded Silence) c105c941dc no message 5 months ago
  Myles Croft (Hooded Silence) 3cd8feb22a Merge commit '27161209886c4c7be46ce9eda46b09523cfa6beb' into Beta 5 months ago
  Kevin_Smarts 66874c5f98 Merge remote-tracking branch 'Awesome/master' 5 months ago
  Kevin_Smarts 2716120988 Merge remote-tracking branch 'Lusticon/master' 5 months ago
  Kevin_Smarts 97b628d7af [fixed] annorexic start was using wrong outfit and had a school uniform that doesn't exist. Otherwise it was great 5 months ago
  anjuna krokus 5e5c3ebc48 [fixed] Images of the butt changes were added after all (thank you Anya), so the rest of the code has been uncommented 5 months ago
  Awesome aa08c25ef4 [Fixed] refillable Water bottle appearing in the bag even though Sveta doesn't have one 5 months ago
  anjuna krokus abf7e95ae4 [fixed] rendered hairstyles weren't properly working for short and very short hairlstyles. Removed floating spaces. Added curly for short hair for picture faces. 5 months ago
  anjuna krokus 4459e24e80 [fixed] blank screen after entering the wardrobe and selecting "saved outfits". Removed trailing spaces 5 months ago
  anjuna krokus b5ed62f61a [fixed] blank screen after "itty bitty titties" (found by sansos). Removed trailing spaces 5 months ago
  Lusticon 37c49a4b84 [fixed] missing image 5 months ago
  Kevin_Smarts eaa1bb4b94 Merge remote-tracking branch 'Awesome/master' 5 months ago
  bgkjdgbizgblzdgbr 12c1f70eb9 [fixid] Nutluck's mistake reported by nutluck. 5 months ago
  Awesome aa3311efc2 [Added] Radomir Apt and events from nutluck with some code from Awesome 5 months ago
  Awesome 95193e3b5b [Fixed] Bug fixes for bus platform and shared apt 5 months ago
  Awesome 1c260d1b97 [Added] More Maksim content from Nutluck 5 months ago
  Kevin_Smarts fac8a1ac20 Merge branch 'master' of https://git.tfgames.site/Awesome/glife 5 months ago
  Kevin_Smarts 56a88e27af Merge remote-tracking branch 'Lusticon/master' 5 months ago
  Kevin_Smarts cc7b16de0c Merge remote-tracking branch 'Anjuna/master' 5 months ago
  Awesome 9778884ee5 [Fixed] Actions getting blocked 5 months ago
  Lusticon 8084f1e308 [removed] wrong random event 5 months ago
  Lusticon be7ce7a8b4 [fixed] dead end 5 months ago
  Lusticon 58832f2517 [fixed] pav_library work hours 5 months ago
  anjuna krokus 787b1d17aa [fixed/changed] changed the Boris arrest news (scarlets questline) from a random article into an event article that should only fire from 27th nov 2016 for 2 weeks. 5 months ago
  Lusticon 9a75ceeff3 [fixed] images src 5 months ago
  Lusticon 7f3f095e7b [fixed] msg block 5 months ago
  Lusticon 103af7f26a [fixed] string vs integer 5 months ago
  Lusticon 18f69b668a [added] cleanup var 5 months ago
  Lusticon 1a1ed8463e [fixed] 'if' checks 5 months ago
  Awesome 4e4cee2913 [Fixed] old variables 5 months ago
  anjuna krokus 821c632beb [fixed] capped the maximum buttsize through the cheatmenu (it existed, but didn't work properly). Removed trailing spaces 5 months ago
  anjuna krokus 091a227629 [fixed] temporarily disabled the body shape 8 picture, since that doesn't exist yet 5 months ago
  Awesome b7322267cb [Fixed] Missing act 5 months ago
  Awesome 6e0fc3a8b2 [Fixed] Blank screen while showering after PE lesson 5 months ago
  anjuna krokus 53e4112139 [fixed] Therapist hotel room wardrobe not working correctly. Reported by Chimrod. Removed trailing spaces 5 months ago
  Kevin_Smarts c4a01a659e [fixed] args with no event, skip link inserted by Sword 5 months ago
  Kevin_Smarts 0860faee39 Merge branch 'master' of https://git.tfgames.site/Kevin_Smarts/glife 5 months ago
  Kevin_Smarts aec013d5ae [fixed] some physics events had phatom actions and one had no actions. Quick bit of restructure to resolve. Thanks to Sword for finding the problem 5 months ago
  bgkjdgbizgblzdgbr 2e045900f6 [fixed/changed] Wrong placement for option to show Katja that you are not wearing panties in the Coffee Hole. 5 months ago
  bgkjdgbizgblzdgbr 4e3a7f75f9 [fixed] Image link in dorm showers. 5 months ago
  Kevin_Smarts aa8b49dd2e [changed] Prep for release!!!! 5 months ago
  Awesome dcdf017ff2 [fixed] forgotten `=` 5 months ago
  Kevin_Smarts 60b44cc430 [fixed] Capitalized some words and added a couple of words of text to get change log ready 5 months ago
  Kevin_Smarts 75d98eac4e [chaged] updated version historyu to include a couple more from anjuna I had missed 5 months ago
  Kevin_Smarts d346a189d6 [changed] Version history updated to 0.9.3 in prep for release 5 months ago
  Kevin_Smarts 57fb94567b [fixed] Typo spotted by yoyodyne 5 months ago
  Kevin_Smarts 7beae78bbd [added] Changelog updated for 0.9.3 5 months ago
  Myles Croft (Hooded Silence) cc4186e69b [Beta Branch] code for testing purpose away from GL main branch, npc migration and various locations updated. untested code and is WIP, there will be hungry dragons. 6 months ago
100 changed files with 2916 additions and 4924 deletions
  1. 2 0
      .gitignore
  2. 24 18
      glife.qproj
  3. 73 115
      locations/AppearanceSystem.qsrc
  4. 96 136
      locations/Cheatmenu_din.qsrc
  5. 5 10
      locations/Cum_Manage.qsrc
  6. 10 10
      locations/FedorEv2.qsrc
  7. 2 2
      locations/FedorEv4.qsrc
  8. 14 12
      locations/HotelRoom.qsrc
  9. 1 1
      locations/KGstart.qsrc
  10. 1 1
      locations/MeynoldHome.qsrc
  11. 8 9
      locations/NPCChanger.qsrc
  12. 34 34
      locations/RimmaSexQW.qsrc
  13. 1 1
      locations/SMS_selfies.qsrc
  14. 1 1
      locations/SMStext_builder.qsrc
  15. 0 1
      locations/_attributes_cats_dress.qsrc
  16. 4 4
      locations/_attributes_cats_shoes.qsrc
  17. 56 56
      locations/_attributes_dolls_shoes.qsrc
  18. 0 1
      locations/_body_image.qsrc
  19. 70 56
      locations/_face_image.qsrc
  20. 7 7
      locations/agentned.qsrc
  21. 64 64
      locations/albina_chat.qsrc
  22. 1 0
      locations/albina_starlets.qsrc
  23. 2 0
      locations/alexandriaEv.qsrc
  24. 3 2
      locations/anush_bedroom_city.qsrc
  25. 212 141
      locations/anushapt.qsrc
  26. 6 6
      locations/anushapt_city.qsrc
  27. 341 145
      locations/anushaptbr.qsrc
  28. 8 9
      locations/anushkachat_city.qsrc
  29. 6 13
      locations/anushkaev1.qsrc
  30. 3 2
      locations/anushkaev2.qsrc
  31. 70 12
      locations/anushkamaksim.qsrc
  32. 10 32
      locations/arousal.qsrc
  33. 1 1
      locations/artem_chebotarev_schedule.qsrc
  34. 5 5
      locations/artem_dorm.qsrc
  35. 31 31
      locations/artem_nush_sex.qsrc
  36. 29 29
      locations/artem_nush_sex_uni.qsrc
  37. 4 4
      locations/ballet_npc.qsrc
  38. 21 25
      locations/bedrPar.qsrc
  39. 32 32
      locations/beverage.qsrc
  40. 7 7
      locations/billiard.qsrc
  41. 16 16
      locations/billsvid.qsrc
  42. 6 6
      locations/blackmailer.qsrc
  43. 51 77
      locations/body.qsrc
  44. 34 68
      locations/body_desc.qsrc
  45. 277 105
      locations/body_structure.qsrc
  46. 10 10
      locations/booty_call.qsrc
  47. 5 5
      locations/bouling.qsrc
  48. 5 11
      locations/boyStat.qsrc
  49. 37 18
      locations/bras.qsrc
  50. 19 17
      locations/brother_voyeur.qsrc
  51. 0 636
      locations/budgetclothes.qsrc
  52. 5 4
      locations/buklinik_event.qsrc
  53. 1 1
      locations/bus.qsrc
  54. 6 6
      locations/camera.qsrc
  55. 35 35
      locations/cikl.qsrc
  56. 49 0
      locations/city_canal.qsrc
  57. 2 2
      locations/city_center.qsrc
  58. 125 112
      locations/city_commcenter.qsrc
  59. 3 3
      locations/city_experimental_trials.qsrc
  60. 5 5
      locations/city_experimental_trials_events.qsrc
  61. 36 36
      locations/city_experimental_trials_list.qsrc
  62. 17 2
      locations/city_experimental_trials_pharmacy.qsrc
  63. 2 0
      locations/city_hotel.qsrc
  64. 3 3
      locations/city_industrial.qsrc
  65. 40 237
      locations/city_library.qsrc
  66. 28 28
      locations/city_mall.qsrc
  67. 16 124
      locations/city_mansion_residence_2.qsrc
  68. 59 73
      locations/city_market.qsrc
  69. 32 32
      locations/city_musicstore.qsrc
  70. 67 66
      locations/city_park.qsrc
  71. 8 8
      locations/city_redlight.qsrc
  72. 3 3
      locations/city_residential.qsrc
  73. 6 6
      locations/city_saunawhore.qsrc
  74. 12 10
      locations/city_trashplaceevents.qsrc
  75. 30 22
      locations/clothing.qsrc
  76. 26 11
      locations/coats.qsrc
  77. 1 1
      locations/core_library.qsrc
  78. 2 2
      locations/courtletter.qsrc
  79. 1 1
      locations/cum_call.qsrc
  80. 11 11
      locations/dateF.qsrc
  81. 0 1
      locations/dimaHome.qsrc
  82. 6 6
      locations/din_bad.qsrc
  83. 51 31
      locations/din_van.qsrc
  84. 1 1
      locations/djibrilev1.qsrc
  85. 73 13
      locations/drugs.qsrc
  86. 5 8
      locations/emp_functions.qsrc
  87. 12 9
      locations/ender.qsrc
  88. 8 8
      locations/event.qsrc
  89. 23 102
      locations/events.qsrc
  90. 36 36
      locations/food.qsrc
  91. 171 171
      locations/food_menu.qsrc
  92. 6 21
      locations/gad_field.qsrc
  93. 1 1
      locations/gad_forest_lost.qsrc
  94. 5 3
      locations/gad_gpbath.qsrc
  95. 107 1601
      locations/gad_gphouse.qsrc
  96. 12 12
      locations/gad_store.qsrc
  97. 22 33
      locations/gad_swamphouse.qsrc
  98. 4 2
      locations/gadukino.qsrc
  99. 2 2
      locations/gdktoilet.qsrc
  100. 15 15
      locations/goplust.qsrc

+ 2 - 0
.gitignore

@@ -47,3 +47,5 @@ glife.7z
 *.test
 *.drawio
 missing_media.txt
+plugins.dat
+*.log

+ 24 - 18
glife.qproj

@@ -81,6 +81,7 @@
 		<Location name="pcs_has_attr"/>
 		<Location name="grades"/>
 		<Location name="internet_mobile"/>
+		<Location name="library_functions"/>
 	</Folder>
 	<Folder name="Sleep">
 		<Location name="pre_sleep"/>
@@ -610,10 +611,15 @@
 		<Location name="anushkamaksim"/>
 		<Location name="anushka_konstantinov_schedule"/>
 		<Location name="valentin_bogdanov_schedule" />
-		<Location name="radomir_popov_schedule" />
 		<Location name="arkadi_fyodorov_schedule" />
 		<Location name="band_tour_anushka_SMS"/>
 	</Folder>
+	<Folder name="Radomir">
+		<Location name="radapt"/>
+		<Location name="radaptev1"/>
+		<Location name="radchat"/>
+		<Location name="radomir_popov_schedule" />
+	</Folder>
 	<Folder name="Sonia">
 		<Location name="soniadisco"/>
 		<Location name="soniahome"/>
@@ -935,8 +941,6 @@
 		<Location name="burger"/>
 		<Location name="burgerWork"/>
 		<Location name="BurgerTip"/>
-		<Location name="moncheri"/>
-		<Location name="lusso"/>
 		<Location name="butoilet"/>
 		<Location name="city_nightclub"/>
 		<Location name="city_nightclubToilet"/>
@@ -953,22 +957,24 @@
 		<Location name="alexandriaChat"/>
 		<Location name="alexandriaEv"/>
 		<Location name="alexandriaSex"/>
-		<Location name="shop_fashionista"/>
 		<Location name="office"/>
 		<Location name="restoran"/>
+		<Location name="city_mall"/>
 		<Location name="hairsalon"/>
 		<Location name="shopdacha"/>
-		<Location name="sportShop"/>
+		<Location name="shop_danilovich"/>
+		<Location name="shop_lusso"/>
 		<Location name="shop_scandalicious"/>
-		<Location name="torgcentr"/>
+		<Location name="shop_fashionista"/>
+		<Location name="shop_moncheri"/>
+		<Location name="shop_gm"/>
+		<Location name="shop_materinstvo"/>
+		<Location name="shop_photography"/>
+		<Location name="photography_work"/>
 		<Location name="yarik"/>
 		<Location name="zoomagazine"/>
-		<Location name="budgetclothes"/>
 		<Location name="city_musicstore"/>
 		<Location name="city_musicstore_stock"/>
-		<Location name="shop_materinstvo"/>
-		<Location name="shop_photography"/>
-		<Location name="photography_work"/>
 	</Folder>
 	<Folder name="City Residential">
 		<Location name="city_residential"/>
@@ -1007,7 +1013,7 @@
 		<Location name="TerminalOffice"/>
 		<Location name="ilyroom"/>
 		<Location name="trFatherMisha"/>
-		<Location name="dk"/>
+		<Location name="city_commcenter"/>
 		<Location name="kakuzu"/>
 		<Location name="youry"/>
 		<Location name="alex"/>
@@ -1038,7 +1044,7 @@
 		<Location name="city_redlight"/>
 		<Location name="bordel"/>
 		<Location name="bordelv"/>
-		<Location name="sexshop"/>
+		<Location name="shop_erotomaniac"/>
 		<Location name="stripclub"/>
 		<Location name="cfnm"/>
 		<Location name="stwork"/>
@@ -1152,7 +1158,7 @@
 		<Location name="gad_beach"/>
 		<Location name="gad_prostitutes"/>
 		<Location name="gad_field"/>
-		<Location name="gad_market"/>
+		<Location name="gad_store"/>
 		<Location name="gad_road"/>
 		<Location name="gad_miroslava_home"/>
 		<Location name="gad_forest"/>
@@ -1166,6 +1172,7 @@
 		<Location name="gad_swampspring"/>
 		<Location name="gad_swamp_woods"/>
 		<Location name="gad_backwater"/>
+		<Location name="gp_elene_schedule"/>		
 	</Folder>
 	<Folder name="Gadyukino Characters">
 		<Location name="hunters"/>
@@ -1351,7 +1358,7 @@
 		<Location name="rasputin_walkway"/>
 		<Location name="rasputin_show_bur"/>
 		<Location name="rasputin_show_var"/>
-		<Location name="exhibitionistshop"/>
+		<Location name="shop_exhibitionist"/>
 		<Location name="kseniyaQW"/>
 		<Location name="pushkin_parks"/>
 		<Location name="dibodi"/>
@@ -1391,16 +1398,15 @@
 	<Folder name="Ballet_career">
 		<Location name="pushkin_ballet_init"/>
 		<Location name="core_library"/>
-		<Location name="ballet_npc"/>
-		<Location name="npc_3501_init"/>
-		<Location name="npc_3510_init"/>
+		<Location name="npc_274_init"/>
+		<Location name="npc_292_init"/>
 		<Location name="maya_residence"/>
 		<Location name="pushkin_ballet_center"/>
 		<Location name="pushkin_ballet_res"/>
 		<Location name="pushkin_ballet_class"/>
 		<Location name="pushkin_ballet_evt"/>
 		<Location name="ballet_global_evt"/>
-		<Location name="ballet_secrets"/>
+		<Location name="pushkin_ballet_secrets"/>
 		<Location name="marlilnsky_theatre"/>
 		<Location name="pushkin_theatre"/>
 		<Location name="st_petersburg_canals"/>

+ 73 - 115
locations/AppearanceSystem.qsrc

@@ -2,10 +2,10 @@
 
 if $ARGS[0] = '':
 	!{
-        PC's appearance is updated regularly in stat.qsrc.
-        Note: A huge part of PC's appearance is from base appearance, which is updated once a day. Because it's
-        a global variable, it does not show in this function in particular, but it's used in 'CalcAppearance'
-    }
+		PC's appearance is updated regularly in stat.qsrc.
+		Note: A huge part of PC's appearance is from base appearance, which is updated once a day. Because it's
+		a global variable, it does not show in this function in particular, but it's used in 'CalcAppearance'
+	}
 	if pcs_makeup = 6 and bimbolevel >= 2: extra_supnatvnesh = 2*bimbolevel - 2
 
 	clothingBonus = func('AppearanceSystem', 'CalcClothingBonus')
@@ -44,47 +44,32 @@ if $ARGS[0] = 'CalcFaceBonus':
 		eyelashesBonus = 0
 	elseif pcs_lashes = 1:
 		eyelashesBonus = 1
-	elseif pcs_lashes = 2:
-		eyelashesBonus = 3
-	elseif pcs_lashes = 3:
-		eyelashesBonus = 4
-	elseif pcs_lashes = 4:
-		eyelashesBonus = 5
-	elseif pcs_lashes = 5:
-		eyelashesBonus = 6
-	else
-		eyelashesBonus = 0
+	elseif pcs_lashes >= 2:
+		eyelashesBonus = pcs_lashes + 1
 	end
 	eyelashesBonus = FUNC('AppearanceSystem', 'AdjustFromBMI', eyelashesBonus)
 
 	!!	Setting Eye Size bonus
-	if pcs_eyesize = 1:
-		eyeSizeBonus = 1
+	if pcs_eyesize <= 1:
+		eyeSizeBonus = pcs_eyesize
 	elseif pcs_eyesize = 2:
 		eyeSizeBonus = 3
-	elseif pcs_eyesize = 3:
-		eyeSizeBonus = 2
 	else
-		eyeSizeBonus = 0
+		eyeSizeBonus = 2
 	end
 	eyeSizeBonus = FUNC('AppearanceSystem', 'AdjustFromBMI', eyeSizeBonus)
 
 	!!	Setting the Lip size bonus
-	if pcs_lip = 0:
+	if pcs_lip <= 0:
 		lipBonus = -2
-	elseif pcs_lip = 1:
-		lipBonus = 0
-	elseif pcs_lip = 2:
-		lipBonus = 1
-	elseif pcs_lip = 3:
-		lipBonus = 3
+	elseif pcs_lip <= 2:
+		lipBonus = pcs_lip - 1
 	else
 		lipBonus = 3
 	end
 	lipBonus = FUNC('AppearanceSystem', 'AdjustFromBMI', lipBonus)
 
 	result = eyelashesBonus + eyeSizeBonus + lipBonus
-
 end
 
 if $ARGS[0] = 'CalcAttributeBonus':
@@ -95,11 +80,7 @@ if $ARGS[0] = 'CalcAttributeBonus':
 end
 
 if $ARGS[0] = 'CalcVisibleAgePenalty':
-	if vidage < 20:
-		tempAttributePenalty =   func('shortgs','round_divide', (5*(20 - vidage)), 2)
-	else
-		tempAttributePenalty = 0
-	end
+	if vidage < 20: tempAttributePenalty = func('shortgs','round_divide', (5*(20 - vidage)), 2)
 
 	result = func('AppearanceSystem', 'AdjustFromBMI', tempAttributePenalty)
 	killvar 'tempAttributePenalty'
@@ -136,51 +117,47 @@ if $ARGS[0] = 'SetBodyShapeBonus':
 			result = 8
 		end
 
+	! Succubus gets maximum appearance bonus
+	elseif succubusflag > 0:
+		result = func('body_structure', 'appearance_bonus', 22, 90)
+
 	!!Setting the pcs_apprnc bonus based on fat and strength
 	else
-		tempBodyShapeBonus = func('body_structure', 'appearance_bonus')
+		result = func('body_structure', 'appearance_bonus')
 
 		!!This modifies bodykoef for high or low pcs_mass['body'] values
 		if pcs_mass['body'] < 8 or pcs_mass['body'] >= 98:
-			tempBodyShapeBonus -= 8
+			result -= 8
 		elseif pcs_mass['body'] < 23 or pcs_mass['body'] >= 83:
-			tempBodyShapeBonus -= 4
+			result -= 4
 		end
 
-		if bodyVars['vofat'] > 0: tempBodyShapeBonus -= bodyVars['vofat']
-
-		result = tempBodyShapeBonus
-
-		killvar 'tempBodyShapeBonus'
+		result -= max(0, bodyVars['vofat'])
 	end
 end
 
 if $ARGS[0] = 'CalcClothingBonus':
 	if $clothingworntype = 'nude':
-		if pcs_bmi >= 19 and pcs_bmi < 30:
+		if func('pcs_has_attr', 'OR', 'body_bmi_normal', 'body_bmi_overweight'):
 			! Healthy and overweight
-			tempRevealing = 405
-			PCloQuality = 3
+			result = 15
 		else
-			tempRevealing = 0
-			PCloQuality = 1
+			result = 0
 		end
 	else
-		if pcs_bmi < 19:
+		if func('pcs_has_attr', 'OR', 'body_bmi_starving', 'body_bmi_underweight'):
 			!Skinny and severely skinny
-			tempRevealing = ((400 - PXCloThinness) + (500 - PXCloTopCut) + (400 - PXCloBottomShortness))/2
-		elseif pcs_bmi >= 19 and pcs_bmi < 30:
+			tempRevealing = ((400 - PXCloThinness) + (500 - PXCloTopCut) + (400 - PXCloBottomShortness)) / 2
+		elseif func('pcs_has_attr', 'OR', 'body_bmi_normal', 'body_bmi_overweight'):
 			!Healthy and overweight
 			tempRevealing = (PXCloThinness + PXCloTopCut + PXCloBottomShortness)/2
-		elseif pcs_bmi >= 30:
+		else
 			!Moderately overweight and above
-			tempRevealing = ((400 - PXCloThinness) + (500 - PXCloTopCut) + (400 - PXCloBottomShortness)) * 3/4
+			tempRevealing = ((400 - PXCloThinness) + (500 - PXCloTopCut) + (400 - PXCloBottomShortness)) * 3 / 4
 		end
+		result = tempRevealing / 76 * PCloQuality
+		killvar 'tempRevealing'
 	end
-
-	result = tempRevealing/ 76 * PCloQuality
-	killvar 'tempRevealing'
-
 end
 
 if $ARGS[0] = 'CalcAccessoriesBonus':
@@ -188,24 +165,20 @@ if $ARGS[0] = 'CalcAccessoriesBonus':
 	shoesQualityBonus = ARGS[2] & !! PShoQuality
 
 	!!bonuses for certain underwear
-	if PanQuality = 6:
-		pantyBonus = 4
-	elseif PanQuality = 5:
-		pantyBonus = 3
-	elseif PanQuality >= 3:
-		pantyBonus = 2
-	else
-		pantyBonus = PanQuality - 1
+	if $pantyworntype ! 'none':
+		if PanQuality => 4:
+			pantyBonus = PanQuality - 2
+		else
+			pantyBonus = PanQuality - 1
+		end
 	end
 
-	if BraQuality = 6:
-		braBonus = 4
-	elseif BraQuality = 5:
-		braBonus = 3
-	elseif BraQuality >= 3:
-		braBonus = 2
-	else
-		braBonus = BraQuality - 1
+	if $braworntype ! 'none':
+		if BraQuality => 4:
+			braBonus = BraQuality - 2
+		else
+			braBonus = BraQuality - 1
+		end
 	end
 
 	result = coatQualityBonus + shoesQualityBonus + pantyBonus + braBonus
@@ -230,23 +203,18 @@ if $ARGS[0] = 'CalcGroomingBonus':
 	!result = tempGroomingBonus
 	result = func('AppearanceSystem', 'AdjustFromBMI', tempGroomingBonus)
 
+	killvar 'tempGroomingBonus'
+	killvar 'breathBonus'
+	killvar 'makeupBonus'
 end
 
 if $ARGS[0] = 'CalcGroomingPenalty':
-	if pcs_lipbalm > 0:
-		lipBalmPenalty = 0
-	else
-		lipBalmPenalty = 5
-	end
+	if pcs_lipbalm <= 0: lipBalmPenalty = 5
 
 	hairPenalty = (1 - pcs_hairbsh) * 10
 
 	!! buzzcut penalty to pcs_apprnc
-	if pcs_hairlng < 10:
-		buzzCutPenalty = 10
-	else
-		buzzCutPenalty = 0
-	end
+	if pcs_hairlng < 10: buzzCutPenalty = 10
 
 	!!Small penalty for not wearing deodorant, if pcs_sweat is low enough
 	if deodorant_on = 0 or pcs_sweat >= 20: deodorantPenalty = 5
@@ -262,11 +230,7 @@ if $ARGS[0] = 'CalcGroomingPenalty':
 	end
 
 	!Glasses Penalty
-	if glass >= 2 or glass = 0:
-		glassesPenalty = 0
-	elseif glass = 1:
-		glassesPenalty = 10
-	end
+	if glass = 1: glassesPenalty = 10
 
 	!hair color fade penalty
 	if pcs_haircol ! nathcol:
@@ -275,15 +239,7 @@ if $ARGS[0] = 'CalcGroomingPenalty':
 	end
 
 	! Leg hair penalty
-	if pcs_leghair <= 0:
-		legPenalty = 0
-	elseif pcs_leghair <= 3:
-		legPenalty = 3
-	elseif pcs_leghair <= 6:
-		legPenalty = 6
-	else
-		legPenalty = 9
-	end
+	legPenalty = max(0, min(3 * (pcs_leghair / 3), 9))
 
 	result = sweatPenalty + glassesPenalty + hairDyePenalty + buzzCutPenalty + legPenalty + lipBalmPenalty + hairPenalty + deodorantPenalty
 
@@ -303,12 +259,11 @@ if $ARGS[0] = 'CalcAppearance':
 
 	temp_apprnc = pcs_apprncbase + clothingBonus + accessoriesBonus + groomingBonus - groomingPenalty
 
-	if temp_apprnc >= 200: temp_apprnc = 200
-	if temp_apprnc < 0: temp_apprnc = 0
-
 	!Any super natural bonuses are allowed to go above the max scale
-	result = temp_apprnc + superNaturalBonus
+	result = max(0, min(temp_apprnc, 200)) + superNaturalBonus
 
+	killvar 'temp_apprnc'
+	killvar 'superNaturalBonus'
 end
 
 if $ARGS[0] = 'ConvertToHotcat':
@@ -338,33 +293,36 @@ end
 if $ARGS[0] = 'AdjustFromBMI':
 	tempValue = ARGS[1] & !!value to be adjusted
 
-	if pcs_bmi < 16:
+	temp_bs_class = func('body_structure', 'get_class')
+	if temp_bs_class < 100:
 		!! severely underweight
-		tempValue = tempValue * 50 / 100
-    elseif pcs_bmi < 19:
+		result = tempValue * 50 / 100
+	elseif temp_bs_class < 200:
 		!! underweight
-		tempValue = tempValue * 95 / 100
-    elseif pcs_bmi < 25:
+		result = tempValue * 95 / 100
+	elseif temp_bs_class < 400:
 		!! healthy weight
 		!! normal bonus
-    elseif pcs_bmi < 30:
+		result = tempValue
+	elseif temp_bs_class < 500:
 		!! overweight
-		tempValue = tempValue * 95 / 100
-    elseif pcs_bmi < 35:
+		result = tempValue * 95 / 100
+	elseif temp_bs_class < 600:
 		!! moderately obese
-		tempValue = tempValue * 80 / 100
-    elseif pcs_bmi < 40:
+		result = tempValue * 80 / 100
+	elseif temp_bs_class < 700:
 		!! severely obese
-		tempValue = tempValue * 55 / 100
-    elseif pcs_bmi < 45:
+		result = tempValue * 55 / 100
+	elseif temp_bs_class < 800:
 		!! very severely obese
-		tempValue = tempValue * 50 / 100
-    else
+		result = tempValue * 50 / 100
+	else
 		!!morbidly obese
-		tempValue = tempValue * 40 / 100
-    end
+		result = tempValue * 40 / 100
+	end
 
-	result = tempValue
 	killvar 'tempValue'
+	killvar 'temp_bs_class'
 end
+
 --- AppearanceSystem ---------------------------------

+ 96 - 136
locations/Cheatmenu_din.qsrc

@@ -1,7 +1,10 @@
 # Cheatmenu_din
 if settingmode = 0: settingmode = 69
 menu_off = 1
-cls
+$cheatmenu['table_start'] = '<center><table width="80%" cellspacing="0" cellpadding="20" valign="top"><tr><td width="500" cellspacing="0" cellpadding="20" valign="top">'
+$cheatmenu['table_second'] = '</td><td width="500" cellspacing="0" cellpadding="20" valign="top">'
+$cheatmenu['table_end'] = '</td></tr></table></center>'
+cla & *clr
 
 $cheatmenu['empty'] = {
 	!Yes, intentionally empty, do not remove it
@@ -23,14 +26,13 @@ $cheatmenu['music'] = {
 }
 
 $cheatmenu['setting'] = {
-	cls
+	cla & *clr
 	$cheatmenu['this_menu'] = 'setting'
 	$BACKIMAGE = ''
 	if $theme['name'] = 'Custom': gs 'themes', 'check_custom_vars' & gs 'themes', 'set_custom' & gs '$menu_obnovit'
 	gs 'obj_din', 'settingtabs'
 	'<center><h1>Gameplay Settings</h1></center>'
-	'<center><table cellspacing="0" cellpadding="20" valign="top"><tr>'
-	'<td cellspacing="0" cellpadding="20" valign="top">'
+	$cheatmenu['table_start']
 
 	'AutoSave: <a href="exec:									disable_autosave					= iif(disable_autosave, 0, 1)					& dynamic $cheatmenu[$cheatmenu[''this_menu'']]"><<iif(disable_autosave						, ''Disabled'', ''Enabled'')>></a>'
 	'Music: <a href="exec:												dynamic $cheatmenu[''music'']												& dynamic $cheatmenu[$cheatmenu[''this_menu'']]"><<iif(music_on								, ''Enabled'', ''Disabled'')>></a>'
@@ -51,7 +53,6 @@ $cheatmenu['setting'] = {
 	*nl
 	'Renaming porn movies you star in: <a href="exec:			cheatVars[''rename_porn'']			= iif(cheatVars[''rename_porn''], 0, 1)			& dynamic $cheatmenu[$cheatmenu[''this_menu'']]"><<iif(cheatVars[''rename_porn'']			, ''Enabled'', ''Disabled'')>></a>'
 	'Remove "once a week" therapist limit: <a href="exec:		cheatVars[''therapist_schedule'']	= iif(cheatVars[''therapist_schedule''], 0, 1)	& dynamic $cheatmenu[$cheatmenu[''this_menu'']]"><<iif(cheatVars[''therapist_schedule'']	, ''Enabled'', ''Disabled'')>></a>'
-	if blackmailQW['stage'] ! 0:	'Purge the "Blackmailer" questline: <a href="exec:		gs ''blackmailer'', ''purge_all'' & dynamic $cheatmenu[$cheatmenu[''this_menu'']]">Permanently reset the entire questline!</a>'
 	*nl
 
 	'<B>Difficulty Setting</B>'
@@ -66,7 +67,7 @@ $cheatmenu['setting'] = {
 	'<li>set to ' + iif($temp_diff = 'hardcore', 'hardcore', '<a href="exec:		FUNC(''_difficulty'',''setdifficulty'',''hardcore'')		& dynamic $cheatmenu[$cheatmenu[''this_menu'']]">hardcore</a>') + '</li>'
 	'</ul>'
 	killvar '$temp_diff'
-	'</tr></table></b></center>'
+	$cheatmenu['table_end']
 }
 
 !!----------------------------------------------------------------------------------------------------------------------------
@@ -79,7 +80,7 @@ $cheatmenu['quicktime'] = {
 	gs 'outdoors', 'weather'
 	gs 'stat'
 	gs 'fertility', 'cum_arrcheat'
-	cls
+	cla & *clr
 }
 
 $cheatmenu['dynamic'] = {
@@ -91,7 +92,7 @@ $cheatmenu['dynamic'] = {
 
 $cheatmenu['vartracker'] = {
 	gs'stat'
-	cls
+	cla & *clr
 	act 'Return to cheat index': dynamic $cheatmenu['index']
 	'<center><h1>Cheat menu</h1></center>'
 	'<center>For testing purposes.<br>If reporting a bug only the lines in red are neccessary.</center>'
@@ -233,11 +234,10 @@ $cheatmenu['index'] = {
 	currhour = (daystart-1) * 24 + hour
 	currday = daystart
 	temp_week = week & temp_day = day & $temp_month = $month & temp_month = month & temp_year = year & temp_hour = hour & temp_minut = minut
-	cls
+	cla & *clr
 	gs 'obj_din', 'cheattabs'
 	'<center><h1>Cheat Menu - Index</h1></center>'
-	'<center><table cellspacing="0" cellpadding="20" valign="top"><tr>'
-	'<td width="50%" cellspacing="0" cellpadding="20" valign="top">'
+	$cheatmenu['table_start']
 	'<a href="exec:dynamic $cheatmenu[''dynamic'']">Dynamic Input Command</a>'
 	'<a href="exec:gs ''fertility'',''cum_arrcheat''">OOX Debug</a>'
 	'Right now <<$week[week]>> <<$month>> <<day>> <<year>> <<hour>>:<<minut>>'
@@ -253,9 +253,10 @@ $cheatmenu['index'] = {
 	*nl
 	'Hide Console input in objects window: <a href="exec:		cheatVars[''console'']		= iif(cheatVars[''console''], 0, 1)		& dynamic $cheatmenu[$cheatmenu[''this_menu'']]"><<iif(cheatVars[''console'']		, ''Enabled'', ''Disabled'')>></a>'
 	'Time Cheat in Objects window: <a href="exec:				cheatVars[''time'']			= iif(cheatVars[''time''], 0, 1)		& dynamic $cheatmenu[$cheatmenu[''this_menu'']]"><<iif(cheatVars[''time'']			, ''Enabled'', ''Disabled'')>></a>'
+	if blackmailQW['stage'] ! 0: 'Purge the "Blackmailer" questline: <a href="exec: gs ''blackmailer'', ''purge_all'' & dynamic $cheatmenu[$cheatmenu[''this_menu'']]">Permanently reset the entire questline!</a>'
 	*nl
 	'<a href="exec:dynamic $cheatmenu[''vartracker'']"><b>Variable tracker</b></a>'
-	'</tr></table></b></center>'
+	$cheatmenu['table_end']
 }
 
 !!----------------------------------------------------------------------------------------------------------------------------
@@ -363,14 +364,13 @@ $cheatmenu['slutshot'] = {
 
 $cheatmenu['permanent'] = {
 	gs'stat'
-	cls
+	cla & *clr
 	gs 'obj_din', 'cheattabs'
 	$cheatmenu['this_menu'] = 'permanent'
 
 	'<center><h1>Cheat Menu - Recurrent Cheats</h1></center>'
 	'<center><font color="red"><b>WARNING!</b></font>: Disabling states may cause some events not to trigger. Use at your own risk!</center>'
-	'<center><table cellspacing="0" cellpadding="20" valign="top"><tr>'
-	'<td width="90%" cellspacing="0" cellpadding="20" valign="top">'
+	$cheatmenu['table_start']
 
 	'Willpower cost always zero: <a href="exec:					cheatVars[''willpower'']			= iif(cheatVars[''willpower''], 0, 1)				& dynamic $cheatmenu[$cheatmenu[''this_menu'']]"><<iif(cheatVars[''willpower'']				, ''Enabled'', ''Disabled'')>></a>'
 	'Infinite willpower: <a href="exec:							cheatVars[''inf_willpower'']		= iif(cheatVars[''inf_willpower''], 0, 1)			& dynamic $cheatmenu[$cheatmenu[''this_menu'']]"><<iif(cheatVars[''inf_willpower'']			, ''Enabled'', ''Disabled'')>></a>'
@@ -417,7 +417,7 @@ $cheatmenu['permanent'] = {
 
 	*nl
 	'<font color="red"><b>WARNING!</b></font>: Disabling states may cause some events not to trigger. Use at your own risk!'
-	'</tr></table></b></center>'
+	$cheatmenu['table_end']
 }
 
 !!----------------------------------------------------------------------------------------------------------------------------
@@ -444,7 +444,7 @@ $cheatmenu['therapist_reset'] = {
 }
 
 $cheatmenu['cycle'] = {
-	cls
+	cla & *clr
 	if cycle ! 5:
 		EggRH = 0
 		LutH = 0
@@ -520,14 +520,13 @@ $cheatmenu['remove_preg'] = {
 
 $cheatmenu['state'] = {
 	gs'stat'
-	cls
+	cla & *clr
 	gs 'obj_din', 'cheattabs'
 
 	'<center><h1>Cheat Menu - Character State Changes</h1></center>'
 	'<center><font color="red"><b>WARNING!</b></font>: Using cheats can cause bugs and break your save. Cheats manipulating pregnancy or the menstrual cycle are'
 	'especially dangerous unless you know what you''re doing. When reporting bugs, please mention any cheats you used.</center>'
-	'<center><table cellspacing="0" cellpadding="20" valign="top"><tr>'
-	'<td width="50%" cellspacing="0" cellpadding="20" valign="top">'
+	$cheatmenu['table_start']
 	'Set alcohol levels:'
 	'<a href="exec:alko = 0 & dynamic $cheatmenu[''state''] & gs ''stat''">Sober</a> <a href="exec:alko = 2 & dynamic $cheatmenu[''state''] & gs ''stat''">Tipsy</a> <a href="exec:alko = 4 & dynamic $cheatmenu[''state''] & gs ''stat''">Drunk</a> <a href="exec:alko = 7 & dynamic $cheatmenu[''state''] & gs ''stat''">Wasted</a> <a href="exec:alko = 11 & dynamic $cheatmenu[''state''] & gs ''stat''">Barely coherent</a>'
 	*nl
@@ -574,10 +573,10 @@ $cheatmenu['state'] = {
 			'Lactate Rate: <a href="exec:lactation[''lactaterate''] -= 10000 & dynamic $cheatmenu[''state'']">-10</a> <<lactation[''lactaterate'']/1000>>ml/h'
 		else
 			'Lactate Rate: <a href="exec:lactation[''lactaterate''] -= 10000 & dynamic $cheatmenu[''state'']">-10</a> <<lactation[''lactaterate'']/1000>>ml/h <a href="exec:lactation[''lactaterate''] += 10000 & dynamic $cheatmenu[''state'']">+10</a>'
-			'Cap Lactate Rate: ' + _ 
-			iif(lactation['milkprod_type'] = 0 and lactation['caplactaterate'] > 0,'<a href="exec:lactation[''caplactaterate''] -= 2 & dynamic $cheatmenu[''state'']">-2h</a> ','') + _ 
-			iif(lactation['milkprod_type'] = 1 and lactation['caplactaterate'] > 4,'<a href="exec:lactation[''caplactaterate''] -= 2 & dynamic $cheatmenu[''state'']">-2h</a> ','') + _ 
-			iif(lactation['caplactaterate'] > 0,'<<lactation[''caplactaterate'']>>h ','OFF ') + _ 
+			'Cap Lactate Rate: ' + _
+			iif(lactation['milkprod_type'] = 0 and lactation['caplactaterate'] > 0,'<a href="exec:lactation[''caplactaterate''] -= 2 & dynamic $cheatmenu[''state'']">-2h</a> ','') + _
+			iif(lactation['milkprod_type'] = 1 and lactation['caplactaterate'] > 4,'<a href="exec:lactation[''caplactaterate''] -= 2 & dynamic $cheatmenu[''state'']">-2h</a> ','') + _
+			iif(lactation['caplactaterate'] > 0,'<<lactation[''caplactaterate'']>>h ','OFF ') + _
 			iif(lactation['caplactaterate'] < 72,'<a href="exec:lactation[''caplactaterate''] += 2 & dynamic $cheatmenu[''state'']">+2h</a>','')
 			'<font color="grey">Cap lactate rate makes lactate rate stop growing if <<$pcs_firstname>> needs milking more often.</font>'
 		end
@@ -593,7 +592,7 @@ $cheatmenu['state'] = {
 	end
 	*nl
 	'<a href="exec:dynamic $cheatmenu[''therapist_reset'']">Reset therapist states</a>'
-	'</tr></table></b></center>'
+	$cheatmenu['table_end']
 }
 
 $cheatmenu['set_preg_body'] = {
@@ -613,12 +612,11 @@ $cheatmenu['set_body_class'] = {
 }
 
 $cheatmenu['bodyMod'] = {
-	cls
+	cla & *clr
 	act 'Return to last menu': dynamic $cheatmenu['state']
 
 	'<center><h1>Cheat Menu - Body Modification</h1></center>'
-	'<center><table cellspacing="0" cellpadding="20" valign="top"><tr>'
-	'<td width="50%" cellspacing="0" cellpadding="20" valign="top">'
+	$cheatmenu['table_start']
 	'<center><b><font color="red">WARNING!</font></b></center>'
 	'Changing body shape does not resize clothes.'
 	'May cause adverse interactions, use at your own risk!'
@@ -699,7 +697,7 @@ $cheatmenu['bodyMod'] = {
 		killvar 'bs_temp_bs_class'
 	end
 
-	'</tr></table></b></center>'
+	$cheatmenu['table_end']
 }
 
 !!----------------------------------------------------------------------------------------------------------------------------
@@ -776,13 +774,12 @@ $cheatmenu['looks'] = {
 		pcs_hgt = 200
 	end
 	gs'stat'
-	cls
+	cla & *clr
 	gs 'obj_din', 'cheattabs'
 	'<center><h1>Cheat Menu - Character Appearance</h1></center>'
 	'<center><font color="red"><b>WARNING!</b></font>: Using cheats can cause bugs and break your save, use them with care. When reporting bugs, please mention any cheats you used.</center>'
 	*nl
-	'<center><table  width="90%" cellspacing="0" cellpadding="0" valign="top">'
-	'<tr><td width="33%" cellpadding="20" valign="top">'
+	$cheatmenu['table_start']
 	'<<$pcs_firstname>> <<$pcs_lastname>> (<<$pcs_nickname>>). <a href="exec:dynamic $cheatmenu[''rename'']">Rename</a>'
 
 
@@ -833,9 +830,9 @@ $cheatmenu['looks'] = {
 		$pcs_butt[1] = 'bubble'
 	end
 	'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 pcs_butt < 50: '<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'] < 50: '<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>'
@@ -860,7 +857,7 @@ $cheatmenu['looks'] = {
 		'<a href="exec:dounsplkil = 2 & gs ''body'', ''hardreset''">Hard Reset body shape</a>'
 	end
 
-	'</td><td width="33%" cellpadding="20" valign="top">'
+	*nl
 	'<<$pcs_vag>>'
 	if pcs_vag > 0:'<a href="exec:pcs_vag = 0 & dynamic $cheatmenu[''looks'']">Reinstate virginity</a>'
 	if stat['think_virgin'] < 1:'<a href="exec:stat[''vaginal''] = 0 & stat[''vaginal_fist''] = 0 & stat[''vaginal_dildo''] = 0 & stat[''vaginal_strap''] = 0 & dynamic $cheatmenu[''looks'']">Make Sveta believe she is a virgin again (resets the related sex stats)</a>'
@@ -894,8 +891,7 @@ $cheatmenu['looks'] = {
 	end
 	*nl
 	'<a href="exec:dynamic $cheatmenu[''tatoo'']">Tattoo removal</a>'
-
-	'</td><td width="33%" cellpadding="20" valign="top">'
+	*nl
 	'<<$hair>>'
 	if pcs_haircol = 0:
 		'Your hair is now (prev) <<$pcs_haircol>> <a href="exec:pcs_haircol +=1 & dynamic $cheatmenu[''looks''] & nathcol = pcs_haircol">(next)</a>'
@@ -934,7 +930,7 @@ $cheatmenu['looks'] = {
 	elseif pcs_eyecol >= 3:
 		'Your eyes are now <a href="exec:pcs_eyecol -=1 & dynamic $cheatmenu[''looks'']">(prev)</a> <<$pcs_eyecol>> (next)'
 	end
-	'</td></tr></table></center>'
+	$cheatmenu['table_end']
 }
 
 $cheatmenu['change_avatar_path'] = {
@@ -949,7 +945,6 @@ $cheatmenu['change_avatar_path'] = {
 
 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
 
@@ -1028,7 +1023,7 @@ if $ARGS[0] = 'assreduce':
 end
 
 if $ARGS[0] = 'vneshpara':
-	cls
+	cla & *clr
 	'<center><h1>Cheat Menu - ?</h1></center>'
 	act 'Return to appearance menu':dynamic $cheatmenu['looks']
 	*nl
@@ -1074,7 +1069,7 @@ if $ARGS[0] = 'vneshpara':
 end
 
 if $ARGS[0] = 'parameters':
-	cls
+	cla & *clr
 	'<center><h1>Cheat Menu - Appearance Stats</h1></center>'
 	act 'Return to appearance menu':dynamic $cheatmenu['looks']
 	*nl
@@ -1106,15 +1101,12 @@ if $ARGS[0] = 'parameters':
 	'bodyVars[''bratio''] = <<bodyVars[''bratio'']>>'
 	'bodyVars[''hratio''] = <<bodyVars[''hratio'']>>'
 	'bodyVars[''vofat''] = <<bodyVars[''vofat'']>>'
-	'salocatnow = <<salocatnow>>'
-	'salocatlast = <<salocatlast>>'
 	'magf2bdo = <<magf2bdo>>'
 	'mgf2bnocnt = <<mgf2bnocnt>>'
 	'magtarcup = <<magtarcup>>'
 	'normbuffpick = <<normbuffpick>>'
 	'nrmbfpckct = <<nrmbfpckct>>'
 	'bodyVars[''weight_warning''] = <<bodyVars[''weight_warning'']>>'
-	'salolast = <<salolast>>'
 end
 
 !!----------------------------------------------------------------------------------------------------------------------------
@@ -1123,7 +1115,7 @@ end
 
 $cheatmenu['tatoo'] = {
 	gs'stat'
-	cls
+	cla & *clr
 	'<center><h1>Cheat Menu - Tattoos</h1></center>'
 	act 'Return to appearance menu':dynamic $cheatmenu['looks']
 	*nl
@@ -1247,38 +1239,13 @@ $cheatmenu['printStatLinksInverted'] = {
 
 $cheatmenu['stats'] = {
 	gs 'stat'
-	cls
+	cla & *clr
 	gs 'obj_din', 'cheattabs'
 
-	!Set a floor and ceiling for all attributes and skills
-	loop_index = 0
-	:attr_trim_loop
-		dynamic "
-			if <<$att_name[loop_index]>>_lvl < 0: <<$att_name[loop_index]>>_lvl = 0
-			if <<$att_name[loop_index]>>_lvlst < 0: <<$att_name[loop_index]>>_lvlst = 0
-			if <<$att_name[loop_index]>>_lvl > 100: <<$att_name[loop_index]>>_lvl = 100
-			if <<$att_name[loop_index]>>_lvlst > 100: <<$att_name[loop_index]>>_lvlst = 100
-		"
-		loop_index += 1
-		if loop_index < arrsize('$att_name'): jump 'attr_trim_loop'
-
-	loop_index = 0
-	:skill_trim_loop
-		dynamic "
-			if <<$skl_name[loop_index]>>_lvl < 0: <<$skl_name[loop_index]>>_lvl = 0
-			if <<$skl_name[loop_index]>>_lvlst < 0: <<$skl_name[loop_index]>>_lvlst = 0
-			if <<$skl_name[loop_index]>>_lvl > 100: <<$skl_name[loop_index]>>_lvl = 100
-			if <<$skl_name[loop_index]>>_lvlst > 100: <<$skl_name[loop_index]>>_lvlst = 100
-		"
-		loop_index += 1
-		if loop_index < arrsize('$skl_name'): jump 'skill_trim_loop'
-	killvar 'loop_index'
-
 	'<center><h1>Cheat Menu - Attributes and Skills</h1></center>'
 	'<center><font color="red"><b>WARNING!</b></font>: Using cheats can cause bugs and break your save, use them with care. When reporting bugs, please mention any cheats you used.</center>'
 	*nl
-	'<center><table  width="90%" cellspacing="0" cellpadding="0" valign="top">'
-	'<tr><td width="50%" cellpadding="10" valign="top">'
+	$cheatmenu['table_start']
 	*pl'<b>Attributes</b> (values 0 - 100):'
 	*pl '<a href="exec:dynamic $cheatmenu[''setAttrs''], 100" >Max Attributes</a>    <a href="exec:dynamic $cheatmenu[''setAttrs''], 0" >Min Attributes</a>'
 	*p 'Strength (<<stren_lvl>>): ' & dynamic $cheatmenu['printStatLinks'], 'stren', 'Strength'
@@ -1335,7 +1302,7 @@ $cheatmenu['stats'] = {
 	*p 'Pool (<<pool_lvl>>) - Total (<<pcs_pool>>): ' & dynamic $cheatmenu['printStatLinks'], 'pool', 'Pool'
 	*p 'Heels (<<pcs_heels>>) - Total (<<pcs_heels>>): ' & dynamic $cheatmenu['printStatLinks'], 'heels', 'Heels'
 	if $start_type[1] ! 'nomagic': *p 'Spell Casting (<<splcstng_lvl>>) - Total (<<pcs_splcstng>>): ' & dynamic $cheatmenu['printStatLinks'], 'splcstng', 'Spellcasting'
-	'</td><td width="50%" cellpadding="10" valign="top">'
+	*nl
 	*pl'<b>Combat:</b>'
 	*p 'Jabs (<<jab_lvl>>)- Total (<<pcs_jab>>): ' & dynamic $cheatmenu['printStatLinks'], 'jab', 'Jabs'
 	*p 'Power Strikes (<<punch_lvl>>) - Total (<<pcs_punch>>): ' & dynamic $cheatmenu['printStatLinks'], 'punch', 'Power Strikes'
@@ -1371,7 +1338,7 @@ $cheatmenu['stats'] = {
 	*p 'Modeling (<<mdlng_lvl>>) - Total (<<pcs_mdlng>>): ' & dynamic $cheatmenu['printStatLinks'], 'mdlng', 'Modeling'
 	*p 'Medicine (<<medcn_lvl>>) - Total (<<pcs_medcn>>): ' & dynamic $cheatmenu['printStatLinks'], 'medcn', 'Medicine'
 	*p 'Cleaning (<<cleaning_lvl>>) - Total (<<pcs_cleaning>>): ' & dynamic $cheatmenu['printStatLinks'], 'cleaning', 'Cleaning'
-	'</tr></table></b></center>'
+	$cheatmenu['table_end']
 }
 
 !!----------------------------------------------------------------------------------------------------------------------------
@@ -1380,13 +1347,12 @@ $cheatmenu['stats'] = {
 
 $cheatmenu['reputation'] = {
 	gs'stat'
-	cls
+	cla & *clr
 	gs 'obj_din', 'cheattabs'
 	'<center><h1>Cheat Menu - Relationships and Renown</h1></center>'
 	'<center>Relationship values are from 0 - 100.</center>'
 	'<center>If they exceed this limit they will be reset overnight.</center>'
-	'<center><table  width="90%" cellspacing="0" cellpadding="0" valign="top">'
-	'<tr><td width="50%" cellpadding="10" valign="top">'
+	$cheatmenu['table_start']
 	*nl
 	'Relationships in Pavlovsk'
 	*nl
@@ -1525,11 +1491,7 @@ $cheatmenu['reputation'] = {
 			'<<$npc_firstname[''A138'']>> <<$npc_lastname[''A138'']>>: <<npc_rel[''A138'']>>  <a href="exec:npc_rel[''A138''] += 10 & dynamic $cheatmenu[''reputation'']">+10</a> <a href="exec:npc_rel[''A138''] -= 10 & dynamic $cheatmenu[''reputation'']">-10</a>'
 		end
 	end
-	*nl
-	'<font color="blue"><b>Nicholas'' Family</b></font>'
-	'<a href="exec:gt ''nichUtil'', ''debug''">Storyline Debug Menu</a>'
-	'</td><td width="50%" cellpadding="10" valign="top">'
-	*nl
+	$cheatmenu['table_second']
 	'Miscellaneous relationships'
 	*nl
 	'<font color="blue"><b>Others</b></font>'
@@ -1585,6 +1547,9 @@ $cheatmenu['reputation'] = {
 			'Martin: <<npc_rel[''A216'']>>	<a href="exec:npc_rel[''A216''] += 10 & dynamic $cheatmenu[''reputation'']">+10</a> <a href="exec:npc_rel[''A216''] -= 10 & dynamic $cheatmenu[''reputation'']">-10</a>'
 		end
 	end
+	*nl
+	'<font color="blue"><b>Nicholas'' Family</b></font>'
+	'<a href="exec:gt ''nichUtil'', ''debug''">Storyline Debug Menu</a>'
 
 	if pcs_lovers[0] = 1:
 		*nl
@@ -1675,7 +1640,7 @@ $cheatmenu['reputation'] = {
 			'You''ve been expelled from school. <a href="exec:SchoolBlock = 0 & schoolPredupr = 0 & schoolprogul = 0 & pcs_grades = 50 & dynamic $cheatmenu[''reputation'']">Clear</a>.'
 		end
 	end
-	'</td></tr></table></center>'
+	$cheatmenu['table_end']
 }
 
 !!----------------------------------------------------------------------------------------------------------------------------
@@ -1684,12 +1649,10 @@ $cheatmenu['reputation'] = {
 
 $cheatmenu['documents'] = {
 	gs'stat'
-	cls
+	cla & *clr
 	gs 'obj_din', 'cheattabs'
 	'<center><h1>Cheat Menu - Diplomas, Licences, and Certificates</h1></center>'
-	'<center><table cellspacing="0" cellpadding="20" valign="top"><tr>'
-	'<td width="33%" cellspacing="0" cellpadding="20" valign="top">'
-	'<td width="50%" cellspacing="0" cellpadding="20" valign="top">'
+	$cheatmenu['table_start']
 	if SchoolAtestat = 0: '<a href="exec:SchoolAtestat = 1 & dynamic $cheatmenu[''documents'']">Get School Certificate</a>'
 	if mid($start_type,1,2) = 'sg' and SchoolAtestat = 0: '<font color="red"><b>WARNING!</b></font>: This will end your school year!' & *nl
 	if SchoolAtestat = 1:'Already have a School Certificate'
@@ -1704,7 +1667,7 @@ $cheatmenu['documents'] = {
 	if masseuse['certification'] >= 10:'You already have a Masseuse Certificate'
 	if prava = 0:'<a href="exec:prava = 1 & dynamic $cheatmenu[''documents'']">Get Driving Licence</a>'
 	if prava = 1:'You already have Driving Licence'
-	'</td></tr></table></center>'
+	$cheatmenu['table_end']
 }
 
 !!----------------------------------------------------------------------------------------------------------------------------
@@ -1722,7 +1685,7 @@ $cheatmenu['input_time'] = {
 
 $cheatmenu['week'] = {
 	gs'stat'
-	cls
+	cla & *clr
 	'<center><a href="exec:dynamic $cheatmenu[''index'']"><b>Cheat menu</b></a> - <a href="exec:dynamic $cheatmenu[''time'']"><b>Time</b></a></center>'
 	*nl
 	'Current time: <b><<day>></b>. day of <b><<$month>></b>, <b><<year>></b>, <<$tempcurtime>>'
@@ -1739,7 +1702,7 @@ $cheatmenu['week'] = {
 
 $cheatmenu['month'] = {
 	gs'stat'
-	cls
+	cla & *clr
 	'<center><a href="exec:dynamic $cheatmenu[''index'']"><b>Cheat menu</b></a> - <a href="exec:dynamic $cheatmenu[''time'']"><b>Time</b></a></center>'
 	*nl
 	'Current time: <b><<day>></b>. day of <b><<$month>></b>, <b><<year>></b>, <<$tempcurtime>>'
@@ -1809,13 +1772,12 @@ $cheatmenu['time'] = {
 		:femcycloop
 		if femcycloop > 0:gs 'femcyc' & femcycloop -= 1 & jump 'femcycloop'
 	end
-	cls
+	cla & *clr
 	gs 'obj_din', 'cheattabs'
 	'<center><h1>Cheat Menu - Manipulate Time and Weather</h1></center>'
 	'<center><font color="red"><b>WARNING!</b></font>: Using cheats to manipulate time can <b>easily</b> break quests and cause bugs. Do not use them unless'
 	'you know what you''re doing. When reporting bugs, please mention any cheats you used.</center>'
-	'<center><table cellspacing="0" cellpadding="20" valign="top"><tr>'
-	'<td width="50%" cellspacing="0" cellpadding="20" valign="top">'
+	$cheatmenu['table_start']
 	if temp_minut > 9:
 		if temp_hour > 9: $temptime = '<b><<temp_hour>>:<<temp_minut>></b>' else $temptime = '<b>0<<temp_hour>>:<<temp_minut>></b>'
 	else
@@ -1883,7 +1845,7 @@ $cheatmenu['time'] = {
 	*nl
 	'<a href="exec:day = temp_day & $month = $temp_month & month = temp_month & year = temp_year & hour = temp_hour & minut = temp_minut & currtimecheck = 1 & dynamic $cheatmenu[''time'']">Accept target date & time</a>'
 	'<a href="exec:temp_day = day & $temp_month = $month & temp_month = month & temp_year = year & temp_hour = hour & temp_minut = minut & dynamic $cheatmenu[''time'']">Reset target date & time</a>'
-	'</td></tr></table></center>'
+	$cheatmenu['table_end']
 }
 
 !!----------------------------------------------------------------------------------------------------------------------------
@@ -1983,7 +1945,7 @@ $cheatmenu['sucresetdo'] = {
 }
 
 $cheatmenu['succubreset'] = {
-	cls
+	cla & *clr
 	'Are you sure you want to reset your Succubus status? You will lose all levels, saved power, and succubus skill levels.'
 	*nl
 	'<a href="exec:dynamic $cheatmenu[''magic'']"><b>No, nevermind.</b></a>'
@@ -1993,9 +1955,10 @@ $cheatmenu['succubreset'] = {
 
 $cheatmenu['magic'] = {
 	gs'stat'
-	cls
+	cla & *clr
 	gs 'obj_din', 'cheattabs'
 	'<center><h1>Cheat Menu - Magic</h1></center>'
+	$cheatmenu['table_start']
 	'<center>Is magical: <a href="exec:pcs_magik += 1 & dynamic $cheatmenu[''magic'']">+1<<pcs_magik>></a></center>'
 	if succubusflag = 1:
 		'<center><a href="exec:dynamic $cheatmenu[''succubreset'']"><b>Remove & Reset Succubus status</b></a></center>'
@@ -2035,6 +1998,7 @@ $cheatmenu['magic'] = {
 
 	*pl func('cleanHTML',$SpellListStr)
 
+	$cheatmenu['table_end']
 	killvar 'i'
 	killvar '$ThisLocation'
 	killvar '$spellFlipper'
@@ -2047,10 +2011,10 @@ $cheatmenu['magic'] = {
 !!----------------------------------------------------------------------------------------------------------------------------
 
 $cheatmenu['display'] = {
-	cls
+	cla & *clr
 	gs 'obj_din', 'settingtabs'
 	'<center><h1>Display Setting</h1></center>'
-	*p '<center><table cellspacing="0" cellpadding="20" valign="top"><tr><td cellspacing="0" cellpadding="20" valign="top">'
+	$cheatmenu['table_start']
 	if usePopUps = 1:
 		'Allow Popup Pictures: Currently ON - <a href="exec:usePopUps = 0 & dynamic $cheatmenu[''display'']">Turn OFF</a>'
 	else
@@ -2103,7 +2067,7 @@ $cheatmenu['display'] = {
 	if Enable_Android = 1:
 		'Set Fontsize for Status: Unsupported'
 		'Android Mode:Currently ON - <a href="exec:Enable_Android = 0 & dynamic $cheatmenu[''display'']">Turn OFF</a>'
-		! 'click <a href="exec:cls & FUNC (''$menu_obnovit'')">refresh</a> to refresh status window.'
+		! 'click <a href="exec:cla & *clr & FUNC (''$menu_obnovit'')">refresh</a> to refresh status window.'
 		'click <B>refresh</B> on top of status window to renew.'
 	else
 		'Android Mode: Currently OFF - <a href="exec:Enable_Android = 1 & dynamic $cheatmenu[''display'']">Turn ON</a>'
@@ -2114,7 +2078,7 @@ $cheatmenu['display'] = {
 	else
 		'Show Debug window on save load: Currently ON - <a href="exec:loadg_show_debug = 0 & debug_warning_closed = 1 & showobjs 0 & dynamic $cheatmenu[''display'']">Turn OFF</a>'
 	end
-	*p '</td></tr></table></center>'
+	$cheatmenu['table_end']
 }
 
 $cheatmenu['theme_customize_input'] = {
@@ -2250,14 +2214,14 @@ $cheatmenu['theme_presets_copy'] = {
 	custom_theme['table_bg'] = theme['table_bg']
 	custom_theme['table_bg_alt'] = theme['table_bg_alt']
 
-	$custom_theme['is_dark'] = str(theme['is_dark'])
+	custom_theme['is_dark'] = theme['is_dark']
 
 	gs 'themes', 'set_custom'
 	dynamic $cheatmenu['theme_customize']
 }
 
 $cheatmenu['theme_export'] = {
-	cls
+	cla & *clr
 	act 'Return': dynamic $cheatmenu['theme_customize']
 	"$custom_theme['fname'] = '<<$custom_theme['fname']>>'"
 	"custom_theme['fsize'] = <<custom_theme['fsize']>>"
@@ -2269,7 +2233,7 @@ $cheatmenu['theme_export'] = {
 	"custom_theme['table_bg'] = <<custom_theme['table_bg']>>"
 	"custom_theme['table_bg_alt'] = <<custom_theme['table_bg_alt']>>"
 	""
-	"$custom_theme['is_dark'] = '<<$custom_theme['is_dark']>>'"
+	"custom_theme['is_dark'] = <<custom_theme['is_dark']>>"
 }
 
 $cheatmenu['theme_presets'] = {
@@ -2357,10 +2321,10 @@ $cheatmenu['theme_customize'] = {
 	!!  --- DARK MODE ---
 	*nl
 	*p 'Dark Mode&nbsp;'
-	if $custom_theme['is_dark'] = '0':
-		*pl '<a href="exec: $custom_theme[''is_dark''] = ''1'' & dynamic $cheatmenu[''theme_customize'']"><img src="images/system/ui/box<<$icon_selector>>.png" height="<<icon_height>>"></img></a>'
+	if custom_theme['is_dark'] = 0:
+		*pl '<a href="exec: custom_theme[''is_dark''] = 1 & dynamic $cheatmenu[''theme_customize'']"><img src="images/system/ui/box<<$icon_selector>>.png" height="<<icon_height>>"></img></a>'
 	else
-		*pl '<a href="exec: $custom_theme[''is_dark''] = ''0'' & dynamic $cheatmenu[''theme_customize'']"><img src="images/system/ui/check<<$icon_selector>>.png" height="<<icon_height>>"></img></a>'
+		*pl '<a href="exec: custom_theme[''is_dark''] = 0 & dynamic $cheatmenu[''theme_customize'']"><img src="images/system/ui/check<<$icon_selector>>.png" height="<<icon_height>>"></img></a>'
 	end
 
 	!!  --- INCREMENT ---
@@ -2377,7 +2341,7 @@ $cheatmenu['theme_customize'] = {
 	!!  --- LOREM IPSUM ---
 	$icon_selector = iif(theme['is_dark'] = 0, '_b', '_w')
 	icon_height = fsize * 15 / 10
-	*p '<td width="50%" cellspacing="0" cellpadding="20" valign="top">'
+	*p '<td width="500" cellspacing="0" cellpadding="20" valign="top">'
 
 	*p '"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."'
 
@@ -2423,11 +2387,10 @@ $cheatmenu['theme_customize'] = {
 
 $cheatmenu['status'] = {
 	gs 'stat'
-	cls
+	cla & *clr
 	gs 'obj_din', 'settingtabs'
 	'<center><h1>Status Window Settings</h1></center>'
-	'<center><table cellspacing="0" cellpadding="20" valign="top"><tr>'
-	'<td cellspacing="0" cellpadding="20" valign="top">'
+	$cheatmenu['table_start']
 	if disable_LoadSave = 0:
 		'Save/Load Buttons: Currently Image - <a href="exec:disable_LoadSave = 2 & dynamic $cheatmenu[''status''] & gs ''stat''">Select Text</a>'
 	elseif disable_LoadSave = 1:
@@ -2564,7 +2527,7 @@ $cheatmenu['status'] = {
 	end
 
 	!<a href="exec:gs ''Cheatmenu_din'' & dynamic $cheatmenu[''status''] & gs ''stat''"><img src="images/system/phone/theme/<<$phonetheme_name[pcs_phonetheme]>>/icon_settings.png"></a>
-	'</tr></table></b></center>'
+	$cheatmenu['table_end']
 }
 
 !!----------------------------------------------------------------------------------------------------------------------------
@@ -2572,10 +2535,10 @@ $cheatmenu['status'] = {
 !!----------------------------------------------------------------------------------------------------------------------------
 
 $cheatmenu['theme'] = {
-	cls
+	cla & *clr
 	gs 'obj_din', 'settingtabs'
 	'<center><h1>Phone Theme Menu</h1></center>'
-	'<center><table width="90%" cellspacing="0" cellpadding="20" valign="top"><tr>'
+	$cheatmenu['table_start']
 	*nl
 	if pcs_phonetheme = 0: $phoneNameTemp = 'Standard'
 	if pcs_phonetheme = 1: $phoneNameTemp = 'Bimbo'
@@ -2617,7 +2580,7 @@ $cheatmenu['theme'] = {
 	elseif i <= ARRSIZE('phonetheme') and i > 12 and i <= 15:
 		jump 'phonethemeloop'
 	end
-	'</tr></table></b></center>'
+	$cheatmenu['table_end']
 }
 
 !!----------------------------------------------------------------------------------------------------------------------------
@@ -2661,13 +2624,12 @@ $cheatmenu['pain'] = {
 	if pain['clitoris'] < 0: pain['clitoris'] = 0
 	if pain['urethra'] < 0: pain['urethra'] = 0
 	if pain['cervix'] < 0: pain['cervix'] = 0
-	cls
+	cla & *clr
 	gs 'obj_din', 'cheattabs'
 	'<center><h1>Cheat Menu - Pain Management</h1></center>'
 	'<center><a href="exec:killvar ''pain'' & dynamic $cheatmenu[''pain'']">No pain</a></center>'
 	*nl
-	'<center><table  width="90%" cellspacing="0" cellpadding="0" valign="top">'
-	'<tr><td width="50%" cellpadding="10" valign="top">'
+	$cheatmenu['table_start']
 	'pain[head] = <<pain[''head'']>> <a href="exec:pain[''head''] -= 10 & dynamic $cheatmenu[''pain'']">-10</a> <a href="exec:pain[''head''] += 10 & dynamic $cheatmenu[''pain'']">+10</a>'
 	'pain[hair] = <<pain[''hair'']>> <a href="exec:pain[''hair''] -= 10 & dynamic $cheatmenu[''pain'']">-10</a> <a href="exec:pain[''hair''] += 10 & dynamic $cheatmenu[''pain'']">+10</a>'
 	'pain[ears] = <<pain[''ears'']>> <a href="exec:pain[''ears''] -= 10 & dynamic $cheatmenu[''pain'']">-10</a> <a href="exec:pain[''ears''] += 10 & dynamic $cheatmenu[''pain'']">+10</a>'
@@ -2687,7 +2649,7 @@ $cheatmenu['pain'] = {
 	'pain[thighs] = <<pain[''thighs'']>> <a href="exec:pain[''thighs''] -= 10 & dynamic $cheatmenu[''pain'']">-10</a> <a href="exec:pain[''thighs''] += 10 & dynamic $cheatmenu[''pain'']">+10</a>'
 	'pain[left leg] = <<pain[''legL'']>> <a href="exec:pain[''legL''] -= 10 & dynamic $cheatmenu[''pain'']">-10</a> <a href="exec:pain[''legL''] += 10 & dynamic $cheatmenu[''pain'']">+10</a>'
 	'pain[right leg] = <<pain[''legR'']>> <a href="exec:pain[''legR''] -= 10 & dynamic $cheatmenu[''pain'']">-10</a> <a href="exec:pain[''legR''] += 10 & dynamic $cheatmenu[''pain'']">+10</a>'
-	'</td><td width="50%" cellpadding="10" valign="top">'
+	$cheatmenu['table_second']
 	'pain[feet] = <<pain[''feet'']>> <a href="exec:pain[''feet''] -= 10 & dynamic $cheatmenu[''pain'']">-10</a> <a href="exec:pain[''feet''] += 10 & dynamic $cheatmenu[''pain'']">+10</a>'
 	'pain[toes] = <<pain[''toes'']>> <a href="exec:pain[''toes''] -= 10 & dynamic $cheatmenu[''pain'']">-10</a> <a href="exec:pain[''toes''] += 10 & dynamic $cheatmenu[''pain'']">+10</a>'
 	'pain[shoulders] = <<pain[''shoulders'']>> <a href="exec:pain[''shoulders''] -= 10 & dynamic $cheatmenu[''pain'']">-10</a> <a href="exec:pain[''shoulders''] += 10 & dynamic $cheatmenu[''pain'']">+10</a>'
@@ -2706,7 +2668,7 @@ $cheatmenu['pain'] = {
 	'pain[clitoris] = <<pain[''clitoris'']>> <a href="exec:pain[''clitoris''] -= 10 & dynamic $cheatmenu[''pain'']">-10</a> <a href="exec:pain[''clitoris''] += 10 & dynamic $cheatmenu[''pain'']">+10</a>'
 	'pain[urethra] = <<pain[''urethra'']>> <a href="exec:pain[''urethra''] -= 10 & dynamic $cheatmenu[''pain'']">-10</a> <a href="exec:pain[''urethra''] += 10 & dynamic $cheatmenu[''pain'']">+10</a>'
 	'pain[cervix] = <<pain[''cervix'']>> <a href="exec:pain[''cervix''] -= 10 & dynamic $cheatmenu[''pain'']">-10</a> <a href="exec:pain[''cervix''] += 10 & dynamic $cheatmenu[''pain'']">+10</a>'
-	'</td></tr></table></center>'
+	$cheatmenu['table_end']
 	*nl
 	'You may still have pain from gaping or having been spanked, you can clear these using "Cure all ailments." in "Cheat Menu - Character State Changes"'
 	'You currently have vaginal gaping of <<vgape>>'
@@ -2740,11 +2702,10 @@ $cheatmenu['DNAC'] = {
 }
 
 $cheatmenu['DNA'] = {
-	cls
+	cla & *clr
 	gs 'obj_din', 'cheattabs'
 	'<center><h1>Cheat Menu - DNA Generation</h1></center>'
-	'<center><table width="90%" cellspacing="0" cellpadding="20" valign="top"><tr>'
-	'<td cellspacing="0" cellpadding="20" valign="top">'
+	$cheatmenu['table_start']
 	'<center>DNA string generation<br>If parents are not in game, leave the respective IDs empty</center>'
 	*nl
 	if $cheatDNAC ! '':
@@ -2917,7 +2878,7 @@ $cheatmenu['DNA'] = {
 	killvar '$tempDNAM'
 	killvar '$tempDNAC'
 	killvar 'cheatDNAgenerated'
-	'</td></tr></table></center>'
+	$cheatmenu['table_end']
 }
 
 !!----------------------------------------------------------------------------------------------------------------------------
@@ -2925,7 +2886,7 @@ $cheatmenu['DNA'] = {
 !!----------------------------------------------------------------------------------------------------------------------------
 
 $cheatmenu['fame'] = {
-	cls
+	cla & *clr
 	gs 'obj_din', 'cheattabs'
 	'<center><h1>Cheat Menu - Fame</h1></center>'
 	$table['fame'] = '<center><table width="90%" cellspacing="0" cellpadding="5" valign="top" border="1">'
@@ -3074,7 +3035,7 @@ $cheatmenu['bdimcstaddpro'] = {
 }
 
 $cheatmenu['bdimcstadd'] = {
-	cls
+	cla & *clr
 	'<center><b>Body Image Set Addition</b></center>'
 	'<a href="exec:killvar ''klsetask'' & dynamic $cheatmenu[''bdimmain'']"><b>Go Back</b></a>'
 	*nl
@@ -3100,7 +3061,7 @@ $cheatmenu['bdimcstdesed'] = {
 
 $cheatmenu['bdimdisplay'] = {
 	gs 'stat'
-	cls
+	cla & *clr
 	'<center><h1>Cheat menu</h1></center>'
 	*nl
 	'<center><b>Body Image Set Display</b></center>'
@@ -3201,7 +3162,7 @@ $cheatmenu['bdimdisplay'] = {
 }
 
 $cheatmenu['bdimcstdel'] = {
-	cls
+	cla & *clr
 	'<center><b>Body Image Set Removal</b></center>'
 	'<a href="exec:killvar ''klsetask'' & dynamic $cheatmenu[''bdimdisplay'']"><b>Go Back</b></a>'
 	*nl
@@ -3255,11 +3216,10 @@ $cheatmenu['bdimcstdel'] = {
 
 $cheatmenu['bdimmain'] = {
 	gs 'stat'
-	cls
+	cla & *clr
 	gs 'obj_din', 'cheattabs'
 	'<center><h1>Cheat Menu - Body Image Sets</h1></center>'
-	'<center><table cellspacing="0" cellpadding="20" valign="top"><tr>'
-	'<td width="50%" cellspacing="0" cellpadding="20" valign="top">'
+	$cheatmenu['table_start']
 	'<center><b>Body Image Controls</b></center>'
 	*nl
 	'You are currently using set: <<$bodimgsets[((bodset * 10) + 9)]>>'
@@ -3321,7 +3281,7 @@ $cheatmenu['bdimmain'] = {
 		'<a href="exec:dynamic $cheatmenu[''bdimcstadd'']"><b>Add new set</b></a>'
 		*nl
 	end
-	'</td></tr></table></center>'
+	$cheatmenu['table_end']
 }
 
 !!----------------------------------------------------------------------------------------------------------------------------
@@ -3330,17 +3290,17 @@ $cheatmenu['bdimmain'] = {
 
 $cheatmenu['about'] = {
 	gs 'stat'
-	cls
+	cla & *clr
 	gs 'obj_din', 'settingtabs'
 	gs 'saveg'
 	gs 'addbuilddate'
 	'<center><h1>About Window</h1></center>'
-	'<center><table cellspacing="0" cellpadding="20" valign="top">'
+	$cheatmenu['table_start']
 	'<tr><td><h3><center>Girl Life version <<version_major+"."+version_minor+"."+version_revision+"."+version_patch+iif($git_hash ! "", "<br>"+$git_hash+" (dev build)", "")>></center></h3></td></tr>'
 	'<tr><td><h3><center>built on <<$builddate>></center></h3></td></tr>'
 	'<tr><td><h5><center>if loaded so it was the save from</center></h5></td></tr>'
 	'<tr><td cellspacing="0" cellpadding="20" valign="top"><center><<$version>></center></td></tr>'
-	'</table></center>'
+	$cheatmenu['table_end']
 	killvar '$tmp'
 }
 
@@ -3350,7 +3310,7 @@ $cheatmenu['about'] = {
 
 $cheatmenu['items'] = {
 	gs'stat'
-	cls
+	cla & *clr
 	gs 'obj_din', 'cheattabs'
 	'<center><h1>Cheat Menu - Items</h1></center>'
 
@@ -3368,7 +3328,7 @@ $cheatmenu['items'] = {
 		*pl 'Antibiotics: <a href="exec:mc_inventory[''antibiotics'']=input(''Set number'') & dynamic $cheatmenu[''items'']"><b> <<mc_inventory[''antibiotics'']>> </b></a>'
 		*pl 'Vitamins: <a href="exec:mc_inventory[''vitamins'']=input(''Set number'') & dynamic $cheatmenu[''items'']"><b> <<mc_inventory[''vitamins'']>> </b></a>'
 		*pl 'Painkillers: <a href="exec:mc_inventory[''painkillers'']=input(''Set number'') & dynamic $cheatmenu[''items'']"><b> <<mc_inventory[''painkillers'']>> </b></a>'
-		*pl 'Ointments for chafing: <a href="exec:mc_inventory[''chaffing_cream'']=input(''Set number'') & dynamic $cheatmenu[''items'']"><b> <<mc_inventory[''chaffing_cream'']>> </b></a>'
+		*pl 'Ointments for chafing: <a href="exec:mc_inventory[''chafing_cream'']=input(''Set number'') & dynamic $cheatmenu[''items'']"><b> <<mc_inventory[''chafing_cream'']>> </b></a>'
 		*pl 'Lubricants: <a href="exec:mc_inventory[''lubricant'']=input(''Set number'') & dynamic $cheatmenu[''items'']"><b> <<mc_inventory[''lubricant'']>> </b></a>'
 		*pl 'Lip balms: <a href="exec:mc_inventory[''lipbalm'']=input(''Set number'') & dynamic $cheatmenu[''items'']"><b> <<mc_inventory[''lipbalm'']>> </b></a>'
 		*pl 'Weight loss pill: <a href="exec:mc_inventory[''weight_loss_pill'']=input(''Set number'') & dynamic $cheatmenu[''items'']"><b> <<mc_inventory[''weight_loss_pill'']>> </b></a>'

+ 5 - 10
locations/Cum_Manage.qsrc

@@ -713,20 +713,15 @@ if $ARGS[0] = 'cum_stat_display':
 			$icon_txtloc = $txtloc
 		elseif i = 11:
 			if pcs_haircol = 0:
-				$cum_face_image = 'brown/'
-				$cum_face_image += rand(1,31)
+				$cum_face_image = 'brown/<<rand(1,31)>>'
 			elseif pcs_haircol = 1:
-				$cum_face_image = 'black/'
-				$cum_face_image += rand(1,23)
+				$cum_face_image = 'black/<<rand(1,23)>>'
 			elseif pcs_haircol = 2:
-				$cum_face_image = 'red/'
-				$cum_face_image += rand(1,19)
+				$cum_face_image = 'red/<<rand(1,19)>>'
 			elseif pcs_haircol = 3:
-				$cum_face_image = 'blonde/'
-				$cum_face_image += rand(1,25)
+				$cum_face_image = 'blonde/<<rand(1,25)>>'
 			elseif pcs_haircol > 3:
-				$cum_face_image = 'custom/'
-				$cum_face_image += rand(1,20)
+				$cum_face_image = 'custom/<<rand(1,20)>>'
 			end
 			$txtloc_adj = 'across '
 			$icon_txtloc = 'your face'

+ 10 - 10
locations/FedorEv2.qsrc

@@ -109,7 +109,7 @@ if $ARGS[0] = 'Train Tracks':
 		gs 'arousal', 'end'	
 		gs 'stat'			
 
-		act 'Walk home with Fedor': gt 'pav_residential'	
+		act 'Walk home with Fedor': gs 'homes_properties', 'go_straight_home'	
 	end	
 	act 'Offer him your hand':
 		*clr & cla
@@ -120,7 +120,7 @@ if $ARGS[0] = 'Train Tracks':
 		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/fedor/fedorev/park/nokiss.jpg"></center>'
 		'You think to yourself "This is going too fast." so you offer Fedor your hand. He is a little surprised at first but kisses your hand nonetheless. Fedor lowers your hand as he releases it and after a few moments of silence you notice a Fedor''s posture lowers as he turns away from you "It''s starting to get late, we should probably get going before your parents start to worry about you." He says, with a meek smile as he takes your hand and walks you home.'
 			
-		act 'Walk home with Fedor': gt 'pav_residential'
+		act 'Walk home with Fedor': gs 'homes_properties', 'go_straight_home'
 	end	
 end	
 
@@ -311,7 +311,7 @@ if $ARGS[0] = 'Movie 4':
 		gs 'arousal', 'end'	
 		gs 'stat'			
 
-		act 'Go Home': gt 'korrPar'
+		act 'Go Home': gs 'homes_properties', 'go_straight_home'
 	end
 	
 	act 'Say goodbye and leave':
@@ -322,7 +322,7 @@ if $ARGS[0] = 'Movie 4':
 		'<center><video autoplay loop src="images/characters/pavlovsk/school/boy/fedor/fedorev/movies/endbye.mp4"></video></center>'
 		'You put your index finger on his lips. "Sorry but I just re-applied my lipstick." and then you back up into your apartment as you say, "Bye" Fedor then tilts his head downward and looks noticeably upset as you close the door.'
 
-		act 'Go Home': gt 'korrPar'
+		act 'Go Home': gs 'homes_properties', 'go_straight_home'
 	end
 end	
 	
@@ -364,7 +364,7 @@ if $ARGS[0] = 'Home':
 				'<center><video autoplay loop src="images/characters/pavlovsk/school/boy/fedor/fedorev/movies/endbye.mp4"></video></center>'
 				'You tell Fedor that you need to go and he wraps his arms around you, giving you a warm hug as he replies, "I understand, maybe next time." and he walks you home. Fedor fetches your coat and walks you out the door. When you arrive at your apartment, you give Fedor a soft kiss on the cheek. "Until next time." as you give him a wink and close the door.'
 								
-				act 'Go home': gt 'korrPar'
+				act 'Go home': gs 'homes_properties', 'go_straight_home'
 			end
 			
 			act 'How can I say no to that? <b><h4><font color=#ff00cc>[Go steady]</font></h4></b>':
@@ -609,7 +609,7 @@ if $ARGS[0] = 'Wash Up':
 			gs 'arousal', 'end'	
 			gs 'stat'
 				
-			act 'Go home': gt 'korrPar'
+			act 'Go home': gs 'homes_properties', 'go_straight_home'
 		end	
 	end	
 end
@@ -700,7 +700,7 @@ if $ARGS[0] = 'Skate Kiss':
 	gs 'arousal', 'end'	
 	gs 'stat'		
 	
-	act 'Walk home with Fedor': gt 'korrPar'
+	act 'Walk home with Fedor': gs 'homes_properties', 'go_straight_home'
 	
 	act 'I''ll be fine on my own': gt 'pav_residential'
 end
@@ -714,7 +714,7 @@ if $ARGS[0] = 'Skate End':
 	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/fedor/fedorev2/park/Skate/skate5.jpg"></center>'
 	'You and Fedor decide that you''ve had enough skating for today, so you both sit down on a nearby bench and discuss your favorite subjects in school, along with past experiences. After a few minutes of chatting Fedor says, "I had a great time with you <<$pcs_firstname>>. Would you like me to walk you home or will you be fine on your own?"'
 	
-	act 'Walk home with Fedor': gt 'korrPar'
+	act 'Walk home with Fedor': gs 'homes_properties', 'go_straight_home'
 	
 	act 'I''ll be fine on my own': gt 'pav_residential'
 end
@@ -1031,7 +1031,7 @@ if $ARGS[0] = 'Park End':
 	menu_off = 1
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/fedor/fedorev2/park/walk2.jpg"></center>'
-	'Fedor takes you by the hand then leads you to your apartment while you both chat about various things. When you arrive at your apartment, Fedor spins you around then gives you a passionate kiss as he pushes you against the wall for a more passionate kiss, before pulling off you and giving you a wink as he turns away and walks off.'
+	'Fedor takes you by the hand then leads you home, while you both chat about various things. When you arrive at your place, Fedor spins you around then gives you a passionate kiss as he pushes you against the wall for a more passionate kiss, before pulling off you and giving you a wink as he turns away and walks off.'
 	*nl	
 	'<center><video autoplay loop src="images/characters/pavlovsk/school/boy/fedor/fedorev2/endkiss.mp4"></video></center>'
 	gs 'boyStat', 'A5'
@@ -1039,7 +1039,7 @@ if $ARGS[0] = 'Park End':
 	gs 'arousal', 'end'	
 	gs 'stat'		
 	
-	act 'Leave': gt 'korrPar'
+	act 'Leave': gs 'homes_properties', 'go_straight_home'
 end		
 
 if $ARGS[0] = 'Fedor Breakup':

+ 2 - 2
locations/FedorEv4.qsrc

@@ -724,7 +724,7 @@ if $ARGS[0] = 'End Date 2':
 	*nl
 	'<center><video autoplay loop src="images/characters/pavlovsk/school/boy/fedor/fedorev2/endkiss.mp4"></video></center>'
 
-	act 'Walk home':gt 'korrPar'
+	act 'Walk home': gs 'homes_properties', 'go_straight_home'
 end
 
 if $ARGS[0] = 'TV':
@@ -1406,7 +1406,7 @@ if $ARGS[0] = 'Dimka Aftermath':
 	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/fedor/fedormisc/console2.jpg"></center>'
 	'You approach Fedor, he stands up and hugs you. "I''m so sorry about not getting there in time. I can''t believe I was so careless and it was you that paid the price." You give Fedor an innocent smile as you place your hand on his cheek and say, "It''s alright Fyodor. He used to make me do things far worst than that." Fedor clenches his fists as he responds, "That fucking coward will never harm you again. I will make sure that he learns his place from now on."'
 	*nl
-	'You give Fedor a soft kiss. "I know that I will always be safe with you." Fedor looks into your eyes. "I will always love you <<$pcs_firstname>>." You reply, "And I, you, Fyodor" then you both share a long passionate kiss.'
+	'You give Fedor a soft kiss. "I know that I will always be safe with you." Fedor looks into your eyes. "I will always love you <<$pcs_firstname>>." You reply, "And I, you, Fedor" then you both share a long passionate kiss.'
 	*nl
 	'<center><video autoplay loop src="images/characters/pavlovsk/school/boy/fedor/fedorev/kiss2.mp4"></video></center>'
 

+ 14 - 12
locations/HotelRoom.qsrc

@@ -1,5 +1,7 @@
 # HotelRoom
 
+if hotelRoomDays[$region] = 0 and hour > 11: hotelRoom[$region] = 0
+if hotelRoomDays[$region] < 0: hotelRoom[$region] = 0
 CLOSE ALL
 if $ARGS[0] = 'normal':
 	*clr & cla
@@ -17,7 +19,7 @@ if $ARGS[0] = 'normal':
 	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/hotel.room.normal.jpg"></center>'
 	'Your hotel room is not very large, but it has everything you need and is quite stylish. The large <a href="exec:gt ''bed''">double bed</a> takes up most of the room. A modern <a href="exec:gt ''wardrobe'', ''start''">wardrobe</a> (where you can choose outfits and organize your clothing) stands near the entrance of the room. Next to the door, you can find a <a href="exec:gt ''mirror'',''start''">mirror</a>. The door to the <a href="exec:gt ''hotelroom'',''shower1''">bathroom</a> is to the right.'
 	'Your hotel room also has a <a href="exec:gt ''HotelRoom'',''tv''">TV</a>' + iif(mc_inventory['tech_computer'] = 1, ' and your <a href="exec: gt ''Komp'',''start''">computer</a> is on the desk. The hotel offers all guests free Wi-Fi.', '.')
-	
+
 	if $ml_guitar['location'] = $loc: 'Your guitar rests on its stand next to your bed.'
 	gs 'music_actions', 'start'
 
@@ -55,7 +57,7 @@ if $ARGS[0] = 'better':
 	menu_off = 0
 	hotelWiFi = 1
 	gs 'themes', 'indoors'
-	gs 'stat'	
+	gs 'stat'
 	gs 'internet_mobile', 'get_access', 'free'
 	gs 'music_actions', 'clear_restrictions'
 
@@ -64,10 +66,10 @@ if $ARGS[0] = 'better':
 	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/hotel.room.better.jpg"></center>'
 	'Your hotel room is not very large, but it has everything you need and is quite stylish. The large <a href="exec:gt ''bed''">double bed</a> takes up most of the room. A modern <a href="exec:gt ''wardrobe'', ''start''">wardrobe</a> (where you can choose outfits and organize your clothing) stands near the entrance of the room. Next to the door, you can find a <a href="exec:gt ''mirror'',''start''">mirror</a>. The door to the <a href="exec:gt ''hotelroom'',''shower1''">bathroom</a> is to the right.'
 	'Your hotel room also has a small flat-screen <a href="exec:gt ''HotelRoom'',''tv''">TV</a>'+iif(mc_inventory['tech_computer'] = 1, ' and your <a href="exec: gt ''Komp'',''start''">computer</a> is on the desk. The hotel offers all guests free Wi-Fi.', '.')
-	
+
 	if $ml_guitar['location'] = $loc: 'Your guitar rests on its stand next to your bed.'
 	gs 'music_actions', 'start'
-	
+
 	act'Go to the hotel lobby':
 		if $clothingworntype ! 'nude':
 			hotelWiFi = 0
@@ -101,7 +103,7 @@ if $ARGS[0] = 'best':
 	menu_off = 0
 	hotelWiFi = 1
 	gs 'themes', 'indoors'
-	gs 'stat'	
+	gs 'stat'
 	gs 'internet_mobile', 'get_access', 'free'
 	gs 'music_actions', 'clear_restrictions'
 
@@ -110,7 +112,7 @@ if $ARGS[0] = 'best':
 	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/hotel.room.best.jpg"></center>'
 	'Your hotel room is quite spacious, and is beautifully furnished. For a second, you wonder why a hotel in a town like Pavlovsk even has such a luxurious suite. The room is filled with expensive appliances. The gorgeous <a href="exec:gt ''bed''">double bed</a> takes up most of the room. A modern <a href="exec:gt ''wardrobe'', ''start''">wardrobe</a> (where you can choose outfits and organize your clothing) stands near the entrance of the room. Next to the door, you can find a <a href="exec:gt ''mirror'',''start''">mirror</a>. The door to the <a href="exec:gt ''hotelroom'',''shower1''">bathroom</a> is to the right.'
 	'Your hotel room also has a huge flat-screen <a href="exec:gt ''HotelRoom'',''tv''">TV</a>'+iif(mc_inventory['tech_computer'] = 1, ' and your <a href="exec: gt ''Komp'',''start''">computer</a> is on the desk. The hotel offers all guests free Wi-Fi.', '.')
-	
+
 	if $ml_guitar['location'] = $loc: 'Your guitar rests on its stand next to your bed.'
 	gs 'music_actions', 'start'
 
@@ -156,12 +158,12 @@ if $ARGS[0] = 'therapist':
 
 	'<center><b><font color = maroon>Your husband''s hotel room</font></b></center>'
 	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/therapist/room.jpg"></center>'
-	'Your hotel room is not very large, but it has everything you need and is quite stylish. The large <a href="exec:gt ''bed''">double bed</a> takes up most of the room. A modern <a href="exec:gt ''therapist_hotel'', ''wardrobe'', ''start''">wardrobe</a> (where you can choose outfits and organize your clothing) stands near the entrance of the room. Next to the door, you can find a <a href="exec:gt ''mirror'',''start''">mirror</a>. The door to the <a href="exec:gt ''hotelroom'',''shower1''">bathroom</a> is to the right.'
+	'Your hotel room is not very large, but it has everything you need and is quite stylish. The large <a href="exec:gt ''bed''">double bed</a> takes up most of the room. A modern <a href="exec:gt ''therapist_home'', ''wardrobe'', ''start''">wardrobe</a> (where you can choose outfits and organize your clothing) stands near the entrance of the room. Next to the door, you can find a <a href="exec:gt ''mirror'',''start''">mirror</a>. The door to the <a href="exec:gt ''hotelroom'',''shower1''">bathroom</a> is to the right.'
 	'Your hotel room also has a small flat-screen <a href="exec:gt ''HotelRoom'',''tv''">TV</a>'+iif(mc_inventory['tech_computer'] = 1, ' and your <a href="exec: gt ''Komp'',''start''">computer</a> is on the desk. The hotel offers all guests free Wi-Fi.', '.')
-	
+
 	if $ml_guitar['location'] = $loc: 'Your guitar rests on its stand next to your bed.'
 	gs 'music_actions', 'start'
-	
+
 	act 'Put on your clothes and go to the hotel lobby':
 		gs 'underwear', 'wear'
 		gs 'clothing', 'wear_last_worn'
@@ -184,7 +186,7 @@ if $ARGS[0] = 'therapist':
 	dynamic $fatdel
 	dynamic $lekarstvo
 	dynamic $vitamin
-	
+
 	gs 'therapist_home', 'set_Hotelacts'
 
 	if pcs_sweat >= 20 and locat['A186'] = 2:
@@ -203,7 +205,7 @@ if $ARGS[0] = 'shower1':
 	$location_type = 'bathroom'
 	gs 'themes', 'indoors'
 	gs 'stat'
-	
+
 	'<center><b><font color = maroon>The bathroom of your hotel room</font></b></center>'
 	if hotelRoom[$region] = 1:
 		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/hotel/hotel.room.normal1.jpg"></center>'
@@ -239,7 +241,7 @@ if $ARGS[0] = 'shower1':
 			end
 		end
 	end
-	
+
 	gs 'din_van', 'private', 'hotelroom', iif(hotelRoom[$region] = 1, '', 'bath')
 end
 

+ 1 - 1
locations/KGstart.qsrc

@@ -96,7 +96,7 @@ if KFOnLineReaga > 0:
 			cls
 			$KGOLname = input("Enter your nickname")
 
-			if $KGOLname <= 0:msg 'Not valid nickname' & gt $curloc
+			if $KGOLname = '': msg 'Not valid nickname' & gt $curloc
 
 			'Your nickname <<$KGOLname>>'
 			'You must select the player race'

+ 1 - 1
locations/MeynoldHome.qsrc

@@ -779,7 +779,7 @@ if $ARGS[0] = 'Natalia Park 2':
 	minut += 15
 	gs'stat'
 	'<center><b><h4><font color=#00eaff><<"Natalia [Nat] Pavlova">></font></h4></b></center>'
-	'<center><img <<$set_imgh>> src="images/characters/shared/photos/big240.jpg"></center>'
+	'<center><img <<$set_imgh>> src="images/characters/shared/headshots_main/big240.jpg"></center>'
 	'You, and Natalia continue chatting for a few minutes before Natalia looks at her phone then says, "Wow, I can''t believe it gotten so late. We should really get home." You both walk home. When you reach your door Natalia says, "Stay safe <<$pcs_firstname>>, and remember to follow your heart. Have a good night." You then wave goodbye to Natalia, as she walks away.'
 	
 	act 'Enter your apartment':gt 'korrPar'

+ 8 - 9
locations/NPCChanger.qsrc

@@ -61,19 +61,19 @@ end
 if $ARGS[0] = 'npcdisplay':
 	*nl 'NPC[A<<n>>] = '
 
-	if $npc_firstname['A<<n>>'] = 0:
-	*p ''
+	if isnum($npc_firstname['A<<n>>']):
+		*p ''
 	else
-	*p '<<$npc_firstname[''A<<n>>'']>>'
+		*p $npc_firstname['A<<n>>']
 	end
 
-	if $npc_firstname['A<<n>>'] = $npc_nickname['A<<n>>'] or $npc_nickname['A<<n>>'] = 0:
+	if $npc_firstname['A<<n>>'] = $npc_nickname['A<<n>>'] or isnum($npc_nickname['A<<n>>']):
 		*p''
 	else
 		*p ' "<<$npc_nickname[''A<<n>>'']>>"'
 	end
 
-	if $npc_lastname['a<<n>>'] = 0:
+	if isnum($npc_lastname['a<<n>>']):
 		*p ''
 	else
 		*p ' <<$npc_lastname[''A<<n>>'']>>'
@@ -81,10 +81,9 @@ if $ARGS[0] = 'npcdisplay':
 
 end
 if $ARGS[0] = 'selection':
-	s = input("Which NPC do you want to edit? Enter #")
-		!!cla
-		!!*clr
-	if s = '':
+	s = val(input("Which NPC do you want to edit? Enter #"))
+	!!*clr & cla
+	if s = 0:
 		n = (o - 10)
 		gt 'NPCChanger', 'NPCLoop'
 	else

+ 34 - 34
locations/RimmaSexQW.qsrc

@@ -7,7 +7,7 @@ gs 'stat'
 'You go over to Rima who smiles affably as she greets you.'
 '"Hi <<$pcs_nickname>>. My shift is almost over. Do you want to do something?"'
 
-act '"Sorry, I can''t right now"':gt 'moncheri', 'start'
+act '"Sorry, I can''t right now"':gt 'shop_moncheri', 'start'
 
 if money >= 250:
 	act '"Sure. How about we go to my place?"':
@@ -35,7 +35,7 @@ $rimmasexdi = {
 	if RimmaRandEvent = 23:
 		'<center><img <<$set_imgh>> src="mod/bestmod/images/beast/zoo/rimma14.jpg"></center>'
 		pcs_throat += 3
-		'Rima pulls a massive strap-on out of her purse and puts it on, and you feel a hint of fear mingled into your excitement, knowing that she''s going to fuck you with it. Wasting no time on ordering you around, she roughly pushes you down on your knees and slips it past your <<$pc_desc[''lips'']>> lips.' 
+		'Rima pulls a massive strap-on out of her purse and puts it on, and you feel a hint of fear mingled into your excitement, knowing that she''s going to fuck you with it. Wasting no time on ordering you around, she roughly pushes you down on your knees and slips it past your <<$pc_desc[''lips'']>> lips.'
 		'You instinctively start moving your tongue around its thick tip, her hand at the back of your head holding you in place as she guides it into your throat. Given its size, it doesn''t come as a surprise that your gag reflex starts acting up but you endure as best you can, covering it generously in saliva.'
 		gs 'arousal', 'bj', 10, 'sub', 'lesbian'
 		gs 'stat'
@@ -57,7 +57,7 @@ $rimmasexdi = {
 	elseif RimmaRandEvent = 22:
 		'<center><img <<$set_imgh>> src="mod/bestmod/images/beast/zoo/rimmabj.jpg"></center>'
 		pcs_throat += 3
-		'Rima pulled the strap-on out of her purse, followed by collar with a chain attached to it. At her order, you put on the collar and hand the chain to Rima who put on the strap-on while you were occupied. She roughly pushes you down on your knees and slips it past your <<$pc_desc[''lips'']>> lips.' 
+		'Rima pulled the strap-on out of her purse, followed by collar with a chain attached to it. At her order, you put on the collar and hand the chain to Rima who put on the strap-on while you were occupied. She roughly pushes you down on your knees and slips it past your <<$pc_desc[''lips'']>> lips.'
 		'You instinctively start moving your tongue around its thick tip, her hand at the back of your head holding you in place as she guides it into your throat. Given its size, it doesn''t come as a surprise that your gag reflex starts acting up but you endure as best you can, covering it generously in saliva.'
 		gs 'arousal', 'bj', 10, 'sub', 'lesbian'
 		gs 'stat'
@@ -79,13 +79,13 @@ $rimmasexdi = {
 	elseif RimmaRandEvent = 21:
 		'<center><img <<$set_imgh>> src="mod/bestmod/images/beast/zoo/rimma21.jpg"></center>'
 		gs 'arousal', 'pee', -5, 'sub', 'humiliation', 'lesbian'
-		'Rimma orders you to squat and gets over you, her legs spread wide. Your face an inch from her pussy, you suddenly feel something warm running over it: Without warning, Rima just started peeing on you! Shocked by this, you sit motionless until the jet subsides, the smell intense as the last droplets drip from your chin.' 
+		'Rimma orders you to squat and gets over you, her legs spread wide. Your face an inch from her pussy, you suddenly feel something warm running over it: Without warning, Rima just started peeing on you! Shocked by this, you sit motionless until the jet subsides, the smell intense as the last droplets drip from your chin.'
 		'When she''s done, Rima orders you to lick her clean and you comply without question.'
-		
+
 	elseif RimmaRandEvent = 20:
 		'<center><img <<$set_imgh>> src="mod/bestmod/images/beast/zoo/rimma14.jpg"></center>'
 		if pcs_throat < 25: pcs_throat += 3
-		'Rima pulls a massive strap-on out of her purse and puts it on, and you feel a hint of fear mingled into your excitement, knowing that she''s going to fuck you with it. Wasting no time on ordering you around, she roughly pushes you down on your knees and slips it past your <<$pc_desc[''lips'']>> lips.' 
+		'Rima pulls a massive strap-on out of her purse and puts it on, and you feel a hint of fear mingled into your excitement, knowing that she''s going to fuck you with it. Wasting no time on ordering you around, she roughly pushes you down on your knees and slips it past your <<$pc_desc[''lips'']>> lips.'
 		'You instinctively start moving your tongue around its thick tip, her hand at the back of your head holding you in place as she guides it into your throat. Given its size, it doesn''t come as a surprise that your gag reflex starts acting up but you endure as best you can, covering it generously in saliva.'
 		gs 'arousal', 'bj', 10, 'sub', 'lesbian'
 		gs 'stat'
@@ -94,7 +94,7 @@ $rimmasexdi = {
 			if pcs_ass < 25: pcs_ass += 1
 			gs 'stat'
 			'<center><img <<$set_imgh>> src="mod/bestmod/images/beast/zoo/rimma20.jpg"></center>'
-			'Rima bends you over and her strap-on enters your ass sans additional lubrication. The friction and fullness are intense but you are also suddenly aware that your bladder is not only full but feels like it''s about to burst.' 
+			'Rima bends you over and her strap-on enters your ass sans additional lubrication. The friction and fullness are intense but you are also suddenly aware that your bladder is not only full but feels like it''s about to burst.'
 			'As Rima fucks you, you tighten the muscles in your lower body to try and keep control of your urethra but all you do is make the stimulation by her that much more intense. When you come, and you come very quickly, the orgasm deprives you of all control and you feel your own piss running down your leg. Rima chuckles but doesn''t stop, driving the strap-on even harder into you, sending you right over the edge again, your shame and sudden relaxation fueling your second climax.'
 			$orgasm_or = 'yes'
 			gs 'arousal', 'anal_strap', 20, 'lesbian', 'sub'
@@ -107,7 +107,7 @@ $rimmasexdi = {
 	elseif RimmaRandEvent = 19:
 		'<center><img <<$set_imgh>> src="mod/bestmod/images/beast/zoo/rimmabj.jpg"></center>'
 		pcs_throat += 3
-		'Rima pulled the strap-on out of her purse, followed by collar with a chain attached to it. At her order, you put on the collar and hand the chain to Rima who put on the strap-on while you were occupied. She roughly pushes you down on your knees and slips it past your <<$pc_desc[''lips'']>> lips.' 
+		'Rima pulled the strap-on out of her purse, followed by collar with a chain attached to it. At her order, you put on the collar and hand the chain to Rima who put on the strap-on while you were occupied. She roughly pushes you down on your knees and slips it past your <<$pc_desc[''lips'']>> lips.'
 		'You instinctively start moving your tongue around its thick tip, her hand at the back of your head holding you in place as she guides it into your throat. Given its size, it doesn''t come as a surprise that your gag reflex starts acting up but you endure as best you can, covering it generously in saliva.'
 		gs 'arousal', 'bj', 10, 'sub', 'lesbian'
 		gs 'stat'
@@ -117,7 +117,7 @@ $rimmasexdi = {
 			pcs_vag += 1
 			gs 'stat'
 			'<center><img <<$set_imgh>> src="mod/bestmod/images/beast/zoo/rimma19.jpg"></center>'
-			'You bend over for Rima when she orders you to, presenting your bare ass to her, feeling the pull on the chain as she enters your wet pussy. As demeaning as this is, it feels right with Rima, experience speaking from each of her actions and her movements inside you so intensely arousing that your moans are no doubt audible to your neighbors.' 
+			'You bend over for Rima when she orders you to, presenting your bare ass to her, feeling the pull on the chain as she enters your wet pussy. As demeaning as this is, it feels right with Rima, experience speaking from each of her actions and her movements inside you so intensely arousing that your moans are no doubt audible to your neighbors.'
 			'At some point, you feel Rima pulling hard on the chain, hard enough to make you rear, and at that exact moment, she pulls the strap-on out and inserts it into your ass, your wetness making it as easy as it''s going to be. A few thrusts later, you are already at your limit and come so hard that all strength leaves your body and Rima has to let go of the chain, lest she choke you.'
 			$orgasm_or = 'yes'
 			gs 'arousal', 'vaginal_strap', 20, 'lesbian', 'sub'
@@ -130,7 +130,7 @@ $rimmasexdi = {
 	elseif RimmaRandEvent = 18:
 		'<center><img <<$set_imgh>> src="mod/bestmod/images/beast/zoo/rimma14.jpg"></center>'
 		pcs_throat += 3
-		'Rima pulls a massive strap-on out of her purse and puts it on, and you feel a hint of fear mingled into your excitement, knowing that she''s going to fuck you with it. Wasting no time on ordering you around, she roughly pushes you down on your knees and slips it past your <<$pc_desc[''lips'']>> lips.' 
+		'Rima pulls a massive strap-on out of her purse and puts it on, and you feel a hint of fear mingled into your excitement, knowing that she''s going to fuck you with it. Wasting no time on ordering you around, she roughly pushes you down on your knees and slips it past your <<$pc_desc[''lips'']>> lips.'
 		'You instinctively start moving your tongue around its thick tip, her hand at the back of your head holding you in place as she guides it into your throat. Given its size, it doesn''t come as a surprise that your gag reflex starts acting up but you endure as best you can, covering it generously in saliva.'
 		gs 'arousal', 'bj', 10, 'sub', 'lesbian'
 		gs 'stat'
@@ -139,7 +139,7 @@ $rimmasexdi = {
 			pcs_ass += 1
 			gs 'stat'
 			'<center><img <<$set_imgh>> src="mod/bestmod/images/beast/zoo/rimma18.jpg"></center>'
-			'Rima bends you over doggystyle and you feel the tip of her strap-on resting against your anus as she pulls the bottle of lube out of her purse. You groan and try to relax, preparing yourself mentally as she spreads the cool liquid around and inside your puckered hole, but even after all the things you''ve done with Rima, taking this gigantic strap-on up your ass is not an easy feat.' 
+			'Rima bends you over doggystyle and you feel the tip of her strap-on resting against your anus as she pulls the bottle of lube out of her purse. You groan and try to relax, preparing yourself mentally as she spreads the cool liquid around and inside your puckered hole, but even after all the things you''ve done with Rima, taking this gigantic strap-on up your ass is not an easy feat.'
 			'But slowly, ever so slowly, the woman works it into you, inch by inch, and starts moving back and forth, going a little deeper with every thrust, going a little faster every time. Your voice rises with her, the mix of pain and pleasure making it impossible to remain silent, and when you feel her grabbing your hair and pulling your head back, it sends you over the edge, screaming, hurting, but satisfied nonetheless.'
 			$orgasm_or = 'yes'
 			gs 'arousal', 'anal_strap', 20, 'lesbian', 'sub'
@@ -152,7 +152,7 @@ $rimmasexdi = {
 	elseif RimmaRandEvent = 17:
 		'<center><img <<$set_imgh>> src="mod/bestmod/images/beast/zoo/rimma14.jpg"></center>'
 		pcs_throat += 3
-		'Rima pulls a massive strap-on out of her purse and puts it on, and you feel a hint of fear mingled into your excitement, knowing that she''s going to fuck you with it. Wasting no time on ordering you around, she roughly pushes you down on your knees and slips it past your <<$pc_desc[''lips'']>> lips.' 
+		'Rima pulls a massive strap-on out of her purse and puts it on, and you feel a hint of fear mingled into your excitement, knowing that she''s going to fuck you with it. Wasting no time on ordering you around, she roughly pushes you down on your knees and slips it past your <<$pc_desc[''lips'']>> lips.'
 		'You instinctively start moving your tongue around its thick tip, her hand at the back of your head holding you in place as she guides it into your throat. Given its size, it doesn''t come as a surprise that your gag reflex starts acting up but you endure as best you can, covering it generously in saliva.'
 		gs 'arousal', 'bj', 10, 'sub', 'lesbian'
 		gs 'stat'
@@ -174,7 +174,7 @@ $rimmasexdi = {
 	elseif RimmaRandEvent = 16:
 		'<center><img <<$set_imgh>> src="mod/bestmod/images/beast/zoo/rimma14.jpg"></center>'
 		pcs_throat += 3
-		'Rima pulls a massive strap-on out of her purse and puts it on, and you feel a hint of fear mingled into your excitement, knowing that she''s going to fuck you with it. Wasting no time on ordering you around, she roughly pushes you down on your knees and slips it past your <<$pc_desc[''lips'']>> lips.' 
+		'Rima pulls a massive strap-on out of her purse and puts it on, and you feel a hint of fear mingled into your excitement, knowing that she''s going to fuck you with it. Wasting no time on ordering you around, she roughly pushes you down on your knees and slips it past your <<$pc_desc[''lips'']>> lips.'
 		'You instinctively start moving your tongue around its thick tip, her hand at the back of your head holding you in place as she guides it into your throat. Given its size, it doesn''t come as a surprise that your gag reflex starts acting up but you endure as best you can, covering it generously in saliva.'
 		gs 'arousal', 'bj', 10, 'sub', 'lesbian'
 		gs 'stat'
@@ -183,7 +183,7 @@ $rimmasexdi = {
 			pcs_vag += 1
 			gs 'stat'
 			'<center><img <<$set_imgh>> src="mod/bestmod/images/beast/zoo/rimma16.jpg"></center>'
-			'Rima puts you on your back and spreads your legs, driving the strap-on into your pussy with one slow thrust, stopping just short of your cervix, your moan music to her ears. She doesn''t move fast today, focusing entirely on slowly driving you towards the edge and gauging your reactions as she goes.' 
+			'Rima puts you on your back and spreads your legs, driving the strap-on into your pussy with one slow thrust, stopping just short of your cervix, your moan music to her ears. She doesn''t move fast today, focusing entirely on slowly driving you towards the edge and gauging your reactions as she goes.'
 			'Your eyes never leave hers, not on your slow ascent, not as you fall over the edge, not as you''re coming back down. When the last wave of your orgasm has passed, Rima rips the strap-on off and sits down on your face. Her own climax is only a few licks away.'
 			$orgasm_or = 'yes'
 			gs 'arousal', 'vaginal_strap', 20, 'lesbian', 'sub'
@@ -196,7 +196,7 @@ $rimmasexdi = {
 	elseif RimmaRandEvent = 15:
 		'<center><img <<$set_imgh>> src="mod/bestmod/images/beast/zoo/rimma14.jpg"></center>'
 		pcs_throat += 3
-		'Rima pulls a massive strap-on out of her purse and puts it on, and you feel a hint of fear mingled into your excitement, knowing that she''s going to fuck you with it. Wasting no time on ordering you around, she roughly pushes you down on your knees and slips it past your <<$pc_desc[''lips'']>> lips.' 
+		'Rima pulls a massive strap-on out of her purse and puts it on, and you feel a hint of fear mingled into your excitement, knowing that she''s going to fuck you with it. Wasting no time on ordering you around, she roughly pushes you down on your knees and slips it past your <<$pc_desc[''lips'']>> lips.'
 		'You instinctively start moving your tongue around its thick tip, her hand at the back of your head holding you in place as she guides it into your throat. Given its size, it doesn''t come as a surprise that your gag reflex starts acting up but you endure as best you can, covering it generously in saliva.'
 		gs 'arousal', 'bj', 10, 'sub', 'lesbian'
 		gs 'stat'
@@ -206,7 +206,7 @@ $rimmasexdi = {
 			gs 'stat'
 			'<center><img <<$set_imgh>> src="mod/bestmod/images/beast/zoo/rimma15.jpg"></center>'
 			'Rima lies down on the couch with you, spooning you from behind, rubbing the strap-on''s tip against your lower lips, teasing you only for a moment before she pushes it in. Between your spit and lust, the artificial dick goes in without resistance.'
-			'Only when it hits your cervix do you reach back to stop her, the sudden pain shaking you out of your reverie, but Rima whispers encouragingly into your ear as she pulls back. When she starts moving in earnest, she doesn''t hit that threshold again, filling you up as much as she can without actually hurting you, even as she furiously fucks you.' 
+			'Only when it hits your cervix do you reach back to stop her, the sudden pain shaking you out of your reverie, but Rima whispers encouragingly into your ear as she pulls back. When she starts moving in earnest, she doesn''t hit that threshold again, filling you up as much as she can without actually hurting you, even as she furiously fucks you.'
 			'Your folds tighten so much during your orgasm and grip the strap-on so violently that Rima has trouble pulling out afterwards.'
 			$orgasm_or = 'yes'
 			gs 'arousal', 'vaginal_strap', 20, 'lesbian', 'sub'
@@ -219,9 +219,9 @@ $rimmasexdi = {
 	elseif RimmaRandEvent = 14:
 		pcs_ass += 8
 		'<center><img <<$set_imgh>> src="mod/bestmod/images/beast/zoo/rimma13.jpg"></center>'
-		'You bend over on the couch for Rima as she lubes up her hands, followed by your anus. She doesn''t have to say a word as she does; you know what''s coming.' 
-		'She places both of her hands at your puckered hole and works her fingers in - left, right, left, right, almost like she''s following an obscure sexual knitting manual - but you don''t care as long as she doesn''t stop, her expert stimulation causing you to moan like a bitch in heat right from the start.' 
-		'Not only does she fit both hands into you but she does so in record time, her soft chuckle speaking of her own surprise at this. Then, she comes to the main course: Without warning or warm-up, she begins pounding you with her hands, your yelp turning into a sustained moan as she hits all the right spots.' 
+		'You bend over on the couch for Rima as she lubes up her hands, followed by your anus. She doesn''t have to say a word as she does; you know what''s coming.'
+		'She places both of her hands at your puckered hole and works her fingers in - left, right, left, right, almost like she''s following an obscure sexual knitting manual - but you don''t care as long as she doesn''t stop, her expert stimulation causing you to moan like a bitch in heat right from the start.'
+		'Not only does she fit both hands into you but she does so in record time, her soft chuckle speaking of her own surprise at this. Then, she comes to the main course: Without warning or warm-up, she begins pounding you with her hands, your yelp turning into a sustained moan as she hits all the right spots.'
 		'When you come down from your climax, Rima sits down in front of you, dripping wet. You are more than happy to return the favor...'
 		$orgasm_or = 'yes'
 		gs 'arousal', 'anal_finger', 20, 'lesbian', 'sub'
@@ -229,8 +229,8 @@ $rimmasexdi = {
 	elseif RimmaRandEvent = 13:
 		pcs_ass += 8
 		'<center><img <<$set_imgh>> src="mod/bestmod/images/beast/zoo/rimma12.jpg"></center>'
-		'Rima tells you to lie back on your couch and lubricate your anus while she does the same with her hands. You are too excited to question her order, instead taking the bottle of lube she presents to you and making sure your backdoor is ready for anything.' 
-		'Even when you tell her that you are done, Rima lifts your ass to check if your anus is properly lubed up, by pushing several fingers at once it. When her hand is almost all the way in, she seems to be convinced... and adds a finger from her other hand. Then another. And another. What you are feeling is beyond description, beyond comprehension, and it leaves you breathless and almost mute.' 
+		'Rima tells you to lie back on your couch and lubricate your anus while she does the same with her hands. You are too excited to question her order, instead taking the bottle of lube she presents to you and making sure your backdoor is ready for anything.'
+		'Even when you tell her that you are done, Rima lifts your ass to check if your anus is properly lubed up, by pushing several fingers at once it. When her hand is almost all the way in, she seems to be convinced... and adds a finger from her other hand. Then another. And another. What you are feeling is beyond description, beyond comprehension, and it leaves you breathless and almost mute.'
 		'Only when she starts to move, both of her hands all the way inside you, do you make noises again: Soft, understated coos that swell to loud screams when the woman picks up the pace and fucks your ass with both of her hands. The orgasm comes loud and hard and you feel deaf and numb. All you can see is Rima, grinning like a Cheshire cat, and you weakly return that grin.'
 		$orgasm_or = 'yes'
 		gs 'arousal', 'anal_fist', 20, 'lesbian', 'sub'
@@ -239,7 +239,7 @@ $rimmasexdi = {
 		pcs_ass += 6
 		pcs_vag += 5
 		'<center><img <<$set_imgh>> src="mod/bestmod/images/beast/zoo/rimma11.jpg"></center>'
-		'Once again, Rima leads you into your bedroom and you lie down on your back for her, curious what she intends to do today. She doesn''t keep you wondering for long: Rima rummages around her purse until she finds a bottle of lube and generously applies it to both of her hands, giving you suggestive smiles as she does.' 
+		'Once again, Rima leads you into your bedroom and you lie down on your back for her, curious what she intends to do today. She doesn''t keep you wondering for long: Rima rummages around her purse until she finds a bottle of lube and generously applies it to both of her hands, giving you suggestive smiles as she does.'
 		'Your previous experiences with her have prepared you well for what she has in mind: With terrifying ease and very little patience, Rima pushes one of her hands into your vagina and works the other into your anus. It''s a testament to the times you have spent with her that you don''t hurt as much as you feel full as, knuckle by knuckle, her fingers sink into you, your groans leaving little doubt as to your pleasure.'
 		'Soon, both of her hands are all the way inside you and Rima starts slowly pulling them out again, then back in, fucking you with her entire limbs, the fullness ebbing away only to return in force. It''s an incredible, maddening feeling and your orgasm hits you with the suddenness and violence of a tsunami.'
 		$orgasm_or = 'yes'
@@ -272,7 +272,7 @@ $rimmasexdi = {
 	elseif RimmaRandEvent = 9:
 		pcs_ass += 5
 		'<center><img <<$set_imgh>> src="mod/bestmod/images/beast/zoo/rimma8.jpg"></center>'
-		'You find yourself lying on your side, spreading your legs to give Rima easier access to your sex. Indeed, her fingers penetrate your wet pussy and her wonderful touch has you panting in no time at all.' 
+		'You find yourself lying on your side, spreading your legs to give Rima easier access to your sex. Indeed, her fingers penetrate your wet pussy and her wonderful touch has you panting in no time at all.'
 		'Between two strokes, though, she pulls out entirely and instead works the well-lubricated fingers into your ass. You gasp as she gets the speed back to where it was and have your backdoor thoroughly fingerfucked by her. She skillfully teases your clit for additional stimulation but you even without it, you''d have come anyway.'
 		'And come you do, feeling your sphincter twitch around her index and middle finger, beckoning them to stay a little longer as you ride out the waves of your anal climax.'
 		$orgasm_or = 'yes'
@@ -281,7 +281,7 @@ $rimmasexdi = {
 	elseif RimmaRandEvent = 8:
 		pcs_ass += 3
 		'<center><img <<$set_imgh>> src="mod/bestmod/images/beast/zoo/rimma7.jpg"></center>'
-		'Rima puts you on your back, your soft bed ever-willing to serve, and dives right in, her tongue finding your clit with pin-point precision.' 
+		'Rima puts you on your back, your soft bed ever-willing to serve, and dives right in, her tongue finding your clit with pin-point precision.'
 		'At the same time, her hand explores your nether regions, stroking up and down your legs, outside and inside, caresses your stomach and sides, squeezing your buttcheeks, teasing your wet folds with quick flicks and lingering strokes, but it doesn''t come to rest... until it finds your rosebud.'
 		'She circles around your backdoor as if she had all the time in the world, pretending to push a finger in one moment only to pull it away the next, her constant back and forth driving you crazy and making you hornier the longer she persists.'
 		'At some point, you simply cannot hold out any longer and clamp down hard the instant you feel her pushing in. At the same time, you put one hand at the back of her head and pull her against you. This tiny push is all you need to cum, finally.'
@@ -292,7 +292,7 @@ $rimmasexdi = {
 	elseif RimmaRandEvent = 7:
 		pcs_vag += 5
 		'<center><img <<$set_imgh>> src="mod/bestmod/images/beast/zoo/rimma6.jpg"></center>'
-		'The couch in the living room is where Rima wants to have you, and you have no reason to deny her. Spreading your legs for her, you watch as she patiently puts one finger after the other into you, teasing you with gusto and nipping at your clit every now and then to put you even more on edge.' 
+		'The couch in the living room is where Rima wants to have you, and you have no reason to deny her. Spreading your legs for her, you watch as she patiently puts one finger after the other into you, teasing you with gusto and nipping at your clit every now and then to put you even more on edge.'
 		'Her second hand squeezes your tits, teases your nipples, strokes your stomach, caresses your cheek - seems to be everywhere at once. Her hand inside your pussy doesn''t go easy on you, not this time: Rima immediately goes from massaging your insides to fist-fucking you and you love every second of it.'
 		'Your climax builds quickly - no surprise after almost half an hour of teasing - when you feel her second hand linger on your throat... and tightening around it. You open your eyes to look at her and while it''s harder to breathe, the passion in Rima''s eyes is infectious.'
 		'The orgasm hits you like a truck, the slight lack of air increasing its intensity by an order of magnitude, and by the looks of it, Rima is just about ready to come herself, getting off immensely on dominating you.'
@@ -302,11 +302,11 @@ $rimmasexdi = {
 	elseif RimmaRandEvent = 6:
 		pcs_vag += 5
 		'<center><img <<$set_imgh>> src="mod/bestmod/images/beast/zoo/rimma5.jpg"></center>'
-		'Once again, Rima takes you into your bedroom and has you lie down. Your memories of how she went down on you very present in your mind, you eagerly spread your legs for her and she smiles broadly as lowers her mouth onto you.' 
-		'Two of her fingers are inside your wet pussy in an instant but other than that, she takes her time, teasing and touching you with unfathomable skill, only slowly picking up speed. When you are getting closer to orgasm, she inserts a third finger but slows down at the same time, your groans turning from lust to frustration as she teases you, inches away from release.' 
+		'Once again, Rima takes you into your bedroom and has you lie down. Your memories of how she went down on you very present in your mind, you eagerly spread your legs for her and she smiles broadly as lowers her mouth onto you.'
+		'Two of her fingers are inside your wet pussy in an instant but other than that, she takes her time, teasing and touching you with unfathomable skill, only slowly picking up speed. When you are getting closer to orgasm, she inserts a third finger but slows down at the same time, your groans turning from lust to frustration as she teases you, inches away from release.'
 		'But Rima is merciless: She slowly, ever so slowly works you down from that almost-climax, then back up again, to that same breaking point... then introduces a fourth finger and slows down once again.'
 		nl
-		'You barely even register when she sinks her whole hand into your depths - at that point, you are so desperately horny that you are literally begging her to make you cum, and this time, her fist inside you, she finally relents.' 
+		'You barely even register when she sinks her whole hand into your depths - at that point, you are so desperately horny that you are literally begging her to make you cum, and this time, her fist inside you, she finally relents.'
 		'From one moment to the next, she starts fucking you with her whole hand, pushing you right to the edge and over, then right to the next and over again. You can feel yourself twitching around her hand, gripping her like a vice, but the rest of your body is a shaking, screaming, sweating mess. That doesn''t change the fact, though, that Rima gave you a couple of incredible orgasms, though.'
 		$orgasm_or = 'yes'
 		gs 'arousal', 'vaginal_fist', 20, 'lesbian', 'sub'
@@ -315,7 +315,7 @@ $rimmasexdi = {
 		pcs_vag += 2
 		'<center><img <<$set_imgh>> src="mod/bestmod/images/beast/zoo/rimma4.jpg"></center>'
 		'Rima and you go into the bedroom and you lie down on your back, opening yourself to your female company. She doesn''t even try to resist the enticing view and you can feel her tongue on your clit before she''s come to rest on the bed.'
-		'You feel her fingers penetrate you, your folds wet and ready with anticipation, and her touch is heavenly. Rima seems to have an almost supernatural intuition for where she has to touch your insides to elicit the highest moans from you and you are all too willing to let them erupt.' 
+		'You feel her fingers penetrate you, your folds wet and ready with anticipation, and her touch is heavenly. Rima seems to have an almost supernatural intuition for where she has to touch your insides to elicit the highest moans from you and you are all too willing to let them erupt.'
 		'While there is a lot of variation in the way she angles her hand and hooks her fingers, she never gets slower - her index and middle finger went from teasingly slow to a good, hard fingerfuck and she seems certain that she can hold out longer than you.'
 		nl
 		'She''s right, too: When she adds a third finger - without slowing down - an incredible orgasm rips through you and you have to hold on for dear life. All you can manage when Rima kisses you is a weak smile as you taste yourself on her lips.'
@@ -324,23 +324,23 @@ $rimmasexdi = {
 		gs 'stat'
 	elseif RimmaRandEvent = 4:
 		'<center><img <<$set_imgh>> src="mod/bestmod/images/beast/zoo/rimma3.jpg"></center>'
-		'Rima leads you into the bedroom and has you lie down. You''ve barely come to rest when she''s already on top of you, her wet pussy mere inches from your mouth, her eyes sparkling as she bends backwards and you feel her fingers caressing your sex.' 
-		'You lose yourself in her expert touch and the arousing taste of her juices, your tongue and lips working tirelessly to pleasure her.' 
+		'Rima leads you into the bedroom and has you lie down. You''ve barely come to rest when she''s already on top of you, her wet pussy mere inches from your mouth, her eyes sparkling as she bends backwards and you feel her fingers caressing your sex.'
+		'You lose yourself in her expert touch and the arousing taste of her juices, your tongue and lips working tirelessly to pleasure her.'
 		'When you feel her crotch pressing more strongly against your face, you know that she won''t take much longer and redouble your efforts, as does she. In seconds, you have her screaming and thrashing, your own orgasm muffled by her nether lips.'
 		$orgasm_or = 'yes'
 		gs 'arousal', 'cuni_give', 20, 'lesbian', 'sub'
 		gs 'stat'
 	elseif RimmaRandEvent = 3:
 		'<center><img <<$set_imgh>> src="mod/bestmod/images/beast/zoo/rimma2.jpg"></center>'
-		'You go into the living room where she sits down on the sofa, legs spread. You understand the invitation and drop to your knees, languidly licking her pussy up and down, teasing her greedy hole with one hand while you rub your own clit with the other.' 
-		'Rima moans with joy and you can feel her hands on your head, stroking it, urging you on.' 
+		'You go into the living room where she sits down on the sofa, legs spread. You understand the invitation and drop to your knees, languidly licking her pussy up and down, teasing her greedy hole with one hand while you rub your own clit with the other.'
+		'Rima moans with joy and you can feel her hands on your head, stroking it, urging you on.'
 		'As her passion grows, her movements become rougher and in her bliss, her fingers claw into your hair. She pulls you closer, grinding her hips against your face and is quickly overcome by her orgasm. Thanks to her rough treatment and your "free" hand, you follow her immediately.'
 		$orgasm_or = 'yes'
 		gs 'arousal', 'cuni_give', 20, 'lesbian', 'sub'
 		gs 'stat'
 	elseif RimmaRandEvent = 2:
 		'<center><img <<$set_imgh>> src="mod/bestmod/images/beast/zoo/rimma.jpg"></center>'
-		'You barely make it into the bedroom. As soon as you''re there, Rima pushes you onto the bed and lays on top of you in a 69, offering you her pussy and immediately going down on yours.' 
+		'You barely make it into the bedroom. As soon as you''re there, Rima pushes you onto the bed and lays on top of you in a 69, offering you her pussy and immediately going down on yours.'
 		'The passion she licks you with is infectious and as you desperately try to hold onto her, you do your best to reciprocate, exploring Rima''s delicate folds and hole with your tongue and fingers.'
 		'Your moans, muffled as they are, grow louder, loud enough for the neighbors to hear, you''re sure, but they don''t last for long: Within minutes, the unearthly bliss you''re experiencing culminates in an overwhelming orgasm that leaves you and your partner gasping and shaking.'
 		$orgasm_or = 'yes'

+ 1 - 1
locations/SMS_selfies.qsrc

@@ -50,7 +50,7 @@ if $ARGS[0] = 'show_sms':
 	gs 'telefon', 'show_sms', SMSSelfieVars['SMSid']
 	$SMSMessage[SMSSelfieVars['SMSid']] = $temp_curSMS
 	$SMSReplies[SMSSelfieVars['SMSid']] = $temp_curReplies
-	SMSSelfieVars['text'] = ''
+	$SMSSelfieVars['text'] = ''
 	killvar 'temp_curSMS'
 	killvar 'temp_curReplies'
 end

+ 1 - 1
locations/SMStext_builder.qsrc

@@ -274,7 +274,7 @@ if $ARGS[0] = 'add_sms':
 	end
 	gs 'telefon', 'add_sms', $ARGS[1], $SMSBuilderVars['text'], $SMSBuilderVars['replies'], $SMSBuilderImages[0], $SMSBuilderImages[1], $SMSBuilderImages[2], $SMSBuilderImages[3]
 	
-	SMSBuilderVars['replies'] = ''
+	$SMSBuilderVars['replies'] = ''
 
 elseif $ARGS[0] = 'show_sms':
 	if arrsize('SMSBuilderReplies') > 0:

+ 0 - 1
locations/_attributes_cats_dress.qsrc

@@ -679,7 +679,6 @@ elseif ARGS[1] = 99:
 	CloThinness = 5
 	CloTopCut = 1
 	CloSkirtShortness = 4
-	CloDress = 1
 	
 elseif ARGS[1] = 100:
 	CloQuality = 5

+ 4 - 4
locations/_attributes_cats_shoes.qsrc

@@ -222,25 +222,25 @@ elseif ARGS[1] = 37:
 	ShoStyle = 0
 	ShoQuality = 5
 	ShoCut = 1
-	ShoHeels = 2
+	ShoHeels = 1
 	
 elseif ARGS[1] = 38:
 	ShoStyle = 0
 	ShoQuality = 5
 	ShoCut = 1
-	ShoHeels = 2
+	ShoHeels = 1
 	
 elseif ARGS[1] = 39:
 	ShoStyle = 0
 	ShoQuality = 5
 	ShoCut = 1
-	ShoHeels = 2
+	ShoHeels = 1
 	
 elseif ARGS[1] = 40:
 	ShoStyle = 0
 	ShoQuality = 5
 	ShoCut = 1
-	ShoHeels = 2
+	ShoHeels = 1
 
 end
 

+ 56 - 56
locations/_attributes_dolls_shoes.qsrc

@@ -6,7 +6,7 @@ if ARGS[1] = 1:
 	ShoStyle = 0
 	ShoQuality = 4
 	ShoCut = 2
-	ShoHeels = 2
+	ShoHeels = 1
 	
 elseif ARGS[1] = 2:
 	ShoStyle = 0
@@ -42,55 +42,55 @@ elseif ARGS[1] = 7:
 	ShoStyle = 0
 	ShoQuality = 3
 	ShoCut = 1
-	ShoHeels = 3
+	ShoHeels = 1
 	
 elseif ARGS[1] = 8:
 	ShoStyle = 0
 	ShoQuality = 3
 	ShoCut = 1
-	ShoHeels = 3
+	ShoHeels = 1
 	
 elseif ARGS[1] = 9:
 	ShoStyle = 2
 	ShoQuality = 3
 	ShoCut = 1
-	ShoHeels = 3
+	ShoHeels = 1
 	
 elseif ARGS[1] = 10:
 	ShoStyle = 0
 	ShoQuality = 3
 	ShoCut = 1
-	ShoHeels = 3
+	ShoHeels = 1
 	
 elseif ARGS[1] = 11:
 	ShoStyle = 2
 	ShoQuality = 3
 	ShoCut = 1
-	ShoHeels = 3
+	ShoHeels = 1
 	
 elseif ARGS[1] = 12:
 	ShoStyle = 0
 	ShoQuality = 4
 	ShoCut = 1
-	ShoHeels = 4
+	ShoHeels = 3
 	
 elseif ARGS[1] = 13:
 	ShoStyle = 0
 	ShoQuality = 4
 	ShoCut = 1
-	ShoHeels = 4
+	ShoHeels = 2
 	
 elseif ARGS[1] = 14:
 	ShoStyle = 0
 	ShoQuality = 4
 	ShoCut = 1
-	ShoHeels = 4
+	ShoHeels = 3
 	
 elseif ARGS[1] = 15:
 	ShoStyle = 0
 	ShoQuality = 4
 	ShoCut = 1
-	ShoHeels = 5
+	ShoHeels = 3
 	
 elseif ARGS[1] = 16:
 	ShoStyle = 0
@@ -120,49 +120,49 @@ elseif ARGS[1] = 20:
 	ShoStyle = 3
 	ShoQuality = 4
 	ShoCut = 2
-	ShoHeels = 5
+	ShoHeels = 3
 	
 elseif ARGS[1] = 21:
 	ShoStyle = 0
 	ShoQuality = 4
 	ShoCut = 2
-	ShoHeels = 5
+	ShoHeels = 3
 	
 elseif ARGS[1] = 22:
 	ShoStyle = 2
 	ShoQuality = 4
 	ShoCut = 2
-	ShoHeels = 5
+	ShoHeels = 3
 	
 elseif ARGS[1] = 23:
 	ShoStyle = 3
 	ShoQuality = 4
 	ShoCut = 1
-	ShoHeels = 6
+	ShoHeels = 3
 	
 elseif ARGS[1] = 24:
 	ShoStyle = 3
 	ShoQuality = 4
 	ShoCut = 1
-	ShoHeels = 6
+	ShoHeels = 3
 	
 elseif ARGS[1] = 25:
 	ShoStyle = 2
 	ShoQuality = 4
 	ShoCut = 1
-	ShoHeels = 6
+	ShoHeels = 3
 	
 elseif ARGS[1] = 26:
 	ShoStyle = 3
 	ShoQuality = 5
 	ShoCut = 2
-	ShoHeels = 6
+	ShoHeels = 3
 	
 elseif ARGS[1] = 27:
 	ShoStyle = 3
 	ShoQuality = 5
 	ShoCut = 2
-	ShoHeels = 6
+	ShoHeels = 3
 	
 elseif ARGS[1] = 28:
 	ShoStyle = 3
@@ -342,55 +342,55 @@ elseif ARGS[1] = 57:
 	ShoStyle = 3
 	ShoQuality = 5
 	ShoCut = 1
-	ShoHeels = 5
+	ShoHeels = 2
 	
 elseif ARGS[1] = 58:
 	ShoStyle = 3
 	ShoQuality = 4
 	ShoCut = 1
-	ShoHeels = 3
+	ShoHeels = 1
 
 elseif ARGS[1] = 59:
 	ShoStyle = 3
 	ShoQuality = 4
 	ShoCut = 1
-	ShoHeels = 3
+	ShoHeels = 1
 	
 elseif ARGS[1] = 60:
 	ShoStyle = 0
 	ShoQuality = 5
 	ShoCut = 3
-	ShoHeels = 3
+	ShoHeels = 1
 
 elseif ARGS[1] = 61:
 	ShoStyle = 3
 	ShoQuality = 4
 	ShoCut = 1
-	ShoHeels = 3
+	ShoHeels = 1
 	
 elseif ARGS[1] = 62:
 	ShoStyle = 3
 	ShoQuality = 4
 	ShoCut = 1
-	ShoHeels = 3
+	ShoHeels = 1
 
 elseif ARGS[1] = 63:
 	ShoStyle = 0
 	ShoQuality = 4
 	ShoCut = 1
-	ShoHeels = 3
+	ShoHeels = 1
 	
 elseif ARGS[1] = 64:
 	ShoStyle = 3
 	ShoQuality = 4
 	ShoCut = 1
-	ShoHeels = 4
+	ShoHeels = 3
 
 elseif ARGS[1] = 65:
 	ShoStyle = 0
 	ShoQuality = 4
 	ShoCut = 1
-	ShoHeels = 4
+	ShoHeels = 3
 	
 elseif ARGS[1] = 66:
 	ShoStyle = 0
@@ -414,25 +414,25 @@ elseif ARGS[1] = 69:
 	ShoStyle = 0
 	ShoQuality = 4
 	ShoCut = 1
-	ShoHeels = 4
+	ShoHeels = 1
 	
 elseif ARGS[1] = 70:
 	ShoStyle = 0
 	ShoQuality = 4
 	ShoCut = 1
-	ShoHeels = 4
+	ShoHeels = 1
 
 elseif ARGS[1] = 71:
 	ShoStyle = 0
 	ShoQuality = 5
 	ShoCut = 1
-	ShoHeels = 4
+	ShoHeels = 1
 	
 elseif ARGS[1] = 72:
 	ShoStyle = 3
 	ShoQuality = 4
 	ShoCut = 2
-	ShoHeels = 4	
+	ShoHeels = 2
 
 elseif ARGS[1] = 73:
 	ShoStyle = 3
@@ -444,25 +444,25 @@ elseif ARGS[1] = 74:
 	ShoStyle = 0
 	ShoQuality = 4
 	ShoCut = 1
-	ShoHeels = 4	
+	ShoHeels = 3
 
 elseif ARGS[1] = 75:
 	ShoStyle = 2
 	ShoQuality = 4
 	ShoCut = 1
-	ShoHeels = 4	
+	ShoHeels = 3
 	
 elseif ARGS[1] = 76:
 	ShoStyle = 0
 	ShoQuality = 4
 	ShoCut = 1
-	ShoHeels = 4	
+	ShoHeels = 2
 
 elseif ARGS[1] = 77:
 	ShoStyle = 0
 	ShoQuality = 4
 	ShoCut = 1
-	ShoHeels = 4	
+	ShoHeels = 2
 	
 elseif ARGS[1] = 78:
 	ShoStyle = 0
@@ -492,19 +492,19 @@ elseif ARGS[1] = 82:
 	ShoStyle = 3
 	ShoQuality = 5
 	ShoCut = 2
-	ShoHeels = 4	
+	ShoHeels = 3
 
 elseif ARGS[1] = 83:
 	ShoStyle = 3
 	ShoQuality = 4
 	ShoCut = 2
-	ShoHeels = 4	
+	ShoHeels = 1
 	
 elseif ARGS[1] = 84:
 	ShoStyle = 3
 	ShoQuality = 4
 	ShoCut = 2
-	ShoHeels = 4
+	ShoHeels = 1
 
 elseif ARGS[1] = 85:
 	ShoStyle = 3
@@ -516,13 +516,13 @@ elseif ARGS[1] = 86:
 	ShoStyle = 3
 	ShoQuality = 4
 	ShoCut = 2
-	ShoHeels = 4
+	ShoHeels = 3
 
 elseif ARGS[1] = 87:
 	ShoStyle = 3
 	ShoQuality = 5
 	ShoCut = 2
-	ShoHeels = 6
+	ShoHeels = 3
 	
 elseif ARGS[1] = 88:
 	ShoStyle = 0
@@ -546,25 +546,25 @@ elseif ARGS[1] = 91:
 	ShoStyle = 3
 	ShoQuality = 5
 	ShoCut = 2
-	ShoHeels = 4
+	ShoHeels = 1
 	
 elseif ARGS[1] = 92:
 	ShoStyle = 3
 	ShoQuality = 5
 	ShoCut = 2
-	ShoHeels = 4	
+	ShoHeels = 1
 
 elseif ARGS[1] = 93:
 	ShoStyle = 0
 	ShoQuality = 5
 	ShoCut = 2
-	ShoHeels = 4
+	ShoHeels = 1
 	
 elseif ARGS[1] = 94:
 	ShoStyle = 0
 	ShoQuality = 5
 	ShoCut = 2
-	ShoHeels = 4
+	ShoHeels = 2
 
 elseif ARGS[1] = 95:
 	ShoStyle = 0
@@ -600,55 +600,55 @@ elseif ARGS[1] = 100:
 	ShoStyle = 0
 	ShoQuality = 5
 	ShoCut = 3
-	ShoHeels = 4
+	ShoHeels = 1
 
 elseif ARGS[1] = 101:
 	ShoStyle = 0
 	ShoQuality = 5
 	ShoCut = 3
-	ShoHeels = 4
+	ShoHeels = 1
 	
 elseif ARGS[1] = 102:
 	ShoStyle = 0
 	ShoQuality = 5
 	ShoCut = 3
-	ShoHeels = 4
+	ShoHeels = 1
 
 elseif ARGS[1] = 103:
 	ShoStyle = 0
 	ShoQuality = 5
 	ShoCut = 3
-	ShoHeels = 5
+	ShoHeels = 2
 	
 elseif ARGS[1] = 104:
 	ShoStyle = 0
 	ShoQuality = 5
 	ShoCut = 4
-	ShoHeels = 5
+	ShoHeels = 2
 
 elseif ARGS[1] = 105:
 	ShoStyle = 3
 	ShoQuality = 5
 	ShoCut = 4
-	ShoHeels = 5
+	ShoHeels = 2
 	
 elseif ARGS[1] = 106:
 	ShoStyle = 3
 	ShoQuality = 5
 	ShoCut = 4
-	ShoHeels = 5
+	ShoHeels = 2
 
 elseif ARGS[1] = 107:
 	ShoStyle = 3
 	ShoQuality = 5
 	ShoCut = 4
-	ShoHeels = 5
+	ShoHeels = 2
 	
 elseif ARGS[1] = 108:
 	ShoStyle = 0
 	ShoQuality = 5
 	ShoCut = 4
-	ShoHeels = 5
+	ShoHeels = 2
 
 elseif ARGS[1] = 109:
 	ShoStyle = 3
@@ -672,19 +672,19 @@ elseif ARGS[1] = 112:
 	ShoStyle = 0
 	ShoQuality = 5
 	ShoCut = 4
-	ShoHeels = 4
+	ShoHeels = 2
 
 elseif ARGS[1] = 113:
 	ShoStyle = 3
 	ShoQuality = 5
 	ShoCut = 3
-	ShoHeels = 5
+	ShoHeels = 2
 	
 elseif ARGS[1] = 114:
 	ShoStyle = 0
 	ShoQuality = 5
 	ShoCut = 4
-	ShoHeels = 5
+	ShoHeels = 2
 
 elseif ARGS[1] = 115:
 	ShoStyle = 3

+ 0 - 1
locations/_body_image.qsrc

@@ -6,7 +6,6 @@
 
 $body_image_msg = ''
 if $ARGS[0] = 'body':
-	$bodyVars['img'] = func('body_structure', 'body_img')
 	$result = $bodyVars['img']
 	$body_image_msg += 'You are <<pcs_hgt>>cm tall and <<$bodyVars[''desc'']>>'
 end

+ 70 - 56
locations/_face_image.qsrc

@@ -21,7 +21,7 @@ elseif face_style['type'] = 2:
 	else
 		$result += 'noglass/'
 	end
-	
+
 	!!----------EYE COLOR----------
 	!! hazel
 	if pcs_eyecol = 0:
@@ -42,7 +42,7 @@ elseif face_style['type'] = 2:
 	!!	$result += 'other/'	!! missing !! will load blue !!
 		$result += 'blue/'
 	end
-	
+
 	!!----------HAIR COLOR----------
 	!! black
 	if pcs_haircol = 0:
@@ -61,7 +61,7 @@ elseif face_style['type'] = 2:
 	!!	$result += 'other'	!! missing !! will load brunette !!
 		$result += 'brunette/'
 	end
-	
+
 	!!----------HAIR LENGTH----------
 	!! very long
 	if pcs_hairlng > 400:
@@ -84,62 +84,74 @@ elseif face_style['type'] = 2:
 	else
 		$result += 'very_short/'
 	end
-	
+
 	!!----------HAIR STYLE----------
 	!! messy/tangled
-	if pcs_hairbsh = -1 or pcs_hairbsh = 0:
+	if pcs_hairbsh <= 0:
 		$result += 'messy/'
 	!! braids
-	elseif hbraids > 0:
-		$result += 'braids/'
-	!! pigtails
-	elseif hpigtail > 0:
-		$result += 'pigtails/'
-	!! curly-bangs-buns
-	elseif curly > 0 and hbangs > 0 and hpingripw > 0:
-	!!	$result += 'curly-bangs-buns/'	!! missing !! will load curly !!
-		$result += 'curly/'
-	!! curly-bangs-scrunch
-	elseif curly > 0 and hbangs > 0 and hscrunchw > 0:
-	!!	$result += 'curly-bangs-scrunch/'	!! missing !! will load curly !!
-		$result += 'curly/'
-	!! curly-bangs
-	elseif curly > 0 and hbangs > 0:
-	!!	$result += 'curly-bangs/'	!! missing !! will load curly !!
-		$result += 'curly/'
-	!! curly-buns
-	elseif curly > 0 and hpingripw > 0:
-	!!	$result += 'curly-buns/'	!! missing !! will load curly !!
-		$result += 'curly/'
-	!! curly-scrunch
-	elseif curly > 0 and hscrunchw > 0:
-	!!	$result += 'curly-scrunch/'	!! missing !! will load curly !!
-		$result += 'curly/'
-	!! bangs-buns
-	elseif hbangs > 0 and hpingripw > 0:
-	!!	$result += 'bangs-buns/'	!! missing !! will load bangs !!
-		$result += 'bangs/'
-	!! bangs-scrunch
-	elseif hbangs > 0 and hscrunchw > 0:
-	!!	$result += 'bangs-scrunch/'	!! missing !! will load bangs !!
-		$result += 'bangs/'
-	!! curly
-	elseif curly > 0:
-		$result += 'curly/'
-	!! bangs
-	elseif hbangs > 0:
-		$result += 'bangs/'
-	!! buns (updo)
-	elseif hpingripw > 0:
-		$result += 'buns/'
-	!! scrunch (ponytail)
-	elseif hscrunchw > 0:
-		$result += 'scrunch/'
-	!! normal
+	elseif pcs_hairlng > 80:
+		if hbraids > 0:
+			$result += 'braids/'
+		!! pigtails
+		elseif hpigtail > 0:
+			$result += 'pigtails/'
+		!! curly-bangs-buns
+		elseif curly > 0 and hbangs > 0 and hpingripw > 0:
+		!!	$result += 'curly-bangs-buns/'	!! missing !! will load curly !!
+			$result += 'curly/'
+		!! curly-bangs-scrunch
+		elseif curly > 0 and hbangs > 0 and hscrunchw > 0:
+		!!	$result += 'curly-bangs-scrunch/'	!! missing !! will load curly !!
+			$result += 'curly/'
+		!! curly-bangs
+		elseif curly > 0 and hbangs > 0:
+		!!	$result += 'curly-bangs/'	!! missing !! will load curly !!
+			$result += 'curly/'
+		!! curly-buns
+		elseif curly > 0 and hpingripw > 0:
+		!!	$result += 'curly-buns/'	!! missing !! will load curly !!
+			$result += 'curly/'
+		!! curly-scrunch
+		elseif curly > 0 and hscrunchw > 0:
+		!!	$result += 'curly-scrunch/'	!! missing !! will load curly !!
+			$result += 'curly/'
+		!! bangs-buns
+		elseif hbangs > 0 and hpingripw > 0:
+		!!	$result += 'bangs-buns/'	!! missing !! will load bangs !!
+			$result += 'bangs/'
+		!! bangs-scrunch
+		elseif hbangs > 0 and hscrunchw > 0:
+		!!	$result += 'bangs-scrunch/'	!! missing !! will load bangs !!
+			$result += 'bangs/'
+		!! curly
+		elseif curly > 0:
+			$result += 'curly/'
+		!! bangs
+		elseif hbangs > 0:
+			$result += 'bangs/'
+		!! buns (updo)
+		elseif hpingripw > 0:
+			$result += 'buns/'
+		!! scrunch (ponytail)
+		elseif hscrunchw > 0:
+			$result += 'scrunch/'
+		!! normal
+		else
+			$result += 'normal/'
+		end
+	elseif pcs_hairlng > 30:
+		if hbangs > 0:
+			$result += 'bangs/'
+		elseif curly > 0:
+			$result += 'curly/'
+		else
+			$result += 'normal/'
+		end
 	else
 		$result += 'normal/'
 	end
-				
+
 	!!----------MAKEUP----------
 	!! none
 	if pcs_makeup = 1:
@@ -167,7 +179,7 @@ elseif face_style['type'] = 2:
 	else
 		$result += 'smeared_'
 	end
-	
+
 	!!----------CUM----------
 	if cumloc[11] = 1:
 		!! enormous
@@ -190,7 +202,7 @@ elseif face_style['type'] = 2:
 	else
 		$result += 'no_cum'
 	end
-	
+
 	$result += '.jpg'
 
 else
@@ -210,7 +222,7 @@ else
 
 	$result = 'images/pc/body/hairstyles/'
 
-	if pcs_haircol > 3: 
+	if pcs_haircol > 3:
 		$result += 'colours'
 		jump 'skipsteps'
 	end
@@ -263,9 +275,11 @@ else
 			$result += 'normal'
 		end
 	!! style for short hair (other images don''t exist)
-	elseif pcs_hairlng <= 80 and pcs_hairlng > 30:
+	elseif pcs_hairlng > 30:
 		if hbangs > 0:
 			$result += 'bangs'
+		elseif curly > 0:
+			$result += 'curly'
 		else
 			$result += 'normal'
 		end

+ 7 - 7
locations/agentned.qsrc

@@ -187,17 +187,17 @@ if $ARGS[0] = 'sell':
 			'<h4>Available offers for your properties</h4>'
 			i = 0
 			:listing_offers_on_owned_properties_loop
-				if $property_code[i] ! 'matryona_mansion' or ($property_code[i] = 'matryona_mansion' and $property_construction_status[i] = 0):
+				if $property_code[i] ! 'matryona_mansion' or ($property_code[i] = 'matryona_mansion' and property_construction_status[i] = 0):
 					!! NOTE: Offer: (last sales price + rand(-10%, +10%)) + (renovation value + rand(0%,+10%)
 					!! 		 No need to check what has been renovated, the only thing that matters is the total value of the renovation
 					!! 		 If Sveta sells, this will be stored as the new sales price of the property
 					
 					offer = property_sales_price + property_renovation_value + (property_sales_price*rand(-10,10))/100 + (property_renovation_value*rand(0,10))/100
 					'We have found a buyer for your <<$property_display[i]>>. They will offer <<func(''agentned'', ''format_price_string'', offer)>><b>₽</b>, minus 5% for fees and taxes to the value of <<func(''agentned'', ''format_price_string'', ( (offer*5)/100) )>>, bringing the total to <<func(''agentned'', ''format_price_string'', ( (offer*95)/100 ) )>>'
-					if $property_code[i] = 'city_apartment': act 'Sell the <<$property_display[i]>>': gs 'agentned', 'finalise_sale', 'city_apartment'
-					if $property_code[i] = 'village_cottage': act 'Sell the <<$property_display[i]>>': gs 'agentned', 'finalise_sale', 'village_cottage'
-					if $property_code[i] = 'matryona_mansion': act 'Sell the <<$property_display[i]>>': gs 'agentned', 'finalise_sale', 'matryona_mansion'
-					if $property_code[i] = 'city_house': act 'Sell the <<$property_display[i]>>': gs 'agentned', 'finalise_sale', 'city_house'
+					if $property_code[i] = 'city_apartment': act 'Sell the <<$property_display[i]>>': gs 'agentned', 'finalise_sale', 'city_apartment', i
+					if $property_code[i] = 'village_cottage': act 'Sell the <<$property_display[i]>>': gs 'agentned', 'finalise_sale', 'village_cottage', i
+					if $property_code[i] = 'matryona_mansion': act 'Sell the <<$property_display[i]>>': gs 'agentned', 'finalise_sale', 'matryona_mansion', i
+					if $property_code[i] = 'city_house': act 'Sell the <<$property_display[i]>>': gs 'agentned', 'finalise_sale', 'city_house', i
 				end
 				i += 1
 			if i < count: jump 'listing_offers_on_owned_properties_loop'
@@ -237,10 +237,10 @@ if $ARGS[0] = 'finalise_sale':
 	'<center><b><font color = maroon>Real Estate Agency</font></b></center>'
 	'<center><img <<$set_imgh>> src="images/locations/city/citycenter/realestate/agenstvo_paperwork.jpg"></center>'
 	minut += 30
-	'You spend thirty minutes filling out the paperwork for the sale of your <<$property_display>>. <<func(''agentned'', ''format_price_string'', ( (offer*95)/100) )>><b>₽</b> has been paid into your bank account.'
+	'You spend thirty minutes filling out the paperwork for the sale of your <<$property_display[ARGS[2]]>>. <<func(''agentned'', ''format_price_string'', ( (offer*95)/100) )>><b>₽</b> has been paid into your bank account.'
 	gs 'homes_properties', 'sell_property', $ARGS[1], offer
 	karta += (offer*95)/100
-	delact 'Sell the <<$property_display>>'
+	delact 'Sell the <<$property_display[ARGS[2]]>>'
 	gs 'stat'
 	killvar 'property_display' & killvar 'property_sales_price'
 end

+ 64 - 64
locations/albina_chat.qsrc

@@ -28,7 +28,7 @@ if $ARGS[0] = 'small_talk2':
 		gs 'albina_chat','bella_conversation'
 		gs 'albina_chat','lazar_conversation'
 		gs 'albina_chat','zoya_conversation'
-		
+
 	else
 		!! Albina takes the lead
 		AlbinaQW['chat_rand'] = rand(1,3)
@@ -61,26 +61,26 @@ if $ARGS[0] = 'job_talk1':
 	end
 	act 'Odd jobs':
 		cla & *nl
-		'"Odd jobs here and there," you shrug. "There''s a lot of things to do around town. They don''t pay very much, but it gives me some spending money. You could try doing that?"' 
+		'"Odd jobs here and there," you shrug. "There''s a lot of things to do around town. They don''t pay very much, but it gives me some spending money. You could try doing that?"'
 		'She wrinkles her nose in disgust. "I don''t want to <i>work</i> for a living," she says, sending both of you into giggles.'
 		gs 'albina_chat','small_talk'
 	end
-	
+
 	gs 'albina_chat2','first_model_talk1'
-	
+
 	if film > 0:
 		act 'Tell her you''ve shot porn': cla & gs 'albina_chat','pornstar_talk1'
 	end
-	
-		
+
+
 	!!{if masseuse['jobtype'] ! 0:
 		act 'I work as a masseuse':
 			cla & *nl
-			
+
 			gs 'albina_chat','small_talk'
 		end
 	end}
-	
+
 	if stripdancesum > 0:
 		act 'I''m a stripper':
 			cla & *nl
@@ -111,7 +111,7 @@ if $ARGS[0] = 'stripper_talk1':
 			gs 'albina_chat','small_talk'
 		end
 	end
-	
+
 	act 'Nonchalant':
 		cla & *nl
 		'"I do some strip dancing in the city," you say casually.'
@@ -133,7 +133,7 @@ if $ARGS[0] = 'stripper_talk1':
 			gs 'albina_chat','small_talk'
 		end
 	end
-	
+
 	act 'Proud':
 		cla & *nl
 		'"I do some strip dancing in the city," you admit, letting a smug smile creep onto your lips.'
@@ -145,7 +145,7 @@ if $ARGS[0] = 'stripper_talk1':
 				'"I got a fake passport. Expensive sumbitch, but it gets me into 18+ areas."'
 				'She grins. "Maybe I''ll come visit you at work one night..."'
 				'"I''m not giving you a free show," you smirk.'
-				'She smiles even wider. "Don''t worry, I''d happily pay to watch you shake that ass!"' 
+				'She smiles even wider. "Don''t worry, I''d happily pay to watch you shake that ass!"'
 				gs 'albina_chat','small_talk'
 			end
 		else
@@ -167,7 +167,7 @@ if $ARGS[0] = 'pornstar_talk1':
 			'"Ew! You''re doing porn?! Seriously?!" She grimaces at you in disgust.'
 			gs 'albina_chat','pornstar_talk2'
 		end
-		
+
 		act 'Casual':
 			$AlbinaQW['porn_talk'] = 'casual'
 			cla & *clr
@@ -176,7 +176,7 @@ if $ARGS[0] = 'pornstar_talk1':
 			'"Ew! You''re doing porn?! Seriously?!" She grimaces at you in disgust.'
 			gs 'albina_chat','pornstar_talk2'
 		end
-		
+
 		act 'Happy':
 			$AlbinaQW['porn_talk'] = 'happy'
 			cla & *clr
@@ -259,7 +259,7 @@ if $ARGS[0] = 'pornstar_talk2.3':
 			cla & *nl
 			'"I need the money," you shrug. "It pays decently well."'
 			gs 'albina_chat','albina_porn_rant1'
-			
+
 			gs 'albina_chat','pornstar_talk3.1'
 			gs 'albina_chat','pornstar_talk3.2'
 		end
@@ -275,7 +275,7 @@ if $ARGS[0] = 'pornstar_talk2.4':
 			'"I just want to be able to afford nice things," you shrug. "The pay is pretty good and lets me buy expensive stuff. Is that so wrong?"'
 		end
 		gs 'albina_chat','albina_porn_rant2'
-		
+
 		gs 'albina_chat','pornstar_talk3.1'
 		gs 'albina_chat','pornstar_talk3.2'
 	end
@@ -290,7 +290,7 @@ if $ARGS[0] = 'pornstar_talk2.5':
 			'"It''s kind of fun actually," you smirk. "The sex is really good and it kind of makes me feel like a movie star."'
 		end
 		gs 'albina_chat','albina_porn_rant2'
-		
+
 		gs 'albina_chat','pornstar_talk3.1'
 		gs 'albina_chat','pornstar_talk3.2'
 	end
@@ -323,7 +323,7 @@ if $ARGS[0] = 'pornstar_talk3.2':
 			'"Thanks," you say and finally move on to other topics.'
 			gs 'albina_chat','small_talk'
 		end
-		
+
 		act 'Apologize':
 			cla & *nl
 			'You take a deep breath as your adrenaline comes down.'
@@ -351,7 +351,7 @@ if $ARGS[0] = 'underwear_talk':
 			'You both laugh at that.'
 			gs 'albina_chat','small_talk'
 		end
-		
+
 		act 'I like them':
 			cla & *nl
 			'"I just like them," you shrug. "They''re cheap and comfortable, and I like the designs."'
@@ -359,7 +359,7 @@ if $ARGS[0] = 'underwear_talk':
 			gs 'albina_chat','small_talk'
 		end
 	end
-	
+
 	act 'Pussy Kats':
 		cla & *nl
 		'"I get most of my underwear from Pussy Kats," you reply.'
@@ -371,7 +371,7 @@ if $ARGS[0] = 'underwear_talk':
 			'She punctuates her acronym by drawing an inverted triangle with both her index fingers while smirking and bouncing her eyebrows at you.'
 			gs 'albina_chat','small_talk'
 		end
-		
+
 		act 'They''re cute':
 			cla & *nl
 			'"I like cute panties," you answer. "Between the cuts, designs and colors, Pussy Kats are the cutest."'
@@ -379,7 +379,7 @@ if $ARGS[0] = 'underwear_talk':
 			gs 'albina_chat','small_talk'
 		end
 	end
-	
+
 	act 'Fashionista':
 		cla & *nl
 		'"I get most of my underwear from Fashionista," you reply.'
@@ -387,7 +387,7 @@ if $ARGS[0] = 'underwear_talk':
 		'"I guess. I just like the way it looks and feels."'
 		gs 'albina_chat','small_talk'
 	end
-	
+
 	act 'Lusso':
 		cla & *nl
 		'"I get most of my underwear from Lusso Intimo," you reply.'
@@ -396,7 +396,7 @@ if $ARGS[0] = 'underwear_talk':
 		'"Quality doesn''t matter to me as long as it''s a thong and it looks good. And they don''t sell thongs there," she grins wickedly.'
 		gs 'albina_chat','small_talk'
 	end
-	
+
 	act 'I mostly wear sports underwear':
 		cla & *nl
 		'"I mostly buy sports underwear actually," you reply.'
@@ -407,17 +407,17 @@ if $ARGS[0] = 'underwear_talk':
 			'"Got hella V-P-O though," she says while drawing an inverted triangle with both her index fingers and bouncing her eyebrows suggestively.'
 			gs 'albina_chat','small_talk'
 		end
-		
+
 		act 'Good for dancing':
 			cla & *nl
-			'"They''re good for dancing," you shrug. "Nice and flexible, no chaffing."'
+			'"They''re good for dancing," you shrug. "Nice and flexible, no chafing."'
 			'"You''re still dancing?" she asks seriously. "After Starlets shut down and all I thought you might..."'
 			'"Of course I''m still dancing! Aren''t you?"'
 			'"I guess that''s a fair point," she smiles back, perhaps feeling a little silly for assuming.'
 			gs 'albina_chat','small_talk'
 		end
 	end
-	
+
 	if pcs_traits['commando_lvl'] = 3:
 		act 'I don''t wear underwear':
 			AlbinaQW['commando_know'] = 3
@@ -432,7 +432,7 @@ if $ARGS[0] = 'underwear_talk':
 				'She stares at you for a few seconds. "Slut," she replies as her face breaks into one of the biggest grins you''ve ever seen her wear.'
 				gs 'albina_chat','small_talk'
 			end
-			
+
 			act 'Casual':
 				cla & *nl
 				'"I don''t," you shrug.'
@@ -449,7 +449,7 @@ if $ARGS[0] = 'underwear_talk':
 				'She stares at you for a few seconds. "Slut," she replies as her face breaks into one of the biggest grins you''ve ever seen her wear.'
 				gs 'albina_chat','small_talk'
 			end
-			
+
 			act 'Proud':
 				cla & *nl
 				'"I don''t wear panties," you smirk.'
@@ -478,14 +478,14 @@ if $ARGS[0] = 'commando_talk':
 				'"<i>That''s</i> weird," she says while giving you a funny look.'
 				gs 'albina_chat','small_talk'
 			end
-			
+
 			act 'It seemed sexy':
 				cla & *nl
 				'"It just seemed sexy at the time. Made me <i>feel</i> sexy. That''s why I started anyways. Now I can''t go back. It feels weird having something between my legs covering my pussy. It would be like if I walked around with tape over my nipples under my shirt."'
 				'"Well, you''re right about the sexy part," she smirks while eyeing your ass.'
 				gs 'albina_chat','small_talk'
 			end
-			
+
 			act 'Panty lines':
 				cla & *nl
 				'"I started because I didn''t want panty lines," you explain. "But now it''s a personal comfort thing. It feels weird having something between my legs covering my pussy. It would be like if I walked around with tape over my nipples under my shirt."'
@@ -494,7 +494,7 @@ if $ARGS[0] = 'commando_talk':
 				gs 'albina_chat','small_talk'
 			end
 		else
-		
+
 		end
 	else
 		'"So you really never wear underwear?" she asks, that twinkle back in her eye again.'
@@ -565,7 +565,7 @@ if $ARGS[0] = 'pube_talk2':
 			'"Fuck yeah!" Albina cheers, high-fiving you. "Smooth pussy for life!"'
 			gs 'albina_chat','small_talk'
 		end
-		
+
 		act 'It''s stylish':
 			cla & *clr
 			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/albina/albinatalk.jpg"></center>'
@@ -573,7 +573,7 @@ if $ARGS[0] = 'pube_talk2':
 			'"Pfft-! You''re just like Katja," she snickers. "But I won''t complain that you see it my way either. Smooth pussy revolution!" she cheers, high-fiving you.'
 			gs 'albina_chat','small_talk'
 		end
-		
+
 		act 'Boys like it':
 			cla & *clr
 			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/albina/albinatalk.jpg"></center>'
@@ -595,9 +595,9 @@ if $ARGS[0] = 'pube_talk2':
 			end
 			gs 'albina_chat','small_talk'
 		end
-		
+
 		gs 'albina_chat','grow_pubes_chat1'
-		
+
 	elseif $pube_style['word'] = 'stubbly':
 		!! stubbly
 		act 'I really need to':
@@ -608,9 +608,9 @@ if $ARGS[0] = 'pube_talk2':
 			'"Ew. I can''t even wait a day. If I feel stubble, the wax comes out <i>that night</i>."'
 			gs 'albina_chat','small_talk'
 		end
-		
+
 		gs 'albina_chat','grow_pubes_chat1'
-		
+
 		if pubestyle = 11:
 			act 'Only once it gets bad (lazy)':
 				cla & *clr
@@ -621,7 +621,7 @@ if $ARGS[0] = 'pube_talk2':
 				'"Ew. I don''t know how you can stand it. If I feel stubble, the wax comes out <i>that night</i>."'
 			end
 		end
-		
+
 		'"I can''t help but notice in the locker room that you don''t keep your stubble clean all the time," she remarks with a raised eyebrow.'
 	elseif pcs_pubes <= 15:
 		!! small patch
@@ -630,11 +630,11 @@ if $ARGS[0] = 'pube_talk2':
 		!! trimmed/styled bush
 		if (pubestyle >= 2 and pubestyle <= 8) or pubestyle >= 12:
 			!! styled section
-			'"Ugh, how can you stand having hair down there?" she rants. "I bet making it look all fancy doesn''t make it any less itchy!"' 
+			'"Ugh, how can you stand having hair down there?" she rants. "I bet making it look all fancy doesn''t make it any less itchy!"'
 			gs 'albina_wine_event', 'shave_answer5'
 		else
 			!! trimmed section
-			'Ugh, how can you stand having hair down there?" she rants. "You''ve already trimmed it down, so why not just finish the job and shave it off?"' 
+			'Ugh, how can you stand having hair down there?" she rants. "You''ve already trimmed it down, so why not just finish the job and shave it off?"'
 			gs 'albina_wine_event', 'shave_answer5'
 		end
 	elseif pcs_pubes <= 30:
@@ -646,7 +646,7 @@ if $ARGS[0] = 'pube_talk2':
 		'"Holy shit <<$pcs_nickname>>, do you <i>ever</i> shave?" she asks with a disgusted look on her face as she moves her head uncomfortably on your lap before turning to glance down at the wild bush between your legs. "You practically have an entire sheep down there! How can you stand it?"'
 		gs 'albina_wine_event','shave_answer6'
 	end
-	
+
 end
 
 if $ARGS[0] = 'grow_pubes_chat1':
@@ -656,7 +656,7 @@ if $ARGS[0] = 'grow_pubes_chat1':
 		'"I''m actually growing it out right now," you say.'
 		gs 'albina_chat','grow_pubes_chat2'
 	end
-	
+
 	act 'Thinking about growing it out':
 		cla & *clr
 		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/albina/albinatalk.jpg"></center>'
@@ -671,15 +671,15 @@ if $ARGS[0] = 'grow_pubes_chat2':
 		cla & *nl
 		'"No reason," you shrug back. "Change of pace I guess. Might feel nice having some hair down there again."'
 	end
-	
+
 	act 'Too much work':
 		cla & *nl
-		
+
 	end
-	
+
 	act 'Feels weird':
 		cla & *nl
-		
+
 	end
 end
 
@@ -768,11 +768,11 @@ if $ARGS[0] = 'lover_conversation':
 		cla & *clr
 		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/albina/albinatalk.jpg"></center>'
 		'You shake your head. "Not really, no..."'
-		'She shakes her head and smiles. "Don''t worry, not everyone''s interested in dating."' 
+		'She shakes her head and smiles. "Don''t worry, not everyone''s interested in dating."'
 		act 'Stop talking': gt 'albinahome', 'bedroom'
 		act 'Change the subject': gt 'albina_chat', 'chat'
 	end
-	
+
 	if arrsize('$fuckbuddy') = 1:
 		act 'I have a fuckbuddy':
 			cla & *clr
@@ -803,7 +803,7 @@ if $ARGS[0] = 'lover_conversation':
 			act 'Change the subject': gt 'albina_chat', 'chat'
 		end
 	end
-	
+
 	if stat['hookup'] > 0:
 		act 'I hook up with random guys':
 			cla & *clr
@@ -812,7 +812,7 @@ if $ARGS[0] = 'lover_conversation':
 			'"Duh. I can''t go a day without some pervert catcalling me about my ass and trying to get me to go home with them."'
 			'"Sometimes I let them," you wink and Albina''s jaw drops.'
 			'"You slut!" she grins.'
-			'"Hey!" you say, shoving her back with both hands but laughing anyways.'	
+			'"Hey!" you say, shoving her back with both hands but laughing anyways.'
 			'"Ow! Come on! You know I''m kidding. But seriously, do you really get off on one night stands? I like fucking Lazar because he <i>knows</i> how to fuck me. He knows exactly what to do to drive me insane and I love it. Is fucking a random guy once enough for you?"'
 			!! '"Ow! Come on! You know I''m kidding. But seriously, you would really trust a random guy you just met like that?"'
 			act 'It''s hit or miss':
@@ -823,7 +823,7 @@ if $ARGS[0] = 'lover_conversation':
 				act 'Stop talking': gt 'albinahome', 'bedroom'
 				act 'Change the subject': gt 'albina_chat', 'chat'
 			end
-			
+
 			act 'Absolutely':
 				cla & *nl
 				'"Absolutely," you grin. "I love trying new dicks! I think I''m up to <<stat[''vaginal'']>>."'
@@ -834,7 +834,7 @@ if $ARGS[0] = 'lover_conversation':
 			end
 		end
 	end
-	
+
 	if Rex_Love = 1 or artemQW['bf'] = 1 or kotovLoveQW = 1 or fedorKozlovQW or NikoVolkovQW >= 5 or pcs_lover > pcs_girlfriends:
 		act 'I have a boyfriend':
 			cla & *clr
@@ -884,7 +884,7 @@ if $ARGS[0] = 'lover_conversation':
 					'You shake your head. "He''s sweet, and really nice to me."'
 					'She laughs, seemingly amused by your words. "Yeah, I''m sure he is ''nice'' and ''sweet''. Does he rock your world though?" she asks with a grin.'
 					'You disregard her comment. "There''s more to life than sex you know!" The amused look on her face tells you she isn''t buying it. "Okay fine, he''s pretty good at it... Good enough anyway."'
-					'She again laughs at your comment. "I''m sure that feedback will be well received! Whatever, he''s a nerd who''s getting some pussy. That makes him the alpha of that pack of losers," she says while shrugging her shoulders.' 
+					'She again laughs at your comment. "I''m sure that feedback will be well received! Whatever, he''s a nerd who''s getting some pussy. That makes him the alpha of that pack of losers," she says while shrugging her shoulders.'
 					act 'Stop talking': gt 'albinahome', 'bedroom'
 					act 'Change the subject': gt 'albina_chat', 'chat'
 				end
@@ -918,7 +918,7 @@ if $ARGS[0] = 'lover_conversation':
 			if albina['kolka_know'] = 0:
 				'"Well..." you say. "I''ve been doing stuff with Kolka lately."'
 				'"Kolka? Who''s Kolk-" She stops mid-sentence and her eyes go wide. "Wait, you mean your <i>brother</i>?!"'
-				
+
 				if brotherSex >= 5:
 					act 'It''s just handjobs':
 						cla & *nl
@@ -934,8 +934,8 @@ if $ARGS[0] = 'lover_conversation':
 						act 'Stop talking': gt 'albinahome', 'bedroom'
 						act 'Change the subject': gt 'albina_chat', 'chat'
 					end
-				end	
-				
+				end
+
 				if brotherSex >= 6:
 					act 'It''s just blowjobs':
 						cla & *nl
@@ -951,8 +951,8 @@ if $ARGS[0] = 'lover_conversation':
 						act 'Stop talking': gt 'albinahome', 'bedroom'
 						act 'Change the subject': gt 'albina_chat', 'chat'
 					end
-				end	
-				
+				end
+
 				if brotherSex = 9:
 					act 'It''s just casual':
 						cla & *nl
@@ -966,8 +966,8 @@ if $ARGS[0] = 'lover_conversation':
 						act 'Stop talking': gt 'albinahome', 'bedroom'
 						act 'Change the subject': gt 'albina_chat', 'chat'
 					end
-				end	
-				
+				end
+
 				if brotherSex = 10:
 					act 'I love him':
 						cla & *nl
@@ -981,7 +981,7 @@ if $ARGS[0] = 'lover_conversation':
 						act 'Stop talking': gt 'albinahome', 'bedroom'
 						act 'Change the subject': gt 'albina_chat', 'chat'
 					end
-				end	
+				end
 			else
 				'"Well, still mostly Kolka, but-"'
 				'Albina shoves her hand directly into your face and clamps it over your mouth while glaring at you.'
@@ -1004,7 +1004,7 @@ if $ARGS[0] = 'zoya_conversation':
 			act 'Continue':
 				cla & *clr
 				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/albina/albinatalk.jpg"></center>'
-				'"It made her uncomfortable and after she ended up pregnant with me, things just got worse. My father never wanted children, so they argued constantly after I was born. She ended up divorcing him when I was 8 years old after she found out about the 18 year old gold digging stripper whore who was sucking his dick every chance she got. She stormed out on him and never looked back. Being forced to leave me behind broke her heart and she''s still feeling guilty about it, so please don''t mention anything about it to her."' 
+				'"It made her uncomfortable and after she ended up pregnant with me, things just got worse. My father never wanted children, so they argued constantly after I was born. She ended up divorcing him when I was 8 years old after she found out about the 18 year old gold digging stripper whore who was sucking his dick every chance she got. She stormed out on him and never looked back. Being forced to leave me behind broke her heart and she''s still feeling guilty about it, so please don''t mention anything about it to her."'
 				'"Anyway, she went to Moscow and finally got into university, where she earned her degree before she moved back here and got her dream job working at a hospital in the city, right under his nose. She''s looking into getting me into uni myself," she says with a warm smile and a twinkle in her eye. You''ve never seen her look so... happy before.'
 				'She turns to you. "So what about you? What do you want to do after school?" she asks warmly.'
 				act 'I don''t know':
@@ -1034,7 +1034,7 @@ if $ARGS[0] = 'zoya_conversation':
 				if loverGender[i] ! 1: dynamic '	act ''Get married to <<$npc_usedname["<<$lover[i]>>"]>>'': gt ''albina_chat'', ''telling_marrige_dreams'', $npc_usedname["<<$lover[i]>>"]'
 				i +=1
 				if i < ARRSIZE('lover'): jump 'marrid_looop'
-				Killvar 'i'				
+				Killvar 'i'
 			end
 		end
 	end
@@ -1073,7 +1073,7 @@ if NikoPayback = 2 and AlbinaQW['niko_help'] = 0:
 	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/albina/albinatalk.jpg"></center>'
 	'You feel Albina wrap an arm around you. "What''s up, <<$pcs_nickname>>? You''re looking pretty glum."'
 	'You collect your thoughts before replying. "Ever since I broke up with Niko, he''s been raping me at lunchtime and I..."'
-	'Her face contorts in rage. "That slimy little motherfucker''s been doing WHAT?! Don''t worry, I''ll sort him out..."' 
+	'Her face contorts in rage. "That slimy little motherfucker''s been doing WHAT?! Don''t worry, I''ll sort him out..."'
 	'She doesn''t eleborate on what she''s planning when you ask, but you give her a tight hug. "Thanks Albina, I just don''t know what to do!"'
 	act 'Continue': gt 'albinahome','bedroom'
 	end

+ 1 - 0
locations/albina_starlets.qsrc

@@ -259,6 +259,7 @@ if $ARGS[0] = 'starlets':
 	AlbinaQW['startletsday'] = daystart
 	starlets_practice = 0
 	gs 'exercise', 'tier2', 120, 'agil', 'dancero'
+	gs 'exp_gain', 'dancero', 2
 	pcs_mood -= 5
 	inhib_exp += rand(2,4)
 	if perform_lvl < 35: gs 'exp_gain', 'perform', 1

+ 2 - 0
locations/alexandriaEv.qsrc

@@ -1607,5 +1607,7 @@ if $ARGS[0] = 'anamotel':
 	end
 end
 
+killvar 'dummy'
+
 --- alexandriaEv ---------------------------------
 

+ 3 - 2
locations/anush_bedroom_city.qsrc

@@ -72,6 +72,7 @@ if $ARGS[0] = 'anushroom':
 	music_loop = 1
 	*clr & cla
 	minut += 1
+	killvar '$returnLoc'
 	gs 'stat'
 	'<center><h4><font color="maroon">Anushka''s Room</font></h4></center>'
 	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/anushroom.jpg"></center>'
@@ -238,8 +239,8 @@ if $ARGS[0] = 'night_stand':
 		end
 !!this goes to anushkaev1 can you do what ever code is needed so both here and her pav apartment lead to it and then they go back to the correct location afterwards? That will save us from making a new sex folder with just a lot of repeat of the same content.
 !HM: done
-		act 'Strap-on': gt 'anushkaev1', 'strapon1', 'city'
-		act 'Butt plug': gt 'anushkaev1', 'buttplug', 'city'
+		act 'Strap-on': $returnLoc = '_city' & gt 'anushkaev1', 'strapon1'
+		act 'Butt plug': $returnLoc = '_city' & gt 'anushkaev1', 'buttplug'
 		act 'Joint':
 			*clr & cla
 			minut += 2

+ 212 - 141
locations/anushapt.qsrc

@@ -1,5 +1,5 @@
 # anushapt
-!2024/03/25
+!2024/04/03
 !AnushkaLoc tells us where Anvushka is located
 !----------------------------------------------
 !AnushkaLoc = 0 (Anushka not home)
@@ -12,6 +12,9 @@
 !AnushkaLoc = 7 (Anushka in the bathroom)
 !---------------------------------------------
 
+!!anushkaQW['edtalk'] += 1  how many times Sveta has talked to Ed in the living room
+!!anushkaQW['kidstory'] += 1 How many times Ed has told Sveta bout Anushka as a kid
+
 if $ARGS[0] = 'home':
 	menu_off = 0
 	$track_loop = ''
@@ -36,10 +39,10 @@ if $ARGS[0] = 'home':
 	'You walk up to the front door and knock.'
 	if hour >= 22:
 		'It''s too late in the day to visit Anushka.'
-		act 'Move away from the door':gt'pav_complex', 'start'
+		act 'Move away from the door':gt 'pav_complex', 'start'
 	elseif hour < 8:
 		'It''s too early in the day to visit Anushka.'
-		act 'Move away from the door':gt'pav_complex', 'start'
+		act 'Move away from the door':gt 'pav_complex', 'start'
 	elseif locat['A144'] = 30:
 		*clr & cla
 		menu_off = 1
@@ -47,27 +50,27 @@ if $ARGS[0] = 'home':
 		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/maksim.jpg"></center>'
 		'You stand outside the Konstantinov household knocking on the door. It''s some time before someone answers it. In the end, it turns out to be Maksim. He looks you over from head to toe, obviously trying to imagine you naked. "Nush isn''t here right now. She''s driving around the country with the band, they went on tour, I wish I could have gone."'
 		'You nod to that, you remember that now. "Right, I can''t believe I forgot that, well hope they are having fun."'
-		'"Rad is likely banging all the bitch''s." His tone makes it sound like he is a little jealous. "Nush is likely getting gangbanged by the band or a bunch of random dude every night." He says smuggly like it is some kind of joke.'
+		'"Rad is likely banging all the bitch''s." His tone makes it sound like he is a little jealous. "Nush is likely getting gangbanged by the band or a bunch of random dude every night." He says smugly like it is some kind of joke.'
 		*nl
 		'You shake your head. "You really shouldn''t say that about your sister."'
-		'He snorts derisively. "What are you my dad all of a sudden? Besides that''s what mom says."'
+		'He snorts derisively. "What are you my dad all of a sudden? Besides that''s what Mom says."'
 		'You just sigh, no point trying to talk to him about that. "Anyways do you know when they will be back?"'
-		'He shrugs. "She is suppose to be back sometime in August, mom said I can''t let any of her friends in while she is gone." Before you can even get a word in, he slowly closes the door checking you out as he does. With nothing more to do, you turn to leave.'
-		act 'Move away from the door':gt'pav_complex', 'start'
+		'He shrugs. "She is supposed to be back sometime in August, mom said I can''t let any of her friends in while she is gone." Before you can even get a word in, he slowly closes the door checking you out as he does. With nothing more to do, you turn to leave.'
+		act 'Move away from the door':gt 'pav_complex', 'start'
 	elseif yearstart > 1:
 		*clr & cla
 		menu_off = 1
 		gs 'stat'
 		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/maksim.jpg"></center>'
-		'You stand outside the Konstantinov household knocking on the door. It''s some time before someone answers it. In the end, it turns out to be Maksim. He looks you over from head to toe, obviously trying to imagine you naked. "Nush isn''t moved out, she moved to the city with Rad and the guys, they got some apartment near the Uni so she can go to school." He sounds like he is about to throw up thinking about choosing to attend more school, he doesn''t seem to like school much.'
+		'You stand outside the Konstantinov household knocking on the door. It''s some time before someone answers it. In the end, it turns out to be Maksim. He looks you over from head to toe, obviously trying to imagine you naked. "Nush isn''t here she moved out, she moved to the city with Rad and the guys, they got some apartment near the University so she can go to school." He sounds like he is about to throw up thinking about choosing to attend more school, he doesn''t seem to like school much.'
 		'You nod to that. "Oh... ok, do you have their address?"'
-		'He sighs loudly like you are huge bother. "No, Rad works at the music store in the mall, I try and stop by when I get time to go to the city. Maybe you can stop by and ask him." He makes it sound like he is real busy and traveling around doing important stuff.'
+		'He sighs loudly like you are a huge bother. "No, Rad works at the music store in the mall, I try and stop by when I get time to go to the city. Maybe you can stop by and ask him." He makes it sound like he is real busy and traveling around doing important stuff.'
 		*nl
-		'You snort slightly in amusement. "Your sister work there too?"'
-		'He rolls his eyes. "No." He says no like you are a idiot for asking. "She works as a waitress or something at a coffee shop near where they live, like she could get a cool job like Rad, she is just some dumb waitress."'
-		'You just sigh, you are briefly tempted to point out your mom is just a waitress too. But no point trying to talk to him about that. "Anyways thanks I guess."'
-		'He shrugs. "Whatever, mom said I can''t let any of her friends since she doesn''t live here anymore." Before you can even get a word in, he slowly closes the door checking you out as he does. With nothing more to do, you turn to leave.'
-		act 'Move away from the door':gt'pav_complex', 'start'
+		'You snort slightly in amusement. "Your sister works there too?"'
+		'He rolls his eyes. "No." He says no like you are an idiot for asking. "She works as a waitress or something at a coffee shop near where they live, like she could get a cool job like Rad, she is just some dumb waitress."'
+		'You just sigh, you are briefly tempted to point out that your mom is just a waitress too. But no point trying to talk to him about that. "Anyways thanks I guess."'
+		'He shrugs. "Whatever, Mom said I can''t let any of her friends since she doesn''t live here anymore." Before you can even get a word in, he slowly closes the door checking you out as he does. With nothing more to do, you turn to leave.'
+		act 'Move away from the door':gt 'pav_complex', 'start'
 	elseif ((hour >= 15 and hour < 20) or (week > 5 and hour >= 10 and hour < 20)) and locat['A144'] ! 22 and (rand(0,4) = 0):
 		*clr & cla
 		menu_off = 1
@@ -75,24 +78,24 @@ if $ARGS[0] = 'home':
 		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/valeria.jpg"></center>'
 		'You stand outside the Konstantinov household knocking on the door. It''s some time before someone answers it. In the end, it turns out to be Anushka''s mother.'
 		'Her mother just stands there, glaring at you for a while. "Well now, don''t just stand there. What do you want? Oh wait, let me guess you want to see Anushka? Well, the little slut isn''t here, and I don''t know when she''ll be back, so why don''t you just go bother someone else?" Before you can even get a word in, she slams the door in your face, and you hear all the locks click into place. With nothing more to do, you turn to leave.'
-		act 'Move away from the door':gt'pav_complex', 'start'
+		act 'Move away from the door':gt 'pav_complex', 'start'
 	elseif locat['A144'] = 24:
 		*clr & cla
 		AnushkaLoc = 0
 		band['practice_invite'] = 1
 		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/maksim.jpg"></center>'
-		'Maksim answers the door instead. He looks you over from head to toe, obviously trying to imagine you naked. "Anushka''s not here right now. She''s down in the garage the band rents and turned into some sort of cool studio. They''re likely practicing or partying with some bitches. You can wait for her in her room if you want, or you can just go down there."'
+		'Maksim answers the door instead. He looks you over from head to toe, obviously trying to imagine you naked. "Anushka''s not here right now. She''s down in the garage with the band, that they turned into some sort of cool studio. They''re likely practicing or partying with some bitches. You can wait for her in her room if you want, or you can just go down there."'
 		'You shake your head, but there''s nothing you can do about it. Should you go in and wait for her or just go? As you decide, you can feel Maksim undressing you with his eyes as he stares straight at your tits.'
-		act 'Leave': gt 'pav_complex','start'
-		act 'Enter': gt 'anushapt','hallway'
+		act 'Leave': gt 'pav_complex', 'start'
+		act 'Enter': gt 'anushapt', 'hallway'
 	elseif locat['A144'] = 25:
 		*clr & cla
 		AnushkaLoc = 0
 		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/maksim.jpg"></center>'
 		'Maksim answers the door instead. He looks you over from head to toe, obviously trying to imagine you naked. "Anushka''s not here right now. She''s at the disco or out sucking some guy''s dick or something. You can wait for her in her room if you want, or you can just go there."'
 		'You shake your head, but there is nothing you can do about it. Should you go in and wait for her or just go? As you decide, you can feel Maksim undressing you with his eyes as he stares straight at your tits.'
-		act 'Leave': gt 'pav_complex','start'
-		act 'Enter': gt 'anushapt','hallway'
+		act 'Leave': gt 'pav_complex', 'start'
+		act 'Enter': gt 'anushapt', 'hallway'
 	elseif locat['A144'] = 22:
 		*clr & cla
 		menu_off = 1
@@ -109,27 +112,27 @@ if $ARGS[0] = 'home':
 			'Maksim answers the door instead. He looks you over from head to toe, obviously trying to imagine you naked. "What?" he asks.'
 			'You ignore his staring and ask "Is Anushka home?"'
 			'He hooks his thumb over his shoulder to point down the hall. "She''s taking a shower."'
-			act 'Leave': gt 'pav_complex','start'
-			act 'Enter': gt 'anushapt','hallway'
-			act 'Wait in her room': gt 'anushapt','shower_wait'
-			act 'Go to the bathroom': gt 'anushapt','nushshower'
+			act 'Leave': gt 'pav_complex', 'start'
+			act 'Enter': gt 'anushapt', 'hallway'
+			act 'Wait in her room': gt 'anushapt', 'shower_wait'
+			act 'Go to the bathroom': gt 'anushapt', 'nushshower'
 			act 'Ask how he knows that':
 				*clr & cla
 				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/maksim.jpg"></center>'
 				'You smile a little. "How do you know she''s taking a shower?"'
 				'He blushes a little and sputters "I can hear the water."'
-				act 'Leave': gt 'pav_complex','start'
-				act 'Enter': gt 'anushapt','hallway'
-				act 'Wait in her room': gt 'anushapt','shower_wait'
-				act 'Go to the bathroom': gt 'anushapt','nushshower'
+				act 'Leave': gt 'pav_complex', 'start'
+				act 'Enter': gt 'anushapt', 'hallway'
+				act 'Wait in her room': gt 'anushapt', 'shower_wait'
+				act 'Go to the bathroom': gt 'anushapt', 'nushshower'
 				act 'Tease him':
 					*clr & cla
 					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/maksim.jpg"></center>'
 					'You grin at him. "So you haven''t been spying on her taking a shower? She told me you spy on her and her friends."'
 					'He blushes red and sputters "No!" He doesn''t seem to know what to do, so he turns and walks away. Just before he goes into his room, he adds "Fuck you, I can hear the water." Before you can reply, he goes into his room and closes the door.'
-					act 'Wait in her room': gt 'anushapt','shower_wait'
-					act 'Go to the bathroom': gt 'anushapt','nushshower'
-					act 'Leave': gt 'pav_complex','start'
+					act 'Wait in her room': gt 'anushapt', 'shower_wait'
+					act 'Go to the bathroom': gt 'anushapt', 'nushshower'
+					act 'Leave': gt 'pav_complex', 'start'
 				end
 			end
 		elseif nushdoor <= 6:
@@ -138,8 +141,8 @@ if $ARGS[0] = 'home':
 			'<center><img <<$set_imgh>> src="images/characters/shared/headshots_main/big144.jpg"></center>'
 			'You stand outside the Konstantinov household and hope that Anushka will open the door.'
 			'To your relief, she opens the door, smiling. "Hey <<$pcs_nickname>>. Come on in."'
-			act 'Leave': gt 'pav_complex','start'
-			act 'Enter': gt 'anushapt','hallway'
+			act 'Leave': gt 'pav_complex', 'start'
+			act 'Enter': gt 'anushapt', 'hallway'
 		elseif nushdoor <= 9 and anushkaQW['tv_day'] ! daystart:
 			*clr & cla
 			AnushkaLoc = 5
@@ -147,7 +150,7 @@ if $ARGS[0] = 'home':
 			'<center><img <<$set_imgh>> src="images/characters/shared/headshots_main/big144.jpg"></center>'
 			'You stand outside the Konstantinov household and hope that Anushka will open the door.'
 			'To your relief, she opens the door, smiling. "Hey <<$pcs_nickname>>. Come in, I was just watching some TV." As you go inside, she closes the door and heads for the living room where some action movie is playing on the TV. She practically falls down on the couch as she takes a seat.'
-			act 'Take a seat next to her': gt 'anushapt','nushlivroom'
+			act 'Take a seat next to her': gt 'anushapt', 'nushlivroom'
 		elseif nushdoor <= 10 and locat['A154'] = 23:
 			*clr & cla
 			AnushkaLoc = 2
@@ -155,23 +158,23 @@ if $ARGS[0] = 'home':
 			'You stand outside the Konstantinov household and wait for Anushka to open the door, but Maksim answers instead.'
 			'He looks you over from head to toe, obviously trying to imagine you naked. "What?" he asks.'
 			'You ignore his staring and ask "Is Anushka home?"'
-			'With a smug look on his face, he hooks his thumb over his shoulder to point down the hall. "She''s in her room getting pounded like the slut she is by Radomir."'
-			act 'Leave': gt 'pav_complex','start'
+			'With a smug look on his face, he hooks his thumb over his shoulder to point down the hall. "She''s in her room getting pounded like the slut she is by Rad."'
+			act 'Leave': gt 'pav_complex', 'start'
 			act 'Enter':
 				*clr & cla
 				AnushkaLoc = 2
 				'<center><img <<$set_imgh>> src="images/characters/shared/headshots_main/big154.jpg"></center>'
 				'You ignore his comment and step around him to enter the apartment. Just then, you see Radomir walking up the hall towards the door, buckling his belt back in place. He gives you a huge grin and a wink. "Hey <<$pcs_nickname>>, bad timing because you just missed out. Nush is in her room recovering from the ass fucking I just gave her."'
 				'He then reaches over and ruffles Maksim''s hair with his hand. "Your sister has a real nice tight ass, or at least she did." With that, he walks past both of you and leaves the apartment.'
-				'"See?" he sneers before walking back to his room.'
-				act 'Walk past him': gt 'anushapt','hallway'
+				'"See?" Maksim sneers before walking back to his room.'
+				act 'Walk past him': gt 'anushapt', 'hallway'
 			end
 			act 'Go to her room':
 				*clr & cla
 				AnushkaLoc = 2
 				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/anushroom/listen.jpg"></center>'
 				'As you reach Anushka''s bedroom door, you hear voices inside. One of them is Anushka, and the other is obviously a guy, probably Radomir if Maksim is to be believed. You can''t quite make out what they''re saying, so you lean against the door to hear better. You hear the guy say "Turn around and let me see that fine ass of yours."'
-				act 'Leave them in peace and leave the apartment': gt 'pav_complex','start'
+				act 'Leave them in peace and leave the apartment': gt 'pav_complex', 'start'
 				gs 'willpower', 'voyeur', 'self'
 				if will_cost <= pcs_willpwr:
 					act 'Take a peek (<<will_cost>> Willpower)':
@@ -180,8 +183,8 @@ if $ARGS[0] = 'home':
 						gs 'stat'
 						'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/anushroom/peek.jpg"></center>'
 						'Taking a little peek won''t hurt anyone. You glance around to make sure no one can see you, then you crack the door open to just barely peek in. You can just see Anushka stripping down to her underwear inside, but you can''t see the guy.'
-						act 'Leave them in peace and leave the apartment': gt 'pav_complex','start'
-						act 'Watch': gt 'anushkaev2','watch_nushrad'
+						act 'Leave them in peace and leave the apartment': gt 'pav_complex', 'start'
+						act 'Watch': gt 'anushkaev2', 'watch_nushrad'
 					end
 				else
 					act 'Take a peek (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
@@ -195,7 +198,7 @@ if $ARGS[0] = 'home':
 			'He looks you over from head to toe, obviously trying to imagine you naked. "What?" he asks.'
 			'You ignore his staring and ask "Is Anushka home?"'
 			'With a smug look on his face, he hooks his thumb over his shoulder to point down the hall. "She''s in her room getting fucked by Val."'
-			act 'Leave': gt 'pav_complex','start'
+			act 'Leave': gt 'pav_complex', 'start'
 			act 'Enter':
 				*clr & cla
 				AnushkaLoc = 2
@@ -205,14 +208,14 @@ if $ARGS[0] = 'home':
 				'He just grins a little. "Oh you know, just hanging out and having fun." He then turns to Maksim. "Are you going to come by later and help me work on my bike?"'
 				'Maksim responds to Valentin. "If my dad lets me. He''s on my ass about my homework." Val just nods at him. "Gotcha." He gives both of you a slight wave and walks out.'
 				'"See?" is all Maksim says before he walks back to his room.'
-				act 'Walk past him': gt 'anushapt','hallway'
+				act 'Walk past him': gt 'anushapt', 'hallway'
 			end
 			act 'Go to her room':
 				*clr & cla
 				AnushkaLoc = 2
 				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/anushroom/listen.jpg"></center>'
 				'As you reach Anushka''s bedroom door, you hear voices inside. One of them is Anushka, and the other is obviously a guy, probably Valentin if Maksim is to be believed. You can''t quite make out what they''re saying. You lean against the door to hear better, and you hear the guy ask "You wanna fuck?"'
-				act 'Leave them in peace and leave the apartment': gt 'pav_complex','start'
+				act 'Leave them in peace and leave the apartment': gt 'pav_complex', 'start'
 				gs 'willpower', 'voyeur', 'self'
 				if will_cost <= pcs_willpwr:
 					act 'Take a peek (<<will_cost>> Willpower)':
@@ -221,8 +224,8 @@ if $ARGS[0] = 'home':
 						gs 'stat'
 						'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/anushroom/peek.jpg"></center>'
 						'Taking a little peek won''t hurt anyone. You glance around to make sure no one can see you, then you crack the door open to just barely peek in. You can just see Anushka pulling down the pants of some guy that is lying on her bed. You can only see him from the waist down from your vantage point, so you can''t see his face, but you do see his hard dick spring free when his pants come off.'
-						act 'Leave them in peace and leave the apartment': gt 'pav_complex','start'
-						act 'Watch': gt 'anushkaev2','watch_nushval'
+						act 'Leave them in peace and leave the apartment': gt 'pav_complex', 'start'
+						act 'Watch': gt 'anushkaev2', 'watch_nushval'
 					end
 				else
 					act 'Take a peek (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
@@ -236,22 +239,21 @@ if $ARGS[0] = 'home':
 			'He looks you over from head to toe, obviously trying to imagine you naked. "What?" he asks.'
 			'You ignore his staring to ask "Is Anushka home?"'
 			'He hooks his thumb over his shoulder to point down the hall. "She''s in her room taking some black guy''s dick up her ass." he says with disgust.'
-			act 'Leave': gt 'pav_complex','start'
+			act 'Leave': gt 'pav_complex', 'start'
 			act 'Enter':
 				*clr & cla
 				AnushkaLoc = 2
 				'<center><img <<$set_imgh>> src="images/characters/shared/headshots_main/big146.jpg"></center>'
 				'You ignore his comments and step around him to enter the apartment. Just then, you see Marcus walking up the hall towards the door. He freezes in place, looking very embarrassed. He looks down to avoid eye contact. "Hey <<$pcs_nickname>>, I was just hanging out... anyways I need to get going... see you at school, yeah?" Without waiting for a reply, he hurries out of the apartment.'
 				'Maksim gives him a disgusted look as he walks by, then looks at you. "She''s so disgusting." he sneers before he walks back to his room.'
-
-				act 'Walk past him': gt 'anushapt','hallway'
+				act 'Walk past him': gt 'anushapt', 'hallway'
 			end
 			act 'Go to her room':
 				*clr & cla
 				AnushkaLoc = 2
 				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/anushroom/listen.jpg"></center>'
 				'As you reach Anushka''s bedroom door, you hear voices inside. One of them is Anushka, and the other is obviously a guy. You can''t quite make out what they''re saying. You lean against the door to hear better, and you hear the guy say "God, you''re so beautiful."'
-				act 'Leave them in peace and leave the apartment': gt 'pav_complex','start'
+				act 'Leave them in peace and leave the apartment': gt 'pav_complex', 'start'
 				gs 'willpower', 'voyeur', 'self'
 				if will_cost <= pcs_willpwr:
 					act 'Take a peek (<<will_cost>> Willpower)':
@@ -261,8 +263,8 @@ if $ARGS[0] = 'home':
 						AnushkaLoc = 2
 						'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/anushroom/peek.jpg"></center>'
 						'Taking a little peek won''t hurt anyone. You glance around to make sure no one can see you, then you crack the door open to just barely peek in. You can see a naked Anushka dropping to her knees in front of a naked black guy who has his back to you.'
-						act 'Leave them in peace and leave the apartment': gt 'pav_complex','start'
-						act 'Watch': gt 'anushkaev2','watch_nushmar'
+						act 'Leave them in peace and leave the apartment': gt 'pav_complex', 'start'
+						act 'Watch': gt 'anushkaev2', 'watch_nushmar'
 					end
 				else
 					act 'Take a peek (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
@@ -276,9 +278,39 @@ if $ARGS[0] = 'home':
 			'He looks you over from head to toe, obviously trying to imagine you naked. "What?" he asks.'
 			'You ignore his staring and ask "Is Anushka home?"'
 			'He hooks his thumb over his shoulder to point down the hall. "She''s in her room, likely getting stoned or masturbating to porn or something."'
-			'You ignore his comments and step around him to enter the apartment. He closes the door and heads back to his room.'
-			act 'Leave': gt 'pav_complex','start'
-			act 'Enter': gt 'anushapt','hallway'
+			if maksimQW['blackmail'] >= 1 and maksimQW['blackmail_flash'] <= 5:
+				*nl
+				'You ignore his comments and start to step around him, to enter the apartment. But he puts his arm up blocking you from entering.'
+				'You give him a look of annoyance. "Do you mind?"'
+				'He grins. "Show me your tits!"'
+				'You know what this is about. You can''t believe you let this little shit blackmail you. "Seriously?"'
+				'He laughs. "If you want to come in, that''s the price now. So pay up or fuck off." You sigh, you know the little snitch would tell Anushka, so do you just leave or flash him.'
+				act 'Leave': gt 'pav_complex', 'start'
+				act 'Flash Maksim': gt 'anushkamaksim', 'hallway_flash_tits'
+			elseif maksimQW['blackmail_flash'] > 5 and maksimQW['blackmail_flash'] <= 10:
+				*nl
+				'You ignore his comments and start to step around him, to enter the apartment. But he puts his arm up blocking you from entering.'
+				'You sigh, knowing what he wants. "Fine!" You say as you start to show him your tits again.'
+				'He shakes his head and grins. "Not this time, show me your pussy!"'
+				'You know what this is about. You can''t believe you let this little shit blackmail you. "Seriously?"'
+				'He laughs. "If you want to come in, that''s the price now. So pay up or fuck off." You sigh, you know the little snitch would tell Anushka, so do you just leave or flash him.'
+				act 'Leave': gt 'pav_complex', 'start'
+				act 'Flash Maksim': gt 'anushkamaksim', 'hallway_flash_pussy'
+			elseif maksimQW['blackmail_flash'] > 10:
+				*nl
+				'You ignore his comments and start to step around him, to enter the apartment. But he puts his arm up blocking you from entering.'
+				'You sigh, knowing what he wants. "Fine!" You say as you start to show him your pussy again.'
+				'He shakes his head and grins. "Not this time, I want to see it all! So come to my room and get naked."'
+				'You know what this is about. You can''t believe you let this little shit blackmail you. "Seriously? What about your brother."'
+				'He laughs. "If you want to come in, that''s the price now. Don''t worry that little shit is outside at the moment, we got time."'
+				'You sigh, you know the little snitch would tell Anushka, so do you just leave or flash him.'
+				act 'Leave': gt 'pav_complex', 'start'
+				act 'Go to Maksim''s room': gt 'anushkamaksim', 'maksim_room_naked'
+			else
+				'You ignore his comments and step around him to enter the apartment. He closes the door and heads back to his room.'
+				act 'Leave': gt 'pav_complex', 'start'
+				act 'Enter': gt 'anushapt', 'hallway'
+			end
 		end
 		killvar 'nushdoor'
     elseif (hour >= 15 and hour < 22) or (week > 5 and hour >= 8 and hour < 22):
@@ -290,27 +322,27 @@ if $ARGS[0] = 'home':
 			'He looks you over from head to toe, obviously trying to imagine you naked. "What?" he asks.'
 			'You ignore his staring and ask, "Is Anushka home?"'
 			'"No, she''s not here right now. She''s probably out sucking some guy''s dick or something, but you can go wait for her in her room if you want."'
-			act 'Leave': gt 'pav_complex','start'
-			act 'Enter': gt 'anushapt','hallway'
+			act 'Leave': gt 'pav_complex', 'start'
+			act 'Enter': gt 'anushapt', 'hallway'
 			act 'Why would you say that?':
 				*clr & cla
 				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/maksim.jpg"></center>'
 				'You are aghast that her brother would say such a thing about her. "Why would you tell people something like that?"'
 				'At first, he looks a little confused, as if he''s not sure what you mean, then just shrugs. "That''s what mom always says when I ask where Anushka is."'
 				'You shake your head, unsure what to think about this. Should you go in and wait for her or just go? Maksim just stands there staring at your tits, and you can actually feel him undressing you with his eyes.'
-				act 'Leave': gt 'pav_complex','start'
-				act 'Enter': gt 'anushapt','hallway'
+				act 'Leave': gt 'pav_complex', 'start'
+				act 'Enter': gt 'anushapt', 'hallway'
 			end
 		else
 			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/maksim.jpg"></center>'
 			'Maksim answers the door instead. He looks you over from head to toe, obviously trying to imagine you naked. "Anushka''s not here right now. She''s probably out sucking some guy''s dick or something, but you can wait for her in her room if you want."'
 			'You shake your head, but there''s nothing you can do about it. Should you go in and wait for her or just go? As you decide, you can feel Maksim undressing you with his eyes as he stares straight at your tits.'
 		end
-		act 'Leave': gt 'pav_complex','start'
-		act 'Enter': gt 'anushapt','hallway'
+		act 'Leave': gt 'pav_complex', 'start'
+		act 'Enter': gt 'anushapt', 'hallway'
 	else
 		'You knock on the door several times, but no one answers. You assume that there probably isn''t anyone home at the moment.'
-		act 'Move away from the door': gt 'pav_complex','start'
+		act 'Move away from the door': gt 'pav_complex', 'start'
 	end
 end
 
@@ -337,18 +369,18 @@ if $ARGS[0] = 'hallway':
 		'You stand still for a little while longer, listening for something, but nothing happens. After a while, you decide to move on, but you''re pretty sure that it was just Anushka''s younger brother, Maksim, spying on you.'
 	end
 	if AnushkaLoc ! 1:
-		act '<b>Leave Anushka''s apartment</b>': gt 'pav_complex','start'
-		act 'Anushka''s room': gt 'anush_bedroom','anushroom'
-		act 'Bathroom': gt 'anushapt','bathroom'
-		act 'Anushka''s brother''s room': gt 'anushaptbr','brotherroom'
-		act 'Living room': gt 'anushapt','livingroom'
-		act 'Kitchen': gt 'anushapt','kitchen'
-		act 'Parents room': gt 'anushapt','anushparents'
+		act '<b>Leave Anushka''s apartment</b>': gt 'pav_complex', 'start'
+		act 'Anushka''s room': gt 'anush_bedroom', 'anushroom'
+		act 'Bathroom': gt 'anushapt', 'bathroom'
+		act 'Anushka''s brother''s room': gt 'anushaptbr', 'brotherroom'
+		act 'Living room': gt 'anushapt', 'livingroom'
+		act 'Kitchen': gt 'anushapt', 'kitchen'
+		act 'Parents room': gt 'anushapt', 'anushparents'
 	else
 		'Anushka is standing next to you, looking at you expectantly. "What''s up, <<$pcs_nickname>>?"'
-		act '<b>Leave Anushka''s apartment</b>': gt 'pav_complex','start'
-		act 'Let''s go to your room':AnushkaLoc=2& gt 'anush_bedroom', 'anushroom'
-		act 'Let''s check on your brother': AnushkaLoc = 3 & gt 'anushaptbr','brotherroom'
+		act '<b>Leave Anushka''s apartment</b>': gt 'pav_complex', 'start'
+		act 'Let''s go to your room':AnushkaLoc=2 & gt 'anush_bedroom', 'anushroom'
+		act 'Let''s check on your brother': AnushkaLoc = 3 & gt 'anushaptbr', 'brotherroom'
 	end
 end
 
@@ -358,8 +390,7 @@ if $ARGS[0] = 'bathroom':
 	minut += 1
 	gs 'shortgs', 'setloc', 'anushapt', $ARGS[0]
 	$location_type = 'bathroom'
-	gs 'stat'
-	
+	gs 'stat'	
 	'<center><h4><font color="maroon">Bathroom</font></h4></center>'
 	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/bathroom.jpg"></center>'
 	'The bathroom has seen better days. It looks like it hasn''t been cleaned for quite some time, with mold growing in the corners of the walls and floor.'
@@ -367,7 +398,7 @@ if $ARGS[0] = 'bathroom':
 	'You can do your hair and makeup in the <a href="exec:gt ''mirror'', ''start''">mirror</a> above the sink.'
 	*nl
 	if pirsA + pirsB + pirsC + pirsD + pirsE + pirsF + pirsN + pirsG > 0:'<a href="exec:dynamic $pirManage">Manage Piercings</a>'
-	act 'Leave the bathroom': gt 'anushapt','hallway'
+	act 'Leave the bathroom': gt 'anushapt', 'hallway'
 	act 'Take a shower':
 		*clr & cla
 		menu_off = 1
@@ -383,7 +414,7 @@ if $ARGS[0] = 'bathroom':
 				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/showergetout.jpg"></center>'
 				'You pull the shower curtain tight against your body to make sure there is nothing for him to see other than your head, but you look out at him in consternation.'
 				'He looks up at you when you question him. It takes him a moment to realize who you are and he quickly zips up his pants. "Shit sorry... I thought you were my wife." He turns away and hurries for the door. "I''ll just be going... Sorry again." he says as he pulls the door closed. Unsure about what to think, you just decide to finish your shower.'
-				act 'Get out of the shower': gt 'anushapt','bathroom'
+				act 'Get out of the shower': gt 'anushapt', 'bathroom'
 			end
 			if pcs_inhib >= 50:
 				act 'Give him a show':
@@ -395,7 +426,7 @@ if $ARGS[0] = 'bathroom':
 					'He is a bit surprised at first. "Oh sorry... I thought you were my wife." His eyes roam up and down your naked body as he pulls out his dick and starts to piss in the toilet. "Don''t mind me. Just get back to your shower." he adds with a smirk.'
 					*nl
 					'You keep showering with the curtain open while glancing at him every now and then, but after his first once over, he doesn''t really pay you much attention. Once he is done, he washes his hands and leaves. He closes the door behind him without even another glance at your naked body. You decide to continue with your shower, and you don''t have any more surprises after that.'
-					act 'Get out of the shower': gt 'anushapt','bathroom'
+					act 'Get out of the shower': gt 'anushapt', 'bathroom'
 				end
 			end
 		elseif temp = 1 and maksimQW['QWstage'] >= 5:
@@ -410,10 +441,10 @@ if $ARGS[0] = 'bathroom':
 				else
 					'You pull the shower curtain tight against your body to make sure there is nothing for him to see other than your head. "Get out of here you little pervert!"'
 					'He just laughs at you and keeps watching.'
-					'"Get out of her or I will tell your sister... or you dad." You tell him.'
+					'"Get out of here or I will tell your sister... or your dad." You tell him.'
 					'You see a flicker of fear in his eyes at the mention of his sister a lot when you mention his dad, he gives you a angry glare before closing the door leaving you in peace.'
 				end
-				act 'Get out of the shower': gt 'anushapt','bathroom'
+				act 'Get out of the shower': gt 'anushapt', 'bathroom'
 			end
 			if pcs_inhib >= 50:
 				act 'Give him a show':
@@ -422,7 +453,7 @@ if $ARGS[0] = 'bathroom':
 					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/showershow.jpg"></center>'
 					'Looking straight at him, you give him a smile. You pull the curtain wide open to give him the perfect view of your naked, wet, supple body. His eyes grow wide and he wastes no time, quickly coming into the bathroom, pulling the door closed behind him. After a few minutes of just watching you, you notice him pulling out his phone and trying to take a picture. You immediately shake your head at him. "No pictures or I will tell your sister that you snuck in here and started taking pictures of me in the shower." He doesn''t say anything, but gives you a look that''s a mixture of disgust, annoyance and fear at the mention of his sister.'
 					'He just settles in, enjoying watching you shower and dry yourself off. As you start getting dressed, you shoo him out of the room before finishing up.'
-					act 'Get out of the shower': gt 'anushapt','bathroom'
+					act 'Get out of the shower': gt 'anushapt', 'bathroom'
 				end
 			end
 		else
@@ -432,7 +463,7 @@ if $ARGS[0] = 'bathroom':
 			act 'Take a selfie':
 				gs 'telefon', 'Phone_selfie_image_bathing', 'shower'
 			end
-			act 'Get out of the shower': gt 'anushapt','bathroom'
+			act 'Get out of the shower': gt 'anushapt', 'bathroom'
 		end
 		if deodorant_on = 1: gs 'sweat', 'remove_deo' & '<br>Your deodorant gets washed away in the shower.'
 		killvar 'temp'
@@ -449,8 +480,7 @@ if $ARGS[0] = 'nushshower':
 	*clr & cla
 	gs 'shortgs', 'setloc', 'anushapt', $ARGS[0]
 	$location_type = 'bathroom'
-	gs 'stat'
-	
+	gs 'stat'	
 	AnushkaLoc = 7
 	'<center><h4><font color="maroon">Bathroom</font></h4></center>'
 	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/bathroom/dry1.jpg"></center>'
@@ -527,7 +557,7 @@ if $ARGS[0] = 'nushshower':
 										*clr & cla
 										'<center><img <<$set_imgh>> src="images/pc/activities/phone/anushka/6.jpg"></center>'
 										'She lets the towel completely drop away and turns to put one foot on the edge of the tub. This gives you a nice view of her backside.'
-										'"Yeah, show me that cute little ass!" you tell her as you take a couple of more pictures until she throws the towel at you.'
+										'"Yeah that''s it, work that cute little ass!" you tell her as you take a couple of more pictures until she throws the towel at you.'
 										gs 'arousal', 'erotic_nudity', 2
 										gs 'stat'
 										act 'Continue':
@@ -576,7 +606,7 @@ if $ARGS[0] = 'shower_wait':
 	end
 	gs 'arousal', 'erotic_nudity', 2
 	gs 'arousal', 'end'
-	act 'Get out of the bed': gt 'anush_bedroom','anushroom'
+	act 'Get out of the bed': gt 'anush_bedroom', 'anushroom'
 	act 'Chat': gt 'anushkachat', 'chat'
 end
 
@@ -612,7 +642,7 @@ if $ARGS[0] = 'snack':
 		'She laughs a bit. "No, but he doesn''t know that. However, if he doesn''t or he keeps being mean to you, come get me. I will kick his ass for you, OK?"'
 		'He nods all happy and gets up from the table. He tries to dart out of the room, but she manages to give him a one armed hug that he tries his best to squirm away from. He manages to finally break free, then he hurries out of the kitchen.'
 		'She stands up and looks at you. "Got everything?" When you nod, she says "Sweet, let''s go back to my room."'
-		act 'Back to her room':AnushkaLoc=2& gt 'anush_bedroom', 'anushroom'
+		act 'Back to her room':AnushkaLoc=2 & gt 'anush_bedroom', 'anushroom'
 	elseif snacktime <= 5 and ((week < 6 and hour >= 20 and hour < 23) or (week >= 6 and (hour >= 8 and hour < 16) or (hour >= 18 and hour < 23))):
 		gs 'stat'
 		'<center><b><font color = maroon>Kitchen</font></b></center>'
@@ -623,7 +653,6 @@ if $ARGS[0] = 'snack':
 		'Her dad frowns at that. "That''s not funny. You shouldn''t even joke about stuff like that."'
 		'Anushka grins. "Oh come on, it was a little funny."'
 		'He just sighs and shakes his head slightly, resigned to what his daughter is like. "So, do you girls want a sandwich?"'
-
 		act 'No':
 			*clr & cla
 			gs 'stat'
@@ -634,12 +663,11 @@ if $ARGS[0] = 'snack':
 			*nl
 			'He rubs his hand over the top of his head. "I am well aware of how old you are. See all these gray hairs? I didn''t have any of them until you became a teenager."'
 			'Anushka rolls her eyes as she gets some snacks and drinks. "Right... and mom and those brats had nothing to do with it."'
-			'He smirks to her. "Ok... yeah... They may have had a little bit to do with it as well."'
+			'He smirks at her. "Ok... yeah... They may have had a little bit to do with it as well."'
 			'As the two of you walk out of the kitchen and back towards her room, he follows you both out and heads for the living room. "Have fun girls... but not too much fun."'
-			'Anushka looks back, and in a exacerbated tone says "Dad!" before she leads you back into her room'
+			'Anushka looks back, and in an exacerbated tone says "Dad!" before she leads you back into her room'
 			act 'Back to her room':AnushkaLoc=2& gt 'anush_bedroom', 'anushroom'
 		end
-
 		act 'Yes':
 			*clr & cla
 			gs 'stat'
@@ -650,9 +678,9 @@ if $ARGS[0] = 'snack':
 			'He rubs his hand over the top of his head. "I am well aware of how old you are. See all these gray hairs? I didn''t have any of them until you became a teenager."'
 			*nl
 			'Anushka rolls her eyes as she gets some snacks and drinks. "Right... and mom and those brats had nothing to do with it."'
-			'He smirks to her. "Ok... yeah... They may have had a little bit to do with it as well."'
+			'He smirks at her. "Ok... yeah... They may have had a little bit to do with it as well."'
 			'As the two of you walk out of the kitchen and back towards her room, he follows you both out and heads for the living room. "Have fun girls... but not too much fun."'
-			'Anushka looks back, and in a exacerbated tone says "Dad!" before she leads you back into her room'
+			'Anushka looks back, and in an exacerbated tone says "Dad!" before she leads you back into her room'
 			act 'Back to her room':AnushkaLoc=2& gt 'anush_bedroom', 'anushroom'
 		end
 	elseif snacktime <= 7 and anushkaQW['valeria_introduced'] = 0:
@@ -694,7 +722,7 @@ if $ARGS[0] = 'snack':
 					*nl
 					'Anushka walks over to the fridge and grabs two drinks plus a bag of chips. She grabs you by the arm and leads you out of the kitchen. As you walk out, she glances back at her mother to scream "Bitch!"'
 					'"It was great to meet you. I do hope to see you again, even though I doubt you''ll be back..." you hear Valeria sarcastically say as you''re leaving the kitchen.'
-					act 'Back to her room':AnushkaLoc=2& gt 'anush_bedroom','anushroom'
+					act 'Back to her room':AnushkaLoc=2 & gt 'anush_bedroom', 'anushroom'
 				end
 			end
 		end
@@ -715,7 +743,7 @@ if $ARGS[0] = 'snack':
 			'Instead of getting angry, her mom just laughs. "You''re one to talk. We both know you''re a clingy, needy, little slut that will do anything to get anyone to pay attention to you. The only reason you''re in that band of yours is because you slept your way into it and continue to be their slut just so they will let you stay."'
 			'Anushka raises her hand like she might hit her mother. For a tense moment, you think she might, but then she lowers it. "You don''t know anything about me! You''ve never wanted to know anything about me! I fucking hate you! I wish you would just fucking leave if you hate it here so much!" With that, she turns and grabs some snacks. She pushes them into your hands so hard and fast that you are barely able to keep hold of them as she says "Come on, let''s go."'
 			'Her mother shakes her head. "That''s right! Go running to your room and cry like you have always done when you are faced with the truth. I can''t believe I raised such a pathetic excuse of a daughter."'
-			act 'Follow Anushka back to her room':AnushkaLoc=2& gt 'anush_bedroom', 'anushroom'
+			act 'Follow Anushka back to her room':AnushkaLoc=2 & gt 'anush_bedroom', 'anushroom'
 			gs 'willpower', 'misc', 'self', 'medium'
 			if will_cost <= pcs_willpwr:
 				act 'Defend Anushka (<<will_cost>> Willpower)':
@@ -727,7 +755,7 @@ if $ARGS[0] = 'snack':
 					'You can''t take listening to Valeria talk about your friend like that anymore. "You''re wrong! Anushka is a better person than you will ever be! If you would just talk to her for once instead of at her, you might realize just how great she really is!"'
 					'Anushka smiles at you and obviously appreciates what you said. Her mom just gives you a look of complete disgust. "You must be another one of those disgusting lesbians." she says scornfully before shooting an equally disgusted look at her daughter. "It is so sinful and shameful, but I guess I can''t expect my daughter to hang out with anyone decent." With that, she turns back to her cooking.'
 					'Anushka grabs you by the arm before you can say more. "Come on, let''s go. She just isn''t worth it."'
-					act 'Back to her room':AnushkaLoc=2& gt 'anush_bedroom', 'anushroom'
+					act 'Back to her room':AnushkaLoc=2 & gt 'anush_bedroom', 'anushroom'
 				end
 			else
 				act 'Defend Anushka (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
@@ -740,7 +768,7 @@ if $ARGS[0] = 'snack':
 		'She gets up and heads to the kitchen with you, the two of you talking and laughing the whole way.'
 		'As you walk into the kitchen, Anushka points to a refrigerator. "Grab some drinks out of the fridge and anything else good."'
 		'While you are doing that, she grabs a couple of snack cakes and chips from the cabinets, and once you both have your spoils from your raid on the kitchen, you head back to her room.'
-		act 'Back to her room':AnushkaLoc=2& gt 'anush_bedroom', 'anushroom'
+		act 'Back to her room':AnushkaLoc=2 & gt 'anush_bedroom', 'anushroom'
 	end
 	killvar 'snacktime'
 end
@@ -762,7 +790,7 @@ if $ARGS[0] = 'livingroom':
 	if livingev = 1 and anushkaQW['dad_mom_livingroom'] = 0 and ((week < 6 and hour >= 20 and hour < 23) or (week >= 6 and (hour >= 8 and hour < 16) or (hour >= 18 and hour < 23))):
 		livingev_day = daystart
 		'As you start to walk into the living room, you overhear some muffled voices that are getting louder and louder as they go on... You notice that the door is ajar and sneak towards it to see if you can make out what is being said.'
-		act 'Leave':gt 'anushapt','hallway'
+		act 'Leave':gt 'anushapt', 'hallway'
 		act 'Listen in':
 			cla & *nl
 			anushkaQW['dad_mom_livingroom'] = 1
@@ -770,7 +798,7 @@ if $ARGS[0] = 'livingroom':
 			'You see Valeria standing in front of the TV, yelling at Eduard. "I want to see that little bitch punished! And for real this time!!!"'
 			'Eduard sighs, clearly annoyed by Valeria being in the way. "What''s wrong now Valeria? I just want to relax and watch the TV..."'
 			'Valeria continues. "She''s undermining me in front of the boys! She talks back to me, and the boys are picking up on it. They''ve started doing it as well! So put a fucking stop to it, or else I''ll do it for you!"'
-			'Eduard frowns at her. "You''ll do what?! You''re not the better influence either, calling your own daughter a slut, a whore, and God knows what else while the boys overhear you. They repeat it to Anushka and call her names. What is wrong with you? God dammit, she''s your own daughter!" Eduard screams back at her.'
+			'Eduard frowns at her. "You''ll do what?! You''re not the better influence here, calling your own daughter a slut, a whore, and God knows what else while the boys overhear you. They repeat it to Anushka and call her names. What is wrong with you? God dammit, she''s your own daughter!" Eduard screams back at her.'
 			'"Like I care about that little whore... She needs to be put in her place and I want you to do something for once! Enough with this daddy''s little princess shit!" she says scoffingly.'
 			'You worry about getting caught, so you sneak away from the door without making a noise.'
 			act 'Leave the room':gt 'anushapt', 'hallway'
@@ -820,7 +848,7 @@ if $ARGS[0] = 'livingroom':
 						'"We should be on our way <<$pcs_nickname>>." Anushka whispers, then nudges you.'
 						'"Sure. It was nice to meet you." you say.'
 						'He raises his arm as he''s too into the program on the TV to answer by now.'
-						act 'Move away': AnushkaLoc = 1 & gt'anushapt', 'hallway'
+						act 'Move away': AnushkaLoc = 1 & gt 'anushapt', 'hallway'
 					end
 				end
 			end
@@ -830,8 +858,8 @@ if $ARGS[0] = 'livingroom':
 				*clr & cla
 				menu_off = 1
 				gs 'stat'
-				edtalk = rand(1,5)
-				if edtalk = 1:
+				if anushkaQW['edtalk'] = 0:
+					anushkaQW['edtalk'] += 1
 					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/eduard.jpg"></center>'
 					'You smile at Eduard. "Hello Mr. Konstantinov, is Anushka around?"'
 					'An agitated Eduard calls you over. "Call me Ed. Come here <<$pcs_nickname>>, I need to ask you about something."'
@@ -848,7 +876,7 @@ if $ARGS[0] = 'livingroom':
 							*nl
 							'You try to defend Anushka and yourself. "We both just know what we want, and we''re not afraid to enjoy life how we want, but we are the ones that call the shots. We are not just some boy toys to be passed around."'
 							'He sighs and leans back in the chair, looking a bit defeated with a worried look on his face. "Well, you''re not my daughter, and she is old enough to make her own decisions. I just hope the both of you don''t end up like..." He suddenly trails off, looking at you as if he had more to say.'
-							act 'Leave':gt 'anushapt','hallway'
+							act 'Leave':gt 'anushapt', 'hallway'
 							if momslut >= 1:
 								act 'End up like my mom?':
 									*clr & cla
@@ -857,7 +885,7 @@ if $ARGS[0] = 'livingroom':
 									'He nods a bit. "Yeah, I don''t mean anything by it... but your mom had one hell of a rep when she was younger, and it has followed her for her whole life. That is something I would like you and my daughter to avoid. I know it''s not fair, but that''s just the way it is."'
 									'It wouldn''t hurt to try and ease his mind a bit. "Don''t worry, we like to have fun, but we know better than to take things too far."'
 									'He sighs and nods, more in acceptance of things he can''t control than anything else.'
-									act 'Leave':gt 'anushapt','hallway'
+									act 'Leave':gt 'anushapt', 'hallway'
 								end
 							end
 						end
@@ -871,7 +899,7 @@ if $ARGS[0] = 'livingroom':
 								'You look him straight in the eye and coldly say "I don''t know where those rumors came from. Someone must be talking behind our backs and trying to make us look bad. There''s no reason for us to act like that."'
 								'You''re still not sure if Eduard bought it or not, but he sighs despairingly. "I''ll take your word for it for now, but I''ll ask around some more to get to the bottom of this! There''s some explaining needing done here!" he says as he cracks his knuckles.'
 								'You let out a faint sigh of relief as he returns to his normal self.'
-								act 'Leave':gt 'anushapt','hallway'
+								act 'Leave':gt 'anushapt', 'hallway'
 							end
 						else
 							act 'Lie (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
@@ -887,7 +915,7 @@ if $ARGS[0] = 'livingroom':
 							*nl
 							'You try and defend Anushka. "She knows what she wants and isn''t afraid to enjoy life how she wants, but she never lets anyone take advantage of her. That is, unless she wants to take advantage of them."'
 							'He sighs and leans back in the chair, looking a bit defeated with a worried look on his face. "Well, she is old enough to make her own decisions. I just hope she doesn''t end up like..." He suddenly trails off, looking at you as if he has more to say.'
-							act 'Leave':gt 'anushapt','hallway'
+							act 'Leave':gt 'anushapt', 'hallway'
 							if momslut >= 1:
 								act 'End up like my mom?':
 									*clr & cla
@@ -896,7 +924,7 @@ if $ARGS[0] = 'livingroom':
 									'He nods a bit. "Yeah, I don''t mean anything by it... but your mom had one hell of a rep when she was younger, and it has followed her for her whole life. That is something I would like my daughter to avoid. I know it''s not fair, but that''s just the way it is."'
 									'It wouldn''t hurt to try and ease his mind a bit. "Don''t worry she likes to have fun, but she knows better than to take things too far."'
 									'He sighs and nods, more in acceptance of things he can''t control than anything else.'
-									act 'Leave':gt 'anushapt','hallway'
+									act 'Leave':gt 'anushapt', 'hallway'
 								end
 							end
 						end
@@ -910,17 +938,18 @@ if $ARGS[0] = 'livingroom':
 								'You look him straight in the eye and coldly say "I don''t know where those rumors came from. Someone must be talking behind her back and trying to make her look bad. There''s no reason for her to act like that."'
 								'You''re still not sure if Eduard bought it or not, but he sighs despairingly. "I''ll take your word for it for now, but I''ll ask around some more to get to the bottom of this! There''s some explaining needing done here." he says as he cracks his knuckles.'
 								'You let out a faint sigh of relief as he returns to his normal self.'
-								act 'Leave':gt 'anushapt','hallway'
+								act 'Leave':gt 'anushapt', 'hallway'
 							end
 						else
 							act 'Lie (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
 						end
 					end
-				elseif edtalk <= 3:
+				elseif anushkaQW['edtalk'] = 1:
+					anushkaQW['edtalk'] += 1
 					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/eduard.jpg"></center>'
 					'You smile at Eduard. "Hello Mr. Konstantinov, is Anushka around?"'
 					'He turns to look at you and gives you a friendly smile. "Call me Ed. I have no idea where that girl is, but you can check her room if you want. If she''s not there, then there is no telling where she is." he says, sounding somewhat sad and worried.'
-					act 'Leave':gt 'anushapt','hallway'
+					act 'Leave':gt 'anushapt', 'hallway'
 					act 'Is everything ok?':
 						*clr & cla
 						'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/living.jpg"></center>'
@@ -943,14 +972,14 @@ if $ARGS[0] = 'livingroom':
 								act 'Tell her I stopped by':
 									*clr & cla
 									'You nod and know how he feels. There''s no point in waiting for her since she could be gone for hours. "Thanks, you can just tell her I stopped by."'
-									act 'Leave Anushka''s apartment': gt 'pav_complex','start'
+									act 'Leave Anushka''s apartment': gt 'pav_complex', 'start'
 								end
 								act 'Thanks, I''ll wait':
 									*clr & cla
 									'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/living.jpg"></center>'
 									'"Make yourself at home." he says with a small smile. "Just a bit of advice... if you can, avoid that... that..." Ed hesitates and grinds his teeth while he struggles to find the right words. "That woman... to put it nicely... She is always looking for a reason to pick a fight and argue with someone. Honestly, if it weren''t for the kids..." He trails off before falling silent for a few moments. You think he may have forgotten who he was talking to or that you''re even in the room, but eventually his expression softens.'
 									'"Just do your best to stay out of her way alright? You seem nice, and I''d hate to see her drive off another of Nush''s friends, especially one that could be a good influence on her."'
-									act 'Leave':gt 'anushapt','hallway'
+									act 'Leave':gt 'anushapt', 'hallway'
 								end
 							end
 						end
@@ -965,14 +994,14 @@ if $ARGS[0] = 'livingroom':
 							'He shakes his head. "Enough of my depressing talk. There is no telling when she might be home. You''re free to wait for her in her room if you want, or I can tell her you stopped by when I see her next?"'
 							act 'Tell her I stopped by':
 								'You nod and know how he feels. There''s no point waiting for her. She could be gone for hours. "Thanks, let her know I stopped by. Bye."'
-								act 'Leave Anushka''s apartment': gt 'pav_complex','start'
+								act 'Leave Anushka''s apartment': gt 'pav_complex', 'start'
 							end
 							act 'Thanks I''ll wait':
 								*clr & cla
 								'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/living.jpg"></center>'
 								'"Make yourself at home." he says with a small smile. "Just a bit of advice... if you can, avoid that... that..." Ed hesitates and grinds his teeth while he struggles to find the right words. "That woman... to put it nicely... She is always looking for a reason to pick a fight and argue with someone. Honestly, if it weren''t for the kids..." He trails off before falling silent for a few moments. You think he may have forgotten who he was talking to or that you''re even in the room, but eventually his expression softens.'
 								'"Just do your best to stay out of her way alright? You seem nice, and I''d hate to see her drive off another of Nush''s friends, especially one that could be a good influence on her."'
-								act 'Leave':gt 'anushapt','hallway'
+								act 'Leave':gt 'anushapt', 'hallway'
 							end
 						end
 					end
@@ -983,7 +1012,9 @@ if $ARGS[0] = 'livingroom':
 					'You nod. "Ok thanks, sorry to have bothered you. I''ll be quiet so you can watch your show."'
 					*nl
 					'Eduard just laughs. "We have three kids running around here, so there''s no need for that. Besides, if I saw you trying to be quiet and sneaking around, I would think you were up to something. Nush taught me long ago that if you see a kid being quiet or suddenly going quiet, it means that they are up to something." He shakes his head with a fond smile. "That does remind me of a time when Nush was younger..." He trails off and looks up at you. "Don''t mind me, I''m just reminiscing. I''m sure you''re not interested in hearing about that."'
-					act 'It''s fine, I would love to hear a story':gt 'anushapt', 'nushkidstory'
+					if anushkaQW['kidstory'] < 5:
+						act 'It''s fine, I would love to hear a story':gt 'anushapt', 'nushkidstory'
+					end
 					act 'Make an excuse':
 						cla & *clr
 						minut += 2
@@ -991,7 +1022,7 @@ if $ARGS[0] = 'livingroom':
 						'You shake your head. "I''m really sorry, but I should get going. Can I get a rain check for another time?"'
 						'He nods his head and says "Sure... sure... you have better stuff to do than listening to me. Go, go!"'
 						'You nod then say your goodbyes and quickly leave.'
-						act 'Leave':gt 'anushapt','hallway'
+						act 'Leave':gt 'anushapt', 'hallway'
 					end
 				end
 			end
@@ -1004,7 +1035,7 @@ if $ARGS[0] = 'livingroom':
 				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/living.jpg"></center>'
 				if rand(1,2) = 1:
 					'You turn and carefully tread out of the living room while Eduard is busy watching the TV. You quietly make it to the doorway to enter the hallway. With a final glance back, you see he is still sitting there watching TV, not having noticed you coming in at all.'
-					act 'Leave':gt 'anushapt','hallway'
+					act 'Leave':gt 'anushapt', 'hallway'
 				else
 					'You walk very carefully towards the door since you don''t want to make too much noise and disturb Eduard.'
 					'All of a sudden, you hear him clearing his throat. "Sneaking around are we?"'
@@ -1018,7 +1049,7 @@ if $ARGS[0] = 'livingroom':
 						'You shake your head. "I''m really sorry, but I should get going. Can I get a rain check for another time?"'
 						'He nods his head and says, "Sure... sure... you have better stuff to do than listening to me. Go, go!"'
 						'You nod then say your goodbyes and quickly leave...'
-						act 'Leave':gt 'anushapt','hallway'
+						act 'Leave':gt 'anushapt', 'hallway'
 					end
 				end
 			end
@@ -1055,7 +1086,7 @@ if $ARGS[0] = 'livingroom':
 							'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/eduard.jpg"></center>'
 							'"Well it was nice talking to you, but I should likely get back to Anushka." you tell him.'
 							'He smiles a little. "Yeah, I wouldn''t want her wondering where you got off to. You girls have fun." he says before he turns back to the TV.'
-							act 'Leave':gt 'anushapt','hallway'
+							act 'Leave':gt 'anushapt', 'hallway'
 						end
 					end
 				end
@@ -1084,7 +1115,7 @@ if $ARGS[0] = 'kitchen':
 	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/kitchen.jpg"></center>'
 	if kitchenev = 1 and anushkaQW['dad_mom_kitchen'] = 0 and ((week < 6 and hour >= 20 and hour < 23) or (week >= 6 and (hour >= 8 and hour < 16) or (hour >= 18 and hour < 23))):
 		'As you start to enter the kitchen, you overhear some muffled voices that are getting louder and louder as they go on... You notice that the door is ajar and sneak towards it to see if you can make out what is being said.'
-		act 'Leave':gt 'anushapt','hallway'
+		act 'Leave':gt 'anushapt', 'hallway'
 		act 'Listen':
 			*clr & cla
 			anushkaQW['dad_mom_kitchen'] = 1
@@ -1098,11 +1129,11 @@ if $ARGS[0] = 'kitchen':
 			'"So what? Didn''t you have a similar reputation when you were seeing me?" he asks.'
 			'"You''re really getting on my nerves right now Eduard! You know what I''m capable of doing..." She crosses her arms as she turns her eyes towards a knife that''s lying on the kitchen counter...'
 			'Feeling that this is getting out of hand, you quietly move away from the door and start walking back down the hallway as the yelling continues behinds you.'
-			act 'Leave':gt 'anushapt','hallway'
+			act 'Leave':gt 'anushapt', 'hallway'
 		end
 	else
 		'The room is not clean, and there are dishes on most of the available surfaces. The wood floor is not polished and only covers the areas being used. You''re surprised by the lack of a dining table.'
-		act 'Leave':gt 'anushapt','hallway'
+		act 'Leave':gt 'anushapt', 'hallway'
 		act 'Look in the fridge': gt 'anushapt', 'fridge'
 		dynamic $fill_bottle
 		dynamic $driwater
@@ -1220,7 +1251,6 @@ end
 
 if $ARGS[0] = 'anushparents':
 	menu_off = 0
-
 	*clr & cla
 	gs 'shortgs', 'setloc', 'anushapt', $ARGS[0]
 	minut += 1
@@ -1230,7 +1260,7 @@ if $ARGS[0] = 'anushparents':
 	'The room is fairly barren. What is in here is disorganized and untidy, with everything all over the place. You see that there is a bed, a bookshelf and a dresser with a TV on it. The dresser appears to be cheaply manufactured and poorly constructed. Even though it''s minimally furnished, the room is still quite dirty.'
 	if hour < 7:
 		'You look into the bedroom and see Anushka''s parents asleep. They are both on the edge of their side of the bed, as far apart as the bed allows. You don''t want to disturb them, so you close the door and leave.'
-		act 'Leave':gt 'anushapt','hallway'
+		act 'Leave':gt 'anushapt', 'hallway'
 	elseif anushkaQW['valeria_introduced'] = 1 and rand(0,1) = 0:
 		menu_off = 1
 		gs 'stat'
@@ -1242,19 +1272,19 @@ if $ARGS[0] = 'anushparents':
 			act 'Ask about the band':gt 'anushapt', 'band'
 			act 'Photo album':gt 'anushapt', 'album'
 			act 'Ask about Alyona': gt 'anushapt', 'alyona_ask'
-			act 'Leave':gt 'anushapt','hallway'
+			act 'Leave':gt 'anushapt', 'hallway'
 		end
-		act 'Leave':gt 'anushapt','hallway'
+		act 'Leave':gt 'anushapt', 'hallway'
 	else
 		'Since nobody''s here, you should probably leave, but you could take a look around if you''re curious.'
-		act 'Leave':gt 'anushapt','hallway'
+		act 'Leave':gt 'anushapt', 'hallway'
 		act 'Look around':
 			*clr & cla
 			minut += 10
 			'<center><b><font color = maroon>Anushka''s parent''s room</font></b></center>'
 			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/momsdrawer.jpg"></center>'
 			'You snoop around, opening drawers and looking in the closet, but you don''t find anything of interest. The room is too disorganized for you to find much. The only thing of note is a vibrator with a large pack of batteries in one of the night stands.'
-			act 'Leave':gt 'anushapt','hallway'
+			act 'Leave':gt 'anushapt', 'hallway'
 		end
 	end
 end
@@ -1272,8 +1302,44 @@ if $ARGS[0] = 'band':
 		'Valeria turns serious. "Yeah, I mean if I were in her shoes I wouldn''t give two shits about the others and focus all my energy on Radomir."'
 		'"Anushka is a fool for not latching onto Radomir. Just look at him, perfect body and he''s a really talented musician. He''ll probably amount to something big. She''s really stupid for not latching onto him while she still can, before he makes it big and leaves her behind."'
 		'You can''t even get a word in as she just keeps talking with a dreamy sigh. "Just think about the life she could have living with a big rock star. Hell if I was younger, I would''ve made sure that Radomir was all mine."'
+		*nl
 		'"What about being free and living your own life just like she''s doing right now?" you ask.'
 		'She looks at you as if you just asked the most stupid question ever. "Who gives a fuck? I can''t for the life of me understand why any woman would want that instead of having a man provide the perfect life. She would be free to do whatever, like just party, spend his money, and do whatever she wants." Valeria replies.'
+		if anushkaQW['raddate'] = 2:
+			act 'Point out Radomir broke up with Anushka':
+				*clr & cla
+				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/parroom.jpg"></center>'
+				'"Um you do know Rad broke up with Nush, not the other way around." You tell her.'
+				'She gives you a look like you are an idiot. "I know what my darling daughter claims, most likely she was sleeping around and cheating on him."'
+				'You frown at that. "Actually Rad was cheating on her and she kept forgiving him."'
+				'She now looks annoyed. "No man is going to break up with a girl if she keeps forgiving him for cheating, then he can have his cake and eat it too. What nonsense."'
+				'You decide to push it a bit more. "Rad is the one that told me this."'
+				'She just shakes her head. "Oh I am sure he did, but if she wasn''t cheating she probably got all clinging and smothering with him, constantly being jealous anytime a girl even looked at him. Men don''t like that and she had to know with his talent he was going to attract girls. She should have done a better job making him happy and then he wouldn''t have had to break up with him. If she was smart she would do everything in her power to win him back, while she can."'
+				'You just sigh, you can tell there is nothing you can say that will convince her otherwise. So you decided it would be best to just change the topic.'
+				act 'Leave':
+					killvar 'nush_band'
+					killvar 'nush_album'
+					gt 'anushapt', 'hallway'
+				end
+				if nush_album = 0: act 'Ask about the photo album':gt 'anushapt', 'album'
+				act 'Bring up Alyona':gt 'anushapt', 'alyona_ask'
+				act 'How about the other bandmates?':
+					*clr & cla
+					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/parroom.jpg"></center>'
+					'Valeria looks at you confused and begins to laugh. "Who? You mean the other two losers that are in the band? Don''t make me laugh, because they''re nothing compared to Radomir."'
+					'"Maybe you should just let her choose for herself." you answer.'
+					'"Listen here <<$pcs_nickname>>, I might not give two shits about Anushka, but the best outcome for me-" she stops and takes a deep breath. "For her I mean... is to hook up with Radomir and that''s the end of the story."'
+					'Seeing you''re not getting anywhere with Valeria you sigh, say goodbye, and turn around to leave.'
+					act 'Leave':
+						killvar 'nush_band'
+						killvar 'nush_album'
+						gt 'anushapt', 'hallway'
+					end
+					if nush_album = 0: act 'Ask about the photo album':gt 'anushapt', 'album'
+					act 'Bring up Alyona':gt 'anushapt', 'alyona_ask'
+				end
+			end
+		end
 		act 'How about the other bandmates?':
 			*clr & cla
 			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/parroom.jpg"></center>'
@@ -1297,7 +1363,7 @@ if $ARGS[0] = 'album':
 	*clr & cla
 	nush_album = 1
 	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/parroom.jpg"></center>'
-	'There is an photo album on the nightstand that''s next to the bed. You walk up, open it up, and look at the photos inside. "Is that your family?"'
+	'There is a photo album on the nightstand that''s next to the bed. You walk up, open it up, and look at the photos inside. "Is that your family?"'
 	'In a rare occurrence, Valeria almost seems to smile as she picks up the old album and starts to look through the photos of her and her family.'
 	'"We all looked so happy then..." she says. "It was a whole different world back then. Come and have a look."'
 	'You sit next to her as she flips through the photo album. All of a sudden, you notice something...'
@@ -1305,7 +1371,7 @@ if $ARGS[0] = 'album':
 		*clr & cla
 		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/parroom.jpg"></center>'
 		'"Is that who I think it is?" you ask smiling as you see a picture of a young Anushka running around completely naked.'
-		'"It sure is. She''s my first born. She should have been my pride and joy, but something happened that just made that girl hardheaded and stupid."'
+		'"It sure is. She''s my firstborn. She should have been my pride and joy, but something happened that just made that girl hardheaded and stupid."'
 		'She continues on. "Anushka''s has always been quite the exhibitionist. I remember her being around two or three years old and I was trying to make her wear clothes. As soon as I turned my back, she was always taking her clothes off and running around naked. It didn''t matter if we had someone over or if we were outside in public. She grew up, but didn''t change. Now she whores around, instead of focusing on trying to find a man to take care of her. It doesn''t matter what I tell her. She thinks she knows it all, the snotty little bitch." Her tone quickly changed from friendly to anger.'
 		*nl
 		'You debate saying anything, but feel you have to. "Maybe she wants to be her own woman and lead her own life without having to have a guy take care of her?"'
@@ -1393,8 +1459,7 @@ if $ARGS[0] = 'nushlivroom':
 		'<center><b><font color = maroon>Living room</font></b></center>'
 		'<center><img <<$set_imgh>> src="images/shared/home/tv/tv_watch_1.jpg"></center>'
 		'The two of you watch some cheesy American action movie. You chat about how nice it will be when you are on your own without always having people around and parents telling you what to do. You barely pay attention to the movie as you talk. In fact, it ends, and something else comes on that you don''t even remember. After a couple of hours though, you hear keys in the lock of the door and Anushka says "Shit they''re home already. Come on let''s go." As she gets up and heads to her room, her brothers come running by on the way to theirs. They are quickly followed by Valeria complaining about where they ate. Ed walks by and gives you a slight nod, then goes into the kitchen.'
-
-		act 'Follow Anushka to her room': gt 'anush_bedroom','anushroom'
+		act 'Follow Anushka to her room': gt 'anush_bedroom', 'anushroom'
 	end
 	if strapnumber > 0:
 		act 'Pull out your strap-on':
@@ -1418,7 +1483,7 @@ if $ARGS[0] = 'nushlivroom':
 					'<center><b><font color = maroon>Living room</font></b></center>'
 					'<center><img <<$set_imgh>> src="images/shared/home/tv/tv_watch_1.jpg"></center>'
 					'The two of you watch some cheesy American action movie. You chat about how nice it will be when you are on your own without always having people around and parents telling you what to do. You barely pay attention to the movie as you talk. In fact, it ends, and something else comes on that you don''t even remember. After a couple of hours though, you hear keys in the lock of the door and Anushka says "Shit they''re home already. Come on, let''s go." As she gets up and heads to her room, her brothers come running by on the way to theirs. They are quickly followed by Valeria complaining about where they ate. Ed walks by and gives you a slight nod, then goes into the kitchen.'
-					act 'Follow Anushka to her room': gt 'anush_bedroom','anushroom'
+					act 'Follow Anushka to her room': gt 'anush_bedroom', 'anushroom'
 				end
 			end
 		end
@@ -1431,35 +1496,41 @@ if $ARGS[0] = 'nushkidstory':
 	minut += 5
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/eduard.jpg"></center>'
-	nushkidstory = rand(1,4)
-	if nushkidstory = 1:
+	anushkaQW['kidstory'] += 1
+	if anushkaQW['kidstory'] = 1:
 		'The corner of Eduard''s mouth turns upwards as he starts. "I remember one autumn day when I was out in the garage and our car was in there. I had just given it a tuneup. Nush had helped me until she got bored and started running around as usual trying to find trouble. I think she was about eight at the time." He shakes his head in amusement as he remembers it.'
 		'"As usual." you reply as a smile spreads across your face and Eduard gives you a relatable look. "So all of a sudden she disappears somewhere. I remember her playing around with my jacket. Before you know it, I hear the car start, and off it goes! Nush is sitting in the drivers seat with a huge grin on her face, driving towards the garage door on the opposite side..."'
+		*nl
 		'You gasp as he continues. "Don''t worry. I start yelling at her to stop and she hits the brakes. She manages to stop less than a meter from the other garage. I don''t know how she was able to reach the pedals while being able to see over the dashboard. Anyways, I''m pissed, and I yank open the door to really lay into her. However, she is sitting there all sad. She knows she did something wrong and she looks up at me with those big puppy eyes..." he says sighing. "I couldn''t do anything as my anger just melted away. I just pulled her out and got in the car to back it back into the garage."'
 		*nl
 		'"This makes what she''s like now make so much more sense. My mom would have tanned my hide if I had done that!" you comment.'
 		'He nods a little. "Yeah, I should have been harder on her when she was growing up. Maybe it would have curbed her wilder ways now." He shakes his head. "She has always managed to wrap me around her little finger, and with just a look, melt away my anger to make me a better man."'
-		'You give him an awww look, and he clears his throat. "Yeah, anyways the little free spirited wild child looking for trouble is my Nush." Eduard responds. With that, you can tell he is done with telling stories, at least for now. "Well thank you for telling me. I loved hearing about it. Anyways, I should get going." you tell him, and he nods to you as you leave the living room.'
-	elseif nushkidstory = 2:
+		'You give him an awww look, and he clears his throat. "Yeah, anyways the little free-spirited wild child looking for trouble is my Nush." Eduard responds. With that, you can tell he is done with telling stories, at least for now. "Well thank you for telling me. I loved hearing about it. Anyways, I should get going." you tell him, and he nods to you as you leave the living room.'
+	elseif anushkaQW['kidstory'] = 2:
 		'The corner of Eduard''s mouth turns upwards as he starts. "I remember one of those warm spring days while Anushka was in preschool. She was creating havoc most likely. On this day, I was helping out at home looking after the baby when all of a sudden the phone rings and it''s the preschool..."'
 		'"You must''ve gotten lots of those back in the days!" you reply smiling and Eduard rolls his eyes. "I pick up the phone and there''s a hysterical teacher on the other side. She starts yelling that Nush is gone and that they can''t find her anywhere..."'
+		*nl
 		'You gasp as he continues. "I go to the preschool and join in the search. I even call some of my friends to help us look. The preschool even calls the police after a few hours." The way he says police sounds like he wants to spit the word. "Anyways... one of my friends finds her out near the palace. We still don''t know how she got there. When he brings her back, I ask what the hell she was doing and why she went off..." He sighs. "She just shrugs her shoulders and says that she felt like exploring the town. Turns out, my friend tells me, that she was conning tourists out of sweets then giving them bad directions. Apparently, she thought it was funny. That is until she got sick from eating too many sweets after I took her home. She threw up all over the place."'
+		*nl
 		'You continue on talking for a while about Anushka''s adventures while she was younger. "This makes what she''s like now make so much more sense." you comment.'
-		'"Yeah, anyways the little free spirited wild child looking for trouble my Nush." Eduard responds.'
-	elseif nushkidstory = 3:
+		'"Yeah, anyways the little free-spirited wild child looking for trouble my Nush." Eduard responds.'
+	elseif anushkaQW['kidstory'] = 3:
 		'The corner of Eduard''s mouth turns upwards as he starts. "This is a good story, so Nush used to like playing games when she was younger. I bought a used PlayStation and she just loved it. She spent all her time on it for a while and always wanted the newest games for it. Anyways, some of the kids from the neighborhood had been talking about this new game that was just about to get released, so of course, she comes running and asks for me to buy it..."'
 		'"Quite spoiled." you reply as you smile and Eduard gives you a relatable look. "Here comes the best part. So I tell her that we can''t afford it right now. At first she pouts, but she quickly stops and leaves the room. She never was much of a pouter. After about 30 minutes, we hear the door slam shut and the house goes really quiet..."'
+		*nl
 		'You smile as he continues. "So what did my dear daughter do? Well, she took her little brother down the street and tried to sell him for the same price as that game cost. Luckily a neighbor walked past and had the two of them follow her home. This was after she promised that she would think about buying Maksim."'
 		'"I about hit the roof when the neighbor brings them back and tells us what happened. My wife gets hysterical about it... Anyways I start yelling at Nush asking her why she would do that. As calmly as you please, she explains if she sold him I wouldn''t have to pay for the game. Since we wouldn''t have to feed him, then we would have more money for more games." He shakes his head laughing. "That''s when I knew she wasn''t just going to be trouble like most kids, but that she was too smart for her own good."'
+		*nl
 		'You continue on talking for a while about Anushka''s adventures while she was younger. "This makes what she''s like now make so much more sense." you comment.'
-		'"Yeah, anyways, the little free spirited wild child looking for trouble my Nush." Eduard responds.'
+		'"Yeah, anyways, the little free-spirited wild child looking for trouble my Nush." Eduard responds.'
 	else
-		'"Nush has always liked to take bike rides with me, specially when she was younger." he starts reminiscing. "So this one time we are riding along with her on the back of the bike. She was ten at the time I think. I was already going fast, and she was yelling to go faster... faster all the time."'
+		'"Nush has always liked to take bike rides with me, especially when she was younger." he starts reminiscing. "So this one time we are riding along with her on the back of the bike. She was ten at the time I think. I was already going fast, and she was yelling to go faster... faster all the time."'
 		'"I guess you listened?" you ask, but you already know what the answer will be.'
 		'Eduard starts laughing. "Well, of course, so we''re going way too fast and Nush is screaming out of joy when all of a sudden a police car appears behind us and pulls us over. The police officer and I are having a talk and all of a sudden, he turns towards Nush, and what does she do? Sticks out her tongue and flips him off. She was mad because he ruined her fun you see..."'
+		*nl
 		'You gasp as he continues laughing. "Luckily the police officer and I knew each other. He was a decent sort and just laughed it off. He petted her on her head and commented that she was going to be a real handful when she grew up. Boy was he right..." Eduard starts laughing.'
 		'You continue on talking for a while about Anushka''s adventures while she was younger. "This makes what she''s like now make so much more sense." you comment.'
-		'"Yeah, anyways the little free spirited wild child looking for trouble my Nush." Eduard responds.'
+		'"Yeah, anyways the little free-spirited wild child looking for trouble my Nush." Eduard responds.'
 	end
 	killvar 'nushkidstory'
 	act 'Leave': gt 'anushapt', 'hallway'

+ 6 - 6
locations/anushapt_city.qsrc

@@ -438,7 +438,7 @@ if $ARGS[0] = 'bathroom':
 			'Despite the pattering noise of the running water, you hear the bathroom door open. You look past the shower curtain to see Eduard walking up to the toilet and unzipping his pants.'
 			act 'Uhm excuse me?':
 				*clr & cla
-				'<center><img <<$set_imgh>> src="images/locations/city/island/homes/band_apt/showergetout.jpg"></center>'
+				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/showergetout.jpg"></center>'
 				'You pull the shower curtain tight against your body to make sure there is nothing for him to see other than your head, but you look out at him in consternation.'
 				'He looks up at you when you question him. It takes him a moment to realize who you are and he quickly zips up his pants. "Shit sorry... I thought you were my wife." He turns away and hurries for the door. "I''ll just be going... Sorry again." he says as he pulls the door closed. Unsure about what to think, you just decide to finish your shower.'
 				act 'Get out of the shower': gt 'anushapt_city','bathroom'
@@ -447,7 +447,7 @@ if $ARGS[0] = 'bathroom':
 				act 'Give him a show':
 					*clr & cla
 					inhib_exp += 3
-					'<center><img <<$set_imgh>> src="images/locations/city/island/homes/band_apt/showershow.jpg"></center>'
+					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/showershow.jpg"></center>'
 					'It seems he hasn''t looked over to see who is in the shower yet. You decide to pull the curtain wide open and give him a proper view of your soapy naked body. "Excuse me, is this what you were looking for?" you ask him.'
 					*nl
 					'He is a bit surprised at first. "Oh sorry... I thought you were my wife." His eyes roam up and down your naked body as he pulls out his dick and starts to piss in the toilet. "Don''t mind me. Just get back to your shower." he adds with a smirk.'
@@ -461,7 +461,7 @@ if $ARGS[0] = 'bathroom':
 			'Despite the pattering noise of the running water, you hear the bathroom door creaking slightly. Looking past the shower curtain you see that the bathroom door has been cracked open a little bit. Through the small crack in the doorway, you notice Maksim, Anushka''s younger brother, peeking in to watch you shower.'
 			act 'Yell at him':
 				*clr & cla
-				'<center><img <<$set_imgh>> src="images/locations/city/island/homes/band_apt/showergetout.jpg"></center>'
+				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/showergetout.jpg"></center>'
 				if locat['A144'] = 0:
 					'You pull the shower curtain tight against your body to make sure there is nothing for him to see other than your head. "Get out of here you little pervert!"'
 					'He laughs, then quickly ducks away before you hear Anushka yelling at him. "What the hell are you doing?" As you continue your shower, you hear a lot more yelling from behind the door, and there is even a loud crash. Suddenly, silence descends upon the apartment.'
@@ -477,7 +477,7 @@ if $ARGS[0] = 'bathroom':
 				act 'Give him a show':
 					*clr & cla
 					inhib_exp += 3
-					'<center><img <<$set_imgh>> src="images/locations/city/island/homes/band_apt/showershow.jpg"></center>'
+					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/showershow.jpg"></center>'
 					'Looking straight at him, you give him a smile. You pull the curtain wide open to give him the perfect view of your naked, wet, supple body. His eyes grow wide and he wastes no time, quickly coming into the bathroom, pulling the door closed behind him. After a few minutes of just watching you, you notice him pulling out his phone and trying to take a picture. You immediately shake your head at him. "No pictures or I will tell your sister that you snuck in here and started taking pictures of me in the shower." He doesn''t say anything, but gives you a look that''s a mixture of disgust, annoyance and fear at the mention of his sister.'
 					'He just settles in, enjoying watching you shower and dry yourself off. As you start getting dressed, you shoo him out of the room before finishing up.'
 					act 'Get out of the shower': gt 'anushapt_city','bathroom'
@@ -523,7 +523,7 @@ if $ARGS[0] = 'livingroom':
 			*clr & cla
 			gs 'npc_relationship', 'modify', 'A156', 'like'
 			minut += 30
-			'<center><img <<$set_imgh>> src="images/shared/food/video_games/videogame_boy.jpg"></center>'
+			'<center><img <<$set_imgh>> src="images/shared/home/video_games/videogame_boy.jpg"></center>'
 			'You take a seat next to Arkadi as he plays a video game. After a few minutes he switches games to a two player game. Smiling to him you pick up the other controller and start playing with him. The two of you have a good time playing games for awhile, but after a bit you get kinda tired playing the game you are playing and he seems to have no interest in switching games. So you get up and decide to look around the rest of the apartment.'
 			act 'Leave the livingroom':gt 'anushapt_city', 'hallway'
 		end
@@ -876,7 +876,7 @@ if $ARGS[0] = 'nushlivroom':
 	gs 'anushapt_city_schedule'
 	locat['A144'] = 5
 	'<center><b><font color = maroon>Living room</font></b></center>'
-	'<center><img <<$set_imgh>> src="images/locations/city/island/homes/band_apt/living.jpg"></center>'
+	'<center><img <<$set_imgh>> src="images/locations/city/island/homes/band_apt/living_room.jpg"></center>'
 	'The room has a couple of recliners and a couch where Anushka is sitting. In front of the couch is a large coffee table. Several empty beer bottles and cups are spread across the table. There are also some scattered papers and a pill bottle sitting on the table. Opposite the couch but in front of the window is a fairly large TV playing an action movie of some sort and a stereo system. The room isn''t exactly messy, but it is far from clean. It doesn''t look like it has been dusted in months or the floor has been recently swept. You walk over and sit down next to Anushka.'
 	*nl
 	'You notice that you don''t hear anything else. "Where''s everyone else?" you ask her.'

+ 341 - 145
locations/anushaptbr.qsrc

@@ -1,4 +1,9 @@
 # anushaptbr
+!!2024/04/03
+!!maksimQW['QWstage'] - tracks the stage of his overall questline
+!!maksimQW['blackmail_flash']- tracks how many times Sveta has been blackmailed after agreeing to it
+!!maksimQW['blackmail'] shows if Sveta has agreed to be blackmailed
+!!maksimQW['nush_games'] shows how many times Sveta and Nush have played her brothers in video games
 
 if $ARGS[0] = 'brotherroom':
 	$menu_loc = 'anushaptbr'
@@ -10,16 +15,14 @@ if $ARGS[0] = 'brotherroom':
 	gs 'stat'
 	'<center><b><font color = maroon>Anushka''s brother''s room</font></b></center>'
 	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/broroom.jpg"></center>'
-	'The room is disorganized and untidy. It''s fairly messy with a lot of clothes scattered about in various piles. Two beds are crammed against opposite walls, leaving an open space in the center. There is a small TV on a stand in the room with a PlayStation console lying partially hidden under some clothes in front of it.'
-	
-	act 'Leave': gt 'anushapt', 'hallway'
-	
+	'The room is disorganized and untidy. It''s fairly messy with a lot of clothes scattered about in various piles. Two beds are crammed against opposite walls, leaving an open space in the center. There is a small TV on a stand in the room with a PlayStation console lying partially hidden under some clothes in front of it.'	
+	act 'Leave': gt 'anushapt', 'hallway'	
 	if AnushkaLoc = 3 and maksimQW['QWstage'] = 0:
 		maksimQW['QWstage'] = 1
 		menu_off = 1
 		minut += 5
 		gs 'stat'
-		'The two of you enter her brothers'' room. They immediately stop doing what they were doing and look towards you in fear and anger. Maksim, the older brother, is 13 or 14, the age when boys start paying attention to girls. Timofey is about a year or two younger.'
+		'The two of you enter her brothers'' room. They immediately stop doing what they are doing and look towards you in fear and anger. Maksim, the older brother, is 13 or 14, the age when boys start paying attention to girls. Timofey is about a year or two younger.'
 		'Maksim gathers some courage before speaking. "What do you want? Get out of our room!"'
 		*nl
 		'"Calm down. I just wanted to see what you were up to because I know you little shitheads are always up to something!" Anushka quickly replies.'
@@ -27,7 +30,7 @@ if $ARGS[0] = 'brotherroom':
 		'Anushka reaches out and slaps him on the back of the head. "Watch what you say, or I''ll beat your little ass!"'
 		*nl
 		'He rubs the back of his head. "That''s what mother always says."'
-		'Anushka fumes. "Fuck that bitch and don''t listen to her. You better listen to dad, you little asshole!"'
+		'Anushka fumes. "Fuck that bitch and don''t listen to her. You better off listen to dad, you little asshole!"'
 		'He just rolls his eyes and ignores her. "Don''t tell me... Is this one of the famous groupies that we''ve heard so many stories about?" he asks while looking at you.'
 		act 'Excuse me?':
 			*clr & cla
@@ -36,9 +39,9 @@ if $ARGS[0] = 'brotherroom':
 			'<center><b><font color = maroon>Anushka''s brother''s room</font></b></center>'
 			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/broroom.jpg"></center>'
 			'"What do you mean?" you ask.'
-			'"We hear a lot of great stories about the band and its groupies from Radomir," he answers.'
+			'"We hear a lot of great stories about the band and its groupies from Rad," he answers.'
 			'"Don''t listen to him! He''s just making most of that stuff up to impress you!" Anushka snaps.'
-			'"Well, at least we can hope this groupie is better than Alyona."'
+			'"Well, at least we can hope this groupie is better than Alyona." Maksim says.'
 			act 'Why''s that?':
 				*clr & cla
 				minut += 5
@@ -47,23 +50,24 @@ if $ARGS[0] = 'brotherroom':
 				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/broroom.jpg"></center>'
 				'"She''s really mean to us! She always beats me up and won''t play games with us," Maksim says as he looks at you sadly. Timofey nods in agreement.'
 				'"If you stop trying to film her while she''s taking a shower, maybe she wouldn''t be kicking your ass, you little pervert!" Anushka interjects.'
-				'"Your brothers are really something else. I guess even boys at this age think with their smaller head," you reply.'
+				'"Your brothers are really something else. I guess even boys at this age think with their smaller heads," you reply.'
 				*nl
 				'Anushka nods in agreement. "Yeah, most of them are slaves to their lust, even if they''re too young to even understand it yet."'
 				'Maksim puffs up. "I''m not too young!"'
-				'Anushka laughs at him and turns to you. "Maybe I should tell my dad what they''re up to?"'
+				'Anushka laughs at him and turns to you. "Maybe I should tell Dad what they''re up to?"'
 				act 'Laugh':
 					*clr & cla
 					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/broroom.jpg"></center>'
 					'The brothers are looking at the two of you in total fear as Anushka continues. "Look at them! They''re scared shitless!"'
 					'Maksim is fuming with anger and starts yelling. "Get out of our room!"'
 					'When you and Anushka just keep laughing, he and Timofey get up and push you out the door.'
-					act 'Leave': AnushkaLoc = 2 & gt 'anushapt','hallway'
+					act 'Leave': AnushkaLoc = 2 & gt 'anushapt', 'hallway'
 				end
 			end
 		end
-	elseif AnushkaLoc = 3 and maksimQW['QWstage'] = 1:
-		if maksimQW['QWstage'] = 1: maksimQW['QWstage'] = 2
+	elseif AnushkaLoc = 3 and maksimQW['nush_games'] = 0:
+		maksimQW['QWstage'] = 1
+		maksimQW['nush_games'] = 1
 		menu_off = 1
 		minut += 3
 		gs 'stat'
@@ -72,7 +76,7 @@ if $ARGS[0] = 'brotherroom':
 		'Maksim glances at his brother for a moment, then back at Anushka. "All of us?"'
 		*nl
 		'She nods. "That''s the plan. The two of us against the two of you."'
-		'Both of them get excited. "Your friend better be great. We''ve been practicing really hard, and we''ll definitely beat you this time!"'
+		'Both of them get excited. "Your friend better be great, because we are getting really good at this game!"'
 		'"You really think you can beat me this time? You got your asses handed to you the last time!" Anushka quickly replies while smiling.'
 		'The boys nod at each other. "This time will be different. We''re sure we''ll win!"'
 		act 'What''s this all about?':
@@ -80,7 +84,7 @@ if $ARGS[0] = 'brotherroom':
 			minut += 2
 			gs 'stat'
 			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/broroom.jpg"></center>'
-			'"Oh don''t worry. Sometimes I sit and play video games with them. I always beat their asses."'
+			'"Oh don''t worry. Sometimes I sit and play video games with them. I always beat their asses." Anushka explains.'
 			'"Not this time!" Maksim looks at the two of you determined.'
 			act 'Sit down and play':
 				*clr & cla
@@ -97,14 +101,17 @@ if $ARGS[0] = 'brotherroom':
 					gs 'stat'
 					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/playgamebro.jpg"></center>'
 					if pcs_gaming <= 20:
-						'The game is pretty much over. Both of them are better players than you are. Anushka does what she can, but the brothers easily manage to win back to back matches. Both brothers jump up and do some weird little victory dance. "Haha, we win and you lose!" Maksim taunts.'
+						maksimQW['nush_games_win'] = 1
+						'The game is pretty much over. Both of them are better players than you are. Anushka does what she can, but the brothers easily manage to win the first game, they have a big lead during the second game when Anushka uses her foot to push Maksim off the bed, he manages to get back up. It gives you a chance but Timofey manages to keep you from taking advantage of it, despite Anushka trying to cheat the brothers manage to win again.'
+						'Both brothers jump up and do some weird little victory dance. "Haha, we win and you lose! Even if you did try and cheat, loser!" Maksim taunts.'
 						'Anushka rolls her eyes at their antics. "You just got lucky is all."'
 						'"You suck, you suck!" Maksim chants and Timofey quickly joins in. "Losers, losers!"'
 						'Anushka gets up and shakes her head. "Come on, let''s go. They''re not going to stop acting like jackasses anytime soon." You get up and follow her out.'
 					elseif pcs_gaming <= 40:
-						'You start to get a handle on things, and for a while, the game is pretty much a draw with no team getting the upper hand. All of a sudden however, you make a mistake, and the brothers are about to win. Just as they''re about to grab their victory though, Anushka uses her foot to push Maksim off the bed. This allows her to secure the win while he''s trying to recover.'
+						maksimQW['nush_games_win'] = 2
+						'You start to get a handle on things, and for a while, the game is pretty much a draw with no team getting the upper hand. All of a sudden, however, you make a mistake, and the brothers are about to win. Just as they''re about to grab their victory though, Anushka uses her foot to push Maksim off the bed. This allows her to secure the win while he''s trying to recover.'
 						'He immediately starts yelling. "You cheated! You always do this when you''re about to lose!"'
-						'"Yeah, Anushka''s a cheater!" Timofey chimes in.'
+						'"Yeah, Nush''s a cheater!" Timofey chimes in.'
 						'"Don''t be such a crybaby! I thought you said you were prepared this time?" she says, teasing them with a smile on her face.'
 						*nl
 						'The comment only makes the situation worse, and things escalate. The brothers are now yelling at Anushka and taking it way too seriously. After a while, Anushka gets fed up with them and starts yelling back.'
@@ -113,13 +120,14 @@ if $ARGS[0] = 'brotherroom':
 						'"But dad nothing. Weren''t you supposed to be studying?" Eduard asks.'
 						*nl
 						'"Y-Yes..." both brothers answer.' 
-						'"Well get to it!" he says to them, then turns to you and Anushka. "You two get out of their room. And stop tormenting your brothers, Nush!" He holds the door open until you both leave, then pulls it shut hard.'
+						'"Well get to it!" he says to them, then turns to you and Anushka. "You two get out of their room and stop tormenting your brothers, Nush!" He holds the door open until you both leave, then pulls it shut hard.'
 						'Anushka starts to respond, but Eduard interrupts her. "I don''t care! Leave them alone so they can study. Take your friend to your room." With that, he turns and goes back to the living room.'
 					else
-						'While it''s your first time playing, you manage to hold your own, and with Anushka''s skill, it becomes clear you two have the upper hand. The brothers keep it close, but they fall a little short in both matches.'
+						maksimQW['nush_games_win'] = 3
+						'While it''s your first time playing, you manage to hold your own, and with Anushka''s skill, it becomes clear you two have the upper hand. The brothers keep it close, but they fall a little short in both games.'
 						'Maksim throws down his controller and turns on Timofey. "Why are you so bad? We could have beat them if you didn''t suck so much!"'
 						'Timofey tries to defend himself. "It''s not my fault Nush and <<$pcs_nickname>> are too good!"'
-						'Before Maksim can respond, Anushka cuts him off. "It''s not Timo''s fault. I killed you three times when you kept trying to go through that courtyard. You''re just mad because you got beat by a girl... Again," she says teasingly and sticks her tongue out at him.'
+						'Before Maksim can respond, Anushka cuts him off. "It''s not Timo''s fault. I killed you three times when you kept trying to go through that courtyard. You''re just mad because you got beat by a girl... Again!" she says teasingly and sticks her tongue out at him.'
 						'Maksim''s eyes flare at Anushka. "GO SUCK A DICK! THAT''S ALL <i>YOU''RE</i> GOOD AT, SLUT!" he screams at her.'
 						*nl
 						'Anushka''s eyes narrow. "Watch your mouth, you little shit! It''s just a game!"'
@@ -129,21 +137,21 @@ if $ARGS[0] = 'brotherroom':
 						*nl
 						'Eduard turns and glares at Anushka. "Stop teasing your brothers and go to your room." When she starts to open her mouth, he cuts her off. "I don''t want to hear it. Go to your room!" With that, she gets up in a huff and does as she''s told. You follow behind her.'
 						'"What have I told you about calling your sister a slut?" you hear Eduard ask as you leave.'
-						'Maksim''s voices cracks. "I''m sorry..."'
+						'Maksim''s voice cracks. "I''m sorry..."'
 						'The door closes before you can hear any more, leaving you unable to make out anything beyond muffled sounds.'
 					end
-					act 'Go to Anushka''s room': AnushkaLoc = 2 & gt 'anush_bedroom','anushroom'
+					act 'Go to Anushka''s room': AnushkaLoc = 2 & gt 'anush_bedroom', 'anushroom'
 				end	
 			end
 		end
 	elseif AnushkaLoc ! 3:
 		brotherroom = rand(1,6)
 		menu_off = 1
-		if brotherroom = 1 and maksimQW['QWstage'] >= 3:
-			if maksimQW['QWstage'] = 3: maksimQW['QWstage'] = 4
+		if brotherroom = 1 and maksimQW['QWstage'] = 1:
+			maksimQW['QWstage'] = 2
 			minut += 2
 			gs 'stat'
-			'You open the door and look into the brothers'' room. You see the boys sitting talking about something. Maksim is 13 or 14, the age when boys start paying attention to girls. Timofey is about a year or two younger.'
+			'You open the door and look into the brothers'' room. You see the boys sitting and talking about something. Maksim is 13 or 14, the age when boys start paying attention to girls. Timofey is about a year or two younger.'
 			act 'What are you up to?':
 				*clr & cla
 				minut += 2
@@ -186,9 +194,9 @@ if $ARGS[0] = 'brotherroom':
 					end	
 				end
 			end	
-		elseif brotherroom = 2 and maksimQW['QWstage'] >= 4:
+		elseif brotherroom = 2 and maksimQW['QWstage'] = 2:
 			gs 'stat'
-			if maksimQW['QWstage'] = 4: maksimQW['QWstage'] = 5
+			maksimQW['QWstage'] = 3
 			'You open the door and look in the brothers'' room. You see them fighting on Maksim''s bed. They immediately stop when they see you.'
 			act 'What are you doing?':
 				*clr & cla
@@ -206,7 +214,7 @@ if $ARGS[0] = 'brotherroom':
 					gs 'stat'
 					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/broroom.jpg"></center>'
 					'You walk up to them and grab the magazine. Maksim tries his hardest to stop you, but you easily manage to push him away.'
-					'"Give that back! It''s mine!" he says dejected. "It''s all your fault!" he says as he turns to his brother. "If you could only keep your mouth shut. I can''t wait to get my own room."'
+					'"Give that back! It''s mine!" he says dejectedly. "It''s all your fault!" he says as he turns to his brother. "If you could only keep your mouth shut. I can''t wait to get my own room."'
 					'Timofey just keeps on sneering at his brother.'
 					act 'Calm down':
 						*clr & cla
@@ -216,16 +224,16 @@ if $ARGS[0] = 'brotherroom':
 						'"It doesn''t have to be all bad," you say. "I share a room with my sister."'
 						'"Wow, two girls in one room? That''s so hot!" Maksim says. "Our sister is the only one with her own room. That''s so unfair!"'
 						'"She is a girl after all. Wouldn''t it be awkward if she shared a room with you?" you try to explain.'
-						'"I guess, but she could sleep in the living room, then we could each have our own room!" he says, as if that would be totally fair.'
+						'"I guess, but she could sleep in the living room, then we could each have our own room!" he says as if that would be totally fair.'
 						'Giving up on reasoning with him, you shrug and turn to the magazine. As you flip through the pages, you realize the boy has some kinky tastes and wonder who might have bought something like this for him. Whoever it was, you figure there''s no harm in him looking at pictures, so when you reach the end, you throw the magazine back onto his bed. "I won''t tell anyone your secret, but try to be nice to each other at least."'
 						act 'Leave': gt 'anushapt', 'hallway'
 					end
 				end	
 			end
-		elseif brotherroom = 3 and maksimQW['QWstage'] >= 2:
+		elseif brotherroom = 3 and maksimQW['QWstage'] >= 3:
+			maksimQW['QWstage'] = 4
 			gs 'stat'
-			if maksimQW['QWstage'] = 2: maksimQW['QWstage'] = 3
-			'You open the door and look in the brothers'' room. You see Maksim in there alone, playing some first person shooter on the PlayStation.'
+			'You open the door and look in the brothers'' room. You see Maksim in there alone, playing some first-person shooter on the PlayStation.'
 			act 'Ask where Timofey is':
 				*clr & cla
 				minut += 2
@@ -240,24 +248,43 @@ if $ARGS[0] = 'brotherroom':
 					*clr & cla
 					minut += 3
 					gs 'stat'
-					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/broroom.jpg"></center>'
-					'You nod while trying not to laugh. "Oh I see. Do you want to play a game with me then?"'
-					'It looks like he''s about to say no, but then he smiles. "Okay, but only if we make it interesting."'
-					'"Interesting how?" you ask.'
-					'He grins. "If I win, you have to show me your boobs, but if you win, I''ll tell you a secret about Nush that you don''t know."'
-					act 'I don''t think so':
-						*clr & cla
-						minut += 3
+					if maksimQW['blackmail_flash'] > 10:
+						maksimQW['blackmail_flash'] += 1
+						gs 'fame', 'pav', 'sex', 1
+						inhib_exp += rand(1,3)
+						'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/maksim_blackmail/naked_video_games.jpg"></center>'
+						'You nod while trying not to laugh. "Oh, I see. Do you want to play a game with me then?"'
+						'It looks like he''s about to say no, but then he smiles. "Okay, but you have to play naked."'
+						'You shake your head. "I don''t think so." you tell him.'
+						'He grins. "Do it or I will tell Nush you were spying on her."'
+						*nl
+						'You sigh once more being blackmailed by a boy who is barely a teenager, how did you get yourself into this. "Fine!" With that, you strip out of your clothes and pick up one of the controllers. The two of you play a game but you easily beat him, as he spends the whole time staring at your naked body instead of paying attention to the game.'
+						'With him still staring at your naked body you decided you had enough for now. Getting up you get dressed. "Hey you don''t got to get dressed we can play another game." He says.'
+						'You shake your head. "Maybe some other day." Once you finish getting dressed you leave.'
+						gs 'arousal', 'flash', 15, 'humiliation', 'sub'
+						gs 'arousal', 'end'
 						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 tell him.'
-						'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': gt 'anushaptbr', 'race_maksim_result'
-					if pcs_inhib > 30: act 'Deal (Go easy on Maksim)': gt 'anushaptbr', 'race_maksim_result', 1
-				end	
+					else
+						'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/broroom.jpg"></center>'
+						'You nod while trying not to laugh. "Oh I see. Do you want to play a game with me then?"'
+						'It looks like he''s about to say no, but then he smiles. "Okay, but only if we make it interesting."'
+						'"Interesting how?" you ask.'
+						'He grins. "If I win, you have to show me your boobs, but if you win, I''ll tell you a secret about Nush that you don''t know."'
+						act 'I don''t think so':
+							*clr & cla
+							minut += 3
+							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 tell him.'
+							'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': gt 'anushaptbr', 'race_maksim_result'
+						if pcs_inhib > 30: act 'Deal (Go easy on Maksim)': gt 'anushaptbr', 'race_maksim_result', 1
+					end	
+				end
 			end
 		else
 			'You open the door and look into the brothers'' room. You see Maksim and Timofey are here, doing whatever it is that boys do. Maksim stares at your breasts for a few seconds before telling you to get lost.'
@@ -338,122 +365,291 @@ if $ARGS[0] = 'rematch':
 	gs 'stat'
 	'<center><b><font color = maroon>Anushka''s brother''s room</font></b></center>'
 	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/broroom.jpg"></center>'
-	if rand(1,2) = 1:
+	if maksimQW['nush_games'] = 1:
 		'The two of you enter her brothers'' room and they immediately stop doing whatever they were doing. Maksim gathers some courage. "What do you want?" He notices you and starts staring at your breasts. "I see you brought your groupie with you again."'
 		'"I just wanted to see if you were up for a rematch?" Anushka replies, pointing to the gaming console in their room.'
 		'Maksim glances at his brother for a moment, then back at Anushka. "Okay, fine."'
 		*nl
-		'Both of them get excited. "Your friend better be great. We''ve been practicing really hard and we''ll definitely beat you this time!"'
-		'Anushka quickly questions him while smiling. "You really think you can beat me this time?"'
-		'The boys nod at each other. "We''re sure!"'
-		act 'Sit down and play':
-			*clr & cla
-			minut += 15
-			gs 'exp_gain', 'gaming', rand(1, 3)
-			gs 'stat'
-			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/playgamebro.jpg"></center>'
-			'The brothers turn away from you and start whispering. You''re sure that they must be planning something.'
-			'"Let''s play!" Timofey says smiling.'
-			'The four of you play for several minutes. It''s the same shooter game as last time, and you''re a little bit better than before.'
-			act 'Finish':
+		if maksimQW['nush_games_win'] = 1:
+			'Both of them get excited. "Even when you tried to cheat we won easily, we will again too!"'
+			'Anushka quickly questions him while smiling. "You really think you can beat us this time? Keep in mind it was <<$npc_nickname>> first time playing that game, you know how it takes time to learn a game."'
+			'Timofey looks concerned while Maksim looks confident. "Pfft, girls suck at video games."'
+			'Anushka grins a bit and continues in a teasing tone of voice. "Then we do I... a GIIIIRRRLLLL always beat you when it''s just us playing uh?"'
+			*nl
+			'Maksim looks mad and turns on her. "Cause you always cheat!"'
+			'Timofey is starting to look upset as his brother and sister start to fight so you speak up. "How about we just play then uh?"'
+			'Anushka nods to that. "Yeah let''s just play and see what happens."'
+			'Maksim still looks angry but nods. "Fine!"'
+		elseif maksimQW['nush_games_win'] = 2:
+			'Both of them get excited. "If you don''t cheat again, we''ll definitely beat you this time!"'
+			'Anushka quickly questions him with a teasing smiling. "If you are half as good as you think then it wouldn''t have mattered."'
+			'Maksim responds. "Shut up!"'
+			'Then Timofey chimes in, obviously not liking it when his brother and sister fight. "Can we play now?"'
+			'Anushka''s face instantly softens. "Yeah sure we can."'
+		else
+			'Both of them get excited. "Your friend better be great. We''ve been practicing really hard and we''ll definitely beat you this time!"'
+			'Anushka quickly questions him while smiling. "You really think you can beat us this time?"'
+			'The boys nod at each other. "We''re sure!"'
+			act 'Sit down and play':
 				*clr & cla
+				maksimQW['nush_games'] = 2
 				minut += 15
+				gs 'exp_gain', 'gaming', rand(1, 3)
 				gs 'stat'
 				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/playgamebro.jpg"></center>'
-				if pcs_gaming <= 20:
-					'The game is pretty much over and both of them are still better players than you are. Anushka does what she can again, but the brothers easily manage to win back to back matches. Both brothers jump up and do some weird little victory dance. "Haha, we win and you lose!" Maksim taunts.'
-					'Anushka rolls her eyes at their antics. "Yeah, yeah. You won." She reaches over and ruffles Timofey''s hair, which he tries and fails to dodge. "Good job, kiddo."'
-					'"Pfft, I won it! Timo almost caused us to lose, but I carried his sorry ass!" Maksim says.'
-					'Timofey pulls away from his sister. "Nuh-uh, I almost scored as good you as you did!" This quickly turns into them arguing over who did better.'
-					'Anushka gets up and shakes her head. "Come on, let''s go. They''re not going to stop acting like brats anytime soon." You get up and follow her out.'
-				elseif pcs_gaming <= 40:
-					'The game is pretty much a draw with no one getting the upper hand until Anushka starts to cheat again. She starts jabbing Maksim with her foot and covers Timofey''s eyes with her hand at a critical moment. The brothers try to return the favor, and soon the three of them are more interested in wrestling and fighting than actually winning the game. With everyone else distracted, you take advantage and win the match.'
-					'Realizing what happened, Maksim starts yelling. "Not fair! You cheated again!"'
-					'"You were doing the same to me, so you were cheating too!" Anushka replies, teasing them with a smile on her face.'
-					*nl
-					'Maksim doesn''t see it that way. "You started it, and your groupie took advantage of the situation!"'
-					'Anushka just laughs. "Well whose fault is that? If you weren''t so consumed with trying to get back at me, you would have noticed what she was doing and maybe won."'
-					'"SHUT UP!" Maksim yells in response.'
-					'Anushka interjects before he can say more. "Be quiet! Do you want Dad to come in here again?"'
-					'He immediately goes quiet and glances at the door, as if expecting their dad to burst in any moment. When the moment passes, Maksim jumps on Anushka. "Cheater!" He''s loud, but not too loud.'
-					*nl
-					'Anushka and Maksim start to wrestle. She quickly starts to get the upper hand because he just isn''t big enough to beat his older sister yet. Once it becomes clear she''s about to pin him down, Timofey jumps on her back and the three of them wrestle around. Anushka manages to pin one of them, but the other gets loose as she tries to pin them both. They come close a few times to pinning her down, but in the end, they all just give up, out of breath and lying in a heap.'
-					'Finally, Anushka gets up and untangles herself from them. "Come on, let''s go back to my room," she says to you. As you follow her out of the room, the brothers start to play another game. "We''ll win next time!" you hear Maksim say as Anushka closes the door on them.'
-				else
-					'Before too long, it''s pretty clear you and Anushka have the upper hand. The brothers keep it close, but they fall a little short in both matches.'
-					'Maksim throws down his controller and turns on Timofey. "Why are you so bad? We could have beat them if you didn''t suck so much!"'
-					'Timofey tries to defend himself. "It''s not my fault that Nush and <<$pcs_nickname>> are just too good!"'
-					'Before Maksim can respond, Anushka cuts him off. "It''s not Timo''s fault, and you know it. When you fall behind, you get too aggressive like always, which makes it easier for me to kill you. You''re just mad because you got beat by a girl... Again," she says in a teasing tone, then sticks her tongue out at him.'
-					'Maksim''s eyes flare at Anushka and it looks like he''s about to scream at her again until she interjects. "Calm down, we don''t want Dad in here again." He shuts his mouth and glances at the door, then glares at Anushka.'
-					*nl
-					'"Get out! Get out of our room!" he says as he tries to shove her off the bed.'
-					'Anushka gets up. "Oh my God, you''re such a baby! I don''t even know why I bother playing with you."'
-					'He pushes her towards the door. "Good, then don''t... Get out!"'
-					'Anushka sounds exasperated. "Fine then, you little brat!"'
-					*nl
-					'She turns towards you. "Come on, let''s go before this little shit starts to cry."'
-					'"Fuck you, bitch! Get out of our room!" he starts to yell, but catches himself and lowers his voice partway through.'
-					'Timofey runs up to his sister. "No, come back and play with us!" he pleads.'
-					'Anushka instantly eases up, and her anger seems to melt away. "Some other time, squirt..." she says with a smile and ruffles his hair, much to his annoyance.'
-					'As she closes the door and leaves, you can hear Maksim berating his brother for being a pussy and pleading with their sister to play games with them.'
-				end
-				act 'Go to Anushka''s room': AnushkaLoc = 2 & gt 'anush_bedroom','anushroom'
-			end	
+				'The brothers turn away from you and start whispering. You''re sure that they must be planning something.'
+				'"Let''s play!" Timofey says smiling.'
+				'The four of you play for several minutes. It''s the same shooter game as last time, and you''re a little bit better than before.'
+				act 'Finish':
+					*clr & cla
+					minut += 15
+					gs 'stat'
+					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/playgamebro.jpg"></center>'
+					if pcs_gaming <= 20:
+						maksimQW['nush_games_win'] = 1
+						'The game is pretty much over and both of them are still better players than you are. Anushka does what she can again, but the brothers easily manage to win back to back matches. Both brothers jump up and do some weird little victory dance. "Haha, we win and you lose!" Maksim taunts.'
+						'Anushka rolls her eyes at their antics. "Yeah, yeah. You won." She reaches over and ruffles Timofey''s hair, which he tries and fails to dodge. "Good job, kiddo."'
+						'"Pfft, I won it! Timo almost caused us to lose, but I carried his sorry ass!" Maksim says.'
+						'Timofey pulls away from his sister. "Nuh-uh, I almost scored as good you as you did!" This quickly turns into them arguing over who did better.'
+						'Anushka gets up and shakes her head. "Come on, let''s go. They''re not going to stop acting like brats anytime soon." You get up and follow her out.'
+					elseif pcs_gaming <= 40:
+						maksimQW['nush_games_win'] = 2
+						minut += 15
+						'The game is pretty much a draw with no one getting the upper hand until Anushka starts to cheat again. She starts jabbing Maksim with her foot and covers Timofey''s eyes with her hand at a critical moment. The brothers try to return the favor, and soon the three of them are more interested in wrestling and fighting than actually winning the game. With everyone else distracted, you take advantage and win the match.'
+						'Realizing what happened, Maksim starts yelling. "Not fair! You cheated again!"'
+						'"You were doing the same to me, so you were cheating too!" Anushka replies, teasing them with a smile on her face.'
+						*nl
+						'Maksim doesn''t see it that way. "You started it, and your groupie took advantage of the situation!"'
+						'Anushka just laughs. "Well, whose fault is that? If you weren''t so consumed with trying to get back at me, you would have noticed what she was doing and maybe won."'
+						'"SHUT UP!" Maksim yells in response.'
+						'Anushka interjects before he can say more. "Be quiet! Do you want Dad to come in here again?"'
+						'He immediately goes quiet and glances at the door, as if expecting their dad to burst in any moment. When the moment passes, Maksim jumps on Anushka. "Cheater!" He''s loud, but not too loud.'
+						*nl
+						'Anushka and Maksim start to wrestle. She quickly starts to get the upper hand because he just isn''t big enough to beat his older sister yet. Once it becomes clear she''s about to pin him down, Timofey jumps on her back and the three of them wrestle around. Anushka manages to pin one of them, but the other gets loose as she tries to pin them both. They come close a few times to pinning her down, but in the end, they all just give up, out of breath and lying in a heap.'
+						'Finally, Anushka gets up and untangles herself from them. "Come on, let''s go back to my room," she says to you. As you follow her out of the room, the brothers start to play another game. "We''ll win next time!" you hear Maksim say as Anushka closes the door on them.'
+					else
+						maksimQW['nush_games_win'] = 3
+						'Before too long, it''s pretty clear you and Anushka have the upper hand. The brothers keep it close, but they fall a little short in both matches.'
+						'Maksim throws down his controller and turns on Timofey. "Why are you so bad? We could have beat them if you didn''t suck so much!"'
+						'Timofey tries to defend himself. "It''s not my fault that Nush and <<$pcs_nickname>> are just too good!"'
+						'Before Maksim can respond, Anushka cuts him off. "It''s not Timo''s fault, and you know it. When you fall behind, you get too aggressive like always, which makes it easier for me to kill you. You''re just mad because you got beat by a girl... Again!" she says in a teasing tone, then sticks her tongue out at him.'
+						'Maksim''s eyes flare at Anushka and it looks like he''s about to scream at her again until she interjects. "Calm down, we don''t want Dad in here again." He shuts his mouth and glances at the door, then glares at Anushka.'
+						*nl
+						'"Get out! Get out of our room!" he says as he tries to shove her off the bed.'
+						'Anushka gets up. "Oh my God, you''re such a baby! I don''t even know why I bother playing with you."'
+						'He pushes her towards the door. "Good, then don''t... Get out!"'
+						'Anushka sounds exasperated. "Fine, I won''t, you little brat!"'
+						*nl
+						'She turns towards you. "Come on, let''s go before this little shit starts to cry."'
+						'"Fuck you, bitch! Get out of our room!" he starts to yell, but catches himself and lowers his voice partway through.'
+						'Timofey runs up to his sister. "No, come back and play with us!" he pleads.'
+						'Anushka instantly eases up, and her anger seems to melt away. "Some other time, squirt..." she says with a smile and ruffles his hair, much to his annoyance.'
+						'As she closes the door and leaves, you can hear Maksim berating his brother for being a pussy and pleading with their sister to play games with them.'
+					end
+					act 'Go to Anushka''s room': AnushkaLoc = 2 & gt 'anush_bedroom', 'anushroom'
+				end	
+			end
 		end
-	else
+	elseif maksimQW['nush_games'] = 2:
+		'The two of you walk down the hall and enter her brothers'' room. As you do you hear moaning sounds, you have heard enough porn to recognize that sound. Maksim looks up with huge wide eyes like he was caught in the middle of something. He slams a small laptop closed and the sounds stop as he turns bright red, you notice Timofey is nowhere to be found. Anushka just stops a moment, she obviously knows the sounds as well as she says. "Just what was you doing you little pervert?"'
+		*nl
+		'He looks scared, angry and embarrassed all at once. "Nothing! Go away!" He says as he tries to hide the laptop, only making it more obvious. Anushka suddenly rushes across the room and jumps on his bed with him and starts trying to wrestle the laptop away from him. He puts up a decent fight but he still hasn''t hit his growth spurt yet and she manages to get it away from him. With one hand she holds him at bay, while she opens the laptop with the other. Within a moment the sounds start up again, you walk over to see and within moments it changes from movie to movie. A compilation of girls getting cum facials or cum shot into their mouths, only to then stick out their tongues showing the cum before swallowing it.'
+		*nl
+		'Anushka laughs when she looks at him. "Oh my god you little pervert, you better not be showing Timo this smut."'
+		'Maksim lunges and grabs the laptop back, Anushka lets him take it back as he closes it again. He is obviously embarrassed to be caught by his sister, looking at porn. "Shut up, you do that all the time, with every guy around."'
+		'All the humor leaves Anushka''s face. "Shut up you little bastard. I do not!"'
+		'Now he looks a little smug like he feels he is controlling things. "That''s not what mom says."'
+		'You think you almost hear Anushka growl at the mention of their mom. "Don''t listen to that cunt, she is just a stupid jealous cunt, who''s time is past and now she lashes out at everyone."'
+		*nl
+		'Now he looks more confident the more upset she gets. "Mom didn''t make you into a slut! You are just a slut, like most girls." The last bit he says while looking at you.'
+		'For a moment she pulls back her hand like she might slap him but then drops her hand, for a moment he looked scared when it looked like she might. "Stop listening to her, she lies all the time." She says in a more reasonable voice, obviously trying to calm down.'
+		'He regains his smug look when he is sure she isn''t going to smack him. "Yeah sure, I see all the boys leaving your room all the time, we can hear you through the wall, while they pound you stupid, stupider than you already are, you dumb slut."'
+		*nl
+		'Anushka''s anger flares back up but she just takes a deep breath and looks at Maksim and shakes her head. "No use trying to talk to you, but you better not be showing Timo that stuff or telling him this crap, or I will kick your ass next time." Maksim wisely clams up, seems even he knows he has pushed his sister as far as he safely can. Then she gets up and leads you out of the room. "God I fucking hate that cunt!" Obviously talking about her mother, as you go back to her room.'
+		act 'Go to Anushka''s room': AnushkaLoc = 2 & gt 'anush_bedroom', 'anushroom'
+	elseif maksimQW['nush_games'] = 3:
 		'The two of you walk down the hall and enter her brothers'' room. They immediately stop doing what they were doing and Maksim visibly gathers up his courage. "What is it? What do you want?" He notices you and starts staring at your breasts. "I see you brought your groupie along again."'
-		'"Calm down. I just wanted to see if you were up for a rematch?" Anushka replies, pointing to the gaming console in their room.'
-		'Both of them get excited. "Yeah, and this time we will beat you!"'
-		'"You really think you can beat us this time?" Anushka quickly replies while smiling. '
-		'The boys nod at each other. "This time will be different. We''re sure we''ll win!"'
-		'Anushka laughs. "Nah, I don''t think so. Maybe you boys just like getting beat by girls?"'
-		'Maksim looks mad. "Just shut up and play!"' 
-		'Anushka just laughs again and mimics what he said in a mutter that taunts him.'
+		'"Calm down. I just wanted to see if you guys wanted to play some more?" Anushka replies, pointing to the gaming console in their room.'
+		if maksimQW['nush_games_win'] = 1:
+			'Both of them get excited. "Even when you tried to cheat we won easily, we will again too!"'
+			'Anushka quickly questions him while smiling. "Fine, I admit you have won, twice. But keep in mind it was <<$npc_nickname>> second time playing that game, you know how it takes time to learn a game."'
+			'Timofey looks concerned while Maksim looks confident. "Pfft, girls suck at video games."'
+			'Anushka grins a bit and continues in a teasing tone of voice. "Then why do I... a GGGIIIRRRLLL always beat you when it''s just us playing uh?"'
+			*nl
+			'Maksim looks mad and turns on her. "Cause you always cheat!"'
+			'Timofey is starting to look upset as his brother and sister start to fight so you speak up. "How about we just play then uh?"'
+			'Anushka nods to that. "Yeah let''s just play and see what happens."'
+			'Maksim still looks angry but nods. "Fine!"'
+		elseif maksimQW['nush_games_win'] = 2:
+			'Both of them get excited. "If you don''t cheat again, we''ll definitely beat you this time!"'
+			'Anushka quickly questions him with a teasing smile. "If you are half as good as you think then it wouldn''t have mattered."'
+			'Maksim responds. "Shut up!"'
+			'Then Timofey chimes in, obviously not liking it when his brother and sister fight. "Can we play now?"'
+			'Anushka''s face instantly softens. "Yeah sure we can."'
+		else
+			'Both of them get excited. "Yeah, and this time we will beat you!"'
+			'"You really think you can beat us this time?" Anushka quickly replies while smiling. '
+			'The boys nod at each other. "This time will be different. We''re sure we''ll win!"'
+			'Anushka laughs. "Nah, I don''t think so. Maybe you boys just like getting beat by girls?"'
+			'Maksim looks mad. "Just shut up and play!"' 
+			'Anushka just laughs again and mimics what he said in a manner that taunts him.'
+			act 'Play':
+				*clr & cla
+				gs 'exp_gain', 'gaming', rand(1,3)
+				minut += 15
+				gs 'stat'
+				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/playgamebro.jpg"></center>'
+				'"Come on guys, let''s just have fun!" you tell them.'
+				'"We''ll win this time!" Maksim says as he looks at the two of you, determined.'
+				'"Let''s play!" Timofey says smiling.'
+				'The four of you play for several minutes. You''ve gotten better since the last time you played. You learned a lot and are able to help out more than you did before.'
+				act 'Finish':
+					*clr & cla
+					minut += 15
+					gs 'stat'
+					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/playgamebro.jpg"></center>'
+					if pcs_gaming <= 20:
+						'It''s not enough, however, as all of them are still better players than you. Anushka does what she can again, but the brothers easily manage to win back-to-back matches. Both brothers jump up and do some weird little victory dance. "Haha, go suck a dick that''s all your good at!" Maksim taunts as he looks directly at Anushka.'
+						'Anushka reaches out and grabs him by the shirt. "Shut your fucking mouth, I am so sick of your fucking shit." She looks visibly angry this time.'
+						'Maksim actually goes a little white, like he is actually afraid of her, while Timofey jumps up and grabs Anushka''s arm. "Stop... stop fighting, he didn''t mean it."'
+						*nl
+						'Anushka turns to look at Timofey and you see the anger melt away from her as she lets go of Marksim. "Ok for you." Then she kisses him on the top of his head much to his dismay, unable to get away from her until she finishes.'
+						'"EEEWWW stop it!" Timofey whines while Maksim laughs at him. Then he gives Maksim a dirty look while he is laughing. "Why do you both have to always be so mean."'
+						'Anushka rolls her eyes. "I wasn''t being mean."'
+						'Maksim decides to taunt his brother more. "Now you got all her sex cooties from all the guys she lets fuck her."'
+						*nl
+						'Timofey looks more distressed and then leaves the room. Anushka gives Maksim a dirty look. "Why do you always have to be such an asshole."'
+						'"Fuck you, get out!" Maksim says as Anushka just shakes her head in obvious disgust at her brother and then leaves the room.'
+						'You follow her, she catches up to Timofey as he is going into the bathroom. "Hey I don''t have cooties, stop listening to him."'
+						'He looks at her like she is stupid. "All girls have cooties, I need to wash them off." Then he goes into the bathroom closing the door.'
+						'Anushka just shakes her head and laughs. "God boys are so stupid, in a few years he will be chasing girls." Then the two of you go back to her room.'
+					elseif pcs_gaming <= 40:
+						'The two of you are slightly better than they are, and after some time, you come out on top. Maksim gets mad and throws his controller down. "Fuck!" He then turns on his brother. "Why are you so bad, if you didn''t suck so much we would have won."'
+						'Timofey shakes his head. "No, you suck and you''re why we lost. You always have to try and be the hero and try and win on your own, instead of sticking with me."'
+						'"I leave you because you suck and slow me down!" Maksim yells.'
+						'Before you can even react, Anushka tells him. "You want dad to come back in here?"'
+						'Maksim pushes Anushka. "Get out of my room. Get out!"'
+						'Anushka just shakes her head and goes for the door. "Come on <<$pcs_nickname>>, let''s get out of here."' 
+						'Maksim rushes across the room and pushes the two of you the rest of the way out before slamming the door closed. Anushka angrily goes back to her room.'
+					else
+						'Before too long, it''s pretty clear you and Anushka have the upper hand. The brothers keep it close, but they fall a little short in both matches.'
+						'Maksim throws down his controller. "Fuck!" He then turns on his brother. "Why are you so bad? We could have beat them if you didn''t suck so much!"'
+						'Timofey tries to defend himself. "It''s not my fault. Nush and <<$pcs_nickname>> are just too good."'
+						'Before Maksim can respond, Anushka cuts him off. "It''s not Timo''s fault, and you know it. When you fall behind, you get too aggressive, and don''t work with Timofey. You just try to win it on your own. Also, you''re just mad because you got beat by a girl... again." she says in a teasing tone.'
+						'Maksim''s eyes flare at Anushka "Get out... Get out of our room!" he says as he tries to shove her off the bed.'
+						*nl
+						'Anushka gets up. "Oh my God, you''re such a baby! I don''t even know why I bother playing with you."'
+						'He pushes her towards the door. "You only play with us to bully us! I don''t want to play with you anymore!"'
+						'Anushka sounds exasperated. "Fine then, you little brat! I won''t!" She turns towards you. "Come on, let''s go before this little shit starts to cry."'
+						'"Go suck a cock!" Maksim starts to yell, but catches himself and lowers his voice partway through.'
+						'Timofey runs up to his sister. "You will play with us again, won''t you?" he asks in a somewhat pleading tone.'
+						'Anushka instantly eases up, and her anger seems to melt away. "Some other time, squirt..." she says with a smile and ruffles his hair, much to his annoyance.'
+						'As she closes the door and leaves, you can hear Maksim berating his brother for being a pussy and pleading with their sister to play games with them.'
+					end
+					act 'Go to Anushka''s room': AnushkaLoc = 2 & gt 'anush_bedroom', 'anushroom'
+				end
+			end
+		end
+	elseif maksimQW['nush_games'] = 4:
+		'The two of you walk down the hall and enter her brothers'' room. As you do you only see Timofey on his bed reading a comic, he looks up at the two of you but doesn''t say anything. "Where''s your brother?" Anushka asks.'
+		'Timofey shrugs. "I don''t know, he ran off outside with his friends, they wouldn''t let me play with them." He says sadly.'
+		'You see Anushka''s expression softens along with her voice. "How about we play instead huh? What do you say?"'
+		'He perks up to that and closes the comic. "Really?" He now sounds excited and happy.'
+		'She nods. "Yep any game you want, as long as all three of us can play."'
+		'He jumps up and starts setting up the game. He ends up picking Crash Team Racing, a kids racing game similar to Mario Kart. Anushka looks at you as he gets it all set up. "Come on." The two of you sit on Maksim bed while Timofey hands you both a controler before sitting on his.'
+		'As you start playing it is obvious Timofey is pretty good at this game, likely his favorite game as he seems to know all just what to do.'
 		act 'Play':
 			*clr & cla
 			gs 'exp_gain', 'gaming', rand(1,3)
 			minut += 15
 			gs 'stat'
-			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/playgamebro.jpg"></center>'
-			'"Come on guys, let''s just have fun!" you tell them.'
-			'"We''ll win this time!" Maksim says as he looks at the two of you, determined.'
-			'"Let''s play!" Timofey says smiling.'
-			'The four of you play for several minutes. You''ve gotten a lot better since the last time you played. You learned a lot and are able to help out more than you did before.'
-			act 'Finish':
+			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/timo_play.jpg"></center>'
+			if pcs_gaming <= 20:
+				'They are both way better at the game than you are, you are pretty sure Anushka is better than Timofey because each time he messes up. She suddenly messes up to and seems unable to get going again until he passes her. You quickly realize she is keeping it close but letting him win on purpose, but he doesn''t seem to notice as he is into the game, getting excited as he wins. After playing a couple of times, he exclaims "I WIN!" Anushka just laughs as she gets up and ruffles his hair much to his annoyance. "Yeah you did, you are getting really good at it, but need to go." He suddenly looks crest fallen as she says you are going. "I will come play with your later, ok?"'
+				'He smiles again and nods. "Ok but I won''t take it easy on you."'
+				'She for her part just smiles. "I know you won''t." Then she turns to look at you. "Come on let''s go back to my room."'
+			elseif pcs_gaming <= 40:
+				'You are about as good as Timofey, you think Anushka is better than you both though. You notice each time he makes a mistake and you get in the lead she gets by him too suddenly, not long after she always manages to crash into you, letting Timofey get back ahead of both of you. You quickly realize she is keeping it close but letting him win on purpose, but he doesn''t seem to notice as he is into the game, getting excited as he wins. After playing a couple of times, he exclaims "I WIN!" Anushka just laughs as she gets up and ruffles his hair much to his annoyance. "Yeah you did, you are getting really good at it, but need to go." He suddenly looks crest fallen as she says you are going. "I will come play with your later, ok?"'
+				'He smiles again and nods. "Ok but I won''t take it easy on you."'
+				'She for her part just smiles. "I know you won''t." Then she turns to look at you. "Come on let''s go back to my room."'
+			else
+				'You are better than Timofey and maybe better than Anushka, each time she gets close to you, she always crashes into you. Which allows Timofey to get ahead again of both of you. You quickly realize she is keeping it close but letting him win on purpose, so you then join in and keep it close, but always let him get ahead before the end to win. He doesn''t seem to notice that you and Anushka are letting him win, as he is so into the game, getting excited as he wins. After playing a couple of times, he exclaims "I WIN!" Anushka just laughs as she gets up and ruffles his hair much to his annoyance. "Yeah you did, you are getting really good at it, but need to go." He suddenly looks crest fallen as she says you are going. "I will come play with your later, ok?"'
+				'He smiles again and nods. "Ok but I won''t take it easy on you."'
+				'She for her part just smiles. "I know you won''t." Then she turns to look at you. "Come on let''s go back to my room."'
+			end
+			act 'Go to Anushka''s room': AnushkaLoc = 2 & gt 'anush_bedroom', 'anushroom'
+		end
+	else
+		'The two of you walk down the hall and enter her brothers'' room. They immediately stop doing what they were doing and Maksim visibly gathers up his courage. "What is it? What do you want?" He notices you and starts staring at your breasts.'
+		'"Calm down. I just wanted to see if you guys wanted to play some more?" Anushka replies, pointing to the gaming console in their room.'
+		if maksimQW['nush_games_win'] = 1:
+			'Both of them get excited. "Even when you tried to cheat we won easily, we will again too!"'
+			'Anushka quickly questions him while smiling. "Fine I admit you have won, a few times finally. But keep in mind <<$npc_nickname>> doesn''t own the game so she can''t practice like you two do all the time and you know how it takes time to learn a game."'
+			'Maksim sneers. "Like like excuses from a couple of pussies."'
+			'Anushka rolls her eyes and continues in a teasing tone of voice. "Like you know what a pussy is, now you want to play or not?"'
+			*nl
+			'Maksim looks mad and turns on her. "I do too!"'
+			'Timofey is starting to look upset as his brother and sister start to fight so you speak up. "Can we just play?"'
+			'Anushka nods to that. "Yeah let''s just play and see what happens."'
+			'Maksim still looks angry but nods. "Fine!"'
+		elseif maksimQW['nush_games_win'] = 2:
+			'Both of them get excited. "If you don''t cheat again, we''ll definitely beat you this time!"'
+			'Anushka quickly questions him with a teasing smile. "Like you don''t do the same thing all the time."'
+			'Maksim responds. "Shut up!"'
+			'Then Timofey chimes in, obviously not liking it when his brother and sister fight. "Can we play now?"'
+			'Anushka''s face instantly softens. "Yeah sure we can."'
+		else
+			'Both of them get excited. "Yeah, and this time we will beat you!"'
+			'"You really think you can beat us this time?" Anushka quickly replies while smiling. '
+			'The boys nod at each other. "This time will be different. We''re sure we''ll win!"'
+			'Anushka laughs. "Nah, I don''t think so. Maybe you boys just like getting beat by girls?"'
+			'Maksim looks mad. "Just shut up and play!"' 
+			'Anushka just laughs again and mimics what he said in a manner that taunts him.'
+			act 'Play':
 				*clr & cla
+				gs 'exp_gain', 'gaming', rand(1,3)
 				minut += 15
 				gs 'stat'
 				'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/playgamebro.jpg"></center>'
-				if pcs_gaming <= 20:
-					'It''s not enough however, as all of them are still better players than you. Anushka does what she can again, but the brothers easily manage to win back to back matches. Both brothers jump up and do some weird little victory dance. "Haha, we win and you lose!" Maksim taunts.'
-					'Anushka rolls her eyes at their antics. "Yeah, yeah. You won." She reaches over and ruffles Timofey''s hair, which he tries and fails to dodge. "Good job, kiddo."'
-					'"Pfft, I won it! Timo almost caused us to lose, but I carried his sorry ass!" Maksim says.'
-					'Timofey pulls away from his sister. "Nuh-uh, I almost scored as good you as you did!" It quickly turns into them arguing over who did better.'
-					'Anushka gets up and shakes her head. "Come on, let''s go. They''re not going to stop acting like brats anytime soon." You get up and follow her out.'
-				elseif pcs_gaming <= 40:
-					'The two of you are slightly better than they are, and after some time, you come out on top. Maksim gets mad and throws his controller down. "Fuck!" He then turns on his brother. "It''s your fault we lost! God, you''re so stupid!"'
-					'Timofey shakes his head. "No, you''re stupid and you''re why we lost. You always have to try and be the hero, so Nush tricks you every time."'
-					'Maksim suddenly leaps on top of his brother. "Shut your mouth, you little shit! She doesn''t trick me!" he yells as he starts beating on him. Before you can even react, Anushka grabs Maksim by the back of his collar and yanks him off Timofey. "Leave him alone! He''s right. I baited you out then <<$pcs_nickname>> killed you. It''s not his fault."'
-					'Maksim gets back up and pushes Anushka. "Get out of my room. Get out or I''ll tell Dad you''re picking on us again!"'
-					'Anushka just shakes her head and goes for the door. "Come on <<$pcs_nickname>>, let''s get out of here." Just as you start to leave, Anushka stops and looks back in. "Maksim, you better leave him alone or I''ll come back in here and beat your ass."' 
-					'Maksim rushes across the room and pushes the two of you the rest of the way out before slamming the door closed. Anushka angrily goes back to her room.'
-				else
-					'Before too long, it''s pretty clear you and Anushka have the upper hand. The brothers keep it close, but they fall a little short in both matches.'
-					'Maksim throws down his controller. "Fuck!" He then turns on his brother. "Why are you so bad? We could have beat them if you didn''t suck so much!"'
-					'Timofey tries to defend himself. "It''s not my fault. Nush and <<$pcs_nickname>> are just too good."'
-					'Before Maksim can respond, Anushka cuts him off. "It''s not Timo''s fault, and you know it. When you fall behind, you get too aggressive, and don''t work with Timofey. You just try to win it on your own. Also, you''re just mad because you got beat by a girl... again." she says in a teasing tone, then sticks her tongue out at him.'
-					'Maksim''s eyes flare at Anushka and it looks like he''s about to scream at her again until she interjects. "Calm down, we don''t want Dad in here again." He shuts his mouth and glances at the door, then glares at Anushka.'
-					*nl
-					'"Get out... Get out of our room!" he says as he tries to shove her off the bed.'
-					'Anushka gets up. "Oh my God, you''re such a baby! I don''t even know why I bother playing with you."'
-					'He pushes her towards the door. "You only play with us to bully us! I don''t want to play with you anymore!"'
-					'Anushka sounds exasperated. "Fine then, you little brat! I won''t!" She turns towards you. "Come on, let''s go before this little shit starts to cry."'
-					'"Go suck a cock!" Maksim starts to yell, but catches himself and lowers his voice partway through.'
-					'Timofey runs up to his sister. "You will play with us again, won''t you?" he asks in a somewhat pleading tone.'
-					'Anushka instantly eases up, and her anger seems to melt away. "Some other time, squirt..." she says with a smile and ruffles his hair, much to his annoyance.'
-					'As she closes the door and leaves, you can hear Maksim berating his brother for being a pussy and pleading with their sister to play games with them.'
+				'"Come on guys, let''s just have fun!" you tell them.'
+				'"We''ll win this time!" Maksim says as he looks at the two of you, determined.'
+				'"Let''s play!" Timofey says smiling.'
+				'The four of you play for several minutes. You''ve gotten better since the last time you played. You learned a lot and are able to help out more than you did before.'
+				act 'Finish':
+					*clr & cla
+					minut += 15
+					gs 'stat'
+					'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/playgamebro.jpg"></center>'
+					if pcs_gaming <= 20:
+						'It''s not enough, however, as all of them are still better players than you. Anushka does what she can again, but the brothers easily manage to win back to back matches. Both brothers jump up and do some weird little victory dance. "Haha, see told you girls suck at video games!" Maksim taunts.'
+						'Anushka rolls her eyes at their antics. "Yeah, yeah. You won." She reaches over and ruffles Timofey''s hair, which he tries and fails to dodge. "Good job, kiddo."'
+						'"Pfft, I won it! Timo almost caused us to lose, but I carried his sorry ass!" Maksim says.'
+						'Timofey pulls away from his sister. "Nuh-uh, I almost scored as good you as you did!" It quickly turns into them arguing over who did better.'
+						'Anushka gets up and shakes her head. "Come on, let''s go. They''re not going to stop acting like brats anytime soon." You get up and follow her out.'
+					elseif pcs_gaming <= 40:
+						'The two of you are slightly better than they are, and after some time, you come out on top. Maksim gets mad and throws his controller down. "Fuck!" He then turns on his brother. "It''s your fault we lost! God, you''re so stupid!"'
+						'Timofey shakes his head. "No, you''re stupid and you''re why we lost. You always have to try and be the hero, so Nush tricks you every time."'
+						'Maksim suddenly leaps on top of his brother. "Shut your mouth, you little shit! She doesn''t trick me!" he yells as he starts beating on him. Before you can even react, Anushka grabs Maksim by the back of his collar and yanks him off Timofey. "Leave him alone! He''s right. I baited you out then <<$pcs_nickname>> killed you. It''s not his fault."'
+						'Maksim gets back up and pushes Anushka. "Get out of my room. Get out or I''ll tell Dad you''re picking on us again!"'
+						'Anushka just shakes her head and goes for the door. "Come on <<$pcs_nickname>>, let''s get out of here." Just as you start to leave, Anushka stops and looks back in. "Maksim, you better leave him alone or I''ll come back in here and beat your ass."' 
+						'Maksim rushes across the room and pushes the two of you the rest of the way out before slamming the door closed. Anushka angrily goes back to her room.'
+					else
+						'Before too long, it''s pretty clear you and Anushka have the upper hand. The brothers keep it close, but they fall a little short in both matches.'
+						'Maksim throws down his controller. "Fuck!" He then turns on his brother. "Why are you so bad? We could have beat them if you didn''t suck so much!"'
+						'Timofey tries to defend himself. "It''s not my fault. Nush and <<$pcs_nickname>> are just too good."'
+						'Before Maksim can respond, Anushka cuts him off. "It''s not Timo''s fault, and you know it. When you fall behind, you get too aggressive, and don''t work with Timofey. You just try to win it on your own. Also, you''re just mad because you got beat by a girl... again." she says in a teasing tone.'
+						'Maksim''s eyes flare at Anushka "Get out... Get out of our room!" he says as he tries to shove her off the bed.'
+						*nl
+						'Anushka gets up. "Oh my God, you''re such a baby! I don''t even know why I bother playing with you."'
+						'He pushes her towards the door. "You only play with us to bully us! I don''t want to play with you anymore!"'
+						'Anushka sounds exasperated. "Fine then, you little brat! I won''t!" She turns towards you. "Come on, let''s go before this little shit starts to cry."'
+						'"Go suck a cock!" Maksim starts to yell, but catches himself and lowers his voice partway through.'
+						'Timofey runs up to his sister. "You will play with us again, won''t you?" he asks in a somewhat pleading tone.'
+						'Anushka instantly eases up, and her anger seems to melt away. "Some other time, squirt..." she says with a smile and ruffles his hair, much to his annoyance.'
+						'As she closes the door and leaves, you can hear Maksim berating his brother for being a pussy and pleading with their sister to play games with them.'
+					end
+					act 'Go to Anushka''s room': AnushkaLoc = 2 & gt 'anush_bedroom', 'anushroom'
 				end
-				act 'Go to Anushka''s room': AnushkaLoc = 2 & gt 'anush_bedroom','anushroom'
 			end
 		end
 	end

+ 8 - 9
locations/anushkachat_city.qsrc

@@ -280,7 +280,6 @@ if $ARGS[0] = 'chat':
 			minut += 5
 			'<center><h4><font color="maroon">Anushka''s Room</font></h4></center>'
 			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/anushka/bedroom/bedroomtalk.jpg"></center>'
-!!need code that checks if Sveta is at the Uni, living in the city or still living in pav.
 			if $home['current'] = 'university_dorm':
 				'"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..."'
@@ -364,7 +363,7 @@ if $ARGS[0] = 'chat':
 			if model['status'] = 1:
 				'Knowing she''s a model, you decide to ask her about it. "I was in the city killing time between photo shoots and saw your photo album at Aphrodite... I didn''t know you modeled as well."'
 				'She nods. "Yeah it pays pretty well, so you model too?" You nod yes and soon the two of you are talking about the varies modeling gigs you have done and you have discovered you both work for the same modeling agency.'
-				act 'Do something else':gt 'anush_bedroom','anushroom'
+				act 'Do something else':gt 'anush_bedroom_city','anushroom'
 			else
 				anushkaQW['model_referral'] = 1
 				'Knowing she''s a model, you decide to ask her about it. "I was in the city and saw your photo album at Aphrodite..."'
@@ -373,8 +372,8 @@ if $ARGS[0] = 'chat':
 				'She nods. "Sort of... I mean, if you''re willing to do nude modeling, you can make a lot of money in a short amount of time. Are you interested?" she asks while arching a shapely eyebrow.'
 				'"Nude?" you silently ask yourself. Still, if it pays that much then it might be worth considering. "I don''t know... Maybe... How would I get started? Do I just walk in and tell them I want to be a model or something?"'
 				'She grins at you. "Yeah, pretty much. It helps if you have a portfolio already, but just tell them I sent you. Oh, and make sure you have ID showing you''re old enough."'
-				act 'Stop talking': gt 'anush_bedroom','anushroom'
-				act 'Keep talking': gt 'anushkachat', 'chat'
+				act 'Stop talking': gt 'anush_bedroom_city','anushroom'
+				act 'Keep talking': gt 'anushkachat_city', 'chat'
 				if fakepassport ! 1:
 					act 'Underaged?':
 						*clr & cla
@@ -383,8 +382,8 @@ if $ARGS[0] = 'chat':
 						'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/anushka/bedroom/bedroomtalk.jpg"></center>'
 						'A thought then occurs to you. You''re underaged, and so is Anushka. It''s not legal to model in the nude when you''re under 18. "Wait a second, how did you get past the age check?"'
 						'She laughs. "Sometimes I forget that not everyone has a fake passport. It''s pretty easy to pick one up though." She tells you about a printing shop in the Red Light District that sells fake passports. "Once you have one, you won''t have any problems signing up as a model."'
-						act 'Stop talking': gt 'anush_bedroom','anushroom'
-						act 'Keep talking': gt 'anushkachat', 'chat'
+						act 'Stop talking': gt 'anush_bedroom_city','anushroom'
+						act 'Keep talking': gt 'anushkachat_city', 'chat'
 					end
 				end
 			end
@@ -571,8 +570,8 @@ if $ARGS[0] = 'chat':
 			'She laughs. "It was hot, I loved it, I like it when guys get all forceful and him being a neeerd." She copies your mocking tone for nerd but is grinning. "Just made it extra hot, so yeah I am up for another go. At least for now."'
 			'You arch a brow. "For now?" You ask her.'
 			'She shrugs a bit. "Yeah it''s fun but I think the novelty will wear off eventually... but maybe I should start looking at other nerds, instead of just focusing on bad boys and jocks all the time." You both laugh at that and talking about some of the nerd boys and what you think of them.'
-			act 'Stop talking': gt 'anush_bedroom','anushroom'
-			act 'Keep talking': gt 'anushkachat', 'chat'
+			act 'Stop talking': gt 'anush_bedroom_city','anushroom'
+			act 'Keep talking': gt 'anushkachat_city', 'chat'
 		end
 	end
 end
@@ -630,7 +629,7 @@ if $ARGS[0] = 'boyfriend_chat':
 		act 'Niko':
 			cla
 			'"Niko," you tell her.'
-			'She looks at you, concerned. "<<$pcs_nickname>>, he''s bad news and I don''t mean in the ''fun bad boy'' sort of way. I mean he isn''t what he seems." Noticing your facial expression from bad mouthing your boyfriend, she holds up her hand. "Hey, it''s your life so do what you want. Just... just be careful with him.'
+			'She looks at you, concerned. "<<$pcs_nickname>>, he''s bad news and I don''t mean in the ''fun bad boy'' sort of way. I mean he isn''t what he seems." Noticing your facial expression from bad mouthing your boyfriend, she holds up her hand. "Hey, it''s your life so do what you want. Just... just be careful with him."'
 			act 'Stop talking': gt 'anush_bedroom_city','anushroom'
 			act 'Keep talking': gt 'anushkachat_city', 'chat'
 		end

+ 6 - 13
locations/anushkaev1.qsrc

@@ -1,13 +1,6 @@
 # anushkaev1
 !2021/05/06
 
-! First see if the return location var is set, adjust it so we can concatenate them.
-if $ARGS[1] = 'city':
-	$returnLoc = '_city'
-else
-	$returnLoc = ''
-end
-
 if $ARGS[0] = 'strapon1':
 	*clr & cla
 	menu_off = 1
@@ -942,7 +935,7 @@ if $ARGS[0] = 'domnush_doggy':
 			gs 'stat'
 			act 'Afterglow':
 				*clr & cla
-				minut +10
+				minut += 10
 				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/anushka/bedroom/naked_sleep.jpg"></center>'
 				'You roll off her, pulling the strap-on out of her pussy as you do, and take a second to slip the harness off before laying next to her as she turns over on her back and you hear her give a blissful sigh of contentment. She glances at you with a huge grin and you lay back with a smile, happy that you could bring so much joy to your friend.'
 				'The two of you lay side by side naked for some time, nearly falling asleep in the silence before you both begin to stir and get dressed and cleaned up.'
@@ -986,7 +979,7 @@ if $ARGS[0] = 'domnush_doggy_magic':
 			gs 'stat'
 			act 'Afterglow':
 				*clr & cla
-				minut +10
+				minut += 10
 				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/anushka/bedroom/naked_sleep.jpg"></center>'
 				'You roll off her, pulling your cock out of her pussy as you do, and take a second to slip the harness off, breaking the magic, before laying next to her as she turns over on her back and you hear her give a blissful sigh of contentment. She glances at you with a huge grin and you lay back with a smile, happy that you could bring so much joy to your friend.'
 				'The two of you lay side by side naked for some time, nearly falling asleep in the silence before you both begin to stir and get dressed and cleaned up.'
@@ -1100,7 +1093,7 @@ if $ARGS[0] = 'domnush_fuckass_magic1':
 				gs 'stat'
 				act 'Afterglow':
 					*clr & cla
-					minut +10
+					minut += 10
 					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/anushka/bedroom/naked_sleep.jpg"></center>'
 					'You lean over and give her a kiss on the lips. "That''s a natural state for you isn''t it." You say teasing her.'
 					'She flips you the bird. "Bitch!" she says playfully'
@@ -1246,7 +1239,7 @@ if $ARGS[0] = 'domnush_fuckass_lubed_magic':
 				gs 'stat'
 				act 'Afterglow':
 					*clr & cla
-					minut +10
+					minut += 10
 					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/anushka/bedroom/naked_sleep.jpg"></center>'
 					'You lean over and give her a kiss on the lips. "That''s a natural state for you isn''t it." You say teasing her.'
 					'She flips you the bird. "Bitch!" she says playfully'
@@ -1390,7 +1383,7 @@ if $ARGS[0] = 'domnush_fuckass_nolube_magic':
 						gs 'stat'
 						act 'Afterglow':
 							*clr & cla
-							minut +10
+							minut += 10
 							'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/anushka/bedroom/naked_sleep.jpg"></center>'
 							'You lean over and give her a kiss on the lips, which seems to have mollified her a little. "I''m sorry I got carried away, but you know how I love pounding your cute little ass. Don''t forget you''re my little bitch and your ass belongs to me. We both know I can fuck it when, where, and how I want anytime."'
 							'She flips you the bird. "At least use more fucking lube next time! Fuck, my ass hurts."'
@@ -1442,7 +1435,7 @@ if $ARGS[0] = 'domnush_fuckass_nolube_magic':
 					gs 'stat'
 					act 'Afterglow':
 						*clr & cla
-						minut +10
+						minut += 10
 						'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/anushka/bedroom/naked_sleep.jpg"></center>'
 						'You lean over and give her a kiss on the lips, which seems to have mollified her a little. "I''m sorry I got carried away, but you know how I love pounding your cute little ass. Don''t forget you''re my little bitch and your ass belongs to me. We both know I can fuck it when, where, and how I want anytime."'
 						'She flips you the bird. "At least use more fucking lube next time! Fuck, my ass hurts."'

+ 3 - 2
locations/anushkaev2.qsrc

@@ -156,6 +156,7 @@ if $ARGS[0] = 'rad3some':
 	AnushkaLoc = 2
 	gs 'stat'
 	if hotcat >= 6:
+		radomirQW['had_sex'] += 1
 		if npc_sex['A144'] = 0:npc_sex['A144'] = 1 & girl += 1
 		if npc_sex['A154'] = 0:npc_sex['A154'] = 1 & boy += 1
 		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/anushka/sex/spy/join/walkin1.jpg"></center>'
@@ -454,7 +455,7 @@ if $ARGS[0] = 'watch_nushval':
 			act 'Walk in and join them': gt 'anushkaev2', 'val3some'
 			act 'Keep watching':
 				*clr & cla
-				if rand(1,5) = 1 and maksim_blackmail ! 1:
+				if rand(1,5) = 1 and maksimQW['blackmail'] ! 1:
 					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/anushka/bedroom/caughtspying.jpg"></center>'
 					'As you''re watching, you''re so caught up in the action that you don''t notice your hand slide down to your crotch, nor hear the footsteps heading your way.'
 					'"What are you doing?" You nearly jump out of your skin and blush when you look back and see Maksim, cursing to yourself for being so foolish as to let yourself be caught spying.'
@@ -815,7 +816,7 @@ if $ARGS[0] = 'watch_nushmar':
 			act 'Leave apartment': gt 'pav_complex','start'
 			act 'Keep watching':
 				*clr & cla
-				if rand(1,5) = 1 and maksim_blackmail ! 1:
+				if rand(1,5) = 1 and maksimQW['blackmail'] ! 1:
 					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/anushka/bedroom/caughtspying.jpg"></center>'
 					'As you''re watching, you''re so caught up in the action that you don''t notice your hand slide down to your crotch, nor hear the footsteps heading your way.'
 					'"What are you doing?" You nearly jump out of your skin and blush when you look back and see Maksim, cursing to yourself for being so foolish as to let yourself be caught spying.'

+ 70 - 12
locations/anushkamaksim.qsrc

@@ -1,5 +1,5 @@
 # anushkamaksim
-!2021/03/26
+!2024/04/03
 if $ARGS[0] = 'maksim_blackmail':
 	*clr & cla
 	menu_off = 1
@@ -10,7 +10,8 @@ if $ARGS[0] = 'maksim_blackmail':
 	'He grins at you and looks you over as if he''s giving it some serious thought. "For now, just show me your tits."'
 	act 'Show him your tits':
 		*clr & cla
-		maksim_blackmail = 1
+		maksimQW['blackmail'] += 1
+		maksimQW['blackmail_flash'] += 1
 		gs 'fame', 'pav', 'sex', 1
 		inhib_exp += rand(1,3)
 		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/hallflashtits.jpg"></center>'
@@ -20,18 +21,17 @@ if $ARGS[0] = 'maksim_blackmail':
 		gs 'arousal', 'flashlite', 5, 'humiliation', 'sub'
 		gs 'arousal', 'end'
 		gs 'stat'
-
 		act 'Follow him':
 			*clr & cla
 			minut += 5
 			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/maksim/downstairs.jpg"></center>'
 			'You follow him as he leads you down the stairs and outside to the playground. Once there, he walks over to a few boys around his age and stops. The boys check you out. "Who''s that?" one of them asks.'
-			'He has his back to your as he responds. You can only imagine the smug look on his face. "She does things for me."'
+			'He has his back to you as he responds. You can only imagine the smug look on his face. "She does things for me."'
 			'One of the boys snorts a laugh. "Sure she does."'
 			'He turns towards you. "Go buy me a pack of smokes."'
 			'"What?!"'
-			'"I said go buy me a pack of cigarettes." He gives you a stern look, but it just shows how young he is and isn''t not intimidating at all.'
-			'You sigh. This is only going to get worse. You''ll have to figure a way out of this, but for now you can only play along. You turn and start walking to the nearby kiosk.'
+			'"I said go buy me a pack of cigarettes." He gives you a stern look, but it just shows how young he is and is not intimidating at all.'
+			'You sigh. This is only going to get worse. You''ll have to figure a way out of this, but for now, you can only play along. You turn and start walking to the nearby kiosk.'
 			'As you walk away, you hear the boys talking, surprised that you''re doing what Maksim says as he acts smug.'
 			if money >= 150:
 				act 'Buy him cigarettes':
@@ -49,7 +49,7 @@ if $ARGS[0] = 'maksim_blackmail':
 						'They all start muttering, seemingly surprised you actually did it.'
 						*nl
 						'Maksim takes the pack of cigarettes and passes them out to his friends. They all light up and a few of them cough, but it seems most of them have smoked before. After a few minutes, you''re about to leave when one of them starts talking to Maksim. "Having her buy you cigarettes is one thing..." You see the rest all nodding in agreement.'
-						'Maksim smirks at them. "Oh I see how it is. You have no faith in me! Okay then, let me prove it." He turns towards you. "Show me your tits."'
+						'Maksim smirks at them. "Oh, I see how it is. You have no faith in me! Okay then, let me prove it." He turns towards you. "Show me your tits."'
 						'You give him a look of surprise and don''t move, but his stern glare tells you what will happen if you don''t.'
 
 						act 'Flash them your tits':
@@ -57,6 +57,7 @@ if $ARGS[0] = 'maksim_blackmail':
 							minut += 5
 							gs 'fame', 'pav', 'sex', 2
 							inhib_exp += rand(1,3)
+							maksimQW['blackmail_flash_friends'] += 1
 							'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/maksim/flashtits1.jpg"></center>'
 							'You sigh as you pull aside your clothes and flash your breasts at them.'
 							'"Holy shit! She really did it!" They all look surprised, but Maksim just looks smug.'
@@ -66,7 +67,7 @@ if $ARGS[0] = 'maksim_blackmail':
 							'"I''m still breaking her in and it will be when I say." He gives his friends a look to show that he''s in charge here. "Now pay up!"'
 							'The boys start handing over money, way more than the cigarettes would cost. He must have bet them that you would show your breasts. You sigh again and can''t believe you''re more or less being pimped out by a young boy. They all stare at your breasts for a few more minutes before Maksim looks at you. "Okay, you can go. We''ll talk later." He tries to make it sound like he''s in charge and sexy at the same time. He failed, but his friends seem to have bought it.' 
 							'You can''t help but roll your eyes as you rearrange your clothes back in place and walk away.'
-							act 'Leave': gt 'pav_complex','start'
+							act 'Leave': gt 'pav_complex', 'start'
 						end
 					end
 				end
@@ -87,10 +88,11 @@ if $ARGS[0] = 'maksim_blackmail':
 						'They all start muttering, seemingly surprised you actually did it.'
 						*nl
 						'Maksim takes the pack of cigarettes and passes them out to his friends. They all light up and a few of them cough, but it seems most of them have smoked before. After a few minutes, you''re about to leave when one of them starts talking to Maksim. "Having her buy you cigarettes is one thing..." You see the rest all nodding in agreement.'
-						'Maksim smirks at them. "Oh I see how it is. You have no faith in me! Okay then, let me prove it." He turns towards you. "Show me your tits."'
+						'Maksim smirks at them. "Oh, I see how it is. You have no faith in me! Okay then, let me prove it." He turns towards you. "Show me your tits."'
 						'You give him a look of surprise and don''t move, but his stern glare tells you what will happen if you don''t.'
 
 						act 'Flash them your tits':
+							maksimQW['blackmail_flash_friends'] += 1
 							*clr & cla
 							minut += 5
 							gs 'fame', 'pav', 'sex', 2
@@ -104,7 +106,7 @@ if $ARGS[0] = 'maksim_blackmail':
 							'"I''m still breaking her in and it will be when I say." He gives his friends a look to show that he''s in charge here. "Now pay up!"'
 							'The boys start handing over money, way more than the cigarettes would cost. He must have bet them that you would show your breasts. You sigh again and can''t believe you''re more or less being pimped out by a young boy. They all stare at your breasts for a few more minutes before Maksim looks at you. "Okay, you can go. We''ll talk later." He tries to make it sound like he''s in charge and sexy at the same time. He failed, but his friends seem to have bought it.' 
 							'You can''t help but roll your eyes as you rearrange your clothes back in place and walk away.'
-							act 'Leave': gt 'pav_complex','start'
+							act 'Leave': gt 'pav_complex', 'start'
 						end
 					end
 				end
@@ -121,16 +123,72 @@ if $ARGS[0] = 'maksim_blackmail':
 			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/maksim.jpg"></center>'
 			'"Fuck off, you little shit!" you snarl and he blinks in surprise, eliciting a smirk from you. He obviously expected you to agree without question.'
 			'Anger washes over him. "Fine bitch! I''ll just go and show her!"'
-			'You smirk at him. "Go right head, I''m sure your sister won''t mind that you were trying to blackmail one of her friends. Who do you think she''ll be more pissed at?"'
+			'You smirk at him. "Go right ahead, I''m sure your sister won''t mind that you were trying to blackmail one of her friends. Who do you think she''ll be more pissed at?"'
 			'He sneers at you and pauses before angrily walking away.'
 
-			act 'Leave': gt 'pav_complex','start'
+			act 'Leave': gt 'pav_complex', 'start'
 		end
 	else
 		act 'Tell him to fuck off (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
 	end
 end
 
+if $ARGS[0] = 'hallway_flash_tits':
+	*clr & cla
+	menu_off = 1
+	AnushkaLoc = 2
+	maksimQW['blackmail_flash'] += 1
+	gs 'fame', 'pav', 'sex', 1
+	inhib_exp += rand(1,3)
+	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/hallflashtits.jpg"></center>'
+	'You sigh as you pull your clothes aside and show him your bare breasts. His grin widens as he stares at you. A few moments pass and you''re about to say something when he reaches out with his hand.' 
+	'You quickly pull your shirt back down. "You said show you."'
+	'"Fine," he sneers before stepping out of your way. "Go on then."'
+	gs 'arousal', 'flashlite', 1, 'humiliation', 'sub'
+	gs 'arousal', 'end'
+	gs 'stat'
+	act 'Enter': gt 'anushapt', 'hallway'
+end
+
+if $ARGS[0] = 'hallway_flash_pussy':
+	*clr & cla
+	menu_off = 1
+	AnushkaLoc = 2
+	maksimQW['blackmail_flash'] += 1
+	gs 'fame', 'pav', 'sex', 1
+	inhib_exp += rand(1,3)
+	if PCLoSkirt > 0:
+		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/maksim_blackmail/flash_pussy_dress.jpg"></center>'
+		'You sigh as you lift your skirt to show him your naked pussy. His grin widens as he stares at you. A few moments pass and you''re about to say something when he reaches out with his hand.' 
+		'You quickly pull your skirt back down. "You said show you."'
+		'"Fine," he sneers before stepping out of your way. "Go on then."'
+	else
+		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/maksim_blackmail/flash_pussy_pants.jpg"></center>'
+		'You sigh as you pull your pants down to show off your naked pussy to him. His grin widens as he stares at you. A few moments pass and you''re about to say something when he reaches out with his hand.' 
+		'You quickly pull your pants back up. "You said show you."'
+		'"Fine," he sneers before stepping out of your way. "Go on then."'
+	end
+	gs 'arousal', 'flashlite', 1, 'humiliation', 'sub'
+	gs 'arousal', 'end'
+	gs 'stat'
+	act 'Enter': gt 'anushapt', 'hallway'
+end
 
+if $ARGS[0] = 'maksim_room_naked':
+	*clr & cla
+	menu_off = 1
+	AnushkaLoc = 2
+	maksimQW['blackmail_flash'] += 1
+	gs 'fame', 'pav', 'sex', 1
+	inhib_exp += rand(1,3)
+	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/anushapt/maksim_blackmail/strip_naked.jpg"></center>'
+	'You follow him to his room and just as he said Timofey is not there. Maksim sits on his bed looking at you with a huge grin. "Well go on, strip. Slow and sexy."' 
+	'You sigh loudly but then do as he says. You slowly start stripping out of your clothes, while he leers at you. Once you are finally naked, you stand there for a minute or two. "Ok you seen enough."'
+	'"Fine," he sneers. "You can go then." You quickly get dressed and once you are you leave his room.'
+	gs 'arousal', 'flash', 5, 'humiliation', 'sub'
+	gs 'arousal', 'end'
+	gs 'stat'
+	act 'Go back to the hall': gt 'anushapt', 'hallway'
+end
 
 --- anushkamaksim ---------------------------------

+ 10 - 32
locations/arousal.qsrc

@@ -114,8 +114,7 @@ if $ARGS[0] ! 'end' and $ARGS[0] ! 'checks' and $ARGS[0] ! 'count' and $ARGS[0]
 	grange = dyneval('result=strpos(''skinny   slimx     well pr   thicker   thickx    massive   monstrous'',$ARGS[0])',mid($temp_dick_girth+'x',1,6))/2
 
 	!! first let us determine how slippery are pc''s holes
-	if anal_slip < max(1, 8 + pain['asshole']/2 - pcs_ass) _ 
-	and mid($ARGS[0],1,4) = 'anal' and arrpos('$ARGS', 'anal_finger') < 0:
+	if anal_slip < max(1, 8 + pain['asshole']/2 - pcs_ass) and mid($ARGS[0],1,4) = 'anal' and arrpos('$ARGS', 'anal_finger') < 0:
 		!! cum
 		if cumloc[3] > 0: anal_slip += rand(cumvol[3]/15, cumvol[3]/10)
 		!! spit
@@ -127,14 +126,7 @@ if $ARGS[0] ! 'end' and $ARGS[0] ! 'checks' and $ARGS[0] ! 'count' and $ARGS[0]
 				anal_slip += 8
 				ar_anal_lube = 1
 			!! PC lube
-			elseif auto_anal_lube = 1 _ 
-			and arrpos('$ARGS', 'rape') < 0 _ 
-			and arrpos('$ARGS', 'gangbang') < 0 _ 
-			and arrpos('$ARGS', 'rough') < 0 _ 
-			and arrpos('$ARGS', 'beast') < 0 _ 
-			and arrpos('$ARGS', 'BDSM') < 0 _ 
-			and arrpos('$ARGS', 'bound') < 0 _ 
-			and arrpos('$ARGS', 'humiliation') < 0:
+			elseif auto_anal_lube = 1 and arrpos('$ARGS', 'rape') < 0 and arrpos('$ARGS', 'gangbang') < 0 and arrpos('$ARGS', 'rough') < 0 and arrpos('$ARGS', 'beast') < 0 and arrpos('$ARGS', 'BDSM') < 0 and arrpos('$ARGS', 'bound') < 0  and arrpos('$ARGS', 'humiliation') < 0:
 				gs 'arousal', 'auto_lube', 'anal'
 			end
 		end
@@ -145,8 +137,7 @@ if $ARGS[0] ! 'end' and $ARGS[0] ! 'checks' and $ARGS[0] ! 'count' and $ARGS[0]
 		end
 	end
 
-	if vaginal_slip < max(1, 8 + pain['vaginal']/2 - pcs_vag) _ 
-	and mid($ARGS[0],1,4) = 'vagi' and arrpos('$ARGS', 'vaginal_finger') < 0:
+	if vaginal_slip < max(1, 8 + pain['vaginal']/2 - pcs_vag) and mid($ARGS[0],1,4) = 'vagi' and arrpos('$ARGS', 'vaginal_finger') < 0:
 		!! horny
 		if vaginal_slip < pcs_horny / 10: vaginal_slip = pcs_horny / 10
 		!! cum
@@ -160,14 +151,7 @@ if $ARGS[0] ! 'end' and $ARGS[0] ! 'checks' and $ARGS[0] ! 'count' and $ARGS[0]
 				vaginal_slip += 8
 				ar_vag_lube = 1
 			!! PC lube
-			elseif auto_vag_lube = 1 _ 
-			and arrpos('$ARGS', 'rape') < 0 _ 
-			and arrpos('$ARGS', 'gangbang') < 0 _ 
-			and arrpos('$ARGS', 'rough') < 0 _ 
-			and arrpos('$ARGS', 'beast') < 0 _ 
-			and arrpos('$ARGS', 'BDSM') < 0 _ 
-			and arrpos('$ARGS', 'bound') < 0 _ 
-			and arrpos('$ARGS', 'humiliation') < 0:
+			elseif auto_vag_lube = 1 and arrpos('$ARGS', 'rape') < 0 and arrpos('$ARGS', 'gangbang') < 0	and arrpos('$ARGS', 'rough') < 0  and arrpos('$ARGS', 'beast') < 0 and arrpos('$ARGS', 'BDSM') < 0 and arrpos('$ARGS', 'bound') < 0  and arrpos('$ARGS', 'humiliation') < 0:
 				gs 'arousal', 'auto_lube', 'vag'
 			end
 		end
@@ -319,10 +303,7 @@ if $ARGS[0] ! 'end' and $ARGS[0] ! 'checks' and $ARGS[0] ! 'count' and $ARGS[0]
 			if pain_coeff > 0:gs 'pain', rand(pain_coeff), 'mouth', 'stretch'
 			if pcs_lipbalm > 0:
 				pcs_lipbalm = max(0, pcs_lipbalm - 1*max(1,stim_time/5))
-				if arrpos('$ARGS', 'rape') >= 0 _ 
-				or arrpos('$ARGS', 'rough') >= 0 _ 
-				or arrpos('$ARGS', 'gangbang') >= 0 _ 
-				or arrpos('$ARGS', 'beast') >= 0:
+				if arrpos('$ARGS', 'rape') >= 0 or arrpos('$ARGS', 'rough') >= 0  or arrpos('$ARGS', 'gangbang') >= 0 or arrpos('$ARGS', 'beast') >= 0:
 					pcs_lipbalm = max(0, pcs_lipbalm - 1*max(1,stim_time/5))
 				end
 			end
@@ -738,10 +719,8 @@ if $ARGS[0] ! 'end' and $ARGS[0] ! 'checks' and $ARGS[0] ! 'count' and $ARGS[0]
 		if arrpos('$ARGS', 'maso') >= 0:          pcs_hairbsh = iif(rand(30, pcs_hairlng)>125,rand(-1,0),pcs_hairbsh)
 		if arrpos('$ARGS', 'prostitution') >= 0:  pcs_hairbsh = iif(rand(30, pcs_hairlng)>150,rand(-1,0),pcs_hairbsh)
 		if arrpos('$ARGS', 'unknown') >= 0:       pcs_hairbsh = iif(rand(30, pcs_hairlng)>200,rand(-1,pcs_hairbsh),pcs_hairbsh)
-		if arrpos('$ARGS', 'anal') >= 0 _ 
-		or arrpos('$ARGS', 'anal_strap') >= 0:    pcs_hairbsh = iif(rand(30, pcs_hairlng)>220,rand(-1,pcs_hairbsh),pcs_hairbsh)
-		if arrpos('$ARGS', 'vaginal') >= 0 _ 
-		or arrpos('$ARGS', 'vaginal_strap') >= 0: pcs_hairbsh = iif(rand(30, pcs_hairlng)>240,rand(-1,pcs_hairbsh),pcs_hairbsh)
+		if arrpos('$ARGS', 'anal') >= 0 or arrpos('$ARGS', 'anal_strap') >= 0: pcs_hairbsh = iif(rand(30, pcs_hairlng)>220,rand(-1,pcs_hairbsh),pcs_hairbsh)
+		if arrpos('$ARGS', 'vaginal') >= 0 or arrpos('$ARGS', 'vaginal_strap') >= 0: pcs_hairbsh = iif(rand(30, pcs_hairlng)>240,rand(-1,pcs_hairbsh),pcs_hairbsh)
 		if pcs_hairbsh > 0:
 			if arrpos('$ARGS', 'bound') >= 0:     pcs_hairbsh = iif(rand(30, pcs_hairlng)>270,rand(0,pcs_hairbsh),pcs_hairbsh)
 			if arrpos('$ARGS', 'sub') >= 0:       pcs_hairbsh = iif(rand(30, pcs_hairlng)>300,rand(0,pcs_hairbsh),pcs_hairbsh)
@@ -764,8 +743,7 @@ if $ARGS[0] ! 'end' and $ARGS[0] ! 'checks' and $ARGS[0] ! 'count' and $ARGS[0]
 			end
 		end
 		if pcs_makeup > 1:
-			if (arrpos('$ARGS', 'bj') >= 0 _ 
-			or arrpos('$ARGS', 'cuni_give') >= 0):        pcs_makeup = iif(rand(pcs_makeup, pcs_makupskl/10)<3,rand(0,1),pcs_makeup)
+			if (arrpos('$ARGS', 'bj') >= 0 or arrpos('$ARGS', 'cuni_give') >= 0):  pcs_makeup = iif(rand(pcs_makeup, pcs_makupskl/10)<3,rand(0,1),pcs_makeup)
 		end
 	end
 	
@@ -1056,8 +1034,8 @@ end
 !!-----------------------------------------------
 
 !!workaround over use
-if $ARGS[0] ! 'auto_lube' and $ARGS[0] ! 'checks' and $ARGS[0] ! 'count' and $ARGS[0] ! 'count2':
-	if arousal_overcall = 0:
+if arousal_overcall = 0:
+	if $ARGS[0] ! 'auto_lube' and $ARGS[0] ! 'checks' and $ARGS[0] ! 'count' and $ARGS[0] ! 'count2':
 		$arousal_overcall = $ARGS[0]+$ARGS[2]+$ARGS[3]+$ARGS[4]+$ARGS[5]+$ARGS[6]+$ARGS[7]+$ARGS[8]
 		arousal_overcall = 1
 	end

+ 1 - 1
locations/artem_chebotarev_schedule.qsrc

@@ -2,7 +2,7 @@
 !!2023/05/02
 
 
-$locat['A2'] = 0
+$locat['A2'] = ''
 
 if yearstart = 1:
 	!! Schedule for school year not yet done

+ 5 - 5
locations/artem_dorm.qsrc

@@ -45,7 +45,7 @@ if $ARGS[0] = 'start':
 	gs 'artem_chebotarev_schedule'
 	gs 'stat'
 	'<center><b><font color="maroon">Artem''s Dorm Room</font></b></center>'
-	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/girl/katja/uni/dorm/artemroom/artem_dorm_room.jpg"></center>'
+	'<center><img <<$set_imgh>> src="images/locations/city/island/university/dorm/artemroom/artem_dorm_room.jpg"></center>'
 	'The dorm room has two beds. The one on the left belongs to Artem''s roommate while the one on the right is Artem''s.' 
 	if $locat['A2'] = 'dormroom_ studying_or _relaxing':
 		'Above his bed is a small <a href="exec:gt ''artem_dorm'',''bookshelf''">bookshelf</a> full of books, and the wall is plastered with sci-fi, fantasy, anime and super hero posters. At the foot of his bed is a small desk with a <a href="exec:gt ''artem_dorm'',''computer''">laptop</a> on it. Artem is sitting on a couch facing a TV sitting against the wall.'
@@ -68,7 +68,7 @@ if $ARGS[0] = 'bookshelf':
 	*clr & cla
 	minut += 2
 	gs 'stat'
-	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/artem_dorm/artemroom/bookshelf.jpg"></center>'
+	'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/artemhome/artemroom/bookshelf.jpg"></center>'
 	'The small bookshelf has a lot of fantasy and science fiction books, a few gaming books and a lot of various nerdy nicknacks from popular fantasy, anime, and science fiction movies and TV shows. Maybe he wouldn''t mind if you borrowed a book?'
 	if artem_borrowed_book ! 1:
 		act 'Ask to borrow a book':
@@ -79,7 +79,7 @@ if $ARGS[0] = 'bookshelf':
 			artembook = 5
 !!need code to add a book for Sveta to read other than the ones she can buy.			
 			gs 'stat'
-			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/artem_dorm/artemroom/bookshelf.jpg"></center>'
+			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/artemhome/artemroom/bookshelf.jpg"></center>'
 			'You look through the books until you find one you like. "Do you mind if I borrow this to read?"'
 			'He looks a little surprised as he walks over. "Oh sure yeah, you can borrow it," he answers a little excitedly.'
 			'You take the book and put it in your purse. "Thanks. I''ll get it back to you as soon as I finish it."'
@@ -94,7 +94,7 @@ if $ARGS[0] = 'bookshelf':
 			artem_borrowed_book = 0
 			artembook = 0
 			gs 'stat'
-			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/artem_dorm/artemroom/bookshelf.jpg"></center>'
+			'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/artemhome/artemroom/bookshelf.jpg"></center>'
 			'"I brought your book back," you tell him as you take it out of your purse and put it back in place on the shelf, right where you got it from.'
 			'"Did you like it?" he asks.'
 			act 'I did':
@@ -129,7 +129,7 @@ if $ARGS[0] = 'computer':
 		ArtemCompUse = 1
 		*clr & cla
 		'<center><h4><font color="maroon">Artem''s Dorm Room</font></h4></center>'
-		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/artem_dorm/start/laptop.jpg"></center>'
+		'<center><img <<$set_imgh>> src="images/locations/pavlovsk/resident/apartment/artemhome/artemroom/laptop.jpg"></center>'
 		'You point towards his laptop. "You''re so lucky to have your own computer."'
 		'"I saved up my allowance for years before I could afford it," he replies.'
 		'"Mind if I use it? I want to check my emails and stuff," you ask.'

+ 31 - 31
locations/artem_nush_sex.qsrc

@@ -17,7 +17,7 @@ if $ARGS[0] = 'anushka_3some1':
 		*nl
 		'She''s speechless; the shock of just how different he''s acting seems to be too much for her to process. When she doesn''t reply, he confidently walks over, leans forward and runs his hand up her skirt. You see her stiffen and gasp slightly when his hand disappears up her skirt. "Just what I suspected," he grins. "You''re soaking wet already." When he pulls his hand out of her skirt, he pulls her panties off and tosses them aside. Even you''re a little surprised by how dominant he''s being, but you figure this is good for him.'
 		'You watch as he grabs her skirt and unbuttons it before yanking it off. He then pulls off her shirt and then her bra. She never once complains or acts like she''s not into it. In fact, she mostly bites her lower lip and occasionally giggles. He then forces her to kneel on the floor, completely exposed and naked in front of him as he starts to unbutton his pants. "Open your mouth," he orders.'
-		act 'Watch': gt 'artem_nush_sex', 'anushka_3some11_dom_bj'
+		act 'Watch': gt 'artem_nush_sex', 'anushka_3some1_dom_bj'
 	elseif artemQW['rough_anal_nush'] = 2:
 		'As he turns around, he nods and gives her a confident smile. "I knew you''d be back. When I''m done with you, you''ll know your ass was completely owned by a nerd. That a nerd made you his bitch and fucked you for his pleasure."'
 		'She looks up at him and bites her lower lip. "I... Almost believe you..."'
@@ -802,7 +802,7 @@ if $ARGS[0] = 'artem_nush_disco_walk':
 	menu_off = 1
 	*clr & cla
 	minut += 10
-	'<center><img <<$set_imgh>> src="'+'images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/anushka/walking.jpg"></center>'
+	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/walking.jpg"></center>'
 	'Artem leads you down the side streets and into the alleyway that runs behind the apartment courtyard where all the garages are located. You and Artem hold hands and Anushka walks on the other side of him as the three of you talk about a variety of subjects, mostly about your classmates and teachers. Artem then talks about the D&D game, but quickly drops it when Anushka seems like she''s getting bored.'
 	'She changes the subject by asking you what you thought of some of the boys at the disco tonight, but is interrupted by a smacking sound as she jumps. "What the fuck, dude?" she asks.'
 	*nl
@@ -811,7 +811,7 @@ if $ARGS[0] = 'artem_nush_disco_walk':
 	'Artem barks a laugh. "Doubtful. I''m a great boyfriend. I''m kind, caring, romantic, good in bed and when my girl needs to be dominated, then I can do that too. What more could she want?"'
 	act 'Just let them banter':
 		*clr & cla
-		'<center><img <<$set_imgh>> src="'+'images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/anushka/walking.jpg"></center>'
+		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/walking.jpg"></center>'
 		'Anushka snorts. "Maybe she wants to try a real bad boy for a change..."'
 		'Artem responds by smacking her on the ass again. "Maybe, but I''m not worried."'
 		'Anushka scowls a little. "What was that for?"'
@@ -828,18 +828,18 @@ if $ARGS[0] = 'artem_nush':
 	menu_off = 1
 	*clr & cla
 	minut += 5
-	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/anushka/walk1.jpg"></center>'
+	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/anushka/walk1.jpg"></center>'
 	'Anushka sits and leaves room for you between her and Artem, but you motion for her to scoot over next to Artem and you sit next to her, sandwiching her between the two of you. Artem gives you a questioning look, but you just smile and nod at him.'
 	'He grins and leans back in a half reclining position as you engage Anushka in a conversation about her latest sexual partner. You can see the bulge growing in his pants, and Anushka soon does as well. "Guess someone likes my story, huh?" she asks in a bemused tone.'
 	act 'Tell her to peek':
 		*clr & cla
-		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/anushka/walk2.jpg"></center>'
+		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/anushka/walk2.jpg"></center>'
 		'You lean against her, pushing her closer to Artem. "I think someone wants to say hi. Why don''t you take a peek?"'
 		'She looks back at you with a questioning look, but starts to unbutton and unzip his pants to peek inside. "It''s too dark to see anything. Pull his dick out so we can see it," you tell her.'
 		act 'Tell her to take it out':
 			*clr & cla
 			gs 'boyStat', 'A2'
-			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/anushka/walk_bj1.jpg"></center>'
+			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/anushka/walk_bj1.jpg"></center>'
 			'She reaches into his underwear and pulls out his <<dick>>cm <<$dick_girth>> dick. Once it''s free, he reaches over and pulls her head down into his lap. "You made it hard, so now you got to suck it," you say with a smirk.'
 			'She starts stroking his dick with one hand before taking it into her mouth and sucking on it as Artem moans in pleasure.'
 			gs 'arousal', 'voyeur_sex', 2
@@ -848,14 +848,14 @@ if $ARGS[0] = 'artem_nush':
 			act 'Push her head down':
 				*clr & cla
 				anushkaQW['dom_nush'] += 1
-				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/anushka/walk_bj2.jpg"></center>'
+				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/anushka/walk_bj2.jpg"></center>'
 				'As Anushka continues sucking Artem''s cock, you reach over and push her head down to force her to take more of it into her mouth.'
 				'"Oh yeah babe! Just like that..." Artem moans as he looks at you.'
 				gs 'arousal', 'voyeur_sex', 2, 'dom'
 				gs 'stat'
 				act 'Grab her hair':
 					*clr & cla
-					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/anushka/walk_bj3.jpg"></center>'
+					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/anushka/walk_bj3.jpg"></center>'
 					'You grab hold of Anushka''s hair and push her head down until you hear her gagging on his cock.'
 					'"Just think if some of the other gopniks walked by and seen you sucking my nerd dick. What would they think?" Artem says to her between moans as you make her deepthroat his cock.'
 					'After a few minutes of this, Artem looks you dead in the eye. "Help me take her jeans off so I can fuck this slut."'
@@ -866,14 +866,14 @@ if $ARGS[0] = 'artem_nush':
 			end
 			act 'Let her suck his dick':
 				*clr & cla
-				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/anushka/walk_bj2.jpg"></center>'
+				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/anushka/walk_bj2.jpg"></center>'
 				'As Anushka sucks Artem''s cock, you lean over and partially lay on her back so you can peek around and watch as most of his dick disappears into her mouth with each downward bob of her head.'
 				'"Yeah bitch... Just like that... Suck my dick!" Artem groans between moans of pleasure.'
 				gs 'arousal', 'voyeur_sex', 2, 'dom'
 				gs 'stat'
 				act 'Grab her hair':
 					*clr & cla
-					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/anushka/walk_bj3.jpg"></center>'
+					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/anushka/walk_bj3.jpg"></center>'
 					'You grab ahold of Anushka''s hair to pull it up out of the way so it is easier to watch her suck Artem''s dick. "Just think if some of the other gopniks walked by and seen you sucking my nerd dick. What would they think?" Artem says with a smirk.' 
 					'After a few minutes of this, Artem looks you dead in the eye. "Help me take her jeans off so I can fuck this slut."'
 					gs 'arousal', 'voyeur_sex', 2, 'dom'
@@ -888,27 +888,27 @@ end
 if $ARGS[0] = 'artem_nush_strip':
 	menu_off = 1
 	*clr & cla
-	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/anushka/walk_strip1.jpg"></center>'
+	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/anushka/walk_strip1.jpg"></center>'
 	'You pull her head up and both you and Artem start unbuttoning her jeans. Once you have them off, Artem tosses them aside as Anushka continues jerking him off. He then starts to tug at her panties.'
 	gs 'arousal', 'voyeur', 1
 	gs 'stat'
 	act 'Watch Artem take off her panties':
 		*clr & cla
-		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/anushka/walk_strip2.jpg"></center>'
+		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/anushka/walk_strip2.jpg"></center>'
 		'Artem roughly pulls her panties off and tosses them down by her jeans before he stands up and starts pulling down his pants and underwear. "Roll the dirty slut over on all fours so I can fuck her."'
 		gs 'arousal', 'voyeur', 1
 		gs 'stat'
 		act 'Help her onto all fours':
 			*clr & cla
 			gs 'boyStat', 'A2'
-			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/anushka/walk_vaginal1.jpg"></center>'
+			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/anushka/walk_vaginal1.jpg"></center>'
 			'You help Anushka get up on all fours so her ass is facing Artem. Once she''s in place, Artem kneels down behind her. "Damn, you''re soaking wet! Look babe, her juices are already running down her thigh!"'
 			'He moves forward and she suddenly moans loudly as he shoves his <<dick>>cm <<$dick_girth>> cock inside her pussy and starts fucking her as you lean in and start kissing her.'
 			gs 'arousal', 'kiss', 2
 			gs 'stat'
 			act 'Spread her ass cheeks':
 				*clr & cla
-				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/anushka/walk_vaginal2.jpg"></center>'
+				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/anushka/walk_vaginal2.jpg"></center>'
 				'After you break the kiss with her, you reach back and spread her ass cheeks as wide as you can while looking up at Artem. He grins as he gets the hint.'
 				'"Look at that little asshole, just begging to be used by nerd dick!" he says before he spits on her ass and uses a finger to rub it into her asshole.'
 				gs 'arousal', 'voyeur_sex', 2
@@ -917,7 +917,7 @@ if $ARGS[0] = 'artem_nush_strip':
 					*clr & cla
 					artemQW['artem_dom'] += 1
 					gs 'boyStat', 'A2'
-					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/anushka/walk_anal1.jpg"></center>'
+					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/anushka/walk_anal1.jpg"></center>'
 					'After spending a few more minutes fucking her pussy, he pulls his hips back. "Tell me you want this nerd dick in your ass."'
 					'"Yes... I want you to fuck my ass with your big nerd dick," she says, sounding rather desperate, yet also aroused.'
 					'You hold her ass cheeks wide for him as he lines his dick up with her asshole. "Oh fuck!" she mutters as he forces his cock up her ass.'
@@ -929,7 +929,7 @@ if $ARGS[0] = 'artem_nush_strip':
 					gs 'stat'
 					act 'Keep holding her':
 						*clr & cla
-						'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/anushka/walk_anal2.jpg"></center>'
+						'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/anushka/walk_anal2.jpg"></center>'
 						'Now that she''s unable to move, Artem shoves his hips forward again, causing her to moan loudly. As he starts really hammering her ass, she starts crying out and shaking as she has a massive orgasm, so much so you have to help hold her up as Artem starts grunting louder himself.'
 						gs 'arousal', 'voyeur_sex', 2
 						gs 'arousal', 'end'
@@ -937,7 +937,7 @@ if $ARGS[0] = 'artem_nush_strip':
 						act 'Watch him cum':
 							*clr & cla
 							minut += 5
-							'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/anushka/walk_facial.jpg"></center>'
+							'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/anushka/walk_facial.jpg"></center>'
 							'Artem suddenly pulls out of Anushka and stands up. "Turn her around to face me." You help her quickly turn around, her body still shaking from her orgasm. "Jerk me off and let me cum over your face, slut!" he orders.' 
 							'She takes hold of his dick and starts jerking him off. Almost at once, he starts cumming over her face. She milks his cock until every last drop of it has been squeezed out of it. They both sigh and sit back against the garage once he''s finished.'
 							*nl
@@ -972,18 +972,18 @@ if $ARGS[0] = 'artem_sveta':
 	menu_off = 1
 	*clr & cla
 	minut += 5
-	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/sveta/walk1.jpg"></center>'
+	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/sveta/walk1.jpg"></center>'
 	'Artem and Anushka take a seat, with Anushka leaving room for you to sit between her and Artem. You sit between them and lean against Artem as the three of you talk a bit more.'
 	'Artem leans back in a half reclining position and you can see his bulge growing in his pants. After a while, Anushka notices as well. "Looks like someone is getting a little worked up, huh?" she asks is a bemused tone.'
 	'Artem smiles at you. "Sorry babe, but I can''t help it. You''re just so beautiful."'
 	act 'Take a peek':
 		*clr & cla
-		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/sveta/walk2.jpg"></center>'
+		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/sveta/walk2.jpg"></center>'
 		'You unbutton his pants, but it''s too dark to see anything as you hear Anushka''s voice in your ear. It seems she''s leaned over to try and take a look too. "Go on. Pull it out."'
 		act 'Pull his dick out':
 			*clr & cla
 			gs 'boyStat', 'A2'
-			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/sveta/walk_bj1.jpg"></center>'
+			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/sveta/walk_bj1.jpg"></center>'
 			'You pull his dick out and he looks at you with pleading eyes. "Please suck it, babe."'
 			'You lean forward and take his dick into your mouth and start sucking it while stroking his shaft. "Damn <<$pcs_nickname>>, you''re getting good at that!" Anushka says.'
 			'You''re unable to answer, so Artem replies for you. "She''s the best!"'
@@ -993,14 +993,14 @@ if $ARGS[0] = 'artem_sveta':
 			act 'Deepthroat':
 				*clr & cla
 				gs 'boyStat', 'A2'
-				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/sveta/walk_bj2.jpg"></center>'
+				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/sveta/walk_bj2.jpg"></center>'
 				'As you''re sucking Artem''s dick, you feel a hand press down on the back of your head and force it down until his dick slides down your throat, causing you to gag. You think it''s Artem at first, but soon realize that it''s Anushka.'
 				gs 'arousal', 'bj', 2, 'deepthroat'
 				gs 'stat'
 				act 'Get your hair grabbed':
 					*clr & cla
 					gs 'boyStat', 'A2'
-					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/sveta/walk_bj3.jpg"></center>'
+					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/sveta/walk_bj3.jpg"></center>'
 					'You feel her fingers wrap themselves in your hair as she roughly forces you to deepthroat Artem before he speaks up. "Okay, let her up."'
 					'You can keep sucking his dick until he blows his load, offer up your pussy or give him your ass.'
 					gs 'arousal', 'bj', 2, 'deepthroat', 'rough'
@@ -1011,7 +1011,7 @@ if $ARGS[0] = 'artem_sveta':
 						*clr & cla
 						minut += 5
 						gs 'boyStat', 'A2'
-						'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/sveta/walk_facial.jpg"></center>'
+						'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/sveta/walk_facial.jpg"></center>'
 						'He stands up and you keep sucking his dick until he tells you he''s about to cum. You then pop his dick out of your mouth and jerk him off until he starts cumming on your face. Once you''ve milked every last drop out of him, you look up at him with a grin as he tucks his dick back away in his pants.'
 						gs 'cum_call', 'face', 'A2', 1
 						gs 'arousal', 'end'
@@ -1041,7 +1041,7 @@ if $ARGS[0] = 'artem_sveta_vag':
 	menu_off = 1
 	*clr & cla
 	gs 'boyStat', 'A2'
-	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/sveta/walk_vaginal1.jpg"></center>'
+	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/sveta/walk_vaginal1.jpg"></center>'
 	'You slide his dick out of your mouth and turn to look at him. "I want you to fuck me, right here, right now."'
 	'He just grins and gets up as Anushka helps you get naked from the waist down while he strips out of his pants and underwear. Once you''re both ready, you lay on your back and spread your legs wide before he lays down between your legs and slides his <<dick>>cm <<$dick_girth>> cock into your already wet pussy.'
 	gs 'arousal', 'vaginal', 2
@@ -1049,7 +1049,7 @@ if $ARGS[0] = 'artem_sveta_vag':
 	act 'Watch Anushka':
 		*clr & cla
 		gs 'boyStat', 'A2'
-		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/sveta/walk_vaginal2.jpg"></center>'
+		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/sveta/walk_vaginal2.jpg"></center>'
 		'As Artem fucks you, you glance over and see that Anushka has her hand down her pants, rubbing one out as she watches you get fucked by Artem. You just grin.'
 		gs 'arousal', 'vaginal', 2
 		gs 'stat'
@@ -1057,7 +1057,7 @@ if $ARGS[0] = 'artem_sveta_vag':
 		act 'Get fucked some more':
 			*clr & cla
 			gs 'boyStat', 'A2'
-			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/sveta/walk_vaginal3.jpg"></center>'
+			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/sveta/walk_vaginal3.jpg"></center>'
 			'Anushka is soon moaning almost as loud as you are, enough to attract even Artem''s attention. "What a little slut you are, rubbing one off while you watch me fuck your friend," he grins. "Admit it. You wish you were being fucked by some nerd cock right now, don''t you?"'
 			'Anushka bites her lower lip and redoubles her effort as she keeps rubbing one off. "YES! Oh fuck yes, I wish you were fucking me with your big nerd cock right now!"'
 			'Artem looks at you and smiles before looking back at her as he keeps fucking you. "Maybe next time I''ll ask Petka or Feofan to come along and they can fuck you while you watch me fuck <<$pcs_nickname>>. You''d like that, wouldn''t you? I can tell by your expression that the meer thought of some other nerd using you turns you on."'
@@ -1066,14 +1066,14 @@ if $ARGS[0] = 'artem_sveta_vag':
 			act 'Let him finish':
 				*clr & cla
 				gs 'boyStat', 'A2'
-				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/sveta/walk_vaginal4.jpg"></center>'
+				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/sveta/walk_vaginal4.jpg"></center>'
 				'He then starts really pounding your pussy, even more so once Anushka starts arching her back and moaning loudly as she rubs herself to orgasm. This pushes Artem to the edge as well as he starts grunting hard before he pulls out of you and points his dick in your face.'
 				gs 'arousal', 'vaginal', 2
 				gs 'stat'
 				act 'Artem blows his load':
 					*clr & cla
 					minut += 5
-					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/sveta/walk_facial.jpg"></center>'
+					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/sveta/walk_facial.jpg"></center>'
 					'You quickly jerk him off and he soon starts cumming on your face. Once you''ve milked every last drop out of him, you look up at him with a grin as he tucks his dick back away in his pants.'
 					gs 'cum_call', 'face', 'A2', 1
 					gs 'arousal', 'end'
@@ -1102,7 +1102,7 @@ if $ARGS[0] = 'artem_sveta_anal':
 	menu_off = 1
 	*clr & cla
 	gs 'boyStat', 'A2'
-	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/sveta/walk_anal1.jpg"></center>'
+	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/sveta/walk_anal1.jpg"></center>'
 	'"I want you to fuck my ass," you tell him with a smile.'
 	'He grins. "Get on all fours for me then."'
 	'You get on all fours while Anushka keeps rubbing one out. Artem uses your pussy juices and some spit to lube your asshole up before he gently slides it in. Once his dick is inside you, he starts to slowly fuck your ass.'
@@ -1111,14 +1111,14 @@ if $ARGS[0] = 'artem_sveta_anal':
 	act 'Take an anal pounding':
 		*clr & cla
 		gs 'boyStat', 'A2'		
-		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/sveta/walk_anal2.jpg"></center>'
+		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/sveta/walk_anal2.jpg"></center>'
 		'Artem pushes his cock deeper into your ass as he starts to fuck you harder and faster, even more so once Anushka starts arching her back and moaning loudly as she rubs herself to orgasm. This pushes Artem to the edge as well as he starts grunting hard before he pulls out of you and points his dick in your face.'
 		gs 'arousal', 'anal', 2, 'lube'
 		gs 'stat'
 		act 'Artem blows his load':
 			*clr & cla
 			minut += 5
-			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/sveta/walk_facial.jpg"></center>'
+			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/sveta/walk_facial.jpg"></center>'
 			'You quickly jerk him off and he soon starts cumming on your face. Once you''ve milked every last drop out of him, you look up at him with a grin as he tucks his dick back away in his pants.'
 			gs 'cum_call', 'face', 'A2', 1
 			gs 'arousal', 'end'

+ 29 - 29
locations/artem_nush_sex_uni.qsrc

@@ -801,7 +801,7 @@ if $ARGS[0] = 'nerd_game_night_walk':
 	menu_off = 1
 	*clr & cla
 	minut += 10
-	'<center><img <<$set_imgh>> src="'+'images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/anushka/walking.jpg"></center>'
+	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/walking.jpg"></center>'
 	if func('uniutil', 'student', 'enrolled'):
 		'You and Artem hold hands and Anushka walks on the other side of him as the three of you talk about a variety of subjects, mostly about the university, your respective courses and the professors. Artem then talks about the D&D game, but quickly drops it when Anushka seems like she''s getting bored.' 
 		'You then walk past the garages out back of the apartment complex Anushka lives in, and she points out which one the band is renting. Artem suddenly stops and takes his jacket off before spreading it wide on the ground. "Hey, why don''t we sit and talk for a bit here?" If you want Anushka to have sex with Artem, then you should sit with her between you and him. If you want to have sex with him, then you should sit between them.'
@@ -817,18 +817,18 @@ if $ARGS[0] = 'artem_nush':
 	menu_off = 1
 	*clr & cla
 	minut += 5
-	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/anushka/walk1.jpg"></center>'
+	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/anushka/walk1.jpg"></center>'
 	'Anushka sits and leaves room for you between her and Artem, but you motion for her to scoot over next to Artem and you sit next to her, sandwiching her between the two of you. Artem gives you a questioning look, but you just smile and nod at him.'
 	'He grins and leans back in a half-reclining position as you engage Anushka in a conversation about her latest sexual partner. You can see the bulge growing in his pants, and Anushka soon does as well. "Guess someone likes my story, huh?" she asks in a bemused tone.'
 	act 'Tell her to peek':
 		*clr & cla
-		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/anushka/walk2.jpg"></center>'
+		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/anushka/walk2.jpg"></center>'
 		'You lean against her, pushing her closer to Artem. "I think someone wants to say hi. Why don''t you take a peek?"'
 		'She looks back at you with a questioning look but starts to unbutton and unzip his pants to peek inside. "It''s too dark to see anything. Pull his dick out so we can see it," you tell her.'
 		act 'Tell her to take it out':
 			*clr & cla
 			gs 'boyStat', 'A2'
-			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/anushka/walk_bj1.jpg"></center>'
+			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/anushka/walk_bj1.jpg"></center>'
 			'She reaches into his underwear and pulls out his <<dick>>cm <<$dick_girth>> dick. Once it''s free, he reaches over and pulls her head down into his lap. "You made it hard, so now you got to suck it," you say with a smirk.'
 			'She starts stroking his dick with one hand before taking it into her mouth and sucking on it as Artem moans in pleasure.'
 			'"This is the best use for that mouth of her''s," he says as you grin at him.'
@@ -838,14 +838,14 @@ if $ARGS[0] = 'artem_nush':
 			act 'Push her head down':
 				*clr & cla
 				anushkaQW['dom_nush'] += 1
-				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/anushka/walk_bj2.jpg"></center>'
+				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/anushka/walk_bj2.jpg"></center>'
 				'As Anushka continues sucking Artem''s cock, you reach over and push her head down to force her to take more of it into her mouth.'
 				'"Oh yeah babe! Just like that..." Artem moans as he looks at you.'
 				gs 'arousal', 'voyeur_sex', 2, 'dom'
 				gs 'stat'
 				act 'Grab her hair':
 					*clr & cla
-					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/anushka/walk_bj3.jpg"></center>'
+					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/anushka/walk_bj3.jpg"></center>'
 					'You grab hold of Anushka''s hair and push her head down until you hear her gagging on his cock.'
 					'"God, you''re the best girlfriend a guy could have!" he says between moans as you make Anushka deepthroat his cock.' 
 					'After a few minutes of this, Artem looks you dead in the eye. "Help me take her jeans off so I can fuck this slut."'
@@ -856,14 +856,14 @@ if $ARGS[0] = 'artem_nush':
 			end
 			act 'Let her suck his dick':
 				*clr & cla
-				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/anushka/walk_bj2.jpg"></center>'
+				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/anushka/walk_bj2.jpg"></center>'
 				'As Anushka sucks Artem''s cock, you lean over and partially lay on her back so you can peek around and watch as most of his dick disappears into her mouth with each downward bob of her head.'
 				'"Yeah bitch... Just like that... Suck my dick!" Artem groans between moans of pleasure.'
 				gs 'arousal', 'voyeur_sex', 2, 'dom'
 				gs 'stat'
 				act 'Grab her hair':
 					*clr & cla
-					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/anushka/walk_bj3.jpg"></center>'
+					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/anushka/walk_bj3.jpg"></center>'
 					'You grab hold of Anushka''s hair and pull it up out of the way so it''s easier to watch her suck Artem''s dick.'
 					'"Just look at you submissively and obediently sucking my dick like a good little slut. We''ll make you into a slut for all the nerds before long," he says to her.'
 					'After a few minutes of this, Artem looks you dead in the eye. "Help me take her jeans off so I can fuck this dirty slut in this alley."'
@@ -879,27 +879,27 @@ end
 if $ARGS[0] = 'artem_nush_strip':
 	menu_off = 1
 	*clr & cla
-	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/anushka/walk_strip1.jpg"></center>'
+	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/anushka/walk_strip1.jpg"></center>'
 	'You pull her head up and both you and Artem start unbuttoning her jeans. Once you have them off, Artem tosses them aside as Anushka continues jerking him off. He then starts to tug at her panties.'
 	gs 'arousal', 'voyeur', 1
 	gs 'stat'
 	act 'Watch Artem take off her panties':
 		*clr & cla
-		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/anushka/walk_strip2.jpg"></center>'
+		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/anushka/walk_strip2.jpg"></center>'
 		'Artem roughly pulls her panties off and tosses them down by her jeans before he stands up and starts pulling down his pants and underwear. "Roll the dirty slut over on all fours so I can fuck her."'
 		gs 'arousal', 'voyeur', 1
 		gs 'stat'
 		act 'Help her onto all fours':
 			*clr & cla
 			gs 'boyStat', 'A2'
-			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/anushka/walk_vaginal1.jpg"></center>'
+			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/anushka/walk_vaginal1.jpg"></center>'
 			'You help Anushka get up on all fours so her ass is facing Artem. Once she''s in place, Artem kneels down behind her. "Damn, you''re soaking wet! Look babe, her juices are already running down her thigh!"'
 			'He moves forward and she suddenly moans loudly as he shoves his <<dick>>cm <<$dick_girth>> cock inside her pussy and starts fucking her as you lean in and start kissing her.'
 			gs 'arousal', 'kiss', 2
 			gs 'stat'
 			act 'Spread her ass cheeks':
 				*clr & cla
-				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/anushka/walk_vaginal2.jpg"></center>'
+				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/anushka/walk_vaginal2.jpg"></center>'
 				'After you break the kiss with her, you reach back and spread her ass cheeks as wide as you can while looking up at Artem. He grins as he gets the hint.'
 				'"Look at that little asshole, just begging to be used by nerd dick!" he says before he spits on her ass and uses a finger to rub it into her asshole.'
 				gs 'arousal', 'voyeur_sex', 2
@@ -908,7 +908,7 @@ if $ARGS[0] = 'artem_nush_strip':
 					*clr & cla
 					artemQW['artem_dom'] += 1
 					gs 'boyStat', 'A2'
-					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/anushka/walk_anal1.jpg"></center>'
+					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/anushka/walk_anal1.jpg"></center>'
 					'After spending a few more minutes fucking her pussy, he pulls his hips back. "Tell me you want this nerd dick in your ass."'
 					'"Yes... I want you to fuck my ass with your big nerd dick," she says, sounding rather desperate, yet also aroused.'
 					'You hold her ass cheeks wide for him as he lines his dick up with her asshole. "Oh fuck!" she mutters as he forces his cock up her ass.'
@@ -920,7 +920,7 @@ if $ARGS[0] = 'artem_nush_strip':
 					gs 'stat'
 					act 'Keep holding her':
 						*clr & cla
-						'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/anushka/walk_anal2.jpg"></center>'
+						'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/anushka/walk_anal2.jpg"></center>'
 						'Now that she''s unable to move, Artem shoves his hips forward again, causing her to moan loudly. As he starts really hammering her ass, she starts crying out and shaking as she has a massive orgasm, so much so you have to help hold her up as Artem starts grunting louder himself.'
 						gs 'arousal', 'voyeur_sex', 2
 						gs 'arousal', 'end'
@@ -928,7 +928,7 @@ if $ARGS[0] = 'artem_nush_strip':
 						act 'Watch him cum':
 							*clr & cla
 							minut += 5
-							'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/anushka/walk_facial.jpg"></center>'
+							'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/anushka/walk_facial.jpg"></center>'
 							'Artem suddenly pulls out of Anushka and stands up. "Turn her around to face me." You help her quickly turn around, her body still shaking from her orgasm. "Jerk me off and let me cum over your face, slut!" he orders.' 
 							'She takes hold of his dick and starts jerking him off. Almost at once, he starts cumming over her face. She milks his cock until every last drop of it has been squeezed out of it. They both sigh and sit back against the garage once he''s finished.'
 							*nl
@@ -971,18 +971,18 @@ if $ARGS[0] = 'artem_sveta':
 	menu_off = 1
 	*clr & cla
 	minut += 5
-	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/sveta/walk1.jpg"></center>'
+	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/sveta/walk1.jpg"></center>'
 	'Artem and Anushka take a seat, with Anushka leaving room for you to sit between her and Artem. You sit between them and lean against Artem as the three of you talk a bit more.'
 	'Artem leans back in a half reclining position and you can see his bulge growing in his pants. After a while, Anushka notices as well. "Looks like someone is getting a little worked up, huh?" she asks is a bemused tone.'
 	'Artem smiles at you. "Sorry babe, but I can''t help it. You''re just so beautiful."'
 	act 'Take a peek':
 		*clr & cla
-		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/sveta/walk2.jpg"></center>'
+		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/sveta/walk2.jpg"></center>'
 		'You unbutton his pants, but it''s too dark to see anything as you hear Anushka''s voice in your ear. It seems she''s leaned over to try and take a look too. "Go on. Pull it out."'
 		act 'Pull his dick out':
 			*clr & cla
 			gs 'boyStat', 'A2'
-			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/sveta/walk_bj1.jpg"></center>'
+			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/sveta/walk_bj1.jpg"></center>'
 			'You pull his dick out and he looks at you with pleading eyes. "Please suck it, babe."'
 			'You lean forward and take his dick into your mouth and start sucking it while stroking his shaft. "Damn <<$pcs_nickname>>, you''re getting good at that!" Anushka says.'
 			'You''re unable to answer, so Artem replies for you. "She''s the best!"'
@@ -992,14 +992,14 @@ if $ARGS[0] = 'artem_sveta':
 			act 'Deepthroat':
 				*clr & cla
 				gs 'boyStat', 'A2'
-				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/sveta/walk_bj2.jpg"></center>'
+				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/sveta/walk_bj2.jpg"></center>'
 				'As you''re sucking Artem''s dick, you feel a hand press down on the back of your head and force it down until his dick slides down your throat, causing you to gag. You think it''s Artem at first, but soon realize that it''s Anushka.'
 				gs 'arousal', 'bj', 2, 'deepthroat'
 				gs 'stat'
 				act 'Get your hair grabbed':
 					*clr & cla
 					gs 'boyStat', 'A2'
-					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/sveta/walk_bj3.jpg"></center>'
+					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/sveta/walk_bj3.jpg"></center>'
 					'You feel her fingers wrap themselves in your hair as she roughly forces you to deepthroat Artem before he speaks up. "Okay, let her up."'
 					'You can keep sucking his dick until he blows his load, offer up your pussy or give him your ass.'
 					gs 'arousal', 'bj', 2, 'deepthroat', 'rough'
@@ -1010,7 +1010,7 @@ if $ARGS[0] = 'artem_sveta':
 						*clr & cla
 						minut += 5
 						gs 'boyStat', 'A2'
-						'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/sveta/walk_facial.jpg"></center>'
+						'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/sveta/walk_facial.jpg"></center>'
 						'He stands up and you keep sucking his dick until he tells you he''s about to cum. You then pop his dick out of your mouth and jerk him off until he starts cumming on your face. Once you''ve milked every last drop out of him, you look up at him with a grin as he tucks his dick back away in his pants.'
 						gs 'cum_call', 'face', 'A2', 1
 						gs 'arousal', 'end'
@@ -1047,7 +1047,7 @@ if $ARGS[0] = 'artem_sveta_vag':
 	menu_off = 1
 	*clr & cla
 	gs 'boyStat', 'A2'
-	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/sveta/walk_vaginal1.jpg"></center>'
+	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/sveta/walk_vaginal1.jpg"></center>'
 	'You slide his dick out of your mouth and turn to look at him. "I want you to fuck me, right here, right now."'
 	'He just grins and gets up as Anushka helps you get naked from the waist down while he strips out of his pants and underwear. Once you''re both ready, you lay on your back and spread your legs wide before he lays down between your legs and slides his <<dick>>cm <<$dick_girth>> cock into your already wet pussy.'
 	gs 'arousal', 'vaginal', 2
@@ -1055,7 +1055,7 @@ if $ARGS[0] = 'artem_sveta_vag':
 	act 'Watch Anushka':
 		*clr & cla
 		gs 'boyStat', 'A2'
-		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/sveta/walk_vaginal2.jpg"></center>'
+		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/sveta/walk_vaginal2.jpg"></center>'
 		'As Artem fucks you, you glance over and see that Anushka has her hand down her pants, rubbing one out as she watches you get fucked by Artem. You just grin.'
 		gs 'arousal', 'vaginal', 2
 		gs 'stat'
@@ -1063,7 +1063,7 @@ if $ARGS[0] = 'artem_sveta_vag':
 		act 'Get fucked some more':
 			*clr & cla
 			gs 'boyStat', 'A2'
-			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/sveta/walk_vaginal3.jpg"></center>'
+			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/sveta/walk_vaginal3.jpg"></center>'
 			'Anushka is soon moaning almost as loud as you are, enough to attract even Artem''s attention. "What a little slut you are, rubbing one off while you watch me fuck your friend," he grins. "Admit it. You wish you were being fucked by some nerd cock right now, don''t you?"'
 			'Anushka bites her lower lip and redoubles her effort as she keeps rubbing one off. "YES! Oh fuck yes, I wish you were fucking me with your big nerd cock right now!"'
 			'Artem looks at you and smiles before looking back at her as he keeps fucking you. "Maybe next time I''ll ask Petka or Feofan to come along and they can fuck you while you watch me fuck <<$pcs_nickname>>. You''d like that, wouldn''t you? I can tell by your expression that the meer thought of some other nerd using you turns you on."'
@@ -1072,14 +1072,14 @@ if $ARGS[0] = 'artem_sveta_vag':
 			act 'Let him finish':
 				*clr & cla
 				gs 'boyStat', 'A2'
-				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/sveta/walk_vaginal4.jpg"></center>'
+				'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/sveta/walk_vaginal4.jpg"></center>'
 				'He then starts really pounding your pussy, even more so once Anushka starts arching her back and moaning loudly as she rubs herself to orgasm. This pushes Artem to the edge as well as he starts grunting hard before he pulls out of you and points his dick in your face.'
 				gs 'arousal', 'vaginal', 2
 				gs 'stat'
 				act 'Artem blows his load':
 					*clr & cla
 					minut += 5
-					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/sveta/walk_facial.jpg"></center>'
+					'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/sveta/walk_facial.jpg"></center>'
 					'You quickly jerk him off and he soon starts cumming on your face. Once you''ve milked every last drop out of him, you look up at him with a grin as he tucks his dick back away in his pants.'
 					gs 'cum_call', 'face', 'A2', 1
 					gs 'arousal', 'end'
@@ -1116,7 +1116,7 @@ if $ARGS[0] = 'artem_sveta_anal':
 	menu_off = 1
 	*clr & cla
 	gs 'boyStat', 'A2'
-	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/sveta/walk_anal1.jpg"></center>'
+	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/sveta/walk_anal1.jpg"></center>'
 	'"I want you to fuck my ass," you tell him with a smile.'
 	'He grins. "Get on all fours for me then."'
 	'You get on all fours while Anushka keeps rubbing one out. Artem uses your pussy juices and some spit to lube your asshole up before he gently slides it in. Once his dick is inside you, he starts to slowly fuck your ass.'
@@ -1125,14 +1125,14 @@ if $ARGS[0] = 'artem_sveta_anal':
 	act 'Take an anal pounding':
 		*clr & cla
 		gs 'boyStat', 'A2'		
-		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/sveta/walk_anal2.jpg"></center>'
+		'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/sveta/walk_anal2.jpg"></center>'
 		'Artem pushes his cock deeper into your ass as he starts to fuck you harder and faster, even more so once Anushka starts arching her back and moaning loudly as she rubs herself to orgasm. This pushes Artem to the edge as well as he starts grunting hard before he pulls out of you and points his dick in your face.'
 		gs 'arousal', 'anal', 2, 'lube'
 		gs 'stat'
 		act 'Artem blows his load':
 			*clr & cla
 			minut += 5
-			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffe_hole/sveta/walk_facial.jpg"></center>'
+			'<center><img <<$set_imgh>> src="images/characters/pavlovsk/school/boy/artem/sex/city/coffee_hole/sveta/walk_facial.jpg"></center>'
 			'You quickly jerk him off and he soon starts cumming on your face. Once you''ve milked every last drop out of him, you look up at him with a grin as he tucks his dick back away in his pants.'
 			gs 'cum_call', 'face', 'A2', 1
 			gs 'arousal', 'end'

+ 4 - 4
locations/ballet_npc.qsrc

@@ -27,8 +27,8 @@ gs 'npcstaticdefaults', 'body', 'model'
 !! mod appearance NPC settings, height in cm, weight in kg
 $npc_haircolour['A<<npctemp>>'] = 'Blonde'
 $npc_eyecolour['A<<npctemp>>'] = 'blue'
-$npc_height['A<<npctemp>>'] = 160
-$npc_weight['A<<npctemp>>'] = 50 
+$npc_height['A<<npctemp>>'] = str(160)
+$npc_weight['A<<npctemp>>'] = str(50)
 $npc_img_path['A<<npctemp>>'] = 'images/characters/pushkin/maya'
 
 npctemp = 3502 
@@ -72,8 +72,8 @@ gs 'npcstaticdefaults', 'body', 'model'
 !! mod appearance NPC settings, height in cm, weight in kg
 $npc_haircolour['A<<npctemp>>'] = 'Brunette'
 $npc_eyecolour['A<<npctemp>>'] = 'Blue'
-$npc_height['A<<npctemp>>'] = 145
-$npc_weight['A<<npctemp>>'] = 40 
+$npc_height['A<<npctemp>>'] = str(145)
+$npc_weight['A<<npctemp>>'] = str(40)
 $npc_img_path['A<<npctemp>>'] = 'images/characters/pushkin/gasha'
 
 !! Calina

+ 21 - 25
locations/bedrPar.qsrc

@@ -4,7 +4,7 @@
 fromoutside = iif($loc = 'bedrPar',0,1)
 menu_off = 0
 minut += 1
-!!day check so mom doesn''t think you have been out all night if you get up very early 
+!!day check so mom doesn''t think you have been out all night if you get up very early
 motherworry[1] = daystart
 gs 'shortgs', 'setloc', 'bedrPar', $ARGS[0]
 $location_type = 'private'
@@ -43,7 +43,7 @@ if $ARGS[0] = '' or $ARGS[0] = 'start':
 		'As soon as you enter the room, you rush over to <<$ParrotQW[''Name'']>>''s cage and pour the contents of the vial into his water bowl. You hope this will work and keep him from spilling you and your sister''s bedroom secrets.'
 		ParrotQW['Level'] = 3
 		ParrotQW['Day'] = 3
-		
+
 		act 'Continue':gt $loc, $loc_arg
 	elseif ParrotQW['SisterReleaseParrotDay'] + 3 < daystart and ParrotQW['Level'] = 1 and func('homes_properties', 'is_current_home'):
 		*clr & cla
@@ -55,14 +55,14 @@ if $ARGS[0] = '' or $ARGS[0] = 'start':
 		ParrotQW['Day'] = 2
 		ParrotQW['Failed'] = 0
 		gs 'stat'
-		
+
 		act 'Continue':gt $loc, $loc_arg
 	elseif pcs_magik >= 6 and spellbefshild = 1 and tobiQW = 0 and locat['Anya_inroom'] = 0 and func('homes_properties', 'can_live_here'):
 		gt 'tobiQW', 'start'
-		
-	elseif locat['Anya'] = 11 and func('homes_properties', 'can_live_here'): 
+
+	elseif locat['Anya'] = 11 and func('homes_properties', 'can_live_here'):
 		gt 'sisterQW', 'sisboyQW_expel'
-		
+
 	elseif locat['Anya_inroom'] = 1 and ParrotQW['Owned2'] = 1 and ParrotQW['SisKeepParrot'] = 0 and func('homes_properties', 'is_current_home'):
 		*clr & cla
 		menu_off = 1
@@ -103,22 +103,22 @@ if $ARGS[0] = '' or $ARGS[0] = 'start':
 
 		if ParrotQW['Owned2'] = 1 and func('homes_properties', 'is_current_home'):
 			'<a href="exec:gt ''popu'',''start2''"><<$ParrotQW[''Name2'']>></a> is sitting in his cage'
-			if daystart - ParrotQW['BuyDate'] <= 10: 
+			if daystart - ParrotQW['BuyDate'] <= 10:
 				'<<$ParrotQW[''Name2'']>> starts squawking at you when you enter the room.'
-			elseif daystart - ParrotQW['BuyDate'] <= 20: 
+			elseif daystart - ParrotQW['BuyDate'] <= 20:
 				'When <<$ParrotQW[''Name2'']>> sees you, he starts ''speaking''. It sounds almost like he is saying "<b>Hello <<$pcs_nickname>>!</b>"'
-			elseif daystart - ParrotQW['BuyDate'] <= 30: 
+			elseif daystart - ParrotQW['BuyDate'] <= 30:
 				'When <<$ParrotQW[''Name2'']>> sees you, he starts ''speaking''. He is clearly saying "<b>Hello <<$pcs_nickname>>!</b>"'
-			elseif daystart - ParrotQW['BuyDate'] <= 35: 
+			elseif daystart - ParrotQW['BuyDate'] <= 35:
 				'When <<$ParrotQW[''Name2'']>> sees you, he starts ''speaking''. He is saying "<b><<$pcs_nickname>> very pretty!</b>"'
-			elseif daystart - ParrotQW['BuyDate'] <= 40: 
+			elseif daystart - ParrotQW['BuyDate'] <= 40:
 				'When <<$ParrotQW[''Name2'']>> sees you, he starts ''speaking''. He is saying "<b>Great body, <<$pcs_nickname>>!</b>"'
-			elseif daystart - ParrotQW['BuyDate'] <= 50: 
+			elseif daystart - ParrotQW['BuyDate'] <= 50:
 				'When <<$ParrotQW[''Name2'']>> sees you, he starts ''speaking''. He is saying "<b>You''re the best, Anya!</b>"'
-			elseif daystart - ParrotQW['BuyDate'] <= 55: 
+			elseif daystart - ParrotQW['BuyDate'] <= 55:
 				'When <<$ParrotQW[''Name2'']>> sees you, he starts ''speaking''. He is saying "<b>Yeah, that''s it Anya! Swallow it all!</b>"'
 			else
-				if ParrotQW['Level'] < 3: 
+				if ParrotQW['Level'] < 3:
 					'When <<$ParrotQW[''Name2'']>> sees you, he starts ''speaking''. He is saying "<b>Your pussy tastes great, Anya!</b>"'
 				else
 					parfixrand = rand(0,9)
@@ -148,7 +148,7 @@ if $ARGS[0] = '' or $ARGS[0] = 'start':
 			elseif mc_inventory['equipped_condoms'] + mc_inventory['normal_condoms'] + mc_inventory['sabotaged_condoms'] > 0:
 				'Your <a href="exec:gt ''stol'', ''bc''">condoms</a> are hidden in one of your desk drawers.'
 			end
-			
+
 			if mid($start_type,1,2) = 'sg' and SchoolAtestat = 0 and week = 6 and hour > 4 and hour < 9 and detention_set = 1 and detention_warning ! daystart:
 				detention_warning = daystart
 				msg 'You have detention this morning and must be at school before 09:00.'
@@ -188,10 +188,6 @@ if $ARGS[0] = '' or $ARGS[0] = 'start':
 						gt 'sister_chat', 'sex_room_talk1'
 					end
 					'<a href="exec:gt ''sister_chat'', ''talking''">Anya</a> is sitting on her bed, reading a book.'
-				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.'
 				end
 			end
 		end
@@ -205,7 +201,7 @@ if $ARGS[0] = '' or $ARGS[0] = 'start':
 			act 'Relax on your bed': gt 'bed', 'start'
 			act 'Open wardrobe': gt 'wardrobe', 'start'
 			gs 'prostitution_functions', 'prostitute_outfit_at_home'
-			
+
 			if mc_inventory['mag_porn'] > 0:'You have hidden your porn magazines under the mattress of your bed.'
 			!!Masturbation, allowed after sister threesome (when sis_watch is used for a message) or sister not here.
 			sis_watch = 0
@@ -228,9 +224,9 @@ if $ARGS[0] = '' or $ARGS[0] = 'start':
 			if mc_inventory['trinkets_home'] > 0:'You currently have <<mc_inventory[''trinkets_home'']>> trinkets to sell at the station. The maximum you can carry is 30.'
 
 			if locat['Anya_inroom'] = 0: dynamic $palelady
-			
+
 			gs 'wardrobe', 'default_sport_options'
-			
+
 			gs 'exercise', 'start'
 
 			if mc_inventory['sewing_kit'] = 1:
@@ -238,7 +234,7 @@ if $ARGS[0] = '' or $ARGS[0] = 'start':
 				*nl
 				if mc_inventory['sewing_fabric'] <= 0:'You do not have any fabric.'
 				if pcs_sewng >= 80:
-					if newgobelen = 0 and mc_inventory['sewing_fabric'] > 0: 
+					if newgobelen = 0 and mc_inventory['sewing_fabric'] > 0:
 						act 'Start a new tapestry': gt 'sewing', 'tapestry'
 					elseif newgobelen >= 1:
 						'Your tapestry is <<newgobelen/10>> percent finished.'
@@ -275,7 +271,7 @@ if $ARGS[0] = '' or $ARGS[0] = 'start':
 		if func('homes_properties', 'is_current_home'): gs 'subkid'
 		'</td></tr></table>'
 
-		!! NOTE: This has to go here, otherwise gs 'subkid' removes the icon. 
+		!! NOTE: This has to go here, otherwise gs 'subkid' removes the icon.
 		gs 'music_actions', 'start'
 	end
 end
@@ -289,7 +285,7 @@ if $ARGS[0] = 'intro':
 	music_loop = 0
 	'<center><h1><font color="maroon">Your Bedroom</font></h1></center>'
 	'<center><img <<$set_imgh>> src="images/characters/pavlovsk/resident/mom/prost4.jpg"></center>'
-	'You sudenly hear a familiar voice yelling out. "<<$pcs_nickname>>, time to get up! You can''t spend the whole day laying around!"'
+	'You suddenly hear a familiar voice yelling out. "<<$pcs_nickname>>, time to get up! You can''t spend the whole day laying around!"'
 	wait 1000
 	$temp_nickname = input('<center>What name do you address your mother by?<br>Mother (default), Mum, Mom, Mama, etc.</center>')
 	if $temp_nickname ! '':$npc_nickname['A29'] = '<<$temp_nickname>>'

+ 32 - 32
locations/beverage.qsrc

@@ -7,7 +7,7 @@ if $ARGS[0] = 'bev_kva':
 	frost = 1
 	minut += 10
 	fat += 2
-	money -= val($_drink['<<args[1]>>,price'])
+	money -= _drink['<<args[1]>>,price']
 	pcs_health += 5
 	pcs_mood += 15
 	if pcs_hydra >= 100:
@@ -37,7 +37,7 @@ if $ARGS[0] = 'bev_jui':
 	if alko > 0: alko -= 1
 	minut += 10
 	fat += 3
-	money -= val($_drink['<<args[1]>>,price'])
+	money -= _drink['<<args[1]>>,price']
 	pcs_health += 8
 	pcs_mood += 10
 	if pcs_hydra >= 100:
@@ -66,7 +66,7 @@ if $ARGS[0] = 'bev_mil':
 	frost = 1
 	minut += 10
 	fat += 6
-	money -= val($_drink['<<args[1]>>,price'])
+	money -= _drink['<<args[1]>>,price']
 	pcs_health += 5
 	pcs_mood += 20
 	pcs_energy += 5
@@ -96,7 +96,7 @@ if $ARGS[0] = 'bev_wat':
 	frost = 1
 	if alko > 0: alko -= 1
 	minut += 1
-	money -= val($_drink['<<args[1]>>,price'])
+	money -= _drink['<<args[1]>>,price']
 	pcs_health += 10
 	if pcs_hydra >= 100:
 		pcs_hydra += 25
@@ -123,7 +123,7 @@ if $ARGS[0] = 'bev_cof':
 	frost = 0
 	if alko > 0: alko -= 1
 	minut += 10
-	money -= val($_drink['<<args[1]>>,price'])
+	money -= _drink['<<args[1]>>,price']
 	pcs_health += 5
 	pcs_mood += 20
 	if pcs_hydra >= 100:
@@ -153,7 +153,7 @@ if $ARGS[0] = 'bev_tea':
 	frost = 0
 	if alko > 0: alko -= 1
 	minut += 10
-	money -= val($_drink['<<args[1]>>,price'])
+	money -= _drink['<<args[1]>>,price']
 	pcs_health += 10
 	pcs_mood += 20
 	if pcs_hydra >= 100:
@@ -183,7 +183,7 @@ if $ARGS[0] = 'bev_energy_drink':
 	frost = 1
 	if alko > 0: alko -= 1
 	minut += 5
-	money -= val($_drink['<<args[1]>>,price'])
+	money -= _drink['<<args[1]>>,price']
 	pcs_health += 10
 	pcs_mood += 20
 	pcs_energy += 10
@@ -213,7 +213,7 @@ if $ARGS[0] = 'bev_vod':
 	if pcs_health > 20:
 		*clr & cla
 		minut += 15
-		money -= val($_drink['<<args[1]>>,price'])
+		money -= _drink['<<args[1]>>,price']
 		gs 'drugs', 'alcohol', 'vodka'
 		gs 'beverage', 'afteralcohol'
 		'<center><img <<$set_imgh>> src="images/locations/shared/brothel/barordervodka.jpg"></center>'
@@ -238,7 +238,7 @@ if $ARGS[0] = 'bev_bla':
 		*clr & cla
 		minut += 15
 		pcs_mood += 10
-		money -= val($_drink['<<args[1]>>,price'])
+		money -= _drink['<<args[1]>>,price']
 		gs 'drugs', 'alcohol', 'vodka'
 		gs 'beverage', 'afteralcohol'
 		'<center><img <<$set_imgh>> src="images/shared/drinks/blackrussian.jpg"></center>'
@@ -261,7 +261,7 @@ if $ARGS[0] = 'bev_sco':
 	if pcs_health > 20:
 		*clr & cla
 		minut += 15
-		money -= val($_drink['<<args[1]>>,price'])
+		money -= _drink['<<args[1]>>,price']
 		gs 'drugs', 'alcohol', 'scotch'
 		gs 'beverage', 'afteralcohol'
 		'<center><img <<$set_imgh>> src="images/shared/drinks/scotch.jpg"></center>'
@@ -285,7 +285,7 @@ if $ARGS[0] = 'bev_win':
 	if pcs_health > 20:
 		*clr & cla
 		minut += 15
-		money -= val($_drink['<<args[1]>>,price'])
+		money -= _drink['<<args[1]>>,price']
 		gs 'drugs', 'alcohol', 'wine'
 		gs 'beverage', 'afteralcohol'
 		'<center><img <<$set_imgh>> src="images/shared/drinks/redwine.jpg"></center>'
@@ -309,7 +309,7 @@ if $ARGS[0] = 'bev_mar':
 	if pcs_health > 20:
 		*clr & cla
 		minut += 15
-		money -= val($_drink['<<args[1]>>,price'])
+		money -= _drink['<<args[1]>>,price']
 		pcs_mood += 10
 		gs 'drugs', 'alcohol', 'vodka'
 		gs 'beverage', 'afteralcohol'
@@ -333,7 +333,7 @@ if $ARGS[0] = 'bev_cha':
 	if pcs_health > 20:
 		*clr & cla
 		minut += 15
-		money -= val($_drink['<<args[1]>>,price'])
+		money -= _drink['<<args[1]>>,price']
 		gs 'drugs', 'alcohol', 'champagne'
 		gs 'beverage', 'afteralcohol'
 		'<center><img <<$set_imgh>> src="images/shared/drinks/champagne.jpg"></center>'
@@ -356,7 +356,7 @@ if $ARGS[0] = 'bev_bee':
 	if pcs_health > 20:
 		*clr & cla
 		minut += 15
-		money -= val($_drink['<<args[1]>>,price'])
+		money -= _drink['<<args[1]>>,price']
 		gs 'drugs', 'alcohol', 'beer'
 		gs 'beverage', 'afteralcohol'
 		'<center><img <<$set_imgh>> src="images/shared/drinks/darkbeer.jpg"></center>'
@@ -379,7 +379,7 @@ if $ARGS[0] = 'bev_cocktail':
 	if pcs_health > 20:
 		*clr & cla
 		minut += 20
-		money -= val($_drink['<<args[1]>>,price'])
+		money -= _drink['<<args[1]>>,price']
 		pcs_mood += 15
 		gs 'drugs', 'alcohol', 'rum'
 		pcs_horny += rand(10, 50)
@@ -465,7 +465,7 @@ if $ARGS[0] = 'only_cost_bco':
 	*clr & cla
 	frost = 0
 	if alko > 0: alko -= 1
-	money -= val($_drink['<<args[1]>>,price'])
+	money -= _drink['<<args[1]>>,price']
 	if pcs_sleep <= 20: pcs_sleep += 5
 	pcs_health += 5
 	pcs_mood += 20
@@ -490,7 +490,7 @@ if $ARGS[0] = 'only_cost_cof':
 	*clr & cla
 	frost = 0
 	if alko > 0: alko -= 1
-	money -= val($_drink['<<args[1]>>,price'])
+	money -= _drink['<<args[1]>>,price']
 	if pcs_sleep <= 20: pcs_sleep += 5
 	pcs_health += 5
 	pcs_mood += 20
@@ -516,7 +516,7 @@ if $ARGS[0] = 'only_cost_tea':
 	*clr & cla
 	frost = 0
 	if alko > 0: alko -= 1
-	money -= val($_drink['<<args[1]>>,price'])
+	money -= _drink['<<args[1]>>,price']
 	pcs_health += 10
 	pcs_mood += 20
 	if pcs_hydra >= 100:
@@ -540,7 +540,7 @@ if $ARGS[0] = 'only_cost_esp':
 	*clr & cla
 	frost = 0
 	if alko > 0: alko -= 1
-	money -= val($_drink['<<args[1]>>,price'])
+	money -= _drink['<<args[1]>>,price']
 	if pcs_sleep <= 20: pcs_sleep += 5
 	pcs_health += 5
 	pcs_mood += 20
@@ -558,7 +558,7 @@ end
 if $ARGS[0] = 'only_cost_kva':
 	frost = 1
 	fat += 2
-	money -= val($_drink['<<args[1]>>,price'])
+	money -= _drink['<<args[1]>>,price']
 	pcs_health += 5
 	pcs_mood += 15
 	if pcs_hydra >= 100:
@@ -582,7 +582,7 @@ if $ARGS[0] = 'only_cost_jui':
 	frost = 1
 	if alko > 0: alko -= 1
 	fat += 3
-	money -= val($_drink['<<args[1]>>,price'])
+	money -= _drink['<<args[1]>>,price']
 	pcs_health += 8
 	pcs_mood += 10
 	if pcs_hydra >= 100:
@@ -606,7 +606,7 @@ if $ARGS[0] = 'only_cost_mil':
 	*clr & cla
 	frost = 1
 	fat += 6
-	money -= val($_drink['<<args[1]>>,price'])
+	money -= _drink['<<args[1]>>,price']
 	pcs_health += 5
 	pcs_mood += 20
 	pcs_energy += 5
@@ -630,7 +630,7 @@ end
 if $ARGS[0] = 'only_cost_wat':
 	frost = 1
 	if alko > 0: alko -= 1
-	money -= val($_drink['<<args[1]>>,price'])
+	money -= _drink['<<args[1]>>,price']
 	pcs_health += 10
 	if pcs_hydra >= 100:
 		pcs_hydra += 25
@@ -651,7 +651,7 @@ end
 if $ARGS[0] = 'only_cost_bev_energy_drink':
 	frost = 1
 	if alko > 0: alko -= 1
-	money -= val($_drink['<<args[1]>>,price'])
+	money -= _drink['<<args[1]>>,price']
 	pcs_health += 10
 	pcs_mood += 20
 	pcs_energy += 10
@@ -674,7 +674,7 @@ if $ARGS[0] = 'only_cost_bev_energy_drink':
 end
 
 if $ARGS[0] = 'only_cost_bev_vod':
-	money -= val($_drink['<<args[1]>>,price'])
+	money -= _drink['<<args[1]>>,price']
 	gs 'drugs', 'alcohol', 'vodka'
 	gs 'beverage', 'afteralcohol'
 	gs 'stat'
@@ -687,7 +687,7 @@ end
 
 if $ARGS[0] = 'only_cost_bev_bla':
 	pcs_mood += 10
-	money -= val($_drink['<<args[1]>>,price'])
+	money -= _drink['<<args[1]>>,price']
 	gs 'drugs', 'alcohol', 'vodka'
 	gs 'beverage', 'afteralcohol'
 	gs 'stat'
@@ -699,7 +699,7 @@ if $ARGS[0] = 'only_cost_bev_bla':
 end
 
 if $ARGS[0] = 'only_cost_bev_sco':
-	money -= val($_drink['<<args[1]>>,price'])
+	money -= _drink['<<args[1]>>,price']
 	gs 'drugs', 'alcohol', 'scotch'
 	gs 'beverage', 'afteralcohol'
 	gs 'stat'
@@ -711,7 +711,7 @@ if $ARGS[0] = 'only_cost_bev_sco':
 end
 
 if $ARGS[0] = 'only_cost_bev_win':
-	money -= val($_drink['<<args[1]>>,price'])
+	money -= _drink['<<args[1]>>,price']
 	gs 'drugs', 'alcohol', 'wine'
 	gs 'beverage', 'afteralcohol'
 	gs 'stat'
@@ -723,7 +723,7 @@ if $ARGS[0] = 'only_cost_bev_win':
 end
 
 if $ARGS[0] = 'only_cost_bev_mar':
-	money -= val($_drink['<<args[1]>>,price'])
+	money -= _drink['<<args[1]>>,price']
 	pcs_mood += 10
 	gs 'drugs', 'alcohol', 'vodka'
 	gs 'beverage', 'afteralcohol'
@@ -736,7 +736,7 @@ if $ARGS[0] = 'only_cost_bev_mar':
 end
 
 if $ARGS[0] = 'only_cost_bev_cha':
-	money -= val($_drink['<<args[1]>>,price'])
+	money -= _drink['<<args[1]>>,price']
 	gs 'drugs', 'alcohol', 'champagne'
 	gs 'beverage', 'afteralcohol'
 	gs 'stat'
@@ -748,7 +748,7 @@ if $ARGS[0] = 'only_cost_bev_cha':
 end
 
 if $ARGS[0] = 'only_cost_bev_bee':
-	money -= val($_drink['<<args[1]>>,price'])
+	money -= _drink['<<args[1]>>,price']
 	gs 'drugs', 'alcohol', 'beer'
 	gs 'beverage', 'afteralcohol'
 	gs 'stat'
@@ -760,7 +760,7 @@ if $ARGS[0] = 'only_cost_bev_bee':
 end
 
 if $ARGS[0] = 'only_cost_bev_cocktail':
-	money -= val($_drink['<<args[1]>>,price'])
+	money -= _drink['<<args[1]>>,price']
 	pcs_mood += 15
 	gs 'drugs', 'alcohol', 'rum'
 	pcs_horny += rand(10, 50)

+ 7 - 7
locations/billiard.qsrc

@@ -11,7 +11,7 @@ gs 'stat'
 '<center><img <<$set_imgh>> src="images/locations/city/citycenter/mall/pool/bil.jpg"></center>'
 'Quite a large billiard room, there are plenty of tables in the main hall, but there are some tables in individual cubicles.'
 
-act 'Leave':gt 'torgcentr'
+act 'Leave': gt 'city_mall'
 
 if hour >= 8 and hour <= 20:
 	if money >= 125:
@@ -23,7 +23,7 @@ if hour >= 8 and hour <= 20:
 			gs 'exp_gain', 'pool', rand(0,3)
 			billrand = rand(0,5)
 			gs 'stat'
-			
+
 			if billrand = 0:
 				cla
 				'You play one of the guys here and he asks if you want to make it more interesting.'
@@ -31,7 +31,7 @@ if hour >= 8 and hour <= 20:
 				if money >= 1000:act 'Bet on the game (1000 <b>₽</b>)':billvar = 0 & gt 'billiard', 'randwin'
 
 				if mc_inventory['strapon'] = 1:act 'Play for his ass, sex if you lose':billvar = 1 & gt 'billiard', 'randwin'
-				
+
 				gs 'willpower', 'anal', 'resist'
 				if will_cost <= pcs_willpwr:
 					act 'Stick to practice games (<<will_cost>> Willpower)':
@@ -43,7 +43,7 @@ if hour >= 8 and hour <= 20:
 				else
 					act 'Stick to practice games (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
 				end
-				
+
 				act 'Let him have the table instead':
 					money += 125
 					gs 'exp_gain', 'pool', rand(0, 1)
@@ -69,7 +69,7 @@ if hour >= 8 and hour <= 20:
 				else
 					act 'Stick to practice games (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
 				end
-				
+
 				act 'Let him have the table instead':
 					money += 125
 					gs 'exp_gain', 'pool', rand(0, 1)
@@ -120,7 +120,7 @@ if $ARGS[0] = 'randwin':
 		'<center><img <<$set_imgh>> src="images/locations/city/citycenter/mall/pool/sex/strapon.jpg"></center>'
 		'You win, put your strapon, and look at the guy, "Well bend over, today you''re my bitch."'
 		'The guy drops his pants and bends over, you peg that butt.'
-		
+
 		gs 'arousal', 'anal_strap_give', 10, 'dom'
 		gs 'arousal', 'end'
 		gs 'stat'
@@ -134,7 +134,7 @@ if $ARGS[0] = 'randwin':
 		gs 'arousal', 'anal_strap_give', 10, 'dom'
 		gs 'arousal', 'end'
 		gs 'stat'
-		
+
 		act 'Leave':gt 'billiard'
 	elseif billwin > 10 and billvar = 3:
 		money += 250

+ 16 - 16
locations/billsvid.qsrc

@@ -48,9 +48,9 @@ if $ARGS[0] = '':
 				gt 'billsvid', '3'
 			end
 		elseif $telsob = $loverdesc[lover_number]:
-			!! date with girlfriend	
+			!! date with girlfriend
 			loverrelation[lover_number] += 1
-			
+
 			if loverrelation[lover_number] >= 20:
 				bilrand = rand(0, 10)
 				if bilrand > 0 and bilrand < 3:gt 'billsvid', '1'
@@ -70,7 +70,7 @@ if $ARGS[0] = '1':
 
 	gs 'arousal', 'foreplay', 5, 'lesbian'
 	gs 'stat'
-	
+
 	gs 'willpower', 'cuni', 'resist'
 	if will_cost <= pcs_willpwr:
 		act 'Not now <<$telsob>> (<<will_cost>> Willpower)':
@@ -91,7 +91,7 @@ if $ARGS[0] = '1':
 
 		gs 'arousal', 'kiss', 5, 'lesbian'
 		gs 'stat'
-	
+
 		act 'Lick her':gt 'billsvid', '10'
 		gs 'willpower', 'cuni', 'force'
 		if will_cost <= pcs_willpwr:
@@ -114,7 +114,7 @@ if $ARGS[0] = '10':
 
 	gs 'arousal', 'cuni_give', 5, 'lesbian'
 	gs 'stat'
-		
+
 	gs 'willpower', 'cuni', 'force'
 	if will_cost <= pcs_willpwr:
 		act 'Get licked (<<will_cost>> Willpower)':
@@ -138,7 +138,7 @@ if $ARGS[0] = '11':
 
 	gs 'arousal', 'cuni', 5, 'lesbian'
 	gs 'stat'
-	
+
 	act 'Lick her':gt 'billsvid', '10'
 
 	if bilsvidkiy = 0:act 'Play with a cue':gt 'billsvid', '12'
@@ -165,7 +165,7 @@ if $ARGS[0] = '12':
 
 	gs 'arousal', 'vaginal_dildo_give', 5, 'lesbian'
 	gs 'stat'
-	
+
 	if bilsvidukiy = 0:
 		gs 'willpower', 'sex', 'force'
 		if will_cost <= pcs_willpwr:
@@ -206,7 +206,7 @@ if $ARGS[0] = '2':
 
 	gs 'arousal', 'foreplay', 5, 'lesbian'
 	gs 'stat'
-	
+
 	gs 'willpower', 'cuni', 'resist'
 	if will_cost <= pcs_willpwr:
 		act 'Continue to play <<$telsob>> (<<will_cost>> Willpower)':
@@ -226,7 +226,7 @@ if $ARGS[0] = '2':
 
 		gs 'arousal', 'kiss', 5, 'lesbian'
 		gs 'stat'
-	
+
 		act 'Proceed':
 			*clr & cla
 			'<center><img <<$set_imgh>> src="images/locations/city/citycenter/mall/pool/sex/12.jpg"></center>'
@@ -234,7 +234,7 @@ if $ARGS[0] = '2':
 
 			gs 'arousal', 'foreplay', 5, 'lesbian'
 			gs 'stat'
-	
+
 			act 'Lick her':
 				*clr & cla
 				'<center><img <<$set_imgh>> src="images/locations/city/citycenter/mall/pool/sex/13.jpg"></center>'
@@ -242,7 +242,7 @@ if $ARGS[0] = '2':
 
 				gs 'arousal', 'cuni_give', 5, 'lesbian'
 				gs 'stat'
-	
+
 				act 'Proceed':
 					*clr & cla
 					'<center><img <<$set_imgh>> src="images/locations/city/citycenter/mall/pool/sex/14.jpg"></center>'
@@ -250,7 +250,7 @@ if $ARGS[0] = '2':
 
 					gs 'arousal', 'cuni_give', 5, 'lesbian'
 					gs 'stat'
-	
+
 					act 'Your turn':
 						*clr & cla
 						'<center><img <<$set_imgh>> src="images/locations/city/citycenter/mall/pool/sex/15.jpg"></center>'
@@ -258,7 +258,7 @@ if $ARGS[0] = '2':
 
 						gs 'arousal', 'cuni', 5, 'lesbian'
 						gs 'stat'
-	
+
 						act 'Lick her':
 							*clr & cla
 							'<center><img <<$set_imgh>> src="images/locations/city/citycenter/mall/pool/sex/16.jpg"></center>'
@@ -267,7 +267,7 @@ if $ARGS[0] = '2':
 							$orgasm_or = 'yes'
 							gs 'arousal', 'cuni', 5, 'lesbian'
 							gs 'stat'
-							
+
 							act 'Finish':gt 'billsvid', '3'
 						end
 					end
@@ -285,11 +285,11 @@ if $ARGS[0] = '3':
 
 	if $telsob = $loverdesc[lover_number]:
 		'When you have finished playing, <<$telsob>> looks at you and waits for your next move.'
-		act 'Say goodbye': gt 'torgcentr'
+		act 'Say goodbye': gt 'city_mall'
 		act 'Invite her to your home': gt 'lezbsex', 'startloverhome'
 	else
 		'When you have finished playing, <<$telsob>> says that she needs to run and leaves.'
-		act 'Leave': gt 'torgcentr'
+		act 'Leave': gt 'city_mall'
 	end
 end
 

+ 6 - 6
locations/blackmailer.qsrc

@@ -317,7 +317,7 @@ elseif $ARGS[0] = 'photo_dream2':
 			killvar '$temp_dream_text'
 			'The laughter around you grows, you are surrounded by a sea of people holding your picture and laughing at you.'
 			'Wading through the ocean of polaroids, you are ever confronted with the fact that you have lost the respect of your former friends.'
-			
+
 			gs 'dream_events', 'event_end'
 		end
 	else
@@ -573,7 +573,7 @@ if $ARGS[0] = 'police1':
 				'"Hmm, how did this person contact you?"'
 				'"He texted me."'
 				'You see a stark of hope flash through the officers eyes, if you could show us the texts we might be able to locate him."'
-				
+
 				if arrpos('$SMSContact', 'Blackmailer') >= 0:
 					act 'Show them the messages':
 						*clr & cla
@@ -726,7 +726,7 @@ if $ARGS[0] = 'set_SMSTree':
 						else
 							$SMSTree['b4'] = 'How much do you want before it stops?'
 						end
-	
+
 	$SMSTree['5'] = 'Just drop off the money'
 		$SMSTree['6'] = 'or else'
 
@@ -789,7 +789,7 @@ if $ARGS[0] = 'Add_SMS_repeat':
 		gs 'SMStext_builder', 'receive', $SMSTree['2']
 		gs 'SMStext_builder', 'receive', $SMSTree['3']
 		if blackmailQW['next_payment'] < 2000 and blackmailQW['total_payment'] < 5000:
-			gs 'SMStext_builder', 'add_reply', $SMSTree['a4'], 'blackmailer', 'sms_repeat_end1', $SMSTree['a4']
+			gs 'SMStext_builder', 'add_reply', $SMSTree['a4'], 'blackmailer', 'sms_repeat_end1', 'a4'
 		elseif blackmailQW['stage'] < 8 and blackmailQW['next_payment'] < 3000:
 			gs 'SMStext_builder', 'add_reply', $SMSTree['b4'], 'blackmailer', 'sms_repeat_switch1', 'a', $SMSTree['b4']
 		elseif blackmailQW['stage'] = 7:
@@ -842,7 +842,7 @@ if $ARGS[0] = 'sms_repeat_switch1':
 		else
 			gs 'SMStext_builder', 'send_selfie', $SMSTree['c12'], 'c|sw|u|n|b|sh|ft|fa|fp', 'blackmailer', 'sms_repeat_switch2'
 		end
-		if $ARGS[1] = 'b': 
+		if $ARGS[1] = 'b':
 			gs 'SMStext_builder', 'add_reply', $SMSTree['d12'], 'blackmailer', 'sms_repeat_switch3', 'd12'
 		elseif $ARGS[1] = 'c':
 			gs 'SMStext_builder', 'add_reply', $SMSTree['e12'], 'blackmailer', 'sms_repeat_switch5', 'e12'
@@ -899,7 +899,7 @@ if $ARGS[0] = 'sms_repeat_switch2':
 		gs 'SMStext_builder', 'show_sms', ARGS[1]
 
 		wait 250
-	
+
 		if blackmailQW['next_payment'] > 0:
 			gs 'SMStext_builder', 'receive', $SMSTree[$temp_path + '22']
 		else

+ 51 - 77
locations/body.qsrc

@@ -15,22 +15,19 @@
 !!bodyVars['bust_magic'] = set in body_shape for the fat moved to bust
 !!bodyVars['bust_other'] = other additions to bust-size, including breast creams
 !!
-!!salocatnow = the current category of pcs_mass['body']
-!!salocatlast = the previous category of pcs_mass['body']
 !!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 
+!!magtarcup = set in the dream code as the target cup size
 !!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
-!! bodset = body image and descriptor control variable, used to indicate which image and descriptor set is in use
-!! $bodimgsets[x] = body shape descriptors, tens place is the set (using bodset), 0 - 7 the descriptors (using salocatnow), 8 filler, 9 is the folder name
-!! bdsetlock = flag to indicate set control override, 0 is use the formula to pick a set, 1 is use a fixed set
-!! fixbodset = the identification number of the fixed image set
-!! bodsetcnt = the number of sets present
-!! imgset6ovr[x] and imgset7ovr[x] = a flag to indicate that an image set (x) has its own image 6 and/or 7
-!! extended lash functionality; pcs_lashes = n are: {2, largest natural size}, {3, with temporary false lashes on or basic 2D lash extensions}, {4, with ornate false lashes on or lavish 4D extensions}, {5, with extremely ornate, 6D-style extensions} - xerya
+!!	bodset = body image and descriptor control variable, used to indicate which image and descriptor set is in use
+!!	$bodimgsets[x] = body shape descriptors, tens place is the set (using bodset), 0 - 7 the descriptors, 8 filler, 9 is the folder name
+!!	bdsetlock = flag to indicate set control override, 0 is use the formula to pick a set, 1 is use a fixed set
+!!	fixbodset = the identification number of the fixed image set
+!!	bodsetcnt = the number of sets present
+!!	imgset6ovr[x] and imgset7ovr[x] = a flag to indicate that an image set (x) has its own image 6 and/or 7
+!!	extended lash functionality; pcs_lashes = n are: {2, largest natural size}, {3, with temporary false lashes on or basic 2D lash extensions}, {4, with ornate false lashes on or lavish 4D extensions}, {5, with extremely ornate, 6D-style extensions} - xerya
 
 
 !! Pregnancy weight gain:
@@ -73,7 +70,7 @@ if $ARGS[0] = 'UpdateBodyMeasurement':
 end
 
 if $ARGS[0] = 'CalcWeight':
-	!{pcs_weight: Svetas weight in kg 
+	!{pcs_weight: Svetas weight in kg
 	Optimal Weight (170cm): 60kg, 60 pcs_mass['body']
 	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.}
@@ -170,18 +167,17 @@ if $ARGS[0] = 'DailyUpdate':
 
 	gs 'AppearanceSystem', 'UpdateBaseAppearance'
 	gs 'body', 'Update_Appearance'
+	gs 'body', 'UpdateBodyImage'
 
 	!skin variable reset
 	killvar 'moisturizerDailyCount'
 	killvar 'skinDailyGain'
 	killvar 'skinDailyPenalty'
-	
 end
 
 if $ARGS[0] = 'Update_Appearance':
 	gs 'AppearanceSystem'
 	gs 'body_desc'
-	gs 'body', 'UpdateBodyImage'
 end
 
 
@@ -189,13 +185,10 @@ end
 
 if $ARGS[0] = 'UpdateBodyImage':
 	!Update body image set
-	if dounspell = 1:
-		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')
+	$bodyVars['img']      = func('body_structure', 'body_img')
 end
 
 
@@ -239,7 +232,7 @@ if $ARGS[0] = 'Update_Hair':
 	if pcs_haircol ! nathcol and dyefade > 0:
 		dyefade -= 1
 	end
-	
+
 	!! daily reduction of braids
 	if hbraids > 0: hbraids -= 1
 
@@ -324,6 +317,7 @@ end
 
 if $ARGS[0] = 'Update_Body':
 	gs 'body', 'Update_StatBuffs'
+	pcs_mass['body_last'] = pcs_mass['body']
 
 	!!pcs_mass['body'] Handling; the first part is because during a reset fat is not used and should be cleared
 	if bodyresetflag = 1 or cheatVars['fat'] = 1:
@@ -382,7 +376,6 @@ if $ARGS[0] = 'Update_Body':
 	gs 'body', 'Find_band_to_waist_ratio'
 	gs 'body', 'Find_hip_to_height_ratio'
 
-	salocatnow = func('body', 'Calc_salocat')
 	gs 'body', 'Redistribute_Mass'
 
 	!!This is if a Succubus has pcs_mass['body'] < 1
@@ -409,30 +402,25 @@ if $ARGS[0] = 'Update_Body':
 
 	gs 'body', 'Update_vhips'
 
-	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'] + pcs_mass['butt'] and pcs_mass['body'] + pcs_mass['butt'] <= (20 * (salocatnow - 1)) + 12:
-!		bodyVars['weight_warning'] = 1
-!	elseif salolast < pcs_mass['body'] + pcs_mass['butt'] and pcs_mass['body'] + pcs_mass['butt'] >= (20 * (salocatnow + 1)) - 12:
-!		bodyVars['weight_warning'] = 2
-!	end
-
-	if pcs_mass['body'] < pcs_mass['body_message'] - 5:
+	if pcs_mass['body'] <= pcs_mass['body_message'] - 6:
 		bodyVars['weight_warning'] = 1
 		pcs_mass['body_message'] = pcs_mass['body']
-	elseif pcs_mass['body'] > pcs_mass['body_message'] + 5:
+	elseif pcs_mass['body'] => pcs_mass['body_message'] + 6:
 		bodyVars['weight_warning'] = 2
 		pcs_mass['body_message'] = pcs_mass['body']
 	end
 
-
+	!!Setting the pcs_apprnc bonus based on fat and strength
+	temp_bmi = func('body', 'CalcBMI2')
+	pcs_bmi[0] = temp_bmi / 10
+	pcs_bmi[1] = temp_bmi mod 10
+	killvar 'temp_bmi'
 
 	!!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:
-		if tits < 10 and salolast < pcs_mass['body'] + pcs_mass['butt'] and pcs_mass['body'] + pcs_mass['butt'] >= (20 * (salocatnow + 1)) - 11:
+		if tits < 10 and pcs_mass['body'] > pcs_mass['body_last'] and pcs_bmi > 17:
 			if mgf2bnocnt < 3:
 				magf2bdo = 2
 			else
@@ -441,20 +429,6 @@ if $ARGS[0] = 'Update_Body':
 		end
 	end
 
-	!!This is to deal with the possibility that salocatnow changed by more than 1 (fat burners, vitamins, plastic surgery, etc.)
-	if salocatnow < salocatlast: salocatlast -= 1
-	if salocatnow > salocatlast: salocatlast += 1
-
-	!!This is for use in the warning code and as part of the reset routines
-	if salolast > pcs_mass['body'] + pcs_mass['butt']: salolast -= 1
-	if salolast < pcs_mass['body'] + pcs_mass['butt']: salolast += 1
-
-	!!Setting the pcs_apprnc bonus based on fat and strength
-	temp_bmi = func('body', 'CalcBMI2')
-	pcs_bmi[0] = temp_bmi / 10
-	pcs_bmi[1] = temp_bmi mod 10
-	killvar 'temp_bmi'
-
 	!!This is to clean up unused variables
 	killvar 'normbuffpick'
 	killvar 'nrmbfpckct'
@@ -584,6 +558,7 @@ elseif $ARGS[0] = 'Find_hip_to_height_ratio':
 	killvar 'temp_hratio'
 end
 
+!! Depricated
 if $ARGS[0] = 'Calc_salocat':
 	!!This calculates the current pcs_mass['body'] category; ranges are 20 points, seemed to balance best if the range is x10 the hip devisor
 	if pcs_mass['body'] + pcs_mass['butt'] < 10:
@@ -625,18 +600,8 @@ if $ARGS[0] = 'Redistribute_Mass':
 
 			if bodyVars['bust_magic'] >= 2 + magtarcup * 5: magf2bdo = 0
 			pcs_mana -= max(100, 2000 / pcs_magik)
-		
-		!! Old content
-		!{
-		elseif salocatnow < salocatlast:
-			if magikDostup = 0 and bodyVars['bust_magic'] > 0 and salocatnow < 2:
-				bodyVars['bust_magic'] -= 1
-				pcs_mass['body'] += 3
-				magf2bdo = 1
-			end
-		}
 		end
-		
+
 		!!===============    Low Weight    ===============!!
 		if pcs_mass['body'] < 10:
 			temp_diff = min(pcs_mass['bust'], 3)
@@ -659,7 +624,7 @@ if $ARGS[0] = 'Redistribute_Mass':
 				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
 
@@ -683,7 +648,7 @@ if $ARGS[0] = 'Redistribute_Mass':
 				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
 
@@ -778,10 +743,10 @@ if $ARGS[0] = 'Reset_mass_distribution':
 	pcs_mass['butt_message'] = pcs_mass['butt']
 	pcs_mass['body_message'] = pcs_mass['body']
 
+	bodyVars['vhips'] = (pcs_mass['body'] + pcs_mass['butt'] - 80) / 2
+
 	killvar 'total_mass'
 	killvar 'total_gen_mass'
-
-	gs 'body', 'Update_vhips'
 end
 
 if $ARGS[0] = 'Reset_preg_mass':
@@ -807,9 +772,27 @@ if $ARGS[0] = 'Set_mass_distribution_using_body':
 	end
 	bodyVars['vhips'] = (pcs_mass['body'] + pcs_mass['butt'] - 80) / 2
 
+	pcs_mass['body_message'] = pcs_mass['body']
 	pcs_mass['bust_message'] = pcs_mass['bust']
 	pcs_mass['butt_message'] = pcs_mass['butt']
-	pcs_mass['body_message'] = pcs_mass['body']
+
+	if dounspell = 0:
+		temp_weight = func('body', 'CalcWeight2')
+		pcs_weight[0] = temp_weight / 10
+		pcs_weight[1] = temp_weight mod 10
+
+		temp_bmi = func('body', 'CalcBMI2')
+		pcs_bmi[0] = temp_bmi / 10
+		pcs_bmi[1] = temp_bmi mod 10
+
+		killvar 'temp_weight'
+		killvar 'temp_bmi'
+	end
+
+	gs 'body', 'Update_vhips'
+	gs 'AppearanceSystem', 'UpdateBaseAppearance'
+	gs 'body', 'Update_Appearance'
+	gs 'body', 'UpdateBodyImage'
 end
 
 
@@ -834,13 +817,13 @@ if $ARGS[0] = 'Update_vhips':
 	!! Varies between 0 and 25 to 30 ish range
 	!bodyVars['butt_bonus'] = max(0, pcs_mass['butt'] - max(0, bodyVars['vhips']))
 	bodyVars['butt_bonus'] = (pcs_mass['butt'] - 20) / 3
-	
+
 	!! temp_vhips2 = vhips + (pcs_hgt * bodyVars['hratio'])/100 - (pcs_hgt * 72)/100
 	!! temp_vhips2 = pcs_hips - (pcs_hgt * 72) / 1000
 	temp_vhips2 = vhips - (pcs_hgt * (72 - bodyVars['hratio'])) / 100
 	bodyVars['vofat'] = max(0, temp_vhips2 / 2)
 	bodyVars['vhips'] -= 2 * bodyVars['vofat']
-	
+
 	!! vhips = vhips - max(0, temp_vhips2)
 	!! vhips = vhips || vhips = (pcs_hgt * (72 - bodyVars['hratio'])) / 100
 
@@ -891,8 +874,9 @@ end
 if $ARGS[0] = 'softreset':
 	!!This is for use in immediately updating shape if something has caused a large change in pcs_mass['body'], primarily fat burners and plastic surgery
 	bodyresetflag = 1
+	body_sr_counter = 0
 	:resetloop
-	if pcs_mass['body'] + pcs_mass['butt'] ! salolast:
+	if body_sr_counter < 10 and pcs_mass['body'] ! pcs_mass['body_last']:
 		if gamestartflag = 1:
 			salobustdo = 1
 		end
@@ -929,14 +913,6 @@ if $ARGS[0] = 'hardreset':
 		gs 'body', 'Update_Body'
 
 		pcs_mass['body'] = 60 + (2 * pcs_hips) - (pcs_hgt * bodyVars['hratio']) / 50
-		if pcs_mass['body'] + pcs_mass['butt'] < 10:
-			salocatnow = 0
-		else
-			salocatnow = 1 + (pcs_mass['body'] + pcs_mass['butt'] - 10) / 20
-		end
-
-		salocatlast = salocatnow
-		salolast = pcs_mass['body'] + pcs_mass['butt']
 
 		if pcs_mass['butt_gen'] = 0:
 			pcs_mass['butt_gen'] = 20
@@ -1011,8 +987,6 @@ if $ARGS[0] = 'initial':
 	gs 'body', 'softreset'
 
 	!!	This sets/resets the controler variables
-	salocatnow = func('body', 'Calc_salocat')
-	salocatlast = salocatlast
 	normbuffpick = 0
 	magf2bdo = 0
 	killvar 'gamestartflag'
@@ -1024,8 +998,8 @@ if $ARGS[0] = 'initial':
 	pcs_bmi[1] = temp_bmi mod 10
 	killvar 'temp_bmi'
 
-	gs 'body', 'UpdateBodyImage'
 	gs 'body', 'Update_Appearance'
+	gs 'body', 'UpdateBodyImage'
 end
 
 

+ 34 - 68
locations/body_desc.qsrc

@@ -194,57 +194,44 @@ if $ARGS[0] = 'breasts':
 	!! more noticeable on a thinner body than a heavier one. I have experimented with moving where the silicone is factored in to the body shape calculations, but ultimately there is just no better way to do it than how it is now, given the things that increase the amount
 	!! of silicone in the PC body. The best kludge I can make is working off of stored fat (pcs_weight does actually not do the job at all, as a fat PC and thin PC are almost the same, oddly, in my tests) and making an approximation from there. The amount of the silicone
 	!! variable does not really equate to any particular real-life cc calculation for implant size, so we cannot go off of that. This will have to do for now.
-	pcs_bustdisparity = (bodyVars['bust_silicone']/10) - salocatnow
+	pcs_bustdisparity = (bodyVars['bust_silicone'] - pcs_mass['bust']) / 10
 
-	if pcs_bustdisparity >=1 and pcs_bustdisparity < 2:
-		$pcdesc_breastsqualifierinsertive = ''
-		$pcdesc_breastsword = 'bolt-ons'
-		pcdesc_breastimplantcheck = 1
-	elseif pcs_bustdisparity >= 2 and pcs_bustdisparity < 3:
-		$pcdesc_breastsqualifierinsertive = ', semi-spherical'
-		$pcdesc_breastsword = 'bolt-ons'
-		pcdesc_breastimplantcheck = 1
-	elseif pcs_bustdisparity >= 3 and pcs_bustdisparity < 4:
-		$pcdesc_breastsqualifierinsertive = ', firm and round'
-		$pcdesc_breastsword = 'bolt-ons'
-		pcdesc_breastimplantcheck = 1
-	!! Already we are about as far as a normal, non-fetishistic human being would get -- the maximum size of implant, the XXL, results in 40 silicone, and an extremely thin and well-kept PC will have a minimum salocatnow of 1.
-	!! That means that anything below this line means it was a very intentional move toward sexual objectification, as it could only come from fillable or string implants (and on a thin frame, no less), so we can take some liberties.
-	elseif pcs_bustdisparity >= 4 and pcs_bustdisparity < 5:
-		$pcdesc_breastsqualifierinsertive = ', clearly man-made'
-		$pcdesc_breastsword = 'bolt-ons'
-		pcdesc_breastimplantcheck = 1
-	elseif pcs_bustdisparity >= 5 and pcs_bustdisparity < 6:
-		$pcdesc_breastsqualifierinsertive = ', plastic fuckdoll'
-		$pcdesc_breastsword = 'bolt-ons'
-		pcdesc_breastimplantcheck = 1
-	elseif pcs_bustdisparity >= 6 and pcs_bustdisparity < 7:
-		$pcdesc_breastsqualifierinsertive = ', walking fucktoy'
-		$pcdesc_breastsword = 'bolt-ons'
-		pcdesc_breastimplantcheck = 1
-	elseif pcs_bustdisparity >= 7 and pcs_bustdisparity < 8:
-		$pcdesc_breastsqualifierinsertive = ', laughably overdone fuckdoll'
-		$pcdesc_breastsword = 'bolt-ons'
-		pcdesc_breastimplantcheck = 1
-	elseif pcs_bustdisparity >= 8:
-		$pcdesc_breastsqualifierinsertive = ', <<$pc_descWordy[''hair colour'']>> overdone fuckdoll'
-		$pcdesc_breastsword = 'bolt-ons'
+	$pcdesc_breastsqualifierinsertive = ''
+	!! For all-natural PCs.
+	if bodyVars['bust_silicone'] <= 0:
+		pcdesc_breastimplantcheck = 0
+	else
 		pcdesc_breastimplantcheck = 1
-	!! This triggers if they have fake breasts, but they are not obviously, blatantly fake breasts. In fact, this should be what triggers most of the time with a PC who has implants, given average cases.
-	elseif pcs_bustdisparity < 1 and bodyVars['bust_silicone'] > 0:
+	end
+
+
+	if pcs_bustdisparity <= 0:
+		!! This triggers if they have natural breasts, or fake breasts but they are not obviously, blatantly fake breasts.
+		!! In fact, this should be what triggers most of the time with a PC who has implants, given average cases.
 		if pcs_cupsize <= 30:
 			$pcdesc_breastsword = 'breasts'
 		else
 			$pcdesc_breastsword = 'tits'
 		end
-		$pcdesc_breastsqualifierinsertive = ''
-		pcdesc_breastimplantcheck = 1
-	!! For all-natural PCs.
 	else
-		if pcs_cupsize <= 30:$pcdesc_breastsword = 'breasts'
-		if pcs_cupsize > 30:$pcdesc_breastsword = 'tits'
-		$pcdesc_breastsqualifierinsertive = ''
-		pcdesc_breastimplantcheck = 0
+		$pcdesc_breastsword = 'bolt-ons'
+		if pcs_bustdisparity = 2:
+			$pcdesc_breastsqualifierinsertive = ', semi-spherical'
+		elseif pcs_bustdisparity = 3:
+			$pcdesc_breastsqualifierinsertive = ', firm and round'
+		!! Already we are about as far as a normal, non-fetishistic human being would get -- the maximum size of implant, the XXL, results in 40 silicone, and an extremely thin and well-kept PC will have a minimum pcs_mass['bust'] of 1.
+		!! That means that anything below this line means it was a very intentional move toward sexual objectification, as it could only come from fillable or string implants (and on a thin frame, no less), so we can take some liberties.
+		elseif pcs_bustdisparity = 4:
+			$pcdesc_breastsqualifierinsertive = ', clearly man-made'
+		elseif pcs_bustdisparity = 5:
+			$pcdesc_breastsqualifierinsertive = ', plastic fuckdoll'
+		elseif pcs_bustdisparity = 6:
+			$pcdesc_breastsqualifierinsertive = ', walking fucktoy'
+		elseif pcs_bustdisparity = 7:
+			$pcdesc_breastsqualifierinsertive = ', laughably overdone fuckdoll'
+		elseif pcs_bustdisparity >= 8:
+			$pcdesc_breastsqualifierinsertive = ', <<$pc_descWordy[''hair colour'']>> overdone fuckdoll'
+		end
 	end
 
 	!! These will not be used below, but can be referenced by descriptive writers in case they want to be able to quickly reference whether or not the PC has implants, as in "He reaches up and cups your<<$pcdesc_breastsfakeinsertive>> breasts."
@@ -388,27 +375,12 @@ if $ARGS[0] = 'breasts':
 end
 
 if $ARGS[0] = 'butt':
-	if 1:
-		!natural butt
-		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 <= 29:
-			$pcs_butt = 'You have an average, feminine looking <a href="exec:view''images/pc/body/ass/2.jpg''">ass</a>.'
-		elseif pcs_butt <= 44:
-			$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
+	!have butt implant
+	if bodyVars['butt_silicone'] > 0:
+		$pcs_butt = 'Through the use of implants, you have given yourself a jiggly bubble <a href="exec:view''images/pc/body/ass/9s.jpg''">butt</a>.'
 
-		!have butt implant
-		if bodyVars['butt_silicone'] > 0:
-			buttpic = 4
-			$pcs_butt = 'Through the use of implants, you have given yourself a jiggly bubble <a href="exec:view''images/pc/body/ass/4.jpg''">butt</a>.'
-		end
+	!natural butt
 	else
-		!natural butt
 		if pcs_butt <= 7:
 			$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 <= 14:
@@ -428,12 +400,6 @@ if $ARGS[0] = 'butt':
 		else
 			$pcs_butt = 'You have a large bubble <a href="exec:view''images/pc/body/ass/9.jpg''">butt</a> that jiggles and sways as you walk.'
 		end
-
-		!have butt implant
-		if bodyVars['butt_silicone'] > 0:
-			buttpic = 4
-			$pcs_butt = 'Through the use of implants, you have given yourself a jiggly bubble <a href="exec:view''images/pc/body/ass/9s.jpg''">butt</a>.'
-		end
 	end
 end
 

+ 277 - 105
locations/body_structure.qsrc

@@ -196,6 +196,104 @@ if $ARGS[0] = 'appearance_bonus':
 end
 
 
+if $ARGS[0] = 'Body_img_totals':
+	if ARGS[1] = 0:
+		result = 1
+	elseif ARGS[1] = 100:
+		result = 4
+	elseif ARGS[1] = 106:
+		result = 3
+	elseif ARGS[1] = 200:
+		result = 3
+	elseif ARGS[1] = 206:
+		result = 4
+	elseif ARGS[1] = 207:
+		result = 2
+	elseif ARGS[1] = 208:
+		result = 1
+	elseif ARGS[1] = 210:
+		result = 1
+	elseif ARGS[1] = 213:
+		result = 1
+	elseif ARGS[1] = 215:
+		result = 1
+	elseif ARGS[1] = 300:
+		result = 4
+	elseif ARGS[1] = 306:
+		result = 3
+	elseif ARGS[1] = 307:
+		result = 1
+	elseif ARGS[1] = 400:
+		result = 2
+	elseif ARGS[1] = 406:
+		result = 3
+	elseif ARGS[1] = 500:
+		result = 3
+	elseif ARGS[1] = 506:
+		result = 2
+	elseif ARGS[1] = 600:
+		result = 1
+	elseif ARGS[1] = 700:
+		result = 1
+	elseif ARGS[1] = 800:
+		result = 1
+	else
+		result = 0
+	end
+end
+
+if $ARGS[0] = 'Body_img_transform':
+	if ARGS[1] < 100:
+		result = 0
+	elseif ARGS[1] < 106:
+		result = 100
+	elseif ARGS[1] < 200:
+		result = 106
+	elseif ARGS[1] < 206:
+		result = 200
+	elseif ARGS[1] = 206:
+		result = 206
+	elseif ARGS[1] = 207:
+		result = 207
+	elseif ARGS[1] < 210:
+		result = 208
+	elseif ARGS[1] < 213:
+		result = 210
+	elseif ARGS[1] < 215:
+		result = 213
+	elseif ARGS[1] < 300:
+		result = 215
+	elseif ARGS[1] < 306:
+		result = 300
+	elseif ARGS[1] = 306:
+		result = 306
+	elseif ARGS[1] = 307:
+		result = 307
+	elseif ARGS[1] < 310:
+		result = 208
+	elseif ARGS[1] < 313:
+		result = 210
+	elseif ARGS[1] < 315:
+		result = 213
+	elseif ARGS[1] < 400:
+		result = 215
+	elseif ARGS[1] < 406:
+		result = 400
+	elseif ARGS[1] < 500:
+		result = 406
+	elseif ARGS[1] < 506:
+		result = 500
+	elseif ARGS[1] < 600:
+		result = 506
+	elseif ARGS[1] < 700:
+		result = 600
+	elseif ARGS[1] < 800:
+		result = 700
+	else
+		result = 800
+	end
+end
+
 !	Get the body shape image
 !	$bodyVars['img'] = func('body_structure', 'body_img', pcs_bmi, strenbuf, PregChem)
 if $ARGS[0] = 'body_img':
@@ -203,119 +301,193 @@ if $ARGS[0] = 'body_img':
 	if arrsize('ARGS') = 2: ARGS[2] = strenbuf
 	if arrsize('ARGS') = 3: ARGS[3] = PregChem
 
-	! =======      Pregnant       ======= !
-	if bdsetlock = 0 and (knowpreg = 1 or (preg = 1 and (thinkpreg = 1 or ARGS[3] > 3600))):
-		if ARGS[3] <= 2687:
-			$result = 'images/pc/body/shape/default_preg/0.jpg'
-		elseif ARGS[3] <= 6215:
-			$result = 'images/pc/body/shape/default_preg/<<((ARGS[3] - 2184)/504)>>.jpg'
-		else
-			$result = 'images/pc/body/shape/default_preg/8.jpg'
-		end
-		exit
-	end
 
-
-	bs_temp_bs_class = func('body_structure', 'get_class', ARGS[1], ARGS[2])
-
-	if bdsetlock = 1:
-		if fixbodset = 0:
-			bs_temp_bs_class = 100 * (bs_temp_bs_class / 100) + 4
-		elseif fixbodset = 1:
-			bs_temp_bs_class = 100 * (bs_temp_bs_class / 100) + 6
-		elseif fixbodset = 2:
-			bs_temp_bs_class = 100 * (bs_temp_bs_class / 100) + 8
-		else
-			$result = func('body_structure', 'custom_body_img', bs_temp_bs_class)
-			killvar 'bs_temp_bs_class'
+	if 1:
+		! =======      Pregnant       ======= !
+		if bdsetlock = 0 and (knowpreg = 1 or (preg = 1 and (thinkpreg = 1 or ARGS[3] > 3600))):
+			if ARGS[3] <= 2687:
+				$result = 'images/pc/body/shape/default_preg/0.jpg'
+			elseif ARGS[3] <= 6215:
+				$result = 'images/pc/body/shape/default_preg/<<((ARGS[3] - 2184)/504)>>.jpg'
+			else
+				$result = 'images/pc/body/shape/default_preg/8.jpg'
+			end
 			exit
 		end
-	end
-
 
-	! =======      starving       ======= !
-	! -----           bmi < 16      ----- !
-	if bs_temp_bs_class <= 17:
-		!	0 <= strenbuf <= 200
-		$result = 'images/pc/body/shape/0.jpg'
-
-	! =======     underweight     ======= !
-	! -----     16 <= bmi < 19      ----- !
-	elseif bs_temp_bs_class <= 105:
-		!	0 <= strenbuf <= 50
-		$result = 'images/pc/body/shape/default_low/1.jpg'
-	elseif bs_temp_bs_class <= 107:
-		!	51 <= strenbuf <= 100
-		$result = 'images/pc/body/shape/default_mid/1.jpg'
-	elseif bs_temp_bs_class <= 117:
-		!	101 <= strenbuf <= 200
-		$result = 'images/pc/body/shape/default_high/1.jpg'
-
-	! =======       slender       ======= !
-	! -----     19 <= bmi < 21      ----- !
-	elseif bs_temp_bs_class <= 205:
-		!	0 <= strenbuf <= 50
-		$result = 'images/pc/body/shape/default_low/2.jpg'
-	elseif bs_temp_bs_class <= 207:
-		!	51 <= strenbuf <= 100
-		$result = 'images/pc/body/shape/default_mid/2.jpg'
-	elseif bs_temp_bs_class <= 217:
-		!	101 <= strenbuf <= 200
-		$result = 'images/pc/body/shape/default_high/2.jpg'
+		bs_temp_bs_class = func('body_structure', 'get_class', ARGS[1], ARGS[2])
+
+		if bdsetlock = 1:
+			if fixbodset = 0:
+				bs_temp_bs_class = 100 * (bs_temp_bs_class / 100) + 2
+			elseif fixbodset = 1:
+				bs_temp_bs_class = 100 * (bs_temp_bs_class / 100) + 6
+			elseif fixbodset = 2:
+				bs_temp_bs_class = 100 * (bs_temp_bs_class / 100) + 8
+			else
+				$result = func('body_structure', 'custom_body_img', bs_temp_bs_class)
+				killvar 'bs_temp_bs_class'
+				exit
+			end
+		end
 
-	! =======       healthy       ======= !
-	! -----     21 <= bmi < 25      ----- !
-	elseif bs_temp_bs_class <= 305:
-		!	0 <= strenbuf <= 50
-		$result = 'images/pc/body/shape/default_low/3.jpg'
-	elseif bs_temp_bs_class <= 307:
-		!	51 <= strenbuf <= 100
-		$result = 'images/pc/body/shape/default_mid/3.jpg'
-	elseif bs_temp_bs_class <= 317:
-		!	101 <= strenbuf <= 200
-		$result = 'images/pc/body/shape/default_high/3.jpg'
+		$result = 'images/pc/body/shape/'
+		! =======      starving       ======= !
+		! -----           bmi < 16      ----- !
+		if bs_temp_bs_class <= 17:
+			!	0 <= strenbuf <= 200
+			$result += '0.jpg'
+
+		! =======     underweight     ======= !
+		! -----     16 <= bmi < 19      ----- !
+		elseif bs_temp_bs_class <= 105:
+			!	0 <= strenbuf <= 50
+			$result += 'default_low/1.jpg'
+		elseif bs_temp_bs_class <= 107:
+			!	51 <= strenbuf <= 100
+			$result += 'default_mid/1.jpg'
+		elseif bs_temp_bs_class <= 117:
+			!	101 <= strenbuf <= 200
+			$result += 'default_high/1.jpg'
+
+		! =======       slender       ======= !
+		! -----     19 <= bmi < 21      ----- !
+		elseif bs_temp_bs_class <= 205:
+			!	0 <= strenbuf <= 50
+			$result += 'default_low/2.jpg'
+		elseif bs_temp_bs_class <= 207:
+			!	51 <= strenbuf <= 100
+			$result += 'default_mid/2.jpg'
+		elseif bs_temp_bs_class <= 217:
+			!	101 <= strenbuf <= 200
+			$result += 'default_high/2.jpg'
+
+		! =======       healthy       ======= !
+		! -----     21 <= bmi < 25      ----- !
+		elseif bs_temp_bs_class <= 305:
+			!	0 <= strenbuf <= 50
+			$result += 'default_low/3.jpg'
+		elseif bs_temp_bs_class <= 307:
+			!	51 <= strenbuf <= 100
+			$result += 'default_mid/3.jpg'
+		elseif bs_temp_bs_class <= 317:
+			!	101 <= strenbuf <= 200
+			$result += 'default_high/3.jpg'
+
+		! =======     overweight      ======= !
+		! -----     26 <= bmi < 30      ----- !
+		elseif bs_temp_bs_class <= 405:
+			!	0 <= strenbuf <= 50
+			$result += 'default_low/4.jpg'
+		elseif bs_temp_bs_class <= 407:
+			!	51 <= strenbuf <= 100
+			$result += 'default_mid/4.jpg'
+		elseif bs_temp_bs_class <= 417:
+			!	101 <= strenbuf <= 200
+			$result += 'default_high/4.jpg'
+
+		! =======  moderately obese   ======= !
+		! -----     30 <= bmi < 35      ----- !
+		elseif bs_temp_bs_class <= 505:
+			!	0 <= strenbuf <= 50
+			$result += 'default_low/5.jpg'
+		elseif bs_temp_bs_class <= 507:
+			!	51 <= strenbuf <= 100
+			$result += 'default_mid/5.jpg'
+		elseif bs_temp_bs_class <= 517:
+			!	101 <= strenbuf <= 200
+			$result += 'default_high/5.jpg'
+
+		! =======   severely obese    ======= !
+		! -----     35 <= bmi < 40      ----- !
+		elseif bs_temp_bs_class <= 617:
+			!	0 <= strenbuf <= 200
+			$result += '6.jpg'
+
+		! ======= very severely obese ======= !
+		! -----     40 <= bmi < 45      ----- !
+		elseif bs_temp_bs_class <= 717:
+			!	0 <= strenbuf <= 200
+			$result += '7.jpg'
+
+		! =======   morbidly obese    ======= !
+		! -----     45 <= bmi           ----- !
+		else
+			!	0 <= strenbuf <= 200
+			!$result = 'images/pc/body/shape/8.jpg'
+			$result += '7.jpg'
+		end
 
-	! =======     overweight      ======= !
-	! -----     26 <= bmi < 30      ----- !
-	elseif bs_temp_bs_class <= 405:
-		!	0 <= strenbuf <= 50
-		$result = 'images/pc/body/shape/default_low/4.jpg'
-	elseif bs_temp_bs_class <= 407:
-		!	51 <= strenbuf <= 100
-		$result = 'images/pc/body/shape/default_mid/4.jpg'
-	elseif bs_temp_bs_class <= 417:
-		!	101 <= strenbuf <= 200
-		$result = 'images/pc/body/shape/default_high/4.jpg'
+	else
+		! =======      Pregnant       ======= !
+		if bdsetlock = 0 and (knowpreg = 1 or (preg = 1 and (thinkpreg = 1 or ARGS[3] > 3600))):
+			if ARGS[3] <= 2687:
+				$result = 'images/pc/body/shape/preg/0/0.jpg'
+			elseif ARGS[3] <= 6215:
+				$result = 'images/pc/body/shape/preg/0/<<((ARGS[3] - 2184)/504)>>.jpg'
+			else
+				$result = 'images/pc/body/shape/preg/0/8.jpg'
+			end
+			exit
+		end
 
-	! =======  moderately obese   ======= !
-	! -----     30 <= bmi < 35      ----- !
-	elseif bs_temp_bs_class <= 505:
-		!	0 <= strenbuf <= 50
-		$result = 'images/pc/body/shape/default_low/5.jpg'
-	elseif bs_temp_bs_class <= 507:
-		!	51 <= strenbuf <= 100
-		$result = 'images/pc/body/shape/default_mid/5.jpg'
-	elseif bs_temp_bs_class <= 517:
-		!	101 <= strenbuf <= 200
-		$result = 'images/pc/body/shape/default_high/5.jpg'
+		bs_temp_bs_class = func('body_structure', 'get_class', ARGS[1], ARGS[2])
+
+		if bdsetlock = 1:
+			if fixbodset = 0:
+				bs_temp_bs_class = 100 * (bs_temp_bs_class / 100) + 2
+			elseif fixbodset = 1:
+				bs_temp_bs_class = 100 * (bs_temp_bs_class / 100) + 6
+			elseif fixbodset = 2:
+				bs_temp_bs_class = 100 * (bs_temp_bs_class / 100) + 8
+			else
+				$result = func('body_structure', 'custom_body_img', bs_temp_bs_class)
+				killvar 'bs_temp_bs_class'
+				exit
+			end
+		end
 
-	! =======   severely obese    ======= !
-	! -----     35 <= bmi < 40      ----- !
-	elseif bs_temp_bs_class <= 617:
-		!	0 <= strenbuf <= 200
-		$result = 'images/pc/body/shape/6.jpg'
+		$result = 'images/pc/body/shape/'
+
+		bs_temp_bs_class = func('body_structure', 'Body_img_transform', bs_temp_bs_class)
+		gs 'body_structure', 'Body_img_totals'
+		if bs_temp_bs_class < 100:
+			$result += '0_starving/'
+		elseif bs_temp_bs_class < 200:
+			$result += '1_underweight/'
+		elseif bs_temp_bs_class < 300:
+			$result += '2_slender/'
+		elseif bs_temp_bs_class < 400:
+			$result += '3_healthy/'
+		elseif bs_temp_bs_class < 500:
+			$result += '4_overweight/'
+		elseif bs_temp_bs_class < 600:
+			$result += '5_modobese/'
+		elseif bs_temp_bs_class < 700:
+			$result += '6_sevobese/'
+		elseif bs_temp_bs_class < 800:
+			$result += '7_vsevobese/'
+		else
+			$result += '8_morobese/'
+		end
 
-	! ======= very severely obese ======= !
-	! -----     40 <= bmi < 45      ----- !
-	elseif bs_temp_bs_class <= 717:
-		!	0 <= strenbuf <= 200
-		$result = 'images/pc/body/shape/7.jpg'
+		if bs_temp_bs_class mod 100 = 0:
+			$result += '0_low_'
+		elseif bs_temp_bs_class mod 100 = 6:
+			$result += '6_mid_'
+		elseif bs_temp_bs_class mod 100 = 7:
+			$result += '7_high_'
+		elseif bs_temp_bs_class mod 100 = 8:
+			$result += '8_strong_'
+		elseif bs_temp_bs_class mod 100 = 10:
+			$result += '10_vstrong_'
+		elseif bs_temp_bs_class mod 100 = 13:
+			$result += '13_bb_'
+		elseif bs_temp_bs_class mod 100 = 15:
+			$result += '15_hulk_'
+		end
 
-	! =======   morbidly obese    ======= !
-	! -----     45 <= bmi           ----- !
-	else
-		!	0 <= strenbuf <= 200
-		$result = 'images/pc/body/shape/8.jpg'
+		$result += '<<rand(0, func(''body_structure'', ''Body_img_totals'', bs_temp_bs_class)-1)>>.jpg'
 	end
 
 	killvar 'bs_temp_bs_class'
@@ -387,7 +559,7 @@ if $ARGS[0] = 'body_desc':
 		$result = 'wiry'
 
 	! =======       slender       ======= !
-	! -----     19 <= bmi < 21      ----- !
+	! -----     19 <= bmi < 22      ----- !
 	elseif bs_temp_bs_class <= 205:
 		!	0 <= strenbuf <= 50
 		$result = 'slender'
@@ -399,7 +571,7 @@ if $ARGS[0] = 'body_desc':
 		$result = 'lean'
 
 	! =======       healthy       ======= !
-	! -----     21 <= bmi < 25      ----- !
+	! -----     22 <= bmi < 25      ----- !
 	elseif bs_temp_bs_class <= 305:
 		!	0 <= strenbuf <= 50
 		$result = 'healthy'

+ 10 - 10
locations/booty_call.qsrc

@@ -43,7 +43,7 @@ if $ARGS[0] = 'sugar_daddy_scheduler2':
 !!		if (rand(1,10) <= npc_sexdrive[$FuckBuddy[i]] or npc_booty_call[$sugar_daddy[i]] = daystart) and npc_no_booty_call[$sugar_daddy[i]] ! daystart and (npc_big_fight[$sugar_daddy[i]] < daystart - 7 and daystart > 7):
 		if npc_sugar_daddy_timer[$sugar_daddy[i]] - (npc_rel[$sugar_daddy[i]] / 10) > daystart:
 			npc_no_booty_call[$sugar_daddy[i]] = daystart
-			
+
 		elseif (npc_booty_call_date[$sugar_daddy[i]] = daystart or rand(1,10) <= npc_sexdrive[$sugar_daddy[i]] or rand(1,100) <= npc_rel[$sugar_daddy[i]]) and npc_no_booty_call[$sugar_daddy[i]] ! daystart:
 			sugar_daddy_call[$sugar_daddy[i]] = 1
 			gs 'booty_call', 'sugar_daddy_scheduler3'
@@ -79,9 +79,9 @@ if $ARGS[0] = 'sugar_daddy_scheduler3':
 	end
 end
 
-!!	if npc_start_free_time[$FuckBuddy[i]] = 0 or npc_day_off[$FuckBuddy[i]] = 0 or npc_end_free_time[$FuckBuddy[i]] = 0: 
+!!	if npc_start_free_time[$FuckBuddy[i]] = 0 or npc_day_off[$FuckBuddy[i]] = 0 or npc_end_free_time[$FuckBuddy[i]] = 0:
 !!		$boy = $FuckBuddy[i]
-		
+
 !!	end
 
 !!		if ((rand(1,10) <= npc_sexdrive[$FuckBuddy[i]] or npc_booty_call[$FuckBuddy[i]] = daystart) and (rand(1,npc_rel[$FuckBuddy[i]]) > 0)) and npc_no_booty_call[$FuckBuddy[i]] ! daystart and npc_big_fight[$FuckBuddy[i]] < daystart - 7:
@@ -288,7 +288,7 @@ if $ARGS[0] = 'text1':
 		elseif booty_call['text'] = 3:
 			'	<b><font color="blue">fucking you on my bed</font></b>'
 		end
-		gs 'booty_call_start', 'text2'
+		gs 'booty_call', 'text2'
 	end
 
 	act'Me too':
@@ -385,7 +385,7 @@ if $ARGS[0] = 'invite_yourself1':
 			'<b><font color="pink">this is a booty call</font></b>'
 			'	<b><font color="blue">ill probably be free at 19:00</font></b>'
 			'	<b><font color="blue">wanna come then?</font></b>'
-			gs 'booty_call_start', 'invite_yourself2'
+			gs 'booty_call', 'invite_yourself2'
 		end
 
 		act'I wanna fuck':
@@ -394,7 +394,7 @@ if $ARGS[0] = 'invite_yourself1':
 			'<b><font color="pink">when do you get off?</font></b>'
 			'	<b><font color="blue">ill probably be free at 19:00</font></b>'
 			'	<b><font color="blue">wanna come then?</font></b>'
-			gs 'booty_call_start', 'invite_yourself2'
+			gs 'booty_call', 'invite_yourself2'
 		end
 	else
 		'	<b><font color="blue">i was thinking about your naked body in my bed</font></b>'
@@ -492,13 +492,13 @@ if $ARGS[0] = 'fb_npc_stat_update':
 			if rand(1,2) = 1:
 				npc_start_free_time[$npclastgenerated] = 8
 				npc_end_free_time[$npclastgenerated] = 12
-				
+
 				npc_work_start[$npclastgenerated] = 13
 				npc_work_end[$npclastgenerated] = 21
 			else
 				npc_start_free_time[$npclastgenerated] = 18
 				npc_end_free_time[$npclastgenerated] = 22
-				
+
 				npc_work_start[$npclastgenerated] = 9
 				npc_work_end[$npclastgenerated] = 17
 			end
@@ -537,13 +537,13 @@ if $ARGS[0] = 'sd_npc_stat_update':
 			if rand(1,2) = 1:
 				npc_start_free_time[$npclastgenerated] = 8
 				npc_end_free_time[$npclastgenerated] = 12
-				
+
 				npc_work_start[$npclastgenerated] = 13
 				npc_work_end[$npclastgenerated] = 21
 			else
 				npc_start_free_time[$npclastgenerated] = 18
 				npc_end_free_time[$npclastgenerated] = 22
-				
+
 				npc_work_start[$npclastgenerated] = 9
 				npc_work_end[$npclastgenerated] = 17
 			end

+ 5 - 5
locations/bouling.qsrc

@@ -13,7 +13,7 @@ if $ARGS[0] = 'start' or $ARGS[0] = '':
 	'<center><b>Bowling</b></center>'
 	'<center><img <<$set_imgh>> src="images/locations/city/citycenter/mall/bowling/boul.jpg"></center>'
 
-	act 'Leave':gt 'torgcentr'
+	act 'Leave': gt 'city_mall'
 
 	if hour >= 8 and hour <= 20 and money >= 300:
 		act 'Play (300 <b>₽</b>) (1:00)':
@@ -29,9 +29,9 @@ if $ARGS[0] = 'start' or $ARGS[0] = '':
 			$boy[1] = $npclastgenerated
 			$boydesc[1] = $npc_usedname[$npclastgenerated]
 			gs 'stat'
-				
+
 			act 'Leave': gt 'bouling'
-				
+
 			if boulrand = 0:
 				killvar 'boulrand'
 				'You see two guys and they challenge you to a game.'
@@ -64,7 +64,7 @@ if $ARGS[0] = 'start' or $ARGS[0] = '':
 				end
 			elseif boulrand > 1:
 				killvar 'boulrand'
-				gt 'bouling', 'randwin' 
+				gt 'bouling', 'randwin'
 			end
 		end
 	end
@@ -108,7 +108,7 @@ if $ARGS[0] = 'randwin':
 
 		if money >= 2000:
 			'You lose and have to pay 2,000 <b>₽</b>.'
-			
+
 			gs 'willpower', 'sex', 'self', 'hard'
 			if will_cost <= pcs_willpwr:
 				act 'Offer sex instead (<<will_cost>> Willpower)':

+ 5 - 11
locations/boyStat.qsrc

@@ -8,17 +8,13 @@
 !! A second argument calls for multiple partners. They are output as stats1, stats2, stats3, and stats4, for a total of 5 stats.
 !! If ARGS[1] is not set it defaults to zero, so you can use the variables it sets with or without [0] e.g. dick or dick[0] are equivalent 
 
-if ($ARGS[0] = '' and ARGS[0] > 0) or mid($ARGS[0],1,1) < 10:
-	if ARGS[0] > 0:
-		npclastcalledn = ARGS[0]
-	else
-		npclastcalledn = val($ARGS[0])
-	end
+if ($ARGS[0] = '' and ARGS[0] > 0) or (isnum(mid($ARGS[0],1,1)) and val(mid($ARGS[0],1,1)) < 10):
+	npclastcalledn = iif(isnum($ARGS[0]),val($ARGS[0]),ARGS[0])
 	$npcboytemp = 'A' + npclastcalledn
 else
 	$npcboytemp = $ARGS[0]
 	!! {This error is for where something outside the range of possibility is specified. The calling code is broken. The exact thing specified will be announced.}
-	if mid($npcboytemp,2,1) > 10:
+	if isnum(mid($npcboytemp,2,1)) and val(mid($npcboytemp,2,1)) > 10:
 		MSG 'There has been an error in the $boy passing code. Please contact a developer with what you were doing prior to receiving this message so the error may be fixed. Error type: Improper value for boyStat. Calling <<$ARGS[0]>>'
 		$npcboytemp = 'D0'
 	end
@@ -27,7 +23,7 @@ end
 if mid($npcboytemp,1,1) = 'A' or mid($npcboytemp,1,1) = 'B' or mid($npcboytemp,1,1) = 'C':
 	$npclastcalled = $npcboytemp
 	npclastcalledn = val(mid($npcboytemp, 2))
-	if $npc_usedname[$npclastcalled]=0: $npc_usedname[$npclastcalled] = $npc_firstname[$npclastcalled] & !! this is a workaround which compensate incomplete settings in npc_static files, it can be removed later ...
+	if isnum($npc_usedname[$npclastcalled]) or $npc_usedname[$npclastcalled] = '': $npc_usedname[$npclastcalled] = $npc_firstname[$npclastcalled] & !! this is a workaround which compensate incomplete settings in npc_static files, it can be removed later ...
 	$bstemp[1] = $npc_usedname[$npclastcalled]
 	bstemp[2] = npc_dick[$npclastcalled]
 	$bstemp[3] = $npc_thdick[$npclastcalled]
@@ -103,9 +99,7 @@ elseif $ARGS[1] = 'f':
 	$dick_girth6 = $bstemp[3]
 	silavag6 = bstemp[4]
 else
-	boyStat_i = ARGS[1]
-	!! check if $ARGS[1] is an empty string or not
-	if $ARGS[1] ! 0 and isnum($ARGS[1]) ! 0: boyStat_i = val($ARGS[1])
+	boyStat_i = iif(isnum($ARGS[1]),val($ARGS[1]),ARGS[1])
 	$boy[boyStat_i] = $npclastcalled
 	$boydesc[boyStat_i] = $bstemp[1]
 	dick[boyStat_i] = bstemp[2]

+ 37 - 18
locations/bras.qsrc

@@ -4,11 +4,30 @@
 !!gs 'bras', 'dispose'
 !!gs 'bras', 'remove'
 !!gs 'bras', 'wear'
+menu_off = 1
+
+if $ARGS[0] = 'totals':
+	if $ARGS[1] = 'gm_bras':
+		total = 19
+	elseif $ARGS[1] = 'fashionista_bras':
+		total = 42
+	elseif $ARGS[1] = 'pussycats_bras':
+		total = 41
+	elseif $ARGS[1] = 'danilovich_bras':
+		total = 8
+	elseif $ARGS[1] = 'eroto_bras':
+		total = 27
+	elseif $ARGS[1] = 'salacious_bras':
+		total = 37
+	elseif $ARGS[1] = 'lusso_bras':
+		total = 33
+	end
+end
 
 if $ARGS[0] = 'view_bra_list':
 	!! ARGS 0 - view_bra_list
 	!! ARGS 1 - action type (draw, store, unwanted)
-	
+
 	if $pursepantytype ! '' or $pursebratype ! '':
 		'<center><b>You put the '+iif($pursepantytype ! '','panties','')+iif($pursepantytype ! '' and $pursebratype ! '',' and ','')+iif($pursebratype ! '','bra','')+' from your purse back in the wardrobe.</b></center><br>'
 		killvar '$pursepantytype' & killvar 'pursepantynumber'
@@ -38,7 +57,7 @@ if $ARGS[0] = 'view_bra_list':
 	'<center><table border=1><TH><a href="exec:gt ''bras'', ''view_bra_list'', ''wardrobe''">Draw</a></TH><TH><a href="exec:gt ''bras'', ''view_bra_list'', ''store''">Storage</a></TH><TH><a href="exec:gt ''bras'', ''view_bra_list'', ''unwanted''">Unwanted</a></TH></table></center>'
 
 	if $braworntype ! 'none':act 'Remove bra':gs 'bras', 'remove' & gt 'bras', 'view_bra_list', $ARGS[1]
-	
+
 	if $ARGS[1] = 'store':
 		cloc = 1
 	end
@@ -67,7 +86,7 @@ if $ARGS[0] = 'view_bra_list':
 	if ARRSIZE('lusso_bras') > 0 and clothingfilter['quality'] = 1:'<center><img src="images/locations/city/citycenter/mall/Lusso.png"></center>'
 
 	i = 1
-	:looplussobras 
+	:looplussobras
 		if lusso_brasS[i] = metka_bras and lusso_bras[i] = 1:
 			gs 'underwear_attributes', 'lusso_bras', i
 			gs 'bras', 'bra_filter'
@@ -84,7 +103,7 @@ if $ARGS[0] = 'view_bra_list':
 	if ARRSIZE('salacious_bras') > 0 and clothingfilter['quality'] = 1:'<center><img src="images/locations/pushkin/exhibitshop/shop_name.png"></center>'
 
 	i = 1
-	:loopsalaciousbras 
+	:loopsalaciousbras
 	if salacious_brasS[i] = metka_bras and salacious_bras[i] = 1:
 			gs 'underwear_attributes', 'salacious_bras', i
 			gs 'bras', 'bra_filter'
@@ -101,7 +120,7 @@ if $ARGS[0] = 'view_bra_list':
 	if ARRSIZE('fashionista_bras') > 0 and clothingfilter['quality'] = 1:'<center><img src="images/locations/city/citycenter/mall/fashionista.png"></center>'
 
 	i = 1
-	:loopfashionistabras 
+	:loopfashionistabras
 	if fashionista_brasS[i] = metka_bras and fashionista_bras[i] = 1:
 			gs 'underwear_attributes', 'fashionista_bras', i
 			gs 'bras', 'bra_filter'
@@ -120,7 +139,7 @@ if $ARGS[0] = 'view_bra_list':
 	!!To filter just this set
 
 	i = 1
-	:loopcatsbras 
+	:loopcatsbras
 	if cats_brasS[i] = metka_bras and cats_bras[i] = 1:
 			gs 'underwear_attributes', 'cats_bras', i
 			gs 'bras', 'bra_filter'
@@ -137,7 +156,7 @@ if $ARGS[0] = 'view_bra_list':
 	if ARRSIZE('eroto_bras') > 0 and clothingfilter['quality'] = 1:'<center><img src="images/locations/city/redlight/erotomaniac/shop_name.png"></center>'
 
 	i = 1
-	:looperotobras 
+	:looperotobras
 	if eroto_brasS[i] = metka_bras and eroto_bras[i] = 1:
 			gs 'underwear_attributes', 'eroto_bras', i
 			gs 'bras', 'bra_filter'
@@ -154,7 +173,7 @@ if $ARGS[0] = 'view_bra_list':
 	if ARRSIZE('danilovich_bras') > 0 and clothingfilter['quality'] = 1:'<center><img src="images/locations/city/citycenter/mall/sports.png"></center>'
 
 	i = 1
-	:loopdanilovichbras 
+	:loopdanilovichbras
 	if danilovich_brasS[i] = metka_bras and danilovich_bras[i] = 1:
 			gs 'underwear_attributes', 'danilovich_bras', i
 			gs 'bras', 'bra_filter'
@@ -167,7 +186,7 @@ if $ARGS[0] = 'view_bra_list':
 		end
 	i += 1
 	if i <= ARRSIZE('danilovich_bras'):jump 'loopdanilovichbras'
-	
+
 	clo_i += 1
 	if clothingfilter['quality'] = 0 and clo_i <= 7:
 		jump 'loopbraquality_filter'
@@ -187,7 +206,7 @@ if $ARGS[0] = 'view_bra_item':
 !!	$RESULT = FUNC('$short_description', $ARGS[2], CloStyle2)
 !!	$RESULT += '<<ARGS[3]>>'
 !!	'<<$RESULT>>'
-	
+
 	gs 'underwear_descriptions', 'bras'
 	if underwear['pair'] > 0: 'This bra forms a set with panty #<<underwear[''pair'']>>.'
 
@@ -255,7 +274,7 @@ if $ARGS[0] = 'view_bra_item':
 		end
 	else
 		act 'Return':gt 'bras', 'view_bra_list', $ARGS[1]
-		
+
 		if $ARGS[1] = 'store':
 			'This bra is in storage.'
 			gs 'bras', 'storage_options'
@@ -282,7 +301,7 @@ if $ARGS[0] = 'view_bra_item':
 										gs 'willpower', 'pay', 'resist'
 										gs 'stat'
 										gs 'bras', 'wear', $ARGS[2], ARGS[3]
-		
+
 										if $ARGS[1] = 'wardrobe':
 											gt 'wardrobe', 'main'
 										else
@@ -327,7 +346,7 @@ if $ARGS[0] = 'view_bra_item':
 												gs 'stat'
 												gs 'panties', 'wear', $ARGS[2], underwear['pair']
 												gs 'bras', 'wear', $ARGS[2], ARGS[3]
-				
+
 												if $ARGS[1] = 'wardrobe':
 													gt 'wardrobe', 'main'
 												else
@@ -352,7 +371,7 @@ if $ARGS[0] = 'view_bra_item':
 												gs 'stat'
 												gs 'panties', 'wear', $ARGS[2], underwear['pair']
 												gs 'bras', 'wear', $ARGS[2], ARGS[3]
-				
+
 												if $ARGS[1] = 'wardrobe':
 													gt 'wardrobe', 'main'
 												else
@@ -377,7 +396,7 @@ if $ARGS[0] = 'view_bra_item':
 												gs 'stat'
 												gs 'panties', 'wear', $ARGS[2], underwear['pair']
 												gs 'bras', 'wear', $ARGS[2], ARGS[3]
-					
+
 												if $ARGS[1] = 'wardrobe':
 													gt 'wardrobe', 'main'
 												else
@@ -585,14 +604,14 @@ if $ARGS[0] = 'filter_header':
 	else
 		$Headerstring += '<a href="exec:clothingfilter[''number''] = 0 & clothingfilter[''quality''] = 1 & clothingfilter[''inhibition''] = 1 & gt ''bras'', ''view_bra_list'',  $ward_list_store"><img src="images/system/icons/clothing/number_off.png"></a></TD>'
 	end
-	
+
 	$Headerstring += '<TD>'
 	if clothingfilter['quality'] = 0:
 		$Headerstring += '<img src="images/system/icons/clothing/quality.png"></TD>'
 	else
 		$Headerstring += '<a href="exec:clothingfilter[''quality''] = 0 & clothingfilter[''number''] = 1 & clothingfilter[''inhibition''] = 1 & gt ''bras'', ''view_bra_list'',  $ward_list_store"><img src="images/system/icons/clothing/quality_off.png"></a></TD>'
 	end
-	
+
 !! Show only filers
 	$Headerstring[1] = '<TD>'
 	if clothingfilter['sport_only'] = 0:
@@ -644,7 +663,7 @@ if $ARGS[0] = 'shop_filter_header':
 	else
 		$Headerstring += '<a href="exec:clothingfilter[''number''] = 0 & clothingfilter[''quality''] = 1 & clothingfilter[''inhibition''] = 1 & gt $loc, $loc_arg"><img src="images/system/icons/clothing/number_off.png"></a></TD>'
 	end
-	
+
 	$Headerstring += '<TD>'
 	if clothingfilter['quality'] = 0:
 		$Headerstring += '<img src="images/system/icons/clothing/quality.png"></TD>'

+ 19 - 17
locations/brother_voyeur.qsrc

@@ -228,7 +228,6 @@ if $ARGS[0] = 'showertalk2':
 				act'Do it':
 					menu_off = 1
 					*clr & cla
-					if rand(0, 5) = 0: gt 'vann', 'v4'
 					'<center><video autoplay loop src="images/shared/home/bathroom/wash2.mp4"></center>'
 					'Unable to help yourself, you decide to risk it. After taking a quick look at your brother to make sure he''s still facing away you gently lower the showerhead between your legs.'
 					'As the pressure builds on your pussy your reponses to what your brother is saying become increasingly close to moans, often being monosyllabic or simple hums and your eyes squeeze tight as you concentrate on the sensation.'
@@ -782,10 +781,8 @@ if $ARGS[0] = 'brother_shower_shave':
 	else
 		'"Yeah, you''re probably right. I should shave," you say looking down at yourself, frowning at the growing body hair.'
 	end
-	
-	if pcs_leghair > 3 and pcs_pubes > 3 and mc_inventory['razor'] < razors_to_use['all']:
-		msg'As you pick up your razor, you realize that it''s probably only sharp enough for one more use. You''ll have to decide between a <<$pc_desc[''pubes'']>> pussy or <<$pc_desc[''legs'']>> legs.'
-	else
+
+	if pcs_leghair <= 3 and pcs_pubes <= 3:
 		*nl
 		'You don''t have enough hair on either your legs of pussy for you to need shave.'
 		'"Sorry bro but I don''t need to shave. Give a couple of days and I can show you." You say to the now a bit disappointed Kolka but there''s not much you can do about that.'
@@ -794,10 +791,15 @@ if $ARGS[0] = 'brother_shower_shave':
 			act'Put his hand on your pussy': gs 'brother_shower_sex', 'sex_menu'
 		end
 		act 'Finish showering together': gt 'brother_voyeur', 'brother_shower_end'
+	else
+		if mc_inventory['razor'] < razors_to_use['all']:
+			msg'As you pick up your razor, you realize that it''s probably only sharp enough for one more use. You''ll have to decide between a <<$pc_desc[''pubes'']>> pussy or <<$pc_desc[''legs'']>> legs.'
+		else
+			gs 'brother_voyeur', 'shave_both'
+		end
+		gs 'brother_voyeur', 'shave_legs'
+		gs 'brother_voyeur', 'shave_pussy'
 	end
-	gs 'brother_voyeur', 'shave_both'
-	gs 'brother_voyeur', 'shave_legs'
-	gs 'brother_voyeur', 'shave_pussy'
 end
 
 if $ARGS[0] = 'shave_both':
@@ -837,7 +839,7 @@ if $ARGS[0] = 'shave_both':
 						end
 					else
 						cla & *clr
-						gs 'stat'						
+						gs 'stat'
 						'Once you''re finished you gently glide your hands over your smooth pussy and legs, enjoying the feeling.'
 						'You put your hands on either side of your pussy and say, "Well? Satisfied now?"'
 						'"Yeah..." he says, trailing off at the end, obviously hypnotized by your pussy, causing you to roll your eyes.'
@@ -883,12 +885,12 @@ if $ARGS[0] = 'shave_legs':
 								cla & *nl
 								'"That''s not what I said. I said I''d shave just because you asked. I didn''t say what exactly I''d be shaving or that I''d do everything you tell me to."'
 								'"Hrmph." Kolka seems disappointed. Once you''re finished you gently glide your hands over your smooth legs, making sure you didn''t miss a spot.'
-								
+
 								gs 'brother_voyeur', 'shower_end'
 							end
 
 							act'I guess I did': brother_shower['shave_request'] = 1 & gt 'brother_voyeur', 'brother_shower_shave'
-							
+
 							act'Oh alright': brother_shower['shave_request'] = 2 & gt 'brother_voyeur', 'brother_shower_shave'
 						end
 
@@ -906,7 +908,7 @@ if $ARGS[0] = 'shave_legs':
 									cla
 									'"Sorry little brother, you''re not going to change my mind that easily. I said I''d shave just because you asked. I didn''t say that I''d do everything you asked."'
 									'"Hmph. I still think you''d look better if you just kept it smooth..." he mutters while you gently glide your hands over your smooth legs, making sure you didn''t miss a spot.'
-									
+
 									gs 'brother_voyeur', 'shower_end'
 								end
 
@@ -933,7 +935,7 @@ if $ARGS[0] = 'shave_legs':
 									cla & *nl
 									'"Sorry little brother, you''re not going to change my mind that easily. I said I''d shave just because you asked. I didn''t say that I''d shave everything you wanted."'
 									'"Hmph. I still think you''d look better if you just kept it smooth..." he mutters while you gently glide your hands over your smooth legs, making sure you didn''t miss a spot.'
-									
+
 									gs 'brother_voyeur', 'shower_end'
 								end
 
@@ -1012,7 +1014,7 @@ if $ARGS[0] = 'shave_pussy':
 				'"Yeah, I guess I could use a trim."'
 				'You lather up your crotch and then start carefully shaving your pussy.'
 			end
-			
+
 			if pcs_leghair > 3:
 				'Kolka frowns. "You''re not going to shave your legs?"'
 				if mc_inventory['razor'] < razors_to_use['legs']:
@@ -1278,7 +1280,7 @@ if $ARGS[0] = 'shave':
 				'"Hmm..." He seems disappointed.'
 				act 'Dry off': gt 'brother_voyeur', 'dryoff'
 			end
-			
+
 			if pcs_pubes < 21:
 				act'"Nope! I''m thinking of growing it out"':
 					cla
@@ -1301,7 +1303,7 @@ if $ARGS[0] = 'shave':
 					act 'Dry off': gt 'brother_voyeur', 'dryoff'
 				end
 			end
-			
+
 			if pcs_pubes > 10:
 				act'"I like it like this!"':
 					cla
@@ -1599,7 +1601,7 @@ if $ARGS[0] = 'shave_not_done':
 			act 'Dry off': gt 'brother_voyeur', 'dryoff'
 		end
 	end
-	
+
 	act'Indulge him':
 		cla & *clr
 		'<center><video autoplay loop src="images/shared/home/bathroom/shave_stubble.mp4"></center>'

+ 0 - 636
locations/budgetclothes.qsrc

@@ -1,636 +0,0 @@
-# budgetclothes
-!2022/03/12
-if $ARGS[0] = 'start':
-	killvar 'clothingfilter'
-	$loc_arg = $ARGS[0]
-	$loc = 'budgetclothes'
-	$menu_loc = 'budgetclothes'
-	$menu_arg = 'start'
-	menu_off = 0
-	$location_type = 'event'
-	'<center><b><font color="maroon">Welcome to G & M - Clothes for all your needs</font></b></center>'
-	'<center><img <<$set_imgh>> src="images/locations/city/citycenter/mall/gandm/shop.jpg"</center>'
-	'G&M is not fancy, it''s certainly not high fashion but it''s cheap and has specific work and school wear.'
-	clr
-
-	gs 'stat'
-	gs 'themes', 'indoors'
-
-	act 'Leave the store':
-		cla
-		$shoplocation = ''
-		if torg = 1:
-			minut += 3
-			gt 'torgcentr'
-		else
-			gt 'pav_industrial'
-		end
-	end
-
-	act 'Visit clothing department':
-		cla
-		menu_off = 1
-
-		act 'Return':gt 'budgetclothes', 'start'
-
-		act 'View clothing':
-			minut += 5
-			gt 'budgetclothes', 'clothes'
-		end
-
-		act 'View dresses':
-			minut += 5
-			gt 'budgetclothes', 'dresses'
-		end
-
-		act 'View office wear':
-			minut += 5
-			gt 'budgetclothes', 'office'
-		end
-
-		act 'View maid outfits':
-			minut += 5
-			gt 'budgetclothes', 'gm_maid'
-		end
-
-		act 'View server uniforms':
-			minut += 5
-			gt 'budgetclothes', 'gm_server'
-		end
-
-		act 'View school uniforms':
-			minut += 5
-			gt 'budgetclothes', 'school'
-		end
-	end
-
-	act 'View regular shoes':
-		minut += 5
-		gt 'budgetclothes', 'shoes'
-	end
-
-	act 'View panties':
-		minut += 5
-		gt 'budgetclothes', 'panties'
-	end
-
-	act 'View bras':
-		minut += 5
-		gt 'budgetclothes', 'bras'
-	end
-
-	act 'View purses':
-		minut += 5
-		gt 'budgetclothes', 'purses'
-	end
-
-	act 'View coats':
-		minut += 5
-		gt 'budgetclothes', 'coats'
-	end
-end
-
-if $ARGS[0] = 'clothes':
-	$loc_arg = 'clothes'
-	$loc = 'budgetclothes'
-	$menu_loc = 'budgetclothes'
-	$menu_arg = 'clothes'
-	menu_off = 0
-	*clr & cla
-	gs'stat'
-	'<center><b><font color="maroon">Viewing G&M outfits</font></b></center>'
-	*nl
-
-	gs 'clothing_QV', 'shop_filter_header'
-	gs 'clothing', 'totals', 'gm_outfits'
-
-	act 'Return':
-		cla
-		minut += 1
-		gt 'budgetclothes', 'start'
-	end
-
-	!!To filter just this set
-	clo_i = 0
-	:loopgm_outfits_filter
-
-		if Clothingstock - 16 > 0:
-			i = 1
-		elseif Clothingstock - 8 > 0:
-			i = 2
-		else
-			i = 3
-		end
-
-		:loopgm_outfits
-			if gm_outfits[i] = 0:
-				gs 'clothing_attributes', 'gm_outfits', i
-				gs 'clothing_QV', 'shop_filter'
-
-				!!sort by filter
-				if (clothingfilter['quality'] = 0 and CloQuality = clo_i) or (clothingfilter['inhibition'] = 0 and CloInhibit = clo_i) or clothingfilter['number'] = 0:
-					if clothingfilter['inc'] = 1 and clothingfilter['only'] = 1: *p '<a href="exec: i = <<i>> & gt ''budgetclothes'', ''gm_outfits''"><img src="images/pc/items/gm/outfits/<<i>>.jpg" 	height="250" /></a>'
-				end
-			end
-			i += 3
-
-		if i <= total:jump 'loopgm_outfits'
-
-	clo_i += 1
-	if clothingfilter['quality'] = 0 and clo_i <= 7:
-		jump 'loopgm_outfits_filter'
-	elseif clothingfilter['inhibition'] = 0 and clo_i <= 50:
-		jump 'loopgm_outfits_filter'
-	end
-end
-
-if $ARGS[0] = 'gm_outfits':
-	cla
-	menu_off = 1
-	if gm_outfits[i] ! 0:
-		msg 'You already own these clothes.'
-		gt 'budgetclothes', 'clothes'
-	end
-
-	gt 'clothing', 'view_clothing_item', 'gm_outfits',i, 1000, 'shop'
-end
-
-if $ARGS[0] = 'dresses':
-	$loc_arg = 'dresses'
-	$loc = 'budgetclothes'
-	$menu_loc = 'budgetclothes'
-	$menu_arg = 'dresses'
-	menu_off = 0
-	*clr & cla
-	gs'stat'
-	'<center><b><font color="maroon">Viewing G&M dresses</font></b></center>'
-	*nl
-
-	gs 'clothing_QV', 'shop_filter_header'
-	gs 'clothing', 'totals', 'gm_dress'
-
-	act 'Return':
-		cla
-		minut += 1
-		gt 'budgetclothes', 'start'
-	end
-
-	!!To filter just this set
-	clo_i = 0
-	:loopgm_dress_filter
-
-		if Clothingstock > 17:
-			i = 1
-		elseif Clothingstock > 11:
-			i = 2
-		elseif Clothingstock > 5:
-			i = 3
-		else
-			i = 4
-		end
-
-		:loopgm_dress
-			if gm_dress[i] = 0:
-				gs 'clothing_attributes', 'gm_dress', i
-				gs 'clothing_QV', 'shop_filter'
-
-				!!sort by filter
-				if (clothingfilter['quality'] = 0 and CloQuality = clo_i) or (clothingfilter['inhibition'] = 0 and CloInhibit = clo_i) or clothingfilter['number'] = 0:
-					if clothingfilter['inc'] = 1 and clothingfilter['only'] = 1: *p '<a href="exec: i = <<i>> & gt ''budgetclothes'', ''gm_dress''"><img src="images/pc/items/gm/dress/<<i>>.jpg" 	height="250" /></a>'
-				end
-			end
-			i += 3
-		if i <= total:jump 'loopgm_dress'
-
-	clo_i += 1
-	if clothingfilter['quality'] = 0 and clo_i <= 7:
-		jump 'loopgm_dress_filter'
-	elseif clothingfilter['inhibition'] = 0 and clo_i <= 50:
-		jump 'loopgm_dress_filter'
-	end
-end
-
-if $ARGS[0] = 'gm_dress':
-	cla
-	menu_off = 1
-	if gm_dress[i] ! 0:
-		msg 'You already own this dress.'
-		gt 'budgetclothes', 'dresses'
-	end
-
-	gt 'clothing', 'view_clothing_item', 'gm_dress',i, 1000, 'shop'
-end
-
-if $ARGS[0] = 'office':
-	$menu_loc = 'budgetclothes'
-	$menu_arg = 'office'
-	menu_off = 0
-	$loc_arg = $ARGS[0]
-	$loc = 'budgetclothes'
-	*clr & cla
-	gs'stat'
-	'<center><b><font color="maroon">Viewing G&M office clothing</font></b></center>'
-	*nl
-
-	gs 'clothing_QV', 'shop_filter_header'
-	gs 'clothing', 'totals', 'gm_office'
-
-	act 'Return':
-		cla
-		minut += 1
-		gt 'budgetclothes', 'start'
-	end
-
-	!!To filter just this set
-	clo_i = 0
-	:loopoffice_filter
-
-		i = 1
-
-		:loopoffice
-			if gm_office[i] = 0:
-				gs 'clothing_attributes', 'gm_office', i
-				gs 'clothing_QV', 'shop_filter'
-
-				!!sort by filter
-				if (clothingfilter['quality'] = 0 and CloQuality = clo_i) or (clothingfilter['inhibition'] = 0 and CloInhibit = clo_i) or clothingfilter['number'] = 0:
-					if clothingfilter['inc'] = 1 and clothingfilter['only'] = 1: *p '<a href="exec: i = <<i>> & gt ''budgetclothes'', ''officeclo''"><img src="images/pc/items/gm/office/<<i>>.jpg" 	height="250" /></a>'
-				end
-			end
-			i += 1
-		if i <= total:jump 'loopoffice'
-
-	clo_i += 1
-	if clothingfilter['quality'] = 0 and clo_i <= 7:
-		jump 'loopoffice_filter'
-	elseif clothingfilter['inhibition'] = 0 and clo_i <= 50:
-		jump 'loopoffice_filter'
-	end
-end
-
-if $ARGS[0] = 'officeclo':
-	cla
-	menu_off = 1
-	if gm_office[i] ! 0:
-		msg 'You already own these clothes.'
-		gt 'budgetclothes', 'office'
-	end
-
-	gt 'clothing', 'view_clothing_item', 'gm_office',i, 2000, 'shop'
-end
-
-if $ARGS[0] = 'gm_maid':
-	$menu_loc = 'budgetclothes'
-	$menu_arg = 'gm_maid'
-	menu_off = 0
-	$loc_arg = $ARGS[0]
-	$loc = 'budgetclothes'
-	*clr & cla
-	gs'stat'
-	'<center><b><font color="maroon">Viewing G&M maid outfits</font></b></center>'
-	*nl
-
-	gs 'clothing_QV', 'shop_filter_header'
-	gs 'clothing', 'totals', 'gm_maid'
-
-	act 'Return':
-		cla
-		minut += 1
-		gt 'budgetclothes', 'start'
-	end
-
-	!!To filter just this set
-	clo_i = 0
-	:loopgm_maid_filter
-
-		if Clothingstock > 11:
-			i = 1
-		else
-			i = 2
-		end
-
-		:loopgm_maid
-			if gm_maid[i] = 0:
-				gs 'clothing_attributes', 'gm_maid', i
-				gs 'clothing_QV', 'shop_filter'
-
-				!!sort by filter
-				if (clothingfilter['quality'] = 0 and CloQuality = clo_i) or (clothingfilter['inhibition'] = 0 and CloInhibit = clo_i) or clothingfilter['number'] = 0:
-					if clothingfilter['inc'] = 1 and clothingfilter['only'] = 1: *p '<a href="exec: i = <<i>> & gt ''budgetclothes'', ''gm_maidclo''"><img src="images/pc/items/gm/maid/<<i>>.jpg" 	height="250" /></a>'
-				end
-			end
-			i += 2
-		if i <= total:jump 'loopgm_maid'
-
-	clo_i += 1
-	if clothingfilter['quality'] = 0 and clo_i <= 7:
-		jump 'loopgm_maid_filter'
-	elseif clothingfilter['inhibition'] = 0 and clo_i <= 50:
-		jump 'loopgm_maid_filter'
-	end
-end
-
-if $ARGS[0] = 'gm_maidclo': gt 'clothing', 'view_clothing_item', 'gm_maid',i, 2000, 'shop'
-
-if $ARGS[0] = 'gm_server':
-	$menu_loc = 'budgetclothes'
-	$menu_arg = 'gm_server'
-	menu_off = 0
-	$loc_arg = $ARGS[0]
-	$loc = 'budgetclothes'
-	*clr & cla
-	gs'stat'
-	'<center><b><font color="maroon">Viewing G&M server uniforms</font></b></center>'
-	*nl
-
-	gs 'clothing_QV', 'shop_filter_header'
-	gs 'clothing', 'totals', 'gm_server'
-
-	act 'Return':
-		cla
-		minut += 1
-		gt 'budgetclothes', 'start'
-	end
-
-	!!To filter just this set
-	clo_i = 0
-	:loopgm_server_filter
-
-		if Clothingstock > 11:
-			i = 1
-		else
-			i = 2
-		end
-
-		:loopgm_server
-			if gm_server[i] = 0:
-				gs 'clothing_attributes', 'gm_server', i
-				gs 'clothing_QV', 'shop_filter'
-
-				!!sort by filter
-				if (clothingfilter['quality'] = 0 and CloQuality = clo_i) or (clothingfilter['inhibition'] = 0 and CloInhibit = clo_i) or clothingfilter['number'] = 0:
-					if clothingfilter['inc'] = 1 and clothingfilter['only'] = 1: *p '<a href="exec: i = <<i>> & gt ''budgetclothes'', ''gm_serverclo''"><img src="images/pc/items/gm/server/<<i>>.jpg" 	height="250" /></a>'
-				end
-			end
-			i += 2
-		if i <= total:jump 'loopgm_server'
-
-	clo_i += 1
-	if clothingfilter['quality'] = 0 and clo_i <= 7:
-		jump 'loopgm_server_filter'
-	elseif clothingfilter['inhibition'] = 0 and clo_i <= 50:
-		jump 'loopgm_server_filter'
-	end
-end
-
-if $ARGS[0] = 'gm_serverclo': gt 'clothing', 'view_clothing_item', 'gm_server', i, 2000, 'shop'
-
-if $ARGS[0] = 'school':
-	$menu_loc = 'budgetclothes'
-	$menu_arg = 'school'
-	menu_off = 0
-	$loc_arg = $ARGS[0]
-	$loc = 'budgetclothes'
-	*clr & cla
-	gs'stat'
-	'<center><b><font color="maroon">Viewing G&M school uniforms</font></b></center>'
-	*nl
-
-	gs 'clothing_QV', 'shop_filter_header'
-	gs 'clothing', 'totals', 'gm_school'
-
-	act 'Return':
-		cla
-		minut += 1
-		gt 'budgetclothes', 'start'
-	end
-
-	!!To filter just this set
-	clo_i = 0
-	:loopgm_school_filter
-
-		if Clothingstock > 15:
-			i = 1
-		elseif Clothingstock > 7:
-			i = 2
-		else
-			i = 3
-		end
-
-		:loopschool
-			if gm_school[i] = 0:
-				gs 'clothing_attributes', 'gm_school', i
-				gs 'clothing_QV', 'shop_filter'
-
-				!!sort by filter
-				if (clothingfilter['quality'] = 0 and CloQuality = clo_i) or (clothingfilter['inhibition'] = 0 and CloInhibit = clo_i) or clothingfilter['number'] = 0:
-					if clothingfilter['inc'] = 1 and clothingfilter['only'] = 1: *p '<a href="exec: i = <<i>> & gt ''budgetclothes'', ''schoolclo''"><img src="images/pc/items/gm/school/<<i>>.jpg" 	height="250" /></a>'
-				end
-			end
-			i += 3
-			if i = 6:i = 9
-		if i <= total:jump 'loopschool'
-
-	clo_i += 1
-	if clothingfilter['quality'] = 0 and clo_i <= 7:
-		jump 'loopgm_school_filter'
-	elseif clothingfilter['inhibition'] = 0 and clo_i <= 50:
-		jump 'loopgm_school_filter'
-	end
-end
-
-if $ARGS[0] = 'schoolclo':
-	cla
-	menu_off = 1
-	if gm_school[i] ! 0:
-		msg 'You already own these clothes.'
-		gt 'budgetclothes', 'school'
-	end
-
-	gt 'clothing', 'view_clothing_item', 'gm_school',i, 1500, 'shop'
-end
-
-if $ARGS[0] = 'shoes':
-	$loc_arg = 'shoes'
-	$loc = 'budgetclothes'
-	$menu_loc = 'budgetclothes'
-	$menu_arg = 'shoes'
-	menu_off = 0
-	*clr & cla
-	gs'stat'
-	'<center><b><font color="maroon">Viewing G&M shoes</font></b></center>'
-	*nl
-
-	gs 'shoes', 'shop_filter_header'
-
-
-	act 'Return':
-		cla
-		minut += 1
-		gt 'budgetclothes', 'start'
-	end
-
-	!!To filter just this set
-	clo_i = 0
-	:loopshoequality_filter
-
-		i = 1
-		:loopgm_shoes
-			if gm_shoe[i] = 0:
-				gs 'shoe_attributes', 'gm', i
-				gs 'shoes', 'shoe_filter'
-				if (Shofilter['quality'] = 0 and ShoQuality = clo_i) or Shofilter['number'] = 0:
-					if Shofilter['inc'] = 1 and Shofilter['only'] = 1:
-						*p '<a href="exec: i = <<i>> & gt ''budgetclothes'', ''budget_shoes''"><img src="images/pc/items/gm/shoes/<<i>>.jpg" height="250" /></a>'
-					end
-				end
-			end
-			i += 1
-		if i <= 30:jump 'loopgm_shoes'
-
-	clo_i += 1
-	if Shofilter['quality'] = 0 and clo_i <= 7:
-		jump 'loopshoequality_filter'
-	end
-end
-
-if $ARGS[0] = 'budget_shoes': gt 'shoes', 'view_shoe_item', 'shop', 'gm',i, 700
-
-if $ARGS[0] = 'coats':
-	$menu_loc = 'budgetclothes'
-	$menu_arg = 'coats'
-	menu_off = 0
-	$loc_arg = 'coats'
-	$loc = 'budgetclothes'
-	*clr & cla
-	gs'stat'
-
-	act 'Return':
-		cla
-		minut += 1
-		gt 'budgetclothes', 'start'
-	end
-
-	i = 1
-	:loopcoats
-		if gm_coats[i] = 0:*p '<a href="exec: i = <<i>> & gt ''budgetclothes'', ''coats2''"><img src="images/pc/items/gm/coats/<<i>>.jpg" 	height="250" /></a>'
-		i += 1
-	if i <= 20:jump 'loopcoats'
-end
-
-if $ARGS[0] = 'coats2': gt 'coats', 'view_coat_item', 'shop', 'gm',i, 1500
-
-if $ARGS[0] = 'purses':
-	$menu_loc = 'budgetclothes'
-	$menu_arg = 'purses'
-	menu_off = 0
-	$loc_arg = 'purses'
-	$loc = 'budgetclothes'
-	*clr & cla
-	gs'stat'
-
-	act 'Return':
-		cla
-		minut += 1
-		gt 'budgetclothes', 'start'
-	end
-
-	i = 1
-	:looppurses
-		if gm_purses[i] = 0:*p '<a href="exec: i = <<i>> & gt ''budgetclothes'', ''purses2''"><img src="images/pc/items/gm/purses/<<i>>.jpg" 	height="250" /></a>'
-		i += 1
-	if i <= 20:jump 'looppurses'
-end
-
-if $ARGS[0] = 'purses2': gt 'purses', 'view_purse_item', 'shop', 'gm',i, 1500
-
-if $ARGS[0] = 'panties':
-	$loc_arg = 'panties'
-	$loc = 'budgetclothes'
-	$menu_loc = 'budgetclothes'
-	$menu_arg = 'panties'
-	menu_off = 0
-	*clr & cla
-	gs'stat'
-	'<center><b><font color="maroon">Viewing G&M panties</font></b></center>'
-
-
-	gs 'panties', 'shop_filter_header'
-
-	act 'Return':
-		cla
-		minut += 1
-		gt 'budgetclothes', 'start'
-	end
-
-	!!To filter just this set
-	clo_i = 0
-	:looppantyquality_filter
-
-		i = 1
-		:looppanties
-			if gm_panties[i] = 0:
-				gs 'underwear_attributes', 'gm_panties', i
-				if (clothingfilter['quality'] = 0 and PanQuality = clo_i) or clothingfilter['number'] = 0:
-					*p '<a href="exec: gt ''panties'', ''view_panty_item'', ''shop'', ''gm'', <<i>>, 300"><img src="images/pc/items/gm/panties/<<i>>.jpg" 	height="150" /></a>'
-				end
-			end
-			i += 1
-			if i = 7: i = 8
-			if i = 9: i = 10
-			if i = 21: i = 22
-			if i = 37: i = 38
-		if i <= 37:jump 'looppanties'
-
-	clo_i += 1
-	if clothingfilter['quality'] = 0 and clo_i <= 6:
-		jump 'looppantyquality_filter'
-	end
-end
-
-if $ARGS[0] = 'bras':
-	$menu_loc = 'budgetclothes'
-	$menu_arg = 'bras'
-	menu_off = 0
-	$loc_arg = 'bras'
-	$loc = 'budgetclothes'
-	*clr & cla
-	gs'stat'
-	'<center><b><font color="maroon">Viewing G&M bras</font></b></center>'
-	*nl
-
-	gs 'bras', 'shop_filter_header'
-
-	act 'Return':
-		cla
-		minut += 1
-		gt 'budgetclothes', 'start'
-	end
-
-	!!To filter just this set
-	clo_i = 0
-	:loopbraquality_filter
-
-		i = 1
-
-		:loopgm_bras
-			if gm_bras[i] = 0:
-				gs 'underwear_attributes', 'gm_bras', i
-				if (clothingfilter['quality'] = 0 and BraQuality = clo_i) or clothingfilter['number'] = 0:
-					*p '<a href="exec:gt ''bras'', ''view_bra_item'', ''shop'', ''gm'', <<i>>, 300"><img src="images/pc/items/gm/bras/<<i>>.jpg" 	height="150" /></a>'
-				end
-			end
-		i += 1
-		if i = 11: i = 13
-		if i = 16: i = 17
-		if i = 18: i = 19
-		if i <= 19:jump 'loopgm_bras'
-	clo_i += 1
-	if clothingfilter['quality'] = 0 and clo_i <= 6:
-		jump 'loopbraquality_filter'
-	end
-end
-
-
---- budgetclothes ---------------------------------
-

+ 5 - 4
locations/buklinik_event.qsrc

@@ -25,7 +25,7 @@ if $ARGS[0] = 'pos2':
 	'Vladimir calls you over, "Take a seat young lady. There''s nothin'' to worry about."'
 	'You take a seat at a small table in the middle of the room. In no time, you''re surrounded by the men. "Meet Vitaly, Paul Afanasyevitch, Oleg, Kostya and slow Albert.'
 	'Suddenly you feel one of them touch you. "So young and smooth..." while someone else takes a sniff of you, "Delicious..."'
-	
+
 	act 'Try to get away': gt 'buklinik_event', 'pos3'
 end
 
@@ -284,8 +284,9 @@ if $ARGS[0] = 'misha':
 	'<center><img <<$set_imgh>> src="images/locations/city/industrial/mercyclinic/misha.jpg" ></center>'
 	'Michael after the disease paralyzed the whole body, fingers and toes, head is all it can move. He <<MishaAge>> years. His spine is curved too much, and he can''t sit in a regular chair.'
 
-	act'Chat':
-		*clr & cla
+	act 'Chat':
+		*clr
+		delact 'Chat'
 		gs 'stat'
 		'You decided to chat with Michael.'
 		$zz_str[0] = 'You were talking with Michael I learned that he was born in Pavlovo, in the same way as you. His family moved to here when he was seven. The family had four children, he is a senior. He says he often remembers about the life he''d led before he contracted polio.'
@@ -304,6 +305,7 @@ if $ARGS[0] = 'misha':
 	end
 
 	gs 'buklinik_event', 'event2'
+	act '<B>Leave</B>': gt 'buklinik_event', 'room'
 end
 
 ! --- EVENTS --- !
@@ -430,7 +432,6 @@ if $ARGS[0] = 'entrance':
 end
 
 if $ARGS[0] = 'event2':
-	act '<B>Leave</B>': gt 'buklinik_event', 'room'
 	if nanny_cleaning = 0 or nanny_food = 0: exit
 
 	if MishaLove = 1:

+ 1 - 1
locations/bus.qsrc

@@ -80,7 +80,7 @@ elseif $ARGS[0] = 'community_busses':
 	act 'Look at the bus schedule':
 		*clr & cla
 		gs 'transport_functions', 'display_bus_schedule', 'pg'
-		act 'Stop looking at the schedule': gt 'bus', 'community_busses.'
+		act 'Stop looking at the schedule': gt 'bus', 'community_busses'
 	end
 
 	act 'Take a bus to the Pavlovsk train station (<<func(''transport_functions'', ''display_bus_timecost'', ''community'', ''pavstation'')>>)':	gt 'bus', 'community_pavstation'

+ 6 - 6
locations/camera.qsrc

@@ -127,7 +127,7 @@ if $ARGS[0] = 'start':
 	'You spend a few minutes thinking about places and people that might make for interesting subjects. Perhaps...'
 	*nl
 	! Get the number of locations in the array
-	location_count = ARRSIZE('$camera_locations')
+	location_count = arrsize('$camera_locations')
 	iterator = 0
 	! For every location
 	if location_count > 0:
@@ -135,12 +135,12 @@ if $ARGS[0] = 'start':
 		! Assign the variables
 		dynamic $camera_locations[iterator]
 		! Show the player unphotographed locations
-		if camera_found[$camera_event] ! 1: '<<$camera_description>>'
+		if camera_found[$camera_event] ! 1: $camera_description
 		iterator += 1
 		if iterator < location_count: jump 'location_loop'
 	end
 	*nl
-	people_count = ARRSIZE('$camera_people')
+	people_count = arrsize('$camera_people')
 	iterator = 0
 	! For every person in the array
 	if people_count > 0:
@@ -148,7 +148,7 @@ if $ARGS[0] = 'start':
 		! Assign the variables
 		dynamic $camera_people[iterator]
 		! If the subject has not been photographed and requirements are met (-1), show the name
-		if camera_found[$camera_event] ! 1 and camera_requirement = -1: '<<$camera_description>>'
+		if camera_found[$camera_event] ! 1 and camera_requirement = -1: $camera_description
 		iterator += 1
 		if iterator < people_count: jump 'people_loop'
 	end
@@ -158,7 +158,7 @@ end
 
 if $ARGS[0] = 'check_location':
 	! If the player has a camera and this location exists in the array
-	if photographyEv >= 2 and $camera_locations[$loc] ! 0:
+	if photographyEv >= 2 and $camera_locations[$loc] ! '':
 		! Assign the variables
 		dynamic $camera_locations[$loc]
 		! If they have not already photographed the location
@@ -181,7 +181,7 @@ end
 
 if $ARGS[0] = 'check_person':
     ! If the player has a camera and this person exists in the array
-    if photographyEv >= 2 and $camera_people[$ARGS[1]] ! 0:
+    if photographyEv >= 2 and $camera_people[$ARGS[1]] ! '':
         ! Assign the variables
         dynamic $camera_people[$ARGS[1]]
         ! If they have not already photographed the person

+ 35 - 35
locations/cikl.qsrc

@@ -30,10 +30,10 @@ if day > monthsEnd[month]:
 	month += 1
 
 	!! Changing the year at new year and making sure February have the correct number of days.
-	if month > 12: 
+	if month > 12:
 		month = 1
 		year += 1
-		if ((year mod 4 = 0) and (year mod 100 ! 0)) or (year mod 400 = 0): 
+		if ((year mod 4 = 0) and (year mod 100 ! 0)) or (year mod 400 = 0):
 			monthsend[2] = 29
 		else
 			monthsend[2] = 28
@@ -164,13 +164,13 @@ if husbandMark = 1 and husband <= 10:
 end
 
 !! after having surgery you will be in recuperation for a few days
-
-if surgeryday ! '':
+if surgeryday > 0:
 	if daystart - 7 <= surgeryday:
 		dailyhealthimprov = (daystart - surgeryday) * 50
 		pcs_health = dailyhealthimprov
 		recuperation = 1
 	else
+		killvar 'surgeryday'
 		killvar 'recuperation'
 		killvar 'dailyhealthimprov'
 	end
@@ -180,12 +180,12 @@ end
 streetevent_hour = -2
 
 !!Clothing stock and price randomizers
-Clothingstock = rand (0,23)
+Clothingstock = rand (0, 119)
 i = 1
 :loopprice
-Clothingstock[i] = rand (0,500)
-i += 1
-if i <= 147:jump 'loopprice'
+	Clothingstock[i] = rand (0, 500)
+	i += 1
+if i <= 147: jump 'loopprice'
 
 if dyneval ('RESULT = <<$coatworntype>>_coats_h[<<coatwornnumber>>]') <= 0: $coatworntype = 'none'
 
@@ -437,7 +437,7 @@ elseif preg = 2 and pregminut < totminut:
 	gs 'gameover', 'check', 4
 	msg '<font color=red><B>You should die for giving birth unprepared, but Cheat Mode keeps you Alive.</B></font>'
 	pregminut = totminut + 1440
-	
+
 elseif preg = 0:
 	gs 'shortgs', 'remove_array_element', 'npc_pregtalk','A14'
 	gs 'shortgs', 'remove_array_element', 'npc_pregtalk','A16'
@@ -618,9 +618,9 @@ dmishaevent = 0
 if Gspravka <= 0 and GspravkaT = 1:GspravkaT = 0 & Gspravka = 0
 if GspravkaT = 1:Gspravka -= 1
 
-if BurgerQW['IlyQW'] = 2 and BurgerQW['IlyQWPoliceDayCount'] > 0 and BurgerQW['IlyQWPoliceDayCount'] < 30: 
+if BurgerQW['IlyQW'] = 2 and BurgerQW['IlyQWPoliceDayCount'] > 0 and BurgerQW['IlyQWPoliceDayCount'] < 30:
 	BurgerQW['IlyQWPoliceDayCount'] += 1
-elseif BurgerQW['IlyQW'] = 2 and BurgerQW['IlyQWPoliceDayCount'] = 30: 
+elseif BurgerQW['IlyQW'] = 2 and BurgerQW['IlyQWPoliceDayCount'] = 30:
 	BurgerQW['IlyQW'] = 3
 end
 
@@ -815,14 +815,14 @@ if mid($start_type, 1, 2) = 'sg':
 			if week = 1:
 				!!The start and end values for i have to be changed if more female schoolgirl npcs are added to the game
 				i = 11
-				
+
 				:hotcat_calc_jump
 				i += 1
-				
+
 				if hotcat_rating['A<<i>>'] = 0 and i < 145: jump 'hotcat_calc_jump'
-				
+
 				switch_rand = rand(1,100)
-				
+
 				if hotcat_movement['A<<i>>'] = 0 and switch_rand < 21:
 					hotcat_rating['A<<i>>'] -= 1
 					hotcat_movement['A<<i>>'] -= 1
@@ -840,15 +840,15 @@ if mid($start_type, 1, 2) = 'sg':
 				killvar 'i'
 				killvar 'switch_rand'
 			end
-			
+
 			!! Resetting the late flag
 			if late = 1: late = 0
-			
-		end	
-		
+
+		end
+
 
 		!!Social grup changes
-		
+
 		!!Change from relatonship with other students.
 		gs 'gschool_socialchg', 'group_student_rel_change'
 
@@ -900,7 +900,7 @@ if mid($start_type, 1, 2) = 'sg':
 		old_grupvalue[2] = grupvalue[2]
 		old_grupvalue[3] = grupvalue[3]
 		old_grupvalue[4] = grupvalue[4]
-		
+
 	elseif SchoolAtestat = -1:
 		if func('homes_properties', 'has_access', 'parents_home') = 0:
 			$holyday = '<b>You missed your graduation. You could pick up your diploma at the school.</b>'
@@ -967,7 +967,7 @@ gs 'uni_lessons', 'cikl'
 
 !!resetting moisturizer so it can be used in the morning regardless
 moisturiser_time = totminut
-!!same with chaffing cream
+!!same with chafing cream
 mosal_time = totminut
 
 !!resetting last_pee to counteract time cheat
@@ -999,7 +999,7 @@ if blizoruk < 0: blizoruk = 0
 
 
 !!------------------------------------------------------------------------------------------------------------------------
-!!C and B array cleaning 
+!!C and B array cleaning
 
 if InSleep = 1: gs 'npc','cleanarrays'
 
@@ -1021,7 +1021,7 @@ killvar 'therapistFuckedPussyScene'
 
 if $status['dog'] ! 'blocked' and rex['owned'] = 1:
 	rex['timer_day'] = daystart
-	
+
 	!!Daily decay
 	rex['relationship'] -= 1
 
@@ -1035,7 +1035,7 @@ if $status['dog'] ! 'blocked' and rex['owned'] = 1:
 	rex['timer_walk'] = 0
 	rex['count_feed'] = rex['count_feed_base']
 	rex['timer_feed'] = 0
-		
+
 	if week = 1:
 		if cheat['dog_rel'] = 0:
 			npc_rel['A29'] -= rex['count_bath']
@@ -1043,7 +1043,7 @@ if $status['dog'] ! 'blocked' and rex['owned'] = 1:
 		end
 		rex['count_bath'] = rex['count_bath_base']
 	end
-end	
+end
 
 !!------------------------------------------------------------------------------------------------------------
 
@@ -1057,7 +1057,7 @@ if starlets['late_message'] = 1: starlets['late_message'] = 0
 
 !!---------- Starlet Content ---------------------------------------------------------------------------------
 if AlbinaQW['StarletsJoined'] > 0 and AlbinaQW['StarletsShutDown'] = 0 and npc_pregtalk['A23'] = 0:
-	if starlets_practice = daystart - 1: 
+	if starlets_practice = daystart - 1:
 		starlets_missed = 1
 		starlets_practice = 0
 	end
@@ -1075,7 +1075,7 @@ if month = 11 and day = 19 and (AlbinaQW['StarletsJoined'] <= 0 or (AlbinaQW['St
 !! Setting Del Parco initial variables
 if daystart < 2:
 	ml_delparcoQW['Stage'] = 0
-	ml_delparcoQW['Zariyah Trust'] = 50 
+	ml_delparcoQW['Zariyah Trust'] = 50
 end
 
 
@@ -1090,15 +1090,15 @@ if ml_guitarlesson['nextlesson'] < daystart and ml_guitarlesson['lessonday'] ! 8
 	ml_guitarlesson['lessonday'] = 8
 end
 
-!! Calculating the fame increase from the uploaded songs and removing ones that do not effect fame anymore to keep the 
+!! Calculating the fame increase from the uploaded songs and removing ones that do not effect fame anymore to keep the
 !! data at a sane level
 if ml_onlinesongcount > 0:
 	i = 0
 	j = -1
 
 	:looponlinesongs
-!!		this so every song counts only every 7 days and only for a limited number of weeks 
-		if ml_onlinesong_freshness[i] > 0:		
+!!		this so every song counts only every 7 days and only for a limited number of weeks
+		if ml_onlinesong_freshness[i] > 0:
 			j += 1
 			ml_tempsong_freshness[j] = ml_onlinesong_freshness[i]
 			ml_tempsong_lastcalcday[j] = ml_onlinesong_lastcalcday[i]
@@ -1122,7 +1122,7 @@ if ml_onlinesongcount > 0:
 	killvar 'ml_onlinesong_uploaded'
 
 	i = 0
-	
+
 	if j >= 0:
 		:looprebuildsongs
 			ml_onlinesong_freshness[i] = ml_tempsong_freshness[i]
@@ -1169,7 +1169,7 @@ gs 'emp_functions', 'evt_day_chk'
 !!---------------------------- WEEKLY RESET ----------------------------
 !!----------------------------------------------------------------------
 if week = 1:
-	!! Reset used car dealership offers 
+	!! Reset used car dealership offers
 	killvar 'used_car'
 
 	!! Reset therapist schedule
@@ -1186,7 +1186,7 @@ if $lib_book_loaned ! '': lib_debt += 50
 
 
 !!------------- Preliminary npc_uni_eduTipe  ------------------------------------------
-!! 
+!!
 !!npc_uni_eduType = '', 'professor', 'teaching_studies', 'business_studies', 'science_studies', 'fashion_studies'
 !!				'nursing_studies', 'psychology_studies', 'programming_studies', 'other_studies'
 !!
@@ -1288,7 +1288,7 @@ end
 if arrsize('policeQW_courthearing_dates') > 0 and daystart > policeQW_courthearing_dates[0]:
 	policeQW['missed_court_dates'] += 1
 	policeQW['tot_court_dates_missed'] += 1
-	
+
 	!! Might need code to throw a message with 'You''ve missed your court hearing or something'
 
 	policeQW_courtletter_dates[] = daystart + rand(3, 6)

+ 49 - 0
locations/city_canal.qsrc

@@ -0,0 +1,49 @@
+# city_canal
+!! Date Created: 14th May, 2024
+!! Modified date: 
+!! Version: .01 - initial release
+!! Author: Hooded Silence
+!!
+!! St Petersburg Canals
+!!
+!! Sub-location in St Petersburg for dates, boat rides and other events
+
+if $args[0] = 'init':
+    img_sel = rand(1,2)
+    if daystage = 2 or daystage = 3:
+        $setloc['StageImage'] =  'city_canals_day_<<img_sel>>'
+    else
+        $setloc['StageImage'] =  'city_canals_night_<<img_sel>>'
+    end
+    killvar img_sel
+end
+
+if $args[0] = 'content':
+    !! Main location content.
+
+    *clr & cla
+	$setloc['StageTitle'] = 'St Petersburg Canals'
+    gs 'city_canal', 'init'
+	$location_type = 'public_outdoors'
+	gs 'shortgs', 'setloc', 'city_canals', $ARGS[0]
+	gs 'stat'
+	gs 'core_library', 'stage_title'
+
+
+    'You stand gazing at the famous Canals of the North, the hustle and bustle of people on the streets against a backdrop of elegant Russian buildings. You see boatmen plying their trade on the waters below and working on their tour boats.'
+
+    !! Navigation
+
+    act 'Head to the Arts district': msg 'not implented' & gt 'city_canal', 'content'
+    act 'Take a boat trip (100)': msg 'not implented' & gt 'city_canal', 'content'
+    act 'Take the boats to Vasily Island (50)': msg 'not implented' & gt 'city_canal', 'content'
+
+end
+
+if $args[0] = 'dates':
+    !! For all date related activities.
+
+end
+
+
+--- city_canal ---------------------------------

+ 2 - 2
locations/city_center.qsrc

@@ -129,10 +129,10 @@ end
 'The neon green sign of a <<$desc_txt1>> catches your eye. It''s open between 08:00 and 22:00 and sells cheap magazines and cigarettes.'
 *nl
 if hour = 8 and minut >= 30:
-	$desc_txt1 = '<a href="exec: minut += 1 & gt ''torgcentr''">The Galeria mall</a>'
+	$desc_txt1 = '<a href="exec: minut += 1 & gt ''city_mall''">The Galeria mall</a>'
 	$desc_txt2 = '<a href="exec:msg ''The Havana Fitness Center is closed and will reopen at 09:00''">Havana Fitness Center</a>'
 elseif hour >= 9 and hour <= 20:
-	$desc_txt1 = '<a href="exec: minut += 1 & gt ''torgcentr''">The Galeria mall</a>'
+	$desc_txt1 = '<a href="exec: minut += 1 & gt ''city_mall''">The Galeria mall</a>'
 	$desc_txt2 = '<a href="exec:gt ''fit'', ''start''">Havana Fitness Center</a>'
 else
 	$desc_txt1 = '<a href="exec:msg ''The Galeria mall is closed and will reopen at 8:30''">The Galeria mall</a>'

+ 125 - 112
locations/dk.qsrc → locations/city_commcenter.qsrc

@@ -1,7 +1,7 @@
-# dk
+# city_commcenter
 ! Refactored 24 Aug 22
 ! Amended by Hooded Silence
-! Author Validation: 
+! Author Validation:
 ! Industrial Community center - used for gaining life skills
 ! Events - Driving Lessons, Singing classes, Secretarial Training & Masseuse.
 ! V .01 - Refactored to break down into event sections and expand on content, and to create hot links for city_industrial navigation.
@@ -44,14 +44,14 @@
 ! ---  End ---
 
 if $ARGS[0] = 'start':
-	$loc = 'dk'
+	$loc = 'city_commcenter'
 	$loc_arg = 'start'
-	$menu_loc = 'dk'
+	$menu_loc = 'city_commcenter'
 	$menu_arg = 'start'
 	$location_type = 'public_indoors'
 	menu_off = 0
 	gs 'stat'
-	gs 'dk', 'lessons'
+	gs 'city_commcenter', 'lessons'
 	act 'Leave the center': minut += 5 & gt 'city_industrial'
 end
 
@@ -68,19 +68,19 @@ if $ARGS[0] = 'lessons':
 	'<table border=0 align="center">'
 	'<TR>'
 	if	prava = 0 and avtoskul = 0:
-		'<TR><TD>Driving lessons - 30,000 <b>₽</b>.</TD><TD>10 classes</TD><TD><a href="exec:gt ''dk'', ''drivingschool''">Book a driving course.</a></TD></TR>'
+		'<TR><TD>Driving lessons - 30,000 <b>₽</b>.</TD><TD>10 classes</TD><TD><a href="exec:gt ''city_commcenter'', ''drivingschool''">Book a driving course.</a></TD></TR>'
 	elseif avtoskul  < 11 and prava = 0 and skulday ! daystart:
-		'<TR><TD>Driving lessons -</TD><TD></TD><TD><a href="exec:gt ''dk'', ''drivingschool''">Attend your driving lesson.</a></TD></TR>'
+		'<TR><TD>Driving lessons -</TD><TD></TD><TD><a href="exec:gt ''city_commcenter'', ''drivingschool''">Attend your driving lesson.</a></TD></TR>'
 	elseif avtoskul  < 12 and prava = 0 and skulday ! daystart:
-		'<TR><TD>Driving lessons -</TD><TD></TD><TD><a href="exec:gt ''dk'', ''drivingschool''">Attend driving theory lesson.</a></TD></TR>'
+		'<TR><TD>Driving lessons -</TD><TD></TD><TD><a href="exec:gt ''city_commcenter'', ''drivingschool''">Attend driving theory lesson.</a></TD></TR>'
 	elseif avtoskul  <= 12 and prava = 0 and skulday ! daystart:
-		'<TR><TD>Driving lessons -</TD><TD></TD><TD><a href="exec:gt ''dk'', ''drivingschool''">Attend your driving test.</a></TD></TR>'
+		'<TR><TD>Driving lessons -</TD><TD></TD><TD><a href="exec:gt ''city_commcenter'', ''drivingschool''">Attend your driving test.</a></TD></TR>'
 	elseif prava = 0 and skulday = daystart:
 		'<TR><TD>Driving lessons - You have already attended your driving lesson for today.</TD></TR>'
 	end
-	'<TR><TD>Secretarial diploma - 15,000 <b>₽</b>.</TD><TD>10 classes</TD><TD><a href="exec:gt ''dk'', ''secretarialschool''">Classes in room 204.</a></TD></TR>'
-	'<TR><TD>Massage lessons - 10,000 <b>₽</b>.</TD><TD>10 classes</TD><TD><a href="exec:gt ''dk'', ''masseuse''">Classes in room 203. </a></TD></TR>'
-	'<TR><TD>Singing lessons - 500 <b>₽</b>.</TD><TD>Per class</TD><TD><a href="exec:gt ''dk'', ''singingtutor''">Classes in room 213. </TD></a></TR>'
+	'<TR><TD>Secretarial diploma - 15,000 <b>₽</b>.</TD><TD>10 classes</TD><TD><a href="exec:gt ''city_commcenter'', ''secretarialschool''">Classes in room 204.</a></TD></TR>'
+	'<TR><TD>Massage lessons - 10,000 <b>₽</b>.</TD><TD>10 classes</TD><TD><a href="exec:gt ''city_commcenter'', ''masseuse''">Classes in room 203. </a></TD></TR>'
+	'<TR><TD>Singing lessons - 500 <b>₽</b>.</TD><TD>Per class</TD><TD><a href="exec:gt ''city_commcenter'', ''singingtutor''">Classes in room 213. </TD></a></TR>'
 	!!'<TR><TD>Personal development - 1,000 <b>₽</b>.</TD><TD>Per class</TD><TD>Classes in room 201 (Learn to assert yourself)</TD></TR>'
 	!!'Medium for new opportunities - only here only freebie.'
 	'</TR>'
@@ -133,25 +133,40 @@ if $ARGS[0] = 'drivingschool':
 	'You enter the community center with excitement with your thoughts full about getting your driving licence and the freedom to achieve your dreams.'
 	*nl
 
-	if skulday = daystart:
-		'You''ve taken your driving lesson for today.'
+	if prava ! 0:
+		'You''ve already got your driving licence.'
+		act 'Return': gt $loc, $loc_arg
+		exit
 	end
-	if avtoskul = 0 and money >= 30000 and prava = 0 and age >= 18:
 
+	if avtoskul = 0 and age >= 18 and (money >= 30000 or karta >= 30000):
 		act 'Book a driving training course (30,000 <b>₽</b>)':
 			cla
 			menu_off = 1
-			if money > 30000: act 'pay with for lessons with cash': gt 'dk', 'payments', 'driving lessons ', 'money', 30000
-			if karta > 30000: act ' pay with your card': gt 'dk', 'payments', 'driving lessons', 'karta', 30000
-			avtoskul = 1
+			!! This text should be rewritten
 			'You briefly look around for information about driving lessons, and approach the receptionist who gives you the necessary papers to fill in and she warns you that they will be checked by the agency to prevent fraud. You pay her the money and she gives you a small information pack about the driving lessons and you quickly skim through them to see you can now take a 2-hour driving lessons on each workday.'
 
+			if money >= 30000:
+				act 'Pay with for lessons with cash':
+					avtoskul = 1
+					gt 'city_commcenter', 'payments', 'driving lessons ', 'money', 30000
+				end
+			end
+			if karta >= 30000:
+				act 'Pay with your card':
+					avtoskul = 1
+					gt 'city_commcenter', 'payments', 'driving lessons', 'karta', 30000
+				end
+			end
+
 			act 'Return': gt $loc, $loc_arg
 		end
-	end
-	if hour >= 9 and hour <= 17 and week < 6:
-		if avtoskul >= 1 and avtoskul < 11 and skulday ! daystart and age >= 18:
 
+	elseif skulday = daystart:
+		'You''ve taken your driving lesson for today.'
+
+	elseif hour >= 9 and hour <= 17 and week < 6:
+		if avtoskul >= 1 and avtoskul < 11:
 			act 'Driving lesson':
 				*clr & cla
 				skulday = daystart
@@ -164,9 +179,8 @@ if $ARGS[0] = 'drivingschool':
 
 				act 'Return': gt $loc, $loc_arg
 			end
-		end
-		if avtoskul = 11 and skulday ! daystart and age >= 18:
 
+		elseif avtoskul = 11:
 			act 'Driving theory':
 				*clr & cla
 				menu_off = 1
@@ -179,8 +193,8 @@ if $ARGS[0] = 'drivingschool':
 				act 'Return': gt $loc, $loc_arg
 				!!if nikpravaQW = 1:end
 			end
-		elseif avtoskul = 12 and skulday ! daystart and age >= 18:
 
+		elseif avtoskul = 12:
 			act 'Driving test':
 				*clr & cla
 				menu_off = 1
@@ -209,32 +223,41 @@ if $ARGS[0] = 'secretarialschool':
 	'<center><b>Secretarial Training</b></center>'
 	'The center offers a wide range of business related skills including computer training, secretarial work, PA, management and accounting'
 
-	if secrDiplom = 0 and sekrObu = 0 and money >= 15000:
-
-		act 'Book a secretarial course (15,000 <b>₽</b>)':
-
-			cla
-			menu_off = 1
-			sekrObu = 1
-			'You pay the money for the course, once you''ve filled in the blanks on an application paper, and can now attend secretary training each day for 2 hours. You need to attend 10 training lessons to earn a diploma.'
-			if money > 15000: act 'Pay with for lessons with cash': gt 'dk', 'payments', 'secretarial class', 'money', 15000
-			if karta > 15000: act ' Pay with your card': gt 'dk', 'payments', 'secretarial class', 'karta', 15000
-
-			act 'Return': gt $loc, $loc_arg
-		end
-	elseif secrday = daystart:
-		'You''ve had your lesson for today, come back another day.'
-
-		act 'Return': gt $loc, $loc_arg
-	elseif secrDiplom = 0 and sekrObu = 0 and money < 15000:
-		'You could take lessons here if you had sufficient funds with you. '
-
+	if secrDiplom ! 0:
+		'You''ve already got your secretarial diploma.'
 		act 'Return': gt $loc, $loc_arg
+		exit
 	end
 
+	if sekrObu = 0:
+		if money >= 15000 or karta >= 15000:
+			act 'Book a secretarial course (15,000 <b>₽</b>)':
+				cla
+				menu_off = 1
+				!! This text should be rewritten
+				'You pay the money for the course, once you''ve filled in the blanks on an application paper, and can now attend secretary training each day for 2 hours. You need to attend 10 training lessons to earn a diploma.'
+				if money >= 15000:
+					act 'Pay with for lessons with cash':
+						sekrObu = 1
+						gt 'city_commcenter', 'payments', 'secretarial class', 'money', 15000
+					end
+				end
+				if karta >= 15000:
+					act 'Pay with your card':
+						sekrObu = 1
+						gt 'city_commcenter', 'payments', 'secretarial class', 'karta', 15000
+					end
+				end
+				act 'Return': gt $loc, $loc_arg
+			end
+		else
+			'You could take lessons here if you had sufficient funds with you. '
+		end
 
-	if sekrObu > 0 and sekrObu < 11 and secrday ! daystart:
+	elseif secrday = daystart:
+		'You''ve had your lesson for today, come back another day.'
 
+	elseif sekrObu > 0 and sekrObu < 11:
 		act 'Secretarial class':
 			*clr & cla
 			menu_off = 1
@@ -247,8 +270,8 @@ if $ARGS[0] = 'secretarialschool':
 
 			act 'Return': gt $loc, $loc_arg
 		end
-	elseif sekrObu >= 11 and secrday ! daystart:
 
+	elseif sekrObu >= 11:
 		act 'Secretarial diploma':
 			*clr & cla
 			menu_off = 1
@@ -273,37 +296,45 @@ end
 if $ARGS[0] = 'masseuse':
 	'<center><img <<$set_imgh>> src="images/locations/city/industrial/community/masseuse_training.jpg"></center>'
 	*nl
+
 	if masseuse['certification'] = 0:
-		'You enter a room and are greeted with by a young lady, she looks are you with a welcoming smile and asks "Are you here for the lessons?" You reply and she quickly gives you the course details of the course and a pamphlet to read.'
-		*nl
-		'The basic course is 10 lessons, and the  class costs 10,000 <b>₽</b>'
-		if money > 10000: act 'Pay with for lessons with cash': gt 'dk', 'payments', 'masseuse class', 'money', 10000
-		if karta > 10000: act 'Pay with your card': gt 'dk', 'payments', 'masseuse class', 'karta', 10000
-		masseuse['certification'] = -1
-	else
-		if masseuse_lesson = daystart:
-			'You look around the empty room and realised you''ve had your lesson today and the class instructor has left.'
-		else
-			if masseuse['certification'] ! 0 and masseuse['certification'] < 10 and masseuse_lesson ! daystart:
-				masseuse_lesson = daystart
-				if masseuse['certification'] = -1:
-					masseuse['certification'] = 1
-				else
-					masseuse['certification'] += 1
+		if money >= 10000 or karta >= 10000:
+			'You enter a room and are greeted with by a young lady, she looks are you with a welcoming smile and asks "Are you here for the lessons?" You reply and she quickly gives you the course details of the course and a pamphlet to read.'
+			*nl
+			'The basic course is 10 lessons, and the  class costs 10,000 <b>₽</b>'
+			if money >= 10000:
+				act 'Pay with for lessons with cash':
+					masseuse['certification'] = -1
+					gt 'city_commcenter', 'payments', 'masseuse class', 'money', 10000
 				end
-				minut += 120
-				gs 'stat'
-				'You enter the room and see the tables laid out for your lesson. The instructor welcomes you and takes down your name. You notice some people coming in for a free massage from your course.'
-				'The next two hours are dedicated to reading detailed guides to how to relieve pain or tension in certain muscles and to putting these guides into practice with partners attending the course and some local students looking for a freebie.'
-				*nl
-				if masseuse['certification'] >10:
-					'Congratulations that was your final lesson! You''ve completed the basic course, you are issued a certificate that shows you are a certified masseuse.This is your first step in providing a wonderful service to your clients.'
+			end
+			if karta >= 10000:
+				act 'Pay with your card':
+					masseuse['certification'] = -1
+					gt 'city_commcenter', 'payments', 'masseuse class', 'karta', 10000
 				end
 			end
+		else
+
 		end
-	end
-	*nl
-	if masseuse['certification'] >= 10  and masseuse_lesson ! daystart:
+	elseif masseuse_lesson = daystart:
+		'You look around the empty room and realised you''ve had your lesson today and the class instructor has left.'
+	elseif masseuse['certification'] <= 10:
+		masseuse_lesson = daystart
+		if masseuse['certification'] < 0:
+			masseuse['certification'] = 1
+		else
+			masseuse['certification'] += 1
+		end
+		minut += 120
+		gs 'stat'
+		'You enter the room and see the tables laid out for your lesson. The instructor welcomes you and takes down your name. You notice some people coming in for a free massage from your course.'
+		'The next two hours are dedicated to reading detailed guides to how to relieve pain or tension in certain muscles and to putting these guides into practice with partners attending the course and some local students looking for a freebie.'
+		*nl
+		if masseuse['certification'] >= 10:
+			'Congratulations that was your final lesson! You''ve completed the basic course, you are issued a certificate that shows you are a certified masseuse.This is your first step in providing a wonderful service to your clients.'
+		end
+	elseif masseuse['certification'] >= 10:
 		'Sorry we don''t have any new classes to offer yet. You could speak to Xian at the Galleria''s Beauty Bar if you''re looking for work as she usually has openings for new staff.'
 	end
 
@@ -312,63 +343,45 @@ if $ARGS[0] = 'masseuse':
 end
 
 if $ARGS[0] = 'singingtutor':
-	if money >= 500 and vokalday ! daystart:
-		'The center offers singing lessons with Alexei, an established local singer and musician who works with up and coming talent. Unlike the centers other classes he only ever accepts cash for his lessons.'
+	if vokalday = daystart:
+		'The classroom is empty, you play on the piano for a few minutes before heading back to the hall. Maybe come back another time to see if there''s more classes.'
+
+	elseif money < 500:
+		'You see Alexei in the classroom, but you don''t have enough cash to take a lesson.'
 
-		act 'Singing lessons':
-			clr
-			'<center>'
+	else
+		'The center offers singing lessons with Alexei, an established local singer and musician who works with up and coming talent. Unlike the centers other classes he only ever accepts cash for his lessons.'
+		act 'Singing lessons (500 <b>₽</b>)':
+			*clr & cla
 			menu_off = 1
 			minut += 60
 			alexeyQW += 1
 			gs 'exp_gain', 'vokal', rand(5,10)
 			vokalday = daystart
+			money -= 500
 			gs 'stat'
-			if alexeyQW = 1:
-				money -= 500
 
-				act 'First lesson':
-					*clr & cla
-					'When you enter the office, you see a middle aged man with long hair that''s been pulled back in a ponytail. He gives you a confident look and says, with a particularly well-modulated voice: "Are you here to learn how to sing, Miss?" You nod and hand him 500 <b>₽</b>.'
-					'He pockets it and introduces himself: "I''m Alexei. What is your name?" You respond that your name is <<$pcs_nickname>>. Acknowledging  your answer with little more than a nod, the man immediately moves on to the lesson. Before you even notice, an hour has passed. You head out and the man politely wishes you goodbye.'
-
-					act 'Return': gt $loc, $loc_arg
-				end
+			if alexeyQW = 1:
+				'When you enter the office, you see a middle aged man with long hair that''s been pulled back in a ponytail. He gives you a confident look and says, with a particularly well-modulated voice: "Are you here to learn how to sing, Miss?" You nod and hand him 500 <b>₽</b>.'
+				'He pockets it and introduces himself: "I''m Alexei. What is your name?" You respond that your name is <<$pcs_nickname>>. Acknowledging  your answer with little more than a nod, the man immediately moves on to the lesson. Before you even notice, an hour has passed. You head out and the man politely wishes you goodbye.'
 
 			elseif alexeyQW = 2:
+				'You enter the small classroom eager to your lesson, Alexei is sitting at a piano and indicates you should sit on a chair to it. He asks you practice the scales as he plays each note on the piano. You quickly gain confidence and he touches your knee whenever you do well. '
+				'After an hour you feel drained but feel that you have learned more about singing. You have a good voice Alexei says, but you still need to practice breathing and control, touching your breasts and throat as he says each word.'
+				gs 'arousal', 'foreplay', 15
+				gs 'stat'
 
-				act 'Second lesson':
-					*clr & cla
-					money -= 500
-					'You enter the small classroom eager to your lesson, Alexei is sitting at a piano and indicates you should sit on a chair to it. He asks you practice the scales as he plays each note on the piano. You quickly gain confidence and he touches your knee whenever you do well. '
-					'After an hour you feel drained but feel that you have learned more about singing. You have a good voice Alexei says, but you still need to practice breathing and control, touching your breasts and throat as he says each word.'
-					gs 'arousal', 'foreplay', 15
-
-					act 'Return': gt $loc, $loc_arg
-				end
-			elseif alexeyQW > 2:
-
-				act 'Continue lessons':
-				*clr & cla
-				money -= 500
+			else
 				'You enter the small classroom eager to start your next lesson, Alexei is sitting at his normal place by the piano and waves hand to your chair. He asks you practice the warm up scales as he plays the notes on the piano. You are fairly accomplished now and quickly finish the warm up.'
 				'Halfway through the lesson Alexei gives you another music sheet to sing from and starts playing the piano indicating you should start, after the lesson you feel exhausted from the class but keen to attend your next lesson.'
-
-				act 'Return': gt $loc, $loc_arg
 			end
-			elseif money <= 500 and vokalday ! daystart:
-				'You see Alexei in the classroom, but you don''t have enough cash to take a lesson.'
 
-				act 'Return': gt $loc, $loc_arg
-			end
+			act 'Return': gt $loc, $loc_arg
 		end
-
-	else
-		'The classroom is empty, you play on the piano for a few minutes before heading back to the hall. Maybe come back another time to see if there''s more classes.'
-
-		act 'Return': gt $loc, $loc_arg
 	end
+
+	act 'Return': gt $loc, $loc_arg
 end
 
---- dk ---------------------------------
+--- city_commcenter ---------------------------------
 

+ 3 - 3
locations/city_experimental_trials.qsrc

@@ -75,7 +75,7 @@ if $ARGS[0] = 'front_desk' or $ARGS[0] = '':
 			end
 		end
 
-		if experimentQW['times_participated_0'] >= 2 or experimentQW['times_participated_1'] ! 0 or experimentQW['times_participated_2'] ! 0 or experimentQW['times_participated_3'] ! 0:
+		if experimentQW['times_participated_0'] >= 2 or experimentQW['times_participated_1'] ! 0 or experimentQW['times_participated_2'] ! 0 or experimentQW['times_participated_3'] ! 0 or experimentQW['times_participated_4'] ! 0:
 			*nl
 			'You also spot a small pharmaceutical stand to the side.'
 			act 'Go to the experimental pharmacy': gt 'city_experimental_trials_pharmacy', 'counter'
@@ -109,7 +109,7 @@ if $ARGS[0] = 'front_desk' or $ARGS[0] = '':
 		*nl
 
 		'At the bottom of the document is an area where you need to write down your full name, age and add your signature.'
-		
+
 		act 'Sign the document':
 			experimentQW['signed'] = 1
 			*clr & cla
@@ -121,7 +121,7 @@ if $ARGS[0] = 'front_desk' or $ARGS[0] = '':
 
 			act 'Return to the front desk': gt 'city_experimental_trials', 'front_desk'
 		end
-		
+
 		act 'Put the contract down and leave': gt 'city_clinic', 'start'
 	end
 end

+ 5 - 5
locations/city_experimental_trials_events.qsrc

@@ -83,14 +83,14 @@ elseif $experimentQW['trial_active'] = 'pill_red':
 		end
 
 		'Your agility has increased and you feel faster! This must have been that experimental pill you took.'
-	
+
 	elseif experimentQW['random_option'] = 5:
 		if vital_lvl > 11:
 			vital_exp -= 2 * vital_xpnxt
 		end
 
 		'Your endurance has decreased! This must have been that experimental pill you took.'
-	
+
 	else
 		if vital_lvl < 99:
 			vital_exp += 2 * vital_xpnxt
@@ -514,7 +514,7 @@ if $experimentQW['trial_active'] = 'aphrodisiac_pill':
 		orgasm += 1
 		pcs_mood = 100
 		if pcs_traits['easy_orgams'] < 2: pcs_traits['easy_orgams'] = 2
-		
+
 		*nl
 		'You feel a heat spreading from your stomach and moving towards your pussy. The heat pulses and you find yourself in the grips of an intense orgasm! You feel like it''ll be easier to orgasm from now on. This must have been that experimental aphrodisiac.'
 	end
@@ -530,7 +530,7 @@ end
 
 if $experimentQW['trial_active'] = 'butt_injection':
 	pcs_horny += 10
-	butt_tr_exp += butt_tr_xpnxt * 2
+	bodyVars['butt_other'] += 2
 
 	if experimentQW['trial_duration'] >= 4:
 		*nl
@@ -568,7 +568,7 @@ if $experimentQW['trial_active'] = 'fertility_shot':
 	if experimentQW['trial_duration'] = 3:
 		if min_arousal < 20: min_arousal = 20
 		if pcs_horny < 20: pcs_horny = 20
-		
+
 		*nl
 		'You feel a heat radiate from your womb, awakening your arousal. This must have been that experimental fertility shot.'
 	elseif experimentQW['trial_duration'] = 2:

+ 36 - 36
locations/city_experimental_trials_list.qsrc

@@ -106,13 +106,13 @@ if $ARGS[0] = $trial_sections[0]:
 	$loc_arg = $trial_sections[0]
 
 	minut += 2
-	
+
 	!!Image of the desk, or an experimental trials folder
 	'<center><img <<$set_imgh>> src="images\system\image_needed.png"></center>'
 
 	'We have developed a range of enhancement pills that are designed to improve both body and mood. They''ve just been approved for human trials, so we''re still cataloguing the effects.'
 	'The following are expected: mood swings, aches, itches, rashes and physical changes.'
-	
+
 	act 'Sign up':
 		$experimentQW['trial_active'] = $trial_names[0]
 
@@ -137,79 +137,79 @@ if $ARGS[0] = $trial_sections[0]:
 		!! Change tits
 		if temp_rand < 10:
 			$temp_pill_color = 'cyan'
-			$experimentQW['trial_active']     = 'pill_cyan'
-			$experimentQW['pill_cyan_taken'] += 1
-			 experimentQW['trial_duration']   = rand(1,3)
+			$experimentQW['trial_active']    = 'pill_cyan'
+			experimentQW['pill_cyan_taken'] += 1
+			experimentQW['trial_duration']   = rand(1, 3)
 
 		!! Change stren, vital, or agil
 		elseif temp_rand < 20:
 			$temp_pill_color = 'red'
-			$experimentQW['trial_active']    = 'pill_red'
-			$experimentQW['pill_red_taken'] += 1
-			 experimentQW['trial_duration']  = rand(2,4)
+			$experimentQW['trial_active']   = 'pill_red'
+			experimentQW['pill_red_taken'] += 1
+			experimentQW['trial_duration']  = rand(2, 4)
 
 		!! Change intel, cha, perception?
 		elseif temp_rand < 30:
 			$temp_pill_color = 'blue'
 			$experimentQW['trial_active']     = 'pill_blue'
-			$experimentQW['pill_blue_taken'] += 1
-			 experimentQW['trial_duration']   = rand(2,4)
+			 experimentQW['pill_blue_taken'] += 1
+			 experimentQW['trial_duration']   = rand(2, 4)
 
 		!! Change skin
 		elseif temp_rand < 40:
 			$temp_pill_color = 'yellow'
-			$experimentQW['trial_active']       = 'pill_yellow'
-			$experimentQW['pill_yellow_taken'] += 1
-			 experimentQW['trial_duration']     = rand(2,5)
+			$experimentQW['trial_active']      = 'pill_yellow'
+			experimentQW['pill_yellow_taken'] += 1
+			experimentQW['trial_duration']     = rand(2, 5)
 
 		!! Change butt
 		elseif temp_rand < 50:
 			$temp_pill_color = 'orange'
-			$experimentQW['trial_active']       = 'pill_orange'
-			$experimentQW['pill_orange_taken'] += 1
-			 experimentQW['trial_duration']     = rand(2,4)
+			$experimentQW['trial_active']      = 'pill_orange'
+			experimentQW['pill_orange_taken'] += 1
+			experimentQW['trial_duration']     = rand(2, 4)
 
 		!! Change inhib
 		elseif temp_rand < 60:
 			$temp_pill_color = 'violet'
-			$experimentQW['trial_active']       = 'pill_violet'
-			$experimentQW['pill_violet_taken'] += 1
-			 experimentQW['trial_duration']     = 1
+			$experimentQW['trial_active']      = 'pill_violet'
+			experimentQW['pill_violet_taken'] += 1
+			experimentQW['trial_duration']     = 1
 
 		!! Change min_arousal
 		elseif temp_rand < 65:
 			$temp_pill_color = 'brown'
-			$experimentQW['trial_active']      = 'pill_brown'
-			$experimentQW['pill_brown_taken'] += 1
-			 experimentQW['trial_duration']    = rand(2,4)
-		
+			$experimentQW['trial_active']     = 'pill_brown'
+			experimentQW['pill_brown_taken'] += 1
+			experimentQW['trial_duration']    = rand(2, 4)
+
 		!! Change clit
 		elseif temp_rand < 70:
 			$temp_pill_color = 'purple'
-			$experimentQW['trial_active']     = 'pill_purple'
-			$experimentQW['pill_purple_taken'] += 1
-			 experimentQW['trial_duration']   = rand(2,4)
+			$experimentQW['trial_active']      = 'pill_purple'
+			experimentQW['pill_purple_taken'] += 1
+			experimentQW['trial_duration']     = rand(2, 4)
 
 		!! Change alko_status
 		elseif temp_rand < 80:
 			$temp_pill_color = 'green'
-			$experimentQW['trial_active']      = 'pill_green'
-			$experimentQW['pill_green_taken'] += 1
-			 experimentQW['trial_duration']    = 1
+			$experimentQW['trial_active']     = 'pill_green'
+			experimentQW['pill_green_taken'] += 1
+			experimentQW['trial_duration']    = 1
 
 		!! Give exhib level or change willwpower
 		elseif temp_rand < 85:
 			$temp_pill_color = 'gray'
-			$experimentQW['trial_active']     = 'pill_gray'
-			$experimentQW['pill_gray_taken'] += 1
-			 experimentQW['trial_duration']   = 1
+			$experimentQW['trial_active']    = 'pill_gray'
+			experimentQW['pill_gray_taken'] += 1
+			experimentQW['trial_duration']   = 1
 
 		!! Give bimbo lvl or change willpower?
 		elseif temp_rand < 90:
 			$temp_pill_color = 'pink'
-			$experimentQW['trial_active']     = 'pill_pink'
-			$experimentQW['pill_pink_taken'] += 1
-			 experimentQW['trial_duration']   = 1
+			$experimentQW['trial_active']    = 'pill_pink'
+			experimentQW['pill_pink_taken'] += 1
+			experimentQW['trial_duration']   = 1
 		end
 
 		experimentQW['times_participated_0'] += 1
@@ -403,7 +403,7 @@ elseif $ARGS[0] = $trial_sections[4]:
 		 experimentQW['times_participated_4'] += 1
 		$experimentQW['trial_active'] = $trial_sections[4]
 		 experimentQW['trial_duration'] = trial_durations[4]
-		
+
 		menu_off = 1
 		minut += 2
 		gs 'stat'

+ 17 - 2
locations/city_experimental_trials_pharmacy.qsrc

@@ -15,11 +15,26 @@ if $ARGS[0] = 'counter':
 		end
 		*nl
 
-		'There is currently nothing of note being sold here (yet).'
-		'More content will be added here in later updates.'
+		if experimentQW['times_participated_1'] = 0 and experimentQW['times_participated_2'] = 0 and experimentQW['times_participated_3'] = 0 and experimentQW['times_participated_4'] = 0 and experimentQW['times_participated_5'] = 0:
+			'"If any of our experimental trials lead to a breakthrough, we will sell the medicine those trials produced here. Currently all of our trials are ongoing so there''s nothing in stock, do check back later. Sign up for a trial, if you want to help us develop medicine for the future."'
+		else
+			act 'Buy something': gt 'city_experimental_trials_pharmacy', 'cart'
+		end
 
 		act 'Go back to the front desk': gt 'city_experimental_trials', 'front_desk'
 end
 
 
+if $ARGS[0] = 'cart':
+	*clr & cla
+	$loc_s = 'city_experimental_trials_pharmacy'
+	$args_s = 'cart'
+
+	gs 'item_cart', 'shoppping_aisle', 'experimental_trials'
+	gs 'themes', 'indoors'
+	gs 'stat'
+
+	act 'Exit shopping cart': gt 'city_experimental_trials_pharmacy', 'counter'
+end
+
 --- city_experimental_trials_pharmacy ---------------------------------

+ 2 - 0
locations/city_hotel.qsrc

@@ -1,6 +1,8 @@
 # city_hotel
 
 if $ARGS[0] = 'start' or $ARGS[0] = '':
+	if hotelRoomDays['city'] = 0 and hour > 11: hotelRoom['city'] = 0
+	if hotelRoomDays['city'] <= 0: hotelRoom['city'] = 0
 	*clr & cla
 	nom_o[1] = 100
 	nom_o[2] = 1000

+ 3 - 3
locations/city_industrial.qsrc

@@ -103,14 +103,14 @@ if $ARGS[0] = '':
 		'Next to the car dealership is a repair shop.' + iif(week = 7, 'It''s closed on Sundays.', 'It will be open between 09:00 and 20:00.') + iif(car > 0 and cardrive = 7, ' Your <<$car>> is currently locked inside.', '')
 	end
 	if hour >= 9 and hour < 17 and week < 6:
-		'The <a href="exec: minut += 5 & gt ''dk'', ''start''">community center</a> is currently open.'
+		'The <a href="exec: minut += 5 & gt ''city_commcenter'', ''start''">community center</a> is currently open.'
 	else
 		'The community center is currently closed. It''s only open during the week between 09:00 and 17:00.'
 	end
 
-	if hour >= 9 and hour <= 17 and (mid($start_type,1,2) ! 'sg' or SchoolAtestat = 0) or bumtolik > 3: 
+	if hour >= 9 and hour <= 17 and ($start_type['loc'] ! 'sg' or SchoolAtestat = 0) or bumtolik > 3:
 		'<a href="exec: gt ''buklinik'',''start''">Mercy clinic</a> is open.'
-	elseif (hour < 9 or hour > 17) and (mid($start_type,1,2) ! 'sg' or SchoolAtestat = 0) or bumtolik > 3:
+	elseif (hour < 9 or hour > 17) and ($start_type['loc'] ! 'sg' or SchoolAtestat = 0) or bumtolik > 3:
 		'Mercy clinic is closed.'
 	end
 	if hour >= 8 and hour <= 20:

+ 40 - 237
locations/city_library.qsrc

@@ -1,287 +1,90 @@
 # city_library
 
-$loc_arg = $ARGS[0]
-$loc = 'city_library'
-$menu_loc = 'city_library'
-$menu_arg = ''
 menu_off = 0
-$location_type = 'public_indoors'
-frost = 0
-gs 'stat'
-gs 'themes', 'indoors'
 
-! Stuff to do on Studying a Book
-!	$ARGS[0] = Skill to Check
-killvar '$downlibrary'
-$downlibrary['BookStudy'] = {
-	$downlibrary['Skill'] = $ARGS[0]
-	*clr & cla
-	menu_off = 1
-	if blizoruk = 500 or glassqw = 1:
-		glassqw = 1
-		msg '	The text blurs across the page. It seems you have poor eyesight. Maybe you should visit an ophthalmologist?'
-		gt 'city_library'
-	end
-	if pcs_nerd > 0:
-		lastread = totminut
-		lastreadday = daystart
-		pcs_nerd += 1
-	end
-	minut += 60
-	if $downlibrary['Skill'] ! '':
-		dynamic "
-			if pcs_<<$downlibrary['Skill']>> >= 50:
-				<<$downlibrary['Skill']>>_exp += rand(0,1)
-			elseif pcs_<<$downlibrary['Skill']>> >= 25:
-				<<$downlibrary['Skill']>>_exp += rand(1,2)
-			else
-				<<$downlibrary['Skill']>>_exp += rand(1,3)
-			end"
-	end
+if $ARGS[0] = '':
+	gs 'shortgs', 'setloc', 'city_library', $ARGS[0]
+	$location_type = 'public_indoors'
+	frost = 0
+	gs 'stat'
+	gs 'themes', 'indoors'
 
-	blizoruk += 1
-}
+	'<center><b><font color="maroon">National Library of Russia</font></b></center>'
+	'<center><img <<$set_imgh>> src="images/locations/city/citycenter/library/downlibint.jpg"></center>'
+	'A huge library with thousands upon thousands of books. You could spend years in here and probably still wouldn''t be able to read it all.'
 
-'<center><b><font color="maroon">National Library of Russia</font></b></center>'
-'<center><img <<$set_imgh>> src="images/locations/city/citycenter/library/downlibint.jpg"></center>'
-'A huge library with thousands upon thousands of books. You could spend years in here and probably still wouldn''t be able to read it all.'
+	act 'Leave': minut += 5 & gt 'city_center'
 
-act 'Leave': minut += 5 & gt 'city_center'
+	if hour <= 7 or hour >= 19:
+		'The library is closed.'
+		exit
+	end
 
-if hour >= 8 and hour <= 18:
 	'There is a large IT section with <a href="exec: gs ''internet_mobile'', ''get_access'', ''free'', ''noporn'',''nocamshow'' & gs ''internet_mobile'', ''add_limitation'', ''general-text'', ''On this public computer all adult content sites are blocked'' & gt ''Komp'',''start''">computers</a> available for public use.'
-	act 'Read a book':
-		gt 'city_library', 'read'
-	end
-	
-	act 'Borrow a book':
-		gt 'city_library', 'loan'
-	end
+
+	act 'Read a book': gt 'city_library', 'read'
+	act 'Borrow a book': gt 'city_library', 'loan'
 
 	if MagicLibrary = 1:
 		act 'Read magic books':
-			dynamic $downlibrary['BookStudy'], 'splcstng'
+			*clr & cla
+			menu_off = 1
+			gs 'library_functions', 'read_book', 'splcstng'
 			gs 'stat'
+
 			'You pick out one of the magic books you can actually read and sit down with it.'
 			'You discover that not only is the subject matter complex and mostly a mystery to you, but the descriptions and explanations are unnecessarily wordy, as if the writer had something to prove.'
 			'After about an hour, you decide to take a break from it and instead test your memory. You don''t remember much, but you understand magic a little better than before.'
 
 			! Find Researchable Spells
-			if func('spellList','numAvailableSpells','librarySpells') > 0:
-				if rand(1,10) = 10:
+			if func('spellList','numAvailableSpells','librarySpells') <= 0:
+				'There doesn''t seem to be any more spells to learn here, but you can still improve your skills in the ones that you''ve already found.'
+			else
+				if rand(0, 9) = 0:
 					gs 'spellList','addAvailableSpells','librarySpells'
 					*nl
 					*pl 'You have come across a lead on a new spell.'
 				end
-			else
-				'There doesn''t seem to be any more spells to learn here, but you can still improve your skills in the ones that you''ve already found.'
 			end
 
 			!!Adding to the Actions opportunity to practice spells MC found
 			gs 'spellList', 'teacherActions', '$librarySpells', 'city_library', ''
 
-			act 'Put the book down': gt $curloc
+			act 'Put the book down': gt $loc, $loc_arg
 		end
 		!!Adding to the Actions opportunity to practice spells MC found
 		gs 'spellList', 'teacherActions', '$librarySpells', 'city_library', ''
 	end
-else
-	'The library is closed.'
-end
 
-gs 'camera', 'check_location'
+	gs 'camera', 'check_location'
+end
 
 if $ARGS[0] = 'read':
-	cla
-	act 'Read a book on science (1:00)':
-		dynamic $downlibrary['BookStudy'], ''
-		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>'
-		'You spend an hour reading, trying to make sense of all the clever propositions written inside and understand the subject it describes.'
-		act 'Put the book back': gt 'city_library', 'read'
-	end
+	gs 'shortgs', 'setloc', 'city_library', 'read'
 
-	act 'Read an adventure novel (1:00)':
-		dynamic $downlibrary['BookStudy'], ''
-		pcs_mood = 100
-		grupvalue[3] += 1
-		gs 'stat'
-		'<center><img <<$set_imgh>> src="images/pc/items/accessories/books/fiction' + rand(1,2) + '.jpg"></center>'
-		'You spend an hour reading an adventure novel, immersing yourself in daring deeds and awesome twists.'
-		act 'Put the book back': gt 'city_library', 'read'
-	end
+	act 'Leave': minut += 5 & gt 'city_center'
 
-	act 'Read a fantasy novel (1:00)':
-		dynamic $downlibrary['BookStudy'], ''
-		pcs_mood = 100
-		grupvalue[3] += 1
-		gs 'stat'
-		'<center><img <<$set_imgh>> src="images/pc/items/accessories/books/fantasy' + rand(1,9) + '.jpg"></center>'
-		'You spend an hour reading a fantasy novel, rescuing damsels from dragons, digging for jewels with dwarves and performing world changing magic alongside elves and druids.'
-		act 'Put the book back': gt 'city_library', 'read'
+	if hour <= 7 or hour >= 19:
+		'The library is closed.'
+		exit
 	end
 
-	act 'Read a science fiction novel (1:00)':
-		dynamic $downlibrary['BookStudy'], ''
-		pcs_mood = 100
-		grupvalue[3] += 1
-		gs 'stat'
-		'<center><img <<$set_imgh>> src="images/pc/items/accessories/books/scifi' + rand(1,6) + '.jpg"></center>'
-		'You spend an hour reading a science fiction novel - flying off into space, traveling through time, running from rogue AI and creating monsters with your hunchbacked assistant.'
-		act 'Put the book back': gt 'city_library', 'read'
-	end
-
-	act 'Read a romance novel (1:00)':
-		dynamic $downlibrary['BookStudy'], ''
-		pcs_mood = 100
-		pcs_horny += 20
-		gs 'stat'
-		'<center><img <<$set_imgh>> src="images/pc/items/accessories/books/romance' + rand(1,20) + '.jpg"></center>'
-		'You spend a very short hour reading a romance novel - choosing between a vampire or a werewolf, falling in love with an obscenely wealthy Grey... Several of the scenes are very steamy and you find yourself getting quite aroused.'
-		act 'Put the book back': gt 'city_library', 'read'
-	end
-	
-	temp = pcs_intel * 2 + pcs_sprt
-	if temp < 100:
-		$diff = 'hard'
-	elseif temp < 150:
-		$diff = 'medium'
-	else
-		$diff = 'easy'
-	end
-	gs 'willpower', 'misc', 'self', $diff
-	if will_cost <= pcs_willpwr:
-		act 'Read from the collected works of Leo Tolstoy (1:00) (<<will_cost>> Willpower)':
-			gs 'willpower', 'pay', 'self'
-			killvar 'will_cost'
-
-			dynamic $downlibrary['BookStudy'], ''
-			gs 'exp_gain', 'sprt', rand(3,6)
-			grupvalue[3] += 2
-			gs 'stat'
-			'<center><img <<$set_imgh>> src="images/pc/items/accessories/books/tolstoy.jpg"></center>'
-			'You read the book for an hour. Tolstoy is certainly a classic writer, but he used a <i>lot</i> of words.'
-			act 'Put the book back': gt 'city_library', 'read'
-		end
-	else
-		act 'Read from the collected works of Leo Tolstoy (1:00) (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
-	end
-	
 	act 'Go back': gt 'city_library'
+	gs 'library_functions', 'set_read_acts'
 end
 
 if $ARGS[0] = 'loan':
-	cla
-	if $lib_book_loaned ! '':
-		'You''ve currently borrowed a <<$lib_book_loaned>>.'
-		if lib_debt <= 0:
-			temp_loan_days_left = lib_debt / -50
-			'You have <<temp_loan_days_left>> days left before you need to return it.'
-		else
-			'<font color="red">Your book is overdue!</font>'
-		end
+	gs 'shortgs', 'setloc', 'city_library', 'loan'
 
-		act 'Return your loaned book':
-			if lib_book_read = 0:
-				if $lib_book_loaned = 'fantasy': f_book -= 1
-			elseif lib_book_read = 1:
-				if $lib_book_loaned = 'fantasy': fantasybook = 0
-			end
-			$lib_book_loaned = ''
-			if lib_debt <= 0: lib_debt = 0
-			gt 'city_library'
-		end
-	end
+	act 'Leave': minut += 5 & gt 'city_center'
 
-	if lib_debt > 0:
-		'You owe an outstanding debt of <<lib_debt>> <b>₽</b> to the library.'
-		if money < lib_debt and karta < lib_debt:
-			'You don''t have enough money to pay your debt!'
-		else
-			if money >= lib_debt:
-				act 'Pay your debt (cash)':
-					money -= lib_debt
-					lib_debt = 0
-					gt 'city_library', 'loan'
-				end
-			end
-			if karta >= lib_debt:
-				act 'Pay your debt (card)':
-					karta -= lib_debt
-					lib_debt = 0
-					gt 'city_library', 'loan'
-				end
-			end
-		end
-	end
-
-	if $lib_book_loaned = '' and lib_debt = 0:
-		!!There''s currently only code for fantasy novels
-		!{act 'Borrow a book on science':
-			*clr & cla
-			menu_off = 1
-			s_book += 1
-			$lib_book_loaned = 'a science book'
-			lib_debt = -700
-			!!Picture here
-			'You find a science book that catches your interest and bring it to the librarian, who notes your name and the title of the book down before handing it to you.'
-			'"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 'Borrow an adventure novel':
-			*clr & cla
-			menu_off = 1
-			a_book += 1
-			$lib_book_loaned = 'an adventure novel'
-			lib_debt = -700
-			!!Picture here
-			'You find an adventure novel that catches your interest and bring it to the librarian, who notes your name and the title of the book down before handing it to you.'
-			'"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 'Borrow a fantasy novel':
-			*clr & cla
-			menu_off = 1
-			f_book += 1
-			$lib_book_loaned = 'a fantasy novel'
-			lib_debt = -700
-			!!Picture here
-			'You find a fantasy novel that catches your interest and bring it to the librarian, who notes your name and the title of the book down before handing it to you.'
-			'"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 'Borrow a science fiction novel':
-			*clr & cla
-			menu_off = 1
-			sf_book += 1
-			$lib_book_loaned = 'a science fiction novel'
-			lib_debt = -700
-			!!Picture here
-			'You find a fantasy novel that catches your interest and bring it to the librarian, who notes your name and the title of the book down before handing it to you.'
-			'"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 'Borrow a romance novel':
-			*clr & cla
-			menu_off = 1
-			r_book += 1
-			$lib_book_loaned = 'a romance novel'
-			lib_debt = -700
-			!!Picture here
-			'You find a romance novel that catches your interest and bring it to the librarian, who notes your name and the title of the book down before handing it to you.'
-			'"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}
+	if hour <= 7 or hour >= 19:
+		'The library is closed.'
+		exit
 	end
 
 	act 'Go back': gt 'city_library'
+	gs 'library_functions', 'set_loan_acts'
 end
 
 --- city_library ---------------------------------
-

+ 28 - 28
locations/torgcentr.qsrc → locations/city_mall.qsrc

@@ -1,13 +1,13 @@
-# torgcentr
+# city_mall
 CLOSE ALL
 if sound = 0:PLAY 'sound/mall.mp3',30
 gs 'stat'
 '<center><b>Shopping mall</b></center>'
 '<center><img <<$set_imgh>> src="images/locations/city/citycenter/mall/torgcentr.jpg"></center>'
 ! WD: Supermarket fix
-$loc = 'torgcentr'
+$loc = 'city_mall'
 $location_type = 'public_indoors'
-$menu_loc = 'torgcentr'
+$menu_loc = 'city_mall'
 $menu_arg = ''
 menu_off = 0
 gs 'katja_meynold_schedule'
@@ -18,20 +18,20 @@ if hour >= 8 and hour <= 20:
 	*p '<center><a href="exec: minut += 3 & gt ''shop_pussycats'', ''start''"><img src="images/locations/city/citycenter/mall/pussycat.png"></a>'
 !! Pussy-Kats - Youth clothing shop
 		*p '   '
-	*p'<a href="exec: minut += 3 & gt ''moncheri'', ''start''"><img src="images/locations/city/citycenter/mall/moncheri.png"></a>'
+	*p'<a href="exec: minut += 3 & gt ''shop_moncheri'', ''start''"><img src="images/locations/city/citycenter/mall/moncheri.png"></a>'
 !!Mon Cheri - European style expensive boutique
 		*p '   '
-	*p'<a href="exec: minut += 3 & gt ''lusso'', ''start''"><img src="images/locations/city/citycenter/mall/Lusso.png"></a>'
+	*p'<a href="exec: minut += 3 & gt ''shop_lusso'', ''start''"><img src="images/locations/city/citycenter/mall/Lusso.png"></a>'
 !!Lusso Intimo - European style expensive underwear
 		*p '   '
 	*p '<a href="exec: minut += 3 & gt ''shop_fashionista'',''start''"><img src="images/locations/city/citycenter/mall/fashionista.png"></a>'
 !! shop_fashionista - Shop for designer brands
-	
+
 	*nl
 	*nl
 	*nl
-	
-	*p '<a href="exec: minut += 3 & gt ''sportShop'', ''start''"><img src="images/locations/city/citycenter/mall/sports.png"></a>'
+
+	*p '<a href="exec: minut += 3 & gt ''shop_danilovich'', ''start''"><img src="images/locations/city/citycenter/mall/sports.png"></a>'
 !! Danilovich Sporting goods - Sports shop
 		*p '   '
 	*p '<a href="exec: minut += 3 & gt ''salon'', ''start''"><img src="images/locations/city/citycenter/mall/beautybart.png"></a>'
@@ -40,13 +40,13 @@ if hour >= 8 and hour <= 20:
 	*p'<a href="exec: minut += 3 & gt ''hairsalon'', ''start''"><img src="images/locations/city/citycenter/mall/goldencurl.png"></a>'
 !! Golden curl - hairdressers
 		*p '   '
-	*p '<a href="exec:torg = 1 & minut += 3 & gt ''budgetclothes'',''start''"><img src="images/locations/city/citycenter/mall/gm.png"></a>'
+	*p '<a href="exec:torg = 1 & minut += 3 & gt ''shop_gm'',''start''"><img src="images/locations/city/citycenter/mall/gm.png"></a>'
 !! G&M - Cheap clothing store
 
 	*nl
 	*nl
 	*nl
-		
+
 	*p '<a href="exec: minut += 3 & gt ''zoomagazine'',''start''"><img src="images/locations/city/citycenter/mall/petstore.png"></a>'
 !! Pet Emporium - Pet shop
 		*p '   '
@@ -62,9 +62,9 @@ if hour >= 8 and hour <= 20:
 	*nl
 	*nl
 	*nl
-	
+
 	*p '<a href="exec: minut += 3 & gt ''shop_materinstvo'',''start''"><img src="images/locations/city/citycenter/mall/mommy.png"></a>'
-!! Pregnancy store	
+!! Pregnancy store
 
 	*p '<a href="exec: minut += 3 & gt ''shop_photography'',''start''"><img src="images/locations/city/citycenter/mall/photoshop.png"></a>'
 !! Photography store
@@ -87,7 +87,7 @@ if hour > 12 and hour < 18 and sunWeather = 1 and exhibitionQW >= 5 and KsenyaQW
 	'<center><img <<$set_imgh>> src="images/characters/pushkin/ksenya/mall1.jpg"></center>'
 	'As you approach the mall, you see a beautiful, hot pink Lamborghini before you. It''s top is down and it''s doors are wide open. Inside you see a familiar face. "Hello Ksenya" You say walking up to her.'
 	'She looks up at you with a smile and steps out of the car. You can see she isn''t wearing her normal exhibition clothes today but with slight movement, you can get a look at her panties as her dress is rather tight and short.'
-	
+
 	act 'Talk to Ksenya':
 		*clr & cla
 		KsenyaQW = 1
@@ -104,51 +104,51 @@ if hour > 12 and hour < 18 and sunWeather = 1 and exhibitionQW >= 5 and KsenyaQW
 			act 'stick around':
 				*clr & cla
 				'<center><img <<$set_imgh>> src="images/characters/pushkin/ksenya/mall3.jpg"></center>'
-				'You and Ksenya wait around talking about your shared passion when a woman in a white dress walks up to the car. For a moment you could swear this was her sister but when Ksenya walked up to her and hugged her, you understood that this was her mother. "You look good, mom" She says to the other woman.' 
+				'You and Ksenya wait around talking about your shared passion when a woman in a white dress walks up to the car. For a moment you could swear this was her sister but when Ksenya walked up to her and hugged her, you understood that this was her mother. "You look good, mom" She says to the other woman.'
 				'"Who''s your friend?" she asks leaning on the hood of the car.'
-				'"Mom, This is <<$pcs_firstname>>. She is a friend that I share an interest with and she is also a customer of mine" Ksenya says. "<<$pcs_nickname>>, This is my mother, Makoto." she says and her mother hugs you. "Any friend of my daughters is a friend of mine."' 
+				'"Mom, This is <<$pcs_firstname>>. She is a friend that I share an interest with and she is also a customer of mine" Ksenya says. "<<$pcs_nickname>>, This is my mother, Makoto." she says and her mother hugs you. "Any friend of my daughters is a friend of mine."'
 
 				act 'continue':
 					*clr & cla
 					'<center><img <<$set_imgh>> src="images/characters/pushkin/ksenya/mall2.jpg"></center>'
 					'Makoto gets into the driver seat and starts up the car. "Come on Ksenya, we need to make a stop at the bank before we head back" she says and looks at you as Ksenya goes to the other side of the car. "Nice to have met you, <name>. I hope to see you around" she says and they drive off, leaving you alone in the parking lot.'
 
-					act 'Enter the mall': gt 'torgcentr'
+					act 'Enter the mall': gt 'city_mall'
 				end
 			end
 		end
 	end
 	act 'say you don''t have time right now and enter the mall':
 		Kignore = daystart
-		gt 'torgcentr'
+		gt 'city_mall'
 	end
 end
 
 !!{Old menu
 	*p '<center><a href="exec:gt ''shop_pussycats''">Pussy-Cats</a>'
 		*p ' - '
-	*p '<a href="exec:gt ''sportShop'', ''start''">Sporting goods store</a>'
+	*p '<a href="exec:gt ''shop_danilovich'', ''start''">Sporting goods store</a>'
 		*p ' - '
-	*p'<a href="exec:gt ''moncheri'', ''start''">Mon Chéri</a>'
+	*p'<a href="exec:gt ''shop_moncheri'', ''start''">Mon Chéri</a>'
 		*p ' - '
-	*p '<a href="exec:torg = 1 & gt ''budgetclothes'',''start''">G&M Store</a>'
+	*p '<a href="exec:torg = 1 & gt ''shop_gm'',''start''">G&M Store</a>'
 		*p ' - '
 	*p '<a href="exec:gt ''shop_fashionista'',''start''">shop_fashionista</a>'
-	
+
 	*nl
 	*nl
-	
+
 	*p '<a href="exec:gt ''salon'', ''start''">Beauty Salon</a>'
 		*p ' - '
 	*p'<a href="exec:gt ''hairsalon'', ''start''">The Golden Curl Hairsalon</a>'
-		
+
 	*nl
 	*nl
-		
+
 	*p '<a href="exec:gt ''zoomagazine'',''start''">Pet store</a>'
 		*p ' - '
 	*p '<a href="exec:gt ''shopdacha''">Construction Firm</a>'
-		
+
 	*nl
 	*nl
 
@@ -157,10 +157,10 @@ end
 	*p '<a href="exec:gt ''billiard''">Play Billiards</a>'
 		*p ' - '
 	*p'<a href="exec:gt ''kino''">Movie theater</a>'
-	
+
 	*nl
 	*nl
-	
+
 	*P '<a href="exec:gt ''shop'', ''start''">Supermarket</a></center>'
 
 end
@@ -168,5 +168,5 @@ end
 act 'Leave': minut += 5 & gt 'city_center'
 }
 
---- torgcentr ---------------------------------
+--- city_mall ---------------------------------
 

+ 16 - 124
locations/city_mansion_residence_2.qsrc

@@ -7,12 +7,12 @@ if $ARGS[0] = 'yliving':
 	$menu_arg = 'yliving'
 	$location_type = 'private'
 	$locclass = 'livingr'
-	
+
 	menu_off = 0
 	minut += 1
 	gs 'stat'
 	gs 'music_actions', 'clear_restrictions'
-	
+
 	*clr & cla
 	'<center><b><font color="maroon">Living Room</font></b></center>'
 	if ymanrem[7] = 2:
@@ -38,11 +38,11 @@ if $ARGS[0] = 'ylounge':
 	$menu_loc = 'city_mansion_residence_2'
 	$menu_arg = 'ylounge'
 	$location_type = 'private'
-	
+
 	menu_off = 0
 	minut += 1
 	gs 'stat'
-	
+
 	*clr & cla
 	'<center><b><font color="maroon">Lounge</font></b></center>'
 	if ymanrem[8] = 2:
@@ -52,7 +52,7 @@ if $ARGS[0] = 'ylounge':
 	else
 		'<center><img <<$set_imgh>> src="images/locations/city/suburb/mansion/i_unfinished.jpg"></center>'
 	end
-	
+
 	act 'Leave the room': gt 'city_mansion_residence_1', 'yfoyer'
 
 	if ymanrem[8] = 2:
@@ -64,7 +64,7 @@ if $ARGS[0] = 'ylounge':
 			if mc_inventory['sewing_fabric'] <= 0:'You do not have any fabric.'
 			*nl
 			if pcs_sewng >= 80:
-				if newgobelen = 0 and mc_inventory['sewing_fabric'] > 0: 
+				if newgobelen = 0 and mc_inventory['sewing_fabric'] > 0:
 					act 'Start a new tapestry': gt 'sewing', 'tapestry'
 				elseif newgobelen >= 1:
 					'Your tapestry is <<newgobelen/10>> percent finished.'
@@ -77,17 +77,12 @@ if $ARGS[0] = 'ylounge':
 end
 
 if $ARGS[0] = 'ylibrary':
-	$loc = 'city_mansion_residence_2'
-	$loc_arg = 'ylibrary'
-	$menu_loc = 'city_mansion_residence_2'
-	$menu_arg = 'ylibrary'
-	$location_type = 'private'
-	
 	menu_off = 0
+	gs 'shortgs', 'setloc', 'city_mansion_residence_2', 'ylibrary'
+	$location_type = 'private'
 	minut += 1
 	gs 'stat'
-	
-	*clr & cla
+
 	'<center><b><font color="maroon">Library</font></b></center>'
 	if ymanrem[10] = 2:
 		'<center><img <<$set_imgh>> src="images/locations/city/suburb/mansion/y_library.jpg"></center>'
@@ -98,114 +93,11 @@ if $ARGS[0] = 'ylibrary':
 	end
 
 	act 'Leave the room': gt 'city_mansion_residence_1', 'yfoyer'
-	
-	if ymanrem[10] = 2:
-		killvar '$downlibrary'
-		$downlibrary['read'] = {
-			*clr & cla
-			menu_off = 1
-			if blizoruk = 500 or glassqw = 1:
-				glassqw = 1
-				msg '	The text blurs across the page. It seems you have poor eyesight. Maybe you should visit an ophthalmologist?'
-				gt 'city_mansion_residence_2', 'ylibrary'
-			end
-			if pcs_nerd > 0:
-				lastread = totminut
-				lastreadday = daystart
-				pcs_nerd += 1
-			end
-			minut += 60
-			blizoruk += 1
-		}
 
+	if ymanrem[10] = 2:
 		'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) + rand(0, drugVars['mentats_dose'])
-			grupvalue[3] +=1
-			gs 'stat'
-
-			'<center><img <<$set_imgh>> src="images/pc/items/accessories/books/science1.jpg"></center>'
-			'You spend an hour reading, trying to make sense of all the clever propositions writen inside and to finally understand the subject it describes.'
-			
-			act 'Put the book back': gt 'city_mansion_residence_2', 'ylibrary'
-		end
-
-		act 'Read an adventure novel (1:00)':
-			dynamic $downlibrary['read']
-			pcs_mood = 100
-			grupvalue[3] +=1
-			gs 'stat'
-
-			'<center><img <<$set_imgh>> src="images/pc/items/accessories/books/fiction' + rand(1,2) + '.jpg"></center>'
-			'You spend an hour reading an adventure novel, immersing yourself in daring deeds and awesome twists.'
-			
-			act 'Put the book back': gt 'city_mansion_residence_2', 'ylibrary'
-		end
-
-		act 'Read a fantasy novel (1:00)':
-			dynamic $downlibrary['read']
-			pcs_mood = 100
-			grupvalue[3] +=1
-			gs 'stat'
-
-			'<center><img <<$set_imgh>> src="images/pc/items/accessories/books/fantasy' + rand(1,9) + '.jpg"></center>'
-			'You spend an hour reading a fantasy novel, rescuing damsels from dragons, digging for jewels with dwarves and performing word changing magic alongside elves and druids.'
 
-			act 'Put the book back': gt 'city_mansion_residence_2', 'ylibrary'
-		end
-
-		act 'Read a science fiction novel (1:00)':
-			dynamic $downlibrary['read']
-			pcs_mood = 100
-			grupvalue[3] += 1
-			gs 'stat'
-
-			'<center><img <<$set_imgh>> src="images/pc/items/accessories/books/scifi' + rand(1,6) + '.jpg"></center>'
-			'You spend an hour reading a science fiction novel - flying off into space, travelling though time, running from rogue AI''s and creating monsters with your hunchbacked assistant.'
-
-			act 'Put the book back': gt 'city_mansion_residence_2', 'ylibrary'
-		end
-
-		act 'Read a romance novel (1:00)':
-			dynamic $downlibrary['read']
-			pcs_mood = 100
-			pcs_horny += 20
-			gs 'stat'
-
-			'<center><img <<$set_imgh>> src="images/pc/items/accessories/books/romance' + rand(1,20) + '.jpg"></center>'
-			'You spend a very short hour reading a romance novel - choosing between a vampire or a werewolf, falling in love with an obscenely wealthy Grey... several of the scenes are very steamy and you find yourself getting quite aroused.'
-
-			act 'Put the book back': gt 'city_mansion_residence_2', 'ylibrary'
-		end
-
-		temp = pcs_intel * 2 + pcs_sprt
-		if temp < 100:
-			$diff = 'hard'
-		elseif temp < 150:
-			$diff = 'medium'
-		else
-			$diff = 'easy'
-		end
-		gs 'willpower', 'misc', 'self', $diff
-		if will_cost <= pcs_willpwr:
-			act 'Read from the collected works of Leo Tolstoy (1:00) (<<will_cost>> Willpower)':
-				gs 'willpower', 'pay', 'self'
-				killvar 'will_cost'
-
-				dynamic $downlibrary['read']
-				gs 'exp_gain', 'sprt', rand(3,6)
-				grupvalue[3] += 2
-				gs 'stat'
-
-				'<center><img <<$set_imgh>> src="images/pc/items/accessories/books/tolstoy.jpg"></center>'
-				'You read the book for an hour. Tolstoy is certainly a classic writer, no one denies this, but he used a shit-load of words.'
-
-				act 'Put the book back': gt 'city_mansion_residence_2', 'ylibrary'
-			end
-		else
-			act 'Read from the collected works of Leo Tolstoy (1:00) (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
-		end
+		gs 'library_functions', 'set_read_acts'
 	end
 end
 
@@ -217,12 +109,12 @@ if $ARGS[0] = 'yoffice':
 	$locM = 'city_mansion_residence_2'
 	$locM_arg = 'yoffice'
 	$location_type = 'private'
-	
+
 	menu_off = 0
 	minut += 1
 	gs 'stat'
 	gs 'music_actions', 'clear_restrictions'
-	
+
 	*clr & cla
 	'<center><b><font color="maroon">Office</font></b></center>'
 	if ymanrem[12] = 2:
@@ -243,7 +135,7 @@ if $ARGS[0] = 'yoffice':
 
 	!! IMPORTANT: if there is anything added later that could mean that others are in the room, gs 'music_actions', 'not_alone' should be added with the correct conditions.
 	gs 'music_actions', 'start'
-		
+
 	end
 end
 
@@ -253,11 +145,11 @@ if $ARGS[0] = 'ynursery':
 	$menu_loc = 'city_mansion_residence_2'
 	$menu_arg = 'ynursery'
 	$location_type = 'private'
-	
+
 	menu_off = 0
 	minut += 1
 	gs 'stat'
-	
+
 	*clr & cla
 	'<center><b><font color="maroon">Nursery</font></b></center>'
 	if ymanrem[9] = 2:

+ 59 - 73
locations/city_market.qsrc

@@ -15,17 +15,14 @@ if $ARGS[0] = 'start' or $loc_arg = 'start':
 	end
 	!if sound = 0:PLAY 'sound/street.mp3',30
 
-	cls
-	gs 'stat'
+	gs 'shortgs', 'setloc', 'city_market', 'start'
 	minut += 5
-	$loc_arg = 'start'
-	$loc = 'city_market'
-	$menu_loc = 'city_market'
-	$menu_arg = 'start'
+	menu_off = 0
 	gs 'stat'
+
 	gs 'themes', 'outdoors'
 	'One of the stalls has a sign attached to it that reads "Cash paid for secondhand clothes". You can <a href="exec:cloc=2 & gt ''clothing'', ''view_clothing_list'', ''sell''">sell individual items</a> or <a href="exec:gs ''portnoi''">all of your unwanted clothes here</a>.'
-	
+
 	if analplugIN = 1 and $pantyworntype = 'none' and PCloSkirt > 2:
 		nurand = rand(0, 100)
 
@@ -39,9 +36,7 @@ if $ARGS[0] = 'start' or $loc_arg = 'start':
 	end
 
 	act 'Leave':
-		cla
 		minut += 5
-		$loc_arg = ''
 		gs 'arousal', 'end'
 		gs 'stat'
 		gt 'city_residential'
@@ -54,25 +49,30 @@ if $ARGS[0] = 'start' or $loc_arg = 'start':
 			if hour < 9:
 				'Arthur is waiting to set up a stall for you.'
 				act '<b>Set up stall</b>':
-					cla
-					*clr
+					*clr & cla
+					menu_off = 1
 					hour = 9
 					minut = 0
 					prodpayum = 1200
+					gs 'stat'
+
 					'Arthur unloads boxes from his truck and gives them to you. You start hanging the clothes inside around the stall.'
 					'Before leaving, Arthur gives you instructions. "Sell it all at whatever price you want, but at the end of your shift, I''ll charge you 1000 <b>₽</b> for each item sold. You should be making me no less than <<arturplan>> <b>₽</b>."'
 
-					act 'Start working':gt 'city_marketwork', 'start'
+					act 'Start working': gt 'city_marketwork', 'start'
 				end
 			end
 		end
 		act 'Quit':
 			cla
+			menu_off = 1
 			work = 0
 			workrin = 0
+			gs 'stat'
+
 			'You quit your job at the market and collect your papers.'
 
-			act 'Leave':gt 'city_market', 'start'
+			act 'Leave': gt 'city_market', 'start'
 		end
 	end
 
@@ -81,13 +81,15 @@ if $ARGS[0] = 'start' or $loc_arg = 'start':
 		'A messily written ad hangs from one of the stalls. "Need female market stall staff. Paychecks big."'
 
 		act 'Approach the owner of the ad':
-			cla
-			*clr
+			*clr & cla
+			menu_off = 1
+			gs 'stat'
+
 			'Hi, my name is Arthur. I own many stalls here and I need a saleswoman. Want the job?'
 			'Pay is a percentage of sales, paid at end of shift. Your shifts would be Tuesdays, Thursdays and Saturdays from 08:00 to 14:00.'
 			'Government insist I have your papers, so it would be your main job.'
 
-			act 'Leave':gt 'city_market', 'start'
+			act 'Leave': gt 'city_market', 'start'
 
 			act 'Take the job':
 				cla
@@ -96,39 +98,40 @@ if $ARGS[0] = 'start' or $loc_arg = 'start':
 				arturplan = 5000
 				'You give your papers to Arthur and he shakes your hand, welcoming you aboard.'
 
-				act 'Leave':gt 'city_market', 'start'
+				act 'Leave': gt 'city_market', 'start'
 			end
 		end
 	end
 
 	act 'Go to the book tray':
-		cls
+		*clr & cla
+		menu_off = 1
 		minut += 15
-		gs'stat'
+		gs 'stat'
 
 		'You wlak up to the stall and inspect what''s on sale. You see a fantasy book, a science fiction book and various romance novels. They all cost 350 <b>₽</b> each.'
 
 		if money >= 350:
 			act 'Buy the fantasy book':
-				cls
+				*clr & cla
 				minut += 15
 				money -= 350
 				f_book += 1
-				gs'stat'
+				gs 'stat'
 
 				'You buy the fantasy book for 350 <b>₽</b>.'
 
-				act 'Leave':gt 'city_market', 'start'
+				act 'Leave': gt 'city_market', 'start'
 			end
 		end
 
 		if money >= 350:
 			act 'Buy the science fiction book':
-				cls
+				*clr & cla
 				minut += 15
 				money -= 350
 				f_book += 1
-				gs'stat'
+				gs 'stat'
 
 				'You buy the science fiction book 350 <b>₽</b>.'
 
@@ -138,11 +141,11 @@ if $ARGS[0] = 'start' or $loc_arg = 'start':
 
 		if money >= 350:
 			act 'Buy a romance novel':
-				cls
+				*clr & cla
 				minut += 15
 				money -= 350
 				w_book += 1
-				gs'stat'
+				gs 'stat'
 
 				'You buy a romance novel for 350 <b>₽</b>.'
 
@@ -150,76 +153,62 @@ if $ARGS[0] = 'start' or $loc_arg = 'start':
 			end
 		end
 
-		act 'Leave':gt 'city_market', 'start'
+		act 'Leave': gt 'city_market', 'start'
 	end
 
-	act 'View clothing':
-		cla
-		minut += 5
-		gt 'city_market', 'clo'
-	end
+	act 'View clothing': minut += 5 & gt 'city_market', 'clo'
 end
 
 if $ARGS[0] = 'clo':
-	$loc_arg = 'clo'
-	$loc = 'city_market'
-	cls
-	gs'stat'
+	gs 'shortgs', 'setloc', 'city_market', 'clo'
+	menu_off = 0
+	gs 'stat'
+
 	gs 'themes', 'indoors'
 	'<center><b><font color="maroon">Clothes.</font></b></center>'
 	'You inspect the cheap clothing the stall has to offer.'
 
+	act 'Return': minut += 5 & gt 'city_market', 'start'
+
 	gs 'clothing_QV', 'shop_filter_header'
 	gs 'clothing', 'totals', 'market_outfits'
 
-	act 'Return':
-		cla
-		minut += 5
-		gt 'city_market', 'start'
-	end
-
 	!!To filter just this set
 	clo_i = 0
 	:loopmarket_outfits_filter
-
-	i = 1
-	:loopmarket_outfits
-		if market_outfits[i] = 0:
-			gs 'clothing_attributes', 'market_outfits', i
-			gs 'clothing_QV', 'shop_filter'
-
-			!!sort by filter
-			if (clothingfilter['quality'] = 0 and CloQuality = clo_i) or (clothingfilter['inhibition'] = 0 and CloInhibit = clo_i) or clothingfilter['number'] = 0:
-				if clothingfilter['inc'] = 1 and clothingfilter['only'] = 1:*p '<a href="exec: i = <<i>> & gt ''city_market'', ''marketclo''"><img <<$set_imgh>> src="images/pc/items/market/clothes/<<i>>.jpg" 	height="250" /></a>'
+		i = 1
+		:loopmarket_outfits
+			if market_outfits[i] = 0:
+				gs 'clothing_attributes', 'market_outfits', i
+				gs 'clothing_QV', 'shop_filter'
+
+				!!sort by filter
+				if (clothingfilter['quality'] = 0 and CloQuality = clo_i) or (clothingfilter['inhibition'] = 0 and CloInhibit = clo_i) or clothingfilter['number'] = 0:
+					if clothingfilter['inc'] = 1 and clothingfilter['only'] = 1:*p '<a href="exec: i = <<i>> & gt ''city_market'', ''marketclo''"><img <<$set_imgh>> src="images/pc/items/market/clothes/<<i>>.jpg" 	height="250" /></a>'
+				end
 			end
-		end
-	i += 1
-	if i <= total:jump 'loopmarket_outfits'
-
-	clo_i += 1
-	if clothingfilter['quality'] = 0 and clo_i <= 7:
-		jump 'loopmarket_outfits_filter'
-	elseif clothingfilter['inhibition'] = 0 and clo_i <= 50:
+			i += 1
+		if i <= total: jump 'loopmarket_outfits'
+		clo_i += 1
+	if clothingfilter['quality'] = 0 and clo_i <= 7 or clothingfilter['inhibition'] = 0 and clo_i <= 50:
 		jump 'loopmarket_outfits_filter'
 	end
 end
 
 if $ARGS[0] = 'marketclo':
-	cla
-
 	if market_outfits[i] ! 0:
 		msg 'You already own these clothes.'
 		gt 'city_market', 'clo'
 	end
 
-	gt 'clothing', 'view_clothing_item', 'market_outfits',i, 750, 'shop'
-
+	gt 'clothing', 'view_clothing_item', 'market_outfits', i, 750, 'shop'
 end
 
 if $ARGS[0] = 'wares':
 	*clr & cla
 	$loc_s = 'city_market'
 	$args_s = 'wares'
+	menu_off = 1
 
 	gs 'item_cart', 'shoppping_aisle', 'market'
 	gs 'stat'
@@ -232,17 +221,14 @@ end
 
 if $ARGS[0] = 'tailor':
 	CLOSE ALL
-	cls
-	$loc = 'city_market'
-	$loc_arg = 'tailor'
-	$menu_loc = 'city_market'
-	$menu_arg = 'tailor'
+	gs 'shortgs', 'setloc', 'city_market', 'tailor'
 	menu_off = 0
 	gs 'stat'
+
 	'A sign reads, "Jacob Solomonovich Schneersohn, tailor, 8:00-16:00 Monday - Friday"'
+
 	act 'Speak to the tailor':
-		cla
-		*clr
+		*clr & cla
 		'An elderly Jewish man is sitting at a table. He pulls his glasses down a little and looks over the top of them as he points at you.'
 
 		if portnoyQW > 0:
@@ -283,10 +269,10 @@ if $ARGS[0] = 'tailor':
 				'"<<$pcs_nickname>>....What a pretty name. Come, sit here on this chair. How can I help you?"'
 
 				act 'Ask him about your clothes':
-					cla
-					*clr
+					*clr & cla
 					minut += 15
 					gs 'stat'
+
 					'"Can you tailor my clothes to fit me better?"'
 					'"Of course I can! Otherwise, what kind of tailor would I be? Here, let me see what you''re wearing."'
 					'He jumps up and nimbly removes the tape from his neck and begins to measure your chest, waist and hips.'

+ 32 - 32
locations/city_musicstore.qsrc

@@ -1,7 +1,7 @@
 # city_musicstore
 
 if $ARGS[0] = 'musicshop':
-	*clr & cla	
+	*clr & cla
 	if ml_musicstorevisited = 0:
 		ml_musicstorevisited = 1
 		gt 'city_musicstore', 'firstvisit'
@@ -16,14 +16,14 @@ if $ARGS[0] = 'musicshop':
 			if pcs_instrmusic < 30 and pcs_perform < 10:
 				'You pick up a guitar you like the look of, but are too shy to play it. After strumming a few chords, you put it back on it''s stand.'
 			else
-				'Some texts here depending on music skill and performing skill'			
+				'Some texts here depending on music skill and performing skill'
 			end
 		end }
-		act 'Leave': 
+		act 'Leave':
 			if ml_boughtguitar > 0 or ml_boughtamp > 0:
 				gt 'city_musicstore', 'payandtakestuff'
 			end
-			gt 'torgcentr'
+			gt 'city_mall'
 		end
 
 		musicrand = rand(1,2)
@@ -42,7 +42,7 @@ if $ARGS[0] = 'musicshop':
 						'He smiles and starts telling you about a variety of instruments. He seems to really know his stuff.'
 					else
 						'He gives you a slight knowing smirk when he sees you. "So what can I do for one of my fans?"'
-						'"I just came to look around and maybe do a little shopping," you reply.' 
+						'"I just came to look around and maybe do a little shopping," you reply.'
 						'He nods and starts telling you about a variety of instruments. He seems to really know his stuff.'
 					end
 				elseif npc_rel['A154'] <= 20:
@@ -53,7 +53,7 @@ if $ARGS[0] = 'musicshop':
 						'You smile. "Thanks, but I just came to look around and maybe do a little shopping."'
 						'He nods and starts telling you about a variety of instruments. He seems to really know his stuff.'
 					else
-						'He smirks when he sees you. "Come to try and butter me up before I get famous?"' 
+						'He smirks when he sees you. "Come to try and butter me up before I get famous?"'
 						'You ignore his comment and ask him about some of the instruments.'
 						'He nods and starts telling you about a variety of instruments. He seems to really know his stuff.'
 					end
@@ -81,46 +81,46 @@ if $ARGS[0] = 'firstvisit':
 		'You enter the store, passing the door to be submerged in a loud, cacophony environment. The walls are filled with guitars, bass, amps, drums and even keyboards.'
 		'A tall, ginger haired man turns to you with a bored expression that turns into a perplexed smile as he takes your sight in.'
 	end
-	
+
 	act 'Approach the counter':
 		*clr & cla
 		'<center><img src="images/locations/city/citycenter/mall/musicstore/jimmy.jpg"></center>'
 		'He straightens up. "Hello there, I''m Jimmy! Is there anything I can help you with?"'
 		act 'Look for a guitar':
 			*clr & cla
-			'<center><img src="images/locations/city/citycenter/mall/musicstore/cheap_acoustic_1.jpg"></center>'		
+			'<center><img src="images/locations/city/citycenter/mall/musicstore/cheap_acoustic_1.jpg"></center>'
 			'You start browsing the guitars on offer, but aren''t sure what you''re looking and gladly accept his help. After answering his questions about what you''re looking for, he finally picks up an affordable acoustic guitar as a recommendation.'
 			'He leaves you alone with the instrument, so you sit down to try it. You strum the chords that you know, trying to play something.'
 			if money > 3400 or karta > 3400:
 				if money < 14280 and karta < 14280:
 					'While the guitar isn''t the best sounding, it''s comfortable and looking at the price tags, the only one you can afford.'
-				else 
+				else
 					'The guitar isn''t the best sounding. However, looking at the price tags on the others, you''re not sure if you should spend so much money on a better one until you''re better at playing.'
 				end
 				if money > 3400: act 'Buy a cheap acoustic guitar (3,400 <b>P</b>) - pay with cash': gt 'city_musicstore', 'buycheapacoustic', 'money'
 
-				if karta > 3400: act 'Buy a cheap acoustic guitar (3,400 <b>P</b>) - pay with card': gt 'city_musicstore', 'buycheapacoustic', 'karta'						
+				if karta > 3400: act 'Buy a cheap acoustic guitar (3,400 <b>P</b>) - pay with card': gt 'city_musicstore', 'buycheapacoustic', 'karta'
 				act 'You have to think about it':
 					ml_didntbuyguitarthefirstvisit = 1
 					'You hesitate before deciding not to buy it, at least not for now. "I''ll have to talk to think about it first," you tell Jimmy.'
 					'He nods. "You know what? I''ll put it aside for you in case you change your mind, but be quick before someone else beats you to it!" He scribbles something on a post-it note and sticks it on the guitar. "I''ll try to keep the price the same, 3,400 <b>₽</b>."'
-					act 'Leave': gt 'torgcentr'
+					act 'Leave': gt 'city_mall'
 				end
 			else
 				ml_didntbuyguitarthefirstvisit = 1
 				'While the guitar isn''t the best sounding, it is comfortable. Unfortunately, while it''s cheaper than the rest, it still costs more than you have. You hand it back to Jimmy with a sigh. "Sorry, but I can''t buy it right now."'
 				'He nods. "You know what? I''ll put it aside for you in case you change your mind, but be quick before someone else beats you to it!" He scribbles something on a post-it note and sticks it on the guitar. "I''ll try to keep the price the same, 3,400 <b>₽</b>."'
-				act 'Leave': gt 'torgcentr'
-			end				
+				act 'Leave': gt 'city_mall'
+			end
 		end
-		act 'Leave': 
-			ml_didntbuyguitarthefirstvisit = 1		
-			gt 'torgcentr'
+		act 'Leave':
+			ml_didntbuyguitarthefirstvisit = 1
+			gt 'city_mall'
 		end
 	end
-	act 'Leave': 
-		ml_didntbuyguitarthefirstvisit = 1		
-		gt 'torgcentr'
+	act 'Leave':
+		ml_didntbuyguitarthefirstvisit = 1
+		gt 'city_mall'
 	end
 end
 
@@ -130,7 +130,7 @@ if $ARGS[0] = 'cameback':
 	'<center><img src="images/locations/city/citycenter/mall/musicstore/music_store.jpg"></center>'
 	*nl
 	'You enter the store, passing the door to be submerged in a loud, cacophony environment.'
-	if money > 3400 or karta > 3400: 
+	if money > 3400 or karta > 3400:
 		act 'Ask Jimmy about the guitar':
 			cla
 			'<center><img src="images/locations/city/citycenter/mall/musicstore/jimmy.jpg"></center>'
@@ -139,24 +139,24 @@ if $ARGS[0] = 'cameback':
 			'He looks up from the guitar. "Oh hey. Sure, I have it. Let me get it for you."'
 			'He disappears for a while before he brings the guitar out. "See, all in good shape. Properly set up and everything."'
 			if money > 3400: act 'Buy a cheap acoustic guitar (3,400 <b>P</b>) - pay with cash': gt 'city_musicstore', 'buycheapacoustic', 'money'
-			if karta > 3400: act 'Buy a cheap acoustic guitar (3,400 <b>P</b>) - pay with card': gt 'city_musicstore', 'buycheapacoustic', 'karta'						
+			if karta > 3400: act 'Buy a cheap acoustic guitar (3,400 <b>P</b>) - pay with card': gt 'city_musicstore', 'buycheapacoustic', 'karta'
 		end
 	end
 	act 'Shop for guitars and amps': gt 'city_musicstore_stock', 'acoustic'
-	act 'Try some guitars': 
+	act 'Try some guitars':
 		'<center><img src="images/locations/city/citycenter/mall/musicstore/try_guitars.jpg"></center>'
-		!! TO DO: Better scenes here			
+		!! TO DO: Better scenes here
 		if pcs_instrmusic < 30 and pcs_perform < 10:
 			'You pick up a guitar you like the look of, but are too shy to play it. After strumming a few chords, you put it back on it''s stand.'
 		else
-			'Some texts here depending on music skill and performing skill'			
+			'Some texts here depending on music skill and performing skill'
 		end
 	end
-	act 'Leave': 
+	act 'Leave':
 		if ml_boughtguitar > 0 or ml_boughtamp > 0:
 			gt 'city_musicstore', 'payandtakestuff'
 		end
-		gt 'torgcentr'
+		gt 'city_mall'
 	end
 end
 
@@ -171,20 +171,20 @@ if $ARGS[0] = 'buycheapacoustic':
 		'Jimmy puts the guitar in a gigbag and drops a set of strings and picks in the pocket. "A proper starter kit," he states and rings up the purchase.'
 	end
 	'He looks at you thoughtfully, then drops a thick, slightly worn booklet in the bag. "Some stuff to learn from," he says while handing your purchase to you. "Congratulations, welcome to the starving musician community."'
-	
+
 	gs 'city_musicstore', 'first_setup'
-	
+
 	if $ARGS[1] = 'money': money -= 3400
 	if $ARGS[1] = 'karta': karta -= 3400
 	gs 'stat'
-	act 'Leave': gt 'torgcentr'
+	act 'Leave': gt 'city_mall'
 end
 
 if $ARGS[0] = 'payandtakestuff':
 	if ml_boughtamp + ml_guitar['carried'] > 0 or ml_boughtguitar > 1:
 		minut += (ml_boughtguitar * 5) + (ml_boughtguitar * 5)
 		'Jimmy takes your details and your home address after you pay to set up the delivery. "It should be there tomorrow."'
-	else	
+	else
 		minut += 20
         ml_guitar['carried'] = 1
 		'Jimmy disappears into the back of the shop with your guitar before returning 10 minutes later. "That''s it all set up, but if you need to tweak anything, just bring it in and we''ll do it for you, free of charge."'
@@ -194,7 +194,7 @@ if $ARGS[0] = 'payandtakestuff':
 	killvar 'ml_boughtguitar'
 	killvar 'ml_gigbag'
 	killvar 'ml_hardcase'
-	act 'Leave': gt 'torgcentr'
+	act 'Leave': gt 'city_mall'
 end
 
 if $ARGS[0] = 'first_setup':
@@ -202,7 +202,7 @@ if $ARGS[0] = 'first_setup':
 	ml_guitars['jb-budget-acoustic'] = 1
 	ml_strings = 2
 	ml_guitar['chordbook'] = 1
-	ml_guitar['hasguitar'] = 1 
+	ml_guitar['hasguitar'] = 1
 	ml_guitar['carried'] = 1
 
 	!! Has to set it here as cikl calculates it otherwise at midnight

+ 67 - 66
locations/city_park.qsrc

@@ -90,7 +90,7 @@ if $ARGS[0] = 'start':
 	end
 
 	act 'Sit on a bench': gt 'placer_sex', 'sitting_park_bench'
-	
+
 	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:
@@ -119,71 +119,16 @@ if $ARGS[0] = 'start':
 		end
 	end
 
-	if $clothingworntype = 'danilovich_outfits' and $shoeworntype = 'danilovich' and hour > 5 and hour < 23:
-		if pcs_energy >= 5 and pcs_stam >= stammax / 5:
-			act 'Go for a run in the park (1:00)':
-				*clr & cla
-				menu_off = 1
-				gs 'exercise', 'tier1', 60, 'run'
-				'<center><b><font color="maroon">Park</font></b></center>'
-				'<center><img <<$set_imgh>> src="images/locations/shared/park/parkbeg.jpg"></center>'
-				'You choose paths randomly, running them up and down, and about an hour later, you are out of breath and heavily sweating.'
-
-				if hour >= 20:
-					parkrand = rand(0, 10)
-
-					if parkrand >= 8:
-						'A man steps out of the shadow of a tree and runs up to you. Before you can react, he grabs you and starts dragging you into the bushes. "Relax and enjoy this", he says.'
-						gs 'npcgeneratec', 0, 'Rapist', rand(18,40)
-						gs 'boyStat', $npclastgenerated
-						act 'Fight':
-							cla
-							gs 'fight','initFight'
-
-							gs 'fight_npcdata', 'rapist'
-
-							gt 'fight', 'start'
-						end
-						if succubusQW = 5:
-							!!Used if this was a random encounter instead of active hunting
-							Act 'Lure him in and feed (this can take a lot of time)':
-								cla
-								'You wait until he has dragged you almost to the bushes before turning on him.'
-								act 'Continue': gt 'succubus', 'RapistFight'
-							end
-						end
-
-						exit
-					end
-				end
-
-				act 'Finish your run':
-					cla & *nl
-					'You feel great after your run. You''re a bit sweaty, but you''ve managed to improve your stamina, and you even feel a bit slimmer.'
-					act 'Continue': gt 'city_park', 'start'
-				end
-				
-				if pcs_inhib >= 35  or exhibitionist_lvl > 0:
-					act 'Expose your breasts':
-						*clr & cla
-						if rand(0,1) = 0:
-							'<center><img <<$set_imgh>> src="images/locations/shared/park/flash'+rand(3,4)+'.jpg"></center>'
-						else
-							'<center><video autoplay loop src="images/locations/shared/park/flash'+rand(1,2)+'.mp4"></video></center>'
-						end
-						'Halfway through your run, you pull up your top and expose your breasts. The cool air against your warm skin causes you to shiver, and almost immediately your nipples start to harden, a mixed reaction from the air hitting them and your growing excitement.'
-						*nl
-						gs 'park_walkevents', 'run_reactions'
-					end
-				end
-			end
-		elseif pcs_stam >= stammax / 5:
+	if hour >= 6 and hour <= 22 and parkrunday ! daystart:
+		if $clothingworntype ! 'danilovich_outfits' or $shoeworntype ! 'danilovich':
+			'You could go for a run in the park if you were wearing sports clothes and shoes.'
+		elseif pcs_energy < 5:
 			act 'Go for a run in the park (1:00)': '<br><font color="red">You are so hungry you cannot face going for a run.</font>'
-		else
+		elseif pcs_stam <= stammax / 5:
 			act 'Go for a run in the park (1:00)': '<br><font color="red">You are to exhausted to do this. Recover your stamina before trying to go for a run.</font>'
+		else
+			act 'Go for a run in the park (1:00)': gt 'city_park', 'run'
 		end
-	elseif hour > 5 and hour < 23 and parkrunday ! daystart:
-		'You could go for a run in the park if you were wearing sports clothes and shoes.'
 	end
 
 	gs 'music_actions', 'start'
@@ -268,7 +213,7 @@ if $ARGS[0] = 'luna':
 	if vladimirQW['stage'] = 0 and hour >= 9 and hour <= 20 and week > 5 and pcs_apprnc > 40:'<a href="exec:gt ''vladimirQW_loc''">There''s a strong looking man staring at you from the fences.</a>.'
 
 	act 'Go back to the park':gt 'city_park', 'start'
-	
+
 	if hour >= 9 and hour <= 20:
 		act 'Distribute flyers to earn money (50 <b>₽</b>) (1:00)':
 			*clr & cla
@@ -399,7 +344,7 @@ if $ARGS[0] = 'luna':
 					damage = rand(pcs_stren - stKo, pcs_stren + stKo)
 
 					gs 'exercise', 'tier2', 1, 'stren'
-					
+
 					'A LED screen lights up and shows you your score:<<damage>>'
 					if damage > maxdamage:
 						maxdamage = damage & 'Congratulations! A new personal best!'
@@ -484,7 +429,7 @@ if $ARGS[0] = 'whore':
 	temp = rand(1, 10)
 
 	act 'Go back to the park (0:05)': minut += 5 & gt 'city_park', 'start'
-	
+
 	if pcs_inhib > 35:
 		act 'Flash breasts':
 			*clr & cla
@@ -683,6 +628,62 @@ if $ARGS[0] = 'junkies':
 	act 'Walk away from them':gt 'city_park', 'start'
 end
 
+if $ARGS[0] = 'run':
+	*clr & cla
+	menu_off = 1
+	gs 'exercise', 'tier1', 60, 'run'
+	'<center><b><font color="maroon">Park</font></b></center>'
+	'<center><img <<$set_imgh>> src="images/locations/shared/park/parkbeg.jpg"></center>'
+	'You choose paths randomly, running them up and down, and about an hour later, you are out of breath and heavily sweating.'
+
+	if hour >= 20:
+		parkrand = rand(0, 10)
+
+		if parkrand >= 8:
+			'A man steps out of the shadow of a tree and runs up to you. Before you can react, he grabs you and starts dragging you into the bushes. "Relax and enjoy this", he says.'
+			gs 'npcgeneratec', 0, 'Rapist', rand(18,40)
+			gs 'boyStat', $npclastgenerated
+			act 'Fight':
+				cla
+				gs 'fight','initFight'
+
+				gs 'fight_npcdata', 'rapist'
+
+				gt 'fight', 'start'
+			end
+			if succubusQW = 5:
+				!!Used if this was a random encounter instead of active hunting
+				Act 'Lure him in and feed (this can take a lot of time)':
+					cla
+					'You wait until he has dragged you almost to the bushes before turning on him.'
+					act 'Continue': gt 'succubus', 'RapistFight'
+				end
+			end
+
+			exit
+		end
+	end
+
+	act 'Finish your run':
+		cla & *nl
+		'You feel great after your run. You''re a bit sweaty, but you''ve managed to improve your stamina, and you even feel a bit slimmer.'
+		act 'Continue': gt 'city_park', 'start'
+	end
+
+	if pcs_inhib >= 35 or exhibitionist_lvl > 0:
+		act 'Expose your breasts':
+			*clr & cla
+			if rand(0,1) = 0:
+				'<center><img <<$set_imgh>> src="images/locations/shared/park/flash'+rand(3,4)+'.jpg"></center>'
+			else
+				'<center><video autoplay loop src="images/locations/shared/park/flash'+rand(1,2)+'.mp4"></video></center>'
+			end
+			'Halfway through your run, you pull up your top and expose your breasts. The cool air against your warm skin causes you to shiver, and almost immediately your nipples start to harden, a mixed reaction from the air hitting them and your growing excitement.'
+			*nl
+			gs 'park_walkevents', 'run_reactions'
+		end
+	end
+end
 
 --- city_park ---------------------------------
 

+ 8 - 8
locations/city_redlight.qsrc

@@ -24,7 +24,7 @@ if $ARGS[0] = 'start':
 	'<center><h2>St. Petersburg</h2></center>'
 	'<center><b>Red Light District</b></center>'
 	'<center><img <<$set_imgh>> src="images/locations/city/redlight/redlight.jpg"></center>'
-	
+
 	'This small area inside the Industrial District is home to a number of strip clubs and sex shops.'
 	if hour >= 18 or hour < 3:
 		'The bright lights and booming music of the <a href="exec:gt ''stripclub'', ''start''">Fuzzy Dice</a> strip club attract men from all over the city.'
@@ -36,27 +36,27 @@ if $ARGS[0] = 'start':
 	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: 
-		'A <a href="exec:minut += 1 & gt ''sexshop'', ''start''">seedy looking shop</a> that sells sex toys and other erotic merchandise is open for perverts from all around the city to browse its stock.'
+	if hour < 3 or hour >= 11:
+		'A <a href="exec:minut += 1 & gt ''shop_erotomaniac'', ''start''">seedy looking shop</a> that sells sex toys and other erotic merchandise is open for perverts from all around the city to browse its stock.'
 	else
 		'A seedy looking shop that sells sex toys and other erotic merchandise. It is currently closed and will reopen at 11:00.'
 	end
 	if bordel > 0 and func('bordel', 'is_open'): 'Inside the courtyard is the entrance to the <a href="exec:gt ''bordel''">brothel</a>.'
-	if hour >= 10: 
+	if hour >= 10:
 		'You see a small <a href="exec:gt ''city_redlight'',''city_copy_shop''">printing shop</a> tucked away between two larger buildings.'
 	else
 		'You see a small printing shop tucked away between two larger buildings. It is currently closed and will open at 10:00.'
 	end
 		if hour >= 19 or hour < 2:
 		'A <a href="exec:gt ''hookahlounge'', ''start''">Hookah Lounge</a> sits on a corner, with Indian music and the scent of exotic spices streaming from an open door.'
-	else 
+	else
 		'The Hookah Lounge is currently closed and will reopen at 19:00.'
 	end
-	
+
 	act 'Walk to the Industrial Region (0:05)': minut += 5 & gt 'city_industrial'
 
 	act 'Wait': gs 'obj_din', 'wait'
-	
+
 	gs 'taxi'
 
 	if car > 0:
@@ -74,7 +74,7 @@ if $ARGS[0] = 'start':
 		'Prostitutes are working near here.'
 		if pcs_makeup > 2 and PCloStyle = 4 and pcs_inhib >= 40:
 			act 'Prostitute yourself': prst_loc = 1 & gt 'street_walker', 'work'
-		elseif pcs_inhib >= 40:  
+		elseif pcs_inhib >= 40:
 			*nl
 			'You could work as a prostitute, but you need to wear appropriate clothes and more than a little bit of makeup.'
 		else

+ 3 - 3
locations/city_residential.qsrc

@@ -4,7 +4,7 @@
 
 music_loop = 0
 CLOSE ALL
-gs 'shortgs', 'setloc', 'city_residential', $ARGS[0]
+gs 'shortgs', 'setloc', 'city_residential', ''
 $location_type = 'public_outdoors'
 $region = 'city'
 menu_off = 0
@@ -146,7 +146,7 @@ else
 end
 if hour >= 8 and hour <= 15 and week < 6:
 	'Near the market is a <a href="exec: minut += 10 & gt ''city_market'', ''tailor''">tailor shop</a> where you can get your clothes resized if needed.'
-else	
+else
 	'Near the market is a tailor shop where you can get your clothes resized if needed. '+iif(week < 6, 'It closes at 16:00.', 'It''s closed on weekends.')
 end
 if hour = 11 and week > 1 and week < 7 and workKafe['job'] = 1:
@@ -190,7 +190,7 @@ if hour >= 20 or hour <= 4:
 	'There are prostitutes working near here.'
 	if pcs_makeup > 2 and PCloStyle = 4 and pcs_inhib >= 40 and (stat['vaginal'] >  0 or fame['pav_slut'] >= 100):
 		act 'Prostitute yourself': gt 'street_walker', 'work'
-	elseif pcs_inhib >= 40 and (stat['vaginal'] >  0 or fame['pav_slut'] >= 100):  
+	elseif pcs_inhib >= 40 and (stat['vaginal'] >  0 or fame['pav_slut'] >= 100):
 		*nl
 		'You could work as a prostitute, but you need to wear appropriate clothes and more than a little bit of makeup.'
 	else

+ 6 - 6
locations/city_saunawhore.qsrc

@@ -112,7 +112,7 @@ if $ARGS[0] = 'saunawork':
 			menu_off = 1
 			gs 'stat'
 			'The nurse has you strip and put your legs in stirrups then roughly examines you.'
-		
+
 			if GerpesOnce = 1:
 				'You have genital herpes. You can''t afford the cure and I can''t provide it.'
 				if Gerpes >= 3:
@@ -134,7 +134,7 @@ if $ARGS[0] = 'saunawork':
 
 			if TriperOnce = 1:
 				'We found gonorrhoea. In principle, this disease is curable.'
-				if TriperNapr = 0: 
+				if TriperNapr = 0:
 					TriperNapr = 5 & 'I''m going to put you on a course of gonorrhoea injections. You''ll need a total of 5 injections (no more than 1 a day), each injection will add 750 <b>₽</b> to your debt or put you in debt if not already.'
 				elseif TriperNapr > 0:
 					'You need to finish your course of gonorrhoea injections.'
@@ -153,7 +153,7 @@ if $ARGS[0] = 'saunawork':
 			act 'Return':gt 'city_saunawhore', 'saunawork'
 		end
 	end
-		
+
 	if GerpesNapr > 0 and GerpesUkolDay ! daystart:
 		act 'See nurse for herpes shot':
 			*clr & cla
@@ -620,7 +620,7 @@ end
 
 if $ARGS[0] = 'blowjob':
 	minut += 5
-	
+
 	if $moodType = 'fairly normal':
 		'<center><video autoplay loop src="images/locations/city/residential/sauna/sex/blowjob'+rand(1, 5)+'.mp4"></video></center>'
 		'You kneel in front of him and bite your lip, caressing his cock through his pants with your hands. He pulls out his <<$dick_girth>> dick and brings it to your <<$pc_desc[''lips'']>> lips.'
@@ -1015,7 +1015,7 @@ if $ARGS[0] = 'cumAnal':
 end
 
 if $ARGS[0] = 'cumFace':
-	
+
 	'<center><video autoplay loop src="images/locations/city/residential/sauna/sex/cumface'+rand(1, 5)+'.mp4"></video></center>'
 	if useCondom = 1:
 		'The client rips the condom from his dick and <<$cumType>> cum splatters all over your face.'
@@ -1081,7 +1081,7 @@ if $ARGS[0] = 'bdsmclient':
 		minut += 15
 		gs 'stat'
 		'<center><img <<$set_imgh>> src="images/locations/city/residential/sauna/sex/bdsm2.jpg"></center>'
-		'The ropes are chaffing, you''re uncomfortable and it feels like an eternity until you hear someone open the door. You hear some heavy steps come towards you but you can''t see anything.'
+		'The ropes are chafing, you''re uncomfortable and it feels like an eternity until you hear someone open the door. You hear some heavy steps come towards you but you can''t see anything.'
 		'"Let me help you there." you hear a deep voice say as he removes the bag from your head. You flinch as you see he''s wearing a mask over his head.'
 		'The man tells you to relax and that he doesn''t want to fuck you, only watch you squirm.'
 		act 'Squirm':

+ 12 - 10
locations/city_trashplaceevents.qsrc

@@ -71,7 +71,7 @@ if $ARGS[0] = 'pos7':
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/locations/city/residential/bum_kiss.jpg"></center>'
 	'The bum, gently and in disbelief, pulls your hand up to his lips and kisses it. He''s quite charming and closes his eyes in pleasure.'
-	
+
 	act 'Further':
 		*clr & cla
 		gs 'stat'
@@ -147,16 +147,18 @@ if $ARGS[0] = 'pos10':
 		gs 'arousal', 'flashlite', 10
 		gs 'arousal', 'flash', -10
 		gs 'stat'
-		
+
 		if bomjqw > 0:
 			'"Thank you very much once again," he starts. "But if you agree to one more service?"'
 			'"What?" you ask suspiciously.'
 			'"Could you help an old man with your lovely mouth? I''ll pay 150 <b>₽</b>!"'
 			if pcs_horny < 50:
-				*clr & cla
-				gs 'arousal', 'end'
-				'"No, that''s disgusting!" you reply before turning around and walking away.'
-				act 'Leave': gt 'city_residential'
+				act 'No!':
+					*clr & cla
+					gs 'arousal', 'end'
+					'"No, that''s disgusting!" you reply before turning around and walking away.'
+					act 'Leave': gt 'city_residential'
+				end
 			else
 				gs 'npcgeneratec', 0, 'Homeless man', rand(25,55)
 				gs 'boyStat', $npclastgenerated
@@ -170,7 +172,7 @@ if $ARGS[0] = 'pos10':
 					'You hold in your gag reflex as you take his cock into your mouth and start sucking.'
 					gs 'arousal', 'bj', 3, 'prostitution'
 					gs 'stat'
-		
+
 					act 'Suck harder':
 						cla
 						'You start sucking harder and your efforts are paying off. The old man is ready to cum...'
@@ -184,7 +186,7 @@ if $ARGS[0] = 'pos10':
 							gs 'arousal', 'bj', 3, 'prostitution'
 							gs 'arousal', 'end'
 							gs 'stat'
-							
+
 							act 'Leave': gt 'city_residential'
 						end
 						act 'On your face':
@@ -196,7 +198,7 @@ if $ARGS[0] = 'pos10':
 							'A few seconds later, your face is covered in nasty smelling cum. You take your money and quickly leave before someone sees you.'
 							gs 'arousal', 'end'
 							gs 'stat'
-							
+
 							act 'Leave': gt 'city_residential'
 						end
 					end
@@ -216,7 +218,7 @@ if $ARGS[0] = 'pos10':
 						gs 'arousal', 'vaginal', 15, 'prostitution'
 						gs 'arousal', 'end'
 						gs 'stat'
-					
+
 						act 'Leave': gt 'city_residential'
 					end
 				end

+ 30 - 22
locations/clothing.qsrc

@@ -1,5 +1,6 @@
 # clothing
 !!2021/05/06
+menu_off = 1
 
 if $ARGS[0] = 'totals':
 	!!sets the number of items in clothing sets
@@ -43,6 +44,10 @@ if $ARGS[0] = 'totals':
 		total = 160
 	elseif $ARGS[1] = 'nerdvana_outfits':
 		total = 90
+	elseif $ARGS[1] = 'nerdvana_swimsuit':
+		total = 30
+	elseif $ARGS[1] = 'nerdvana_bikinis':
+		total = 30
 	elseif $ARGS[1] = 'cats_dress':
 		total = 220
 	elseif $ARGS[1] = 'cats_outfits':
@@ -51,6 +56,10 @@ if $ARGS[0] = 'totals':
 		total = 150
 	elseif $ARGS[1] = 'scandalicious_outfits':
 		total = 30
+	elseif $ARGS[1] = 'scandalicious_swimsuits':
+		total = 40
+	elseif $ARGS[1] = 'scandalicious_bikinis':
+		total = 70
 	elseif $ARGS[1] = 'bomba_dresses':
 		total = 100
 	elseif $ARGS[1] = 'bomba_outfits':
@@ -73,12 +82,11 @@ if $ARGS[0] = 'totals':
 		total = 100
 	elseif $ARGS[1] = 'danilovich_outfits':
 		total = 160
+	elseif $ARGS[1] = 'danilovich_swimsuit':
+		total = 30
 	end
 end
 
-
-menu_off = 1
-
 $clothing_list_line = {
 	!! a single line in a clothing list (wardrobe, etc)
 	!! ARGS 0 - action type (wardrobe, sell, resize, store, forsale)
@@ -144,22 +152,22 @@ $clothing_list_line = {
 		else
 			$RESULT += '<TD><center><a href="exec:gt ''clothing'', ''dest2'', ''<<$ARGS[0]>>'', ''<<$ARGS[1]>>'', <<ARGS[2]>> "><img src="images/system/icons/clothing/unwanted_off.png"></a></center></TD>'
 		end
-		
+
 		if ($ARGS[1] ! 'gm_school' or ARGS[2] ! 6) and dyneval('RESULT = <<$ARGS[1]>>_h[<<ARGS[2]>>]') <= 0 and pcs_sewng >= 60 and mc_inventory['sewing_fabric'] > 0:
 			$RESULT += '<TD><center><a href="exec:gt ''clothing'', ''qrepair'', ''<<$ARGS[0]>>'', ''<<$ARGS[1]>>'', <<ARGS[2]>> "><img src="images/system/icons/clothing/repair.png"></a></center></TD>'
 		else
 			$RESULT += '<TD><center><img src="images/system/icons/clothing/repair_off.png"></center></TD>'
 		end
-		
+
 		if pcs_sewng >= 50 and money >= 500 and (dyneval('RESULT = <<$ARGS[1]>>_b[<<ARGS[2]>>]') < pcs_hips - 8 or dyneval('RESULT = <<$ARGS[1]>>_b[<<ARGS[2]>>]') > pcs_hips + 8):
 			$RESULT += '<TD><center><a href="exec:gt ''clothing'', ''qresize'', ''<<$ARGS[0]>>'', ''<<$ARGS[1]>>'', <<ARGS[2]>> "><img src="images/system/icons/clothing/resize.png"></a></center></TD>'
 		else
 			$RESULT += '<TD><center><img src="images/system/icons/clothing/resize_off.png"></center></TD>'
 		end
-		
+
 		if ($ARGS[1] ! 'gm_school' or ARGS[2] ! 6):
 			$RESULT += '<TD><center><a href="exec:gt ''clothing'', ''qdelete'', ''<<$ARGS[0]>>'', ''<<$ARGS[1]>>'', <<ARGS[2]>> "><img src="images/system/icons/clothing/delete_on.png"></a></center></TD>'
-		end	
+		end
 
 	else
 		$RESULT += '<TD></TD><TD></TD><TD></TD><TD></TD><TD></TD>'
@@ -234,20 +242,20 @@ if $ARGS[0] = 'view_clothing_list':
 	!! ARGS 0 - view_clothing_list
 	!! ARGS 1 - action type (wardrobe, resize)
 	!! ARGS 2 - Shop name (kats, moncheri, gm, etc)
-	
+
 	if $ARGS[1] = 'wardrobe':
 		$ward_list_page = $ARGS[1]
 		'<center><table><TH><a href="exec:gt ''wardrobe'', ''main''"><img src="images/system/icons/clothing/clothes.png" height="50"></TH><TH><a href="exec:gt ''wardrobe'', $wloc"><img src="images/system/icons/clothing/default.png" height="50"></a></TH><TH><b>Your Wardrobe</b></TH></table></center>'
 
-	    if $wardrobeDefaultPagePref = 'viewClothing':
-	        $wardrobeSetDefault = '<a href="exec: $wardrobeDefaultPagePref = '''' & gt ''clothing'', ''view_clothing_list'', ''wardrobe''">Unset as default wardrobe page</a>'
-	    else
-	        $wardrobeSetDefault = '<a href="exec: $wardrobeDefaultPagePref = ''viewClothing'' & gt ''clothing'', ''view_clothing_list'', ''wardrobe''">Set here as default wardrobe page</a>'
-	    end
+		if $wardrobeDefaultPagePref = 'viewClothing':
+			$wardrobeSetDefault = '<a href="exec: $wardrobeDefaultPagePref = '''' & gt ''clothing'', ''view_clothing_list'', ''wardrobe''">Unset as default wardrobe page</a>'
+		else
+			$wardrobeSetDefault = '<a href="exec: $wardrobeDefaultPagePref = ''viewClothing'' & gt ''clothing'', ''view_clothing_list'', ''wardrobe''">Set here as default wardrobe page</a>'
+		end
 !! '''' Colour code correction for editor
-        '<center><<$wardrobeSetDefault>></center>'
+		'<center><<$wardrobeSetDefault>></center>'
 		killvar '$wardrobeSetDefault'
-    elseif $ARGS[1] = 'resize':
+	elseif $ARGS[1] = 'resize':
 		$ward_list_page = $ARGS[1]
 		'<h3><center><b><font color="maroon">Choose item/s to resize</font></b></center></h3>'
 	end
@@ -1292,7 +1300,7 @@ if $ARGS[0] = 'clothing_list':
 		act 'Return': killvar '$ward_list_store' & gt 'clothing', 'view_clothing_list', '<<$ward_list_page>>'
 		gs 'clothing', 'clothwidth'
 	end
-	
+
 	if $args[1] = 'sports' or $args[1] = 'all':
 		if $args[1] ! 'all':
 			$ward_list_store = $args[1]
@@ -1437,7 +1445,7 @@ if $ARGS[0] = 'clothinglist_header':
 end
 
 if $ARGS[0] = 'clothwidth':
-	act 'Set image size for this view': 
+	act 'Set image size for this view':
 		Enable_clothwidth = input("Enter height in pixels you want for images on this page <br>(Default 150, min 50, max 500)")
 		if Enable_clothwidth < 50:
 			Enable_clothwidth = 50
@@ -1458,7 +1466,7 @@ if $ARGS[0] = 'view_clothing_item':
 	$swimwear_description = ''
 
 	cla
-	'<center><img src="<<FUNC(''$clothing_image'',  $ARGS[1], ARGS[2])>>"></center>'
+	'<center><img src="<<FUNC(''$clothing_image'', $ARGS[1], ARGS[2])>>"></center>'
 	gs 'clothing_attributes', $ARGS[1], ARGS[2]
 
 	$RESULT = FUNC('$short_description', $ARGS[1], CloStyle2)
@@ -1469,8 +1477,8 @@ if $ARGS[0] = 'view_clothing_item':
 	elseif $swimwear_description = '':
 		gs 'clothing_descriptions'
 		'<<$description>>'
-		if hypnoClothes > 0 and (CloThinness >= 6 or $ARGS[1] = 'salacious_outfits' or $ARGS[1] = 'salacious_dress' _ 
-		or (($ARGS[1] = 'eroto_outfits' or $ARGS[1] = 'eroto_dress' or $ARGS[1] = 'eroto_strip') and CloThinness >= 3) _ 
+		if hypnoClothes > 0 and (CloThinness >= 6 or $ARGS[1] = 'salacious_outfits' or $ARGS[1] = 'salacious_dress' _
+		or (($ARGS[1] = 'eroto_outfits' or $ARGS[1] = 'eroto_dress' or $ARGS[1] = 'eroto_strip') and CloThinness >= 3) _
 		or ($ARGS[1] = 'danilovich_outfits' and CloThinness >= 5)):
 			nl & '<I>You have a strange feeling about this outfit. You <b>really</b> want to wear it.</i>'
 		end
@@ -1705,7 +1713,7 @@ if $args[0] = 'school_check':
 		if CloInhibit >= 30 or CloTopCut = 4:
 			'<font color="red">This uniform, despite meeting the school uniform regulations, is too risqué. Everybody in school will think that you''re a slut apart from the gopniks who will respect you for beating the school rules.</font>'
 		elseif CloStyle = 2:
-			'<font color="blue">This uniform follows the school regulation on skirt length but is of a style that only the Gopniks will approve of.</font>'	
+			'<font color="blue">This uniform follows the school regulation on skirt length but is of a style that only the Gopniks will approve of.</font>'
 		elseif CloQuality >= 4:
 			'<font color="blue">This uniform complies with the regulations and is of good quality. It would certainly help you with your standing with the cool kids and jocks.</font>'
 		else
@@ -1715,7 +1723,7 @@ if $args[0] = 'school_check':
 		if CloInhibit >= 35 or CloTopCut = 4:
 			'<font color="red">This uniform slightly breaches the school uniform regulations and it is too risqué. Everybody in school apart from the gopniks will think that you''re a slut.</font>'
 		elseif CloStyle = 2:
-			'<font color="blue">This uniform slightly breaches the school regulations on skirt length and is of a style that only the Gopniks will approve of.</font>'	
+			'<font color="blue">This uniform slightly breaches the school regulations on skirt length and is of a style that only the Gopniks will approve of.</font>'
 		elseif CloQuality >= 4:
 			'<font color="blue">This uniform slightly breaches the school regulations on skirt length and is of good quality. Everybody apart from the nerds would approve of you wearing it.</font>'
 		else

+ 26 - 11
locations/coats.qsrc

@@ -4,9 +4,24 @@
 !!To remove coat and store them
 !!gs 'coats', 'wear', 'type', 'number'
 !!To wear coat - There is no previous worn stored as this is only specified through cloakroom/wardrobe
-
 menu_off = 1
 
+if $ARGS[0] = 'totals':
+	if $ARGS[1] = 'gm_coats':
+		total = 20
+	elseif $ARGS[1] = 'dolls_coats':
+		total = 20
+	elseif $ARGS[1] = 'pussycats_coats':
+		total = 20
+	elseif $ARGS[1] = 'bomba_coats':
+		total = 20
+	elseif $ARGS[1] = 'danilovich_coats':
+		total = 20
+	elseif $ARGS[1] = 'moncheri_coats':
+		total = 20
+	end
+end
+
 if $ARGS[0] = 'remove':
 	$coatworntype = 'none'
 	coatwornnumber = 0
@@ -35,7 +50,7 @@ if $ARGS[0] = 'view_coat_list':
 	!! ARGS 1 - action type (clean, dirty, store, bathroom, wardrobe)
 
 
-	act 'Return': 
+	act 'Return':
 		if $ARGS[1] = 'wardrobe':
 			gt 'wardrobe', 'main'
 		else
@@ -58,7 +73,7 @@ if $ARGS[0] = 'view_coat_list':
 	'<center><table border=1><TH><a href="exec:gt ''coats'', ''view_coat_list'', ''wardrobe''">Draw</a></TH><TH><a href="exec:gt ''coats'', ''view_coat_list'', ''store''">Storage</a></TH><TH><a href="exec:gt ''coats'', ''view_coat_list'', ''unwanted''">Unwanted</a></TH></center>'
 
 	if $coatworntype ! 'none':act 'Remove coat':gs 'coats', 'remove' & gt 'coats', 'view_coat_list', $ARGS[1]
-	
+
 	if $ARGS[1] = 'store':
 		cloc = 1
 	end
@@ -67,7 +82,7 @@ if $ARGS[0] = 'view_coat_list':
 		'<center><img src="images/locations/city/citycenter/mall/gm.png"></a></center>'
 
 		i = 1
-		:loopgmcoat 
+		:loopgmcoat
 		if gm_coats_s[i] = coat_loc and gm_coats[i] = 1:*p '<a href="exec:gt ''coats'', ''view_coat_item'', ''<<$ARGS[1]>>'', ''gm'', <<i>>"><img src="images/pc/items/gm/coats/<<i>>.jpg" 	height="150" /></a>'
 		i += 1
 		if i <= ARRSIZE('gm_coats'):jump 'loopgmcoat'
@@ -77,7 +92,7 @@ if $ARGS[0] = 'view_coat_list':
 		'<center><img src="images/locations/city/citycenter/mall/pussycat.png"></center>'
 
 		i = 1
-		:loopcatscoat 
+		:loopcatscoat
 		if cats_coats_s[i] = coat_loc and cats_coats[i] = 1:*p '<a href="exec:gt ''coats'', ''view_coat_item'', ''<<$ARGS[1]>>'', ''cats'', <<i>>"><img src="images/pc/items/cats/coats/<<i>>.jpg" 	height="150" /></a>'
 		i += 1
 		if i <= ARRSIZE('cats_coats'):jump 'loopcatscoat'
@@ -87,7 +102,7 @@ if $ARGS[0] = 'view_coat_list':
 		'<center><img src="images/locations/city/citycenter/mall/moncheri.png"></center>'
 
 		i = 1
-		:loopmonchericoat 
+		:loopmonchericoat
 		if moncheri_coats_s[i] = coat_loc and moncheri_coats[i] = 1:*p '<a href="exec:gt ''coats'', ''view_coat_item'', ''<<$ARGS[1]>>'', ''moncheri'', <<i>>"><img src="images/pc/items/moncheri/coats/<<i>>.jpg" 	height="150" /></a>'
 		i += 1
 		if i <= ARRSIZE('moncheri_coats'):jump 'loopmonchericoat'
@@ -97,7 +112,7 @@ if $ARGS[0] = 'view_coat_list':
 		'<center><img src="images/locations/city/island/dolls/shop_name.png"></center>'
 
 		i = 1
-		:loopdollscoat 
+		:loopdollscoat
 		if dolls_coats_s[i] = coat_loc and dolls_coats[i] = 1:*p '<a href="exec:gt ''coats'', ''view_coat_item'', ''<<$ARGS[1]>>'', ''dolls'', <<i>>"><img src="images/pc/items/dolls/coats/<<i>>.jpg" 	height="150" /></a>'
 		i += 1
 		if i <= ARRSIZE('dolls_coats'):jump 'loopdollscoat'
@@ -107,7 +122,7 @@ if $ARGS[0] = 'view_coat_list':
 		'<center><img src="images/locations/pushkin/bomba/shop_name.png"></center>'
 
 		i = 1
-		:loopbombacoat 
+		:loopbombacoat
 		if bomba_coats_s[i] = coat_loc and bomba_coats[i] = 1:*p '<a href="exec:gt ''coats'', ''view_coat_item'', ''<<$ARGS[1]>>'', ''bomba'', <<i>>"><img src="images/pc/items/bomba/coats/<<i>>.jpg" 	height="150" /></a>'
 		i += 1
 		if i <= ARRSIZE('bomba_coats'):jump 'loopbombacoat'
@@ -117,7 +132,7 @@ if $ARGS[0] = 'view_coat_list':
 		'<center><img src="images/locations/city/citycenter/mall/sports.png"></center>'
 
 		i = 1
-		:loopdanilovichcoat 
+		:loopdanilovichcoat
 		if danilovich_coats_s[i] = coat_loc and danilovich_coats[i] = 1:*p '<a href="exec:gt ''coats'', ''view_coat_item'', ''<<$ARGS[1]>>'', ''danilovich'', <<i>>"><img src="images/pc/items/danilovich/coats/<<i>>.jpg" 	height="150" /></a>'
 		i += 1
 		if i <= ARRSIZE('danilovich_coats'):jump 'loopdanilovichcoat'
@@ -173,9 +188,9 @@ if $ARGS[0] = 'view_coat_item':
 			if coat_loc ! 0:$RESULT += 'Move these coat to  <a href="exec:gt ''coats'', ''dest0'', ''<<$ARGS[1]>>'', ''<<$ARGS[2]>>'', <<ARGS[3]>>">Wardrobe</a><BR>'
 			if coat_loc ! 2:$RESULT += 'Move these coat to  <a href="exec:gt ''coats'', ''dest2'', ''<<$ARGS[1]>>'', ''<<$ARGS[2]>>'', <<ARGS[3]>>">Unwanted</a>'
 		end
-		
+
 		act 'Return':gt 'coats', 'view_coat_list', $ARGS[1]
-		
+
 		if $ARGS[1] = 'store':
 			'These coat are in storage.'
 		elseif $ARGS[1] = 'unwanted':

+ 1 - 1
locations/core_library.qsrc

@@ -115,7 +115,7 @@ if $ARGS[0] = 'bathroom':
 			pcs_makeup = 1
 			minut += 10
 			pcs_mood += 10
-			noShampoo = 1
+			noshampoo = 1
 			dynamic $showerdin	
 			gs 'stat'
 			'You grab a quick shower, but you wish you could stay longer in the shower to let the heat soak into your muscles.'

+ 2 - 2
locations/courtletter.qsrc

@@ -160,7 +160,7 @@ if $ARGS[0] = 'letter':
 
 		$policeQW_courthearing_subjects[] = mid($policeQW_courtletter_subjects[0], 14)
 
-		if $policeQW['courtletter_hearing_counter'] < 10:
+		if policeQW['courtletter_hearing_counter'] < 10:
 			policeQW['courtletter_hearing_counter'] += 1
 			pcs_mood -= 100
 			gs 'stat'
@@ -197,7 +197,7 @@ if $ARGS[0] = 'letter':
 
 		$policeQW_courthearing_subjects[] = $policeQW_courtletter_subjects[0]
 
-		if $policeQW['courtletter_hearing_counter'] < 10:
+		if policeQW['courtletter_hearing_counter'] < 10:
 			policeQW['courtletter_hearing_counter'] += 1
 			pcs_mood -= 100
 			gs 'stat'

+ 1 - 1
locations/cum_call.qsrc

@@ -34,7 +34,7 @@ if $ARGS[0] ! 'precum':
 	if $boy ! $ARGS[1] and $ARGS[1] ! '': $boy = $ARGS[1]
 
 	!!This check if the name passed is not in the new MGX format
-	if $ARGS[1] = '' or mid($ARGS[1],2,1) > 10:
+	if $ARGS[1] = '' or (isnum(mid($ARGS[1],2,1)) and val(mid($ARGS[1],2,1)) > 10):
 		if ARGS[2] = 0 or ARGS[2] = 2:
 			gs 'npcgeneratec', 0, $ARGS[1], rand(18,60)
 			gs 'boyStat', $npclastgenerated

+ 11 - 11
locations/dateF.qsrc

@@ -2,7 +2,7 @@
 !2021/05/02
 !!boy walks up to Sveta and talks to her.
 !!1) Sveta in a school uniform
-!!2) Gopnik Sveta 
+!!2) Gopnik Sveta
 !!3) unattractive or average Sveta
 !!4) Attractive Sveta
 !!After that have her ask her out, this should depend on the weather, location and time.
@@ -199,7 +199,7 @@ if $ARGS[0] = 'start':
 					act 'Continue': gt $loc, $loc_arg
 				end
 			end
-		end 
+		end
 	else
 		'<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>>'
@@ -222,7 +222,7 @@ if $ARGS[0] = 'start':
 				'"<<$pcs_nickname>>." you answer.'
 				'"Just as I expected a beautiful name for a beautiful girl..." <<$boydesc>> quickly replies.'
 				!!Go on date, same answer no matter what time of day or weather
-				
+
 				act 'Decline':
 					*clr & cla
 					'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/<<lover_picrand[$boy]>>.jpg"></center>'
@@ -231,7 +231,7 @@ if $ARGS[0] = 'start':
 					'The two of you say goodbye to each other.'
 					act 'Continue': gt $loc, $loc_arg
 				end
-				
+
 				act 'Look at her in disgust':
 					*clr & cla
 					'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/<<lover_picrand[$boy]>>.jpg"></center>'
@@ -239,7 +239,7 @@ if $ARGS[0] = 'start':
 					'"What did you say, you little..." you''re not able to hear the rest as you walk away...'
 					act 'Continue': gt $loc, $loc_arg
 				end
-				
+
 				act 'Agree to a date':
 					*clr & cla
 					'<center><img <<$set_imgh>> src="images/characters/shared/headshots_generic/<<lover_picrand[$boy]>>.jpg"></center>'
@@ -247,7 +247,7 @@ if $ARGS[0] = 'start':
 					'"Great!" answers <<$boydesc>> "So, what do you want to do gorgeous?".'
 					gs 'dateF', 'date_choice'
 				end
-					
+
 				act 'I would love to but can''t right now':
 					*clr & cla
 					gs 'girlfriend', 'start'
@@ -271,7 +271,7 @@ if $args[0] = 'decline':
 	act 'Continue': gt $loc, $loc_arg
 	!!this goes back to what ever street it started on
 end
-				
+
 if $args[0] = 'date_choice':
 	if sunWeather = 1:
 		!!if good weather, day/night, go to park is an option
@@ -298,7 +298,7 @@ if $ARGS[0] = 'datepark':
 	'"Since it''s such a beautiful day today, let''s go for a walk in the park." you suggest.'
 	'"Sounds great. Lets go." <<$boydesc>> walks with you towards the park.'
 	'The two of you walk in the park for a while causally talking, getting knowing each other. After a while she suggests sitting down.'
-	!!Jump to park 
+	!!Jump to park
 	act 'Watch people':
 		*clr & cla
 		minut += 45
@@ -498,7 +498,7 @@ if $ARGS[0] = 'bartalk':
 								end
 
 							end
-						end	
+						end
 					end
 				end
 			end
@@ -515,7 +515,7 @@ if $ARGS[0] = 'bartalk':
 		end
 	end
 end
-				
+
 if $ARGS[0] = 'barend':
 	*clr & cla
 	minut += 5
@@ -531,7 +531,7 @@ if $ARGS[0] = 'barend':
 		'You end the date by her giving you a kiss on the cheek.'
 		act 'Leave':gt $loc, $loc_arg
 	end
-	
+
 	act 'Sorry':
 		*clr & cla
 		'<center><img <<$set_imgh>> src="images/locations/shared/date/barreject.jpg"></center>'

+ 0 - 1
locations/dimaHome.qsrc

@@ -211,7 +211,6 @@ if $ARGS[0] = 'bathroom2':
 
 			act '"Wash" your pussy':
 				*clr & cla
-				if rand(0, 5) = 1:gt 'vann', 'v4'
 				minut += 10
 
 				'<center><video autoplay loop src="images/shared/home/bathroom/wash7.mp4"></center>'

+ 6 - 6
locations/din_bad.qsrc

@@ -236,15 +236,15 @@ if $ARGS[0] = 'd_bag':
 	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_water'] = 4: 
+	if mc_inventory['refill_bottle_water'] = 4 and mc_inventory['refill_bottle'] >= 1: 
 		'You carry your sports water bottle in your purse. It''s still completely full. <a href="exec: mc_inventory[''refill_bottle_water''] = 3 & pcs_hydra += 75 & cumspclnt = 2 & gs ''cum_cleanup'' & gs ''stat'' & gs ''din_bad'', ''d_bag''">Drink</a>'
-	elseif mc_inventory['refill_bottle_water'] = 3:
+	elseif mc_inventory['refill_bottle_water'] = 3 and mc_inventory['refill_bottle'] >= 1:
 		'You carry your sports water bottle in your purse. It''s almost full. <a href="exec: mc_inventory[''refill_bottle_water''] = 2 & pcs_hydra += 75 & cumspclnt = 2 & gs ''cum_cleanup'' & gs ''stat'' & gs ''din_bad'', ''d_bag''">Drink</a>'
-	elseif mc_inventory['refill_bottle_water'] = 2:
+	elseif mc_inventory['refill_bottle_water'] = 2 and mc_inventory['refill_bottle'] >= 1:
 		'You carry your sports water bottle in your purse. It''s half full. <a href="exec: mc_inventory[''refill_bottle_water''] = 1 & pcs_hydra += 75 & cumspclnt = 2 & gs ''cum_cleanup'' & gs ''stat'' & gs ''din_bad'', ''d_bag''">Drink</a>'	
-	elseif mc_inventory['refill_bottle_water'] = 1:
+	elseif mc_inventory['refill_bottle_water'] = 1 and mc_inventory['refill_bottle'] >= 1:
 		'You carry your sports water bottle in your purse. It''s almost empty. <a href="exec: mc_inventory[''refill_bottle_water''] = 0 & pcs_hydra += 75 & cumspclnt = 2 & gs ''cum_cleanup'' & gs ''stat'' & gs ''din_bad'', ''d_bag''">Drink</a>'
-	elseif mc_inventory['refill_bottle_water'] = 0:
+	elseif mc_inventory['refill_bottle_water'] = 0 and mc_inventory['refill_bottle'] >= 1:
 		'You carry your sports water bottle in your purse. It''s empty.'
 	end
 	if mc_inventory['food_water'] > 0: 'There''s a bottle of water in your purse. <a href="exec:mc_inventory[''food_water''] = 0 & pcs_hydra += 100 & cumspclnt = 2 & gs ''cum_cleanup'' & gs ''stat'' & gs ''din_bad'', ''d_bag''">Drink</a>'
@@ -595,7 +595,7 @@ if $ARGS[0] = 'set_bc_reminder':
 	birth_control['remind_hour'] = input ("When do you want to set your reminder? (Pick an hour 1 - 22. An icon will appear in the stat display during that hour to remind you to take your pill.)")
 	if birth_control['remind_hour'] < 1 or birth_control['remind_hour'] > 22:
 		msg 'Invalid reminder input. Pick an hour between 1 and 22.'
-		jump 'invalid_bc_reminder'
+		jump 'invalid_bc_reminder_loop'
 	else
 		msg 'You set a reminder on your phone to take your birth control pill at <<birth_control[''remind_hour'']>>.'
 		if tabloc = 0:

+ 51 - 31
locations/din_van.qsrc

@@ -31,7 +31,7 @@ $showerdin = {
 	if noshampoo = 0:
 		mc_inventory['shampoo'] -=  1
 	else
-		killvar 'noShampoo'
+		killvar 'noshampoo'
 	end
 	gs 'body', 'SkinGain', 'CleanSelf'
 	if false_lashes >= 1:
@@ -79,7 +79,7 @@ $shower = {
 		*clr & cla
 		minut += 15
 		if $loc = 'vanrPar' or $loc = 'tanvanr' or $loc = 'albinahome' or $loc = 'LariskaHome' or hotelmc_inventory['shampoo'] =  1: noshampoo = 1
-		noShampoo_tmp = noShampoo
+		noshampoo_tmp = noshampoo
 		dynamic $showerdin
 
 		'<center><video autoplay loop src="images/shared/home/bathroom/dush.mp4"></center>'
@@ -93,10 +93,10 @@ $shower = {
 			'You''ve already gotten used to your feminine body and its softness doesn''t surprise you very much anymore, but you still let your hands wander a bit over your soft curves before you begin to wash yourself in earnest.'
 		else
 			pcs_horny += rand(0,2)
-			''+iif(noShampoo_tmp = 1, 'It''s not your shampoo, so you use a little more than you normally would; with a tinge of guilt you ', 'Using your own shampoo, you carefully ')+'lather yourself up, trying not to miss any spots, and then wash off.'
+			''+iif(noshampoo_tmp = 1, 'It''s not your shampoo, so you use a little more than you normally would; with a tinge of guilt you ', 'Using your own shampoo, you carefully ')+'lather yourself up, trying not to miss any spots, and then wash off.'
 		end
 
-		if mc_inventory['shampoo'] =  0 and noShampoo_tmp = 1:
+		if mc_inventory['shampoo'] =  0 and noshampoo_tmp = 1:
 			'When you get a chance, you should stop by the supermarket and buy some shampoo.'
 		elseif mc_inventory['shampoo'] <= 5:
 			'You are getting low on shampoo, with only <<mc_inventory[''shampoo'']>> remaining. When you get a chance, you should stop by the supermarket and buy some more.'
@@ -156,7 +156,8 @@ $shower = {
 				'His cum <i>leaking</i> out of you.'
 				*nl
 				'You grab the soap again and scrub yourself again, but it still feels like something is there, coating your skin. You scrub and scrub and scrub but it just won''t go away until you finally cry out, throwing it into the corner. Tremors begin coursing through your body and you slowly sink down onto the shower floor, where you remain, sobbing while the water continues raining down on you.'
-				
+
+
 				dynamic $dryOff
 			end
 		elseif pcs_horny >= 40:
@@ -188,9 +189,11 @@ $shower = {
 				dynamic $dryOff
 			end
 		end
-		
+
+
 		gs 'selfplay', 'shower_dildo_check'
-		
+
+
 		act 'Take a selfie':
 			gs 'telefon', 'Phone_selfie_image_bathing', 'shower'
 		end
@@ -203,7 +206,7 @@ $shower = {
 			if locat['Fam_inGad'] = 0: gs 'vanrPar', 'peek'
 		end
 	end
-	killvar 'noShampoo_tmp'
+	killvar 'noshampoo_tmp'
 }
 
 $bath = {
@@ -215,7 +218,7 @@ $bath = {
 		pcs_sweat = 7 + rand(0,4)
 		pcs_mood += 20
 		if $loc = 'vanrPar' or $loc = 'tanvanr' or $loc = 'LariskaHome' or hotelmc_inventory['shampoo'] =  1: noshampoo = 1
-		noShampoo_tmp = noShampoo
+		noshampoo_tmp = noshampoo
 		dynamic $showerdin
 
 		gs 'body', 'SkinGain', 'Bath'
@@ -234,10 +237,10 @@ $bath = {
 			'You have become a little accustomed to your female body and casually soap up all these soft curves and rinse yourself off, rubbing your hands all over your feminine body to make sure you didn''t miss a spot.'
 		else
 			pcs_horny += rand(0,2)
-			'You lean back and relax for a while. '+iif(noShampoo_tmp = 1, 'It’s not your shampoo, so you use a little more than you normally would; with a tinge of guilt you ', 'Using your own shampoo, you carefully ')+'begin to lather your body, gently gliding your soft hands over your smooth curves, and wash yourself thoroughly.'
+			'You lean back and relax for a while. '+iif(noshampoo_tmp = 1, 'It’s not your shampoo, so you use a little more than you normally would; with a tinge of guilt you ', 'Using your own shampoo, you carefully ')+'begin to lather your body, gently gliding your soft hands over your smooth curves, and wash yourself thoroughly.'
 		end
 
-		if mc_inventory['shampoo'] =  0 and noShampoo_tmp = 1:
+		if mc_inventory['shampoo'] =  0 and noshampoo_tmp = 1:
 			'When you get a chance, you should stop by the supermarket and buy some shampoo.'
 		elseif mc_inventory['shampoo'] <= 5:
 			'You are getting low on shampoo, with only <<mc_inventory[''shampoo'']>> remaining. When you get a chance, you should stop by the supermarket and buy some more.'
@@ -282,7 +285,8 @@ $bath = {
 			gs 'arousal', 'end'
 			dynamic $dryOff
 		end
-		
+
+
 		gs 'selfplay', 'bathtub_dildo_check'
 
 		act 'Take a selfie':
@@ -291,7 +295,7 @@ $bath = {
 
 		dynamic $brit
 	end
-	killvar 'noShampoo_tmp'
+	killvar 'noshampoo_tmp'
 }
 
 $SkinCare = {
@@ -305,7 +309,8 @@ $SkinCare = {
 			minut += 5
 			'<center><img <<$set_imgh>> src="images/shared/home/bathroom/skincare.jpg"></center>'
 			'You get out your skin care products and apply them, the creams feel cool and nice against your skin. You sometimes wonder if all this effort and money is worth it, but one look in the mirror at your skin and you figure it is.'
-			
+
+
 			gs 'body', 'SkinGain', 'Moisturizer'
 			gs 'stat'
 			act 'Finish':menu_off = 0 & gt $loc, $loc_arg
@@ -332,7 +337,7 @@ $brit = {
 							$shave_txt1 = 'You do your legs first before lathering up your crotch and taking a razor to the bush growing there. After a few minutes of shaving, you take a moment to inspect yourself, making sure you got everything.'
 							$shave_txt2 = 'Satisfied there isn''t even a single hair left, you rinse yourself off, enjoying the newfound smoothness of your pussy.'
 						else
-							$shave_txt1 = 'You lather up your legs and crotch, grabbing your razor and carefully scraping away stubble that is growing from them.' 
+							$shave_txt1 = 'You lather up your legs and crotch, grabbing your razor and carefully scraping away stubble that is growing from them.'
 							$shave_txt2 = 'After a few minutes of work, you take a moment to inspect yourself, making sure you got every last pube and there isn''t even a bit of stubble left. Satisfied, you rinse yourself off, smiling in relief that your pussy is silky smooth once again.'
 						end
 					elseif (pubestyle >= 2 and pubestyle <= 8) or pubestyle >= 12:
@@ -360,7 +365,7 @@ $brit = {
 					elseif pubestyle = 11:
 						$shave_act = 'Shave your legs and pussy'
 						if pcs_pubes <= 10:
-							$shave_txt1 = 'You do your legs first before realizing that the stubble growing around your pussy is starting to become irritating and you can''t put it off any longer. Lathering yourself up, you grab your razor and carefully scrape away the rough itchy hairs have been bothering you so.' 
+							$shave_txt1 = 'You do your legs first before realizing that the stubble growing around your pussy is starting to become irritating and you can''t put it off any longer. Lathering yourself up, you grab your razor and carefully scrape away the rough itchy hairs have been bothering you so.'
 							$shave_txt2 = 'After a few minutes of work, you take a moment to inspect yourself, making sure you got every last pube and there isn''t even a bit of stubble hiding in the folds of your crotch somewhere. Satisfied, you rinse yourself off, smiling in relief that your pussy is smooth once again.'
 						else
 							$shave_txt1 = 'You do your legs first before lathering up your crotch and taking a razor to the hair growing there. After a few minutes of shaving, you take a moment to inspect yourself, making sure you got every last pube and there isn''t even a bit of stubble hiding in the folds of your crotch somewhere. Satisfied, you rinse yourself off, enjoying the newfound smoothness of your pussy.'
@@ -368,7 +373,8 @@ $brit = {
 					else
 						$shave_act = ''
 					end
-				
+
+
 					if $shave_act ! '':
 						act '<<$shave_act>> (0:15)':
 							menu_off = 1
@@ -415,7 +421,7 @@ $brit = {
 				if pubestyle = 1:
 					$shave_act = 'Shave your pussy'
 					if pcs_pubes <= 10:
-						$shave_txt1 = 'You lather up yourself up, and grab your razor, carefully scraping away stubble that is growing from your crotch.' 
+						$shave_txt1 = 'You lather up yourself up, and grab your razor, carefully scraping away stubble that is growing from your crotch.'
 						$shave_txt2 = 'After a few minutes of work, you take a moment to inspect yourself, making sure you got every last pube and there isn''t even a bit of stubble hiding in the folds of your crotch somewhere. Satisfied, you rinse yourself off, smiling in relief that your pussy is silky smooth once again.'
 					else
 						$shave_txt1 = 'You lather up your crotch and take a razor to the hair growing there. After a few minutes of shaving, you take a moment to inspect yourself, making sure you got every last pube and there isn''t even a bit of stubble hiding in the folds of your crotch somewhere. Satisfied, you rinse yourself off, enjoying the newfound smoothness of your pussy.'
@@ -716,7 +722,7 @@ $publicpan = {
 	!! Changing into a different outfit for prostitution
 	if prostitute['active'] = 1 and ARGS[1] ! 'no_prost' and $loc ! 'gschool_break':
 		gs 'prostitution_functions', 'work_clothes'
-		if  prostitute['work_clothes'] = 0 and prostitute['outfit_is_set']: 
+		if  prostitute['work_clothes'] = 0 and prostitute['outfit_is_set']:
 			act 'Change into prostitute outfit': gt 'prostitution_functions', 'change_to_work', 'restroom'
 		elseif prostitute['work_clothes'] and prostitute['changed_for_work']:
 			act 'Change into your regular clothes': gt 'prostitution_functions', 'change_back', 'restroom'
@@ -909,7 +915,8 @@ $basin = {
 			act 'Continue': menu_off = 0 & gt $loc, $loc_arg
 		end
 	end
-	
+
+
 	if KandidozOnce = 1 and KandidNapr > 0:
 		act 'Use antifungal Medication':
 			*clr & cla
@@ -1072,9 +1079,9 @@ if $ARGS[0] = 'private':
 		end
 	end
 
-	if mc_inventory['chaffing_cream'] > 0: 'On a shelf is a tube of ointment for chafing, which will be enough for <b><<mc_inventory[''chaffing_cream'']>></b> applications.'
-	if mc_inventory['moisturiser'] > 0: 
-		'You look at your moisturiser and think you have about <<mc_inventory[''moisturiser'']>> applications left.'
+	if mc_inventory['chafing_cream'] > 0: 'On a shelf is a tube of ointment for chafing, which will be enough for <b><<mc_inventory[''chafing_cream'']>></b> applications.'
+	if mc_inventory['moisturiser'] > 0:
+		'You look at your moisturiser and think you have about <b><<mc_inventory[''moisturiser'']>></b> applications left.'
 	end
 	if mc_inventory['tampons'] =  0 and mc_inventory['sanitary_pads'] = 0:
 		'<b><font color="red">You have no feminine hygiene products left.</font></b>'
@@ -1086,7 +1093,8 @@ if $ARGS[0] = 'private':
 	elseif mc_inventory['tampons'] > 0:
 		'You have <b><<mc_inventory[''tampons'']>></b> tampons.'
 	end
-	
+
+
 	if mc_inventory['sanitary_pads'] = 1 and tampon['warning'] ! daystart:
 		tampon['warning'] = daystart
 		msg'<font color="red">You only have <b><<mc_inventory[''sanitary_pads'']>></b> pad left!</font>'
@@ -1097,7 +1105,8 @@ if $ARGS[0] = 'private':
 	end
 
 	'Your deodorant will last you for <b><<mc_inventory[''deodorant'']>></b> more '+iif(mc_inventory['deodorant'] =  1, 'application.', 'applications.')
-	
+
+
 	if $ARGS[1] = 'hotelroom':
 		dynamic $shower
 		if $ARGS[2] = 'bath': dynamic $bath
@@ -1140,6 +1149,13 @@ if $ARGS[0] = 'private':
 		end
 	end
 
+	if mc_inventory['hair_extensioncream'] > 0:
+		'<a href="exec:gs ''drugs'', ''hair_extensioncream'' & gt $loc, $loc_arg">Apply hair extension shampoo.</a> Uses left: <<mc_inventory[''hair_extensioncream'']>>.'
+	end
+	if mc_inventory['butt_injection'] > 0:
+		'<a href="exec:gs ''drugs'', ''butt_injection'' & gt $loc, $loc_arg">Inject the KBI butt enhancement shot.</a> Uses left: <<mc_inventory[''butt_injection'']>>.'
+	end
+
 	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
@@ -1200,17 +1216,18 @@ if $ARGS[0] = 'private':
 	dynamic $brit
 
 	dynamic $enema
-	
+
+
 	dynamic $palelady
 
 
-	if mc_inventory['chaffing_cream'] > 0 and mosol > 0 and mosal_time <= totminut:
+	if mc_inventory['chafing_cream'] > 0 and mosol > 0 and mosal_time <= totminut:
 		act 'Rub ointment onto your pussy (0:05)':
 			cla
 			menu_off = 1
 			mosal_time = totminut + 600
 			minut += 5
-			mc_inventory['chaffing_cream'] -= 1
+			mc_inventory['chafing_cream'] -= 1
 			mosol -= 5
 			gs 'stat'
 			'You take a tube of cream and rub it onto your itchy vulva.'
@@ -1271,7 +1288,8 @@ if $ARGS[0] = 'private':
 				*nl
 				'The test shows one band. You are not pregnant.'
 				act 'Sigh in relief': gt 'din_van', 'ReliefReact'
-				
+
+
 				act 'Sigh in disappointment': gt 'din_van', 'DisappointedReact'
 			end
 
@@ -1795,7 +1813,8 @@ if $ARGS[0] = 'shave_options':
 
 	!! ROW 1: IMAGES
 		*p '<TR><TD><center><a href="exec:view''images/pc/body/pussy/hair/pussy.jpg''"><img Height = <<shave_img_hgt>> src="images/pc/body/pussy/hair/pussy.jpg"></a></center></TD>'
-		
+
+
 		$temp_pube_image = FUNC('$pube_image', 16, pcs_pubecol[2], 2)
 		*p '<TD><center><a href="exec:view''<<$temp_pube_image>>''"><img Height = <<shave_img_hgt>> src="<<$temp_pube_image>>"></a></center></TD>'
 
@@ -1856,7 +1875,8 @@ if $ARGS[0] = 'shave_options':
 
 		$temp_pube_image = FUNC('$pube_image', 26, pcs_pubecol[2], 10)
 		*p '<TD><center><a href="exec:view''<<$temp_pube_image>>''"><img Height = <<shave_img_hgt>> src="<<$temp_pube_image>>"></a></center></TD></TR>'
-	
+
+
 	!! ROW 2: TEXT
 		*p '<TR><TD><center>'
 		if pubestyle ! 6 and pcs_pubes > 15:

+ 1 - 1
locations/djibrilev1.qsrc

@@ -647,7 +647,7 @@ end
 if $ARGS[0] = 'djibril_nush':
 	menu_off = 1
 	*clr & cla
-	minut +60
+	minut += 60
 	gs 'exp_gain', 'gaming', rand(1, 2)
 	gs 'drugs', 'alcohol', 'wine', 1
 	gs 'stat'

+ 73 - 13
locations/drugs.qsrc

@@ -22,6 +22,8 @@ if $ARGS[0] = 'cikl':
 	gs 'drugs', 'cocaine', 'cikl'
 	gs 'drugs', 'mentats', 'cikl'
 	gs 'drugs', 'aphrodisiac', 'cikl'
+	gs 'drugs', 'hair_extensioncream', 'cikl'
+	gs 'drugs', 'butt_injection', 'cikl'
 
 elseif $ARGS[0] = 'hourly_events':
 	gs 'drugs', 'smoke', 'hourly_events'
@@ -74,7 +76,7 @@ elseif $ARGS[0] = 'smoke':
 			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
@@ -96,7 +98,7 @@ elseif $ARGS[0] = 'smoke':
 		gs 'stat'
 	end
 
-	
+
 elseif $ARGS[0] = 'joint':
 	if $ARGS[1] = 'hourly_events':
 		if drugVars['weed_high'] > 0: drugVars['weed_high'] -= 1
@@ -137,16 +139,16 @@ elseif $ARGS[0] = 'joint':
 
 elseif $ARGS[0] = 'heroin':
 	if $ARGS[1] = 'hourly_events':
-		if drugVars['heroin_high'] > 0: 
+		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: 
+		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: 
+		if drugVars['heroin_need'] > 100 and drugVars['heroin_high'] <= 0:
 			drugVars['heroin_need'] = 0
 			drugVars['heroin_used'] = 0
 		end
@@ -189,7 +191,7 @@ elseif $ARGS[0] = 'cocaine':
 	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
@@ -246,7 +248,7 @@ elseif $ARGS[0] = 'amphetamine':
 			end
 		end
 
-		if drugVars['amphetamine_withdrawl'] >= 5: 
+		if drugVars['amphetamine_withdrawl'] >= 5:
 			drugVars['amphetamine_withdrawl'] += 1
 			pcs_mood -= (drugVars['amphetamine_withdrawl'] / 5)
 		end
@@ -275,7 +277,7 @@ elseif $ARGS[0] = 'amphetamine':
 			drugVars['amphetamine_bonus'] = 1
 		end
 
-		if drugVars['amphetamine_withdrawl'] > 169: 
+		if drugVars['amphetamine_withdrawl'] > 169:
 			drugVars['amphetamine_withdrawl'] = 1
 			drugVars['amphetamine_bonus'] = 1
 			drugVars['amphetamine_used'] = 0
@@ -299,7 +301,7 @@ elseif $ARGS[0] = 'amphetamine':
 				mc_inventory['amphetamine'] -= 1
 				if mc_inventory['amphetamine'] <= 0: mc_inventory['amphetamine'] = 0 & msg 'That was your last amphetamine pill.'
 			end
-			if cheatVars['drugs_immune'] = 0: 
+			if cheatVars['drugs_immune'] = 0:
 				drugVars['amphetamine_used'] += 1
 				if drugVars['amphetamine_used'] > 5 and drugVars['amphetamine_exp'] = 0: drugVars['amphetamine_exp'] = 1
 			end
@@ -362,7 +364,7 @@ elseif $ARGS[0] = 'breastcream':
 			drugVars['breastcream_dose'] = 0
 
 			temp = pcs_mass['bust'] - pcs_mass['bust_gen']
-			temp = rand(0, 5 + max(0, temp)) / max(1, temp)
+			temp = rand(0, 10 + max(0, temp)) / max(1, temp)
 
 			if temp > 0:
 				bodyVars['bust_other'] += 1
@@ -407,12 +409,12 @@ elseif $ARGS[0] = 'alcohol':
 			pain['relief'] = 15
 		end
 	else
-		if cheatVars['drugs_immune'] = 0: 
+		if cheatVars['drugs_immune'] = 0:
 			drugVars['alcohol_used'] += 1
 			if drugVars['alcohol_used'] > 15 and drugVars['alcohol_exp'] = 0: drugVars['alcohol_exp'] = 1
-		end	
+		end
 
-		if ARGS[2] <= 1: 
+		if ARGS[2] <= 1:
 			temp_alc_count = 1
 		else
 			temp_alc_count = ARGS[2]
@@ -567,6 +569,64 @@ elseif $ARGS[0] = 'aphrodisiac':
 		end
 		gs 'stat'
 	end
+elseif $ARGS[0] = 'hair_extensioncream':
+	if $ARGS[1] = 'cikl':
+		if drugVars['hair_extensioncream_dose'] >= 1:
+			drugVars['hair_extensioncream_dose'] = 0
+
+			if pcs_hairlng < 999:
+				pcs_hairlng += 2
+				'Feels like your hair has grown slightly.'
+			end
+		end
+	else
+		if drugVars['hair_extensioncream_dose'] < 1:
+			'<font color = #DB7093>You smear the shampoo into your hair and rub it in, then wash it out shortly later.</font>'
+
+			if ARGS[1] = 0 and $ARGS[1] = '':
+				mc_inventory['hair_extensioncream'] -= 1
+				if mc_inventory['hair_extensioncream'] <= 0: mc_inventory['hair_extensioncream'] = 0 & msg 'That was your last bit of hair extension shampoo.'
+			end
+
+			drugVars['hair_extensioncream_used'] += 1
+			drugVars['hair_extensioncream_dose'] = 1
+		else
+			'Using any more hair extension shampoo won''t have any effect.'
+		end
+		gs 'stat'
+	end
+
+elseif $ARGS[0] = 'butt_injection':
+	if $ARGS[1] = 'cikl':
+		if drugVars['butt_injection_dose'] >= 1:
+			drugVars['butt_injection_dose'] = 0
+
+			temp = pcs_mass['butt'] - pcs_mass['butt_gen']
+			temp = rand(0, 10 + max(0, temp)) / max(1, temp)
+
+			if temp > 0:
+				bodyVars['butt_other'] += 1
+				'Feels like your butt has grown slightly.'
+			end
+			killvar 'temp'
+		end
+	else
+		if drugVars['butt_injection_dose'] < 1:
+			'<font color = #DB7093>You inject the KBI formula into your ass.</font>'
+
+			if ARGS[1] = 0 and $ARGS[1] = '':
+				mc_inventory['butt_injection'] -= 1
+				if mc_inventory['butt_injection'] <= 0: mc_inventory['butt_injection'] = 0 & msg 'That was your last KBI shot.'
+			end
+
+			drugVars['butt_injection_used'] += 1
+			drugVars['butt_injection_dose'] = 1
+		else
+			'Using any more injections won''t have any effect.'
+		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

+ 5 - 8
locations/emp_functions.qsrc

@@ -168,7 +168,7 @@ if $ARGS[0] = 'job_info':
 	$msg_body += '<p>Notes: ' + $emp_job_notes[j_id]+ '</p>'
 	$msg_body += '<p>Wages: ' + func('agentned', 'format_price_string', emp_job_wages[j_id]) + '<b>₽</b></p>'
 
-	msg '<<$msg_body>>'
+	msg $msg_body
 	killvar '$msg_body'
 end
 
@@ -300,17 +300,14 @@ if $ARGS[0] = 'gen_evt':
 	transient_evt_minutes = rand(0, 9)
 
 	!! Set as multiples of 60
-	if transient_evt_duration = '':
-		transient_evt_duration = rand(1,8)
-	end
-	!! logic check for when randomising event duration
+	if transient_evt_duration <= 0: transient_evt_duration = rand(1,8)
 
+	!! logic check for when randomising event duration
 	if transient_evt_duration + transient_evt_hour >= 22:
 		transient_evt_hour = 22 - transient_evt_duration
 	end
 
 	!! find a suitable date
-
 	srch_day_u = rnd_day + 7
 	if srch_day_u >= monthsend[transient_evt_month]:
 		srch_day_u = monthsend[transient_evt_month]
@@ -476,7 +473,7 @@ end
 
 if $ARGS[0] = 'evt_day_suffix':
 
-	if ARGS[1] ! '':
+	if ARGS[1] ! 0:
 		query_day = ARGS[1]
 	else
 		query_day = transient_evt_day
@@ -486,7 +483,7 @@ if $ARGS[0] = 'evt_day_suffix':
 	else
 		test_day = query_day
 	end
-	if transient_evt_day ! '':
+	if transient_evt_day ! 0:
 		if test_day => 4 and test_day <= 10:
 			$evt_suffix = 'th'
 		elseif test_day = 1 or test_day = 31:

+ 12 - 9
locations/ender.qsrc

@@ -203,7 +203,7 @@ if $ARGS[0] = 'loss':
 		gs 'pain', 5, 'thighs', 'kick'
 		gs 'pain', 5, 'hair', 'stretch'
 		dynamic '<<$clothingworntype>>_h[<<clothingwornnumber>>] = 0'
-		'<<$streetev_title>>'
+		$streetev_title
 		'<center><img <<$set_imgh>> src="images/locations/shared/street/lostfight.jpg"></center>'
 		'You do your best, but there are just too many of them. Eventually they get you down on the ground and beat you, ripping out handfuls of your hair and tearing your clothes.'
 		'After what feels like an eternity, they finally stop hitting you. "That''s what you get, you stupid bitch." Then the girl spits on you, with the rest of the gang following suit and spitting on you as well. Finally they get bored of tormenting you further and leave, laughing about how they beat the ugly girls ass.'
@@ -283,10 +283,11 @@ if $ARGS[0] = 'loss':
 			act 'Run!(<<will_cost>> Willpower)':			
 				gs 'willpower', 'pay', 'self'
 				AlexandriaMissionQW += 1
+				dummy = rand(1,100)
 				gs 'stat'
-                if rand(1,100) <= pcs_run: 
+                if dummy <= pcs_run:
                     gt 'alexandriaEv', 'anachase3'
-	            elseif rand(1,100) > (pcs_run and 89): 
+	            elseif dummy >= pcs_run and dummy >= 90:
                     gt 'alexandriaEv', 'anacrash1'
 	            else 
                     gt 'alexandriaEv', 'anachase4'
@@ -535,7 +536,7 @@ if $ARGS[0] = 'win':
 	elseif fightEnding = 14:
 		fightEnding = 0
 		Win += 1
-		'<<$streetev_title>>'
+		$streetev_title
 		'<center><img <<$set_imgh>> src="images/locations/shared/street/girlgang.jpg"></center>'
 		'Even though it was four against one, you beat their asses triumphantly. They got in some hits of their own, but in the end you are the only one standing while the four of them lay around your feet curled up, bloody and crying. You straighten your clothes the best you can and proudly continue on your way to the claps of several onlookers that watched the fight.'
 
@@ -598,10 +599,11 @@ if $ARGS[0] = 'win':
 			act 'Run!(<<will_cost>> Willpower)':			
 				gs 'willpower', 'pay', 'self'
 				AlexandriaMissionQW += 1
+				dummy = rand(1,100)
 				gs 'stat'
-                if rand(1,100) <= pcs_run: 
+                if dummy <= pcs_run:
                     gt 'alexandriaEv', 'anachase3'
-	            elseif rand(1,100) > (pcs_run and 89): 
+	            elseif dummy >= pcs_run and dummy >= 90:
                     gt 'alexandriaEv', 'anacrash1'
 	            else 
                     gt 'alexandriaEv', 'anachase4'
@@ -907,7 +909,7 @@ if $ARGS[0] = 'surrender':
 		fightEnding = 0
 		Loss += 1
 		gs 'pain', 5, 'hair', 'stretch'
-		'<<$streetev_title>>'
+		$streetev_title
 		'<center><img <<$set_imgh>> src="images/locations/shared/street/lostfight.jpg"></center>'
 		if fightPStats['Health'] = pcs_health:
 			'Just the mere thought of a fight, your knees go weak and you feel yourself being out of breath. Before even the first punch is thrown you raise up your hands and squeak out in fear. "Don''t hurt me, I give up."'
@@ -997,10 +999,11 @@ if $ARGS[0] = 'surrender':
 			act 'Run!(<<will_cost>> Willpower)':			
 				gs 'willpower', 'pay', 'self'
 				AlexandriaMissionQW += 1
+				dummy = rand(1,100)
 				gs 'stat'
-                if rand(1,100) <= pcs_run: 
+                if dummy <= pcs_run:
                     gt 'alexandriaEv', 'anachase3'
-	            elseif rand(1,100) > (pcs_run and 89): 
+	            elseif dummy >= pcs_run and dummy >= 90:
                     gt 'alexandriaEv', 'anacrash1'
 	            else 
                     gt 'alexandriaEv', 'anachase4'

+ 8 - 8
locations/event.qsrc

@@ -89,14 +89,14 @@ if $ARGS[0] = 'blow':
 				'<center><img <<$set_imgh>> src="images/shared/sex/handjob/hj.jpg"></center>'
 				'You take his cock out of your mouth and <<$loverdesc[lover_number]>> finishes in your hand.'
 			elseif tiprand = 3:
-				
+
 				spafinloc = 11
 				gs 'cum_manage'
 				'<center><img <<$set_imgh>> src="images/shared/sex/cum/facial/facial0,8.jpg"></center>'
 				'You took his cock out of your mouth and immediatly <<$loverdesc[lover_number]>> cums directly on your face, covering it with his warm and sticky seed.'
 			end
 		elseif haraklover[lover_number] = 2:
-			
+
 			spafinloc = 11
 			gs 'cum_manage'
 			'<center><img <<$set_imgh>> src="images/shared/sex/cum/facial/facial0,8.jpg"></center>'
@@ -166,7 +166,7 @@ if $ARGS[0] = 'dima':
 				end
 			else
 				act 'Make excuses and go (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
-			end	
+			end
 			act 'Drink vodka': gt 'event', 'dima2'
 		end
 	end
@@ -418,7 +418,7 @@ if $ARGS[0] = 'dima17':
 	gs 'stat'
 	'<center><img <<$set_imgh>> src="images/characters/city/dmitry/sex/dima6.jpg"></center>'
 	'You leave the bathroom in the buff, despite the instructions'
-	
+
 	act 'See Alex in the hall':
 		if runrnd < 9:
 			gt 'event', 'dima18'
@@ -519,7 +519,7 @@ if $ARGS[0] = 'dima32':
 		end
 	else
 		act 'Kick (<font color="red"><<will_cost>> Willpower</font>)': '<br><font color="red">You don''t have enough willpower to use this action.</font>'
-	end	
+	end
 end
 if $ARGS[0] = 'dima33':
 	cla
@@ -580,7 +580,7 @@ if $ARGS[0] = 'dima36':
 	'<center><img <<$set_imgh>> src="images/locations/city/residential/street/sex/10028_tommypistoljacquelineblacklady_352.jpg"></center>'
 	'After sitting in this position for a few minutes, you start to free your hands. Once they''re loose, you tear off the blindfold, and wipe as much of the sperm of your face as is possible.'
 	'Looking around, you find the box Alex had put your stuff it. You get dressed and find a passage that leads to the street above.'
-	
+
 	act 'Leave':gt 'city_residential'
 end
 if $ARGS[0] = 'dima37':
@@ -919,7 +919,7 @@ if $ARGS[0] = 'lesbi':
 	'<center><img <<$set_imgh>> src="images/characters/city/natalya/lesbi.jpg"></center>'
 	'The woman stares at you, you catch her eye. She looks you up and down, smiles and licks her lips.'
 
-	act 'Turn away':gt 'moncheri', 'start'
+	act 'Turn away':gt 'shop_moncheri', 'start'
 	act 'Get acquainted':gt 'event', 'lesbi1'
 end
 
@@ -959,7 +959,7 @@ if $ARGS[0] = 'lesbi3':
 	'"Teach?" She asked in surprise. "Teach... hmm... I think I might be able to help you!" The lady says with a grin. "Come visit me at my apartment."'
 	'You read the card and see that see lives in the city residential area, looking up again, Natalya is walking out of the boutique with a graceful and confident gait.'
 
-	act 'Leave':gt 'moncheri', 'start'
+	act 'Leave':gt 'shop_moncheri', 'start'
 end
 
 --- event ---------------------------------

+ 23 - 102
locations/events.qsrc

@@ -19,24 +19,6 @@ end
 
 if $ARGS[0] = 'read':
 	act 'Read a book':
-		killvar '$downlibrary'
-		$downlibrary['read'] = {
-			*clr & cla
-			menu_off = 1
-			if blizoruk = 500 or glassqw = 1:
-				glassqw = 1
-				msg '	The text blurs across the page. It seems you have poor eyesight. Maybe you should visit an ophthalmologist?'
-				gt $loc, $loc_arg
-			end
-			if pcs_nerd > 0:
-				lastread = totminut
-				lastreadday = daystart
-				pcs_nerd += 1
-			end
-			minut += 60
-			blizoruk += 1
-		}
-
 		*clr & cla
 		gs 'stat'
 		if $clothingworntype = 'nude' and $braworntype = 'none' and $pantyworntype = 'none':
@@ -51,7 +33,7 @@ if $ARGS[0] = 'read':
 
 		if f_book > 0:
 			if fantasybook <= 0:
-				if $lib_book_loaned = 'fantasy' and lib_book_read = 0:
+				if $lib_book_loaned = 'a fantasy novel' and lib_book_read = 0:
 					lib_book_read = 1
 				end
 				fantasybook = 5
@@ -63,13 +45,15 @@ if $ARGS[0] = 'read':
 
 		if fantasybook > 0:
 			act 'Read fantasy book. There are <<fantasybook * 100>> pages left (1:00)':
+				*clr & cla
+				menu_off = 1
 				fantasybook -= 1
 				if fantasybook = 0:
 					totalbook += 1
-					if lib_book_read = 1 and $lib_book_loaned = 'fantasy': lib_book_read = 2
+					if lib_book_read = 1 and $lib_book_loaned = 'a fantasy novel': lib_book_read = 2
 				end
 
-				dynamic $downlibrary['read']
+				gs 'library_functions', 'read_book'
 				gs 'stat'
 
 				if $clothingworntype = 'nude' and $braworntype = 'none' and $pantyworntype = 'none':
@@ -79,7 +63,7 @@ if $ARGS[0] = 'read':
 				else
 					'<center><img <<$set_imgh>> src="images/pc/activities/reading/bed_book_dressed.jpg"></center>'
 				end
-				
+
 				if pcs_nerd > 0:
 					pcs_mood = 100
 
@@ -103,10 +87,12 @@ if $ARGS[0] = 'read':
 
 		if womanbook > 0:
 			act 'Read Women''s Novel. There are <<womanbook * 100>> pages left (1:00)':
+				*clr & cla
+				menu_off = 1
 				womanbook -= 1
 				if womanbook = 0: totalbook += 1
 
-				dynamic $downlibrary['read']
+				gs 'library_functions', 'read_book'
 				gs 'stat'
 
 				if $clothingworntype = 'nude' and $braworntype = 'none' and $pantyworntype = 'none':
@@ -135,12 +121,14 @@ if $ARGS[0] = 'read':
 			end
 		end
 
-        if artembook > 0:
+		if artembook > 0:
 			act 'Read the book your borrowed from Artem. There are <<artembook * 100>> pages left (1:00) ':
+				*clr & cla
+				menu_off = 1
 				artembook -= 1
 				if artembook = 0:totalbook += 1
 
-				dynamic $downlibrary['read']
+				gs 'library_functions', 'read_book'
 				gs 'stat'
 
 				if $clothingworntype = 'nude' and $braworntype = 'none' and $pantyworntype = 'none':
@@ -166,7 +154,7 @@ if $ARGS[0] = 'read':
 			end
 
 		end
-		
+
 		if tractatus > 0:
 			act 'Study Aleksei''s magical discourse on unarmed combat. You feel that there are <<tractatus>> uses left (0:15) ':
 				if pcs_mana <= 400:
@@ -191,7 +179,7 @@ if $ARGS[0] = 'read':
 				else
 					'<center><img <<$set_imgh>> src="images/pc/activities/reading/bed_book_dressed.jpg"></center>'
 				end
-				
+
 				'As you read the strange text, the words blur and suddenly you are <i>inspired</i>. Your mind fill with new ideas and revelations, the defects in your combat form polished and the knows at how inflict the maximum level of pain at the minimal cost... sharpened.'
 
 				act 'Close the book':gt $loc, $loc_arg
@@ -206,18 +194,6 @@ if $ARGS[0] = 'read':
 		'You have no magazines to read.'
 	else
 		act 'Read a magazine':
-			killvar '$downlibrary'
-			$downlibrary['magazine'] = {
-				cla & *nl
-				if blizoruk = 500 or glassqw = 1:
-					glassqw = 1
-					msg '	The text blurs across the page. It seems you have poor eyesight. Maybe you should visit an ophthalmologist?'
-					gt $loc, $loc_arg
-				end
-				pcs_mood += 5
-				minut += 30
-			}
-			
 			*clr & cla
 			gs 'stat'
 			if $clothingworntype = 'nude' and $braworntype = 'none' and $pantyworntype = 'none':
@@ -229,65 +205,10 @@ if $ARGS[0] = 'read':
 			else
 				'<center><img <<$set_imgh>> src="images/pc/activities/reading/bed_magazine_dressed.jpg"></center>'
 			end
-			
-			if mc_inventory['mag_cooking'] = 1:
-				act 'Read your cooking magazine':
-					dynamic $downlibrary['magazine']
-					mc_inventory['mag_cooking'] = 0
-					'You relax for half an hour reading your cooking magazine.'
-					act 'Return':gt $loc, $loc_arg
-				end
-			end
 
-			if mc_inventory['mag_fashion'] = 1:
-				act 'Read your fashion magazine':
-					dynamic $downlibrary['magazine']
-					mc_inventory['mag_fashion'] = 0
-					gs 'exp_gain', 'makupskl', 1
-					'You relax for half an hour reading your fashion magazine.'
-					act 'Return':gt $loc, $loc_arg
-				end
-			end
+			gs 'library_functions', 'set_magazine_acts'
 
-			if mc_inventory['mag_computer'] = 1:
-				act 'Read your computing magazine':
-					dynamic $downlibrary['magazine']
-					mc_inventory['mag_computer'] = 0
-					gs 'exp_gain', 'compskl', 1 
-					'You relax for half an hour reading your computing magazine.'
-					act 'Return':gt $loc, $loc_arg
-				end
-			end
-
-			if mc_inventory['mag_biography'] = 1:
-				act 'Read your biographical magazine':
-					dynamic $downlibrary['magazine']
-					mc_inventory['mag_biography'] = 0
-					'You relax for half an hour reading your biographical magazine.'
-					act 'Return':gt $loc, $loc_arg
-				end
-			end
-
-			if mc_inventory['mag_knitting'] = 1:
-				act 'Read your knitting magazine':
-					dynamic $downlibrary['magazine']
-					mc_inventory['mag_knitting'] = 0
-					if pcs_sewng <= 100: gs 'exp_gain', 'sewng', rand(1,3)
-					'You relax for half an hour reading your knitting magazine.'
-					act 'Return':gt $loc, $loc_arg
-				end
-			end
-
-			if mc_inventory['mag_fitness'] = 1:
-				act 'Read your fitness magazine':
-					dynamic $downlibrary['magazine']
-					mc_inventory['mag_fitness'] = 0
-					'You relax for half an hour reading your fitness magazine.'
-					act 'Return':gt $loc, $loc_arg
-				end
-			end
-
-			act 'Return':gt $loc, $loc_arg
+			act 'Return': gt $loc, $loc_arg
 		end
 	end
 end
@@ -300,7 +221,7 @@ if $ARGS[0] = 'read_porn':
 			gt $loc, $loc_arg
 		end
 		*clr & cla
-		
+
 		'<center><img <<$set_imgh>> src="images/pc/items/accessories/magazines/porn.jpg"></center>'
 
 		if mc_inventory['mag_porn'] = 1:
@@ -383,9 +304,9 @@ if $ARGS[0] = 'pav_drug_dropoff':
 	'Cocaine: 2100 <b>₽</b>'
 	'Amphetamine: 600 <b>₽</b>'
 	'Weed: 300 <b>₽</b>'
-	
+
 	act 'Leave': gt 'pav_train_hall'
-	
+
 	if money >= 560:
 		act 'Buy and use heroin (560 <b>₽</b>)':
 			money -= 560
@@ -416,7 +337,7 @@ if $ARGS[0] = 'pav_drug_dropoff':
 	else
 		'You don''t have enough money to buy heroin.'
 	end
-	
+
 	if money >= 2100:
 		act 'Buy enough cocaine for 5 lines (1800 <b>₽</b>)':
 			money -= 2100
@@ -427,7 +348,7 @@ if $ARGS[0] = 'pav_drug_dropoff':
 	else
 		'You don''t have enough money to buy cocaine.'
 	end
-	
+
 	if money >= 600:
 		act 'Buy 5 Amphetamine (600 <b>₽</b>)':
 			money -= 600
@@ -437,7 +358,7 @@ if $ARGS[0] = 'pav_drug_dropoff':
 	else
 		'You don''t have enough money to buy amphetamine.'
 	end
-	
+
 	if money >= 300:
 		act 'Buy enough weed for 5 joints (300 <b>₽</b>)':
 			money -= 300

+ 36 - 36
locations/food.qsrc

@@ -15,7 +15,7 @@ if $ARGS[0] = 'pirosh':
 	*clr & cla
 	frost = 0
 	minut += 15
-	money -= val($_eat['<<args[1]>>,price'])
+	money -= _eat['<<args[1]>>,price']
 	pcs_health += pcs_health/10
 	pcs_mood += 5
 	fat += 4
@@ -51,7 +51,7 @@ if $ARGS[0] = 'golub':
 	*clr & cla
 	frost = 0
 	minut += 20
-	money -= val($_eat['<<args[1]>>,price'])
+	money -= _eat['<<args[1]>>,price']
 	pcs_health += 10
 	pcs_mood += 5
 	fat += 8
@@ -87,7 +87,7 @@ if $ARGS[0] = 'pozhar':
 	*clr & cla
 	frost = 0
 	minut += 20
-	money -= val($_eat['<<args[1]>>,price'])
+	money -= _eat['<<args[1]>>,price']
 	pcs_health += 15
 	pcs_mood += 10
 	fat += 6
@@ -123,7 +123,7 @@ if $ARGS[0] = 'reuben':
 	*clr & cla
 	frost = 0
 	minut += 25
-	money -= val($_eat['<<args[1]>>,price'])
+	money -= _eat['<<args[1]>>,price']
 	pcs_health += 20
 	pcs_mood += 25
 	fat += 12
@@ -159,7 +159,7 @@ if $ARGS[0] = 'bliny':
 	*clr & cla
 	frost = 0
 	minut += 15
-	money -= val($_eat['<<args[1]>>,price'])
+	money -= _eat['<<args[1]>>,price']
 	pcs_health += 10
 	pcs_mood += 5
 	fat += 8
@@ -195,7 +195,7 @@ if $ARGS[0] = 'varenfan':
 	*clr & cla
 	frost = 0
 	minut += 25
-	money -= val($_eat['<<args[1]>>,price'])
+	money -= _eat['<<args[1]>>,price']
 	pcs_health += 15
 	pcs_mood += 15
 	fat += 10
@@ -224,7 +224,7 @@ if $ARGS[0] = 'salfan':
 	*clr & cla
 	frost = 0
 	minut += 40
-	money -= val($_eat['<<args[1]>>,price'])
+	money -= _eat['<<args[1]>>,price']
 	pcs_health += 20
 	pcs_mood += 20
 	fat += 12
@@ -254,7 +254,7 @@ if $ARGS[0] = 'strofan':
 	*clr & cla
 	frost = 0
 	minut += 35
-	money -= val($_eat['<<args[1]>>,price'])
+	money -= _eat['<<args[1]>>,price']
 	pcs_health += 20
 	pcs_mood += 30
 	fat += 6
@@ -284,7 +284,7 @@ if $ARGS[0] = 'borfan':
 	*clr & cla
 	frost = 0
 	minut += 25
-	money -= val($_eat['<<args[1]>>,price'])
+	money -= _eat['<<args[1]>>,price']
 	pcs_health += 10
 	pcs_mood += 25
 	fat += 4
@@ -314,7 +314,7 @@ if $ARGS[0] = 'blifan':
 	*clr & cla
 	frost = 0
 	minut += 20
-	money -= val($_eat['<<args[1]>>,price'])
+	money -= _eat['<<args[1]>>,price']
 	pcs_health += 30
 	pcs_mood += 40
 	fat += 6
@@ -344,7 +344,7 @@ if $ARGS[0] = 'ryesna':
 	*clr & cla
 	frost = 0
 	minut += 10
-	money -= val($_eat['<<args[1]>>,price'])
+	money -= _eat['<<args[1]>>,price']
 	pcs_health += pcs_health/10
 	pcs_mood += 10
 	fat += 4
@@ -374,7 +374,7 @@ if $ARGS[0] = 'crisps':
 	*clr & cla
 	frost = 0
 	minut += 10
-	money -= val($_eat['<<args[1]>>,price'])
+	money -= _eat['<<args[1]>>,price']
 	pcs_health += pcs_health/10
 	pcs_mood += 20
 	fat += 16
@@ -404,7 +404,7 @@ if $ARGS[0] = 'onring':
 	*clr & cla
 	frost = 0
 	minut += 10
-	money -= val($_eat['<<args[1]>>,price'])
+	money -= _eat['<<args[1]>>,price']
 	pcs_health += 10
 	pcs_mood += 5
 	fat += 16
@@ -434,7 +434,7 @@ if $ARGS[0] = 'vegburg':
 	*clr & cla
 	frost = 0
 	minut += 20
-	money -= val($_eat['<<args[1]>>,price'])
+	money -= _eat['<<args[1]>>,price']
 	pcs_health += 20
 	pcs_mood += 10
 	fat += 8
@@ -464,7 +464,7 @@ if $ARGS[0] = 'turburg':
 	*clr & cla
 	frost = 0
 	minut += 20
-	money -= val($_eat['<<args[1]>>,price'])
+	money -= _eat['<<args[1]>>,price']
 	pcs_health += 10
 	pcs_mood += 10
 	fat += 10
@@ -494,7 +494,7 @@ if $ARGS[0] = 'batfish':
 	*clr & cla
 	frost = 0
 	minut += 20
-	money -= val($_eat['<<args[1]>>,price'])
+	money -= _eat['<<args[1]>>,price']
 	pcs_health += 15
 	pcs_mood += 15
 	fat += 11
@@ -524,7 +524,7 @@ if $ARGS[0] = 'cheburg':
 	*clr & cla
 	frost = 0
 	minut += 25
-	money -= val($_eat['<<args[1]>>,price'])
+	money -= _eat['<<args[1]>>,price']
 	pcs_health += 20
 	pcs_mood += 20
 	fat += 14
@@ -554,7 +554,7 @@ if $ARGS[0] = 'snack':
 	*clr & cla
 	gs 'stat'
 	minut += 5
-	money -= val($_eat['<<args[1]>>,price'])
+	money -= _eat['<<args[1]>>,price']
 	pcs_health += 10
 	pcs_mood += 20
 	fat += 6
@@ -578,7 +578,7 @@ if $ARGS[0] = 'f_food':
 	*clr & cla
 	frost = 0
 	minut += 10
-	money -= val($_eat['<<args[1]>>,price'])
+	money -= _eat['<<args[1]>>,price']
 	pcs_health += 10
 	fat += 14
 	pcs_energy += 70
@@ -607,7 +607,7 @@ if $ARGS[0] = 's_meal':
 	*clr & cla
 	frost = 0
 	minut += 10
-	money -= val($_eat['<<args[1]>>,price'])
+	money -= _eat['<<args[1]>>,price']
 	pcs_health += 10
 	fat += 4
 	pcs_energy += 40
@@ -636,7 +636,7 @@ if $ARGS[0] = 'm_meal':
 	*clr & cla
 	frost = 0
 	minut += 15
-	money -= val($_eat['<<args[1]>>,price'])
+	money -= _eat['<<args[1]>>,price']
 	pcs_health += 10
 	fat += 8
 	pcs_energy += 60
@@ -666,7 +666,7 @@ if $ARGS[0] = 'l_meal':
 	*clr & cla
 	frost = 0
 	minut += 20
-	money -= val($_eat['<<args[1]>>,price'])
+	money -= _eat['<<args[1]>>,price']
 	pcs_health += 10
 	fat += 14
 	pcs_energy += 100
@@ -695,7 +695,7 @@ if $ARGS[0] = 'bag_lunch':
 	*clr & cla
 	frost = 0
 	minut += 15
-	! money -= val($_eat['<<args[1]>>,price'])
+	! money -= _eat['<<args[1]>>,price']
 	pcs_health += 10
 	fat += 5
 	pcs_energy += 40
@@ -718,7 +718,7 @@ if $ARGS[0] = 'h_food':
 	*clr & cla
 	frost = 0
 	minut += 25
-	money -= val($_eat['<<args[1]>>,price'])
+	money -= _eat['<<args[1]>>,price']
 	pcs_health += 10
 	fat += 7
 	money -= 100
@@ -749,7 +749,7 @@ if $ARGS[0] = 'h_meal':
 	*clr & cla
 	frost = 0
 	minut += 25
-	money -= val($_eat['<<args[1]>>,price'])
+	money -= _eat['<<args[1]>>,price']
 	pcs_health += 20
 	fat += 1
 	pcs_energy += 50
@@ -778,7 +778,7 @@ if $ARGS[0] = 'jerky':
 	*clr & cla
 	frost = 0
 	minut += 10
-	money -= val($_eat['<<args[1]>>,price'])
+	money -= _eat['<<args[1]>>,price']
 	pcs_health += 10
 	fat += 1
 	pcs_hydra -= 15
@@ -803,7 +803,7 @@ if $ARGS[0] = 'meat_stew':
 	*clr & cla
 	frost = 0
 	minut += 30
-	money -= val($_eat['<<args[1]>>,price'])
+	money -= _eat['<<args[1]>>,price']
 	pcs_health += 10
 	fat += 3
 	pcs_energy += 50
@@ -833,7 +833,7 @@ if $ARGS[0] = 'mush_soup':
 	*clr & cla
 	frost = 0
 	minut += 30
-	money -= val($_eat['<<args[1]>>,price'])
+	money -= _eat['<<args[1]>>,price']
 	pcs_health += 10
 	fat += 3
 	pcs_energy += 40
@@ -863,7 +863,7 @@ if $ARGS[0] = 'bilberry':
 	*clr & cla
 	gs 'stat'
 	minut += 15
-	money -= val($_eat['<<args[1]>>,price'])
+	money -= _eat['<<args[1]>>,price']
 	pcs_health += pcs_health/10
 	pcs_mood += 10
 	fat += 1
@@ -946,7 +946,7 @@ end
 if $ARGS[0] = 'only_cost_snack':
 	*clr & cla
 	gs 'stat'
-	money -= val($_eat['<<args[1]>>,price'])
+	money -= _eat['<<args[1]>>,price']
 	pcs_health += 10
 	pcs_mood += 20
 	fat += 6
@@ -963,7 +963,7 @@ end
 
 if $ARGS[0] = 'only_cost_light_snack':
 	*clr & cla
-	money -= val($_eat['<<args[1]>>,price'])
+	money -= _eat['<<args[1]>>,price']
 	pcs_health += pcs_health/10
 	pcs_mood += 20
 	fat += 3
@@ -1053,7 +1053,7 @@ end
 if $ARGS[0] = 'only_cost_pirosh':
 	*clr & cla
 	frost = 0
-	money -= val($_eat['<<args[1]>>,price'])
+	money -= _eat['<<args[1]>>,price']
 	pcs_health += pcs_health/10
 	pcs_mood += 5
 	fat += 4
@@ -1077,7 +1077,7 @@ end
 
 if $ARGS[0] = 'only_cost_golub':
 	frost = 0
-	money -= val($_eat['<<args[1]>>,price'])
+	money -= _eat['<<args[1]>>,price']
 	pcs_health += 10
 	pcs_mood += 5
 	fat += 8
@@ -1101,7 +1101,7 @@ end
 
 if $ARGS[0] = 'only_cost_pozhar':
 	frost = 0
-	money -= val($_eat['<<args[1]>>,price'])
+	money -= _eat['<<args[1]>>,price']
 	pcs_health += 15
 	pcs_mood += 10
 	fat += 6
@@ -1125,7 +1125,7 @@ end
 
 if $ARGS[0] = 'only_cost_reuben':
 	frost = 0
-	money -= val($_eat['<<args[1]>>,price'])
+	money -= _eat['<<args[1]>>,price']
 	pcs_health += 20
 	pcs_mood += 25
 	fat += 12
@@ -1149,7 +1149,7 @@ end
 
 if $ARGS[0] = 'only_cost_bliny':
 	frost = 0
-	money -= val($_eat['<<args[1]>>,price'])
+	money -= _eat['<<args[1]>>,price']
 	pcs_health += 10
 	pcs_mood += 5
 	fat += 8

+ 171 - 171
locations/food_menu.qsrc

@@ -34,38 +34,38 @@ if $loc = 'burger':
 	!'<center><img <<$set_imgh>> src="images/shared/drinks/dinerdrinks.jpg"</center><br>'
 	$_eat['0,name'] = 'Onion Rings'
 	$_eat['0,type'] = 'onring'
-	$_eat['0,price'] = 80
+	_eat['0,price'] = 80
 	$_eat['1,name'] = 'Vegie Burger'
 	$_eat['1,type'] = 'vegburg'
-	$_eat['1,price'] = 240
+	_eat['1,price'] = 240
 	$_eat['2,name'] = 'Turkey Burger'
 	$_eat['2,type'] = 'turburg'
-	$_eat['2,price'] = 260
+	_eat['2,price'] = 260
 	$_eat['3,name'] = 'Battered Fish & Fries'
 	$_eat['3,type'] = 'batfish'
-	$_eat['3,price'] = 290
+	_eat['3,price'] = 290
 	$_eat['4,name'] = 'Cheeseburger & Fries'
 	$_eat['4,type'] = 'cheburg'
-	$_eat['4,price'] = 310
+	_eat['4,price'] = 310
 
 	$_drink['0,name'] = 'Water'
 	$_drink['0,type'] = 'bev_wat'
-	$_drink['0,price'] = 'Free'
+	_drink['0,price'] = 0
 	$_drink['1,name'] = 'Kvass'
 	$_drink['1,type'] = 'bev_kva'
-	$_drink['1,price'] = 55
+	_drink['1,price'] = 55
 	$_drink['2,name'] = 'Juice'
 	$_drink['2,type'] = 'bev_jui'
-	$_drink['2,price'] = 70
+	_drink['2,price'] = 70
 	$_drink['3,name'] = 'Spiced Tea'
 	$_drink['3,type'] = 'bev_tea'
-	$_drink['3,price'] = 110
+	_drink['3,price'] = 110
 	$_drink['4,name'] = 'Black Coffee'
 	$_drink['4,type'] = 'bev_cof'
-	$_drink['4,price'] = 120
+	_drink['4,price'] = 120
 	$_drink['5,name'] = 'Milkshake'
 	$_drink['5,type'] = 'bev_mil'
-	$_drink['5,price'] = 180
+	_drink['5,price'] = 180
 elseif $loc = 'gkafe':
 	'<center><b><font color="maroon">Borislav''s cafe</font></b></center>'
 	*nl
@@ -74,73 +74,73 @@ elseif $loc = 'gkafe':
 	if mid($start_type,1,2) = 'sg' and func('homes_properties', 'has_access', 'parents_home'):
 		$_eat['0,name'] = 'Vegetarian Piroshki'
 		$_eat['0,type'] = 'pirosh'
-		$_eat['0,price'] = 'Free'
+		_eat['0,price'] = 0
 		$_eat['1,name'] = 'Herring Blini'
 		$_eat['1,type'] = 'bliny'
-		$_eat['1,price'] = 'Free'
+		_eat['1,price'] = 0
 		$_eat['2,name'] = 'Golubtsy'
 		$_eat['2,type'] = 'golub'
-		$_eat['2,price'] = 'Free'
+		_eat['2,price'] = 0
 		$_eat['3,name'] = 'Pozharsky Cutlets'
 		$_eat['3,type'] = 'pozhar'
-		$_eat['3,price'] = 'Free'
+		_eat['3,price'] = 0
 		$_eat['4,name'] = 'Rueben Sandwich'
 		$_eat['4,type'] = 'reuben'
-		$_eat['4,price'] = 'Free'
+		_eat['4,price'] = 0
 
 		$_drink['0,name'] = 'Water'
 		$_drink['0,type'] = 'bev_wat'
-		$_drink['0,price'] = 'Free'
+		_drink['0,price'] = 0
 		$_drink['1,name'] = 'Kvass'
 		$_drink['1,type'] = 'bev_kva'
-		$_drink['1,price'] = 'Free'
+		_drink['1,price'] = 0
 		$_drink['2,name'] = 'Juice'
 		$_drink['2,type'] = 'bev_jui'
-		$_drink['2,price'] = 'Free'
+		_drink['2,price'] = 0
 		$_drink['3,name'] = 'Spiced Tea'
 		$_drink['3,type'] = 'bev_tea'
-		$_drink['3,price'] = 'Free'
+		_drink['3,price'] = 0
 		$_drink['4,name'] = 'Black Coffee'
 		$_drink['4,type'] = 'bev_cof'
-		$_drink['4,price'] = 'Free'
+		_drink['4,price'] = 0
 		$_drink['5,name'] = 'Milkshake'
 		$_drink['5,type'] = 'bev_mil'
-		$_drink['5,price'] = 'Free'
+		_drink['5,price'] = 0
 	else
 		$_eat['0,name'] = 'Vegetarian Piroshki'
 		$_eat['0,type'] = 'pirosh'
-		$_eat['0,price'] = 100
+		_eat['0,price'] = 100
 		$_eat['1,name'] = 'Herring Blini'
 		$_eat['1,type'] = 'bliny'
-		$_eat['1,price'] = 190
+		_eat['1,price'] = 190
 		$_eat['2,name'] = 'Golubtsy'
 		$_eat['2,type'] = 'golub'
-		$_eat['2,price'] = 210
+		_eat['2,price'] = 210
 		$_eat['3,name'] = 'Pozharsky Cutlets'
 		$_eat['3,type'] = 'pozhar'
-		$_eat['3,price'] = 290
+		_eat['3,price'] = 290
 		$_eat['4,name'] = 'Rueben Sandwich'
 		$_eat['4,type'] = 'reuben'
-		$_eat['4,price'] = 340
+		_eat['4,price'] = 340
 
 		$_drink['0,name'] = 'Water'
 		$_drink['0,type'] = 'bev_wat'
-		$_drink['0,price'] = 'Free'
+		_drink['0,price'] = 0
 		$_drink['1,name'] = 'Kvass'
 		$_drink['1,type'] = 'bev_kva'
-		$_drink['1,price'] = 60
+		_drink['1,price'] = 60
 		$_drink['2,name'] = 'Juice'
 		$_drink['2,type'] = 'bev_jui'
-		$_drink['2,price'] = 80
+		_drink['2,price'] = 80
 		$_drink['3,name'] = 'Spiced Tea'
 		$_drink['3,type'] = 'bev_tea'
-		$_drink['3,price'] = 120
+		_drink['3,price'] = 120
 		$_drink['4,name'] = 'Black Coffee'
 		$_drink['4,type'] = 'bev_cof'
-		$_drink['4,price'] = 130
+		_drink['4,price'] = 130
 		$_drink['5,name'] = 'Milkshake'
 		$_drink['5,type'] = 'bev_mil'
-		$_drink['5,price'] = 200
+		_drink['5,price'] = 200
 	end
 elseif $loc = 'brothel':
 	'<center><h3>Hotel Bar</h3></center>'
@@ -148,33 +148,33 @@ elseif $loc = 'brothel':
 	'<center><img <<$set_imgh>> src="images/shared/drinks/bardrinks.jpg"</center><br>'
 	$_eat['0,name'] = 'Toasted rye snacks'
 	$_eat['0,type'] = 'ryesna'
-	$_eat['0,price'] = 30
+	_eat['0,price'] = 30
 	$_eat['1,name'] = 'Bowl of flavoured crisps'
 	$_eat['1,type'] = 'crisps'
-	$_eat['1,price'] = 40
+	_eat['1,price'] = 40
 
 	$_drink['0,name'] = 'Water'
 	$_drink['0,type'] = 'bev_wat'
-	$_drink['0,price'] = 'Free'
+	_drink['0,price'] = 0
 	$_drink['1,name'] = 'Beer on tap'
 	$_drink['1,type'] = 'bev_bee'
-	$_drink['1,price'] = 60
+	_drink['1,price'] = 60
 	$_drink['2,name'] = 'Vodka'
 	$_drink['2,type'] = 'bev_vod'
-	$_drink['2,price'] = 120
+	_drink['2,price'] = 120
 	$_drink['3,name'] = 'Scotch'
 	$_drink['3,type'] = 'bev_sco'
-	$_drink['3,price'] = 140
+	_drink['3,price'] = 140
 	$_drink['4,name'] = 'Glass of Wine'
 	$_drink['4,type'] = 'bev_win'
-	$_drink['4,price'] = 160
+	_drink['4,price'] = 160
 	$_drink['5,name'] = 'Black Russian'
 	$_drink['5,type'] = 'bev_bla'
-	$_drink['5,price'] = 250
+	_drink['5,price'] = 250
 	if hotelWhore = 1:
 		$_drink['6,name'] = 'Blue-blooded Russian'
 		$_drink['6,type'] = 'bev_bbr'
-		$_drink['6,price'] = 'Free'
+		_drink['6,price'] = 0
 	end
 elseif $loc = 'cafe_parco':
 	'<center><h4><font color="maroon">Cafe "Del Parco"</font></h4></center>'
@@ -183,38 +183,38 @@ elseif $loc = 'cafe_parco':
 	!'<center><img <<$set_imgh>> src="images/shared/drinks/cafedrinks.jpg"</center><br>'
 	$_eat['0,name'] = 'Vegetarian Piroshki'
 	$_eat['0,type'] = 'pirosh'
-	$_eat['0,price'] = 100
+	_eat['0,price'] = 100
 	$_eat['1,name'] = 'Herring Blini'
 	$_eat['1,type'] = 'bliny'
-	$_eat['1,price'] = 190
+	_eat['1,price'] = 190
 	$_eat['2,name'] = 'Golubtsy'
 	$_eat['2,type'] = 'golub'
-	$_eat['2,price'] = 210
+	_eat['2,price'] = 210
 	$_eat['3,name'] = 'Pozharsky Cutlets'
 	$_eat['3,type'] = 'pozhar'
-	$_eat['3,price'] = 290
+	_eat['3,price'] = 290
 	$_eat['4,name'] = 'Rueben Sandwich'
 	$_eat['4,type'] = 'reuben'
-	$_eat['4,price'] = 340
+	_eat['4,price'] = 340
 
 	$_drink['0,name'] = 'Water'
 	$_drink['0,type'] = 'bev_wat'
-	$_drink['0,price'] = 'Free'
+	_drink['0,price'] = 0
 	$_drink['1,name'] = 'Kvass'
 	$_drink['1,type'] = 'bev_kva'
-	$_drink['1,price'] = 60
+	_drink['1,price'] = 60
 	$_drink['2,name'] = 'Juice'
 	$_drink['2,type'] = 'bev_jui'
-	$_drink['2,price'] = 80
+	_drink['2,price'] = 80
 	$_drink['3,name'] = 'Spiced Tea'
 	$_drink['3,type'] = 'bev_tea'
-	$_drink['3,price'] = 120
+	_drink['3,price'] = 120
 	$_drink['4,name'] = 'Black Coffee'
 	$_drink['4,type'] = 'bev_cof'
-	$_drink['4,price'] = 130
+	_drink['4,price'] = 130
 	$_drink['5,name'] = 'Milkshake'
 	$_drink['5,type'] = 'bev_mil'
-	$_drink['5,price'] = 200
+	_drink['5,price'] = 200
 elseif $loc = 'city_kafe':
 	'<center><b><font color="maroon">The Roadhouse</font></b></center>'
 	*nl
@@ -222,181 +222,181 @@ elseif $loc = 'city_kafe':
 	!'<center><img <<$set_imgh>> src="images/shared/drinks/dinerdrinks.jpg"</center><br>'
 	$_eat['0,name'] = 'Onion Rings'
 	$_eat['0,type'] = 'onring'
-	$_eat['0,price'] = 80
+	_eat['0,price'] = 80
 	$_eat['1,name'] = 'Vegie Burger'
 	$_eat['1,type'] = 'vegburg'
-	$_eat['1,price'] = 240
+	_eat['1,price'] = 240
 	$_eat['2,name'] = 'Turkey Burger'
 	$_eat['2,type'] = 'turburg'
-	$_eat['2,price'] = 260
+	_eat['2,price'] = 260
 	$_eat['3,name'] = 'Battered Fish & Fries'
 	$_eat['3,type'] = 'batfish'
-	$_eat['3,price'] = 290
+	_eat['3,price'] = 290
 	$_eat['4,name'] = 'Cheeseburger & Fries'
 	$_eat['4,type'] = 'cheburg'
-	$_eat['4,price'] = 310
+	_eat['4,price'] = 310
 
 	$_drink['0,name'] = 'Water'
 	$_drink['0,type'] = 'bev_wat'
-	$_drink['0,price'] = 'Free'
+	_drink['0,price'] = 0
 	$_drink['1,name'] = 'Kvass'
 	$_drink['1,type'] = 'bev_kva'
-	$_drink['1,price'] = 55
+	_drink['1,price'] = 55
 	$_drink['2,name'] = 'Juice'
 	$_drink['2,type'] = 'bev_jui'
-	$_drink['2,price'] = 70
+	_drink['2,price'] = 70
 	$_drink['3,name'] = 'Spiced Tea'
 	$_drink['3,type'] = 'bev_tea'
-	$_drink['3,price'] = 110
+	_drink['3,price'] = 110
 	$_drink['4,name'] = 'Black Coffee'
 	$_drink['4,type'] = 'bev_cof'
-	$_drink['4,price'] = 120
+	_drink['4,price'] = 120
 	$_drink['5,name'] = 'Milkshake'
 	$_drink['5,type'] = 'bev_mil'
-	$_drink['5,price'] = 180
+	_drink['5,price'] = 180
 elseif $loc = 'lakecafe':
 	'<center><B><font color=maroon>The Lake Cafe</font></B></center>'
 	*nl
 	'<center><img <<$set_imgh>> src="images/shared/drinks/cafedrinks.jpg"</center><br>'
 	$_eat['0,name'] = 'Vegetarian Piroshki'
 	$_eat['0,type'] = 'pirosh'
-	$_eat['0,price'] = 100
+	_eat['0,price'] = 100
 	$_eat['1,name'] = 'Herring Blini'
 	$_eat['1,type'] = 'bliny'
-	$_eat['1,price'] = 190
+	_eat['1,price'] = 190
 	$_eat['2,name'] = 'Golubtsy'
 	$_eat['2,type'] = 'golub'
-	$_eat['2,price'] = 210
+	_eat['2,price'] = 210
 	$_eat['3,name'] = 'Pozharsky Cutlets'
 	$_eat['3,type'] = 'pozhar'
-	$_eat['3,price'] = 290
+	_eat['3,price'] = 290
 	$_eat['4,name'] = 'Rueben Sandwich'
 	$_eat['4,type'] = 'reuben'
-	$_eat['4,price'] = 340
+	_eat['4,price'] = 340
 
 	$_drink['0,name'] = 'Water'
 	$_drink['0,type'] = 'bev_wat'
-	$_drink['0,price'] = 'Free'
+	_drink['0,price'] = 0
 	$_drink['1,name'] = 'Kvass'
 	$_drink['1,type'] = 'bev_kva'
-	$_drink['1,price'] = 60
+	_drink['1,price'] = 60
 	$_drink['2,name'] = 'Juice'
 	$_drink['2,type'] = 'bev_jui'
-	$_drink['2,price'] = 80
+	_drink['2,price'] = 80
 	$_drink['3,name'] = 'Spiced Tea'
 	$_drink['3,type'] = 'bev_tea'
-	$_drink['3,price'] = 120
+	_drink['3,price'] = 120
 	$_drink['4,name'] = 'Black Coffee'
 	$_drink['4,type'] = 'bev_cof'
-	$_drink['4,price'] = 130
+	_drink['4,price'] = 130
 	$_drink['5,name'] = 'Milkshake'
 	$_drink['5,type'] = 'bev_mil'
-	$_drink['5,price'] = 200
+	_drink['5,price'] = 200
 elseif $loc = 'pushkin_cafe':
 	'<center><B><font color=maroon>Tiny Cafe</font></B></center>'
 	*nl
 	'<center><img <<$set_imgh>> src="images/shared/drinks/cafedrinks.jpg"</center><br>'
 	$_eat['0,name'] = 'Onion Rings'
 	$_eat['0,type'] = 'onring'
-	$_eat['0,price'] = 80
+	_eat['0,price'] = 80
 	$_eat['1,name'] = 'Vegie Burger'
 	$_eat['1,type'] = 'vegburg'
-	$_eat['1,price'] = 240
+	_eat['1,price'] = 240
 	$_eat['2,name'] = 'Turkey Burger'
 	$_eat['2,type'] = 'turburg'
-	$_eat['2,price'] = 260
+	_eat['2,price'] = 260
 	$_eat['3,name'] = 'Battered Fish & Fries'
 	$_eat['3,type'] = 'batfish'
-	$_eat['3,price'] = 290
+	_eat['3,price'] = 290
 	$_eat['4,name'] = 'Cheeseburger & Fries'
 	$_eat['4,type'] = 'cheburg'
-	$_eat['4,price'] = 310
+	_eat['4,price'] = 310
 
 	$_drink['0,name'] = 'Water'
 	$_drink['0,type'] = 'bev_wat'
-	$_drink['0,price'] = 'Free'
+	_drink['0,price'] = 0
 	$_drink['1,name'] = 'Kvass'
 	$_drink['1,type'] = 'bev_kva'
-	$_drink['1,price'] = 60
+	_drink['1,price'] = 60
 	$_drink['2,name'] = 'Juice'
 	$_drink['2,type'] = 'bev_jui'
-	$_drink['2,price'] = 80
+	_drink['2,price'] = 80
 	$_drink['3,name'] = 'Spiced Tea'
 	$_drink['3,type'] = 'bev_tea'
-	$_drink['3,price'] = 120
+	_drink['3,price'] = 120
 	$_drink['4,name'] = 'Black Coffee'
 	$_drink['4,type'] = 'bev_cof'
-	$_drink['4,price'] = 130
+	_drink['4,price'] = 130
 	$_drink['5,name'] = 'Milkshake'
 	$_drink['5,type'] = 'bev_mil'
-	$_drink['5,price'] = 200
+	_drink['5,price'] = 200
 elseif $loc = 'ParkKafe':
 	'<center><B><font color=maroon>Park Cafe</font></B></center>'
 	*nl
 	'<center><img <<$set_imgh>> src="images/shared/drinks/cafedrinks.jpg"</center><br>'
 	$_eat['0,name'] = 'Vegetarian Piroshki'
 	$_eat['0,type'] = 'pirosh'
-	$_eat['0,price'] = 100
+	_eat['0,price'] = 100
 	$_eat['1,name'] = 'Herring Blini'
 	$_eat['1,type'] = 'bliny'
-	$_eat['1,price'] = 190
+	_eat['1,price'] = 190
 	$_eat['2,name'] = 'Golubtsy'
 	$_eat['2,type'] = 'golub'
-	$_eat['2,price'] = 210
+	_eat['2,price'] = 210
 	$_eat['3,name'] = 'Pozharsky Cutlets'
 	$_eat['3,type'] = 'pozhar'
-	$_eat['3,price'] = 290
+	_eat['3,price'] = 290
 	$_eat['4,name'] = 'Rueben Sandwich'
 	$_eat['4,type'] = 'reuben'
-	$_eat['4,price'] = 340
+	_eat['4,price'] = 340
 
 	$_drink['0,name'] = 'Water'
 	$_drink['0,type'] = 'bev_wat'
-	$_drink['0,price'] = 'Free'
+	_drink['0,price'] = 0
 	$_drink['1,name'] = 'Kvass'
 	$_drink['1,type'] = 'bev_kva'
-	$_drink['1,price'] = 60
+	_drink['1,price'] = 60
 	$_drink['2,name'] = 'Juice'
 	$_drink['2,type'] = 'bev_jui'
-	$_drink['2,price'] = 80
+	_drink['2,price'] = 80
 	$_drink['3,name'] = 'Spiced Tea'
 	$_drink['3,type'] = 'bev_tea'
-	$_drink['3,price'] = 120
+	_drink['3,price'] = 120
 	$_drink['4,name'] = 'Black Coffee'
 	$_drink['4,type'] = 'bev_cof'
-	$_drink['4,price'] = 130
+	_drink['4,price'] = 130
 	$_drink['5,name'] = 'Milkshake'
 	$_drink['5,type'] = 'bev_mil'
-	$_drink['5,price'] = 200
+	_drink['5,price'] = 200
 elseif $loc = 'qwBarPolet':
 	'<center><b><font color="maroon">Bar "Rabotnik"</font></b></center>'
 	*nl
 	'<center><img <<$set_imgh>> src="images/shared/drinks/bardrinks.jpg"</center><br>'
 	$_eat['0,name'] = 'Toasted rye snacks'
 	$_eat['0,type'] = 'ryesna'
-	$_eat['0,price'] = 30
+	_eat['0,price'] = 30
 	$_eat['1,name'] = 'Bowl of flavoured crisps'
 	$_eat['1,type'] = 'crisps'
-	$_eat['1,price'] = 40
+	_eat['1,price'] = 40
 
 	$_drink['0,name'] = 'Water'
 	$_drink['0,type'] = 'bev_wat'
-	$_drink['0,price'] = 'Free'
+	_drink['0,price'] = 0
 	$_drink['1,name'] = 'Beer on tap'
 	$_drink['1,type'] = 'bev_bee'
-	$_drink['1,price'] = 60
+	_drink['1,price'] = 60
 	$_drink['2,name'] = 'Vodka'
 	$_drink['2,type'] = 'bev_vod'
-	$_drink['2,price'] = 120
+	_drink['2,price'] = 120
 	$_drink['3,name'] = 'Scotch'
 	$_drink['3,type'] = 'bev_sco'
-	$_drink['3,price'] = 140
+	_drink['3,price'] = 140
 	$_drink['4,name'] = 'Glass of Wine'
 	$_drink['4,type'] = 'bev_win'
-	$_drink['4,price'] = 160
+	_drink['4,price'] = 160
 	$_drink['5,name'] = 'Black Russian'
 	$_drink['5,type'] = 'bev_bla'
-	$_drink['5,price'] = 250
+	_drink['5,price'] = 250
 elseif $loc = 'restoran':
 	'<center><b><font color="maroon">Babel</font></b></center>'
 	*nl
@@ -404,76 +404,76 @@ elseif $loc = 'restoran':
 	!'<center><img <<$set_imgh>> src="images/shared/drinks/fancydrinks.jpg"</center><br>'
 	$_eat['0,name'] = 'Vareniki with Potatoes'
 	$_eat['0,type'] = 'varenfan'
-	$_eat['0,price'] = 760
+	_eat['0,price'] = 760
 	$_eat['1,name'] = 'Borscht and French Baguette'
 	$_eat['1,type'] = 'borfan'
-	$_eat['1,price'] = 900
+	_eat['1,price'] = 900
 	$_eat['2,name'] = 'Atlantic Salmon Steak'
 	$_eat['2,type'] = 'salfan'
-	$_eat['2,price'] = 1000
+	_eat['2,price'] = 1000
 	$_eat['3,name'] = 'Beef & Mushroom Stroganoff'
 	$_eat['3,type'] = 'strofan'
-	$_eat['3,price'] = 1200
+	_eat['3,price'] = 1200
 	$_eat['4,name'] = 'Red Caviar Blinchiki'
 	$_eat['4,type'] = 'blifan'
-	$_eat['4,price'] = 1360
+	_eat['4,price'] = 1360
 
 	$_drink['0,name'] = 'Spring Water'
 	$_drink['0,type'] = 'bev_wat'
-	$_drink['0,price'] = 'Free'
+	_drink['0,price'] = 0
 	$_drink['1,name'] = 'Imported Tea'
 	$_drink['1,type'] = 'bev_tea'
-	$_drink['1,price'] = 180
+	_drink['1,price'] = 180
 	$_drink['2,name'] = 'Imported Beer'
 	$_drink['2,type'] = 'bev_bee'
-	$_drink['2,price'] = 200
+	_drink['2,price'] = 200
 	$_drink['3,name'] = 'Vodka Martini'
 	$_drink['3,type'] = 'bev_mar'
-	$_drink['3,price'] = 400
+	_drink['3,price'] = 400
 	$_drink['4,name'] = 'Glass of Wine'
 	$_drink['4,type'] = 'bev_win'
-	$_drink['4,price'] = 800
+	_drink['4,price'] = 800
 	$_drink['5,name'] = 'Glass of Champagne'
 	$_drink['5,type'] = 'bev_cha'
-	$_drink['5,price'] = 900
+	_drink['5,price'] = 900
 elseif $loc = 'uni_cafe':
 	'<center><b><font color="maroon">University cafe</font></b></center>'
 	*nl
 	'<center><img <<$set_imgh>> src="images/shared/drinks/cafedrinks.jpg"</center><br>'
 	$_eat['0,name'] = 'Vegetarian Piroshki'
 	$_eat['0,type'] = 'pirosh'
-	$_eat['0,price'] = 100
+	_eat['0,price'] = 100
 	$_eat['1,name'] = 'Herring Blini'
 	$_eat['1,type'] = 'bliny'
-	$_eat['1,price'] = 190
+	_eat['1,price'] = 190
 	$_eat['2,name'] = 'Golubtsy'
 	$_eat['2,type'] = 'golub'
-	$_eat['2,price'] = 210
+	_eat['2,price'] = 210
 	$_eat['3,name'] = 'Pozharsky Cutlets'
 	$_eat['3,type'] = 'pozhar'
-	$_eat['3,price'] = 290
+	_eat['3,price'] = 290
 	$_eat['4,name'] = 'Rueben Sandwich'
 	$_eat['4,type'] = 'reuben'
-	$_eat['4,price'] = 340
+	_eat['4,price'] = 340
 
 	$_drink['0,name'] = 'Water'
 	$_drink['0,type'] = 'only_cost_wat'
-	$_drink['0,price'] = 'Free'
+	_drink['0,price'] = 0
 	$_drink['1,name'] = 'Kvass'
 	$_drink['1,type'] = 'only_cost_kva'
-	$_drink['1,price'] = 60
+	_drink['1,price'] = 60
 	$_drink['2,name'] = 'Juice'
 	$_drink['2,type'] = 'only_cost_jui'
-	$_drink['2,price'] = 80
+	_drink['2,price'] = 80
 	$_drink['3,name'] = 'Spiced Tea'
 	$_drink['3,type'] = 'only_cost_tea'
-	$_drink['3,price'] = 120
+	_drink['3,price'] = 120
 	$_drink['4,name'] = 'Black Coffee'
 	$_drink['4,type'] = 'only_cost_bco'
-	$_drink['4,price'] = 130
+	_drink['4,price'] = 130
 	$_drink['5,name'] = 'Milkshake'
 	$_drink['5,type'] = 'only_cost_mil'
-	$_drink['5,price'] = 200
+	_drink['5,price'] = 200
 elseif $loc = 'city_coffee_hole':
 	$loc_arg = 'eat'
 	'<center><B><font color=maroon>Cafe "Coffee hole"</font></B></center>'
@@ -481,88 +481,88 @@ elseif $loc = 'city_coffee_hole':
 	'<center><img <<$set_imgh>> src="images/shared/drinks/cafedrinks.jpg"</center><br>'
 	$_eat['0,name'] = 'Biscotti'
 	$_eat['0,type'] = 'only_cost_light_snack'
-	$_eat['0,price'] = 100
+	_eat['0,price'] = 100
 	$_eat['1,name'] = 'Cannoli'
 	$_eat['1,type'] = 'only_cost_snack'
-	$_eat['1,price'] = 120
+	_eat['1,price'] = 120
 	$_eat['2,name'] = 'Muffin'
 	$_eat['2,type'] = 'only_cost_snack'
-	$_eat['2,price'] = 120
+	_eat['2,price'] = 120
 	$_eat['3,name'] = 'Croissants'
 	$_eat['3,type'] = 'only_cost_snack'
-	$_eat['3,price'] = 120
+	_eat['3,price'] = 120
 	$_eat['4,name'] = 'Danish'
 	$_eat['4,type'] = 'only_cost_snack'
-	$_eat['4,price'] = 120
+	_eat['4,price'] = 120
 	$_eat['5,name'] = 'Cookies'
 	$_eat['5,type'] = 'only_cost_light_snack'
-	$_eat['5,price'] = 100
+	_eat['5,price'] = 100
 	$_eat['6,name'] = 'Miagkie Plushki s Sakharom'
 	$_eat['6,type'] = 'only_cost_snack'
-	$_eat['6,price'] = 120
+	_eat['6,price'] = 120
 	$_eat['7,name'] = 'Mannik'
 	$_eat['7,type'] = 'only_cost_snack'
-	$_eat['7,price'] = 120
+	_eat['7,price'] = 120
 	$_eat['8,name'] = 'Korzinochki'
 	$_eat['8,type'] = 'only_cost_snack'
-	$_eat['8,price'] = 120
+	_eat['8,price'] = 120
 
 	$_drink['0,name'] = 'Tea'
 	$_drink['0,type'] = 'only_cost_tea'
-	$_drink['0,price'] = 120
+	_drink['0,price'] = 120
 	$_drink['1,name'] = 'Espresso'
 	$_drink['1,type'] = 'only_cost_esp'
-	$_drink['1,price'] = 100
+	_drink['1,price'] = 100
 	$_drink['2,name'] = 'Black Coffee'
 	$_drink['2,type'] = 'only_cost_bco'
-	$_drink['2,price'] = 120
+	_drink['2,price'] = 120
 	$_drink['3,name'] = 'Cappuccino'
 	$_drink['3,type'] = 'only_cost_cof'
-	$_drink['3,price'] = 150
+	_drink['3,price'] = 150
 	$_drink['4,name'] = 'Cafe Latte'
 	$_drink['4,type'] = 'only_cost_cof'
-	$_drink['4,price'] = 150
+	_drink['4,price'] = 150
 	$_drink['5,name'] = 'Iced Latte'
 	$_drink['5,type'] = 'only_cost_cof'
-	$_drink['5,price'] = 150
+	_drink['5,price'] = 150
 elseif $loc = 'city_nightclub':
 	'<center><b><font color="maroon">Bar "Nightclub"</font></b></center>'
 	*nl
 	'<center><img <<$set_imgh>> src="images/shared/drinks/bardrinks.jpg"</center><br>'
 	$_eat['0,name'] = 'Toasted rye snacks'
 	$_eat['0,type'] = 'ryesna'
-	$_eat['0,price'] = 30
+	_eat['0,price'] = 30
 
 	$_drink['0,name'] = 'Water'
 	$_drink['0,type'] = 'bev_wat'
-	$_drink['0,price'] = 'Free'
+	_drink['0,price'] = 0
 	$_drink['1,name'] = 'Energy Drink'
 	$_drink['1,type'] = 'bev_energy_drink'
-	$_drink['1,price'] = 60
+	_drink['1,price'] = 60
 	$_drink['2,name'] = 'Beer on tap'
 	$_drink['2,type'] = 'bev_bee'
-	$_drink['2,price'] = 60
+	_drink['2,price'] = 60
 	$_drink['3,name'] = 'Vodka'
 	$_drink['3,type'] = 'bev_vod'
-	$_drink['3,price'] = 120
+	_drink['3,price'] = 120
 	$_drink['4,name'] = 'Scotch'
 	$_drink['4,type'] = 'bev_sco'
-	$_drink['4,price'] = 140
+	_drink['4,price'] = 140
 	$_drink['5,name'] = 'Glass of Wine'
 	$_drink['5,type'] = 'bev_win'
-	$_drink['5,price'] = 160
+	_drink['5,price'] = 160
 	$_drink['6,name'] = 'Black Russian'
 	$_drink['6,type'] = 'bev_bla'
-	$_drink['6,price'] = 250
+	_drink['6,price'] = 250
 	$_drink['7,name'] = 'Champagne'
 	$_drink['7,type'] = 'bev_cha'
-	$_drink['7,price'] = 220
+	_drink['7,price'] = 220
 	$_drink['8,name'] = 'Vodka Martini'
 	$_drink['8,type'] = 'bev_mar'
-	$_drink['8,price'] = 250
+	_drink['8,price'] = 250
 	$_drink['9,name'] = 'Fancy cocktail'
 	$_drink['9,type'] = 'bev_cocktail'
-	$_drink['9,price'] = 300
+	_drink['9,price'] = 300
 elseif $loc = 'katja_nightclub' or $loc = 'katja_nightclub_sex':
 	'<center><b><font color="maroon">Bar "Nightclub"</font></b></center>'
 	*nl
@@ -573,34 +573,34 @@ elseif $loc = 'katja_nightclub' or $loc = 'katja_nightclub_sex':
 	end
 	$_drink['0,name'] = 'Water'
 	$_drink['0,type'] = 'only_cost_wat'
-	$_drink['0,price'] = 'Free'
+	_drink['0,price'] = 0
 	$_drink['1,name'] = 'Energy Drink'
 	$_drink['1,type'] = 'only_cost_bev_energy_drink'
-	$_drink['1,price'] = 60
+	_drink['1,price'] = 60
 	$_drink['2,name'] = 'Beer on tap'
 	$_drink['2,type'] = 'only_cost_bev_bee'
-	$_drink['2,price'] = 60
+	_drink['2,price'] = 60
 	$_drink['3,name'] = 'Vodka'
 	$_drink['3,type'] = 'only_cost_bev_vod'
-	$_drink['3,price'] = 120
+	_drink['3,price'] = 120
 	$_drink['4,name'] = 'Scotch'
 	$_drink['4,type'] = 'only_cost_bev_sco'
-	$_drink['4,price'] = 140
+	_drink['4,price'] = 140
 	$_drink['5,name'] = 'Glass of Wine'
 	$_drink['5,type'] = 'only_cost_bev_win'
-	$_drink['5,price'] = 160
+	_drink['5,price'] = 160
 	$_drink['6,name'] = 'Black Russian'
 	$_drink['6,type'] = 'only_cost_bev_bla'
-	$_drink['6,price'] = 250
+	_drink['6,price'] = 250
 	$_drink['7,name'] = 'Champagne'
 	$_drink['7,type'] = 'only_cost_bev_cha'
-	$_drink['7,price'] = 220
+	_drink['7,price'] = 220
 	$_drink['8,name'] = 'Vodka Martini'
 	$_drink['8,type'] = 'only_cost_bev_mar'
-	$_drink['8,price'] = 250
+	_drink['8,price'] = 250
 	$_drink['9,name'] = 'Fancy cocktail'
 	$_drink['9,type'] = 'only_cost_bev_cocktail'
-	$_drink['9,price'] = 300
+	_drink['9,price'] = 300
 end
 
 $_str = '<center><table border="0" width="800" cellpadding="0" cellspacing="1">'
@@ -612,12 +612,12 @@ food_loop = 0
 !!  column 1 - food
 	$_str += '<td bgcolor='+$temp_bcolor+' height="30" width="40%" align="center">' + $_eat['<<food_loop>>,name'] + '</td>'
 	$_str += '<td bgcolor='+$temp_bcolor+' height="30" width="10%" align="right">'
-	if money >= val($_eat['<<food_loop>>,price']):
-		$_str += '<a href="exec:pcs_ate += 1 & gt ''food'', $_eat[''<<food_loop>>,type''], <<food_loop>>">' + $_eat['<<food_loop>>,price'] + '</a>'
+	if money >= _eat['<<food_loop>>,price']:
+		$_str += '<a href="exec:pcs_ate += 1 & gt ''food'', $_eat[''<<food_loop>>,type''], <<food_loop>>">' + iif(_eat['<<food_loop>>,price'] ! 0, str(_eat['<<food_loop>>,price']),'Free') + '</a>'
 	else
-		$_str += $_eat['<<food_loop>>,price']
+		$_str += str(_eat['<<food_loop>>,price'])
 	end
-	$_str += iif(val($_eat['<<food_loop>>,price']) ! 0, '<b>&ensp;₽&ensp;</b>', '&ensp;&emsp;') + '</td>'
+	$_str += iif(_eat['<<food_loop>>,price'] ! 0, '<b>&ensp;₽&ensp;</b>', '&ensp;&emsp;') + '</td>'
 
 !!  separator
 	$_str += '<td bgcolor=<<$bcolor>> border="0" width="50" cellpadding="0" cellspacing="0"></td>'
@@ -625,12 +625,12 @@ food_loop = 0
 !!  column 2 - drinks
 	$_str += '<td bgcolor='+$temp_bcolor+' height="30" width="40%" align="center">' + $_drink['<<food_loop>>,name'] + '</td>'
 	$_str += '<td bgcolor='+$temp_bcolor+' height="30" width="10%" align="right">'
-	if money >= val($_drink['<<food_loop>>,price']):
-		$_str += '<a href="exec:pcs_drank += 1 & gt ''beverage'', $_drink[''<<food_loop>>,type''], <<food_loop>>">' + $_drink['<<food_loop>>,price'] + '</a>'
+	if money >= _drink['<<food_loop>>,price']:
+		$_str += '<a href="exec:pcs_drank += 1 & gt ''beverage'', $_drink[''<<food_loop>>,type''], <<food_loop>>">' + iif(_drink['<<food_loop>>,price'] ! 0, str(_drink['<<food_loop>>,price']),'Free') + '</a>'
 	else
-		$_str += $_drink['<<food_loop>>,price']
+		$_str += str(_drink['<<food_loop>>,price'])
 	end
-	$_str += iif(val($_drink['<<food_loop>>,price']) ! 0, '<b>&ensp;₽&ensp;</b>', '&ensp;&emsp;') + '</td>'
+	$_str += iif(_drink['<<food_loop>>,price'] ! 0, '<b>&ensp;₽&ensp;</b>', '&ensp;&emsp;') + '</td>'
 
 	$_str += '</tr>'
 	food_loop += 1

+ 6 - 21
locations/gad_field.qsrc

@@ -38,7 +38,7 @@ if $ARGS[0] = 'field':
 	if hour >= 7 and hour <= 20 and grandpaQW['chore_bale_hay'] = 1:'You see a crowd of people working on the field.'
 
 	act 'Head back to the road (0:10)':minut += 10 & gt 'gad_road', 'start'
-	
+
 	if hour >= 7 and hour <= 13 and grandpaQW['chore_bale_hay'] = 1:
 		act 'Spend the day helping to bale hay (6:00)':
 			gs 'food', 'm_meal'
@@ -97,24 +97,6 @@ if $ARGS[0] = 'horse':
 	end
 end
 
-killvar '$downlibrary'
-$downlibrary['read'] = {
-	*clr & cla
-	menu_off = 1
-	if blizoruk = 500 or glassqw = 1:
-		glassqw = 1
-		msg '	The text blurs across the page. It seems you have poor eyesight. Maybe you should visit an ophthalmologist?'
-		gt $loc, $loc_arg
-	end
-	if pcs_nerd > 0:
-		lastread = totminut
-		lastreadday = daystart
-		pcs_nerd += 1
-	end
-	minut += 60
-	blizoruk += 1
-}
-
 if $ARGS[0] = 'cow':
 	gs 'shortgs', 'setloc', 'gad_field', 'cow'
 	$location_type = 'secluded'
@@ -284,7 +266,7 @@ if $ARGS[0] = 'cow2':
 			menu_off = 1
 			'<center><img <<$set_imgh>> src="images/locations/gadukino/village/cow_go.jpg"></center>'
 			'Grandpa looks at his watch and says it''s time to drive the herd near the forest. So the two of you begin to gather the herd and guide them toward the woods.'
-			
+
 			minut += 60
 			if temper >= 25 and sunWeather = 1:
 				pcs_hydra -= 12
@@ -477,7 +459,10 @@ if $ARGS[0] = 'set_nomira_acts':
 		end
 
 		act 'Read a book (1:00)':
-			dynamic $downlibrary['read']
+			*clr & cla
+			menu_off = 1
+			gs 'library_functions', 'read_book'
+
 			'<center><img <<$set_imgh>> src="images/locations/gadukino/village/graze_cow_book'+rand(1,2)+'.jpg"></center>'
 			if temper >= 25: pcs_hydra -= 12
 			if pcs_nerd > 0:

+ 1 - 1
locations/gad_forest_lost.qsrc

@@ -425,7 +425,7 @@ if $ARGS[0] = 'finish':
 					foresteventrand = rand(1,3)
 				end
 				if foresteventrand = 1: minut += 30 & gt 'gad_forest', 'forest_edge'
-				if foresteventrand = 2: minut += 15 & gt 'gad_forest',' forest_outskirts'
+				if foresteventrand = 2: minut += 15 & gt 'gad_forest', 'forest_outskirts'
 				if foresteventrand = 3: gt 'gad_forest', 'forest_center'
 				if foresteventrand = 4: minut += 50 & gt 'gad_meadow', 'start'
 				if foresteventrand = 5: minut += 30 & gt 'gad_swamp_yard', 'start'

+ 5 - 3
locations/gad_gpbath.qsrc

@@ -25,6 +25,8 @@ if $ARGS[0] = 'start':
 	'<center><img <<$set_imgh>> src="images/locations/gadukino/village/bana.jpg"></center>'
 	'A small room with a low, smoky ceiling, a small stove, a couple of stainless steel water tanks, and a blackened wooden shelf.'
 	'Grandma''s enema bulb is hidden behind some stuff on the shelf.'
+	'You can check your weight on your grandma''s old mechanical <a href="exec:msg ''<center>Your weight is <<pcs_weight[0]>>.<<pcs_weight[1]>> kg<br>Your body mass index (BMI) is <<pcs_bmi[0]>>.<<pcs_bmi[1]>>.<br><<$bodyVars[''bmi_desc'']>></center>''">scales</a>.'
+	
 	gs 'stat'
 
 	gs 'gad_gpbath', 'set_leave_acts'
@@ -193,7 +195,7 @@ if $ARGS[0] = 'alone':
 	'There''s a small shaving <a href="exec:gt ''mirror'', ''start''">mirror</a> on the window sill, which you can use to ' +iif(pcs_hairbsh < 1,'<a href="exec:gt ''mirror'',''brush''">brush</a>','brush') + ' your hair.'
 
 	!WD: heal chafe
-	if mc_inventory['chaffing_cream']>0:'On a shelf is a tube of ointment for chafing, which will be enough for <b><<mc_inventory[''chaffing_cream'']>></b> applications.'
+	if mc_inventory['chafing_cream']>0:'On a shelf is a tube of ointment for chafing, which will be enough for <b><<mc_inventory[''chafing_cream'']>></b> applications.'
 
 	if mc_inventory['tampons'] =  0 and mc_inventory['sanitary_pads'] = 0:
 		'<b><font color="red">You have no tampons left.</font></b>'
@@ -245,13 +247,13 @@ if $ARGS[0] = 'alone':
 	dynamic $toymanage
 	dynamic $enema
 
-	if mc_inventory['chaffing_cream'] > 0 and mosol > 0 and mosal_time <= totminut:
+	if mc_inventory['chafing_cream'] > 0 and mosol > 0 and mosal_time <= totminut:
 		act 'Rub ointment onto your pussy (0:05)':
 			cla
 			menu_off = 1
 			mosal_time = totminut + 600
 			minut += 5
-			mc_inventory['chaffing_cream'] -= 1
+			mc_inventory['chafing_cream'] -= 1
 			mosol -= 5
 			gs 'stat'
 			'You take a tube of cream and rub it onto your itchy vulva.'

File diff suppressed because it is too large
+ 107 - 1601
locations/gad_gphouse.qsrc


+ 12 - 12
locations/gad_market.qsrc → locations/gad_store.qsrc

@@ -1,8 +1,8 @@
-# gad_market
+# gad_store
 
 
 *clr & cla
-gs 'shortgs', 'setloc', 'gad_market', ''
+gs 'shortgs', 'setloc', 'gad_store', ''
 $location_type = 'public_indoors'
 menu_off = 0
 
@@ -16,24 +16,24 @@ frost = 0
 *nl
 'As you approach the teller, you notice a rack full of magazines, cigarettes, and a few hygienic items.'
 *nl
-act 'Browse the aisles': gt 'gad_market', 'cart'
+act 'Browse the aisles': gt 'gad_store', 'cart'
 
-act 'Leave the market': minut += 5 & gt 'gadukino'
+act 'Leave the store': minut += 5 & gt 'gadukino'
 if grandmaQW['chore_groceries'] = 1:
 	act 'Gather the things on Grandma''s list (0:30)':
 		*clr & cla
 		minut += 30
 		gs 'stat'
-	
+
 		grandmaQW['chore_groceries'] = 2
 		grandmaQW['help_amount'] += 1
-	
+
 		'<center><img <<$set_imgh>> src="images/locations/gadukino/village/market.jpg"></center>'
 		'You take out the list Grandma gave you and begin browsing the shelves for the items she needs. Finally, after about half an hour, you have gotten everything on the list.'
 		*nl
 		'You take your basket of goods to the teller and explain that you are getting these things for your grandmother.'
 		'"Of course! Go ahead and take these on home to her. Tell her I will be by this evening to pick up her payment. I know it''s hard for her to get out anymore..."'
-	
+
 		act 'Thank him and leave': minut += 5 & gt 'gadukino'
 		act 'Thank him and take the groceries back to your grandmother (0:10)': minut += 10 & gt 'gad_gphouse', 'grandma'
 	end
@@ -41,7 +41,7 @@ end
 
 
 if $ARGS[0] = 'cart':
-	$loc_s = 'gad_market'
+	$loc_s = 'gad_store'
 	$args_s = 'cart'
 	*clr & cla
 
@@ -52,15 +52,15 @@ if $ARGS[0] = 'cart':
 		exit
 	end
 
-	gs 'item_cart', 'shoppping_aisle', 'gad_market'
+	gs 'item_cart', 'shoppping_aisle', 'gad_store'
 	gs 'stat'
 	gs 'themes', 'indoors'
 	$backimage= 'images/locations/gadukino/village/market.jpg'
 
-	act 'Exit shopping cart': $backimage = '' & gt 'gad_market'
-	act 'Leave the market': minut += 5 & gt 'gadukino'
+	act 'Exit shopping cart': $backimage = '' & gt 'gad_store'
+	act 'Leave the store': minut += 5 & gt 'gadukino'
 end
 
 
---- gad_market ---------------------------------
+--- gad_store ---------------------------------
 

+ 22 - 33
locations/gad_swamphouse.qsrc

@@ -583,26 +583,7 @@ if $ARGS[0] = 'clothes_read_magazines':
 end
 
 if $ARGS[0] = 'stackmagazines':
-	killvar '$downlibrary'
-	$downlibrary['read'] = {
-		*clr & cla
-		menu_off = 1
-		if blizoruk = 500 or glassqw = 1:
-			glassqw = 1
-			msg '	The text blurs across the page. It seems you have poor eyesight. Maybe you should visit an ophthalmologist?'
-			gt 'gad_swamphouse', 'stackmagazines'
-		end
-		if pcs_nerd > 0:
-			lastread = totminut
-			lastreadday = daystart
-			pcs_nerd += 1
-		end
-		minut += 60
-		blizoruk += 1
-	}
-
-	cla
-	*clr
+	*clr & cla
 	menu_off = 1
 	minut += 1
 	gs 'stat'
@@ -612,7 +593,9 @@ if $ARGS[0] = 'stackmagazines':
 	'A stack of all kinds of magazines, there''s even one with "interesting" pictures.'
 
 	act 'Read the scientific journal (1:00)':
-		dynamic $downlibrary['read']
+		*clr & cla
+		menu_off = 1
+		gs 'library_functions', 'read_book'
 		gs 'exp_gain', 'intel', 4
 		pcs_mood += 10
 		gs 'stat'
@@ -623,7 +606,9 @@ if $ARGS[0] = 'stackmagazines':
 		act 'Continue': gs 'gad_swamphouse', 'stackmagazines'
 	end
 	act 'Read the literary magazine (1:00)':
-		dynamic $downlibrary['read']
+		*clr & cla
+		menu_off = 1
+		gs 'library_functions', 'read_book'
 		gs 'exp_gain', 'intel', 4
 		pcs_mood += 10
 		gs 'stat'
@@ -634,7 +619,9 @@ if $ARGS[0] = 'stackmagazines':
 		act 'Continue': gs 'gad_swamphouse', 'stackmagazines'
 	end
 	act 'Read the entertainment magazine (1:00)':
-		dynamic $downlibrary['read']
+		*clr & cla
+		menu_off = 1
+		gs 'library_functions', 'read_book'
 		gs 'exp_gain', 'sprt', 4
 		pcs_mood += 10
 		gs 'stat'
@@ -647,23 +634,25 @@ if $ARGS[0] = 'stackmagazines':
 	act 'Read the porn magazine (1:00)':
 		*clr & cla
 		menu_off = 1
-		if blizoruk = 500 or glassqw = 1:
-			glassqw = 1
-			msg '	The text blurs across the page, it seems you have poor eyesight. Probably from all the porn. Maybe you should visit an ophthalmologist?'
-			gt 'gad_swamphouse', 'stackmagazines'
-		end
-		blizoruk += 1
+		gs 'library_functions', 'read_book', 'porn'
 		pcs_mood += 10
 		gs 'stat'
 
-		if $clothingworntype ! 'nude':'<center><img <<$set_imgh>> src="images/locations/gadukino/hunters/readpornomag.jpg"></center>'
-		if $clothingworntype = 'nude' and $pantyworntype ! 'none':'<center><img <<$set_imgh>> src="images/locations/gadukino/hunters/readpornomag_tanga.jpg"></center>'
-		if $clothingworntype = 'nude' and $pantyworntype = 'none':'<center><img <<$set_imgh>> src="images/locations/gadukino/hunters/readpornomag_nude.jpg"></center>'
+		if $clothingworntype ! 'nude':
+			'<center><img <<$set_imgh>> src="images/locations/gadukino/hunters/readpornomag.jpg"></center>'
+		elseif $pantyworntype ! 'none':
+			'<center><img <<$set_imgh>> src="images/locations/gadukino/hunters/readpornomag_tanga.jpg"></center>'
+		else
+			'<center><img <<$set_imgh>> src="images/locations/gadukino/hunters/readpornomag_nude.jpg"></center>'
+		end
+
 		*nl
 		'You flip through the porn magazine, reading the stories and looking at pictures, when suddenly you realize you''ve started touching yourself.'
-		gs 'arousal', 'porn', 60
+
+		gs 'arousal', 'porn', -60
 		gs 'arousal', 'end'
 		gs 'stat'
+
 		act 'Continue': gs 'gad_swamphouse', 'stackmagazines'
 	end
 	act 'Move away': gt 'gad_swamphouse', 'start'

+ 4 - 2
locations/gadukino.qsrc

@@ -127,12 +127,14 @@ if $ARGS[0] = '':
 		'In the center of the village is a small grass-covered square where villagers gather to meet and discuss or argue about politics or village life.'
 		'Near the square sits the old <a href="exec: minut += 3 & gt ''gad_church'',''start''">chapel</a>, it is not in the best shape, but it appears well-loved.'
 		if hour >= 8 and hour < 20:
-			'One of the buildings facing the square has a sign saying, <a href="exec: minut += 5 & gt ''gad_market''">General Store</a>. A sign on the door proclaims it "OPEN". It looks like the only place in the village to buy goods.'
-			act 'Go to the general store': minut += 5 & gt 'gad_market'
+			'One of the buildings facing the square has a sign saying, <a href="exec: minut += 5 & gt ''gad_store''">General Store</a>. A sign on the door proclaims it "OPEN". It looks like the only place in the village to buy goods.'
+			act 'Go to the general store': minut += 5 & gt 'gad_store'
 		else
 			'One of the buildings facing the square has a sign saying, General Store. A sign on the door proclaims it "CLOSED". It looks like the only place in the village to buy goods.'
 		end
 
+		if (week = 4 or week = 7) and hour >= 6 and hour <= 20: act 'Go to the nearby farmers market': gt 'gad_sundaymarket', 'start'
+
 		act 'Walk to the forest road (0:10)': minut += 10 & gt 'gad_road', 'start'
 		act 'Walk to the highway (0:15)': minut += 15 & nroad = 10 & gt 'road'
 		if hour >= 6 and hour < 20:

+ 2 - 2
locations/gdktoilet.qsrc

@@ -76,8 +76,8 @@ if $ARGS[0] = 'start':
 		CLOSE ALL
 	end
 
-	if hour >= 8 and hour <= 18: act 'Go to the library': gt 'pav_library'
-	if hour >= 12 and hour <= 20: act 'Go upstairs to the hobby clubs': gt 'pav_commclubs'
+	if hour >= 8 and hour < 18: act 'Go to the library': gt 'pav_library'
+	if hour >= 12 and hour < 20: act 'Go upstairs to the hobby clubs': gt 'pav_commclubs'
 	if (week < 6 and hour >= 14 and hour < 20) or (week >= 6 and hour >= 9 and hour < 20): act 'Go to the gym': gt 'gdksport', 'start'
 	act 'Change outfit in the locker room': gt 'wardrobe', 'start'
 end

+ 15 - 15
locations/goplust.qsrc

@@ -108,7 +108,7 @@ $namgop[0] = ''
 $gopnik = ''
 
 if gopV = 1:
-	$gopnik += '<<$gopV>>'
+	$gopnik += $gopV
 	if gopB + gopVi + gopK + gopU + gopS > 1:
 		$gopnik += ', '
 	elseif gopB + gopVi + gopK + gopU + gopS = 1:
@@ -117,7 +117,7 @@ if gopV = 1:
 end
 
 if $namgop[1] ! '':
-	$namgop[0] += '<<$namgop[1]>>'
+	$namgop[0] += $namgop[1]
 	if namgop[2] + namgop[3] + namgop[4] + namgop[5] + namgop[6] > 1:
 		$namgop[0] += ', '
 	elseif namgop[2] + namgop[3] + namgop[4] + namgop[5] + namgop[6] = 1:
@@ -126,7 +126,7 @@ if $namgop[1] ! '':
 end
 
 if gopB = 1:
-	$gopnik += '<<$gopB>>'
+	$gopnik += $gopB
 	if gopVi + gopK + gopU + gopS > 1:
 		$gopnik += ', '
 	elseif gopVi + gopK + gopU + gopS = 1:
@@ -135,7 +135,7 @@ if gopB = 1:
 end
 
 if $namgop[2] ! '':
-	$namgop[0] += '<<$namgop[2]>>'
+	$namgop[0] += $namgop[2]
 	if namgop[3] + namgop[4] + namgop[5] + namgop[6] > 1:
 		$namgop[0] += ', '
 	elseif namgop[3] + namgop[4] + namgop[5] + namgop[6] = 1:
@@ -144,7 +144,7 @@ if $namgop[2] ! '':
 end
 
 if gopVi = 1:
-	$gopnik += '<<$gopVi>>'
+	$gopnik += $gopVi
 	if gopK + gopU + gopS > 1:
 		$gopnik += ', '
 	elseif gopK + gopU + gopS = 1:
@@ -152,8 +152,8 @@ if gopVi = 1:
 	end
 end
 
-if namgop[3] ! '':
-	$namgop[0] += '<<$namgop[3]>>'
+if $namgop[3] ! '':
+	$namgop[0] += $namgop[3]
 	if namgop[4] + namgop[5] + namgop[6] > 1:
 		$namgop[0] += ', '
 	elseif namgop[4] + namgop[5] + namgop[6] = 1:
@@ -162,7 +162,7 @@ if namgop[3] ! '':
 end
 
 if gopK = 1:
-	$gopnik += '<<$gopK>>'
+	$gopnik += $gopK
 	if gopU + gopS > 1:
 		$gopnik += ', '
 	elseif gopU + gopS = 1:
@@ -170,8 +170,8 @@ if gopK = 1:
 	end
 end
 
-if namgop[4] ! '':
-	$namgop[0] += '<<$namgop[4]>>'
+if $namgop[4] ! '':
+	$namgop[0] += $namgop[4]
 	if namgop[5] + namgop[6] > 1:
 		$namgop[0] += ', '
 	elseif namgop[5] + namgop[6] = 1:
@@ -180,18 +180,18 @@ if namgop[4] ! '':
 end
 
 if gopU = 1:
-	$gopnik += '<<$gopU>>'
+	$gopnik += $gopU
 	if gopS = 1:$gopnik += ' and '
 end
 
-if namgop[5] ! '':
-	$namgop[0] += '<<$namgop[5]>>'
+if $namgop[5] ! '':
+	$namgop[0] += $namgop[5]
 	if namgop[6] = 1:$gopnik += ' and '
 end
 
-if gopS = 1:$gopnik += '<<$gopS>>'
+if gopS = 1:$gopnik += $gopS
 
-if namgop[6] ! '':$namgop[0] += '<<$namgop[6]>>'
+if $namgop[6] ! '':$namgop[0] += $namgop[6]
 
 $namgop[0] += ' strip off your clothes and get out their members'
 

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