JavaScript must be enabled to play.
Browser lacks capabilities required to play.
Upgrade or switch to another browser.
Loading…
<<nobr>> <<include "UpdateAll">> <<if $playerlock == true>> <<ChatMessage "You're locked in a chastity cage and can't jerk off.">> <div class="padding-top"><<BackButton "<<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>>">></div> <<else>> <<switch $player.gender()>> <<case "Male">> <<set _pick = 'Media\\Sex\\JerkOff\\Male\\' + Random(0, 6, false) + '.mp4'>> <<case "Female">> <<set _pick = 'Media\\Sex\\JerkOff\\Female\\' + Random(0, 8, false) + '.mp4'>> <<case "Shemale">> <<set _pick = 'Media\\Sex\\JerkOff\\Shemale\\' + Random(0, 1, false) + '.mp4'>> <</switch>> <<Video _pick>> <<ChatMessage "You're jerking off.">> <div class="padding-top"> <div class="btn"><<button "Cum" "Jerk_off_Cum">><</button>></div> </div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $player.status.potency.decrease(1)>> <<set $player.status.horny.value = $player.status.horny.min>> <<switch $player.gender()>> <<case "Male">> <<set _pick = 'Media\\Sex\\JerkOff\\Male\\Cum\\' + Random(0, 2, false) + '.mp4'>> <<case "Female">> <<set _pick = 'Media\\Sex\\JerkOff\\Female\\Cum\\' + Random(0, 2, false) + '.mp4'>> <<case "Shemale">> <<set _pick = 'Media\\Sex\\JerkOff\\Shemale\\Cum\\' + Random(0, 2, false) + '.mp4'>> <</switch>> <<Video _pick>> <<ChatMessage "You're cumming.">> <<BackButton "<<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>>">> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if $playerlock == true>> <<ChatMessage "You're locked in a chastity cage and can't jerk off.">> <div class="padding-top"><<BackButton "<<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>>">></div> <<elseif $player.status.potency.value == $player.status.potency.min>> <<ChatMessage "Lack of sexual stamina">> <div class="padding-top"> <<BackButton "<<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>>">> </div> <<else>> <div class="padding-top"> <div class="btn-container"> <div class="btn"><<button "Dildo(Anal)" "DildoAction">><<set $trainType = "Anal">><</button>></div> <<if $player.genitalia() == "Vagina">> <div class="btn"><<button "Dildo(Vag)" "DildoAction">><<set $trainType = "Vag">><</button>></div> <</if>> <div class="btn"><<button "Dildo(Oral)" "DildoAction">><<set $trainType = "Oral">><</button>></div> </div> </div> <div class="padding-top"> <<BackButton "<<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>>">> </div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if $playerlock == true>> <<ChatMessage "You're locked in a chastity cage and can't jerk off.">> <div class="padding-top"><<BackButton "<<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>>">></div> <<else>> <<switch $trainType>> <<case "Anal">> <<switch $player.gender()>> <<case "Female">> <<set _pick = 'Media\\Sex\\Dildo\\' + $player.gender() + '\\Anal\\' + Random(0, 8, false) + '.mp4'>> <<case "Male">> <<run $player.status.horny.increase(Random(5, 20))>> <<set _pick = 'Media\\Sex\\Dildo\\' + $player.gender() + '\\' + Random(0, 9, false) + '.mp4'>> <<case "Shemale">> <<run $player.status.horny.increase(Random(5, 20))>> <<set _pick = 'Media\\Sex\\Dildo\\' + $player.gender() + '\\' + Random(0, 9, false) + '.mp4'>> <</switch>> <<run $player.body.anusSize.increase(Random(0.3, 0.8, true))>> <<case "Vag">> <<run $player.body.vaginaSize.increase(Random(0.3, 0.8, true))>> <<run $player.status.horny.increase(Random(5, 20))>> <<set _pick = 'Media\\Sex\\Dildo\\' + $player.gender() + '\\' + Random(0, 11, false) + '.mp4'>> <<case "Oral">> <<switch $player.gender()>> <<case "Female">> <<set _pick = 'Media\\Sex\\Dildo\\' + $player.gender() + '\\Oral\\' + Random(0, 1, false) + '.mp4'>> <<case "Male">> <<set _pick = 'Media\\Sex\\Dildo\\' + $player.gender() + '\\Oral\\' + Random(0, 2, false) + '.mp4'>> <<case "Shemale">> <<set _pick = 'Media\\Sex\\Dildo\\Female\\Oral\\' + Random(0, 1, false) + '.mp4'>> <</switch>> <<case "Cum">> <<set $player.status.potency.decrease(1)>> <<set $player.status.horny.value = $player.status.horny.min>> <<switch $player.gender()>> <<case "Female">> <<set _pick = 'Media\\Sex\\Dildo\\' + $player.gender() + '\\Cum\\' + Random(0, 1, false) + '.mp4'>> <<case "Male">> <<set _pick = 'Media\\Sex\\Dildo\\' + $player.gender() + '\\Cum\\' + Random(0, 5, false) + '.mp4'>> <<case "Shemale">> <<set _pick = 'Media\\Sex\\Dildo\\' + $player.gender() + '\\Cum\\' + Random(0, 5, false) + '.mp4'>> <</switch>> <</switch>> <<Video _pick>> <<if $player.status.horny.value >= $player.status.horny.max && $trainType != "Oral">> <div class="padding-top"> <div class="btn"><<button "Cum" "DildoAction">><<set $trainType = "Cum">> <<set $player.status.horny.value = $player.status.horny.min>><</button>></div> </div> <<else>> <div class="padding-top"> <div class="btn"><<button "Continue" "DildoType">><<unset $trainType>><</button>></div> </div> <</if>> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "advanced_interaction_system_busyCounter">> <<include "check_jealous_partner">> <<include "check_player_partner">> <<if _jealousIntervene>> <<include "jealous_partner_intervenes">> <<elseif _playerPartnerIntervene>> <<include "player_partner_confrontation">> <<else>> <<SpendTime 5>> <<SpendEnergy $player 5>> <<if _isBusy == true>> <<include "advanced_interaction_system_car_blowjob_tired">> <<elseif setup.willing($player, $interactionNpc, "carBlowjob", "speech")>> <<include "advanced_interaction_system_car_blowjob_success">> <<else>> <<include "advanced_interaction_system_car_blowjob_unsuccessful">> <</if>> <</if>> <</nobr>>
<<nobr>> <<ChatMessage 'Successful'>> <<switch $player.getRelationship($player.info.id).relation>> <<case "acquaintance">><<Chat $interactionNpc 'I didn\'t see that coming, but okay, let\'s go.'>> <<case "friend">><<Chat $interactionNpc 'Wait, are we doing this? Okay, why not.'>> <<case "bestFriend">><<Chat $interactionNpc 'This changes things, but I\'m okay with it.'>> <<case "fuckbuddy">><<Chat $interactionNpc 'Let\'s do it.'>> <<case "rival">><<Chat $interactionNpc 'This changes nothing.'>> <<case "enemy">><<Chat $interactionNpc 'This is a mistake, but whatever.'>> <<case "archenemy">><<Chat $interactionNpc 'Fine, but I hate you.'>> <<case "hatefuck">><<Chat $interactionNpc 'Let’s get this over with.'>> <<case "crush">><<Chat $interactionNpc 'I think I’m ready for that with you.'>> <<case "dating">><<Chat $interactionNpc 'Yes, I want you.'>> <<case "soulmate">><<Chat $interactionNpc 'I want to be with you completely.'>> <</switch>> <<set _increaseValue = random(5, 10) + $player.attributes.speech.value>> <<IncreaseSex $player $interactionNpc _increaseValue>> <<include "carBlowjob_Success">> <</nobr>>
<<nobr>> <<ChatMessage 'Unsuccessful'>> <<switch $player.getRelationship($player.info.id).relation>> <<case "acquaintance">><<Chat $interactionNpc 'Absolutely not. What are you thinking?'>> <<case "friend">><<Chat $interactionNpc 'Nah, let\'s keep it platonic.'>> <<case "bestFriend">><<Chat $interactionNpc 'I think we should stay friends.'>> <<case "fuckbuddy">><<Chat $interactionNpc 'Not today.'>> <<case "rival">><<Chat $interactionNpc 'Are you insane?'>> <<case "enemy">><<Chat $interactionNpc 'Never in a million years.'>> <<case "archenemy">><<Chat $interactionNpc 'Not in your wildest dreams.'>> <<case "hatefuck">><<Chat $interactionNpc 'Not happening.'>> <<case "friendzone">><<Chat $interactionNpc 'We\'re just friends, remember?'>> <<case "crush">><<Chat $interactionNpc 'I don’t think so, not yet.'>> <<case "dating">><<Chat $interactionNpc 'Maybe later, not now.'>> <<case "soulmate">><<Chat $interactionNpc 'Let’s wait for a better time.'>> <</switch>> <div class="btn padding-top"><<button "Back" "CharacterInteractions">><</button>></div> <</nobr>>
<<nobr>> <<ChatMessage 'Tired'>> <<switch $player.getRelationship($player.info.id).relation>> <<case "acquaintance">><<Chat $interactionNpc 'I\'m way too exhausted for that.'>> <<case "friend">><<Chat $interactionNpc 'Too tired for that, sorry.'>> <<case "bestFriend">><<Chat $interactionNpc 'I\'m way too tired for that.'>> <<case "fuckbuddy">><<Chat $interactionNpc 'I\'m exhausted, rain check?'>> <<case "rival">><<Chat $interactionNpc 'No, and I\'m tired.'>> <<case "enemy">><<Chat $interactionNpc 'I\'m way too exhausted.'>> <<case "archenemy">><<Chat $interactionNpc 'I’m too worn out.'>> <<case "hatefuck">><<Chat $interactionNpc 'I’m too drained.'>> <<case "crush">><<Chat $interactionNpc 'I’m too tired for that right now.'>> <<case "dating">><<Chat $interactionNpc 'Can we make love another time? I’m exhausted.'>> <<case "soulmate">><<Chat $interactionNpc 'I’m too tired, but I love you.'>> <</switch>> <div class="btn padding-top"><<button "Back" "CharacterInteractions">><</button>></div> <</nobr>>
<<nobr>> <<set _npcGender = $interactionNpc.gender()>> <<if _npcGender == "Shemale">> <<set _npcGender = "female">> <</if>> <<set _fileName = 'car_blowjob_' + $player.gender().toLowerCase() + '_' + _npcGender.toLowerCase()>> <<set _fullPath = 'Media/Sex/Other/CarBlowjob/' + _fileName + '.mp4'>> <<Video _fullPath>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "advanced_interaction_system_busyCounter">> <<SpendTime 5>> <<SpendEnergy $player 5>> <<if _isBusy == true>> <<include "advanced_interaction_system_chat_tired">> <<elseif setup.willing($player, $interactionNpc, "chat", "speech")>> <<include "advanced_interaction_system_chat_success">> <<else>> <<include "advanced_interaction_system_chat_unsuccessful">> <</if>> <</nobr>>
<<nobr>> <<ChatMessage 'Successful'>> <<switch $player.getRelationship($player.info.id).relation>> <<case "acquaintance">> <<Chat $interactionNpc 'Hey, good to see you. What\'s up?'>> <<case "friend">> <<Chat $interactionNpc 'Yo, what\'s going on?'>> <<case "bestFriend">> <<Chat $interactionNpc 'Hey bestie! Spill the tea.'>> <<case "fuckbuddy">> <<Chat $interactionNpc 'Hey, wanna hang out?'>> <<case "rival">> <<Chat $interactionNpc 'What do you want to talk about?'>> <<case "enemy">> <<Chat $interactionNpc 'Make it quick.'>> <<case "archenemy">> <<Chat $interactionNpc 'This better be important.'>> <<case "hatefuck">> <<Chat $interactionNpc 'What do you want now?'>> <<case "crush">> <<Chat $interactionNpc 'Hi! I was hoping you’d talk to me.'>> <<case "dating">> <<Chat $interactionNpc 'Hey babe, what’s on your mind?'>> <<case "soulmate">> <<Chat $interactionNpc 'My love, I’m all ears.'>> <</switch>> <<set _increaseValue = random(2, 5) + $player.attributes.speech.value>> <<IncreaseFriendship $player $interactionNpc _increaseValue>> <div class="btn padding-top"><<button "Back" "CharacterInteractions">><</button>></div> <</nobr>>
<<nobr>> <<ChatMessage 'Unsuccessful'>> <<switch $player.getRelationship($player.info.id).relation>> <<case "acquaintance">><<Chat $interactionNpc 'Uh, hi. Do I know you?'>> <<case "friend">><<Chat $interactionNpc 'Hmm, I\'m not really in the mood to chat.'>> <<case "bestFriend">><<Chat $interactionNpc 'Ugh, not now, please.'>> <<case "fuckbuddy">><<Chat $interactionNpc 'Not feeling chatty today.'>> <<case "rival">><<Chat $interactionNpc 'I don\'t have time for you.'>> <<case "enemy">><<Chat $interactionNpc 'I have nothing to say to you.'>> <<case "archenemy">><<Chat $interactionNpc 'I don\'t want to hear it.'>> <<case "hatefuck">><<Chat $interactionNpc 'I don’t want to talk.'>> <<case "crush">><<Chat $interactionNpc 'Oh, um, I’m a bit busy right now.'>> <<case "dating">><<Chat $interactionNpc 'Sorry, I’m not in the best mood.'>> <<case "soulmate">><<Chat $interactionNpc 'I’m sorry, I need some space right now.'>> <</switch>> <div class="btn padding-top"><<button "Back" "CharacterInteractions">><</button>></div> <</nobr>>
<<nobr>> <<ChatMessage 'Tired'>> <<switch $player.getRelationship($player.info.id).relation>> <<case "acquaintance">><<Chat $interactionNpc 'Sorry, not really in the mood to chat right now.'>> <<case "friend">><<Chat $interactionNpc 'Can we talk later? I\'m beat.'>> <<case "bestFriend">><<Chat $interactionNpc 'I\'m exhausted, can we catch up tomorrow?'>> <<case "fuckbuddy">><<Chat $interactionNpc 'Too tired, maybe another time.'>> <<case "rival">><<Chat $interactionNpc 'I\'m not in the mood for this.'>> <<case "enemy">><<Chat $interactionNpc 'Leave me alone, I\'m tired.'>> <<case "archenemy">><<Chat $interactionNpc 'I\'m too drained for your nonsense.'>> <<case "hatefuck">><<Chat $interactionNpc 'I’m not up for chatting.'>> <<case "crush">><<Chat $interactionNpc 'I’m really tired, maybe later?'>> <<case "dating">><<Chat $interactionNpc 'Can we cuddle instead? I’m tired.'>> <<case "soulmate">><<Chat $interactionNpc 'I’m exhausted, can we just be together quietly?'>> <</switch>> <div class="btn padding-top"><<button "Back" "CharacterInteractions">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "advanced_interaction_system_busyCounter">> <<SpendTime 5>> <<SpendEnergy $player 5>> <<if _isBusy == true>> <<include "advanced_interaction_system_compliment_tired">> <<elseif setup.willing($player, $interactionNpc, "compliment", "speech")>> <<include "advanced_interaction_system_compliment_success">> <<else>> <<include "advanced_interaction_system_compliment_unsuccessful">> <</if>> <</nobr>>
<<nobr>> <<ChatMessage 'Successful'>> <<switch $player.getRelationship($player.info.id).relation>> <<case "acquaintance">><<Chat $interactionNpc 'Thanks, that\'s nice of you to say.'>> <<case "friend">><<Chat $interactionNpc 'Aw, thanks buddy!'>> <<case "bestFriend">><<Chat $interactionNpc 'You always know how to make me feel good.'>> <<case "fuckbuddy">><<Chat $interactionNpc 'Thanks, you\'re sweet.'>> <<case "rival">><<Chat $interactionNpc 'Hmm, thanks, I guess.'>> <<case "enemy">><<Chat $interactionNpc 'Don\'t try to flatter me.'>> <<case "archenemy">><<Chat $interactionNpc 'You\'re wasting your breath.'>> <<case "hatefuck">><<Chat $interactionNpc 'Shut up, but thanks.'>> <<case "crush">><<Chat $interactionNpc 'Aww, you\'re so sweet!'>> <<case "dating">><<Chat $interactionNpc 'You always make me feel so good.'>> <<case "soulmate">><<Chat $interactionNpc 'You always know what to say.'>> <</switch>> <<set _increaseValue = random(2, 5) + $player.attributes.speech.value>> <<IncreaseLove $player $interactionNpc _increaseValue>> <div class="btn padding-top"><<button "Back" "CharacterInteractions">><</button>></div> <</nobr>>
<<nobr>> <<ChatMessage 'Unsuccessful'>> <<switch $player.getRelationship($player.info.id).relation>> <<case "acquaintance">><<Chat $interactionNpc 'Um, okay. That was a bit random.'>> <<case "friend">><<Chat $interactionNpc 'That was a weird compliment, dude.'>> <<case "bestFriend">><<Chat $interactionNpc 'That didn\'t hit right, but I know you mean well.'>> <<case "fuckbuddy">><<Chat $interactionNpc 'That was lame.'>> <<case "rival">><<Chat $interactionNpc 'Are you mocking me?'>> <<case "enemy">><<Chat $interactionNpc 'That\'s pathetic.'>> <<case "archenemy">><<Chat $interactionNpc 'Shut up.'>> <<case "hatefuck">><<Chat $interactionNpc 'You’re lying.'>> <<case "crush">><<Chat $interactionNpc 'That was nice, but I\'m not sure how to respond.'>> <<case "dating">><<Chat $interactionNpc 'That didn’t quite land, but I love you for trying.'>> <<case "soulmate">><<Chat $interactionNpc 'Even when it’s not perfect, I appreciate it.'>> <</switch>> <div class="btn padding-top"><<button "Back" "CharacterInteractions">><</button>></div> <</nobr>>
<<nobr>> <<ChatMessage 'Tired'>> <<switch $player.getRelationship($player.info.id).relation>> <<case "acquaintance">><<Chat $interactionNpc 'Appreciate it, but I\'m too tired to really take it in.'>> <<case "friend">><<Chat $interactionNpc 'Thanks, but I\'m zonked.'>> <<case "bestFriend">><<Chat $interactionNpc 'Thanks, but I\'m too wiped to appreciate it fully.'>> <<case "fuckbuddy">><<Chat $interactionNpc 'Nice, but I\'m beat.'>> <<case "rival">><<Chat $interactionNpc 'Whatever, I\'m tired.'>> <<case "enemy">><<Chat $interactionNpc 'I\'m not listening.'>> <<case "archenemy">><<Chat $interactionNpc 'I don’t care, I’m tired.'>> <<case "hatefuck">><<Chat $interactionNpc 'Don’t bother, I’m tired.'>> <<case "crush">><<Chat $interactionNpc 'Thanks, but I\'m too tired to appreciate it fully.'>> <<case "dating">><<Chat $interactionNpc 'Thanks, love, but I\'m beat.'>> <<case "soulmate">><<Chat $interactionNpc 'I love you, but I\'m too tired to respond properly.'>> <</switch>> <div class="btn padding-top"><<button "Back" "CharacterInteractions">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "advanced_interaction_system_busyCounter">> <<include "check_jealous_partner">> <<include "check_player_partner">> <<if _jealousIntervene>> <<include "jealous_partner_intervenes">> <<elseif _playerPartnerIntervene>> <<include "player_partner_confrontation">> <<else>> <<SpendTime 5>> <<SpendEnergy $player 5>> <<if _isBusy == true>> <<include "advanced_interaction_system_confess_tired">> <<elseif setup.willing($player, $interactionNpc, "confessLove", "speech")>> <<include "advanced_interaction_system_confess_success">> <<else>> <<include "advanced_interaction_system_confess_unsuccessful">> <</if>> <</if>> <<if $player.dailyEvents.isEventRegistered($interactionNpc.info.id, "confessLove") == false>> <<run $player.dailyEvents.registerEvent($interactionNpc.info.id, "confessLove", 1)>> <</if>> <</nobr>>
<<nobr>> <<ChatMessage 'Successful'>> <<switch $player.getRelationship($player.info.id).relation>> <<case "acquaintance">><<Chat $interactionNpc 'I wasn\'t expecting that, but let\'s see where this goes.'>> <<case "friend">><<Chat $interactionNpc 'Wow, I didn\'t know you felt that way.'>> <<case "bestFriend">><<Chat $interactionNpc 'I feel the same way about you.'>> <<case "fuckbuddy">><<Chat $interactionNpc 'Maybe it\'s more than just fun between us.'>> <<case "rival">><<Chat $interactionNpc 'This is surprising, but I\'m willing to try.'>> <<case "enemy">><<Chat $interactionNpc 'Love? That\'s unexpected, but... alright.'>> <<case "archenemy">><<Chat $interactionNpc 'I never thought I\'d hear that from you.'>> <<case "hatefuck">><<Chat $interactionNpc 'Maybe there\'s something deeper here.'>> <<case "crush">><<Chat $interactionNpc 'I was hoping you\'d say that!'>> <<case "dating">><<Chat $interactionNpc 'I love you too.'>> <<case "soulmate">><<Chat $interactionNpc 'We were meant for each other.'>> <</switch>> <<set _increaseValue = random(5, 10) + $player.attributes.speech.value>> <<IncreaseLove $player $interactionNpc _increaseValue>> <<run relationCheck($player, $interactionNpc, true)>> <<set _relObj = $player.getRelationship($interactionNpc.info.id)>> <<if _relObj.relation != "dating" and _relObj.relation != "soulmate">> <<set _loveDiff = 0>> <<if _relObj.metrics.love <= 40>> <<set _loveDiff = 41 - _relObj.metrics.love>> <<set $player.setRelationship($interactionNpc.info.id, {love: _loveDiff})>> <<set $interactionNpc.setRelationship($player.info.id, {love: _loveDiff})>> <</if>> <<run relationCheck($player, $interactionNpc, true)>> <</if>> <div class="btn padding-top"><<button "Back" "CharacterInteractions">><</button>></div> <</nobr>>
<<nobr>> <<ChatMessage 'Unsuccessful'>> <<switch $player.getRelationship($player.info.id).relation>> <<case "acquaintance">><<Chat $interactionNpc 'I don\'t really know you well enough.'>> <<case "friend">><<Chat $interactionNpc 'I think we should stay friends.'>> <<case "bestFriend">><<Chat $interactionNpc 'I\'m not sure I feel that way.'>> <<case "fuckbuddy">><<Chat $interactionNpc 'Let\'s keep it casual.'>> <<case "rival">><<Chat $interactionNpc 'No way.'>> <<case "enemy">><<Chat $interactionNpc 'Absolutely not.'>> <<case "archenemy">><<Chat $interactionNpc 'Never.'>> <<case "hatefuck">><<Chat $interactionNpc 'That\'s not happening.'>> <<case "friendzone">><<Chat $interactionNpc 'I only see you as a friend.'>> <<case "crush">><<Chat $interactionNpc 'I\'m not ready for that.'>> <<case "dating">><<Chat $interactionNpc 'I don\'t feel that strongly yet.'>> <<case "soulmate">><<Chat $interactionNpc 'This isn\'t the right time.'>> <</switch>> <div class="btn padding-top"><<button "Back" "CharacterInteractions">><</button>></div> <</nobr>>
<<nobr>> <<ChatMessage 'Tired'>> <<switch $player.getRelationship($player.info.id).relation>> <<case "acquaintance">><<Chat $interactionNpc 'I\'m too tired for this conversation.'>> <<case "friend">><<Chat $interactionNpc 'Maybe tell me later. I\'m exhausted.'>> <<case "bestFriend">><<Chat $interactionNpc 'I\'m wiped out right now.'>> <<case "fuckbuddy">><<Chat $interactionNpc 'Too tired for serious talks.'>> <<case "rival">><<Chat $interactionNpc 'Not now, I\'m tired.'>> <<case "enemy">><<Chat $interactionNpc 'I don\'t have the energy for this.'>> <<case "archenemy">><<Chat $interactionNpc 'I\'m too drained for that.'>> <<case "hatefuck">><<Chat $interactionNpc 'Ask me some other time.'>> <<case "crush">><<Chat $interactionNpc 'I\'m too nervous and tired right now.'>> <<case "dating">><<Chat $interactionNpc 'Let\'s talk when I\'m rested.'>> <<case "soulmate">><<Chat $interactionNpc 'Later, my love, I\'m exhausted.'>> <</switch>> <div class="btn padding-top"><<button "Back" "CharacterInteractions">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _decreaseRelations = Random (-8, -25)>> <<IncreaseFriendship $player $interactionNpc _decreaseRelations>> <<set _battleSetControls = {attack: true, seduce: true, items: true, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls undefined undefined>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "advanced_interaction_system_busyCounter">> <<include "check_jealous_partner">> <<include "check_player_partner">> <<if _jealousIntervene>> <<include "jealous_partner_intervenes">> <<elseif _playerPartnerIntervene>> <<include "player_partner_confrontation">> <<else>> <<SpendTime 5>> <<SpendEnergy $player 5>> <<if _isBusy == true>> <<include "advanced_interaction_system_flirt_tired">> <<elseif setup.willing($player, $interactionNpc, "flirt", "speech")>> <<include "advanced_interaction_system_flirt_success">> <<else>> <<include "advanced_interaction_system_flirt_unsuccessful">> <</if>> <</if>> <</nobr>>
<<nobr>> <<ChatMessage 'Successful'>> <<switch $player.getRelationship($player.info.id).relation>> <<case "acquaintance">><<Chat $interactionNpc 'Oh, are you flirting with me? That\'s cute.'>> <<case "friend">><<Chat $interactionNpc 'Haha, you\'re such a flirt!'>> <<case "bestFriend">><<Chat $interactionNpc 'You always make me smile with your flirting.'>> <<case "fuckbuddy">><<Chat $interactionNpc 'Mmm, I like where this is going.'>> <<case "rival">><<Chat $interactionNpc 'Trying to butter me up, huh?'>> <<case "enemy">><<Chat $interactionNpc 'What game are you playing?'>> <<case "archenemy">><<Chat $interactionNpc 'You think flirting will work? It won’t.'>> <<case "hatefuck">><<Chat $interactionNpc 'You think that’s going to work?'>> <<case "crush">><<Chat $interactionNpc 'You’re making me blush!'>> <<case "dating">><<Chat $interactionNpc 'You know just how to turn me on.'>> <<case "soulmate">><<Chat $interactionNpc 'You still give me butterflies.'>> <</switch>> <<set _increaseValue = random(2, 5) + $player.attributes.speech.value>> <<IncreaseLove $player $interactionNpc _increaseValue>> <div class="btn padding-top"><<button "Back" "CharacterInteractions">><</button>></div> <</nobr>>
<<nobr>> <<ChatMessage 'Unsuccessful'>> <<switch $player.getRelationship($player.info.id).relation>> <<case "acquaintance">><<Chat $interactionNpc 'Whoa, that\'s a bit forward. We barely know each other.'>> <<case "friend">><<Chat $interactionNpc 'Dude, that\'s weird coming from you.'>> <<case "bestFriend">><<Chat $interactionNpc 'Um, that\'s a bit much for us.'>> <<case "friendzone">><<Chat $interactionNpc 'Sorry, I only see you as a friend.'>> <<case "fuckbuddy">><<Chat $interactionNpc 'Not in the mood.'>> <<case "rival">><<Chat $interactionNpc 'Save it.'>> <<case "enemy">><<Chat $interactionNpc 'Disgusting.'>> <<case "archenemy">><<Chat $interactionNpc 'Pathetic attempt.'>> <<case "hatefuck">><<Chat $interactionNpc 'Pathetic.'>> <<case "crush">><<Chat $interactionNpc 'Oh, I don’t know what to say.'>> <<case "dating">><<Chat $interactionNpc 'Not feeling it right now.'>> <<case "soulmate">><<Chat $interactionNpc 'That was cute, even if it didn’t quite work.'>> <</switch>> <div class="btn padding-top"><<button "Back" "CharacterInteractions">><</button>></div> <</nobr>>
<<nobr>> <<ChatMessage 'Tired'>> <<switch $player.getRelationship($player.info.id).relation>> <<case "acquaintance">><<Chat $interactionNpc 'Not really feeling flirty right now, sorry.'>> <<case "friend">><<Chat $interactionNpc 'Not now, I\'m too tired.'>> <<case "bestFriend">><<Chat $interactionNpc 'I\'m too tired for flirting games.'>> <<case "fuckbuddy">><<Chat $interactionNpc 'Too tired for flirting.'>> <<case "rival">><<Chat $interactionNpc 'Not interested, especially now.'>> <<case "enemy">><<Chat $interactionNpc 'I\'m too worn out for this.'>> <<case "archenemy">><<Chat $interactionNpc 'I\'m not in the mood for your tricks.'>> <<case "hatefuck">><<Chat $interactionNpc 'Not now.'>> <<case "crush">><<Chat $interactionNpc 'I’m too nervous and tired right now.'>> <<case "dating">><<Chat $interactionNpc 'Let’s save the flirting for when I’m more awake.'>> <<case "soulmate">><<Chat $interactionNpc 'Let’s save the flirting for later.'>> <</switch>> <div class="btn padding-top"><<button "Back" "CharacterInteractions">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "advanced_interaction_system_busyCounter">> <<include "check_jealous_partner">> <<include "check_player_partner">> <<if _jealousIntervene>> <<include "jealous_partner_intervenes">> <<elseif _playerPartnerIntervene>> <<include "player_partner_confrontation">> <<else>> <<SpendTime 5>> <<SpendEnergy $player 5>> <<if _isBusy == true>> <<include "advanced_interaction_system_hug_tired">> <<elseif setup.willing($player, $interactionNpc, "hug", "speech")>> <<include "advanced_interaction_system_hug_success">> <<else>> <<include "advanced_interaction_system_hug_unsuccessful">> <</if>> <</if>> <</nobr>>
<<nobr>> <<ChatMessage 'Successful'>> <<switch $player.getRelationship($player.info.id).relation>> <<case "acquaintance">><<Chat $interactionNpc 'Sure, a hug sounds nice.'>> <<case "friend">><<Chat $interactionNpc 'Bring it in!'>> <<case "bestFriend">><<Chat $interactionNpc 'I needed that hug so much.'>> <<case "fuckbuddy">><<Chat $interactionNpc 'Sure, come here.'>> <<case "rival">><<Chat $interactionNpc 'Fine, but make it quick.'>> <<case "enemy">><<Chat $interactionNpc 'Fine, but this doesn\'t change anything.'>> <<case "archenemy">><<Chat $interactionNpc 'Fine, but I still despise you.'>> <<case "hatefuck">><<Chat $interactionNpc 'Fine, but I still hate you.'>> <<case "crush">><<Chat $interactionNpc 'I’d love a hug from you.'>> <<case "dating">><<Chat $interactionNpc 'I love your hugs.'>> <<case "soulmate">><<Chat $interactionNpc 'Your hugs are my safe place.'>> <</switch>> <<set _increaseValue = random(4, 7) + $player.attributes.speech.value>> <<IncreaseFriendship $player $interactionNpc _increaseValue>> <div class="btn padding-top"><<button "Back" "CharacterInteractions">><</button>></div> <</nobr>>
<<nobr>> <<ChatMessage 'Unsuccessful'>> <<switch $player.getRelationship($player.info.id).relation>> <<case "acquaintance">><<Chat $interactionNpc 'Uh, I don\'t think we\'re at the hugging stage yet.'>> <<case "friend">><<Chat $interactionNpc 'Not right now.'>> <<case "bestFriend">><<Chat $interactionNpc 'Oof, bad timing for a hug.'>> <<case "fuckbuddy">><<Chat $interactionNpc 'Let\'s skip the hug.'>> <<case "rival">><<Chat $interactionNpc 'Don\'t touch me.'>> <<case "enemy">><<Chat $interactionNpc 'Don\'t touch me!'>> <<case "archenemy">><<Chat $interactionNpc 'Get away from me!'>> <<case "hatefuck">><<Chat $interactionNpc 'Don’t touch me.'>> <<case "friendzone">><<Chat $interactionNpc 'Hugs might send the wrong signal.'>> <<case "crush">><<Chat $interactionNpc 'Maybe not yet.'>> <<case "dating">><<Chat $interactionNpc 'Can we hug later?'>> <<case "soulmate">><<Chat $interactionNpc 'I need a moment alone.'>> <</switch>> <div class="btn padding-top"><<button "Back" "CharacterInteractions">><</button>></div> <</nobr>>
<<nobr>> <<ChatMessage 'Tired'>> <<switch $player.getRelationship($player.info.id).relation>> <<case "acquaintance">><<Chat $interactionNpc 'Maybe later, I\'m not up for physical contact right now.'>> <<case "friend">><<Chat $interactionNpc 'I\'m too tired for hugs.'>> <<case "bestFriend">><<Chat $interactionNpc 'Can we just sit together instead?'>> <<case "fuckbuddy">><<Chat $interactionNpc 'I\'m not up for it.'>> <<case "rival">><<Chat $interactionNpc 'No, I\'m too tired.'>> <<case "enemy">><<Chat $interactionNpc 'I\'m too tired for your games.'>> <<case "archenemy">><<Chat $interactionNpc 'No, I’m exhausted.'>> <<case "hatefuck">><<Chat $interactionNpc 'I’m too tired.'>> <<case "crush">><<Chat $interactionNpc 'Can we hug later? I’m tired.'>> <<case "dating">><<Chat $interactionNpc 'Just hold me, I’m tired.'>> <<case "soulmate">><<Chat $interactionNpc 'Just hold me, no need for words.'>> <</switch>> <div class="btn padding-top"><<button "Back" "CharacterInteractions">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "advanced_interaction_system_busyCounter">> <<include "check_jealous_partner">> <<include "check_player_partner">> <<if _jealousIntervene>> <<include "jealous_partner_intervenes">> <<elseif _playerPartnerIntervene>> <<include "player_partner_confrontation">> <<else>> <<SpendTime 5>> <<SpendEnergy $player 5>> <<if _isBusy == true>> <<include "advanced_interaction_system_kiss_tired">> <<elseif setup.willing($player, $interactionNpc, "kiss", "speech")>> <<include "advanced_interaction_system_kiss_success">> <<else>> <<include "advanced_interaction_system_kiss_unsuccessful">> <</if>> <</if>> <</nobr>>
<<nobr>> <<ChatMessage 'Successful'>> <<switch $player.getRelationship($player.info.id).relation>> <<case "acquaintance">><<Chat $interactionNpc 'Wow, that was unexpected but nice.'>> <<case "friend">><<Chat $interactionNpc 'Mwah! You\'re the best.'>> <<case "bestFriend">><<Chat $interactionNpc 'Aww, a kiss from my bestie.'>> <<case "fuckbuddy">><<Chat $interactionNpc 'Yes, kiss me.'>> <<case "rival">><<Chat $interactionNpc 'This doesn\'t mean we\'re friends.'>> <<case "enemy">><<Chat $interactionNpc 'What are you doing? But okay.'>> <<case "archenemy">><<Chat $interactionNpc 'This doesn’t mean I like you.'>> <<case "hatefuck">><<Chat $interactionNpc 'Make it quick.'>> <<case "crush">><<Chat $interactionNpc 'Yes, please!'>> <<case "dating">><<Chat $interactionNpc 'Kiss me like you mean it.'>> <<case "soulmate">><<Chat $interactionNpc 'Every kiss feels like the first.'>> <</switch>> <<set $interaction = "Kiss">> <<Interaction $player $interactionNpc>> <<set _increaseValue = random(2, 5) + $player.attributes.speech.value>> <<IncreaseLove $player $interactionNpc _increaseValue>> <<set _increaseValue = random(2, 5) + $player.attributes.speech.value>> <<IncreaseSex $player $interactionNpc _increaseValue>> <div class="btn padding-top"><<button "Back" "CharacterInteractions">><</button>></div> <</nobr>>
<<nobr>> <<ChatMessage 'Unsuccessful'>> <<switch $player.getRelationship($player.info.id).relation>> <<case "acquaintance">><<Chat $interactionNpc 'Whoa, no. That\'s too much.'>> <<case "friend">><<Chat $interactionNpc 'Um, let\'s not.'>> <<case "bestFriend">><<Chat $interactionNpc 'Let\'s not cross that line.'>> <<case "fuckbuddy">><<Chat $interactionNpc 'Not now.'>> <<case "rival">><<Chat $interactionNpc 'What the hell?'>> <<case "enemy">><<Chat $interactionNpc 'Absolutely not!'>> <<case "archenemy">><<Chat $interactionNpc 'Don’t you dare!'>> <<case "hatefuck">><<Chat $interactionNpc 'No way.'>> <<case "friendzone">><<Chat $interactionNpc 'I don\'t see you that way.'>> <<case "crush">><<Chat $interactionNpc 'I’m not ready for that.'>> <<case "dating">><<Chat $interactionNpc 'Not now, please.'>> <<case "soulmate">><<Chat $interactionNpc 'Not right now, but soon.'>> <</switch>> <div class="btn padding-top"><<button "Back" "CharacterInteractions">><</button>></div> <</nobr>>
<<nobr>> <<ChatMessage 'Tired'>> <<switch $player.getRelationship($player.info.id).relation>> <<case "acquaintance">><<Chat $interactionNpc 'I\'m too tired for that kind of intimacy.'>> <<case "friend">><<Chat $interactionNpc 'I\'m not feeling kissy right now.'>> <<case "bestFriend">><<Chat $interactionNpc 'I\'m not in the mood for kisses.'>> <<case "fuckbuddy">><<Chat $interactionNpc 'Later, I\'m tired.'>> <<case "rival">><<Chat $interactionNpc 'I\'m not doing that.'>> <<case "enemy">><<Chat $interactionNpc 'I\'m not in the mood.'>> <<case "archenemy">><<Chat $interactionNpc 'I’m too tired for this.'>> <<case "hatefuck">><<Chat $interactionNpc 'Later, maybe.'>> <<case "crush">><<Chat $interactionNpc 'Maybe when I’m more awake.'>> <<case "dating">><<Chat $interactionNpc 'A quick kiss, then let’s rest.'>> <<case "soulmate">><<Chat $interactionNpc 'A gentle kiss, then let’s rest.'>> <</switch>> <div class="btn padding-top"><<button "Back" "CharacterInteractions">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "advanced_interaction_system_busyCounter">> <<include "check_jealous_partner">> <<include "check_player_partner">> <<if _jealousIntervene>> <<include "jealous_partner_intervenes">> <<elseif _playerPartnerIntervene>> <<include "player_partner_confrontation">> <<else>> <<SpendTime 5>> <<SpendEnergy $player 5>> <<if _isBusy == true>> <<include "advanced_interaction_system_offerRide_tired">> <<elseif setup.offerRideWilling($player, $interactionNpc)>> <<include "advanced_interaction_system_offerRide_success">> <<else>> <<include "advanced_interaction_system_offerRide_unsuccessful">> <</if>> <</if>> <<if $player.dailyEvents.isEventRegistered($interactionNpc.info.id, "offerRide") == false>> <<run $player.dailyEvents.registerEvent($interactionNpc.info.id, "offerRide", 1)>> <</if>> <</nobr>>
<<nobr>> <<ChatMessage 'Successful'>> <<if !$playercars || $playercars.length == 0>> <<ChatMessage "You don't own a car to offer.">> <<else>> <<if $playercars.includes("Supercar")>> <<set _carName = "supercar">> <<set _friendship = 20>> <<elseif $playercars.includes("Sports Car")>> <<set _carName = "sports car">> <<set _friendship = 20>> <<elseif $playercars.includes("SUV")>> <<set _carName = "SUV">> <<set _friendship = 15>> <<elseif $playercars.includes("Sedan")>> <<set _carName = "sedan">> <<set _friendship = 10>> <<else>> <<set _carName = "compact car">> <<set _friendship = 5>> <</if>> <<set _msg = `Need a ride? My _carName is right outside.`>> <<Chat $player _msg>> <<Chat $interactionNpc "Thanks! I'd appreciate it.">> <<set _relations = {friendship: _friendship}>> <<set $interactionNpc.setRelationship($player.info.id, _relations)>> <<set $player.setRelationship($interactionNpc.info.id, _relations)>> <<set _msg = `Friendship increased by _friendship`>> <<ChatMessage _msg>> <<if $player.gender() == "female">> <<set _oralText = "Eat me out">> <<else>> <<set _oralText = "Suck me off">> <</if>> <<run _oralBtnText = _oralText + " (" + setup.successChance($player, $interactionNpc, "carBlowjob", "speech") + "%)">> <<if setup.canCarBlowjob($player, $interactionNpc)>> <div class="btn"><<button _oralBtnText "advanced_interaction_system_car_blowjob">><</button>></div> <<else>> <div class="btn non-interacting" id="carbj-btn"><<button _oralText>><</button>></div> <<done>> <<run addHoverTooltip('carbj-btn', 'Required: Love ≥ 30, sex ≥ 45; relationship ≥ Crush or fuckbuddy or hatefuck. Always available if dating, soulmate, fuckbuddy or hatefuck')>> <</done>> <</if>> <</if>> <div class="btn padding-top"><<button "Back" "CharacterInteractions">><</button>></div> <</nobr>>
<<nobr>> <<ChatMessage 'Unsuccessful'>> <<Chat $player "Need a ride?">> <<Chat $interactionNpc "No thanks.">> <div class="btn padding-top"><<button "Back" "CharacterInteractions">><</button>></div> <</nobr>>
<<nobr>> <<ChatMessage 'Tired'>> <<Chat $interactionNpc "I'm too busy for that right now.">> <div class="btn padding-top"><<button "Back" "CharacterInteractions">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "advanced_interaction_system_busyCounter">> <<include "check_jealous_partner">> <<include "check_player_partner">> <<if _jealousIntervene>> <<include "jealous_partner_intervenes">> <<elseif _playerPartnerIntervene>> <<include "player_partner_confrontation">> <<else>> <<SpendTime 5>> <<SpendEnergy $player 5>> <<if _isBusy == true>> <<include "advanced_interaction_system_sex_tired">> <<elseif setup.willing($player, $interactionNpc, "sex", "speech")>> <<include "advanced_interaction_system_sex_success">> <<else>> <<include "advanced_interaction_system_sex_unsuccessful">> <</if>> <</if>> <</nobr>>
<<nobr>> <<ChatMessage 'Successful'>> <<switch $player.getRelationship($player.info.id).relation>> <<case "acquaintance">><<Chat $interactionNpc 'I didn\'t see that coming, but okay, let\'s go.'>> <<case "friend">><<Chat $interactionNpc 'Wait, are we doing this? Okay, why not.'>> <<case "bestFriend">><<Chat $interactionNpc 'This changes things, but I\'m okay with it.'>> <<case "fuckbuddy">><<Chat $interactionNpc 'Let\'s do it.'>> <<case "rival">><<Chat $interactionNpc 'This changes nothing.'>> <<case "enemy">><<Chat $interactionNpc 'This is a mistake, but whatever.'>> <<case "archenemy">><<Chat $interactionNpc 'Fine, but I hate you.'>> <<case "hatefuck">><<Chat $interactionNpc 'Let’s get this over with.'>> <<case "crush">><<Chat $interactionNpc 'I think I’m ready for that with you.'>> <<case "dating">><<Chat $interactionNpc 'Yes, I want you.'>> <<case "soulmate">><<Chat $interactionNpc 'I want to be with you completely.'>> <</switch>> <<set _increaseValue = random(5, 10) + $player.attributes.speech.value>> <<IncreaseSex $player $interactionNpc _increaseValue>> <div class="btn padding-top"><<button "Continue" "ChooseSexType">><</button>></div> <</nobr>>
<<nobr>> <<ChatMessage 'Unsuccessful'>> <<switch $player.getRelationship($player.info.id).relation>> <<case "acquaintance">><<Chat $interactionNpc 'Absolutely not. What are you thinking?'>> <<case "friend">><<Chat $interactionNpc 'Nah, let\'s keep it platonic.'>> <<case "bestFriend">><<Chat $interactionNpc 'I think we should stay friends.'>> <<case "fuckbuddy">><<Chat $interactionNpc 'Not today.'>> <<case "rival">><<Chat $interactionNpc 'Are you insane?'>> <<case "enemy">><<Chat $interactionNpc 'Never in a million years.'>> <<case "archenemy">><<Chat $interactionNpc 'Not in your wildest dreams.'>> <<case "hatefuck">><<Chat $interactionNpc 'Not happening.'>> <<case "friendzone">><<Chat $interactionNpc 'We\'re just friends, remember?'>> <<case "crush">><<Chat $interactionNpc 'I don’t think so, not yet.'>> <<case "dating">><<Chat $interactionNpc 'Maybe later, not now.'>> <<case "soulmate">><<Chat $interactionNpc 'Let’s wait for a better time.'>> <</switch>> <div class="btn padding-top"><<button "Back" "CharacterInteractions">><</button>></div> <</nobr>>
<<nobr>> <<ChatMessage 'Tired'>> <<switch $player.getRelationship($player.info.id).relation>> <<case "acquaintance">><<Chat $interactionNpc 'I\'m way too exhausted for that.'>> <<case "friend">><<Chat $interactionNpc 'Too tired for that, sorry.'>> <<case "bestFriend">><<Chat $interactionNpc 'I\'m way too tired for that.'>> <<case "fuckbuddy">><<Chat $interactionNpc 'I\'m exhausted, rain check?'>> <<case "rival">><<Chat $interactionNpc 'No, and I\'m tired.'>> <<case "enemy">><<Chat $interactionNpc 'I\'m way too exhausted.'>> <<case "archenemy">><<Chat $interactionNpc 'I’m too worn out.'>> <<case "hatefuck">><<Chat $interactionNpc 'I’m too drained.'>> <<case "crush">><<Chat $interactionNpc 'I’m too tired for that right now.'>> <<case "dating">><<Chat $interactionNpc 'Can we make love another time? I’m exhausted.'>> <<case "soulmate">><<Chat $interactionNpc 'I’m too tired, but I love you.'>> <</switch>> <div class="btn padding-top"><<button "Back" "CharacterInteractions">><</button>></div> <</nobr>>
<<nobr>> <<include "advanced_interaction_system_btn_text">> <div class="btn"><<button _talkBtnText "advanced_interaction_system_chat">><</button>></div> <<if setup.canCompliment($player, $interactionNpc)>> <div class="btn"><<button _complimentBtnText "advanced_interaction_system_compliment">><</button>></div> <<else>> <div class="btn non-interacting" id="compliment-btn"><<button "Compliment">><</button>></div> <<done>> <<run addHoverTooltip('compliment-btn', 'Required: Friendship ≥ 5; not enemies; once per day')>> <</done>> <</if>> <<if setup.canFlirt($player, $interactionNpc)>> <div class="btn"><<button _flirtBtnText "advanced_interaction_system_flirt">><</button>></div> <<else>> <div class="btn non-interacting" id="flirt-btn"><<button "Flirt">><</button>></div> <<done>> <<run addHoverTooltip('flirt-btn', 'Required: Friendship ≥ 20, Love ≥ 10; relationship ≥ Friend; once per day')>> <</done>> <</if>> <<if setup.canHug($player, $interactionNpc)>> <div class="btn"><<button _hugBtnText "advanced_interaction_system_hug">><</button>></div> <<else>> <div class="btn non-interacting" id="hug-btn"><<button "Hug">><</button>></div> <<done>> <<run addHoverTooltip('hug-btn', 'Required: Friendship ≥ 35; relationship ≥ Friend')>> <</done>> <</if>> <<if setup.canKiss($player, $interactionNpc)>> <div class="btn"><<button _kissBtnText "advanced_interaction_system_kiss">><</button>></div> <<else>> <div class="btn non-interacting" id="kiss-btn"><<button "Kiss">><</button>></div> <<done>> <<run addHoverTooltip('kiss-btn', 'Required: Love ≥ 30; relationship must be romantic, fuckbuddy, or hatefuck')>> <</done>> <</if>> <<if setup.canConfessLove($player, $interactionNpc)>> <div class="btn"><<button _confessBtnText "advanced_interaction_system_confess">><</button>></div> <<else>> <div class="btn non-interacting" id="confess-btn"><<button "Confess Love">><</button>></div> <<done>> <<run addHoverTooltip('confess-btn', 'Required: Love ≥ 20; not enemy or friendzone; once per day')>> <</done>> <</if>> <<if setup.canSex($player, $interactionNpc)>> <div class="btn"><<button _sexBtnText "advanced_interaction_system_sex">><</button>></div> <<else>> <div class="btn non-interacting" id="sex-btn"><<button "Sex">><</button>></div> <<done>> <<run addHoverTooltip('sex-btn', 'Required: Love ≥ 40, sex ≥ 70; relationship ≥ Crush or fuckbuddy or hatefuck. Always available if dating, soulmate, fuckbuddy or hatefuck.')>> <</done>> <</if>> <<if setup.canOfferRide($player, $interactionNpc)>> <div class="btn"><<button _offerRideBtnText "advanced_interaction_system_offerRide">><</button>></div> <<else>> <div class="btn non-interacting" id="offer-ride-btn"><<button "Offer Ride">><</button>></div> <<done>> <<if !$playercars || $playercars.length == 0>> <<run addHoverTooltip('offer-ride-btn', 'Requires owning a car')>> <<else>> <<run addHoverTooltip('offer-ride-btn', 'Already offered a ride today')>> <</if>> <</done>> <</if>> <<set _canInviteToBeach = !_questInfo || _questInfo.isQuestCharacter != true || !_isRestrictedQuestChar>> <<if _canInviteToBeach && $playercars && $playercars.length > 0 && $player.characterEvents.isEventRegistered($player.info.id, 'AmandaPicnicQuestCompleted') == true && $player.dailyEvents.isEventRegistered($player.info.id, "BeachInvite") == false>> <<set _invitePicnicChance = setup.inviteToBeachPicnicChance($player, $interactionNpc)>> <<if setup.canInviteToBeachPicnic($player, $interactionNpc)>> <<capture _invitePicnicChance>> <div class="btn"><<button _invitePicnicBtnText "InviteToPicnic">><<set $chance = _invitePicnicChance>><</button>></div> <</capture>> <<else>> <div class="btn non-interacting" id="invite-beach-btn"><<button "Invite to the beach">><</button>></div> <<done>> <<run addHoverTooltip('invite-beach-btn', 'Required: Friendship ≥ 40, Love ≥ 35; not enemies')>> <</done>> <</if>> <<unset _invitePicnicChance>> <<else>> <div class="btn non-interacting"><<button "Invite to the beach">><</button>></div> <</if>> <<unset _canInviteToBeach>> <<unset _questInfo _isRestrictedQuestChar>> <div class="btn"><<button "Insult" "advanced_interaction_system_insult">><</button>></div> <div class="btn"><<button "Fight" "advanced_interaction_system_fight">><</button>></div> <<if _tempCharWork != "Pimp" && _tempCharWork != "Photographer" && _tempCharWork != "Porn director">> <div class="btn"><<button "Give Item" "Interactions_GiveItems">><<set $filterType = "All">><<unset $source>><</button>></div> <</if>> <</nobr>>
<<nobr>> <<run _talkBtnText = "Chat (" + setup.successChance($player, $interactionNpc, "chat", "speech") + "%)">> <<run _flirtBtnText = "Flirt (" + setup.successChance($player, $interactionNpc, "flirt", "speech") + "%)">> <<run _complimentBtnText = "Compliment (" + setup.successChance($player, $interactionNpc, "compliment", "speech") + "%)">> <<run _hugBtnText = "Hug (" + setup.successChance($player, $interactionNpc, "hug", "speech") + "%)">> <<run _kissBtnText = "Kiss (" + setup.successChance($player, $interactionNpc, "kiss", "speech") + "%)">> <<run _sexBtnText = "Sex (" + setup.successChance($player, $interactionNpc, "sex", "speech") + "%)">> <<run _confessBtnText = "Confess Love (" + setup.successChance($player, $interactionNpc, "confessLove", "speech") + "%)">> <<run _offerRideBtnText = "Offer Ride (" + setup.offerRideChance($player, $interactionNpc) + "%)">> <<run _invitePicnicBtnText = "Invite to the beach (" + setup.inviteToBeachPicnicChance($player, $interactionNpc) + "%)">> <</nobr>>
<<nobr>> <<set _isBusy = false>> <<if $interactionNpc.dailyEvents.isEventRegistered($player.info.id, "Busy") == true>> <<set _isBusy = true>> <<else>> <<if $interactionNpc.dailyEvents.isEventRegistered($player.info.id, "Interacted") == false>> <<run $interactionNpc.dailyEvents.registerEvent($player.info.id, "Interacted", 1)>> <<else>> <<run _busyCounter = $interactionNpc.dailyEvents.getOrRegisterEvent($player.info.id, "Interacted", 1) * 10>> <<if _busyCounter > random(0, 100)>> <<run $interactionNpc.dailyEvents.registerEvent($player.info.id, "Busy", 1)>> <<set _isBusy = true>> <<else>> <<run $interactionNpc.dailyEvents.registerEvent($player.info.id, "Interacted", 1)>> <</if>> <</if>> <</if>> <</nobr>>
<<nobr>> <<set _jealousIntervene = false>> <<set $romanticPartnerObject = findRomanticPartner($interactionNpc, $player.info.id)>> <<set _jealousPartner = $romanticPartnerObject?.character ?? undefined>> <<if _jealousPartner != undefined && _jealousPartner.info.currentLocation == $interactionNpc.info.currentLocation>> <<set _jealousIntervene = true>> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon _jealousPartner>> <<Chat _jealousPartner 'Hey! Stay away from my partner!'>> <div class="btn padding-top"><<button "Fight">> <<set $indexNPC = $romanticPartnerObject.index>> <<set $interactionNpc = $Characters[$indexNPC]>> <<set _battleSetControls = {attack: true, seduce: false, items: true, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls undefined undefined>> <</button>></div> <div class="btn padding-top"><<button "Back" $player.info.currentLocation>> <<set _setFriendship = -20>> <<IncreaseFriendship $player $interactionNpc _setFriendship>> <<set _increaseValue = -20>> <<IncreaseLove $player $interactionNpc _increaseValue>> <<LeaveInteractionSettings>> <<set $indexNPC = $romanticPartnerObject.index>> <<set $interactionNpc = $Characters[$indexNPC]>> <<set _setFriendship = -20>> <<IncreaseFriendship $player $interactionNpc _setFriendship>> <<set _increaseValue = -20>> <<IncreaseLove $player $interactionNpc _increaseValue>> <<LeaveInteractionSettings>> <</button>></div> <</nobr>>
<<nobr>> <<set _playerPartnerIntervene = false>> <<set _playerPartnerObject = findRomanticPartner($player, $interactionNpc.info.id)>> <<if _playerPartnerObject>> <<set $playerPartner = _playerPartnerObject.character>> <<set $playerPartnerIndex = _playerPartnerObject.index>> <<set _partnerRel = $player.getRelationship($playerPartner.info.id).relation>> <<if (_partnerRel == 'dating' or _partnerRel == 'soulmate') and $playerPartner.info.currentLocation == $player.info.currentLocation>> <<set _playerPartnerIntervene = true>> <</if>> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<LockSettings>> <<ShowNpcIcon $playerPartner>> <<Chat $playerPartner 'What do you think you\'re doing? Explain yourself!'>> <div class="btn padding-top"><<button 'Try to justify' 'player_partner_try_justify'>><</button>></div> <div class="btn padding-top"><<button 'Say nothing' 'player_partner_fail'>><</button>></div> <</nobr>>
<<nobr>> <<if random(0,100) > 75>> <<goto "player_partner_success">> <<else>> <<goto "player_partner_fail">> <</if>> /* <<set $chance = 50>> */ /* <<CheckChance 'player_partner_success' 'player_partner_fail' 'player_partner_fail' 'CharacterInteractions' 'Justify' '{createBackButton: false, createTwiceBackButton: false}'>> */ <</nobr>>
<<nobr>> <<ChatMessage 'You manage to calm your partner down.'>> <div class="btn padding-top"><<button 'Continue' $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<set $indexNPC = $playerPartnerIndex>> <<set $interactionNpc = $Characters[$indexNPC]>> <<ChatMessage 'Your partner is furious and cuts ties with you.'>> <<set _curRel = $player.getRelationship($interactionNpc.info.id)>> <<set _deltaFriendship = 6 - _curRel.metrics.friendship>> <<set _deltaLove = -_curRel.metrics.love>> <<set _resetRel = {friendship: _deltaFriendship, love: _deltaLove}>> <<SetRelations $player $interactionNpc _resetRel>> <<run relationCheck($player, $interactionNpc, true)>> <div class="btn padding-top"><<button 'Continue' $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SpendTime 5>> <<SpendEnergy $player 5>> <<set _relation = $player.getRelationship($interactionNpc.info.id).relation>> <<switch _relation>> <<case "acquaintance">><<Chat $interactionNpc 'Hey, watch it!'>> <<case "friend">><<Chat $interactionNpc 'I thought we were friends!'>> <<case "bestFriend">><<Chat $interactionNpc 'Wow, that\'s harsh.'>> <<case "friendzone">><<Chat $interactionNpc 'Some friend you are.'>> <<case "fuckbuddy">><<Chat $interactionNpc 'Not cool.'>> <<case "rival">><<Chat $interactionNpc 'Is that all you\'ve got?'>> <<case "enemy">><<Chat $interactionNpc 'You just keep digging your grave.'>> <<case "archenemy">><<Chat $interactionNpc 'I couldn\'t hate you more.'>> <<case "hatefuck">><<Chat $interactionNpc 'You just love to piss me off.'>> <<case "crush">><<Chat $interactionNpc 'Why would you say that?'>> <<case "dating">><<Chat $interactionNpc 'I can\'t believe you said that to me.'>> <<case "soulmate">><<Chat $interactionNpc 'That really hurts.'>> <</switch>> <<set _decreaseRelations = Random(-5, -10)>> <<IncreaseFriendship $player $interactionNpc _decreaseRelations>> <<run relationCheck($player, $interactionNpc, true)>> <<set _newRel = $player.getRelationship($interactionNpc.info.id).relation>> <<if _newRel == 'enemy' || _newRel == 'Archenemy'>> <<Chat $interactionNpc 'That\'s it! I\'ll fight you!'>> <div class="btn padding-top"><<button "Fight">> <<set _battleSetControls = {attack: true, seduce: false, items: true, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls undefined undefined>> <</button>></div> <<else>> <div class="btn padding-top"><<button "Back" "CharacterInteractions">><</button>></div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <div class="padding-top"> <div class="btn-container"> <div class="btn"><<button "Insult" "AggresiveType">><<set $agressiveAction = "Insult">><</button>></div> <div class="btn"><<button "Interaction" "Interaction">><<set $interactionType = "Aggressive">><</button>></div> <div class="btn"><<button "Coerce" "Persuade">><<set $persuadeType = "Coerce">><</button>></div> <<set _battleSetControls = {attack: true, seduce: true, items: true, actions: true}>> <div class="btn"><<button "Fight">><<StartFight $player $interactionNpc _battleSetControls undefined undefined>><</button>></div> </div> </div> <div class="padding-top"> <div class="btn"><<button "Back" "CharacterInteractions">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<SpendEnergy $player 10>> <<if $interactionNpc.attributes.dominance.value >= 5>> <<set _domChek = true>> <<ChatMessage '$interactionNpc.info.firstName\'s dominance is too high.'>> <<else>> <<set _domChek = false>> <</if>> <<if $player.attributes.dominance.value >= 5>> <<set _playerDomChek = true>> <<else>> <<set _playerDomChek = false>> <<ChatMessage 'Your dominance is too low.'>> <<SetCharProgression $player 'dominance' -10 true>> <</if>> <<if _playerDomChek == false>> <<run _msg = "Fear envelops you and there is nothing you can do. This experience only reinforces your indecisiveness.">> <<else>> <<switch $agressiveAction>> <<case "Insult">> <<if _domChek == true>> <<run _msg = $interactionNpc.info.firstName + " got angry and attacked you">> <<else>> <<run _msg = $interactionNpc.info.firstName + " looks at you fearfully and steps back.">> <<SetCharProgression $interactionNpc 'dominance' -10 false>> <<SetCharProgression $player 'dominance' 10 true>> <<run $player.getRelationship($interactionNpc.info.id).metrics._fear.increase(Random(3, 10, true))>> /* <div class="btn"><<button "Text" "Passage">><</button>></div> */ <</if>> <</switch>> <</if>> <<ChatMessage _msg>> <<if _domChek == true && _playerDomChek == true>> <<set _relUpgrd = {friendship: Random(-5.0, -10.0)}>> <<SetRelations $player $interactionNpc _relUpgrd>> <div style="margin-top: 10px;"> <<set _battleSetControls = {attack: true, seduce: true, items: true, actions: true}>> <div class="btn"><<button "Fight">><<StartFight $player $interactionNpc _battleSetControls undefined undefined>><</button>></div> </div> <<else>> <div style="margin-top: 10px;"> <<BackButton "<<set $canShowStatsBtn = true>> <<unset $interactionNpc>> <<set $gameSettings.allowSaves = true>>">> </div> <</if>> <<unset $agressiveAction>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "FightPhrases">> <<ShowNpcIcon $interactionNpc>> <div class="padding-top"> <div class="btn-container"> <<set _battleSetControls = {attack: true, seduce: true, items: true, actions: true}>> <div class="btn"><<button "Fight">><<StartFight $player $interactionNpc _battleSetControls undefined undefined>><</button>></div> <<if $interactionNpc.info.characterWork == "Pimp">> <div class="btn"><<button "Surrender" "EndOfBattle_Pimp">><<set $LoseBattle = true>><<unset $interactionNpc $fightPhrasesNpcWon $fightPhrasesPlayerWon>> <</button>></div> <<elseif $interactionNpc.info.characterTraits.includes("Aggressive")>> <div class="btn"><<button "Surrender" "AggrisiveWin">><<set $surrenderFight = true>><</button>></div> <<else>> <div class="btn"><<button "Surrender" "GiveUpFight">><</button>></div> <</if>> </div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatMessage 'You gave up, and your dominance has decreased.'>> <<set _rand = Random(3, 5, true) * -1>> <<SetCharProgression $player 'dominance' _rand true>> <div style="margin-top: 10px;"> <<BackButton "<<set $canShowStatsBtn = true>> <<unset $interactionNpc $fightPhrasesNpcWon $fightPhrasesPlayerWon>> <<set $gameSettings.allowSaves = true>>">> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<include "CheckSexPref">> <<if _sexPrefResult == true && $interactionNpc.genitalia() == "Penis" && $interactionNpc.status.potency.value != $interactionNpc.status.potency.min>> <<if $surrenderFight == true>> <<set _msg = "After your surrendered, " + $interactionNpc.info.firstName + " approaches you with a smirk and begins to strip off your clothes">> <<else>> <<set _msg = "After your surrendered, " + $interactionNpc.info.firstName + " approaches you with a smirk and begins to strip off your clothes">> <</if>> <<ChatMessage _msg>> <div style="margin-top: 10px;"> <div class="btn"><<button "Continue" "PassiveSex">><<set $sexType = "hoockerWork">><<set $aggresiveFuck = true>><</button>></div> </div> <<elseif $gameSettings.contentFilter.PlayerFeminization == true>> <<run $player.body.face.increase(Random(0.05, 0.5, true))>> <<run $player.body.breastSize.increase(Random(0.05, 0.5, true))>> <<run $player.body.buttSize.increase(Random(0.05, 0.5, true))>> <<set _pron = $interactionNpc.pronoun().toLowerCase()>> <<if $surrenderFight == true>> <<set _msg = "After your surrendered, " + _pron + " takes out pink pills from " + $interactionNpc.pronounHisHer() + " pocket and makes you swallow them. Due to these pills, you feel a burning sensation throughout your body.">> <<else>> <<set _msg = "After " + $interactionNpc.info.firstName + " defeats you, " + _pron + " takes out pink pills from " + $interactionNpc.pronounHisHer() + " pocket and makes you swallow them. Due to these pills, you feel a burning sensation throughout your body.">> <</if>> <<ChatMessage _msg>> <div style="margin-top: 10px;"> <<BackButton "<<set $canShowStatsBtn = true>> <<unset $interactionNpc $fightPhrasesNpcWon $fightPhrasesPlayerWon>> <<set $gameSettings.allowSaves = true>>">> </div> <<else>> <<ChatMessage 'The player feminization content is blocked, as the \'Forced Player Feminization\' option is disabled in the content filter'>> <div style="margin-top: 10px;"> <<BackButton "<<set $canShowStatsBtn = true>> <<unset $interactionNpc $fightPhrasesNpcWon $fightPhrasesPlayerWon>> <<set $gameSettings.allowSaves = true>>">> </div> <</if>> <<unset $surrenderFight>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <div class="padding-top"></div> <<ChanceButton "Casual conversation" "Casual_Conversation_Talk" $player $interactionNpc '{Friend: 50, Love: 0, Fear: 0, Lust: 0, CheckResistance: false}' "Casual Conversation" '<<set $fromPhone = true>>'>> <div class="padding-top"> <div class="btn"><<button "Where are you?" "WhereAreYou">><</button>></div> </div> <div class="padding-top"> <<ChanceButton 'Come to me' 'ComeToMe_Phone' $player $interactionNpc '{Friend: 70, Love: 0, Fear: 0, Lust: 0, CheckResistance: false, CheckSexPref: false}' 'ComeToMe'>> </div> <div class="padding-top"> <div class="btn"><<button "Leave" "Phone">><<unset $interactionNpc $indexNPC>> <<set $gameSettings.allowSaves = true>><<set $canShowStatsBtn = true>><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<set _loc = $interactionNpc.info.currentLocation>> <<switch _loc>> <<case "DormRoom">> <<set _msg = "I'm at home">> <<case "DormCorridor">> <<set _msg = "I'm at home">> <<case "CollegeHall">> <<set _msg = "I'm in the college hall">> <<case "Auditorium">> <<set _msg = "I'm in the auditorium">> <<case "WomensRestroom">> <<set _msg = "I'm in the college restroom">> <<case "MensRestroom">> <<set _msg = "I'm in the college restroom">> <<case "Campus">> <<set _msg = "I'm in the campus">> <<case "Mall">> <<set _msg = "I'm in the mall">> <<case "RedLightDistrict">> <<set _msg = "I'm in the red-light district">> <<case "GiftShop">> <<set _msg = "I'm in the gift shop">> <<case "Pharmacy">> <<set _msg = "I'm in the pharmacy">> <<case "Grocery">> <<set _msg = "I'm in the grocery">> <<case "FitnessClub">> <<set _msg = "I'm in the gym">> <<case "Park">> <<set _msg = "I'm in the park">> <<case "ParkRestrooms">> <<set _msg = "I'm in the park restroom.">> <<case "ClothingStore">> <<set _msg = "I'm in the park clothing store">> <<case "SexShop">> <<set _msg = "I'm in the park sex shop">> <<default>> <<set _msg = "I'm walking around the city.">> <</switch>> <<Chat $interactionNpc _msg>> <div class="padding-top"> <div class="btn"><<button "Back" "CallToCharacter">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckChance 'ComeToMe_Phone_Success' 'ComeToMe_Phone_Failed' 'ComeToMe_Phone_Failed_Twice' 'CallToCharacter' 'ComeToMe' '{createBackButton: true, createTwiceBackButton: true}'>> <</nobr>>
<<nobr>> <<set _lockRelocate = $player.info.currentLocation>> <<set _phrase = [ "Alright, I’ll head over in a bit!", "Sure thing! I’ll be there soon.", "Sounds good. I’ll be on my way!", "Yeah, I can come by. See you soon!", "Alright, I’m coming! Just give me a few minutes.", ].random()>> <<Chat $interactionNpc _phrase>> <div class="padding-top"> <div class="btn"><<button "Continue" $player.info.currentLocation>> <<run RandomRelocateCharacter($Characters.indexOf($interactionNpc), _lockRelocate)>> <<unset $interactionNpc $indexNPC>> <<set $gameSettings.allowSaves = true>> <<set $canShowStatsBtn = true>> <</button>></div> </div> <</nobr>>
<<nobr>> <<set _phrase = [ "Sorry, I can’t make it right now.", "I don’t think I can come by today.", "Thanks for the invite, but I’m not able to.", "Nah, I’m just gonna stay in tonight.", "I’d love to, but I can’t right now.", ].random()>> <<Chat $interactionNpc _phrase>> <div class="padding-top"> <div class="btn"><<button "Back" "CallToCharacter">><</button>></div> </div> <</nobr>>
<<nobr>> <<set _phrase = [ "I already said I’m not coming, so drop it.", "Seriously, I can’t come over. Stop pushing.", "Look, I told you no. Let’s leave it there.", "How many times do I have to say I’m not coming?", "Enough already. I’m not coming over, end of story.", ].random()>> <<Chat $interactionNpc _phrase>> <div class="padding-top"> <div class="btn"><<button "Back" "CallToCharacter">><</button>></div> </div> <</nobr>>
<<nobr>> <<set _canTakeClothOff = false>> <<set $gameSettings.allowSaves = false>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<if $player.characterEvents.isEventRegistered($interactionNpc.info.id, "knows you") == false>> <div class="padding-top"> <div class="btn"><<button "Introduce yourself" "GetAcquainted">><</button>></div> </div> <div class="btn padding-top"><<button "Stats">> <<run Dialog.setup("Info")>> <<run Dialog.wiki('<<CharacterStatsView $interactionNpc true>>')>> <<run Dialog.open();>> <</button>></div> <div class="padding-top"> <div class="btn"><<button "Leave" $player.info.currentLocation>><<unset $interactionNpc $indexNPC>> <<set $gameSettings.allowSaves = true>><<set $canShowStatsBtn = true>><</button>></div> </div> <<else>> <<goto "CharacterInteractions">> <</if>> <</nobr>>
<<nobr>> <div class="chat-container" style="padding-top: 5px; padding-bottom: 5px;"> <p>$interactionNpc.info.firstName $interactionNpc.info.secondName. $interactionNpc.info.age.value-year-old <<print $interactionNpc.gender()>>. With a <<if $interactionNpc.clothes.hasClothingType(1) == false && $interactionNpc.clothes.hasClothingType(2) == false>> __<<link $interactionNpc.getBreastText()>> <<script>> Dialog.setup(SugarCube.State.variables.interactionNpc.getBreastText()); Dialog.wiki(SugarCube.State.variables.interactionNpc.getBreastImage()); Dialog.open(); <</script>> <</link>>__ <<else>> <span style="color: #fff;"><<print $interactionNpc.getBreastText()>></span> under clothing <</if>> and <<if $interactionNpc.clothes.hasClothingType(0) == false && $interactionNpc.clothes.hasClothingType(3) == false>> __<<link $interactionNpc.getButtText()>> <<script>> Dialog.setup(SugarCube.State.variables.interactionNpc.getButtText()); Dialog.wiki(SugarCube.State.variables.interactionNpc.getAssImage()); Dialog.open(); <</script>> <</link>>__ <<else>> <span style="color: #fff;"><<print $interactionNpc.getButtText()>></span> under clothing. <</if>> <<if $interactionNpc.clothes.clothingItems.size > 0>> <<set _isHasCloth = false>> <br><<print $interactionNpc.pronoun()>> is wearing: <<for _i = 0; _i <= 8; _i++>> <<capture _i>> <<if $interactionNpc.clothes.hasClothingType(_i)>> <<if (_i == 0 && $interactionNpc.clothes.hasClothingType(3)) || (_i == 1 && $interactionNpc.clothes.hasClothingType(2))>> <<continue>> <</if>> <<if _isHasCloth == true>> , <</if>> <<set _isHasCloth = true>> __<<link $interactionNpc.clothes.getFirstClothingItemByType(_i).name>> <<run Dialog.setup($interactionNpc.clothes.getFirstClothingItemByType(_i).name)>> <<run Dialog.wiki($interactionNpc.clothes.getFirstClothingItemByType(_i).getImg())>> <<run Dialog.open();>> <</link>>__ <<capture _i>> <<if _canTakeClothOff == true>> __<<link " (take off)" "TakeOff_clothes">> <<set $clothID = _i>> <</link>>__ <</if>> <</capture>> <</if>> <</capture>> <</for>> <</if>> <<if $interactionNpc.clothes.hasClothingType(0) == false && $interactionNpc.clothes.hasClothingType(3) == false>> <<if $interactionNpc.genitalia() == "Penis">> . <<print $interactionNpc.pronoun()>> have a <<print Math.trunc($interactionNpc.body.penisSize.value)>>-centimeter penis. <<else>> . <<print $interactionNpc.pronoun()>> have a vagina. <</if>> <</if>> </p> </div> <</nobr>>
<<nobr>> <<set _canTakeClothOff = true>> <<set $gameSettings.allowSaves = false>> <<include "UpdateAll">> <<if $interactionNpc.info.characterWork== "Pimp's whore">> <<goto "Whore_Of_Pimp">> <<elseif $interactionNpc.info.characterWork == "Brothel Security">> <<goto "PimpSecurity_Pimp">> <<elseif $interactionNpc.info.characterWork == "Pimp" && $player.characterEvents.isEventRegistered($player.info.id, "Is a pimp's whore")>> <<goto "Pimp_PimpsWhoreEvent">> <<elseif $interactionNpc.characterEvents.isEventRegistered($interactionNpc.info.id, "IsSurgeonPimp")>> <<goto "PimpSurgeon_Pimp">> <</if>> <<if Random(0,100) > 86 && $gameSettings.contentFilter.NPC_Activity == true && $interactionNpc.info.characterWork != "Hooker" && $player.getRelationship($interactionNpc.info.id).metrics.fear < 50 && $player.dailyEvents.isEventRegistered($player.info.id, "EventChatBegin") == false>> <<set $FromInteraction = true>> <<run $player.dailyEvents.registerEvent($player.info.id, "EventChatBegin", 1)>> <<include "EventChoose">> <</if>> <<ShowNpcIcon $interactionNpc>> <<ShowRelationsBar $player $interactionNpc "Both">> <div class="btn padding-top"><<button "Stats">> <<run Dialog.setup("Info")>> <<run Dialog.wiki('<<CharacterStatsView $interactionNpc true>>')>> <<run Dialog.open();>> <</button>></div> <<set $canShowStatsBtn = false>> <<if $player.status.energy.value < 15>> <<ChatMessage "You're too tired.">> <</if>> <div class="padding-top"> <div class="btn-container"> <<if $player.status.energy.value >= 15>> <<include "GetJobCheck">> <<if $dateTime.hours >= 8 && $dateTime.hours <=20>> <<if $interactionNpc.info.characterWork == "Gift seller">> <div class="btn"><<button "Buy gifts" "Shop">><<set $itemType = "Gift">><</button>></div> <<elseif $interactionNpc.info.characterWork == "Pharmacist">> <div class="btn"><<button "Buy medicine" "Shop">><<set $itemType = "Drug">><</button>></div> <<elseif $interactionNpc.info.characterWork == "Grocer">> <div class="btn"><<button "Buy food" "Shop">><<set $itemType = "Food">><</button>></div> <<elseif $interactionNpc.info.characterWork == "Clothing Seller">> <div class="btn"><<button "Buy clothes" "Shop">><<set $itemType = "Clothing">><</button>></div> <<elseif $interactionNpc.info.characterWork == "Sex Shop Worker">> <div class="btn"><<button "Buy Toys" "Shop">><<set $itemType = "SexToy">><</button>></div> <</if>> <<if $interactionNpc.info.characterWork== "Photographer" && $player.characterEvents.isEventRegistered($player.info.id, "Buy a photo studio") == false>> <div class="btn"><<button "Photo shoot" "Photographer">><</button>></div> <<elseif $interactionNpc.info.characterWork == "Porn director">> <div class="btn"><<button "Porn shoot" "PornShooting">><</button>></div> <</if>> /*finish */ <<if ($interactionNpc.info.characterWork == "Pharmacist" || $interactionNpc.info.characterWork == "Gift seller" || $interactionNpc.info.characterWork == "Grocer" || $interactionNpc.info.characterWork == "Fitness Trainer" || $interactionNpc.info.characterWork == "Martial Arts Instructor" || $interactionNpc.info.characterWork == "Clothing Seller" || $interactionNpc.info.characterWork == "Sex Shop Worker") && $interactionNpc.genitalia() == "Penis" && $player.dailyEvents.isEventRegistered($interactionNpc.info.id, "SuckForDiscount") == false>> <<if $player.characterEvents.isEventRegistered($interactionNpc.info.id, "SuckForDiscount") == false>> <div class="btn"><<button "Get a discount for a blowjob" "DiscountFirst">><</button>></div> <<else>> <div class="btn"><<button "Get a discount for a blowjob" "DiscontForBlowjob">><</button>></div> <</if>> <</if>> <<if $interactionNpc.info.characterWork == "Plastic Surgeon">> <div class="btn"><<button "Plastic surgery" "PlasticSurgery">><<set $isPlayer = true>><</button>></div> <div class="btn"><<button "Drug testing" "DrugTesting">><<set $isPlayer = true>><</button>></div> <</if>> <<if $player.dailyEvents.isEventRegistered($interactionNpc.info.id, "SuckForDiscount") == false>> <<set _finalCost = 100>> <<else>> <<set _discount = (100 * 20) / 100>> <<set _finalCost = 100 - _discount>> <</if>> <<else>> <<if $interactionNpc.info.characterWork == "Gift seller">> <div class="btn"><<button "Buy gifts" "NPCWorker_NoTime">><</button>></div> <<elseif $interactionNpc.info.characterWork == "Pharmacist">> <div class="btn"><<button "Buy medicine" "NPCWorker_NoTime">><</button>></div> <<elseif $interactionNpc.info.characterWork == "Grocer">> <div class="btn"><<button "Buy food" "NPCWorker_NoTime">><</button>></div> <<elseif $interactionNpc.info.characterWork == "Clothing Seller">> <div class="btn"><<button "Buy clothes" "NPCWorker_NoTime">><</button>></div> <<elseif $interactionNpc.info.characterWork == "Sex Shop Worker">> <div class="btn"><<button "Buy Toys" "NPCWorker_NoTime">><</button>></div> <</if>> <<if $interactionNpc.info.characterWork == "Photographer" && $player.characterEvents.isEventRegistered($player.info.id, "Buy a photo studio") == false>> <div class="btn"><<button "Photo shoot" "NPCWorker_NoTime">><</button>></div> <<elseif $interactionNpc.info.characterWork == "Porn director">> <div class="btn"><<button "Porn shoot" "PornShooting">><</button>></div> <</if>> <<if $interactionNpc.info.characterWork == "Plastic Surgeon">> <div class="btn"><<button "Plastic surgery" "NPCWorker_NoTime">><<set $isPlayer = true>><</button>></div> <</if>> <<if $player.dailyEvents.isEventRegistered($interactionNpc.info.id, "SuckForDiscount") == false>> <<set _finalCost = 100>> <<else>> <<set _discount = (100 * 20) / 100>> <<set _finalCost = 100 - _discount>> <</if>> <</if>> <<if $interactionNpc.info.characterWork == "Hooker">> <<if $player.characterEvents.isEventRegistered($player.info.id, "Became A Pimp") == true>> <div class="btn"><<button "Hooker management" "HookerTalk">><</button>></div> <<else>> <div class="btn"><<button "Sexual services (500$)" "AskSexServices">><</button>></div> <</if>> <</if>> <<if $interactionNpc.info.characterWork == "Pimp">> <div class="btn"><<button "Ask questions" "AskQuestions_Pimp">><</button>></div> <</if>> <div class="btn"><<button "Ask" "KnowsBetter">><</button>></div> <div class="btn"><<button "Talk About" "TalkAboutSome">><</button>></div> <div class="btn"><<button "Romance" "Romance">><</button>></div> <<if ($player.characterEvents.isEventRegistered($player.info.id, "Became A Pimp") == true && $interactionNpc.info.characterWork == "Pimp") || $interactionNpc.info.characterWork != "Pimp">> <div class="btn"><<button "Persuade" "Persuade">><<set $persuadeType = "Persuade">><</button>></div> <div class="btn"><<button "Give Item" "GiveItems">><<set $filterType = "All">><<unset $source>><</button>></div> <</if>> <div class="btn"><<button "Aggressive" "AggressiveActions">><</button>></div> <<if $interactionNpc.info.characterWork == "None" || $interactionNpc.info.characterWork == "Student" >> <<if $playerFollowers.length == 0 && $playerFollowers.includes($interactionNpc.info.id) == false>> <div class="btn"><<button "Follow me" "TryNPCFollow">> <</button>></div> <<elseif $playerFollowers.includes($interactionNpc.info.id) == false>> <div class="btn non-interacting"><<button "Follow me">><</button>></div> <</if>> <<if $playerFollowers.includes($interactionNpc.info.id)>> <div class="btn"><<button "Stop following me" $player.info.currentLocation>> <<set $playerFollowers.splice($playerFollowers.indexOf($interactionNpc.info.id))>> <<unset $interactionNpc $indexNPC>> <<set $gameSettings.allowSaves = true>> <<set $canShowStatsBtn = true>> <</button>></div> <</if>> /*finish */ <<if $player.money >= 150 && $player.dailyEvents.isEventRegistered($interactionNpc.info.id, "InviteToBar") == false>> <div class="btn"><<button "Invite to a bar ($150)" "InviteToBar">><<set $playerFollowers = []>><</button>></div> <<else>> <div class="btn non-interacting"><<button "Invite to a bar ($150)">><</button>></div> <</if>> <</if>> <</if>> </div> </div> <div class="padding-top"> <div class="btn"><<button "Stats" "DrawCharacterStats">><<set $fromInteractions = true>><<set $isPlayer = false>><</button>></div> </div> <div class="padding-top"> <div class="btn"><<button "Leave" "NudeCheck">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<Chat $interactionNpc "Sorry, I'm not working at this time. Please come during working hours.">> <div class="padding-top"> <div class="btn"><<button "Continue" "CharacterInteractions">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<set _jobTitle = ($interactionNpc.info.characterWork) == "None" ? "Citizen" : $interactionNpc.info.characterWork>> <<set _msg = "Hi. I'm " + $interactionNpc.info.firstName + ".">> <<Chat $interactionNpc _msg>> <<run $player.characterEvents.registerEvent($interactionNpc.info.id, "knows you", 1)>> <<IncreaseFriendship $player $interactionNpc 5>> <div class="padding-top"> <div class="btn"><<button "Continue" "CharacterInteractions">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <<if $interactionNpc.clothes.isNude(($interactionNpc.info.clothesPreference == "men")) == true>> <<if $interactionNpc.attributes.lust.value > 7 || $interactionNpc.info.characterWork == "Hooker">> <<unset $interactionNpc>> <<goto $player.info.currentLocation>> <<else>> <<run _pronoun = $interactionNpc.pronounHisHer().toLowerCase()>> <<run RandomRelocateCharacter($indexNPC)>> <<set _msg = $interactionNpc.info.firstName + " blushes and runs off to her room to put on " + _pronoun + " clothes.">> <<ChatMessage _msg>> <<BackButton "<<run $interactionNpc.wearMaximumClothing()>> <<run $interactionNpc.AddCloth(false, true)>> <<set $canShowStatsBtn = true>> <<unset $interactionNpc $indexNPC>> <<set $gameSettings.allowSaves = true>>">> <</if>> <<else>> <<unset $interactionNpc>> <<goto $player.info.currentLocation>> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if $player.characterEvents.isEventRegistered($player.info.id, "Became A Pimp") == true>> <<if $player.gender() == "Male">> <<Chat $interactionNpc "Daddy, have you decided to test my skills?">> <<else>> <<Chat $interactionNpc "Madam, have you decided to test my skills?">> <</if>> <<if $playerlock == true>> <div class="btn non-interacting"><<button "Sex">><</button>></div> <<else>> <div class="btn"><<button "Sex" "Sex">><<set $sexType = "hoocker">><</button>></div> <</if>> <<elseif $player.money < 500>> <<ChatMessage "You don't have enough money.">> <<BackButton "<<set $canShowStatsBtn = true>> <<unset $interactionNpc>> <<set $gameSettings.allowSaves = true>>">> <<elseif $player.status.energy.value >= 10>> <<run $player.money -= 500>> <<if $player.calculateFemininity() > 5>> <<Chat $interactionNpc "Sure, beauty. Let's find somewhere more secluded.">> <<else>> <<Chat $interactionNpc "Sure, handsome. Let's find somewhere more secluded.">> <</if>> <div class="padding-top"> <<if $playerlock == true>> <div class="btn non-interacting"><<button "Sex">><</button>></div> <<else>> <div class="btn"><<button "Sex" "Sex">><<set $sexType = "hoocker">><</button>></div> <</if>> </div> <<else>> <<ChatMessage "You're too tired for this.">> <<BackButton "<<set $canShowStatsBtn = true>> <<unset $interactionNpc>> <<set $gameSettings.allowSaves = true>>">> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <div class="padding-top"> <div class="btn-container"> <<TalkAbout $player $interactionNpc "music" "TalkAdoutMusic">> <<TalkAbout $player $interactionNpc "politics" "TalkAdoutPolitics">> <<TalkAbout $player $interactionNpc "films" "TalkAdoutFilms">> <<TalkAbout $player $interactionNpc "traveling" "TalkAdoutTraveling">> <<TalkAbout $player $interactionNpc "books" "TalkAdoutBooks">> <<TalkAbout $player $interactionNpc "study" "TalkAdoutStudy">> <<TalkAbout $player $interactionNpc "work" "TalkAdoutWork">> <<TalkAbout $player $interactionNpc "family" "TalkAdoutFamily">> <<TalkAbout $player $interactionNpc "games" "TalkAdoutGames">> </div> </div> <div class="padding-top"> <<if $fromPhone == true>> <div class="btn"><<button "Back" "CallToCharacter">><<unset $fromPhone>><</button>></div> <<else>> <div class="btn"><<button "Back" "CharacterInteractions">><</button>></div> <</if>> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <div class="padding-top"> <div class="btn-container"> <div class="btn"><<button "Chat" "AskAnything">><</button>></div> <div class="btn"><<button "What is your preferred partner gender?" "KnowsBetter_Ask">><<set $ask = "prefGender">><</button>></div> <div class="btn"><<button "What is your preferred sex role?" "KnowsBetter_Ask">><<set $ask = "sexRole">><</button>></div> <div class="btn"><<button "How dominant are you?" "KnowsBetter_Ask">><<set $ask = "dom">><</button>></div> <<if $player.characterEvents.isEventRegistered($interactionNpc.info.id, "Have a phone number") == false>> <div class="btn"><<button "Ask for a phone number" "AskPhoneNumber">><</button>></div> <</if>> <div class="btn"><<button "Tell me about yourself" "DailyConversation">><</button>></div> </div> </div> <div class="padding-top"> <div class="btn"><<button "Back" "CharacterInteractions">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<if $player.getRelationship($interactionNpc.info.id).metrics.friendship < 60>> <<Chat $interactionNpc "I don't trust you enough yet.">> <<else>> <<Chat $interactionNpc "Of course, here's my number.">> <<run $interactionNpc.characterEvents.registerEvent($player.info.id, "Have a phone number", 1)>> <<run $player.characterEvents.registerEvent($interactionNpc.info.id, "Have a phone number", 1)>> <</if>> <div class="padding-top"> <div class="btn"><<button "Back" "KnowsBetter">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<if $ask == "prefGender">> <<set _role = $interactionNpc.info.sexualPreference>> <<switch _role>> <<case "Manly">> <<Chat $interactionNpc "I prefer manly partners.">> <<case "Feminine">> <<Chat $interactionNpc "I prefer feminine partners.">> <<case "Bi">> <<Chat $interactionNpc "I don't have a preference in a partner.">> <</switch>> <<elseif $ask == "sexRole">> <<set _role = $interactionNpc.info.SexRole>> <<switch _role>> <<case "Active">> <<Chat $interactionNpc "I prefer to be active.">> <<case "Passive">> <<Chat $interactionNpc "I prefer to be passive.">> <<case "Versatile">> <<Chat $interactionNpc "I don't have a particular preference.">> <</switch>> <<elseif $ask == "dom">> <<set _dom = $interactionNpc.attributes.dominance.value>> <<if _dom <1>> <<Chat $interactionNpc "I'm not very dominant at all. I tend to be more passive and prefer others to take the lead.">> <<elseif _dom >= 1 && _dom < 5>> <<Chat $interactionNpc "I can be somewhat dominant when needed, but generally, I'm comfortable sharing control or letting others lead.">> <<elseif _dom >= 5 && _dom < 7>> <<Chat $interactionNpc "I often find myself taking a dominant role, especially in situations that require leadership or decision-making.">> <<elseif _dom >= 7>> <<Chat $interactionNpc "I am very dominant in most aspects of my life. I naturally take charge and prefer to lead and make decisions.">> <</if>> <</if>> <<SpendTime 5>> <div class="btn"><<button "Back" "KnowsBetter">><<unset $ask>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "WorldInfoPhrases">> <<ShowNpcIcon $interactionNpc>> <<set _phrase = _TalkPhrases[Math.floor(Math.random() * _TalkPhrases.length)]>> <<Chat $player _phrase>> <<Chat $interactionNpc _phrase>> <<unset _TalkPhrases>> <div class="padding-top"> <div class="btn"><<button "Back" "CharacterInteractions">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<set _pref = $interactionNpc.info.preferences.talk[$askAbout].value>> <<switch _pref>> <<case 1>> <<set _relUpgrd = {friendship: Random(-1.0, -4.0)}>> <<set _answer = $interactionNpc.info.firstName + " looks angry while talking about " + $askAbout + ".">> <<case 2>> <<set _relUpgrd = {friendship: Random(-1.0, -2.0)}>> <<set _answer = $interactionNpc.info.firstName + " looks bored while talking about " + $askAbout + ".">> <<case 3>> <<set _relUpgrd = {friendship: Random(2.0, 4.0)}>> <<set _answer = $interactionNpc.info.firstName + " looks interested while talking about " + $askAbout + ".">> <<case 4>> <<set _relUpgrd = {friendship: Random(4.0, 8.0)}>> <<set _answer = $interactionNpc.info.firstName + " actively keeps the conversation going.">> <</switch>> <<SetRelations $player $interactionNpc _relUpgrd>> <<ChatMessage _answer>> <<SpendTime 5>> <div class="padding-top"> <div class="btn"><<button "Back" "TalkAboutSome">><<unset $askAbout>><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<if $interactionNpc.dailyEvents.isEventRegistered($interactionNpc.info.id, "Chat") == false>> <<run $interactionNpc.dailyEvents.registerEvent($interactionNpc.info.id, "Chat", 1)>> <<set $theme = ["music", "politics", "films", "traveling", "books", "study", "work", "games"].random()>> <<set _pref = $interactionNpc.info.preferences.talk[$theme].value>> <<run $interactionNpc.info.preferences.knowPrefs[$theme] = true>> <<switch _pref>> <<case 1>> <<set _answer = "I hate " + $theme + ".">> <<case 2>> <<set _answer = "I'm not really interested in " + $theme + ".">> <<case 3>> <<set _answer = "I like " + $theme + ".">> <<case 4>> <<set _answer = "I adore " + $theme + ".">> <</switch>> <<Chat $interactionNpc _answer>> <<else>> <<Chat $interactionNpc "Enough talk for today.">> <</if>> <div class="padding-top"> <div class="btn"><<button "Back" "KnowsBetter">> <<unset $askAbout>><</button>></div> </div> <</nobr>>
<<nobr>> <<set _sexPrefResult = false>> <<switch $interactionNpc.info.sexualPreference>> <<case "Feminine">> <<if $player.calculateFemininity() > 5>> <<set _sexPrefResult = true>> <</if>> <<case "Manly">> <<if $player.calculateFemininity() <= 5>> <<set _sexPrefResult = true>> <</if>> <<case "Bi">> <<set _sexPrefResult = true>> <</switch>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<Chat $interactionNpc "I really like you. Would you like to be my partner?">> <div class="padding-top"> <div class="btn-container"> <div class="btn"><<button "Yes" "DatingProposal_Accept">><</button>></div> <div class="btn"><<button "No" "DatingProposal_Reject">><</button>></div> </div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<ChatMessage "You agreed to start dating $interactionNpc.info.firstName.">> <<run relationCheck($player, $interactionNpc, true)>> <<unset $pendingDatingRelation>> <div class="padding-top"> <div class="btn"><<button "Continue" "CharacterInteractions">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<ChatMessage "You refused to date $interactionNpc.info.firstName.">> <<IncreaseLove $player $interactionNpc -5>> <<unset $pendingDatingRelation>> <div class="padding-top"> <div class="btn"><<button "Continue" "CharacterInteractions">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "CheckSexPref">> <<if _sexPrefResult == false>> <<goto "DiscountNotPref">> <<elseif $player.status.energy.value < 10>> <<goto "Discount_NotEnoughEnergy">> <</if>> <<SetOralPick $interactionNpc.gender() $player.gender()>> <<set _youIcon = $player.getPhotoImage()>> <<Chat $interactionNpc "Alright, let's go to the storeroom. I think we can work out that discount.">> <<set _msg = "You and " + $interactionNpc.info.firstName + " enter the storeroom. Then, you kneel down in front of " + $interactionNpc.info.firstName>> <<ChatMessage _msg>> <<set _msg = $interactionNpc.info.firstName + " pulls out " + $interactionNpc.pronounHisHer() + " cock, and you start sucking it.">> <<Video _pick>> <<ChatMessage _msg>> <<run _textDialog = getSexDialog(true, "Oral", "Like")>> <<Chat $interactionNpc _textDialog>> <div class="padding-top"> <div class="btn"><<button "Continue" "Discount_Cum">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "CheckSexPref">> <<if _sexPrefResult == false>> <<goto "DiscountNotPref">> <</if>> <<set _youIcon = $player.getPhotoImage()>> <<Chat $interactionNpc "Hello! Can I help you?">> <<Chat $player "I was wondering, could you offer me a discount?">> <<set _msg = $interactionNpc.info.firstName + " looks around, then back at you. " + $interactionNpc.pronoun() + " raises an eyebrow in surprise.">> <<ChatMessage _msg>> <<Chat $interactionNpc "A discount? What do you mean?">> <<set _msg = "You lean closer to " + $interactionNpc.info.firstName + " and whisper something in" + $interactionNpc.pronounHisHer() + " ear. " + $interactionNpc.info.firstName + "'s eyes widen in shock, and " + $interactionNpc.pronoun() + " looks around to make sure no one is watching.">> <<ChatMessage _msg>> <<Chat $interactionNpc "Are you serious? You want me to give you a discount for... this?">> <<set _msg = "You nods confidently. " + $interactionNpc.info.firstName + " takes a deep breath and then smiles at you.">> <<ChatMessage _msg>> <div class="padding-top"> <div class="btn"><<button "Continue" "DiscontForBlowjob">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SpendEnergy $player 10>> <<run $player.dailyEvents.registerEvent($interactionNpc.info.id, "SuckForDiscount", 1)>> <<if $player.characterEvents.isEventRegistered($interactionNpc.info.id, "SuckForDiscount") == false>> <<run $player.characterEvents.registerEvent($interactionNpc.info.id, "SuckForDiscount", 1)>> <</if>> <<SetOralPick $interactionNpc.gender() $player.gender()>> <<if Random(0,100) >= 50>> <<SetOralCumInPick $interactionNpc.gender() $player.gender()>> <<set _msg = $interactionNpc.info.firstName + " is cumming in your mouth.">> <<else>> <<SetOralCumOutPick $interactionNpc.gender() $player.gender()>> <<set _msg = $interactionNpc.info.firstName + " is cumming on your face.">> <</if>> <<Video _pick>> <<ChatMessage _msg>> <<if $player.gender() == "Male">> <<Chat $interactionNpc "Good boy, you've earned a discount.">> <<elseif $player.gender() == "Shemale">> <<Chat $interactionNpc "Good tranny, you've earned a discount.">> <<else>> <<Chat $interactionNpc "Good girl, you've earned a discount.">> <</if>> <<ChatMessage "Throughout today, you have a 20% discount.">> <div class="padding-top"> <div class="btn"><<button "Back" "CharacterInteractions">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $interactionNpc "You're not my type.">> <div class="padding-top"> <div class="btn"><<button "Back" "CharacterInteractions">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatMessage "Not enough energy.">> <div class="padding-top"> <div class="btn"><<button "Back" "CharacterInteractions">><</button>></div> </div> <</nobr>> <<if $player.characterEvents.isEventRegistered($player.info.id, "EventName") == false>> <<run $player.characterEvents.registerEvent($player.info.id, "EventName", 1)>> <</if>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<set _curLoc = passage()>> <<if $source != "SpikeDrink_BarEvent" && $source != "SpikeDrink_NightClub" && $source != "ForceGiveItem">> <<include "Filter">> <</if>> <<if $player.inventory.items.size > 0>> <div class="item-shop-container"> <<for _item range $player.inventory.items>> <<if $filterType != "All">> <<if _item.type != _item.getItemTypeByString($filterType)>> <<continue>> <</if>> <</if>> <<capture _item>> <div class="shop-item"> __<<link '<h3 class="item-title"><<print _item.name>></h3>'>> <<run Dialog.setup(_item.name)>> <<run Dialog.wiki(_item.getImg())>> <<run Dialog.open();>> <</link>>__ <p class="item-quantity">Quantity: <<print _item.quantity>></p> <<if $source == "SpikeDrink_BarEvent">> <div class="btn"> <<button "To spike a drink" "SpikeDrind_InviteToBar">> <<run $filterType = _item.getItemStringByType(_item.type)>> <<set $item = _item>> <<unset $source>> <</button>></div> <<elseif $source == "SpikeDrink_NightClub">> <div class="btn"> <<button "Give" "SpikeDrink_NightClub">> <<run $filterType = _item.getItemStringByType(_item.type)>> <<set $item = _item>> <<unset $source>> <</button>></div> <<elseif $source == "ForceGiveItem">> <div class="btn"> <<button "Give" $player.info.currentLocation>> <<run $filterType = _item.getItemStringByType(_item.type)>> <<set $item = _item>> <<run $interactionNpc.useItem($item, $player)>> <<run $player.inventory.removeItem($item.name, 1)>> <<unset $source $filterType $item>> /* <<run RandomRelocateCharacter($indexNPC)>> */ <<LeaveInteractionSettings>> <</button>></div> <<else>> <div class="btn"> <<button "Give" "TryGiveItem">> <<run $filterType = _item.getItemStringByType(_item.type)>> <<set $item = _item>> <</button>></div> <</if>> </div> <</capture>> <</for>> </div> <</if>> <div class="padding-top"> <<if $source == "SpikeDrink_BarEvent" || $source == "ForceGiveItem">> <<BackButton "<<set $canShowStatsBtn = true>> <<unset $interactionNpc $interactionType $filterType $source>> <<set $gameSettings.allowSaves = true>>">> <<elseif $source == "SpikeDrink_NightClub">> <div class="btn"><<button "Back" "NightClub_DrinkGame_ApproachToNPC">> <<unset $filterType>> <</button>></div> <<else>> <div class="btn"><<button "Back" "CharacterInteractions">> <<unset $filterType>> <</button>></div> <</if>> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<set _itemUsed = false>> <<if $filterType == "Drug">> <<if $interactionNpc.dailyEvents.getOrRegisterEvent($interactionNpc.info.id, "GiveDrugs", 0) < 5>> <<run $interactionNpc.dailyEvents.registerEvent($interactionNpc.info.id, "GiveDrugs", 1)>> <<if ($interactionNpc.attributes.dominance.value < 5 && $player.getRelationship($interactionNpc.info.id).metrics.friendship > 90) || ($player.characterEvents.isEventRegistered($player.info.id, "Became A Pimp") == true && $interactionNpc.info.characterWork == "Hooker")>> <<Chat $interactionNpc "All right. I'll take it.">> <<set _itemUsed = true>> <<else>> <<Chat $interactionNpc "I don't want to take it.">> <</if>> <<else>> <<Chat $interactionNpc "I've taken enough today.">> <</if>> <<elseif $filterType == "Gift">> <<if $interactionNpc.dailyEvents.getOrRegisterEvent($interactionNpc.info.id, "GotGift" + $item.name, 0) < 1>> <<run $interactionNpc.dailyEvents.registerEvent($interactionNpc.info.id, "GotGift" + $item.name, 1)>> <<Chat $interactionNpc "Thank you.">> <<set _itemUsed = true>> <<else>> <<Chat $interactionNpc "You already gave it to me today.">> <</if>> <<elseif $filterType == "Clothing" || $filterType == "Food">> <<if $interactionNpc.info.clothesPreference == $item.additionalDetails.gender || ($player.characterEvents.isEventRegistered($player.info.id, "Became A Pimp") == true && $interactionNpc.info.characterWork == "Hooker")>> <<Chat $interactionNpc "Thank you.">> <<run $interactionNpc.inventory.addItem($item.copy(1))>> <<run $player.inventory.removeItem($item.name, 1)>> <<else>> <<set _clothItem = convertToClothingItem($item)>> <<set _msg = "I don't wear " + $item.additionalDetails.gender + "'s clothing.">> <<Chat $interactionNpc _msg>> <</if>> <</if>> <<if _itemUsed == true>> <<run $interactionNpc.useItem($item, $player)>> <<run $player.inventory.removeItem($item.name, 1)>> <</if>> <div class="padding-top"> <div class="btn"><<button "Back" "GiveItems">><<unset $item>><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <div class="padding-top"> <div class="btn-container"> <div class="btn"><<button "Instruct to remove the clothing" "Type_of_TakeOff_Clothes">><<set $typeRequest = "instruct">><</button>></div> <div class="btn"><<button "request to remove the clothing" "Type_of_TakeOff_Clothes">><<set $typeRequest = "request">><</button>></div> <div class="btn"><<button "Back" "CharacterInteractions">><</button>></div> </div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<set _allow = false>> <<switch $typeRequest>> <<case "instruct">> <<if ($interactionNpc.attributes.dominance.value < $player.attributes.dominance.value || $interactionNpc.attributes.dominance.value == $interactionNpc.attributes.dominance.max) || ($player.characterEvents.isEventRegistered($player.info.id, "Became A Pimp") == true && $interactionNpc.info.characterWork == "Hooker")>> <<set _allow = true>> <<else>> <<ChatMessage "Not enough dominance.">> <</if>> <<if $interactionNpc.attributes.dominance.value > 4 && (($player.characterEvents.isEventRegistered($player.info.id, "Became A Pimp") == true && $interactionNpc.info.characterWork == "Hooker") == false)>> <<set _allow = false>> <<set _msg = $interactionNpc.info.firstName + "'s dominance is too high">> <<ChatMessage _msg>> <</if>> <<case "request">> <<if $player.getRelationship($interactionNpc.info.id).metrics.love > 80>> <<set _allow = true>> <<else>> <<ChatMessage "Not enough love level.">> <</if>> <</switch>> <<if _allow == true>> <<Chat $interactionNpc "Okay, I'll take it off.">> <<run $interactionNpc.takeOffClothing($interactionNpc.clothes.getFirstClothingItemByType($clothID))>> <<else>> <<Chat $interactionNpc "I won't do that.">> <</if>> <div class="padding-top"> <div class="btn"><<button "Back" "CharacterInteractions">><<unset $clothID $typeRequest>><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<if $interactionNpc.inventory.items.size > 0>> <div class="item-shop-container"> <<for _item range $interactionNpc.inventory.items>> <<if _item.type != _item.getItemTypeByString("Clothing")>> <<continue>> <</if>> <<capture _item>> <div class="shop-item"> __<<link '<h3 class="item-title"><<print _item.name>></h3>'>> <<run Dialog.setup(_item.name)>> <<run Dialog.wiki(_item.getImg())>> <<run Dialog.open();>> <</link>>__ <p class="item-quantity">Quantity: <<print _item.quantity>></p> <p class="item-price">Price: <<print _item.price>>$</p> <p class="item-price">Weight: <<print _item.weight>></p> <div class="btn-row"> <div style="flex-grow: 1; flex-basis: 0; margin: 0 5px;" class="btn"> <<if _item.type == _item.getItemTypeByString("Clothing")>> <<button "Put on" "ChangeNPC_Cloth">> <<run $interactionNpc.useItem(_item, $interactionNpc)>> <<run $interactionNpc.inventory.removeItem(_item.name, 1)>> <</button>> <</if>> </div> <div style="flex-grow: 1; flex-basis: 0; margin: 0 5px;" class="btn"> <<button "Throw it" "ChangeNPC_Cloth">> <<run $interactionNpc.inventory.removeItem(_item.name, 1)>> <</button>> </div> </div> </div> <</capture>> <</for>> </div> <</if>> <div class="padding-top"> <<BackButton "<<set $canShowStatsBtn = true>>">> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _oldNpcInt = $NpcInteractions>> <<set $NpcInteractions = []>> <<set $NpcInteractions = _oldNpcInt>> <div class="padding-top"> <div class="btn"><<button 'Talk to $talkPairNPC1.info.firstName' 'Checkknowns'>> <<set $indexNPC = $talkPairIndexNPC1>> <<set $interactionNpc = $Characters[$indexNPC]>> <<unset $talkPairNPC1 $talkPairNPC2 $talkPairIndexNPC1 $talkPairIndexNPC2>> <</button>></div> </div> <div class="padding-top"> <div class="btn"><<button 'Talk to $talkPairNPC2.info.firstName' 'Checkknowns'>> <<set $indexNPC = $talkPairIndexNPC2>> <<set $interactionNpc = $Characters[$indexNPC]>> <<unset $talkPairNPC1 $talkPairNPC2 $talkPairIndexNPC1 $talkPairIndexNPC2>> <</button>></div> </div> <div class="padding-top"> <div class="btn"><<button "Back" $player.info.currentLocation>> <<unset $talkPairNPC1 $talkPairNPC2 $talkPairIndexNPC1 $talkPairIndexNPC2>> <</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <div class="padding-top"> <div class="btn-container"> <div class="btn"><<button "Hug" "TryInteraction">><<set $interaction = "Hug">><</button>></div> <div class="btn"><<button "Kiss" "TryInteraction">><<set $interaction = "Kiss">><</button>></div> <div class="btn"><<button "Slap ass" "TryInteraction">><<set $interaction = "Touch Ass">><</button>></div> <<if $interactionNpc.body.breastSize.value > 0>> <div class="btn"><<button "Touch boobs" "TryInteraction">><<set $interaction = "Touch boobs">><</button>></div> <</if>> <<if $interactionType == "Romance">> <div class="btn"><<button "Ask for sex" "SexCheck">><</button>></div> <<else>> <<if $playerlock == true>> <div class="btn non-interacting"><<button "Sex">><</button>></div> <<else>> <div class="btn"><<button "Sex" "Rape">><<set $sexType = "Rape">><</button>></div> <</if>> <</if>> </div> </div> <div class="padding-top"> <<if $interaction == "Romance">> <div class="btn"><<button "Back" "Romance">><<unset $interaction>><</button>></div> <<else>> <div class="btn"><<button "Back" "AggressiveActions">><<unset $interaction>><</button>></div> <</if>> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _friendship = $player.getRelationship($interactionNpc.info.id).metrics.friendship>> <<set _love = $player.getRelationship($interactionNpc.info.id).metrics.love>> <<set _fear = $player.getRelationship($interactionNpc.info.id).metrics.fear>> <<set _result = false>> <<switch $interaction>> <<case "Hug">> <<if _friendship >= 65 || _love >= 60 || _fear > 30 || ($player.characterEvents.isEventRegistered($player.info.id, "Became A Pimp") == true && $interactionNpc.info.characterWork == "Hooker")>> <<set _result = true>> <<run _msg = "You and " + $interactionNpc.info.firstName + " are hugging">> <<else>> <<ChatMessage "Friendship level is below 65 or love level is below 60 or fear level is below 30.">> <</if>> <<case "Kiss">> <<if _love >= 75 || _fear > 50 ||($player.characterEvents.isEventRegistered($player.info.id, "Became A Pimp") == true && $interactionNpc.info.characterWork == "Hooker")>> <<set _result = true>> <<run _msg = "You and " + $interactionNpc.info.firstName + " are kissing">> <<else>> <<ChatMessage "Love level is below 75 or fear level is below 50.">> <</if>> <<case "Touch Ass">> <<if _love >= 85 || _fear > 75 || ($player.characterEvents.isEventRegistered($player.info.id, "Became A Pimp") == true && $interactionNpc.info.characterWork == "Hooker")>> <<set _result = true>> <<run _msg = "You're touching " + $interactionNpc.info.firstName + "'s ass">> <<else>> <<ChatMessage "Love level is below 85 or fear level is below 75.">> <</if>> <<case "Touch boobs">> <<if _love >= 90 || _fear > 80 || ($player.characterEvents.isEventRegistered($player.info.id, "Became A Pimp") == true && $interactionNpc.info.characterWork == "Hooker")>> <<set _result = true>> <<run _msg = "You're touching " + $interactionNpc.info.firstName + "'s boobs">> <<else>> <<ChatMessage "Love level is below 90 or fear level is below 80.">> <</if>> <</switch>> <<if $interactionNpc.dailyEvents.isEventRegistered($interactionNpc.info.id, $interaction) == false && _result == true>> <<run $interactionNpc.dailyEvents.registerEvent($interactionNpc.info.id, $interaction, 1)>> <<set _relUpgrd = {love: Random(2.0, 4.0, true)}>> <<SetCharProgression $interactionNpc 'lust' 5 false>> <<SetRelations $player $interactionNpc _relUpgrd>> <<elseif _result == false>> <<set _relUpgrd = {love: Random(-2.0, -4.0, true)}>> <<run _msg = $interactionNpc.info.firstName + " gave you a disgruntled look and moved away from you.">> <</if>> <<if $interaction != "Hug" && _result == true && ($interaction == "Touch Ass" && $interactionNpc.gender() == "Male") == false>> <<Interaction $player $interactionNpc>> <</if>> <<ChatMessage _msg>> <div class="padding-top"> <div class="btn"><<button "Back" "Interaction">><<unset $interaction>><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<include "CheckSexPref">> <<if $interactionNpc.info.characterWork == "Hooker">> <<if $player.characterEvents.isEventRegistered($player.info.id, "Became A Pimp") == true>> <<if $player.gender() == "Male">> <<Chat $interactionNpc "Daddy, have you decided to test my skills?">> <<else>> <<Chat $interactionNpc "Madam, have you decided to test my skills?">> <</if>> <<if $playerlock == true>> <div class="btn non-interacting"><<button "Sex">><</button>></div> <<else>> <div class="btn"><<button "Sex" "Sex">><<set $sexType = "hoocker">><</button>></div> <</if>> <<else>> <<Chat $interactionNpc "Sorry, baby, I only fuck for money.">> <div class="btn"><<button "Sexual services (500$)" "AskSexServices">><</button>></div> <</if>> <<elseif _sexPrefResult == true>> <<run _love = $player.getRelationship($interactionNpc.info.id).metrics.love>> <<if $player.characterEvents.isEventRegistered($player.info.id, "Became A Pimp") == true && $interactionNpc.info.characterWork == "Hooker">> <<if $player.gender() == "Male">> <<Chat $interactionNpc "Daddy, have you decided to test my skills?">> <<else>> <<Chat $interactionNpc "Madam, have you decided to test my skills?">> <</if>> <<if $playerlock == true>> <div class="btn non-interacting"><<button "Sex">><</button>></div> <<else>> <div class="btn"><<button "Sex" "Sex">><<set $sexType = "hoocker">><</button>></div> <</if>> <<elseif _love > 75 && _love < 90>> <<ChatMessage 'Love level is below 90.'>> <<Chat $interactionNpc "Sorry, baby, I'm not ready for that yet.">> <<elseif _love > 60 && _love <= 75>> <<ChatMessage 'Love level is below 90.'>> <<Chat $interactionNpc "Sorry, I don't think that's a good idea.">> <<elseif _love > 50 && _love <= 60>> <<ChatMessage 'Love level is below 90.'>> <<Chat $interactionNpc "I'm not doing this with you.">> <<elseif _love > 35 && _love <= 50>> <<ChatMessage 'Love level is below 90.'>> <<Chat $interactionNpc "What makes you think I'm gonna do this with you?">> <<elseif _love <= 35>> <<ChatMessage 'Love level is below 90.'>> <<Chat $interactionNpc "Get out of here, you pervert.">> <<elseif $Locations[$player.info.currentLocation].length > 1>> <<Chat $interactionNpc 'It\'s too crowded here, let\'s find a more secluded place.'>> <<else>> <<goto "ChooseSexType">> <</if>> <<else>> <<if $interactionNpc.info.sexualPreference == "Manly">> <<ChatMessage 'Your femininity is too high.'>> <<else>> <<ChatMessage 'Your femininity is too low.'>> <</if>> <<ChatMessage '$interactionNpc.info.firstName looks at you with disgust.'>> <<Chat $interactionNpc "You're not my type.">> <<set _relUpgrd = {love: Random(-2.0, -1.0, true)}>> <</if>> <div style="margin-top: 10px;"> <<BackButton "<<set $canShowStatsBtn = true>> <<unset $interactionNpc $interactionType>> <<set $gameSettings.allowSaves = true>>">> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _fear = $player.getRelationship($interactionNpc.info.id).metrics.fear>> <<if _fear < 80>> <<ChatMessage 'Fear level is below 80.'>> <<else>> <<goto "Sex">> <</if>> <div style="margin-top: 10px;"> <<BackButton "<<set $canShowStatsBtn = true>> <<unset $interactionNpc $interactionType>> <<set $gameSettings.allowSaves = true>>">> </div> <</nobr>>
<<nobr>> <<set _isCrowd = false>> <<if $Locations[$player.info.currentLocation].length > 1>> <<set _foundNPC = 0>> <<elseif $Locations[$player.info.currentLocation].length > 1>> <<set _isCrowd = true>> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckChance "Interaction_ChaseAway_Succes" "Interaction_ChaseAway_Failed" "Interaction_ChaseAway_Failed_Twice" "Interactions_Aggressive" "ChaseAway" '{createBackButton: true, createTwiceBackButton: false}'>> <</nobr>>
<<nobr>> <<set _phrase = [ "Okay, okay! I'm leaving, just don’t hurt me!", "Alright, I’m going! No need to get aggressive!", "Fine, I’m out of here! You don’t have to tell me twice.", "Whoa, whoa, calm down! I’m already backing off!", "Alright, alright! I don’t want any trouble, I’m gone!", ].random()>> <<Chat $interactionNpc _phrase>> <<run _setFear = Random(1,5)>> <<IncreaseFear $player $interactionNpc _setLove>> <<run RandomRelocateCharacter($indexNPC)>> <div style="margin-top: 10px;"> <div class="btn"><<button "Leave" "Bar">> <<unset $interactionNpc $indexNPC>> <<SetSaveBtn true>> <</button>></div> </div> <</nobr>>
<<nobr>> <<set _phrase = [ "Oh, so that’s how it is, huh? You think you can just get rid of me?", "What’s your problem? I’m not going anywhere!", "You don’t get to tell me what to do!", "I don’t know who you think you are, but you don’t scare me!", ].random()>> <<Chat $interactionNpc _phrase>> <<set _moodDecrease = Random(-1, -5)>> <<SetMood $interactionNpc _moodDecrease>> <<set _decreaseRelations = Random (-1, -3)>> <<IncreaseFriendship $player $interactionNpc _decreaseRelations>> <</nobr>>
<<nobr>> <<set _phrase = [ "You think you can just push me around? Let’s see you try!", "Oh, I’m not going anywhere until we settle this!", "You want me gone? You’re gonna have to make me leave!", "Alright, you’re asking for it! Come on, let’s go!", "I’ve had enough of your attitude. Time to put you in your place!", ].random()>> <<Chat $interactionNpc _phrase>> <<set _moodDecrease = Random(-5, -10)>> <<SetMood $interactionNpc _moodDecrease>> <<set _decreaseRelations = Random (-5, -10)>> <<IncreaseFriendship $player $interactionNpc _decreaseRelations>> <div class="padding-top"> <div class="btn"><<button "Fight">> <<set _battleSetControls = {attack: true, seduce: true, items: true, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls undefined undefined>> <</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _decreaseRelations = Random (-8, -25)>> <<IncreaseFriendship $player $interactionNpc _decreaseRelations>> <<set _battleSetControls = {attack: true, seduce: true, items: true, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls undefined undefined>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<run _contentAllow = CheckContentFilter($interactionNpc)>> <<run _servantsCharacter = $Characters.filter((character) => character.characterEvents.isEventRegistered($player.info.id, "isServant") == true && character.info.id != $interactionNpc.info.id)>> <div class="padding-top"> <div class="btn-container"> <div class="btn"><<button "Use Drugs" "GiveItems">><<set $filterType = "Drug">><<set $source = "ForceGiveItem">><</button>></div> <<if _contentAllow == false>> <div class="btn non-interacting" id="sex-btn"><<button "Sex">><</button>></div> <<done>> <<run addHoverTooltip('sex-btn', 'Disabled by content filter')>> <</done>> <<elseif $playerlock == true>> <div class="btn non-interacting" id="sex-btn"><<button "Sex">><</button>></div> <<done>> <<run addHoverTooltip('sex-btn', 'You are locked and cannot perform active sex')>> <</done>> <<else>> <div class="btn"><<button "Sex" "Sex">><<set $sexType = "Rape">><</button>></div> <</if>> <<set _servantText = 'Make ' + $interactionNpc.pronounHimHer() + ' your servant (' + _servantsCharacter.length + '/1)'>> <<if $interactionNpc.characterEvents.isEventRegistered($player.info.id, "isServant") == false && $player.characterEvents.isEventRegistered($player.info.id, "CanTakeServants") == true && ($interactionNpc.info.characterWork == 'None' || $interactionNpc.info.characterWork == 'Student' || $interactionNpc.info.characterWork == 'Citizen')>> <<if _servantsCharacter.length == 0>> <div class="btn"><<button _servantText $player.info.currentLocation>><<include "MakeNpcServant">><<LeaveInteractionSettings>><</button>></div> <<else>> <div class="btn non-interacting"><<button _servantText>><</button>></div> <</if>> <</if>> <div class="btn"><<button "Leave" $player.info.currentLocation>><<run RandomRelocateCharacter($indexNPC)>><<LeaveInteractionSettings>><</button>></div> </div> </div> <</nobr>>
<<nobr>> <<if $interactionNpc.characterEvents.isEventRegistered($player.info.id, "isServant") == false>> <<run $interactionNpc.characterEvents.registerEvent($player.info.id, "isServant", 1)>> <</if>> <<run RandomRelocateCharacter($indexNPC, $player.info.currentLocation)>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckChance "Interaction_Insult_Succes" "Interaction_Insult_Failed" "Interaction_Insult_Failed_twice" "Interactions_Aggressive" "Insult" '{createBackButton: true, createTwiceBackButton: false}'>> <</nobr>>
<<nobr>> <<set _phrase = [ "W-why are you saying that? What did I ever do to you?", "Please, just leave me alone... I don’t want any trouble.", "I didn’t mean to upset you... I swear.", "Okay, okay, I get it! Just back off, alright?", "I... I don’t need this right now, just go away!", ].random()>> <<Chat $interactionNpc _phrase>> <<run _setFear = Random(1,5)>> <<IncreaseFear $player $interactionNpc _setLove>> <div class="padding-top"> <div class="btn"><<button "Continue" "Interactions_Aggressive">><</button>></div> </div> <</nobr>>
<<nobr>> <<set _phrase = [ "You seriously think that’s gonna get to me? Try harder.", "Oh, so that's how it's gonna be, huh? Real mature.", "What’s your problem? You got nothing better to do?", "Yeah? Keep talking. We’ll see how far you get.", "Oh, I’ve heard worse from people a lot tougher than you.", ].random()>> <<Chat $interactionNpc _phrase>> <<set _moodDecrease = Random(-1, -5)>> <<SetMood $interactionNpc _moodDecrease>> <<set _decreaseRelations = Random (-1, -3)>> <<IncreaseFriendship $player $interactionNpc _decreaseRelations>> <</nobr>>
<<nobr>> <<set _phrase = [ "That’s it, you’ve crossed the line! Come on!", "You wanna say that again to my face?", "Alright, I've had enough of your mouth. Let’s go!", "You’re asking for it, and I’m happy to deliver!", "You wanted a reaction? Well, here it is!", ].random()>> <<Chat $interactionNpc _phrase>> <<set _moodDecrease = Random(-5, -10)>> <<SetMood $interactionNpc _moodDecrease>> <<set _decreaseRelations = Random (-5, -10)>> <<IncreaseFriendship $player $interactionNpc _decreaseRelations>> <div class="padding-top"> <div class="btn"><<button "Fight">> <<set _battleSetControls = {attack: true, seduce: true, items: true, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls undefined undefined>> <</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckChance "Interaction_GetNumber_Success" "NPCReject" "NPCReject_Again" "Interactions_Ask" "GetNumber" '{createBackButton: true, createTwiceBackButton: true}'>> <</nobr>>
<<nobr>> <<Chat $interactionNpc "Of course, here's my number.">> <<run $interactionNpc.characterEvents.registerEvent($player.info.id, "Have a phone number", 1)>> <<run $player.characterEvents.registerEvent($interactionNpc.info.id, "Have a phone number", 1)>> <div class="padding-top"> <div class="btn"><<button "Back" "Interactions_Ask">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckChance "TellAboutYou_Success" "NPCReject" "NPCReject_Again" "Interactions_Ask" "TellAboutYou" '{createBackButton: true, createTwiceBackButton: true}'>> <</nobr>>
<<nobr>> <<run _phrase = getTellAboutYouPhrase($interactionNpc)>> <<Chat $interactionNpc _phrase>> <div class="padding-top"> <div class="btn"><<button "Continue" "Interactions_Ask">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckChance "Interaction_WhatDoYouThinkOfMe_Success" "NPCReject" "NPCReject_Again" "Interactions_Ask" "WhatDoYouThinkOfMe" '{createBackButton: true, createTwiceBackButton: true}'>> <</nobr>>
<<nobr>> <<set _curFriendship = $interactionNpc.getRelationship($player.info.id).metrics._friendship.value>> <<set _curLove = $interactionNpc.getRelationship($player.info.id).metrics._love.value>> <<set _curFear = $interactionNpc.getRelationship($player.info.id).metrics._fear.value>> <<set _finalPhrase = "">> <<set _friendship_Phrase_0 = [ "I'd rather not see you around.", "We don't exactly get along, do we?", "Let's keep our distance.", "I'd prefer if we didn't interact.", "There's no point pretending we're friends.", ].random()>> <<set _friendship_Phrase_1 = [ "We might not be close, but we can be civil.", "I don't know you well, but maybe that can change.", "We don't talk much, but I'm open to it.", "Perhaps we could find some common ground.", "I'm willing to be acquaintances if you are.", ].random()>> <<set _friendship_Phrase_2 = [ "It's nice catching up with you.", "We should hang out more often.", "I enjoy our chats.", "You're pretty cool to be around.", "I think we're becoming good friends.", ].random()>> <<set _friendship_Phrase_3 = [ "You're one of my closest friends.", "I really appreciate our friendship.", "You always know how to make me smile.", "I feel like I can tell you anything.", "You're a true friend.", ].random()>> <<set _friendship_Phrase_4 = [ "You're my best friend; you mean the world to me!", "I can't imagine life without you.", "We're like two peas in a pod.", "Our friendship is unbreakable.", "You're like family to me.", ].random()>> <<if _curFriendship <= -25>> <<set _finalPhrase += _friendship_Phrase_0>> <<elseif _curFriendship > 25 && _curFriendship <= 50>> <<set _finalPhrase += _friendship_Phrase_1>> <<elseif _curFriendship > 50 && _curFriendship <= 75>> <<set _finalPhrase += _friendship_Phrase_2>> <<elseif _curFriendship > 75 && _curFriendship < 90>> <<set _finalPhrase += _friendship_Phrase_3>> <<elseif _curFriendship >= 90>> <<set _finalPhrase += _friendship_Phrase_4>> <</if>> <<set _love_Phrase_0 = [ "I don't feel any love for you.", "My heart doesn't hold love for you.", "There's no love between us.", "I can't say that I love you at all.", "Love isn't something I feel when it comes to you.", ].random()>> <<set _love_Phrase_1 = [ "I like you a bit, but it's not quite love.", "There's a small spark, but love might be too strong a word.", "I have some feelings, but I wouldn't call it love yet.", "Maybe someday I'll love you, but not right now.", "I care about you slightly, but it's not love.", ].random()>> <<set _love_Phrase_2 = [ "I think I'm starting to love you.", "My feelings are growing; love might be on the horizon.", "I feel half in love with you.", "Love is something I'm beginning to feel for you.", "I'm halfway to loving you.", ].random()>> <<set _love_Phrase_3 = [ "I'm deeply in love with you.", "My love for you is strong and real.", "I love you more with each passing day.", "My heart is filled with love for you.", "I can't deny how much I love you.", ].random()>> <<set _love_Phrase_4 = [ "I'm completely and utterly in love with you!", "You are the love of my life.", "I adore you with all my heart.", "My love for you knows no bounds.", "I love you more than anything in this world.", ].random()>> <<if checkSexPrefWithChar($interactionNpc, $player) == false>> <<set _love_Phrase_0 = "Sorry, but you're just not my type.">> <<set _love_Phrase_1 = _love_Phrase_0>> <<set _love_Phrase_2 = _love_Phrase_0>> <<set _love_Phrase_3 = _love_Phrase_0>> <<set _love_Phrase_4 = _love_Phrase_0>> <</if>> <<if _curLove <= 25>> <<set _finalPhrase += " " + _love_Phrase_0>> <<elseif _curLove > 25 && _curLove <= 50>> <<set _finalPhrase += " " + _love_Phrase_1>> <<elseif _curLove > 50 && _curLove <= 75>> <<set _finalPhrase += " " + _love_Phrase_2>> <<elseif _curLove > 75 && _curLove < 90>> <<set _finalPhrase += " " + _love_Phrase_3>> <<elseif _curLove >= 90>> <<set _finalPhrase += " " + _love_Phrase_4>> <</if>> <<set _fear_Phrase_0 = [ "I don't feel any fear towards you.", "You don't scare me at all.", "There's nothing about you that I fear.", "I'm completely unafraid of you.", "Fear isn't something I associate with you.", ].random()>> <<set _fear_Phrase_1 = [ "Sometimes you make me a little nervous.", "I feel a slight fear around you occasionally.", "There's a tiny bit of fear when I'm with you.", "You can be a bit intimidating at times.", "I have minor fears about you, but nothing major.", ].random()>> <<set _fear_Phrase_2 = [ "I often feel afraid when we're together.", "You make me uneasy and somewhat fearful.", "I can't help but feel a sense of fear around you.", "My fear of you is growing.", "Being near you fills me with mixed emotions, including fear.", ].random()>> <<set _fear_Phrase_3 = [ "I'm genuinely afraid of you.", "You instill a strong fear in me.", "My fear towards you is significant.", "I feel a deep fear when you're around.", "I can't shake off how much you scare me.", ].random()>> <<set _fear_Phrase_4 = [ "I'm absolutely terrified of you!", "My fear of you is overwhelming.", "I fear you more than anything else.", "I can't be near you because of how much I fear you.", "You are the source of my greatest fear.", ].random()>> <<if _curFear <= -60>> <<set _finalPhrase += " " + _fear_Phrase_0>> <<elseif _curFear > -60 && _curFear <= -20>> <<set _finalPhrase += " " + _fear_Phrase_1>> <<elseif _curFear > -20 && _curFear <= 20>> <<set _finalPhrase += " " + _fear_Phrase_2>> <<elseif _curFear > 20 && _curFear < 60>> <<set _finalPhrase += " " + _fear_Phrase_3>> <<elseif _curFear >= 60>> <<set _finalPhrase += " " + _fear_Phrase_4>> <</if>> <<Chat $interactionNpc _finalPhrase>> <div class="padding-top"> <div class="btn"><<button "Continue" "Interactions_Ask">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckChance "Interaction_WhatsUp_Success" "NPCReject" "NPCReject_Again" "Interactions_Ask" "WhatsUp" '{createBackButton: true, createTwiceBackButton: true}'>> <</nobr>>
<<nobr>> <<set _positivePhrase = [ "Couldn't be better, everything's going great!", "Doing fantastic, thanks for asking!", "Life's treating me well, can't complain!", "Absolutely wonderful, how about you?", "Feeling on top of the world today!" ].random()>> <<set _neutralPhrase = [ "I'm okay, just taking it one day at a time.", "Not too bad, just the usual grind.", "Doing fine, same old, same old.", "Hanging in there, nothing new to report.", "I'm all right, getting through the day." ].random()>> <<set _negativePhrase = [ "Honestly, it's been a rough day.", "Could be better, to tell the truth.", "Feeling a bit down today.", "Not the best day, unfortunately.", "I've had better days, to be honest." ].random()>> <<set _mood = $interactionNpc.behavior.mood.value>> <<if _mood >= 70>> <<Chat $interactionNpc _positivePhrase>> <<elseif _mood > 30 && _mood < 70>> <<Chat $interactionNpc _neutralPhrase>> <<elseif _mood <= 30>> <<Chat $interactionNpc _negativePhrase>> <</if>> <div class="padding-top"> <div class="btn"><<button "Continue" "Interactions_Ask">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckChance 'Interactions_Caress_Succes' 'Interactions_Caress_Failed' 'Interactions_Caress_Failed_Twice' 'Interactions_Contact' 'Caress' '{createBackButton: true, createTwiceBackButton: true}'>> <</nobr>>
<<nobr>> <<set _phrase = [ "Heh, that actually feels kinda nice...", "Okay, okay, I guess I don’t mind.", "Aww, I didn’t think I'd enjoy this, but here we are.", "Alright, you win... just don’t mess up my hair!", "Fine, you can keep doing that... just for a little while.", ].random()>> <<Chat $interactionNpc _phrase>> <<set _changeValue = Random(10,15)>> <<SetCharProgression $interactionNpc 'lust' _changeValue false>> <<set _setMood = Random(1, 5)>> <<SetMood $interactionNpc _setMood>> <<set _setFriendship = Random(1, 5)>> <<IncreaseFriendship $player $interactionNpc _setFriendship>> <div class="padding-top"> <div class="btn"><<button "Continue" "Interactions_Contact">><</button>></div> </div> <</nobr>>
<<nobr>> <<set _phrase = [ "Uh, no thanks. I’m not into that.", "Sorry, but I’d rather you not.", "Hey, hands off! I don’t like that.", "Nope, that’s a bit too personal for me.", "I’m good, really. No need to go there.", ].random()>> <<Chat $interactionNpc _phrase>> <<set _moodDecrease = Random(-5, -10)>> <<SetMood $interactionNpc _moodDecrease>> <div class="padding-top"> <<ChanceButton 'Attempt by force' 'Interactions_Caress_TryForce' $player $interactionNpc '{Friend: 0, Love: 0, Fear: 35, Lust: 0, CheckResistance: true, CheckSexPref: false}' 'CaressTryForce'>> </div> <</nobr>>
<<nobr>> <<set _phrase = [ "I’ve told you before, don’t do that!", "Seriously? Stop asking, it’s not gonna happen.", "How many times do I have to say no?", "This is getting annoying. Just stop already.", "Enough. I'm done saying no, so just drop it.", ].random()>> <<Chat $interactionNpc _phrase>> <<set _moodDecrease = Random(-5, -10)>> <<SetMood $interactionNpc _moodDecrease>> <<set _decreaseRelations = Random (-5, -10)>> <<IncreaseFriendship $player $interactionNpc _decreaseRelations>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckChance 'Interactions_Caress_TryForce_Succes' 'Interactions_Caress_TryForce_Failed' 'Double_Failed_Passage' 'Interactions_Contact' 'Caress_TryForce' '{createBackButton: false, createTwiceBackButton: false}'>> <</nobr>>
<<nobr>> <<set _phrase = [ "I said I didn’t want that... but fine, whatever.", "Can you just get it over with already?", "I... I told you no, but I guess you don’t care.", "Fine, if it makes you happy... just don’t hurt me.", "Okay, okay... just stop it as soon as you’re done, alright?", ].random()>> <<Chat $interactionNpc _phrase>> <<set _changeValue = Random(10,20)>> <<SetCharProgression $interactionNpc 'lust' _changeValue false>> <<run _setFear = Random(1,5)>> <<IncreaseFear $player $interactionNpc _setLove>> <div class="padding-top"> <div class="btn"><<button "Continue" "Interactions_Contact">><</button>></div> </div> <</nobr>>
<<nobr>> <<set _phrase = [ "That’s it! I warned you—hands off!", "I told you not to touch me! Now you’re gonna regret it!", "You think you can do whatever you want? Not with me!", "Get your hands off me! You’re not walking away from this.", "Alright, you asked for it! Now it’s my turn!", ].random()>> <<Chat $interactionNpc _phrase>> <<set _moodDecrease = Random(-15, -25)>> <<SetMood $interactionNpc _moodDecrease>> <<set _decreaseRelations = Random (-10, -30)>> <<IncreaseFriendship $player $interactionNpc _decreaseRelations>> <div class="padding-top"> <div class="btn"><<button "Fight">> <<set _battleSetControls = {attack: true, seduce: true, items: true, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls undefined undefined>> <</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckChance 'Interactions_Hug_Succes' 'Interactions_Hug_Failed' 'Interactions_Caress_Hug_Twice' 'Interactions_Contact' 'Hug' '{createBackButton: true, createTwiceBackButton: true}'>> <</nobr>>
<<nobr>> <<set _phrase = [ "Oh... okay, I guess I needed that.", "Alright, alright, come here, you big softy.", "Wow, you’re warm... this actually feels kinda nice.", "Heh, fine, I’ll let you have your hug.", "I wasn’t expecting that, but I’m not complaining.", ].random()>> <<Chat $interactionNpc _phrase>> <<set _changeValue = Random(1,5)>> <<set _changeValue = Random(10,15)>> <<SetCharProgression $interactionNpc 'lust' _changeValue false>> <<IncreaseLove $player $interactionNpc _setLove>> <<set _setMood = Random(1, 5)>> <<SetMood $interactionNpc _setMood>> <<set _setFriendship = Random(1, 5)>> <<IncreaseFriendship $player $interactionNpc _setFriendship>> <div class="padding-top"> <div class="btn"><<button "Continue" "Interactions_Contact">><</button>></div> </div> <</nobr>>
<<nobr>> <<set _phrase = [ "Sorry, but I’m not comfortable with that.", "I appreciate the thought, but I’d rather not.", "Let’s just keep our distance, alright?", "No, I’m good, I don’t want a hug.", ].random()>> <<Chat $interactionNpc _phrase>> <<set _moodDecrease = Random(-5, -10)>> <<SetMood $interactionNpc _moodDecrease>> <div class="padding-top"> <<ChanceButton 'Attempt by force' 'Interactions_Caress_Hug_Twice' $player $interactionNpc '{Friend: 0, Love: 0, Fear: 35, Lust: 0, CheckResistance: true, CheckSexPref: false}' 'HugTryForce'>> </div> <</nobr>>
<<nobr>> <<set _phrase = [ "Seriously, stop asking, I don’t want a hug!", "I’ve already told you no. Just drop it.", "Come on, it’s getting annoying. Take a hint.", "I’m done with this conversation. No means no.", "How many times do I have to say no? Enough already.", ].random()>> <<Chat $interactionNpc _phrase>> <<set _moodDecrease = Random(-5, -10)>> <<SetMood $interactionNpc _moodDecrease>> <<set _decreaseRelations = Random (-5, -10)>> <<IncreaseFriendship $player $interactionNpc _decreaseRelations>> <div class="padding-top"> <<ChanceButton 'Attempt by force' 'Interactions_Caress_Hug_Twice' $player $interactionNpc '{Friend: 0, Love: 0, Fear: 35, Lust: 0, CheckResistance: true, CheckSexPref: false}' 'HugTryForce'>> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _decreaseRelations = Random (-8, -25)>> <<IncreaseFriendship $player $interactionNpc _decreaseRelations>> <<CheckChance 'Interactions_Caress_TryForce_Succes' 'Interactions_Caress_TryForce_Failed' 'Double_Failed_Passage' 'Interactions_Contact' 'Caress_TryForce' '{createBackButton: false, createTwiceBackButton: false}'>> <</nobr>>
<<nobr>> <<set _phrase = [ "O-okay... if you’re not gonna listen, just... do what you want.", "I told you no, but... whatever, just don’t hurt me.", "Fine... just get it over with, okay?", "I don’t want to do this... but I’m not gonna fight you.", "Alright, alright... just don’t make this worse.", ].random()>> <<Chat $interactionNpc _phrase>> <<set _changeValue = Random(10,15)>> <<SetCharProgression $interactionNpc 'lust' _changeValue false>> <<run _setFear = Random(1,5)>> <<IncreaseFear $player $interactionNpc _setLove>> <div class="padding-top"> <div class="btn"><<button "Continue" "Interactions_Contact">><</button>></div> </div> <</nobr>>
<<nobr>> <<set _phrase = [ "Get off me! I’m not putting up with this!", "I warned you! Now you're gonna regret this!", "I said no, and now you're going to wish you’d listened!", "That’s enough! If you’re not backing off, I’ll make you!", "I don’t care who you are! You don’t get to do that to me!", ].random()>> <<Chat $interactionNpc _phrase>> <<set _moodDecrease = Random(-15, -25)>> <<SetMood $interactionNpc _moodDecrease>> <div class="padding-top"> <div class="btn"><<button "Fight">> <<set _battleSetControls = {attack: true, seduce: true, items: true, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls undefined undefined>> <</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckChance 'Interactions_SlapAss_Succes' 'Interactions_SlapAss_Failed' 'Interactions_SlapAss_Twice' 'Interactions_Contact' 'SlapAss' '{createBackButton: true, createTwiceBackButton: true}'>> <</nobr>>
<<nobr>> <<set _phrase = [ "Wow, okay, wasn’t expecting that, but I’m here for it.", "Alright, getting bold now, huh?", "Oh, you’re not wasting any time, are you?", "Alright then... I guess I’ll let you have your way.", "Guess we're moving fast tonight... I’m not complaining.", ].random()>> <<set $interaction = "Touch Ass">> <<Interaction $player $interactionNpc>> <<Chat $interactionNpc _phrase>> <<set _changeValue = Random(10,15)>> <<SetCharProgression $interactionNpc 'lust' _changeValue false>> <<run _setLove = Random(1,5)>> <<IncreaseLove $player $interactionNpc _setLove>> <<ChatMessage 'You\'re touching $interactionNpc.info.firstName\'s ass'>> <div class="padding-top"> <div class="btn"><<button "Continue" "Interactions_Contact">><</button>></div> </div> <</nobr>>
<<nobr>> <<set _phrase = [ "Hey, not so fast. I'm not ready for that.", "I’m sorry, but I’m not comfortable with this.", "Let's take it slow, alright? That’s a bit much.", "I’d rather we didn’t go there right now.", "Not happening, sorry. I’m just not into that.", ].random()>> <<Chat $interactionNpc _phrase>> <<set _moodDecrease = Random(-5, -10)>> <<SetMood $interactionNpc _moodDecrease>> <div class="padding-top"> <<ChanceButton 'Attempt by force' 'Interactions_SlapAss_Twice' $player $interactionNpc '{Friend: 0, Love: 0, Fear: 35, Lust: 0, CheckResistance: true, CheckSexPref: false}' 'SlapAssTryForce'>> </div> <</nobr>>
<<nobr>> <<set _phrase = [ "Seriously, I said no. Stop trying.", "Come on, you need to back off. Enough already.", "I don’t know how many times I need to say no.", "Can we stop this? I’m really not into it.", "I already said no, so let’s just leave it.", ].random()>> <<Chat $interactionNpc _phrase>> <<set _moodDecrease = Random(-5, -10)>> <<SetMood $interactionNpc _moodDecrease>> <<set _decreaseRelations = Random (-5, -10)>> <<IncreaseFriendship $player $interactionNpc _decreaseRelations>> <div class="padding-top"> <<ChanceButton 'Attempt by force' 'Interactions_SlapAss_TryForce' $player $interactionNpc '{Friend: 0, Love: 0, Fear: 35, Lust: 0, CheckResistance: true, CheckSexPref: false}' 'SlapAssTryForce'>> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckChance 'Interactions_SlapAss_TryForce_Succes' 'Interactions_SlapAss_TryForce_Failed' 'Double_Failed_Passage' 'Interactions_Contact' 'Caress_TryForce' '{createBackButton: false, createTwiceBackButton: false}'>> <</nobr>>
<<nobr>> <<set _phrase = [ "I... I told you no. Can you please stop?", "Please... I’m not okay with this. Just let go.", "Alright, you did what you wanted. Now leave me alone.", "I didn’t want this... but I guess it doesn’t matter, right?", "I... I’m not fighting you, just please stop.", ].random()>> <<set $interaction = "Touch Ass">> <<Interaction $player $interactionNpc>> <<run _setFear = Random(1,5)>> <<IncreaseFear $player $interactionNpc _setLove>> <<Chat $interactionNpc _phrase>> <<ChatMessage 'You\'re touching $interactionNpc.info.firstName\'s ass'>> <div class="padding-top"> <div class="btn"><<button "Continue" "Interactions_Contact">><</button>></div> </div> <</nobr>>
<<nobr>> <<set _phrase = [ "Get off me! I didn’t agree to this!", "What the hell do you think you’re doing? Back off!", "I told you no, and you crossed the line. Now you’re in trouble.", "That’s it! You’re not getting away with this.", "You just made a big mistake. You’re going down for this!", ].random()>> <<Chat $interactionNpc _phrase>> <<set _moodDecrease = Random(-15, -25)>> <<SetMood $interactionNpc _moodDecrease>> <<set _decreaseRelations = Random (-10, -30)>> <<IncreaseFriendship $player $interactionNpc _decreaseRelations>> <div class="padding-top"> <div class="btn"><<button "Fight">> <<set _battleSetControls = {attack: true, seduce: true, items: true, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls undefined undefined>> <</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckChance 'Interactions_Kiss_Succes' 'Interactions_Kiss_Failed' 'Interactions_kiss_Twice' 'Interactions_Contact' 'kiss' '{createBackButton: true, createTwiceBackButton: true}'>> <</nobr>>
<<nobr>> <<set _phrase = [ "Oh... I wasn’t expecting that, but I don’t mind.", "Well, that was... bold. I kind of liked it.", "Wow, you really went for it, huh?", "Okay... that was actually kinda nice.", "Heh, I guess I can't say no to that.", ].random()>> <<set $interaction = "Kiss">> <<Interaction $player $interactionNpc>> <<Chat $interactionNpc _phrase>> <<set _changeValue = Random(10,15)>> <<SetCharProgression $interactionNpc 'lust' _changeValue false>> <<run _setLove = Random(1,5)>> <<IncreaseLove $player $interactionNpc _setLove>> <div class="padding-top"> <div class="btn"><<button "Continue" "Interactions_Contact">><</button>></div> </div> <</nobr>>
<<nobr>> <<set _phrase = [ "Whoa, slow down! I’m not ready for that.", "No, I’m not comfortable with a kiss right now.", "I’m sorry, but that’s too much for me.", "Let’s not go there, okay?", "No, that’s not happening. I’m not interested.", ].random()>> <<Chat $interactionNpc _phrase>> <<set _moodDecrease = Random(-5, -10)>> <<SetMood $interactionNpc _moodDecrease>> <div class="padding-top"> <<ChanceButton 'Attempt by force' 'Interactions_kiss_Twice' $player $interactionNpc '{Friend: 0, Love: 0, Fear: 35, Lust: 0, CheckResistance: true, CheckSexPref: false}' 'kissTryForce'>> </div> <</nobr>>
<<nobr>> <<set _phrase = [ "I’ve already said no. Stop trying!", "You need to take a hint. I don’t want this.", "Seriously? How many times do I have to say no?", "Enough! This conversation is over.", "I don’t want to repeat myself again—just drop it.", ].random()>> <<Chat $interactionNpc _phrase>> <<set _moodDecrease = Random(-5, -10)>> <<SetMood $interactionNpc _moodDecrease>> <<set _decreaseRelations = Random (-5, -10)>> <<IncreaseFriendship $player $interactionNpc _decreaseRelations>> <div class="padding-top"> <<ChanceButton 'Attempt by force' 'Interactions_Kiss_TryForce' $player $interactionNpc '{Friend: 0, Love: 0, Fear: 35, Lust: 0, CheckResistance: true, CheckSexPref: false}' 'kissTryForce'>> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckChance 'Interactions_Kiss_TryForce_Succes' 'Interactions_Kiss_TryForce_Failed' 'Double_Failed_Passage' 'Interactions_Contact' 'Caress_TryForce' '{createBackButton: false, createTwiceBackButton: false}'>> <</nobr>>
<<nobr>> <<set _phrase = [ "I... I didn’t want that... but okay, whatever you say.", "Please, don’t do that again... I told you no.", "Alright... you did what you wanted. Just leave me alone now.", "Fine... I’m not gonna make a scene. Just don’t push it.", "I don’t like this... but I’m not going to fight you.", ].random()>> <<set $interaction = "Kiss">> <<Interaction $player $interactionNpc>> <<run _setFear = Random(1,5)>> <<IncreaseFear $player $interactionNpc _setLove>> <<Chat $interactionNpc _phrase>> <<set _changeValue = Random(10,15)>> <<SetCharProgression $interactionNpc 'lust' _changeValue false>> <div class="padding-top"> <div class="btn"><<button "Continue" "Interactions_Contact">><</button>></div> </div> <</nobr>>
<<nobr>> <<set _phrase = [ "What the hell do you think you’re doing? Get off!", "I told you NO! Now you’re gonna regret ignoring me!", "That’s it! I warned you, and now it’s on!", "You think you can do that to me? Think again!", "Back off! You don’t get to cross that line without consequences!", ].random()>> <<Chat $interactionNpc _phrase>> <<set _moodDecrease = Random(-15, -25)>> <<SetMood $interactionNpc _moodDecrease>> <<set _decreaseRelations = Random (-10, -30)>> <<IncreaseFriendship $player $interactionNpc _decreaseRelations>> <div class="padding-top"> <div class="btn"><<button "Fight">> <<set _battleSetControls = {attack: true, seduce: true, items: true, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls undefined undefined>> <</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckChance 'Interactions_HaveSex_Succes' 'Interactions_HaveSex_Failed' 'Interactions_HaveSex_Twice' 'Interactions_Contact' 'HaveSex' '{createBackButton: true, createTwiceBackButton: true}'>> <</nobr>>
<<nobr>> <<run _setLove = Random(1,5)>> <<IncreaseLove $player $interactionNpc _setLove>> <<goto "ChooseSexType">> <</nobr>>
<<nobr>> <<set _phrase = [ "Hey, not so fast. I'm not ready for that.", "I’m sorry, but I’m not comfortable with this.", "Let's take it slow, alright? That’s a bit much.", "I’d rather we didn’t go there right now.", "Not happening, sorry. I’m just not into that.", ].random()>> <<Chat $interactionNpc _phrase>> <div class="padding-top"> <<ChanceButton 'Attempt by force' 'Interactions_HaveSex_TryForce' $player $interactionNpc '{Friend: 0, Love: 0, Fear: 35, Lust: 0, CheckResistance: true, CheckSexPref: false}' 'HaveSexTryForce'>> </div> <</nobr>>
<<nobr>> <<set _phrase = [ "Seriously, I said no. Stop trying.", "Come on, you need to back off. Enough already.", "I don’t know how many times I need to say no.", "Can we stop this? I’m really not into it.", "I already said no, so let’s just leave it.", ].random()>> <<Chat $interactionNpc _phrase>> <div class="padding-top"> <<ChanceButton 'Attempt by force' 'Interactions_HaveSex_TryForce' $player $interactionNpc '{Friend: 0, Love: 0, Fear: 35, Lust: 0, CheckResistance: true, CheckSexPref: false}' 'HaveSexTryForce'>> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckChance 'Interactions_HaveSex_TryForce_Succes' 'Interactions_HaveSex_TryForce_Failed' 'Double_Failed_Passage' 'Interactions_Contact' 'Caress_TryForce' '{createBackButton: false, createTwiceBackButton: false}'>> <</nobr>>
<<nobr>> <<run _setFear = Random(1,5)>> <<IncreaseFear $player $interactionNpc _setLove>> <<goto "ChooseSexType">> <</nobr>>
<<nobr>> <<set _phrase = [ "Get off me! I didn’t agree to this!", "What the hell do you think you’re doing? Back off!", "I told you no, and you crossed the line. Now you’re in trouble.", "That’s it! You’re not getting away with this.", "You just made a big mistake. You’re going down for this!", ].random()>> <<Chat $interactionNpc _phrase>> <<set _decreaseRelations = Random (-8, -25)>> <<IncreaseFriendship $player $interactionNpc _decreaseRelations>> <div class="padding-top"> <div class="btn"><<button "Fight">> <<set _battleSetControls = {attack: true, seduce: true, items: true, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls undefined undefined>> <</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckChance 'Interactions_TouchBoobs_Succes' 'Interactions_TouchBoobs_Failed' 'Interactions_TouchBoobs_Twice' 'Interactions_Contact' 'TouchBoobs' '{createBackButton: true, createTwiceBackButton: true}'>> <</nobr>>
<<nobr>> <<set _phrase = [ "Wow, okay, wasn’t expecting that, but I’m here for it.", "Alright, getting bold now, huh?", "Oh, you’re not wasting any time, are you?", "Alright then... I guess I’ll let you have your way.", "Guess we're moving fast tonight... I’m not complaining.", ].random()>> <<set $interaction = "Touch boobs">> <<Interaction $player $interactionNpc>> <<Chat $interactionNpc _phrase>> <<ChatMessage 'You\'re touching $interactionNpc.info.firstName\'s boobs'>> <<set _changeValue = Random(10,15)>> <<SetCharProgression $interactionNpc 'lust' _changeValue false>> <<run _setLove = Random(1,5)>> <<IncreaseLove $player $interactionNpc _setLove>> <div class="padding-top"> <div class="btn"><<button "Continue" "Interactions_Contact">><</button>></div> </div> <</nobr>>
<<nobr>> <<set _phrase = [ "Hey, not so fast. I'm not ready for that.", "I’m sorry, but I’m not comfortable with this.", "Let's take it slow, alright? That’s a bit much.", "I’d rather we didn’t go there right now.", "Not happening, sorry. I’m just not into that.", ].random()>> <<Chat $interactionNpc _phrase>> <div class="padding-top"> <<ChanceButton 'Attempt by force' 'Interactions_TouchBoobs_Twice' $player $interactionNpc '{Friend: 0, Love: 0, Fear: 35, Lust: 0, CheckResistance: true, CheckSexPref: false}' 'TouchBoobsTryForce'>> </div> <</nobr>>
<<nobr>> <<set _phrase = [ "Seriously, I said no. Stop trying.", "Come on, you need to back off. Enough already.", "I don’t know how many times I need to say no.", "Can we stop this? I’m really not into it.", "I already said no, so let’s just leave it.", ].random()>> <<Chat $interactionNpc _phrase>> <div class="padding-top"> <<ChanceButton 'Attempt by force' 'Interactions_TouchBoobs_TryForce' $player $interactionNpc '{Friend: 0, Love: 0, Fear: 35, Lust: 0, CheckResistance: true, CheckSexPref: false}' 'TouchBoobsTryForce'>> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckChance 'Interactions_TouchBoobs_TryForce_Succes' 'Interactions_TouchBoobs_TryForce_Failed' 'Double_Failed_Passage' 'Interactions_Contact' 'Caress_TryForce' '{createBackButton: false, createTwiceBackButton: false}'>> <</nobr>>
<<nobr>> <<set _phrase = [ "I... I told you no. Can you please stop?", "Please... I’m not okay with this. Just let go.", "Alright, you did what you wanted. Now leave me alone.", "I didn’t want this... but I guess it doesn’t matter, right?", "I... I’m not fighting you, just please stop.", ].random()>> <<set $interaction = "Touch boobs">> <<Interaction $player $interactionNpc>> <<run _setFear = Random(1,5)>> <<IncreaseFear $player $interactionNpc _setLove>> <<Chat $interactionNpc _phrase>> <<ChatMessage 'You\'re touching $interactionNpc.info.firstName\'s boobs'>> <<set _changeValue = Random(10,15)>> <<SetCharProgression $interactionNpc 'lust' _changeValue false>> <div class="padding-top"> <div class="btn"><<button "Continue" "Interactions_Contact">><</button>></div> </div> <</nobr>>
<<nobr>> <<set _phrase = [ "Get off me! I didn’t agree to this!", "What the hell do you think you’re doing? Back off!", "I told you no, and you crossed the line. Now you’re in trouble.", "That’s it! You’re not getting away with this.", "You just made a big mistake. You’re going down for this!", ].random()>> <<Chat $interactionNpc _phrase>> <<set _decreaseRelations = Random (-8, -25)>> <<IncreaseFriendship $player $interactionNpc _decreaseRelations>> <div class="padding-top"> <div class="btn"><<button "Fight">> <<set _battleSetControls = {attack: true, seduce: true, items: true, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls undefined undefined>> <</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckChance "Interactions_BecomeAWhore_Success" "Interactions_BecomeAWhore_NPCReject" "NPCReject_Again" "Interactions_Influence" "BecomeAWhore" '{createBackButton: true, createTwiceBackButton: true}'>> <</nobr>>
<<nobr>> <<set _changeValue = Random(10, 35)>> <<run $interactionNpc.characterEvents.registerEvent($interactionNpc.info.id, "BecomeAWhore", _changeValue)>> <<if $interactionNpc.characterEvents.getOrRegisterEvent($interactionNpc.info.id, "BecomeAWhore", 0) >= 100>> <<run $interactionNpc.characterEvents.unregisterEvent($interactionNpc.info.id, "BecomeAWhore")>> <<set $interactionNpc.info.characterWork = "Hooker">> <<if $player.characterEvents.isEventRegistered($player.info.id, "Became A Pimp") == false>> <<set $Earnings = 50>> <<switch Math.trunc($interactionNpc.body.face.value)>> <<case 3>> <<set $Earnings += 200>> <<case 4>> <<set $Earnings += 400>> <<case 5>> <<set $Earnings += 500>> <<case 6>> <<set $Earnings += 800>> <</switch>> <<switch Math.trunc($interactionNpc.body.breastSize.value)>> <<case 1>> <<set $Earnings += 150>> <<case 2>> <<set $Earnings += 250>> <<case 3>> <<set $Earnings += 400>> <<case 4>> <<set $Earnings += 600>> <<case 5>> <<set $Earnings += 800>> <<case 6>> <<set $Earnings += 1000>> <</switch>> <<switch Math.trunc($interactionNpc.body.buttSize.value)>> <<case 1>> <<set $Earnings += 150>> <<case 2>> <<set $Earnings += 250>> <<case 3>> <<set $Earnings += 400>> <<case 4>> <<set $Earnings += 600>> <<case 5>> <<set $Earnings += 800>> <<case 6>> <<set $Earnings += 1000>> <</switch>> <<if $interactionNpc.genitalia() == "Vagina">> <<set $Earnings += 200>> <</if>> <<set $player.money += $Earnings>> <<set _msg = "The pimp paid you " + $Earnings + "$ for the new girl.">> <</if>> <<Chat $interactionNpc 'Alright, you\'ve piqued my interest. I\'m thinking it might be time for me to explore sex work. Let\'s see where this journey takes me!'>> <<else>> <<Chat $interactionNpc 'I\'m really intrigued by what you\'re saying, but you know, being a sex worker is a big decision. Give me some time to think it over, y\'know?'>> <</if>> <div class="padding-top"> <div class="btn"><<button "Continue" "Interactions_Influence">><<unset $sexPrefChangeTo>><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $interactionNpc 'Look, my choices about my sexuality and career are my own. I\'m happy with who I am and I\'m not looking to engage in sex work. I\'d appreciate some respect for my choices.'>> <<set _moodDecrease = Random(-1, -5)>> <<SetMood $interactionNpc _moodDecrease>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckChance "ChangeClothing_Success" "NPCReject" "NPCReject_Again" "Interactions_Influence" "ChangeClothing" '{createBackButton: true, createTwiceBackButton: true}'>> <</nobr>>
<<nobr>> <<Chat $interactionNpc 'Alright, you win! I\'ll go change into something else'>> <<run $interactionNpc.AddCloth(true)>> <div class="padding-top"> <div class="btn"><<button "Continue" "Interactions_Influence">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _curClothPref = $interactionNpc.info.clothesPreference>> <<run _curValueMen = $interactionNpc.characterEvents.getOrRegisterEvent($interactionNpc.info.id, "ChangeClothPref_men", 0)>> <<run _curValueWomen = $interactionNpc.characterEvents.getOrRegisterEvent($interactionNpc.info.id, "ChangeClothPref_women", 0)>> <div class="padding-top"> <div class="btn-container"> <<if _curClothPref == "men">> <div class="btn non-interacting"><<button "You should wear men\'s clothing">><</button>></div> <<else>> <<ChanceButton 'You should wear men\'s clothing (_curValueMen\/100)' 'ChangeClothPref_Choise' $player $interactionNpc '{Friend: 65, Love: 65, Fear: 0, Lust: 0, CheckResistance: false}' 'ChangeClothPref' '<<set $clothPrefChangeTo = "ChangeClothPref_men">>'>> <</if>> <<if _curClothPref == "women">> <div class="btn non-interacting"><<button "You should wear women\'s clothing">><</button>></div> <<else>> <<ChanceButton 'You should wear women\'s clothing (_curValueWomen\/100)' 'ChangeClothPref_Choise' $player $interactionNpc '{Friend: 65, Love: 65, Fear: 0, Lust: 0, CheckResistance: false}' 'ChangeClothPref' '<<set $clothPrefChangeTo = "ChangeClothPref_women">>'>> <</if>> </div> </div> <div class="padding-top"> <div class="btn"><<button "Back" "Interactions_Influence">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckChance 'ChangeClothPref' "ChangeClothPref_Reject" "NPCReject_Again" 'Interactions_ChangeClothPref_Choise' 'ChangeClothPref' '{createBackButton: true, createTwiceBackButton: true}'>> <</nobr>>
<<nobr>> <<set _changeValue = Random(10, 35)>> <<run $interactionNpc.characterEvents.registerEvent($interactionNpc.info.id, $clothPrefChangeTo, _changeValue)>> <<if $interactionNpc.characterEvents.getOrRegisterEvent($interactionNpc.info.id, $clothPrefChangeTo, 0) >= 100>> <<run $interactionNpc.characterEvents.unregisterEvent($interactionNpc.info.id, $clothPrefChangeTo)>> <<run $clothPrefChangeTo = $clothPrefChangeTo.replace(/^.*?_/, '');>> <<set $interactionNpc.info.clothesPreference = $clothPrefChangeTo>> <<run $interactionNpc.AddCloth(true)>> <<Chat $interactionNpc 'Alright, you\'ve got me thinking. I\'m down to give it a shot and try rocking the opposite style'>> <<else>> <<Chat $interactionNpc 'I\'m kinda drawn to what you\'re saying, but you know, switching to a different clothing style doesn\'t happen in a snap. Give me a bit of time to get used to the idea, cool?'>> <</if>> <div class="padding-top"> <div class="btn"><<button "Continue" "Interactions_ChangeClothPref_Choise">><<unset $clothPrefChangeTo>><</button>></div> </div> <</nobr>>
<<nobr>> <<Chat $interactionNpc "Look, what I wear is my choice and none of your business. I'm feeling myself in my own style, so I'd appreciate if you kept your thoughts to yourself">> <<set _moodDecrease = Random(-1, -5)>> <<SetMood $interactionNpc _moodDecrease>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckChance "Interactions_ChangeName_Success" "NPCReject" "NPCReject_Again" "Interactions_Influence" "ChangeName" '{createBackButton: true, createTwiceBackButton: true}'>> <</nobr>>
<<nobr>> <<Chat $interactionNpc 'Enter a new Name'>> <div class="input-container"> <div class="text-field text-field_floating-2"> <input type="text" id="firstName" name="firstName" value="First Name"> <label class="text-field__label" for="email">First Name</label> </div> </div> <div class="padding-top"> <div class="btn"><<button "Accept" "Interactions_Influence">> <<run $interactionNpc.info.firstName = document.getElementById("firstName").value>> <</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _curSexPref = $interactionNpc.info.sexualPreference>> <<run _curValueManly = $interactionNpc.characterEvents.getOrRegisterEvent($interactionNpc.info.id, "ChangeSexPref_Manly", 0)>> <<run _curValueBi = $interactionNpc.characterEvents.getOrRegisterEvent($interactionNpc.info.id, "ChangeSexPref_Bi", 0)>> <<run _curValueFeminine = $interactionNpc.characterEvents.getOrRegisterEvent($interactionNpc.info.id, "ChangeSexPref_Feminine", 0)>> <div class="padding-top"> <div class="btn-container"> <<if _curSexPref == "Manly">> <div class="btn non-interacting"><<button "Manly">><</button>></div> <<else>> <<ChanceButton 'Manly (_curValueManly\/100)' 'ChangeSexPref_ChangeSexPref_Choise' $player $interactionNpc '{Friend: 75, Love: 75, Fear: 0, Lust: 0, CheckResistance: false}' 'ChangeSexPref' '<<set $sexPrefChangeTo = "ChangeSexPref_Manly">>'>> <</if>> <<if _curSexPref == "Bi">> <div class="btn non-interacting"><<button "Bi">><</button>></div> <<else>> <<ChanceButton 'Bi (_curValueBi\/100)' 'ChangeSexPref_ChangeSexPref_Choise' $player $interactionNpc '{Friend: 75, Love: 75, Fear: 0, Lust: 0, CheckResistance: false}' 'ChangeSexPref' '<<set $sexPrefChangeTo = "ChangeSexPref_Bi">>'>> <</if>> <<if _curSexPref == "Feminine">> <div class="btn non-interacting"><<button "Feminine">><</button>></div> <<else>> <<ChanceButton 'Feminine (_curValueFeminine\/100)' 'ChangeSexPref_ChangeSexPref_Choise' $player $interactionNpc '{Friend: 75, Love: 75, Fear: 0, Lust: 0, CheckResistance: false}' 'ChangeSexPref' '<<set $sexPrefChangeTo = "ChangeSexPref_Feminine">>'>> <</if>> </div> </div> <div class="padding-top"> <div class="btn"><<button "Back" "Interactions_Influence">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckChance 'ChangeSexPref' "ChangeSexPref_Reject" "NPCReject_Again" 'Interactions_ChangeSexPref_Choise' 'ChangeSexPref' '{createBackButton: true, createTwiceBackButton: true}'>> <</nobr>>
<<nobr>> <<set _changeValue = Random(10, 35)>> <<run $interactionNpc.characterEvents.registerEvent($interactionNpc.info.id, $sexPrefChangeTo, _changeValue)>> <<if $sexPrefChangeTo != "ChangeSexPref_Manly">> <<run $interactionNpc.characterEvents.unregisterEvent($interactionNpc.info.id, "ChangeSexPref_Manly")>> <</if>> <<if $sexPrefChangeTo != "ChangeSexPref_Bi">> <<run $interactionNpc.characterEvents.unregisterEvent($interactionNpc.info.id, "ChangeSexPref_Bi")>> <</if>> <<if $sexPrefChangeTo != "ChangeSexPref_Feminine">> <<run $interactionNpc.characterEvents.unregisterEvent($interactionNpc.info.id, "ChangeSexPref_Feminine")>> <</if>> <<if $interactionNpc.characterEvents.getOrRegisterEvent($interactionNpc.info.id, $sexPrefChangeTo, 0) >= 100>> <<run $interactionNpc.characterEvents.unregisterEvent($interactionNpc.info.id, $sexPrefChangeTo)>> <<run $sexPrefChangeTo = $sexPrefChangeTo.replace(/^.*?_/, '');>> <<set $interactionNpc.info.sexualPreference = $sexPrefChangeTo>> <<Chat $interactionNpc 'Alright, you\'ve got my attention. I\'m thinking it might be time for me to try something new'>> <<else>> <<Chat $interactionNpc 'I\'m really digging what you\'re saying, but you know, this kind of change doesn\'t happen overnight. Give me some time to wrap my head around it, y\'know?'>> <</if>> <div class="padding-top"> <div class="btn"><<button "Continue" "Interactions_ChangeSexPref_Choise">><<unset $sexPrefChangeTo>><</button>></div> </div> <</nobr>>
<<nobr>> <<Chat $interactionNpc "Listen up, my sexual orientation is off-limits. I'm not some project for you to mess with. I'm happy being me, so back off and respect that.">> <<set _moodDecrease = Random(-1, -5)>> <<SetMood $interactionNpc _moodDecrease>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _curSexRole = $interactionNpc.info.SexRole>> <<run _curValueActive = $interactionNpc.characterEvents.getOrRegisterEvent($interactionNpc.info.id, "ChangeSexRole_Active", 0)>> <<run _curValuePassive = $interactionNpc.characterEvents.getOrRegisterEvent($interactionNpc.info.id, "ChangeSexPref_Passive", 0)>> <<run _curValueVersatile = $interactionNpc.characterEvents.getOrRegisterEvent($interactionNpc.info.id, "ChangeSexPref_Versatile", 0)>> <div class="padding-top"> <div class="btn-container"> <<if _curSexRole == "Active">> <div class="btn non-interacting"><<button "Be more active">><</button>></div> <<else>> <<ChanceButton 'Be more active (_curValueActive\/100)' 'ChangeSexRole_Choise' $player $interactionNpc '{Friend: 75, Love: 75, Fear: 0, Lust: 0, CheckResistance: false}' 'ChangeSexRole' '<<set $sexRoleChangeTo = "ChangeSexRole_Active">>'>> <</if>> <<if _curSexRole == "Passive">> <div class="btn non-interacting"><<button "Be more passive">><</button>></div> <<else>> <<ChanceButton 'Be more passive (_curValuePassive\/100)' 'ChangeSexRole_Choise' $player $interactionNpc '{Friend: 75, Love: 75, Fear: 0, Lust: 0, CheckResistance: false}' 'ChangeSexRole' '<<set $sexRoleChangeTo = "ChangeSexPref_Passive">>'>> <</if>> <<if _curSexRole == "Versatile">> <div class="btn non-interacting"><<button "Be versatile">><</button>></div> <<else>> <<ChanceButton 'Be versatile (_curValueVersatile\/100)' 'ChangeSexRole_Choise' $player $interactionNpc '{Friend: 75, Love: 75, Fear: 0, Lust: 0, CheckResistance: false}' 'ChangeSexRole' '<<set $sexRoleChangeTo = "ChangeSexPref_Versatile">>'>> <</if>> </div> </div> <div class="padding-top"> <div class="btn"><<button "Back" "Interactions_Influence">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckChance 'ChangeSexRole' "ChangeSexRole_Reject" "NPCReject_Again" 'Interactions_ChangeSexRole_Choise' 'ChangeSexRole' '{createBackButton: true, createTwiceBackButton: true}'>> <</nobr>>
<<nobr>> <<set _changeValue = Random(10, 35)>> <<run $interactionNpc.characterEvents.registerEvent($interactionNpc.info.id, $sexRoleChangeTo, _changeValue)>> <<if $sexRoleChangeTo != "ChangeSexRole_Active">> <<run $interactionNpc.characterEvents.unregisterEvent($interactionNpc.info.id, "ChangeSexRole_Active")>> <</if>> <<if $sexRoleChangeTo != "ChangeSexPref_Passive">> <<run $interactionNpc.characterEvents.unregisterEvent($interactionNpc.info.id, "ChangeSexRole_Passive")>> <</if>> <<if $sexRoleChangeTo != "ChangeSexPref_Versatile">> <<run $interactionNpc.characterEvents.unregisterEvent($interactionNpc.info.id, "ChangeSexRole_Versatile")>> <</if>> <<if $interactionNpc.characterEvents.getOrRegisterEvent($interactionNpc.info.id, $sexRoleChangeTo, 0) >= 100>> <<run $interactionNpc.characterEvents.unregisterEvent($interactionNpc.info.id, $sexRoleChangeTo)>> <<run $sexRoleChangeTo = $sexRoleChangeTo.replace(/^.*?_/, '');>> <<set $interactionNpc.info.SexRole = $sexRoleChangeTo>> <<Chat $interactionNpc 'Alright, you\'ve piqued my interest. I think I\'m ready to make the switch and try the opposite sexual role. Let\'s dive in and see where it takes me!'>> <<else>> <<Chat $interactionNpc 'Yeah, I\'m intrigued by what you\'re saying, but switching sexual roles isn\'t something I\'m ready for just yet. Give me a moment to process it all, okay?'>> <</if>> <div class="padding-top"> <div class="btn"><<button "Continue" "Interactions_ChangeSexRole_Choise">><<unset $sexRoleChangeTo>><</button>></div> </div> <</nobr>>
<<nobr>> <<Chat $interactionNpc "Look, my sexual role is my choice and not up for debate. I'm comfortable with who I am in the bedroom, so I'd appreciate it if you respected that.">> <<set _moodDecrease = Random(-1, -5)>> <<SetMood $interactionNpc _moodDecrease>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<run _curValueFemale = $interactionNpc.characterEvents.getOrRegisterEvent($interactionNpc.info.id, "HormoneTherapy_Takes female hormones", 0)>> <<run _curValueMale = $interactionNpc.characterEvents.getOrRegisterEvent($interactionNpc.info.id, "HormoneTherapy_Takes male hormones", 0)>> <div class="padding-top"> <div class="btn-container"> <<if $interactionNpc.characterEvents.isEventRegistered($interactionNpc.info.id, "Takes male hormones") == true>> <div class="btn non-interacting"><<button "Start taking male hormones">><</button>></div> <<else>> <<ChanceButton 'Start taking male hormones (_curValueMale\/100)' 'HormoneTherapy_Choise' $player $interactionNpc '{Friend: 85, Love: 85, Fear: 0, Lust: 0, CheckResistance: false}' 'HormoneTherapy' '<<set $HormoneTherapyChoise = "HormoneTherapy_Takes male hormones">>'>> <</if>> <<if $interactionNpc.characterEvents.isEventRegistered($interactionNpc.info.id, "Takes female hormones") == true>> <div class="btn non-interacting"><<button "Start taking female hormones">><</button>></div> <<else>> <<ChanceButton 'Start taking female hormones (_curValueFemale\/100)' 'HormoneTherapy_Choise' $player $interactionNpc '{Friend: 85, Love: 85, Fear: 0, Lust: 0, CheckResistance: false}' 'HormoneTherapy' '<<set $HormoneTherapyChoise = "HormoneTherapy_Takes female hormones">>'>> <</if>> </div> </div> <div class="padding-top"> <div class="btn"><<button "Back" "Interactions_Influence">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckChance 'HormoneTherapy' "HormoneTherapy_Reject" "NPCReject_Again" 'Interactions_HormoneTherapy_Choise' 'HormoneTherapy' '{createBackButton: true, createTwiceBackButton: true}'>> <</nobr>>
<<nobr>> <<set _changeValue = Random(10, 35)>> <<run $interactionNpc.characterEvents.registerEvent($interactionNpc.info.id, $HormoneTherapyChoise, _changeValue)>> <<if $HormoneTherapyChoise != "HormoneTherapy_Takes female hormones">> <<run $interactionNpc.characterEvents.unregisterEvent($interactionNpc.info.id, "HormoneTherapy_Takes female hormones")>> <</if>> <<if $HormoneTherapyChoise != "HormoneTherapy_Takes male hormones">> <<run $interactionNpc.characterEvents.unregisterEvent($interactionNpc.info.id, "HormoneTherapy_Takes male hormones")>> <</if>> <<if $interactionNpc.characterEvents.getOrRegisterEvent($interactionNpc.info.id, $HormoneTherapyChoise, 0) >= 100>> <<run $interactionNpc.characterEvents.unregisterEvent($interactionNpc.info.id, $HormoneTherapyChoise)>> <<run $interactionNpc.characterEvents.unregisterEvent($interactionNpc.info.id, "Takes female hormones")>> <<run $interactionNpc.characterEvents.unregisterEvent($interactionNpc.info.id, "Takes male hormones")>> <<run $HormoneTherapyChoise = $HormoneTherapyChoise.replace(/^.*?_/, '');>> <<run $interactionNpc.characterEvents.registerEvent($interactionNpc.info.id, $HormoneTherapyChoise, 1)>> <<Chat $interactionNpc 'Alright, you\'ve piqued my interest. I\'m thinking it might be time for me to try hormone therapy.'>> <<else>> <<Chat $interactionNpc 'I\'m really intrigued by what you\'re saying, but you know, starting hormone therapy is a big step. Give me some time to wrap my head around it, y\'know?'>> <</if>> <div class="padding-top"> <div class="btn"><<button "Continue" "Interactions_Influence">><<unset $HormoneTherapyChoise>><</button>></div> </div> <</nobr>>
<<nobr>> <<Chat $interactionNpc "Look, my decisions about hormone therapy are my own. I'm happy with who I am and I'm not looking to make that kind of change. I'd appreciate some respect for my choices">> <<set _moodDecrease = Random(-1, -5)>> <<SetMood $interactionNpc _moodDecrease>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckChance 'Interactions_PersuadeSurgery_Succes' 'Interactions_PersuadeSurgery_Failed' 'Interactions_PersuadeSurgery_Twice' 'Interactions_Influence' 'PersuadeSurgery' '{createBackButton: true, createTwiceBackButton: true}'>> <</nobr>>
<<nobr>> <<set _phrase = [ "Alright, if it’s necessary, I’ll go through with it.", "Okay, let’s do it. I trust you know what’s best.", "Alright, I’ll go for it. Let’s get this taken care of.", "If this is what I need, then I’ll go ahead with it.", "Fine, let’s get it scheduled and over with.", ].random()>> <<Chat $interactionNpc _phrase>> <div class="padding-top"> <div class="btn"><<button "Continue">><<ShowSurgery $interactionNpc>><</button>></div> </div> <</nobr>>
<<nobr>> <<set _phrase = [ "No, I don’t think I want to go that route.", "I’m not ready for surgery right now.", "Thanks, but I’d rather look at other options.", "I appreciate the advice, but surgery isn’t for me.", "I’m not comfortable with this idea. I’ll pass.", ].random()>> <<Chat $interactionNpc _phrase>> <<set _moodDecrease = Random(-5, -10)>> <<SetMood $interactionNpc _moodDecrease>> <</nobr>>
<<nobr>> <<set _phrase = [ "I already told you I’m not doing the surgery. Drop it.", "How many times do I have to say no? Enough.", "Seriously, stop pushing. I’ve made up my mind.", "I’m not interested in the surgery, and that’s final.", "Enough already. I’m not going through with this.", ].random()>> <<Chat $interactionNpc _phrase>> <<set _moodDecrease = Random(-5, -10)>> <<SetMood $interactionNpc _moodDecrease>> <<set _decreaseRelations = Random (-5, -10)>> <<IncreaseFriendship $player $interactionNpc _decreaseRelations>> <div class="padding-top"> <<ChanceButton 'Attempt by force' 'Interactions_PersuadeSurgery_TryForce' $player $interactionNpc '{Friend: 0, Love: 0, Fear: 90, Lust: 0, CheckResistance: true, CheckSexPref: false}' 'PersuadeSurgeryTryForce'>> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckChance 'Interactions_PersuadeSurgery_TryForce_Succes' 'Interactions_PersuadeSurgery_TryForce_Failed' 'Interactions_PersuadeSurgery_TryForce_Failed' 'Interactions_Influence' 'PersuadeSurgeryTryForce' '{createBackButton: false, createTwiceBackButton: false}'>> <</nobr>>
<<nobr>> <<set _phrase = [ "Fine, if you’re not giving me a choice, I’ll do it.", "Alright, if it’ll make everyone stop pushing, I’ll go through with it.", "Okay, if you won’t let this go, I’ll do the surgery.", "I don’t want to, but if I have to, then fine.", "If this is the only way you’ll leave me alone, I’ll do it.", ].random()>> <<Chat $interactionNpc _phrase>> <div class="padding-top"> <div class="btn"><<button "Continue">><<ShowSurgery $interactionNpc>><</button>></div> </div> <</nobr>>
<<nobr>> <<set _phrase = [ "I said no! You don’t get to decide this for me!", "Back off! I told you I’m not doing it!", "Enough! I’m done with this, and I’m done with you!", "I told you no, and now you’re about to regret pushing me!", "If you don’t back off right now, we’re gonna have a real problem!", ].random()>> <<Chat $interactionNpc _phrase>> <<set _moodDecrease = Random(-15, -25)>> <<SetMood $interactionNpc _moodDecrease>> <<set _decreaseRelations = Random (-10, -30)>> <<IncreaseFriendship $player $interactionNpc _decreaseRelations>> <div class="padding-top"> <div class="btn"><<button "Fight">> <<set _battleSetControls = {attack: true, seduce: true, items: true, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls undefined undefined>> <</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckChance 'Interaction_Training_Success' 'Interaction_Training_Failed' 'Interaction_Training_Failed' 'CharacterInteractions' 'Event_Name' '{createBackButton: true, createTwiceBackButton: true}'>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $player.money -= 200>> <<goto "Interaction_Dominate_Session">> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $interactionNpc 'I don\'t want to do this.'>> <<set _moodDecrease = Random(-5, -10)>> <<SetMood $interactionNpc _moodDecrease>> <div class="padding-top"> <<ChanceButton 'Attempt by force' 'Interaction_Training_Twice' $player $interactionNpc '{Friend: 0, Love: 0, Fear: 50, Lust: 0, CheckResistance: true, CheckSexPref: false}' 'trainingNPCTryForce'>> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $interactionNpc 'I’ve already said no. Stop trying!'>> <<set _moodDecrease = Random(-5, -10)>> <<SetMood $interactionNpc _moodDecrease>> <<set _decreaseRelations = Random (-5, -10)>> <<IncreaseFriendship $player $interactionNpc _decreaseRelations>> <div class="btn padding-top"><<button "Continue" "CharacterInteractions">><</button>></div> <div class="padding-top"> <<ChanceButton 'Attempt by force' 'Interaction_Training_TryForce' $player $interactionNpc '{Friend: 0, Love: 0, Fear: 50, Lust: 0, CheckResistance: true, CheckSexPref: false}' 'training_TryForce'>> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckChance 'Interaction_Training_Success' 'Interaction_Training_TryForce_Failed' 'Double_Failed_Passage' 'CharacterInteractions' 'training_TryForce' '{createBackButton: false, createTwiceBackButton: false}'>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $interactionNpc 'Back off! You don’t get to cross that line without consequences!'>> <<set _moodDecrease = Random(-15, -25)>> <<SetMood $interactionNpc _moodDecrease>> <<set _decreaseRelations = Random (-10, -30)>> <<IncreaseFriendship $player $interactionNpc _decreaseRelations>> <div class="padding-top"> <div class="btn"><<button "Fight">> <<set _battleSetControls = {attack: true, seduce: true, items: true, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls undefined undefined>> <</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckChance 'Interactions_FollowMe_Success' 'Interactions_FollowMe_Failed' 'Interactions_FollowMe_Failed_Twice' 'CharacterInteractions' 'FollowMe' '{createBackButton: true, createTwiceBackButton: true}'>> <</nobr>>
<<nobr>> <<set _phrase = [ "Alright, lead the way!", "Sure, I’ll tag along with you.", "Yeah, I’m in. Let’s go.", "Alright, you’ve convinced me. Let’s see where this goes.", "Fine, I’ll come with you. Just don’t get us lost!", ].random()>> <<Chat $interactionNpc _phrase>> <div class="padding-top"> <div class="btn"><<button "Continue" $player.info.currentLocation>> <<set $playerFollowers.push($interactionNpc.info.id)>> <<unset $interactionNpc $indexNPC>> <<set $gameSettings.allowSaves = true>> <<set $canShowStatsBtn = true>> <</button>></div> </div> <</nobr>>
<<nobr>> <<set _phrase = [ "Nah, I’m good. You go ahead.", "Thanks, but I’d rather stay here.", "Nope, not really feeling it. You do you.", "I’m not coming. I’ve got other plans.", "I’ll pass. Maybe another time.", ].random()>> <<Chat $interactionNpc _phrase>> <</nobr>>
<<nobr>> <<set _phrase = [ "I already said no. Stop asking.", "Come on, how many times do I have to say no?", "Look, I’m not going. Can you drop it?", "Seriously? I’m not following you, alright?", "Enough already. I said I’m staying here.", ].random()>> <<Chat $interactionNpc _phrase>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _phrase = [ "Alright, got it. I’ll back off.", "Fine, I’ll stop. No problem.", "Okay, okay, I’m out. You’re on your own.", "Alright, if that’s what you want. I’ll leave you to it.", "Got it. I’ll give you some space.", ].random()>> <<Chat $interactionNpc _phrase>> <<set $playerFollowers.splice($playerFollowers.indexOf($interactionNpc.info.id))>> <<unset $interactionNpc $indexNPC>> <<set $gameSettings.allowSaves = true>> <<set $canShowStatsBtn = true>> <div class="padding-top"> <div class="btn"><<button "Continue" $player.info.currentLocation>><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckChance 'Interaction_Flirt_Succes' 'Interaction_Flirt_Failed' 'Interaction_Flirt_Failed_Twice' 'Interactions_Romance' 'Flirt' '{createBackButton: true, createTwiceBackButton: true}'>> <</nobr>>
<<nobr>> <<set _phrase = [ "Oh, I see what you're doing... and I kinda like it.", "Wow, you're really smooth, aren't you?", "Oh, stop it... you're making me blush!", "Well, if that’s your way of getting my attention, it’s definitely working.", "You know, you’re not bad at this... not bad at all.", ].random()>> <<Chat $interactionNpc _phrase>> <<run _setLove = Random(3,8)>> <<IncreaseLove $player $interactionNpc _setLove>> <div class="padding-top"> <div class="btn"><<button "Continue" "Interactions_Romance">><</button>></div> </div> <</nobr>>
<<nobr>> <<set _phrase = [ "Nice try, but I’m not really feeling it.", "Oh, that’s... sweet, but I don’t think so.", "I think you might have the wrong idea here.", "Look, I'm flattered, but I'm not interested.", ].random()>> <<set _moodDecrease = Random(-5, -10)>> <<SetMood $interactionNpc _moodDecrease>> <<Chat $interactionNpc _phrase>> <</nobr>>
<<nobr>> <<set _phrase = [ "Can you just stop? This is getting old.", "Honestly, you're not getting the hint, are you?", "I said no, and I meant it. Enough already.", "Do you really think this is working? Because it's not.", "Alright, that’s enough. I’m really done with this now.", ].random()>> <<set _moodDecrease = Random(-5, -10)>> <<SetMood $interactionNpc _moodDecrease>> <<set _decreaseRelations = Random (-5, -10)>> <<IncreaseFriendship $player $interactionNpc _decreaseRelations>> <<Chat $interactionNpc _phrase>> <</nobr>>
<<nobr>> <<if $interactionNpc.dailyEvents.getOrRegisterEvent($player.info.id, "Resentment", 0) > 0>> <<set _status = "Succes">> <<run $interactionNpc.dailyEvents.unregisterEvent($player.info.id, "Resentment")>> <<else>> <<set _status = "Neutral">> <</if>> <<run _traits = getCharacterTraits($interactionNpc)>> <<run _phrase = getStatusPhrase("Apologize", _status, "Original")>> <<Chat $interactionNpc _phrase>> <div class="padding-top"> <div class="btn"><<button "Continue" "Interactions_Talk">><</button>></div> </div> <</nobr>>
<<nobr>> /*<<run _traits = getCharacterTraits($interactionNpc)>>*/ <<set _category = ["Lockpick", "Hacker", "Speech", "Performer"].random()>> <<run _phrase = getRandomPhraseByPersonality("Original", _category)>> <<Chat $interactionNpc _phrase>> <<set _playerAttribute = getAttributeByTheme($player, _category)>> <<set _npcAttribute = getAttributeByTheme($interactionNpc, _category)>> <div class="padding-top"> <div class="btn-container"> <div class="btn"><<button "Talk about it" "AfterConversation">><<set $setFriendship = Random(3,5)>><</button>></div> <<if _playerAttribute.value > _npcAttribute.value>> <div class="btn"><<button '[_category] Impress with knowledge' "AfterConversation">><<set $setFriendship = Random(5,9)>><</button>></div> <<else>> <div class="btn non-interacting"><<button '[_category] Impress with knowledge'>><</button>></div> <</if>> <div class="btn"><<button "No interest" "AfterConversation">><<set $setFriendship = Random(-1,-5)>><</button>></div> </div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<IncreaseFriendship $player $interactionNpc $setFriendship>> <<if $setFriendship >= 0>> <<SetMood $interactionNpc 5>> <<else>> <<SetMood $interactionNpc -5>> <</if>> <div class="padding-top"> <<if $fromPhone == true>> <div class="btn"><<button "Continue" "CallToCharacter">><<unset $setFriendship $fromPhone>><</button>></div> <<else>> <div class="btn"><<button "Continue" "Interactions_Talk">><<unset $setFriendship $fromPhone>><</button>></div> <</if>> </div> <</nobr>>
<<nobr>> /*<<run _traits = getCharacterTraits($interactionNpc)>>*/ <<run _phrase = getRandomPhrase("Original", "Dirty Talk")>> <<Chat $interactionNpc _phrase>> <<set _changeValue = Random(10,15)>> <<SetCharProgression $interactionNpc 'lust' _changeValue false>> <div class="padding-top"> <div class="btn"><<button "Continue" "Interactions_Talk">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $targetSubmission = $interactionNpc.attributes.submission>> <<set $targetSubmissionProgression = $interactionNpc.progression.submission>> <<set $playerDominance = $player.attributes.dominance>> <<set $playerEnergy = $player.status.energy.value>> <<include "Dominate_Session_ProgressBars">> <div class="btn-container padding-top"> <<if $playerEnergy >= 5>> <div class="btn"><<button "Insult" "Dominate_Session_Insult">><</button>></div> <<else>> <div class="btn non-interacting" id="lick-insult-btn"><<button "Insult">><</button>></div> <<done>> <<run addHoverTooltip('lick-feet-btn', 'Requirements: Your domination: 0, submission level: 0, Your energy: 5')>> <</done>> <</if>> <<if $targetSubmission.value >= 1 && $playerDominance.value >= 1 && $playerEnergy >= 5>> <div class="btn"><<button "Lick feet" "Dominate_Session_LickFeet">><</button>></div> <<else>> <div class="btn non-interacting" id="lick-feet-btn"><<button "Lick feet">><</button>></div> <<done>> <<run addHoverTooltip('lick-feet-btn', 'Requirements: Your domination: 1, submission level: 1, Your energy: 5')>> <</done>> <</if>> <<if $targetSubmission.value >= 2 && $playerDominance.value >= 2 && $playerEnergy >= 5>> <div class="btn"><<button "Play with a leash" "Dominate_Session_LeashPlay">><</button>></div> <<else>> <div class="btn non-interacting" id="lick-leash-btn"><<button "Lick feet">><</button>></div> <<done>> <<run addHoverTooltip('lick-leash-btn', 'Requirements: Your domination: 2, submission level: 2, Your energy: 5')>> <</done>> <</if>> <<if $targetSubmission.value >= 3 && $playerDominance.value >= 3 && $playerEnergy >= 5>> <div class="btn"><<button "Tie up" "Dominate_Session_TieUp">><</button>></div> <<else>> <div class="btn non-interacting" id="lick-tie-btn"><<button "Tie up">><</button>></div> <<done>> <<run addHoverTooltip('lick-tie-btn', 'Requirements: Your domination: 3, submission level: 3, Your energy: 5')>> <</done>> <</if>> <<if $targetSubmission.value >= 4 && $playerDominance.value >= 4 && $playerEnergy >= 5>> <<if $player.genitalia() == "Vagina">> <div class="btn"><<button "Pussy licking" "Dominate_Session_PussyLicking">><</button>></div> <<elseif $player.genitalia() == "Penis">> <div class="btn"><<button "Blowjob" "Dominate_Session_Blowjob">><</button>></div> <</if>> <<else>> <<if $player.genitalia() == "Vagina">> <div class="btn non-interacting" id="lick-oral-btn"><<button "Pussy licking">><</button>></div> <<elseif $player.genitalia() == "Penis">> <div class="btn non-interacting" id="lick-oral-btn"><<button "Blowjob">><</button>></div> <</if>> <<done>> <<run addHoverTooltip('lick-oral-btn', 'Requirements: Your domination: 4, submission level: 4, Your energy: 5')>> <</done>> <</if>> <<if $targetSubmission.value >= 5 && $playerDominance.value >= 5 && $playerEnergy >= 5>> <div class="btn"><<button "Anus licking" "Dominate_Session_AnusLicking">><</button>></div> <<else>> <div class="btn non-interacting" id="lick-ass-licking-btn"><<button "Anus licking">><</button>></div> <<done>> <<run addHoverTooltip('lick-ass-licking-btn', 'Requirements: Your domination: 5, submission level: 5, Your energy: 5')>> <</done>> <</if>> <<if $targetSubmission.value >= 6 && $playerDominance.value >= 6 && $playerEnergy >= 5>> <div class="btn"><<button "Toys" "Dominate_Session_AnusToys">><</button>></div> <<else>> <div class="btn non-interacting" id="lick-toys-btn"><<button "Toys">><</button>></div> <<done>> <<run addHoverTooltip('lick-toys-btn', 'Requirements: Your domination: 6, submission level: 6, Your energy: 5')>> <</done>> <</if>> <<if $targetSubmission.value >= 7 && $playerDominance.value >= 7 && $playerEnergy >= 5 && $interactionNpc.genitalia() == "Vagina">> <div class="btn"><<button "Sex (Vaginal)" "Dominate_Session_SexVaginal">><</button>></div> <<elseif $interactionNpc.genitalia() == "Vagina">> <div class="btn non-interacting" id="lick-sex-vaginal-btn"><<button "Sex (Vaginal)">><</button>></div> <<done>> <<run addHoverTooltip('lick-sex-vaginal-btn', 'Requirements: Your domination: 7, submission level: 7, Your energy: 5')>> <</done>> <</if>> <<if $targetSubmission.value >= 7 && $playerDominance.value >= 7 && $playerEnergy >= 5>> <div class="btn"><<button "Sex (Anal)" "Dominate_Session_SexAnal">><</button>></div> <<else>> <div class="btn non-interacting" id="lick-sex-anal-btn"><<button "Sex (Anal)">><</button>></div> <<done>> <<run addHoverTooltip('lick-sex-anal-btn', 'Requirements: Your domination: 7, submission level: 7, Your energy: 5')>> <</done>> <</if>> /* <<if $targetSubmission.value >= 8 && $playerDominance.value >= 9 && $playerEnergy >= 5>> <div class="btn"><<button "Water sports" "Dominate_Session_WaterSports">><</button>></div> <<else>> <div class="btn non-interacting"><<button "Water sports">><</button>></div> <</if>> */ </div> <div class="btn padding-top"><<button "Back" "CharacterInteractions">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <div style="display:block; margin:0 auto; width:max-content; padding: 0 0 20px 20px;"> <table class="player-stats-view-table"> <thead> <tr class="player-stats-view-tr"> <th class="player-stats-view-th">Name</th> <th class="player-stats-view-th">Progress to Next Level</th> <th class="player-stats-view-th">Level</th> </tr> </thead> <tbody> <tr class="player-stats-view-tr"> <td class="player-stats-view-td"> <span class="player-stats-view-tooltip" data-tooltip="Determines the amount of damage you deal in combat."> Submission </span> </td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" id="char-sunmission-progress" ></div> </div> </td> <td class="player-stats-view-td" id="char-sunmission-value"></td> </tr> </tbody> </table> </div> <<done>> <<run UpdateProgressBar("char-sunmission-progress", $targetSubmissionProgression.value, $targetSubmissionProgression.max)>> <<run DisplayText("char-sunmission-value", $targetSubmission.value)>> <</done>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $player "You're such a filthy little slut, aren't you?">> <<if $targetSubmissionProgression.value < 45 && $targetSubmission.value == 0>> <<switch $player.gender()>> <<case "Male">> <<Chat $interactionNpc 'Fuck off, I’m not your slut, asshole.'>> <<case "Female">> <<Chat $interactionNpc 'Screw you, I’m not that pathetic.'>> <<case "Shemale">> <<Chat $interactionNpc 'Screw you, I’m not that pathetic.'>> <</switch>> <<elseif $targetSubmissionProgression.value < 75 && $targetSubmission.value == 0>> <<switch $player.gender()>> <<case "Male">> <<Chat $interactionNpc 'Uh, I guess you can call me that, sir.'>> <<case "Female">> <<Chat $interactionNpc 'If you say so, mistress, fine.'>> <<case "Shemale">> <<Chat $interactionNpc 'Alright, I’ll take it, go ahead.'>> <</switch>> <<else>> <<switch $player.gender()>> <<case "Male">> <<Chat $interactionNpc 'Yes, sir, I’m your dirty boy, keep going.'>> <<case "Female">> <<Chat $interactionNpc 'Oh, mistress, I’m your naughty girl, tell me more.'>> <<case "Shemale">> <<Chat $interactionNpc 'Yes, I’m your filthy pet, degrade me harder.'>> <</switch>> <</if>> <<SpendEnergy $player 5>> <<SpendTimeWithoutUpdate 5>> <<if $targetSubmission.value < 1>> <<set _randomProgression = random(5, 20)>> <<SetCharProgression $interactionNpc 'submission' _randomProgression true>> <</if>> <div class="btn padding-top"><<button "Continue" "Interaction_Dominate_Session">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $player "Get down and worship my feet, now.">> <<if $targetSubmissionProgression.value < 45 && $targetSubmission.value == 1>> <<switch $player.gender()>> <<case "Male">> <<Chat $interactionNpc 'No way, I’m not licking your damn feet.'>> <<case "Female">> <<Chat $interactionNpc 'Ugh, that’s gross, I’m not doing it.'>> <<case "Shemale">> <<Chat $interactionNpc 'Hell no, find someone else for that.'>> <</switch>> <<elseif $targetSubmissionProgression.value < 75 && $targetSubmission.value == 1>> <<switch $player.gender()>> <<case "Male">> <<Chat $interactionNpc 'Fine, I’ll do it, but don’t expect much.'>> <<case "Female">> <<Chat $interactionNpc 'Okay, I’ll lick them, whatever.'>> <<case "Shemale">> <<Chat $interactionNpc 'Alright, I’ll give it a try, I guess.'>> <</switch>> <<DominateTrainingShowVideo $player.gender() $interactionNpc.gender() "Lick feet" true true false>> <<else>> <<switch $player.gender()>> <<case "Male">> <<Chat $interactionNpc 'Mmm, your feet are perfect, sir, let me taste them.'>> <<case "Female">> <<Chat $interactionNpc 'Oh, mistress, I love serving your feet like this.'>> <<case "Shemale">> <<Chat $interactionNpc 'Your feet are divine, I’m so lucky to lick them.'>> <</switch>> <<DominateTrainingShowVideo $player.gender() $interactionNpc.gender() "Lick feet" true true false>> <</if>> <<SpendEnergy $player 5>> <<SpendTimeWithoutUpdate 5>> <<if $targetSubmission.value < 2>> <<set _randomProgression = random(5, 20)>> <<SetCharProgression $interactionNpc 'submission' _randomProgression true>> <</if>> <div class="btn padding-top"><<button "Continue" "Interaction_Dominate_Session">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $player "Time to put this leash on you and take you for a walk.">> <<if $targetSubmission.value < 1 && $targetSubmissionProgression < 45 && $targetSubmission.value == 2>> <<switch $player.gender()>> <<case "Male">> <<Chat $interactionNpc 'Fuck that, I’m not your dog, asshole.'>> <<case "Female">> <<Chat $interactionNpc 'No way, I’m not crawling like some pet.'>> <<case "Shemale">> <<Chat $interactionNpc 'Get that leash away from me, I’m not playing.'>> <</switch>> <<elseif $targetSubmission.value < 1 && $targetSubmissionProgression < 75 && $targetSubmission.value == 2>> <<switch $player.gender()>> <<case "Male">> <<Chat $interactionNpc 'Ugh, fine, put it on, let’s get this over with.'>> <<case "Female">> <<Chat $interactionNpc 'Okay, I’ll wear it, but don’t pull too hard.'>> <<case "Shemale">> <<Chat $interactionNpc 'Alright, leash me, I’ll follow for now.'>> <</switch>> <<DominateTrainingShowVideo $player.gender() $interactionNpc.gender() "Play with a leash" true true false>> <<else>> <<switch $player.gender()>> <<case "Male">> <<Chat $interactionNpc 'Yes, sir, lead me wherever you want, I’m yours.'>> <<case "Female">> <<Chat $interactionNpc 'Mistress, I’m your pet, guide me around.'>> <<case "Shemale">> <<Chat $interactionNpc 'Oh, I love being your leashed toy, take me anywhere.'>> <</switch>> <<DominateTrainingShowVideo $player.gender() $interactionNpc.gender() "Play with a leash" true true false>> <</if>> <<SpendEnergy $player 5>> <<SpendTimeWithoutUpdate 5>> <<if $targetSubmission.value < 3>> <<set _randomProgression = random(5, 20)>> <<SetCharProgression $interactionNpc 'submission' _randomProgression true>> <</if>> <div class="btn padding-top"><<button "Continue" "Interaction_Dominate_Session">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $player "I’m going to bind you so you can’t move an inch.">> <<if $targetSubmissionProgression.value < 45 && $targetSubmission.value == 3>> <<switch $player.gender()>> <<case "Male">> <<Chat $interactionNpc 'Hell no, I’m not letting you tie me up.'>> <<case "Female">> <<Chat $interactionNpc 'Forget it, I’m not that helpless.'>> <<case "Shemale">> <<Chat $interactionNpc 'No way, keep your ropes to yourself.'>> <</switch>> <<elseif $targetSubmissionProgression.value < 75 && $targetSubmission.value == 3>> <<switch $player.gender()>> <<case "Male">> <<Chat $interactionNpc 'Fine, go ahead, but don’t make it too tight.'>> <<case "Female">> <<Chat $interactionNpc 'Okay, tie me, but I’m watching you.'>> <<case "Shemale">> <<Chat $interactionNpc 'Alright, I’ll let you, just do it quick.'>> <</switch>> <<DominateTrainingShowVideo $player.gender() $interactionNpc.gender() "Tie up" true true true>> <<else>> <<switch $player.gender()>> <<case "Male">> <<Chat $interactionNpc 'Fuck, sir, tie me tight, I want to feel helpless.'>> <<case "Female">> <<Chat $interactionNpc 'Mistress, please, make the ropes tight, I’m all yours.'>> <<case "Shemale">> <<Chat $interactionNpc 'Oh, bind me up, I want to be completely at your mercy.'>> <</switch>> <<DominateTrainingShowVideo $player.gender() $interactionNpc.gender() "Tie up" true true true>> <</if>> <<SpendEnergy $player 5>> <<SpendTimeWithoutUpdate 5>> <<if $targetSubmission.value < 4>> <<set _randomProgression = random(5, 20)>> <<SetCharProgression $interactionNpc 'submission' _randomProgression true>> <</if>> <div class="btn padding-top"><<button "Continue" "Interaction_Dominate_Session">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $player "Get between my legs and lick my pussy, now.">> <<if $targetSubmissionProgression.value < 45 && $targetSubmission.value == 4>> <<switch $player.gender()>> <<case "Male">> <<Chat $interactionNpc 'No fucking way, I’m not doing that.'>> <<case "Female">> <<Chat $interactionNpc 'Ugh, that’s too much, I’m out.'>> <<case "Shemale">> <<Chat $interactionNpc 'Hell no, I’m not going there.'>> <</switch>> <<elseif $targetSubmissionProgression.value < 75 && $targetSubmission.value == 4>> <<switch $player.gender()>> <<case "Male">> <<Chat $interactionNpc 'Okay, I’ll try, but don’t expect miracles.'>> <<case "Female">> <<Chat $interactionNpc 'Fine, I’ll do it, just don’t push me.'>> <<case "Shemale">> <<Chat $interactionNpc 'Alright, I’ll lick, but take it easy.'>> <</switch>> <<DominateTrainingShowVideo $player.gender() $interactionNpc.gender() "Lick pussy" true true true>> <<else>> <<switch $player.gender()>> <<case "Male">> <<Chat $interactionNpc 'Fuck, sir, your pussy tastes so good, I’m hooked.'>> <<case "Female">> <<Chat $interactionNpc 'Mistress, mmm, I love eating your pussy, please you.'>> <<case "Shemale">> <<Chat $interactionNpc 'Oh, your pussy’s perfect, I could lick it all day.'>> <</switch>> <<DominateTrainingShowVideo $player.gender() $interactionNpc.gender() "Lick pussy" true true true>> <</if>> <<SpendEnergy $player 5>> <<SpendTimeWithoutUpdate 5>> <<if $targetSubmission.value < 5>> <<set _randomProgression = random(10, 25)>> <<SetCharProgression $interactionNpc 'submission' _randomProgression true>> <</if>> <div class="btn padding-top"><<button "Continue" "Interaction_Dominate_Session">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $player "Get on your knees and suck me off.">> <<if $targetSubmissionProgression.value < 45 && $targetSubmission.value == 4>> <<switch $player.gender()>> <<case "Male">> <<Chat $interactionNpc 'Fuck no, I’m not sucking your dick.'>> <<case "Female">> <<Chat $interactionNpc 'No way, I’m not putting that in my mouth.'>> <<case "Shemale">> <<Chat $interactionNpc 'Hell no, find someone else for that.'>> <</switch>> <<elseif $targetSubmissionProgression.value < 75 && $targetSubmission.value == 4>> <<switch $player.gender()>> <<case "Male">> <<Chat $interactionNpc 'Alright, I’ll do it, but don’t expect much.'>> <<case "Female">> <<Chat $interactionNpc 'Okay, I’ll try, just don’t push it.'>> <<case "Shemale">> <<Chat $interactionNpc 'Fine, I’ll give it a shot, I guess.'>> <</switch>> <<DominateTrainingShowVideo $player.gender() $interactionNpc.gender() "Blowjob" false true false>> <<else>> <<switch $player.gender()>> <<case "Male">> <<Chat $interactionNpc 'Sir, your cock’s so perfect, let me worship it.'>> <<case "Female">> <<Chat $interactionNpc 'Mistress, mmm, I love sucking your cock.'>> <<case "Shemale">> <<Chat $interactionNpc 'Oh, your dick is amazing, I’m so lucky to taste it.'>> <</switch>> <<DominateTrainingShowVideo $player.gender() $interactionNpc.gender() "Blowjob" false true false>> <</if>> <<SpendEnergy $player 5>> <<SpendTimeWithoutUpdate 5>> <<if $targetSubmission.value < 5>> <<set _randomProgression = random(10, 25)>> <<SetCharProgression $interactionNpc 'submission' _randomProgression true>> <</if>> <div class="btn padding-top"><<button "Continue" "Interaction_Dominate_Session">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $player "Bend over, I’m going to lick that tight ass.">> <<if $targetSubmissionProgression.value < 45 && $targetSubmission.value == 5>> <<switch $player.gender()>> <<case "Male">> <<Chat $interactionNpc 'No fucking way, keep your tongue away.'>> <<case "Female">> <<Chat $interactionNpc 'Gross, I’m not letting you do that.'>> <<case "Shemale">> <<Chat $interactionNpc 'Hell no, that’s off-limits.'>> <</switch>> <<elseif $targetSubmissionProgression.value < 75 && $targetSubmission.value == 5>> <<switch $player.gender()>> <<case "Male">> <<Chat $interactionNpc 'Ugh, fine, if you really want to.'>> <<case "Female">> <<Chat $interactionNpc 'Okay, I’ll try, but it’s weird.'>> <<case "Shemale">> <<Chat $interactionNpc 'Alright, go ahead, I guess.'>> <</switch>> <<DominateTrainingShowVideo $player.gender() $interactionNpc.gender() "Anus Licking" true true false>> <<else>> <<switch $player.gender()>> <<case "Male">> <<Chat $interactionNpc 'Fuck, sir, that feels so dirty, don’t stop.'>> <<case "Female">> <<Chat $interactionNpc 'Mistress, oh god, your tongue in my ass is incredible.'>> <<case "Shemale">> <<Chat $interactionNpc 'Yes, lick my ass, it’s so fucking good.'>> <</switch>> <<DominateTrainingShowVideo $player.gender() $interactionNpc.gender() "Anus Licking" true true false>> <</if>> <<SpendEnergy $player 5>> <<SpendTimeWithoutUpdate 5>> <<if $targetSubmission.value < 6>> <<set _randomProgression = random(10, 25)>> <<SetCharProgression $interactionNpc 'submission' _randomProgression true>> <</if>> <div class="btn padding-top"><<button "Continue" "Interaction_Dominate_Session">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $player "I’m going to slide this toy into your ass.">> <<if $targetSubmissionProgression.value < 45 && $targetSubmission.value == 6>> <<switch $player.gender()>> <<case "Male">> <<Chat $interactionNpc 'No fucking way, that’s not happening.'>> <<case "Female">> <<Chat $interactionNpc 'Hell no, keep that out of my ass.'>> <<case "Shemale">> <<Chat $interactionNpc 'Forget it, I’m not doing that.'>> <</switch>> <<elseif $targetSubmissionProgression.value < 75 && $targetSubmission.value == 6>> <<switch $player.gender()>> <<case "Male">> <<Chat $interactionNpc 'Ugh, fine, but go slow, okay?'>> <<case "Female">> <<Chat $interactionNpc 'Okay, I’ll try, but be careful.'>> <<case "Shemale">> <<Chat $interactionNpc 'Alright, I’ll let you, just take it easy.'>> <</switch>> <<DominateTrainingShowVideo $player.gender() $interactionNpc.gender() "Toys in ass" false false true>> <<else>> <<switch $player.gender()>> <<case "Male">> <<Chat $interactionNpc 'Sir, fuck, put it in, I want it in my ass.'>> <<case "Female">> <<Chat $interactionNpc 'Mistress, please, fill my ass with that toy.'>> <<case "Shemale">> <<Chat $interactionNpc 'Oh, yes, shove it in my ass, I’m ready.'>> <</switch>> <<DominateTrainingShowVideo $player.gender() $interactionNpc.gender() "Toys in ass" false false true>> <</if>> <<SpendEnergy $player 5>> <<SpendTimeWithoutUpdate 5>> <<if $targetSubmission.value < 7>> <<set _randomProgression = random(10, 25)>> <<SetCharProgression $interactionNpc 'submission' _randomProgression true>> <</if>> <div class="btn padding-top"><<button "Continue" "Interaction_Dominate_Session">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $player "I’m going to fuck your pussy hard.">> <<if $targetSubmissionProgression.value < 45 && $targetSubmission.value == 7>> <<switch $player.gender()>> <<case "Male">> <<Chat $interactionNpc 'No way, you’re not touching me there.'>> <<case "Female">> <<Chat $interactionNpc 'Fuck off, I’m not letting you fuck me.'>> <<case "Shemale">> <<Chat $interactionNpc 'Hell no, that’s not happening.'>> <</switch>> <<elseif $targetSubmissionProgression.value < 75 && $targetSubmission.value == 7>> <<switch $player.gender()>> <<case "Male">> <<Chat $interactionNpc 'Fine, do it, but don’t expect me to love it.'>> <<case "Female">> <<Chat $interactionNpc 'Okay, go ahead, I’ll deal with it.'>> <<case "Shemale">> <<Chat $interactionNpc 'Alright, I’ll take it, just be quick.'>> <</switch>> <<DominateTrainingShowVideo $interactionNpc.gender() $player.gender() "Vaginal Sex" false false true>> <<else>> <<switch $player.gender()>> <<case "Male">> <<Chat $interactionNpc 'Sir, please, pound my pussy, I’m yours.'>> <<case "Female">> <<Chat $interactionNpc 'Mistress, yes, fuck my pussy deep, I need it.'>> <<case "Shemale">> <<Chat $interactionNpc 'Oh, fuck my pussy hard, I’m all yours.'>> <</switch>> <<DominateTrainingShowVideo $interactionNpc.gender() $player.gender() "Vaginal Sex" false false true>> <</if>> <<if $targetSubmission.value < 8>> <<set _randomProgression = random(10, 25)>> <<SetCharProgression $interactionNpc 'submission' _randomProgression true>> <</if>> <<SpendEnergy $player 5>> <<SpendTimeWithoutUpdate 5>> <div class="btn padding-top"><<button "Continue" "Interaction_Dominate_Session">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $player "I’m going to fuck your ass now.">> <<if $targetSubmissionProgression.value < 45 && $targetSubmission.value == 7>> <<switch $player.gender()>> <<case "Male">> <<Chat $interactionNpc 'Hell no, you’re not fucking my ass.'>> <<case "Female">> <<Chat $interactionNpc 'No way, that’s not happening.'>> <<case "Shemale">> <<Chat $interactionNpc 'Forget it, I’m not letting you in.'>> <</switch>> <<elseif $targetSubmissionProgression.value < 75 && $targetSubmission.value == 7>> <<switch $player.gender()>> <<case "Male">> <<Chat $interactionNpc 'Ugh, fine, but you better go slow.'>> <<case "Female">> <<Chat $interactionNpc 'Okay, I’ll try, but be gentle.'>> <<case "Shemale">> <<Chat $interactionNpc 'Alright, I’ll let you, just don’t hurt me.'>> <</switch>> <<DominateTrainingShowVideo $player.gender() $interactionNpc.gender() "Anal Sex" false false false>> <<else>> <<switch $player.gender()>> <<case "Male">> <<Chat $interactionNpc 'Sir, yes, take my ass, I’m all yours.'>> <<case "Female">> <<Chat $interactionNpc 'Mistress, fuck my ass, I want it so bad.'>> <<case "Shemale">> <<Chat $interactionNpc 'Oh, please, fuck my ass deep, I’m ready.'>> <</switch>> <<DominateTrainingShowVideo $player.gender() $interactionNpc.gender() "Anal Sex" false false false>> <</if>> <<if $targetSubmission.value < 10>> <<set _randomProgression = random(10, 25)>> <<SetCharProgression $interactionNpc 'submission' _randomProgression true>> <</if>> <<SpendEnergy $player 5>> <<SpendTimeWithoutUpdate 5>> <div class="btn padding-top"><<button "Continue" "Interaction_Dominate_Session">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $player "Open up, I’m going to mark you with my piss.">> <<if $targetSubmissionProgression.value < 45>> <<switch $player.gender()>> <<case "Male">> <<Chat $interactionNpc 'Fuck no, I’m not your toilet, asshole.'>> <<case "Female">> <<Chat $interactionNpc 'Gross, I’m not letting you piss on me.'>> <<case "Shemale">> <<Chat $interactionNpc 'Hell no, that’s disgusting, forget it.'>> <</switch>> <<elseif $targetSubmissionProgression.value < 75>> <<switch $player.gender()>> <<case "Male">> <<Chat $interactionNpc 'Ugh, fine, if you’re into that, go ahead.'>> <<case "Female">> <<Chat $interactionNpc 'Okay, I’ll take it, but this is weird.'>> <<case "Shemale">> <<Chat $interactionNpc 'Alright, do it, I’ll deal with it.'>> <</switch>> <<else>> <<switch $player.gender()>> <<case "Male">> <<Chat $interactionNpc 'Sir, fuck, yes, cover me, I’m your dirty boy.'>> <<case "Female">> <<Chat $interactionNpc 'Mistress, please, soak me, I’m your slut.'>> <<case "Shemale">> <<Chat $interactionNpc 'Oh, mark me with your piss, I’m all yours.'>> <</switch>> <</if>> <<if $targetSubmission.value < 10>> <<set _randomProgression = random(5, 20)>> <<SetCharProgression $interactionNpc 'submission' _randomProgression true>> <</if>> <<SpendEnergy $player 5>> <<SpendTimeWithoutUpdate 5>> <div class="btn padding-top"><<button "Continue" "Interaction_Dominate_Session">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <div class="padding-top"> <div class="btn-container"> <<ChanceButton 'Insult' 'Interaction_Insult' $player $interactionNpc '{Friend: 0, Love: 0, Fear: 20, Lust: 0, CheckResistance: true, CheckSexPref: false}' 'Insult'>> <<ChanceButton 'Chase away' 'Interaction_ChaseAway' $player $interactionNpc '{Friend: 0, Love: 0, Fear: 60, Lust: 0, CheckResistance: true, CheckSexPref: false}' 'ChaseAway'>> <div class="btn"><<button "Fight" "Fight_Aggressive">><</button>></div> /* <div class="btn"><<button "SexFight" "Fight_SexFightStart">><</button>></div> */ </div> </div> <div class="padding-top"> <div class="btn"><<button "Back" "CharacterInteractions">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _decreaseRelations = Random (-8, -25)>> <<IncreaseFriendship $player $interactionNpc _decreaseRelations>> <<set _battleSetControls = {attack: false, seduce: true, items: false, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls undefined undefined "SexFight">> <</nobr>>
<<nobr>> <<if $playerInitFight == undefined>> <<set $playerInitFight = 0>> <<set $dayFight = $dateTime.day>> <</if>> <<set $playerInitFight += 1>> <<set _decreaseRelations = Random (-8, -25)>> <<IncreaseFriendship $player $interactionNpc _decreaseRelations>> <<set _battleSetControls = {attack: true, seduce: true, items: true, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls undefined undefined>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <div class="padding-top"> <div class="btn-container"> <<ChanceButton 'Tell me about you' 'TellAboutYou' $player $interactionNpc '{Friend: 20, Love: 0, Fear: 0, Lust: 0, CheckResistance: false, CheckSexPref: false}' 'TellAboutYou'>> <<ChanceButton 'What\'s up?' 'Interaction_WhatsUp' $player $interactionNpc '{Friend: 10, Love: 0, Fear: 0, Lust: 0, CheckResistance: false, CheckSexPref: false}' 'WhatsUp'>> <<ChanceButton 'What do you think of me?' 'Interaction_WhatDoYouThinkOfMe' $player $interactionNpc '{Friend: 15, Love: 0, Fear: 0, Lust: 0, CheckResistance: false, CheckSexPref: false}' 'WhatDoYouThinkOfMe'>> <<if $player.characterEvents.isEventRegistered($interactionNpc.info.id, "Have a phone number") == false>> <<ChanceButton 'Can I get your number?' 'Interaction_GetNumber' $player $interactionNpc '{Friend: 40, Love: 0, Fear: 0, Lust: 0, CheckResistance: false, CheckSexPref: false}' 'GetNumber'>> <<else>> <div class="btn non-interacting"><<button "Can I get your number?">><</button>></div> <</if>> <<switch $interactionNpc.info.characterWork>> <<case "Pimp">> <<include "AskQuestions_Pimp">> <</switch>> </div> </div> <div class="padding-top"> <div class="btn"><<button "Back" "CharacterInteractions">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <div class="padding-top"> <div class="btn-container"> <<ChanceButton 'Caress' 'Interactions_Caress' $player $interactionNpc '{Friend: 30, Love: 10, Fear: 0, Lust: 1, Horny: 0, CheckResistance: false, CheckSexPref: false}' 'Caress'>> <<ChanceButton 'Hug' 'Interactions_Hug' $player $interactionNpc '{Friend: 40, Love: 20, Fear: 0, Lust: 2, Horny: 0, CheckResistance: false, CheckSexPref: true}' 'Hug'>> <<ChanceButton 'Kiss' 'Interactions_Kiss' $player $interactionNpc '{Friend: 0, Love: 60, Fear: 0, Lust: 3, Horny: 0, CheckResistance: false, CheckSexPref: true}' 'kiss'>> <<ChanceButton 'Slap ass' 'Interactions_SlapAss' $player $interactionNpc '{Friend: 0, Love: 70, Fear: 0, Lust: 4, Horny: 0, CheckResistance: false, CheckSexPref: true}' 'SlapAss'>> <<if $interactionNpc.body.breastSize.value > 0>> <<ChanceButton 'Touch boobs' 'Interactions_TouchBoobs' $player $interactionNpc '{Friend: 0, Love: 80, Fear: 0, Lust: 4, Horny: 0, CheckResistance: false, CheckSexPref: true}' 'TouchBoobs'>> <<else>> <div class="btn non-interacting"><<button "Touch boobs">><</button>></div> <</if>> <<ChanceButton 'Sex' 'Interactions_HaveSex' $player $interactionNpc '{Friend: 0, Love: 90, Fear: 0, Lust: 5, Horny: 0, CheckResistance: false, CheckSexPref: true}' 'Sex'>> </div> </div> <div class="padding-top"> <div class="btn"><<button "Back" "CharacterInteractions">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _curLoc = passage()>> <<if $source != "SpikeDrink_BarEvent">> <<include "Filter">> <</if>> <<if $player.inventory.items.size > 0>> <div class="item-shop-container"> <<for _item range $player.inventory.items>> <<if $filterType != "All">> <<if _item.type != _item.getItemTypeByString($filterType)>> <<continue>> <</if>> <</if>> <<capture _item>> <div class="shop-item"> __<<link '<h3 class="item-title"><<print _item.name>></h3>'>> <<run Dialog.setup(_item.name)>> <<run Dialog.wiki(_item.getImg())>> <<run Dialog.open();>> <</link>>__ <p class="item-quantity">Quantity: <<print _item.quantity>></p> <<if $source == "SpikeDrink_BarEvent">> <div class="btn"> <<button "To spike a drink" "SpikeDrind_InviteToBar">> <<run $filterType = _item.getItemStringByType(_item.type)>> <<set $item = _item>> <<unset $source>> <</button>></div> <<else>> <<if _item.type == 1>> /* Clothing */ <<ChanceButton 'Give' 'Interactions_GiveItems_Try' $player $interactionNpc '{Friend: 50, Love: 0, Fear: 0, Lust: 0, CheckResistance: false, CheckSexPref: false}' 'TryGiveCloth' '<<run $filterType = _item.getItemStringByType(_item.type)>> <<set $item = _item>>'>> <<elseif _item.type == 2>> /* Drugs */ <<ChanceButton 'Give' 'Interactions_GiveItems_Try' $player $interactionNpc '{Friend: 70, Love: 0, Fear: 0, Lust: 0, CheckResistance: false, CheckSexPref: false}' 'TryGiveDrug' '<<run $filterType = _item.getItemStringByType(_item.type)>> <<set $item = _item>>'>> <<elseif _item.type == 3 || _item.type == 4>> /* Gift */ <<ChanceButton 'Give' 'Interactions_GiveItems_Try' $player $interactionNpc '{Friend: 0, Love: 0, Fear: 0, Lust: 0, CheckResistance: false, CheckSexPref: false}' 'TryGiveGift' '<<run $filterType = _item.getItemStringByType(_item.type)>> <<set $item = _item>>'>> <<elseif _item.type == 5>> /* SexToy */ <<ChanceButton 'Give' 'Interactions_GiveItems_Try' $player $interactionNpc '{Friend: 0, Love: 70, Fear: 0, Lust: 0, CheckResistance: false, CheckSexPref: false}' 'TryGiveSexToy' '<<run $filterType = _item.getItemStringByType(_item.type)>> <<set $item = _item>>'>> <<else>> <</if>> <</if>> </div> <</capture>> <</for>> </div> <</if>> <div class="padding-top"> <<if $source == "SpikeDrink_BarEvent">> <<BackButton "<<set $canShowStatsBtn = true>> <<unset $interactionNpc $interactionType $filterType $source>> <<set $gameSettings.allowSaves = true>>">> <<else>> <div class="btn"><<button "Back" "CharacterInteractions">> <<unset $filterType>> <</button>></div> <</if>> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if $item.type == 1>> <<CheckChance 'Interactions_GiveItems_Succes' 'Interactions_GiveItems_Failed' 'Interactions_GiveItems_Failed_Twice' 'Interactions_GiveItems' 'TryGiveCloth' '{createBackButton: true, createTwiceBackButton: true}'>> <<elseif $item.type == 2>> <<CheckChance 'Interactions_GiveItems_Succes' 'Interactions_GiveItems_Failed' 'Interactions_GiveItems_Failed_Twice' 'Interactions_GiveItems' 'TryGiveDrug' '{createBackButton: true, createTwiceBackButton: true}'>> <<elseif $item.type == 3 || $item.type == 4>> <<CheckChance 'Interactions_GiveItems_Succes' 'Interactions_GiveItems_Failed' 'Interactions_GiveItems_Failed_Twice' 'Interactions_GiveItems' 'TryGiveGift' '{createBackButton: true, createTwiceBackButton: true}'>> <<elseif $item.type == 5>> <<CheckChance 'Interactions_GiveItems_Succes' 'Interactions_GiveItems_Failed' 'Interactions_GiveItems_Failed_Twice' 'Interactions_GiveItems' 'TryGiveDrug' '{createBackButton: true, createTwiceBackButton: true}'>> <</if>> <</nobr>>
<<nobr>> <<if $item.type == 1>> /* Cloth */ <<set _phrase = [ "Alright, I’ll give it a try. It actually looks kinda cool!", "Hey, why not? I’ll wear it!", "Sure, I’d love to! Thanks for this.", "Alright, I’ll put it on right now. Let’s see how it looks!", "You know what? I’ll try it on. Thanks for the gift!", ].random()>> <<elseif $item.type == 2>> /* Drugs */ <<set _phrase = [ "Alright, I’ll give it a shot. Just this once.", "Eh, why not? I’ll try a little.", "Okay, you convinced me. Let’s do it.", "Alright, hand it over. I’m in.", "Alright, I’ll try it, just this once.", "Sure, why not? I’ll give it a go.", "Okay, I’m in. Let’s see what it’s like.", "Yeah, I’ll take some. Just to see how it feels.", "Alright, I guess one time won’t hurt.", ].random()>> <<elseif $item.type == 3 || $item.type == 4>> /* Gifts and Food*/ <<set _phrase = [ "Wow, really? Thank you, that’s so nice of you!", "Oh, you didn’t have to! But I’ll happily take it!", "Aw, that’s sweet. I’d love to accept it.", "Thank you! I’ll treasure this, really.", "You’re too kind! I’ll gladly take it.", ].random()>> /* <<set $setFriendship = Random(1,5)>> */ <<ChatMessage 'Friendship increased'>> /* <<IncreaseFriendship $player $interactionNpc $setFriendship>> */ <<elseif $item.type == 5>> /* Sex Toys */ <<set _phrase = [ "Well, that’s... unexpected, but sure, I’ll take it!", "Oh, wow, I didn’t see that coming, but why not?", "Okay, you got me curious—I’ll give it a try.", "Alright, I’ll accept it. Let’s see what all the fuss is about!", "Alright, you’ve convinced me! I’ll take it.", ].random()>> <</if>> <<Chat $interactionNpc _phrase>> <<if $item.type == 1>> <<run $interactionNpc.inventory.addItem($item.copy(1))>> <<run $interactionNpc.useItem($item, $player)>> <<elseif $item.type == 2 || $item.type == 3 || $item.type == 4>> <<run $interactionNpc.useItem($item, $player)>> <</if>> <<run $player.inventory.removeItem($item.name, 1)>> <div class="padding-top"> <div class="btn"><<button "Continue" "Interactions_GiveItems">><</button>></div> </div> <</nobr>>
<<nobr>> <<if $item.type == 1>> /* Cloth */ <<set _phrase = [ "No thanks, it’s really not my style.", "I appreciate it, but I’m not interested.", "Thanks, but I don’t think this would suit me.", "It’s nice, but I’m gonna pass.", "I’m good, but thanks anyway.", ].random()>> <<elseif $item.type == 2>> /* Drugs */ <<set _phrase = [ "Nah, I’m good. Not my thing.", "No thanks, I don’t mess with that stuff.", "I’m not into it.", "I’ll pass. That’s not for me.", "No, thanks. That’s not really my thing.", "Nah, I’m good. I don’t do that stuff.", "Appreciate it, but I’ll pass.", "Not interested, but thanks anyway.", "Nope, that’s a hard no from me.", ].random()>> <<elseif $item.type == 3 || $item.type == 4>> /* Gifts and Food*/ <<set _phrase = [ "That’s really generous, but I can’t accept it.", "Oh, thank you, but I’d feel weird taking it.", "I appreciate it, but it’s too much, really.", "No, but thank you so much for the thought.", "That’s very kind, but I’m going to have to say no.", ].random()>> <<elseif $item.type == 5>> /* Sex Toys */ <<set _phrase = [ "Thanks, but that’s really not my thing.", "I appreciate it, but I’ll have to pass on this one.", "Uh, no thanks, I think I’m good.", "That’s nice of you, but I’m not interested.", "I’ll pass, but thanks anyway.", ].random()>> <</if>> <<Chat $interactionNpc _phrase>> <<if $item.type == 1 || $item.type == 2>> <div class="padding-top"> <<ChanceButton 'Attempt by force' 'Interactions_GiveItems_Failed_TryForce' $player $interactionNpc '{Friend: 0, Love: 0, Fear: 70, Lust: 0, CheckResistance: true, CheckSexPref: false}' 'GiveDrugTryForce'>> </div> <</if>> <</nobr>>
<<nobr>> <<if $item.type == 1>> /* Cloth */ <<set _phrase = [ "I already said no. Can you drop it?", "Seriously, stop asking. I’m not wearing it.", "Look, it’s just not for me, alright?", "Come on, I told you I don’t want it.", "Enough. I’m not wearing it, so let it go.", ].random()>> <<elseif $item.type == 2>> /* Drugs */ <<set _phrase = [ "I said no. Why do you keep asking?", "Come on, drop it. I’m not interested.", "How many times do I have to say no?", "Enough already! I don’t want any.", "I told you, I’m not doing it. Stop pushing.", ].random()>> <<elseif $item.type == 3 || $item.type == 4>> /* Gifts and Food*/ <<set _phrase = [ "I’ve already said no. Please stop trying.", "Come on, I really don’t want to take it. Just keep it.", "I told you, I don’t need this. Let it go.", "Enough with the gift thing, alright? I’m not taking it.", "Look, I appreciate it, but I’m not changing my mind.", ].random()>> <<elseif $item.type == 5>> /* Sex Toys */ <<set _phrase = [ "I already said no. Please stop asking.", "Seriously, drop it. I’m not interested.", "Look, I don’t want it, okay? Let’s move on.", "Enough with this. I’ve told you I’m not taking it.", "I’m really not into it, so let’s just leave it there.", ].random()>> <</if>> <<Chat $interactionNpc _phrase>> <<if $item.type == 1 || $item.type == 2>> <div class="padding-top"> <<ChanceButton 'Attempt by force' 'Interactions_GiveItems_Failed_TryForce' $player $interactionNpc '{Friend: 0, Love: 0, Fear: 70, Lust: 0, CheckResistance: true, CheckSexPref: false}' 'GiveDrugTryForce'>> </div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckChance 'Interactions_GiveItems_Failed_TryForce_Succes' 'Interactions_GiveItems_Failed_TryForce_Failed' 'Interactions_GiveItems_Failed_TryForce_Failed' 'Interactions_GiveItems' 'GiveItemTryForce' '{createBackButton: false, createTwiceBackButton: false}'>> <</nobr>>
<<nobr>> <<if $item.type == 1>> /* Cloth */ <<set _phrase = [ "Fine, if it’ll make you happy, I’ll put it on.", "Alright, alright, I’ll wear it just to stop the nagging.", "Okay, if it gets you off my back, I’ll try it.", "I didn’t want to, but... fine, I’ll put it on.", "If that’s what it takes for you to stop, then fine, I’ll wear it.", ].random()>> <<elseif $item.type == 2>> /* Drugs */ <<set _phrase = [ "Fine, if it’ll shut you up, I’ll try it.", "Alright, alright, I’ll do it... just stop pushing.", "I didn’t want to, but whatever, let’s just get it over with.", "You’re not giving me much of a choice here... fine.", "Alright, if it means you’ll leave me alone after.", ].random()>> <</if>> <<Chat $interactionNpc _phrase>> <<if $item.type == 2>> <<run $interactionNpc.useItem($item, $player)>> <</if>> <<run $player.inventory.removeItem($item.name, 1)>> <div class="padding-top"> <div class="btn"><<button "Continue" "Interactions_GiveItems">><</button>></div> </div> <</nobr>>
<<nobr>> <<if $item.type == 1>> /* Cloth */ <<set _phrase = [ "I said no! Back off!", "I told you to stop pushing. Now it’s on!", "You think you can force me? Not happening!", "Get that away from me, or we’re gonna have a problem.", "I’m done with this. You’re not making me do anything!", ].random()>> <<elseif $item.type == 2>> /* Drugs */ <<set _phrase = [ "Back off! I said no, and I mean it!", "I told you to stop, and now you’re gonna wish you had.", "You don’t get to push me around. Hands off!", "Enough! I said no, and now you’re in for it.", "I’m done with you. You’re about to regret this.", ].random()>> <</if>> <<Chat $interactionNpc _phrase>> <div class="padding-top"> <div class="btn"><<button "Fight">> <<set _battleSetControls = {attack: true, seduce: true, items: true, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls undefined undefined>> <</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _surgeryMsg = "Persuade " + $interactionNpc.pronounHimHer() + " to have the surgery">> <div class="padding-top"> <div class="btn-container"> <div class="btn"><<button "Change sexual preference" "Interactions_ChangeSexPref_Choise">><</button>></div> <div class="btn"><<button "Change preferred sexual role" "Interactions_ChangeSexRole_Choise">><</button>></div> <div class="btn"><<button "Change clothing preferences" "Interactions_ChangeClothPref_Choise">><</button>></div> <div class="btn"><<button "Hormone therapy persuasion" "Interactions_HormoneTherapy_Choise">><</button>></div> <<ChanceButton _surgeryMsg 'Interactions_PersuadeSurgery' $player $interactionNpc '{Friend: 90, Love: 90, Fear: 0, Lust: 0, CheckResistance: true, CheckSexPref: false}' 'PersuadeSurgery'>> <<if $interactionNpc.gender() != "Male" && ($interactionNpc.info.characterWork == "Student" || $interactionNpc.info.characterWork == "None") && ($player.characterEvents.isEventRegistered($player.info.id, "CanRecruit Hookers") == true || $player.characterEvents.isEventRegistered($player.info.id, "Became A Pimp") == true)>> <<ChanceButton 'Persuade to become a whore' 'Interactions_BecomeAWhore' $player $interactionNpc '{Friend: 75, Love: 0, Fear: 0, Lust: 9, CheckResistance: false, CheckSexPref: false}' 'BecomeAWhore'>> <<else>> <div class="btn non-interacting"><<button "Persuade to become a whore">><</button>></div> <</if>> <<ChanceButton 'Change name' 'Interactions_ChangeName' $player $interactionNpc '{Friend: 80, Love: 0, Fear: 0, Lust: 0, CheckResistance: false, CheckSexPref: false}' 'ChangeName'>> <<ChanceButton 'Change your clothes' 'ChangeClothing' $player $interactionNpc '{Friend: 80, Love: 0, Fear: 0, Lust: 0, CheckResistance: false, CheckSexPref: false}' 'ChangeClothing'>> </div> </div> <div class="padding-top"> <div class="btn"><<button "Back" "CharacterInteractions">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <div class="padding-top"> <div class="btn-container"> <<ChanceButton 'Flirt' 'Interaction_Flirt' $player $interactionNpc '{Friend: 25, Love: 5, Fear: 0, Lust: 1, CheckResistance: false, CheckSexPref: true}' 'Flirt'>> </div> </div> <div class="padding-top"> <div class="btn"><<button "Back" "CharacterInteractions">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <div class="padding-top"> <div class="btn-container"> <<ChanceButton "Casual conversation" "Casual_Conversation_Talk" $player $interactionNpc '{Friend: 5, Love: 0, Fear: 0, Lust: 0, CheckResistance: false}' "Casual Conversation" false>> <<ChanceButton "Dirty talk" "Dirty_Talk_Talk" $player $interactionNpc '{Friend: 30, Love: 50, Fear: 0, Lust: 2, CheckResistance: false}' "Dirty talk" true>> <<ChanceButton "Apologize" "Apologize_Talk" $player $interactionNpc '{Friend: 10, Love: 0, Fear: 0, Lust: 0, CheckResistance: false}' "Apologize" false>> </div> </div> <div class="padding-top"> <div class="btn"><<button "Back" "CharacterInteractions">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckChance "CasualConversation" "NPCReject" "NPCReject_Again" "Interactions_Talk" "Casual Conversation" '{createBackButton: true, createTwiceBackButton: true}'>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckChance "DirtyTalk" "NPCReject" "NPCReject_Again" "Interactions_Talk" "Dirty talk" '{createBackButton: true, createTwiceBackButton: true}'>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckChance "Apologize" "NPCReject_Apologize" "NPCReject_Apologize_Again" "Interactions_Talk" "Apologize" '{createBackButton: true, createTwiceBackButton: true}'>> <</nobr>>
<<nobr>> <<run _traits = getCharacterTraits($interactionNpc)>> <<run _phrase = getStatusPhrase("Reject", "Failed", _traits[0])>> <<Chat $interactionNpc _phrase>> <<set _moodDecrease = Random(-1, -5)>> <<SetMood $interactionNpc _moodDecrease>> <</nobr>>
<<nobr>> <<run _traits = getCharacterTraits($interactionNpc)>> <<run _phrase = getStatusPhrase("Reject", "FailedAgain", _traits[0])>> <<Chat $interactionNpc _phrase>> <<set _moodDecrease = Random(-1, -5)>> <<SetMood $interactionNpc _moodDecrease>> <<set _decreaseRelations = Random (-1, -3)>> <<IncreaseFriendship $player $interactionNpc _decreaseRelations>> <</nobr>>
<<nobr>> <<run _traits = getCharacterTraits($interactionNpc)>> <<if $interactionNpc.dailyEvents.getOrRegisterEvent($player.info.id, "Resentment", 0) > 0>> <<run _phrase = getStatusPhrase("Apologize", "Failed", _traits[0])>> <<Chat $interactionNpc _phrase>> <<set _moodDecrease = Random(-1, -5)>> <<SetMood $interactionNpc _moodDecrease>> <<else>> <<run _phrase = getStatusPhrase("Apologize", "Neutral", _traits[0])>> <<Chat $interactionNpc _phrase>> <<run $interactionNpc.dailyEvents.unregisterEvent($player.info.id, "Reject Apologize")>> <</if>> <</nobr>>
<<nobr>> <<run _traits = getCharacterTraits($interactionNpc)>> <<run _phrase = getStatusPhrase("Apologize", "FailedAgain", _traits[0])>> <<Chat $interactionNpc _phrase>> <<set _moodDecrease = Random(-1, -5)>> <<SetMood $interactionNpc _moodDecrease>> <<set _decreaseRelations = Random (-1, -3)>> <<IncreaseFriendship $player $interactionNpc _decreaseRelations>> <</nobr>>
<<nobr>> <</nobr>>
<<nobr>> <<if $player.characterEvents.isEventRegistered($player.info.id, "Is a pimp's whore")>> <<include "Pimp_PimpsWhoreEvent">> <<set _finish = true>> <<elseif $interactionNpc.characterEvents.isEventRegistered($interactionNpc.info.id, "IsSurgeonPimp") && _finish != true>> <<include "PimpSurgeon_Pimp">> <<set _finish = true>> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "SetSurgeChar">> <<include "GetCurrentCharacterValue">> <<done>> <<include "SetAvailableBtn_Surgery">> <</done>> <div class="grid-row-twice" style = "grid-template-columns: 1fr 1fr 1fr; grid-template-rows: 1fr;"> <div class="container-stat-visual" style="height: 380px;"> <p style="text-align: center;">Face ($1500)</p> <div class="row-stat-visual"> <div class="stat-card-stat-visual"> <div class="surgery-container"> <div class="surgery-item"><div class="btn"><<button " <<< ">><<set $imgNumIncrease = false>><<replace "#surgery-icon">><<include "UpdateSurgeryImage">><</replace>><</button>></div> </div> <div class="surgery-item" id="surgery-icon"><img style="width: 200px; height: 200px; border-radius: 25px;" @src="_characterIcon" alt="Avatar"></div> <div class="surgery-item"><div class="btn"><<button " >>> ">><<set $imgNumIncrease = true>><<replace "#surgery-icon">><<include "UpdateSurgeryImage">><</replace>><</button>></div> </div> </div> <div class="surgery-item" id="select-new-charface"><div class="btn"><<button "Select" "PlasticSurgery_Job">><</button>></div> </div> </div> </div> </div> <div class="container-stat-visual" style="height: 380px;"> <p style="text-align: center;">Body ($500)</p> <div class="row-stat-visual"> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Femininity</div> <div class="surgery-container"> <div class="surgery-item" id="surgery-femininity-decrease-btn"></div> <div class="stat-visual-stat-visual"><<print Math.trunc(_characterFemininity.value)>>/_characterFemininity.max</div> <div class="surgery-item" id="surgery-femininity-increase-btn"></div> </div> </div> </div> <div class="row-stat-visual"> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Breast</div> <div class="surgery-container"> <div class="surgery-item" id="surgery-breast-decrease-btn"></div> <div class="stat-visual-stat-visual"><<print Math.trunc(_characterBreastSize.value)>>/_characterBreastSize.max</div> <div class="surgery-item" id="surgery-breast-increase-btn"></div> </div> </div> </div> <div class="row-stat-visual"> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Butt</div> <div class="surgery-container"> <div class="surgery-item" id="surgery-butt-decrease-btn"></div> <div class="stat-visual-stat-visual"><<print Math.trunc(_characterButtSize.value)>>/_characterButtSize.max</div> <div class="surgery-item" id="surgery-butt-increase-btn"></div> </div> </div> </div> </div> <div class="container-stat-visual" style="height: 380px;"> <p style="text-align: center;">Genitals</p> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Genital type ($2000)</div> <div class="row-stat-visual" style="flex-direction: column;"> <div class="stat-card-stat-visual"> <div class="surgery-item"><div class="btn" id="surgery-vagina-btn"><<button "Penis" "PlasticSurgery_Job">><</button>></div> </div> <div class="padding-top"> <div class="surgery-item"><div class="btn" id="surgery-penis-btn"><<button "Vagina" "PlasticSurgery_Job">><</button>></div> </div> </div> </div> </div> </div> <div class="row-stat-visual"> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Penis size ($250)</div> <div class="surgery-container"> <div class="surgery-item" id="surgery-penis-decrease-btn"></div> <div class="stat-visual-stat-visual"><<print Math.trunc(_characterPenisSize.value)>>/_characterPenisSize.max</div> <div class="surgery-item" id="surgery-penis-increase-btn"></div> </div> </div> </div> </div> </div> <div class="padding-top"> <div class="btn"><<button "Back" "CharacterInteractions">><<unset $surgeryChar $imgNumIncrease>><</button>></div> </div> <</nobr>>
<<nobr>> <<set _characterGender = $surgeryChar.gender() == "Male" ? "Male" : "Female";>> <<if $gameSettings.feminizationStages == true>> <<set _characterIcon = "Media\\Characters\\" + $surgeryChar.info.skin + "\\Face\\" + $characterFaceType.value + "\\" + Math.trunc($surgeryChar.body.face.value) + ".jpeg">> <<else>> <<set _characterIcon = "Media\\Characters\\" + $surgeryChar.info.skin + "\\Face\\" + _characterGender + "\\" + $characterFaceType.value + ".jpg">> <</if>> /* <<set _characterIcon = "Media\\Characters\\" + $surgeryChar.info.skin + "\\Face\\" + _characterGender + "\\" + $characterFaceType.value + ".jpg">> */ <<set _characterFemininity = $surgeryChar.body.face>> <<set _characterBreastSize = $surgeryChar.body.breastSize>> <<set _characterButtSize = $surgeryChar.body.buttSize>> <<set _characterPenisSize = $surgeryChar.body.penisSize>> <<set _characterGenitals = $surgeryChar.genitalia()>> <</nobr>>
<<nobr>> <<if $imgNumIncrease == true>> <<if $characterFaceType.value == $characterFaceType.max>> <<set $characterFaceType.value = $characterFaceType.min>> <</if>> <<set $characterFaceType.increase(1)>> <<else>> <<if $characterFaceType.value == $characterFaceType.min>> <<set $characterFaceType.value = $characterFaceType.max>> <</if>> <<set $characterFaceType.decrease(1)>> <</if>> /* <<set _characterIcon = "Media\\Characters\\" + $surgeryChar.info.skin + "\\Face\\" + _characterGender + "\\" + $characterFaceType.value + ".jpg">> */ <<if $gameSettings.feminizationStages == true>> <<set _characterIcon = "Media\\Characters\\" + $surgeryChar.info.skin + "\\Face\\" + $characterFaceType.value + "\\" + Math.trunc($surgeryChar.body.face.value) + ".jpeg">> <<else>> <<set _characterIcon = "Media\\Characters\\" + $surgeryChar.info.skin + "\\Face\\" + _characterGender + "\\" + $characterFaceType.value + ".jpg">> <</if>> <img style="width: 200px; height: 200px; border-radius: 25px;" @src="_characterIcon" alt="Avatar"> <<include "SetAvailableBtn_Surgery">> <</nobr>>
<<nobr>> /* Face */ <<if $characterFaceType.value != $surgeryChar.body.faceType.value && $player.money >= 1500>> <<replace "#select-new-charface">><div class="btn"><<button "Select" "PlasticSurgery_Job">><<include "SelectNewFace_Surgery">><</button>></div><</replace>> <<else>> <<replace "#select-new-charface">><div class="btn non-interacting"><<button "Select">><</button>></div><</replace>> <</if>> /* Femininity */ <<if Math.trunc(_characterFemininity.value) != _characterFemininity.max && $player.money >= 500>> <<replace "#surgery-femininity-increase-btn">><div class="btn"><<button " >>> " "PlasticSurgery_Job">><<include "IncreaseFemininity_Surgery">><</button>></div><</replace>> <<else>> <<replace "#surgery-femininity-increase-btn">><div class="btn non-interacting"><<button " >>> ">><</button>></div><</replace>> <</if>> <<if Math.trunc(_characterFemininity.value) != _characterFemininity.min && $player.money >= 500>> <<replace "#surgery-femininity-decrease-btn">><div class="btn"><<button " <<< " "PlasticSurgery_Job">><<include "DecreaseFemininity_Surgery">><</button>></div><</replace>> <<else>> <<replace "#surgery-femininity-decrease-btn">><div class="btn non-interacting"><<button " <<< ">><</button>></div><</replace>> <</if>> /* ------------------------ */ /* Breast */ <<if Math.trunc(_characterBreastSize.value) != _characterBreastSize.max && $player.money >= 500>> <<replace "#surgery-breast-increase-btn">><div class="btn"><<button " >>> " "PlasticSurgery_Job">><<include "IncreaseBreast_Surgery">><</button>></div><</replace>> <<else>> <<replace "#surgery-breast-increase-btn">><div class="btn non-interacting"><<button " >>> ">><</button>></div><</replace>> <</if>> <<if Math.trunc(_characterBreastSize.value) != _characterBreastSize.min && $player.money >= 500>> <<replace "#surgery-breast-decrease-btn">><div class="btn"><<button " <<< " "PlasticSurgery_Job">><<include "DecreaseBreast_Surgery">><</button>></div><</replace>> <<else>> <<replace "#surgery-breast-decrease-btn">><div class="btn non-interacting"><<button " <<< ">><</button>></div><</replace>> <</if>> /* ------------------------ */ /* Butt */ <<if Math.trunc(_characterButtSize.value) != _characterButtSize.max && $player.money >= 500>> <<replace "#surgery-butt-increase-btn">><div class="btn"><<button " >>> " "PlasticSurgery_Job">><<include "IncreaseButt_Surgery">><</button>></div><</replace>> <<else>> <<replace "#surgery-butt-increase-btn">><div class="btn non-interacting"><<button " >>> ">><</button>></div><</replace>> <</if>> <<if Math.trunc(_characterButtSize.value) != _characterButtSize.min && $player.money >= 500>> <<replace "#surgery-butt-decrease-btn">><div class="btn"><<button " <<< " "PlasticSurgery_Job">><<include "DecreaseButt_Surgery">><</button>></div><</replace>> <<else>> <<replace "#surgery-butt-decrease-btn">><div class="btn non-interacting"><<button " <<< ">><</button>></div><</replace>> <</if>> /* ------------------------ */ /* Genitals */ <<if _characterGenitals != "Vagina" && $player.money >= 2000>> <<replace "#surgery-vagina-btn">><div class="btn"><<button "Vagina" "PlasticSurgery_Job">><<include "SetVagina_Surgery">><</button>></div><</replace>> <<else>> <<replace "#surgery-vagina-btn">><div class="btn non-interacting"><<button "Vagina">><</button>></div><</replace>> <</if>> <<if _characterGenitals != "Penis" && $player.money >= 2000>> <<replace "#surgery-penis-btn">><div class="btn"><<button "Penis" "PlasticSurgery_Job">><<include "SetPenis_Surgery">><</button>></div><</replace>> <<else>> <<replace "#surgery-penis-btn">><div class="btn non-interacting"><<button "Penis">><</button>></div><</replace>> <</if>> /* Penis Size */ <<if _characterGenitals == "Penis" && $player.money >= 250 && _characterPenisSize.value < _characterPenisSize.max>> <<replace "#surgery-penis-increase-btn">><div class="btn"><<button " >>> " "PlasticSurgery_Job">><<include "Increase_Penis_Size_Surgery">><</button>></div><</replace>> <<else>> <<replace "#surgery-penis-increase-btn">><div class="btn non-interacting"><<button " >>> ">><</button>></div><</replace>> <</if>> <<if _characterGenitals == "Penis" && $player.money >= 250 && _characterPenisSize.value > 1>> <<replace "#surgery-penis-decrease-btn">><div class="btn"><<button " <<< " "PlasticSurgery_Job">><<include "Decrease_Penis_Size_Surgery">><</button>></div><</replace>> <<else>> <<replace "#surgery-penis-decrease-btn">><div class="btn non-interacting"><<button " <<< ">><</button>></div><</replace>> <</if>> /* ------------------------ */ <</nobr>>
<<nobr>> <<set $surgeryChar.body.faceType.value = $characterFaceType.value>> <<set $player.money -= 1500>> <</nobr>>
<<nobr>> <<run $surgeryChar.body.face.increase(1)>> <<set $player.money -= 500>> <</nobr>>
<<nobr>> <<run $surgeryChar.body.face.decrease(1)>> <<set $player.money -= 500>> <</nobr>>
<<nobr>> <<run $surgeryChar.body.breastSize.increase(1)>> <<set $player.money -= 500>> <</nobr>>
<<nobr>> <<run $surgeryChar.body.breastSize.decrease(1)>> <<set $player.money -= 500>> <</nobr>>
<<nobr>> <<run $surgeryChar.body.buttSize.increase(1)>> <<set $player.money -= 500>> <</nobr>>
<<nobr>> <<run $surgeryChar.body.buttSize.decrease(1)>> <<set $player.money -= 500>> <</nobr>>
<<nobr>> <<run $surgeryChar.body.penisSize.value = 8>> <<run $surgeryChar.body.vaginaSize.value = 0>> <<set $player.money -= 2000>> <</nobr>>
<<nobr>> <<run $surgeryChar.body.penisSize.value = 0>> <<run $surgeryChar.body.vaginaSize.value = 1>> <<set $player.money -= 2000>> <</nobr>>
<<nobr>> <<run $surgeryChar.body.penisSize.increase(1)>> <<set $player.money -= 250>> <</nobr>>
<<nobr>> <<run $surgeryChar.body.penisSize.decrease(1)>> <<set $player.money -= 250>> <</nobr>>
<<nobr>> <<if $surgeryChar.info.isPlayer == true>> <<run $surgeryChar = $player>> <<else>> <<run $surgeryChar = $interactionNpc>> <</if>> <</nobr>>
<<nobr>> <<run _contentAllow = CheckContentFilter($interactionNpc)>> <<set _tempCharWork = $interactionNpc.info.characterWork>> <div class="btn"><<button "Ask" "Interactions_Ask">><</button>></div> <div class="btn"><<button "Talk" "Interactions_Talk">><</button>></div> <<if _tempCharWork != "Pimp" && _tempCharWork != "Photographer" && _tempCharWork != "Porn director">> <div class="btn"><<button "Influence" "Interactions_Influence">><</button>></div> <</if>> <<if (_contentAllow == false)>> <div class="btn non-interacting" id="romance-btn"><<button "Romance" "Interactions_Romance">><</button>></div> <div class="btn non-interacting" id="contact-btn"><<button "Contact" "Interactions_Contact">><</button>></div> <<done>> <<run addHoverTooltip('romance-btn', 'Disabled by content filter')>> <<run addHoverTooltip('contact-btn', 'Disabled by content filter')>> <</done>> <<else>> <div class="btn"><<button "Romance" "Interactions_Romance">><</button>></div> <div class="btn"><<button "Contact" "Interactions_Contact">><</button>></div> <</if>> <div class="btn"><<button "Aggression" "Interactions_Aggressive">><</button>></div> <<if $interactionNpc.gender() == "Female" && getQuestState("sarah_quest_2") == "active" && getTaskState("sarah_quest_2", "Find a girl who’s willing to help") != 'completed'>> <div class="btn"><<button "Ask for help" "SarahQuest2_Male_AskForHelp">><</button>></div> <</if>> <div class="btn"><<button "Aggression" "Interactions_Aggressive">><</button>></div> <<if _tempCharWork != "Pimp" && _tempCharWork != "Photographer" && _tempCharWork != "Porn director">> <div class="btn"><<button "Give Item" "Interactions_GiveItems">><<set $filterType = "All">><<unset $source>><</button>></div> <</if>> <<if $playerFollowers.length == 0>> <<ChanceButton 'Follow me' 'Interactions_FollowMe' $player $interactionNpc '{Friend: 70, Love: 0, Fear: 0, Lust: 0, CheckResistance: false, CheckSexPref: false}' 'FollowMe'>> <<elseif $playerFollowers.length > 0 && $playerFollowers.includes($interactionNpc.info.id) == false>> <div class="btn non-interacting"><<button "Follow me">><</button>></div> <<elseif $playerFollowers.includes($interactionNpc.info.id) == true>> <div class="btn"><<button "Stop following me" "Interactions_StopFollowMe">><</button>></div> <</if>> <<if $player.characterEvents.isEventRegistered($player.info.id, "CanTrainNPC") == true>> <<if $player.money >= 200>> <<ChanceButton 'Training ($200)' 'Interaction_Training' $player $interactionNpc '{Friend: 50, Love: 50, Fear: 0, Lust: 0, CheckResistance: true, CheckSexPref: false}' 'training' '<<set $player.money -= 200>>'>> <<else>> <div class="btn non-interacting"><<button "Training ($200)">><</button>></div> <</if>> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <</nobr>>
<<nobr>> <div class="btn"><<button "Attack">> <<set _battleSetControls = {attack: true, seduce: false, items: true, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls "Etheriant_FinishFight_Win" "Etheriant_FinishFight_Lose">> <</button>></div> <div class="btn"><<button "Leave" "NudeCheck">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $player 'It\'s done. Now I need to report back to Damian.'>> <<set _targetName = $interactionNpc.info.firstName + " " + $interactionNpc.info.secondName + " must be eliminated.">> <<run completeTaskByQuestID("damian_contract", _targetName)>> /* <<run console.log("Quest", _targetName)>> */ <<DeleteCharacter $interactionNpc>> <div class="padding-top"> <div class="btn"><<button "Continue" $player.info.currentLocation>> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _phrase1 = 'Pain shoots through your body as you collapse to the ground, your vision blurring. The Etheriant looms over you,' + $interactionNpc.pronounHisHer() + ' eyes glowing with an eerie, unnatural light. A wicked grin spreads across ' + $interactionNpc.pronounHisHer() + ' face as ' + $interactionNpc.pronounHisHer() + ' kneels beside you.'>> <<ChatMessage _phrase1>> <<Chat $interactionNpc 'You put up a fight, I’ll give you that. But it wasn’t enough.'>> <<set _phrase2 = $interactionNpc.pronounHisHer() + ' extends a hand, and a surge of Etherium pulses through your veins. A burning sensation spreads through your body, twisting and warping something deep inside you.'>> <<ChatMessage _phrase2>> <<Chat $interactionNpc 'You’ll feel it soon… the change. The moment when you stop being who you are. When Etherium becomes a part of you.'>> <<set _phrase3 = $interactionNpc.pronounHisHer() + ' stands, looking down at you with amusement.'>> <<ChatMessage _phrase3>> <<Chat $interactionNpc 'Enjoy your last moments of normalcy. You won’t be the same next time we meet.'>> <<set _phrase4 = 'With that, ' + $interactionNpc.pronounHisHer() + ' turns and disappears into the shadows, leaving you writhing on the ground, the unnatural energy coursing through your veins, changing you from within.'>> <<ChatMessage _phrase4>> <<run $player.characterEvents.registerEvent($player.info.id, "InfectedByEfirium", 1)>> <div class="padding-top"> <div class="btn"><<button "Continue" $player.info.currentLocation>> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <</button>></div> </div> <</nobr>>
<<nobr>> <<if $playerlock == true>> <div class="btn non-interacting"><<button "Sex">><</button>></div> <<else>> <div class="btn"><<button "Sex" "Sex">><<set $sexType = "Rape">><</button>></div> <</if>> <div class="btn"><<button "Release the servant" 'ReleaseServant'>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<run $interactionNpc.characterEvents.unregisterEvent($player.info.id, "isServant", 1)>> <<ChatMessage 'You weaken your control over your servant.'>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<run _contentAllow = CheckContentFilter($interactionNpc)>> <<if $player.characterEvents.isEventRegistered($player.info.id, "Became A Pimp") == true>> <div class="btn"><<button "Hooker management" "HookerTalk">><</button>></div> <<else>> <<if (_contentAllow == false)>> <div class="btn non-interacting" id="sex-service"><<button "Sexual services (500$)">><</button>></div> <<done>> <<run addHoverTooltip('sex-service', 'Disabled by content filter')>> <</done>> <<else>> <div class="btn"><<button "Sexual services (500$)" "AskSexServices">><</button>></div> <</if>> <</if>> <</nobr>>
<<nobr>> <<if $player.characterEvents.isEventRegistered($player.info.id, "Buy a photo studio") == false>> <div class="btn"><<button "Photo shoot" "Photographer">><</button>></div> <</if>> <</nobr>>
<<nobr>> <<if $player.characterEvents.isEventRegistered($player.info.id, "Became A Pimp") == false>> <div class="btn"><<button "Ask questions" "AskQuestions_Pimp">><</button>></div> <<else>> <div class="btn"><<button "Persuade" "Persuade">><<set $persuadeType = "Persuade">><</button>></div> <div class="btn"><<button "Give Item" "GiveItems">><<set $filterType = "All">><<unset $source>><</button>></div> <</if>> <</nobr>>
<<nobr>> <<run _contentAllow = CheckContentFilter($interactionNpc)>> <<if (_contentAllow == true)>> <div class="btn"><<button "Offer yourself" "OfferYourselfToSecurity_Pimp">><</button>></div> <<else>> <div class="btn non-interacting" id="offer-yourself-btn"><<button "Offer yourself">><</button>></div> <<done>> <<run addHoverTooltip('offer-yourself-btn', 'Disabled by content filter')>> <</done>> <</if>> <div class="btn"><<button "Talk" "PimpSecurityTalk_Pimp">><</button>></div> <div class="btn"><<button "Leave" "NudeCheck">><</button>></div> <</nobr>>
<<nobr>> <div class="btn"><<button "Plastic surgery">><<ShowSurgery $player>><</button>></div> <div class="btn"><<button "Drug testing" "DrugTesting">><<set $isPlayer = true>><</button>></div> <</nobr>>
<<nobr>> <div class="btn"><<button "Porn shoot" "PornShooting">><</button>></div> <</nobr>>
<<nobr>> <<if _workHour == true>> <<switch $interactionNpc.info.characterWork>> <<case "Gift seller">> <div class="btn"><<button "Buy gifts" "Shop">><<set $itemType = "Gift">><</button>></div> <<case "Pharmacist">> <div class="btn"><<button "Buy medicine" "Shop">><<set $itemType = "Drug">><</button>></div> <<case "Grocer">> <div class="btn"><<button "Buy food" "Shop">><<set $itemType = "Food">><</button>></div> <<case "Clothing Seller">> <div class="btn"><<button "Buy clothes" "Shop">><<set $itemType = "Clothing">><</button>></div> <<case "Sex Shop Worker">> <div class="btn"><<button "Buy Toys" "Shop">><<set $itemType = "SexToy">><</button>></div> <</switch>> <</if>> <</nobr>>
<<nobr>> <</nobr>>
<<nobr>> <</nobr>>
<<nobr>> <<if ($player.dailyEvents.isEventRegistered($player.info.id, "RemoveChastityCage") && $player.money >= 500) || $player.genitalia() == "Vagina">> <div class="btn"><<button "Sex (500)" "Sex">><<set $sexType = "hoocker">><<set $player.money -= 500>><</button>></div> <<elseif $player.money >= 500 && $player.dailyEvents.isEventRegistered($player.info.id, "RemoveChastityCage") == false>> <div class="btn"><<button "Sex (500)" "ChastityCageLock_Pimp">><</button>></div> <<else>> <div class="btn non-interacting"><<button "Sex (500)">><</button>></div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckDatingProposal $player $interactionNpc>> <<set _genderReact = ReactionToTransform($interactionNpc)>> <<if _genderReact>> <<goto "NPC_Reaction_To_Transformation">> <</if>> <<if $interactionNpc.info.characterWork == "Pimp" || $interactionNpc.info.characterWork == "Hooker" || $interactionNpc.info.characterWork == "Brothel Security" >> <<set _canTakeClothOff = false>> <<else>> <<set _canTakeClothOff = true>> <</if>> <<set $gameSettings.allowSaves = false>> <<set $canShowStatsBtn = false>> <<ShowNpcIcon $interactionNpc>> <div class="npc-interaction-ui"> <div class="btn padding-top"><<button "Stats">> <<run Dialog.setup("Info")>> <<run Dialog.wiki('<<CharacterStatsView $interactionNpc true>>')>> <<run Dialog.open();>> <</button>></div> <div class="btn-container padding-top"> <<if $player.status.energy.value >= 15>> <<if $interactionNpc.characterEvents.isEventRegistered($player.info.id, "isServant") == true>> <<include "Interactions_Servant">> <<else>> <<switch $interactionNpc.info.characterWork>> <<case "None">> <<if $gameSettings.newInteractionSystem != true>> <<include "Interactions_Citizen">> <<else>> <<include "advanced_interaction_system">> <</if>> <<case "Student">> <<if $gameSettings.newInteractionSystem != true>> <<include "Interactions_Citizen">> <<include "Interactions_Student">> <<else>> <<include "advanced_interaction_system">> <</if>> <<case "Hooker">> <<if $gameSettings.newInteractionSystem != true>> <<include "Interactions_Citizen">> <<else>> <<include "advanced_interaction_system">> <</if>> <<include "Interactions_Hooker">> <<case "Plastic Surgeon">> <<if $gameSettings.newInteractionSystem != true>> <<include "Interactions_Citizen">> <<else>> <<include "advanced_interaction_system">> <</if>> <<include "Interactions_PlasticSurgeon">> <<case "Pimp">> <<include "InteractionEvent_Pimp">> <<if _finish != true>> <<if $gameSettings.newInteractionSystem != true>> <<include "Interactions_Citizen">> <<else>> <<include "advanced_interaction_system">> <</if>> <</if>> <<case "Photographer">> <<if $gameSettings.newInteractionSystem != true>> <<include "Interactions_Citizen">> <<else>> <<include "advanced_interaction_system">> <</if>> <<include "Interactions_Photographer">> <<case "Porn director">> <<if $gameSettings.newInteractionSystem != true>> <<include "Interactions_Citizen">> <<else>> <<include "advanced_interaction_system">> <</if>> <<include "Interactions_PornDirector">> <<case "Pimp's whore">> <<include "Interactions_Whore_Of_Pimp">> <<case "Brothel Security">> <<include "Interactions_PimpSecurity">> <<set _finish = true>> <<case "Etheriant">> <<include "Interactions_Etheriant">> <<set _finish = true>> <</switch>> <</if>> <<if _finish != true && $interactionNpc.characterEvents.isEventRegistered($player.info.id, "isServant") == false>> <<include "InteractionSellers">> <<include "NPC_Interact_Event">> <<include "GetJobCheck">> <<if $player.money >= 150 && $player.dailyEvents.isEventRegistered($interactionNpc.info.id, "InviteToBar") == false>> <div class="btn"><<button "Invite to a bar ($150)" "InviteToBar">><<set $playerFollowers = []>><</button>></div> <<else>> <div class="btn non-interacting"><<button "Invite to a bar ($150)">><</button>></div> <</if>> <</if>> <</if>> </div> <<if $player.status.energy.value < 15>> <<ChatMessage "You're too tired.">> <</if>> <<if _finish != true>> <<if _tempCharWork != "Pimp" && _tempCharWork != "Photographer" && _tempCharWork != "Porn director" && $interactionNpc.info.questInfo.isQuestCharacter != true>> <div class="padding-top"> <div class="btn"><<button "Cheats">><<ShowCheats $interactionNpc>><</button>></div> </div> <</if>> <<include "CheckDebtorNPC">> <div class="btn padding-top"><<button "Leave" "NudeCheck">><<set $canShowStatsBtn = true>><</button>></div> <</if>> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <</nobr>>
<<nobr>> <<include "UpdateAll">> <</nobr>>
<<nobr>> <<if $dateTime.hours >= 8 && $dateTime.hours <=20>> <<set _workHour = true>> <</if>> <</nobr>>
<<nobr>> <<if Random(0,100) > 86 && $gameSettings.contentFilter.NPC_Activity == true && $interactionNpc.info.characterWork != "Hooker" && $player.getRelationship($interactionNpc.info.id).metrics.fear < 50 && $player.dailyEvents.isEventRegistered($player.info.id, "EventChatBegin") == false>> <<set $FromInteraction = true>> <<run $player.dailyEvents.registerEvent($player.info.id, "EventChatBegin", 1)>> <<include "EventChoose">> <</if>> <</nobr>>
<<nobr>> <<include "GetNPCStatsToVisualize">> <div class="padding-top"> <div class="container-stat-visual"> <div class="row-stat-visual"> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Friendship</div> <div class="stat-visual-stat-visual">_Friendship/100</div> </div> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Love</div> <div class="stat-visual-stat-visual">_Love/100</div> </div> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Fear</div> <div class="stat-visual-stat-visual">_Fear/100</div> </div> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Mood</div> <div class="stat-visual-stat-visual">_Mood/100</div> </div> </div> <div class="row-stat-visual"> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Dominance</div> <div class="stat-visual-stat-visual">_Dominance/100</div> </div> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Lust</div> <div class="stat-visual-stat-visual">_Lust/100</div> </div> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Horny</div> <div class="stat-visual-stat-visual">_Horny/100</div> </div> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Aggression</div> <div class="stat-visual-stat-visual">_Aggression/100</div> </div> </div> <div class="btn"><<button "More" "GetCharStatsForPanel">><<set $fromInteractions = true>><<set $isPlayerStats = false>><</button>></div> </div> </div> <</nobr>>
<<nobr>> <<run _metrics = $player.getRelationship($interactionNpc.info.id).metrics>> <<run _Friendship = Math.trunc(_metrics.friendship)>> <<run _Love = Math.trunc(_metrics.love)>> <<run _Fear = Math.trunc(_metrics.fear)>> <<run _Mood = Math.trunc($interactionNpc.behavior.mood.value)>> <<run _Dominance = Math.trunc($interactionNpc.attributes.dominance.value)>> <<run _Lust = Math.trunc($interactionNpc.attributes.lust.value)>> <<run _Horny = Math.trunc($interactionNpc.status.horny.value)>> <<run _Aggression = Math.trunc($interactionNpc.status.aggression.value)>> <</nobr>>
<<nobr>> <<if getQuestState("mad_dog_quest1") == "active" && getTaskState("mad_dog_quest1", $debtTaskName) != 'completed' && $debtorID == $interactionNpc.info.id>> <div class="btn padding-top"><<button "Deal with the debtor" "NPC_DebtorDeal">><</button>></div> <</if>> <</nobr>>
<<nobr>> <<if $interactionNpc.genitalia() == "Penis" && $player.dailyEvents.isEventRegistered($interactionNpc.info.id, "SuckForDiscount") == false>> <<if $player.characterEvents.isEventRegistered($interactionNpc.info.id, "SuckForDiscount") == false>> <div class="btn"><<button "Get a discount for a blowjob" "DiscountFirst">><</button>></div> <<else>> <div class="btn"><<button "Get a discount for a blowjob" "DiscontForBlowjob">><</button>></div> <</if>> <<elseif $player.dailyEvents.isEventRegistered($interactionNpc.info.id, "SuckForDiscount") == true>> <<set _discount = (100 * 20) / 100>> <<set _finalCost = 100 - _discount>> <<else>> <<set _finalCost = 100>> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<DrawImage $interactionNpc.getPhotoImage()>> <<Chat $interactionNpc 'Hey, you walking around here naked has got me all worked up. Now you’re going to have to do something about it.'>> <div class="btn"><<button "Agree (Sex)" "PassiveSex">><<set $sexType = "hoockerWork">><<set $aggresiveFuck = true>><</button>></div> <div class="btn padding-top"><<button "Refuse (Fight)">> <<set _battleSetControls = {attack: true, seduce: true, items: true, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls undefined undefined>> <</button>></div> <</nobr>>
<<nobr>> <<if $player.characterEvents.isEventRegistered($player.info.id, "GetDamianContract") == false>> <div class="btn padding-top"><<button "Take a contract" "Damian_GetContract">><</button>></div> <<else>> <div class="btn non-interacting padding-top" id="get-contract-btn"><<button "Contract">><</button>></div> <<done>> <<run addHoverTooltip('get-contract-btn', 'You\'ve already received a contract')>> <</done>> <</if>> <<if $player.characterEvents.isEventRegistered($player.info.id, "InfectedByEfirium") == true>> <<if $player.money >= 1200>> <div class="btn padding-top"><<button "Cure Etherium" "CureEtherium_Damian">><</button>></div> <<else>> <div class="btn non-interacting padding-top" id="cure-etherium-btn"><<button "Cure Etherium" "CureEtherium_Damian">><</button>></div> <<run addHoverTooltip('cure-etherium-btn', 'Not enough money')>> <</if>> <</if>> <<if $playerlock == true>> <<if $player.money >= 2000>> <div class="btn padding-top"><<button "Remove the chastity cage ($2000)" "RemoveChastityCage_Damian">><</button>></div> <<else>> <div class="btn non-interacting padding-top" id="remove-cage-btn"><<button "Remove the chastity cage ($2000)">><</button>></div> <<run addHoverTooltip('remove-cage-btn', 'Not enough money')>> <</if>> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $player.money -= 1200>> <<run $player.characterEvents.unregisterEvent($player.info.id, "InfectedByEfirium")>> <<run $player.characterEvents.unregisterEvent($player.info.id, "DayInfectedByEfirium")>> <<Chat $interactionNpc 'Well, look at you. Seems like you got yourself into some trouble. Let me guess—an Etheriant put you through the wringer.'>> <<Chat $player 'I need the treatment. Now.'>> <<ChatMessage 'Damian leans back, exhaling a cloud of smoke before smirking.'>> <<Chat $interactionNpc 'Of course you do. But you know how this works—nothing comes free.'>> <<ChatMessage 'He reaches into a drawer and pulls out a sleek black case, flipping it open to reveal a single vial of dark liquid.'>> <<ChatMessage 'Damian takes the money with a knowing smirk, sliding the vial across the table.'>> <<Chat $interactionNpc 'Pleasure doing business. Drink up before you start glowing in the dark. And next time… try not to lose.'>> <div class="padding-top"> <div class="btn"><<button "continue" "QuestCharInteraction">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $player.money -= 2000>> <<set $playerlock = false>> <<Chat $interactionNpc 'That little lock doesn\'t open for free. Two grand.'>> <<Chat $player 'Fine. Take it off.'>> <<ChatMessage 'Damian smirks as he pockets your cash, producing a tiny key. With a quick click, the chastity cage opens.'>> <<Chat $interactionNpc 'There. Try not to end up back in one.'>> <div class="padding-top"> <div class="btn"><<button "continue" "QuestCharInteraction">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _madDogImg = "Media//Characters//QuestChars//MadDog//MadDog.jpg">> <<DrawImg _madDogImg>> <<if getQuestState("mad_dog_quest1") == "active">> <<set _debtText = "Hand over the money ($" + $debtAmount + ")">> <<if $player.money >= $debtAmount>> <div class="btn padding-top"><<button _debtText "MadDog_Interaction_HandOvereMoney">><</button>></div> <<else>> <div class="btn non-interacting padding-top"><<button _debtText>><</button>></div> <</if>> <</if>> <<if getQuestState("robert_quest_1") == "active" && getTaskState("robert_quest_1", "Get the serum") != 'completed' && $player.characterEvents.isEventRegistered($player.info.id, "TalkingWithMad_Robert") == false>> <<LockSettings>> <<goto "MadDog_Robert_Quest_01_Serum_Choose">> <<elseif getQuestState("robert_quest_1") == "active" && getTaskState("robert_quest_1", "Get the serum") != 'completed' && $player.characterEvents.isEventRegistered($player.info.id, "TalkingWithMad_Robert") == true>> <div class="btn padding-top"><<button "Buy Serum" "MadDog_Robert_Quest_01_Serum_Buy">><<LockSettings>><</button>></div> <</if>> <div class="btn padding-top"><<button "Leave" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _madDogImg = "Media//Characters//QuestChars//MadDog//MadDog.jpg">> <<set _earn = Math.round($debtAmount * 0.10)>> <<set _mdText = "Great job, keep it up. Here\'s your share.($" + _earn + ")">> <<ChatWithoutNPC 'Mad Dog' _madDogImg _mdText>> <<set $player.money -= $debtAmount>> <<run $player.money += _earn>> <<run completeTaskByQuestID("mad_dog_quest1", $debtTaskName)>> <<run completeTaskByQuestID("mad_dog_quest1", "Return to Mad Dog")>> <<ChatMessage 'He nods, counting the bills. Then he lowers his voice.'>> <<include "MadDogCreateQuest">> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<unset $debtAmount>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatWithoutNPC 'Mad Dog' _madDogImg 'If you\'re really hunting dirt on BioGenesis—talk to the hard-nosed bitch. Park. Dead fountain. After six.'>> <<run _questList = [ { id: "rayna_voss_quest1", title: "Detective", description: "I’ve got a new lead on BioGenesis—a hard‑nosed private investigator who’s been digging into the corporation for years. I need to track her down and squeeze out every bit of information I can.", state: "active", questType: "side", tasks: [ { description: "Track down Detective Rayna Voss in the city park", completed: false } ], } ]>> <<CreateQuest _questList true>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _madDogImg = "Media//Characters//QuestChars//MadDog//MadDog.jpg">> <<ChatWithoutNPC 'Mad Dog' _madDogImg '*squinted at you* What do you want?'>> <<ChatMessage 'You scratched the back of your head and started explaining the situation.'>> <<ChatWithoutNPC 'Mad Dog' _madDogImg '*burst out laughing* Yeah, I’ve got connections with some crooked scientists at BioGenesis. They slip me their experimental serums. Right now, I’ve got two in stock: ‘Mask’ and ‘Bimbo.’ Pick one. ‘Mask’ will make him young and strong—a real man. ‘Bimbo’ will turn him into a dumb slut with big tits and an empty head. Experimental stuff, you get it. What’s your choice? Each one’s $2,000.'>> <<ChatMessage 'You froze. Was this for real? You’d been expecting some kind of impotence cure, but now… it was a choice between an alpha male and a sex doll.'>> <<ChatMessage 'You stared at the vials. ‘Mask’ made sense—Robert clearly wanted strength. But ‘Bimbo’… damn, what if you took it? Curiosity and a hint of lust tugged at you. Finally, you made up your mind.'>> <<if $player.characterEvents.isEventRegistered($player.info.id, "TalkingWithMad_Robert") == false>> <<run $player.characterEvents.registerEvent($player.info.id, "TalkingWithMad_Robert", 1)>> <</if>> <div class="btn padding-top"><<button "Continue" "MadDog_Robert_Quest_01_Serum_Buy">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if $player.money >= 2000>> <div class="btn padding-top"><<button "Choose Mask ($2000)" $player.info.currentLocation>><<LeaveInteractionSettings>><<include "MadDog_Robert_Quest_01_Serum_Complite_Mask">><</button>></div> <div class="btn padding-top"><<button "Choose Bimbo ($2000)" $player.info.currentLocation>><<LeaveInteractionSettings>><<include "MadDog_Robert_Quest_01_Serum_Complite_Bimbo">><</button>></div> <<else>> <div class="btn non-interacting"><<button "Choose Mask ($2000)">><</button>></div> <div class="btn non-interacting"><<button "Choose Bimbo ($2000)">><</button>></div> <</if>> <div class="btn padding-top"><<button "Leave" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $player.money -= 2000>> <<run completeTaskByQuestID("robert_quest_1", "Get the serum")>> <<run $player.characterEvents.registerEvent($player.info.id, "ChooseMaskSerum_Robert", 1)>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $player.money -= 2000>> <<run $player.characterEvents.registerEvent($player.info.id, "ChooseBimboSerum_Robert", 1)>> <<run completeTaskByQuestID("robert_quest_1", "Get the serum")>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if $player.attributes.speech.value > $interactionNpc.attributes.speech.value>> <div class="btn padding-top"><<button "Offer to pay the debt" "NPC_DebtorDeal_PayDebt">><</button>></div> <<else>> <div class="btn non-interacting padding-top" id="offer-pay-btn"><<button "Offer to pay the debt">><</button>></div> <<done>> <<run addHoverTooltip('offer-pay-btn', 'Your speech level is insufficient')>> <</done>> <</if>> <div class="btn padding-top"><<button "Extract the debt by force">><<include "NPC_DebtorDeal_DebtByForce">><</button>></div> <div class="btn padding-top"><<button "Leave" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $interactionNpc 'Alright, I\'ll pay back the debt, just don\'t hurt me'>> <<ChatMessage 'You have taken the debt from the debtor, now you need to return to Mad Dog'>> <<run completeTaskByQuestID("mad_dog_quest1", $debtTaskName)>> <<set $player.money += $debtAmount>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<if $playerInitFight == undefined>> <<set $playerInitFight = 0>> <<set $dayFight = $dateTime.day>> <</if>> <<set $playerInitFight += 1>> <<set _decreaseRelations = Random (-8, -25)>> <<IncreaseFriendship $player $interactionNpc _decreaseRelations>> <<set _battleSetControls = {attack: true, seduce: true, items: true, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls "NPC_DebtorDeal_PayDebt" undefined>> <</nobr>>
<<nobr>> <<switch $interactionNpc.info.questInfo.questCharID >> <<case 4>> <<include "Damian_Interactions">> <</switch>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $canShowStatsBtn = false>> <<set $gameSettings.allowSaves = false>> <<ShowNpcIcon $interactionNpc>> <<include "NPC_Quest_Stats_Visualize">> <<include "NPC_Quest_Interactions">> /* <div class="padding-top"> <div class="btn"><<button "Cheats">><<ShowCheats $interactionNpc>><</button>></div> </div> */ <div class="padding-top"> <div class="btn"><<button "Leave" "NudeCheck">> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <</button>></div> </div> <<include "CheckCharacterQuests">> <</nobr>>
<<nobr>> <<run _metrics = $player.getRelationship($interactionNpc.info.id).metrics>> <<run _Friendship = Math.trunc(_metrics.friendship)>> <<run _Love = Math.trunc(_metrics.love)>> <<run _Fear = Math.trunc(_metrics.fear)>> <<run _Mood = Math.trunc($interactionNpc.behavior.mood.value)>> <div class="padding-top"> <div class="container-stat-visual"> <div class="row-stat-visual"> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Friendship</div> <div class="stat-visual-stat-visual">_Friendship/100</div> </div> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Love</div> <div class="stat-visual-stat-visual">_Love/100</div> </div> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Fear</div> <div class="stat-visual-stat-visual">_Fear/100</div> </div> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Mood</div> <div class="stat-visual-stat-visual">_Mood/100</div> </div> </div> </div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<set _surgeryMsg = "Persuade " + $interactionNpc.pronounHimHer() + " to have the surgery">> <div class="padding-top"> <div class="btn-container"> <div class="btn"><<button "Change sexual preference" "ChangeSexPref">><</button>></div> <div class="btn"><<button "Change sex role" "ChangeSexRole">><</button>></div> <div class="btn"><<button "Inspire Submission" "InspireSubmission">><</button>></div> <div class="btn"><<button "Change clothing preference" "ChangeClothingPreference">><</button>></div> <div class="btn"><<button "Change your clothes" "ChangeNPC_Cloth">><</button>></div> <div class="btn"><<button "Change name" "ChangeNPC_Name">><</button>></div> <<if $interactionNpc.gender() == "Male" && ($interactionNpc.info.characterWork == "Student" || $interactionNpc.info.characterWork == "None") && $interactionNpc.characterEvents.isEventRegistered($interactionNpc.info.id, "Takes female hormones") == false>> <div class="btn"><<button "Start taking female hormones" "TakeFemaleHormones">><</button>></div> <</if>> <div class="btn"><<button _surgeryMsg "PersuadeSurgery">><</button>></div> <<if $interactionNpc.gender() != "Male" && ($interactionNpc.info.characterWork == "Student" || $interactionNpc.info.characterWork == "None") && ($player.characterEvents.isEventRegistered($player.info.id, "CanRecruit Hookers") == true || $player.characterEvents.isEventRegistered($player.info.id, "Became A Pimp") == true)>> <div class="btn"><<button "Persuade to become a whore" "PersuadeToBecomeWhore">><</button>></div> <</if>> <<run _pronoun = $interactionNpc.pronounHisHer().toLowerCase()>> <<if $persuadeType == "Coerce">> <div class="btn"><<button "Ask _pronoun to leave" "AskToLeave">><</button>></div> <<else>> <div class="btn"><<button "Make _pronoun leave" "AskToLeave">><</button>></div> <</if>> </div> </div> <div class="padding-top"> <<if $persuadeType == "Persuade">> <div class="btn"><<button "Back" "CharacterInteractions">><<unset $persuadeType>><</button>></div> <<else>> <div class="btn"><<button "Back" "AggressiveActions">><<unset $persuadeType>><</button>></div> <</if>> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if $persuadeType == "Coerce">> <<run _needCheck = {Friend: false, NPC_Dom: true, Player_Dom: true}>> <<else>> <<run _needCheck = {Friend: true, NPC_Dom: true, Player_Dom: true}>> <</if>> <<include "PersuadeCheck">> <<if _allow == true>> <<Chat $interactionNpc 'Enter a new Name'>> <div class="input-container"> <div class="text-field text-field_floating-2"> <input type="text" id="firstName" name="firstName" value="First Name"> <label class="text-field__label" for="email">First Name</label> </div> </div> <div class="padding-top"> <div class="btn"><<button "Accept" "Persuade">> <<run $interactionNpc.info.firstName = document.getElementById("firstName").value>> <</button>></div> </div> <<else>> <<ChatMessage _needMsg>> <div class="padding-top"> <div class="btn"><<button "Back" "Persuade">><</button>></div> </div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if $persuadeType == "Coerce">> <<run _needCheck = {Friend: false, NPC_Dom: true, Player_Dom: true}>> <<else>> <<run _needCheck = {Friend: true, NPC_Dom: true, Player_Dom: true}>> <</if>> <<include "PersuadeCheck">> <<if _allow == true>> <<Chat $interactionNpc '$interactionNpc.info.firstName agrees and leaves.'>> <<run RandomRelocateCharacter($indexNPC)>> <div style="margin-top: 10px;"> <div class="btn"><<button "Leave" "Bar">> <<unset $interactionNpc $indexNPC>> <<SetSaveBtn true>> <</button>></div> </div> <<else>> <<ChatMessage _needMsg>> <div class="padding-top"> <div class="btn"><<button "Back" "Persuade">><</button>></div> </div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<run _needCheck = {Friend: true, NPC_Dom: true, Player_Dom: true}>> <<include "PersuadeCheck">> <<if _allow == true>> <<set _rand = Random(1, 10) * -1>> <<SetCharProgression $interactionNpc 'dominance' _rand true>> <<ChatMessage '$interactionNpc.info.firstName agrees to take female hormones.'>> <<run $interactionNpc.characterEvents.registerEvent($interactionNpc.info.id, "Takes female hormones", 1)>> <<else>> <<ChatMessage _needMsg>> <<ChatMessage '$interactionNpc.info.firstName does not agree to take female hormones.'>> <</if>> <div class="padding-top"> <div class="btn"><<button "Back" "Persuade">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<run _needCheck = {Friend: true, NPC_Dom: false, Player_Dom: false}>> <<include "PersuadeCheck">> <<if _allow == true>> <<set _rand = Random(1, 5)) * -1>> <<SetCharProgression $interactionNpc 'dominance' _rand true>> <<set _rand = Random(5, 10)) * -1>> <<SetCharProgression $interactionNpc 'dominance' _rand true>> <<ChatMessage "You have successfully instilled submissiveness.">> <<set _relUpgrd = {friendship: Random(-1.0, -3.0, true)}>> <<SetRelations $player $interactionNpc _relUpgrd>> <<else>> <<ChatMessage _needMsg>> <<set _msg = $interactionNpc.info.firstName + " doesn't trust you.">> <<set _relUpgrd = {friendship: Random(-1.0, -3.0, true)}>> <<SetRelations $player $interactionNpc _relUpgrd>> <<ChatMessage _msg>> <</if>> <div class="padding-top"> <div class="btn"><<button "Back" "Persuade">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<run _needCheck = {Friend: true, NPC_Dom: true, Player_Dom: true}>> <<include "PersuadeCheck">> <<if ($player.characterEvents.isEventRegistered($player.info.id, "Became A Pimp") == true && $interactionNpc.info.characterWork == "Hooker")>> <<set _allow = true>> <</if>> <<if _allow == true>> <<Chat $interactionNpc "Okay, I'll do it.">> <div class="padding-top"> <div class="btn"><<button "Go to the clinic" "PlasticSurgery">><<set $isPlayer = false>><</button>></div> </div> <<else>> <<ChatMessage _needMsg>> <<Chat $interactionNpc "I'm not going to do that.">> <<set _relUpgrd = {friendship: Random(-1.0, -5.0, true)}>> <<SetRelations $player $interactionNpc _relUpgrd>> <div class="padding-top"> <div class="btn"><<button "Back" "Persuade">><</button>></div> </div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<run _needCheck = {Friend: true, NPC_Dom: true, Player_Dom: true}>> <<include "PersuadeCheck">> <<if _allow == true>> <<set $interactionNpc.info.characterWork = "Hooker">> <<Chat $interactionNpc "I think you're right. I'm gonna be a whore.">> <<if $player.characterEvents.isEventRegistered($player.info.id, "Became A Pimp") == false>> <<set $Earnings = 50>> <<switch Math.trunc($interactionNpc.body.face.value)>> <<case 3>> <<set $Earnings += 200>> <<case 4>> <<set $Earnings += 400>> <<case 5>> <<set $Earnings += 500>> <<case 6>> <<set $Earnings += 800>> <</switch>> <<switch Math.trunc($interactionNpc.body.breastSize.value)>> <<case 1>> <<set $Earnings += 150>> <<case 2>> <<set $Earnings += 250>> <<case 3>> <<set $Earnings += 400>> <<case 4>> <<set $Earnings += 600>> <<case 5>> <<set $Earnings += 800>> <<case 6>> <<set $Earnings += 1000>> <</switch>> <<switch Math.trunc($interactionNpc.body.buttSize.value)>> <<case 1>> <<set $Earnings += 150>> <<case 2>> <<set $Earnings += 250>> <<case 3>> <<set $Earnings += 400>> <<case 4>> <<set $Earnings += 600>> <<case 5>> <<set $Earnings += 800>> <<case 6>> <<set $Earnings += 1000>> <</switch>> <<if $interactionNpc.genitalia() == "Vagina">> <<set $Earnings += 200>> <</if>> <<set $player.money += $Earnings>> <<set _msg = "The pimp paid you " + $Earnings + "$ for the new girl.">> <<ChatMessage _msg>> <</if>> <<else>> <<ChatMessage _needMsg>> <<Chat $interactionNpc "Don't be ridiculous.">> <<set _relUpgrd = {friendship: Random(-1.0, -5.0, true)}>> <<SetRelations $player $interactionNpc _relUpgrd>> <</if>> <div class="padding-top"> <div class="btn"><<button "Back" "Persuade">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <div class="padding-top"> <div class="btn-container"> <div class="btn"><<button "You must like masculinity" "TryChangeSexPref">><<set $sexPref = "masculinity">><</button>></div> <div class="btn"><<button "You must like femininity" "TryChangeSexPref">><<set $sexPref = "femininity">><</button>></div> <div class="btn"><<button "You must like both" "TryChangeSexPref">><<set $sexPref = "both">><</button>></div> </div> </div> <div class="padding-top"> <div class="btn"><<button "Back" "Persuade">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<run _needCheck = {Friend: true, NPC_Dom: true, Player_Dom: true}>> <<include "PersuadeCheck">> <<if ($player.characterEvents.isEventRegistered($player.info.id, "Became A Pimp") == true && $interactionNpc.info.characterWork == "Hooker")>> <<set _allow = true>> <</if>> <<if _allow == true>> <<switch $sexPref>> <<case "masculinity">> <<run $interactionNpc.info.sexualPreference = "Manly">> <<case "femininity">> <<run $interactionNpc.info.sexualPreference = "Feminine">> <<case "both">> <<run $interactionNpc.info.sexualPreference = "Bi">> <</switch>> <<Chat $interactionNpc "I think you're right.">> <<else>> <<ChatMessage _needMsg>> <<Chat $interactionNpc "Don't be ridiculous.">> <<set _relUpgrd = {friendship: Random(-1.0, -5.0, true)}>> <<SetRelations $player $interactionNpc _relUpgrd>> <</if>> <div class="padding-top"> <div class="btn"><<button "Back" "Persuade">><<unset $sexPref>><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <div class="padding-top"> <div class="btn-container"> <div class="btn"><<button "Be more active" "TryChangeSexRole">><<set $sexRole = "active">><</button>></div> <div class="btn"><<button "Be more passive" "TryChangeSexRole">><<set $sexRole = "passive">><</button>></div> <div class="btn"><<button "Be versatile" "TryChangeSexRole">><<set $sexRole = "versatile">><</button>></div> </div> </div> <div class="padding-top"> <div class="btn"><<button "Back" "Persuade">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<run _needCheck = {Friend: true, NPC_Dom: true, Player_Dom: true}>> <<include "PersuadeCheck">> <<if ($player.characterEvents.isEventRegistered($player.info.id, "Became A Pimp") == true && $interactionNpc.info.characterWork == "Hooker")>> <<set _allow = true>> <</if>> <<if _allow == true>> <<switch $sexRole>> <<case "active">> <<run $interactionNpc.info.SexRole = "Active">> <<case "passive">> <<run $interactionNpc.info.SexRole = "Passive">> <<case "versatile">> <<run $interactionNpc.info.SexRole = "versatile">> <</switch>> <<Chat $interactionNpc "I think you're right.">> <<else>> <<ChatMessage _needMsg>> <<Chat $interactionNpc "Don't be ridiculous.">> <<set _relUpgrd = {friendship: Random(-1.0, -5.0, true)}>> <<SetRelations $player $interactionNpc _relUpgrd>> <</if>> <div class="padding-top"> <div class="btn"><<button "Back" "Persuade">><</button>></div> </div> <<unset $sexRole>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <div class="padding-top"> <div class="btn-container"> <<if $interactionNpc.info.clothesPreference != "women">> <div class="btn"><<button "You should wear women's clothing" "TryChangeClothPref">><<set $pref = "women">><</button>></div> <<else>> <div class="btn"><<button "You should wear men's clothing" "TryChangeClothPref">><<set $pref = "men">><</button>></div> <</if>> </div> </div> <div class="padding-top"> <div class="btn"><<button "Back" "Persuade">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<run _needCheck = {Friend: true, NPC_Dom: true, Player_Dom: true}>> <<include "PersuadeCheck">> <<if ($player.characterEvents.isEventRegistered($player.info.id, "Became A Pimp") == true && $interactionNpc.info.characterWork == "Hooker")>> <<set _allow = true>> <</if>> <<if _allow == true>> <<set $interactionNpc.info.clothesPreference = $pref>> <<run $interactionNpc.AddCloth(true)>> <<Chat $interactionNpc "I think you're right.">> <<else>> <<ChatMessage _needMsg>> <<Chat $interactionNpc "Don't be ridiculous.">> <</if>> <div class="padding-top"> <div class="btn"><<button "Back" "Persuade">><<unset $pref>><</button>></div> </div> <</nobr>>
<<nobr>> <<set _allow = true>> <<set _needMsg = "">> <<if $persuadeType == "Coerce">> <<if $player.getRelationship($interactionNpc.info.id).metrics.fear < 80>> <<set _needMsg += "(Fear level is too low. Less than 80)<br>">> <<set _allow = false>> <</if>> <<elseif $persuadeType == "Persuade">> <<if _needCheck.Friend == true && $player.getRelationship($interactionNpc.info.id).metrics.friendship < 90>> <<set _needMsg += "(Your level of friendship is too low)<br>">> <<set _allow = false>> <</if>> <<if _needCheck.NPC_Dom == true && $interactionNpc.attributes.dominance.value >= 2>> <<run _pronoun = capitalizeFirstLetter($interactionNpc.pronounHisHer())>> <<set _needMsg += "(" + _pronoun + " dominance level is excessively high)<br>">> <<set _allow = false>> <</if>> <<if _needCheck.Player_Dom == true && $player.attributes.dominance.value < $interactionNpc.attributes.dominance.value>> <<set _needMsg += "(Your level of dominance is too low.)<br>">> <<set _allow = false>> <</if>> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "HGheck">> <<ShowNpcIcon $interactionNpc>> <div class="padding-top"> <div class="btn-container"> <div class="btn"><<button "Learn about management" "HokerAsk">><<set $typeOfAsk = "Learn">><</button>></div> <div class="btn"><<button "Sexual services (Free)" "AskSexServices">><</button>></div> <<if _SheIsHG == false>> <div class="btn"><<button "Make her a head girl" "HokerAsk">><<set $typeOfAsk = "MakeHerHeadGirl">><</button>></div> <<else>> <div class="btn"><<button "Collect the earned money" "HokerAsk">><<set $typeOfAsk = "CollectMoney">><</button>></div> <div class="btn"><<button "How many girls work for me?" "HokerAsk">><<set $typeOfAsk = "HowManyGirls">><<set $askType = "Work For Faction">><</button>></div> <</if>> <div class="btn"><<button "Back" "CharacterInteractions">><<unset $typeOfAsk _SheIsHG _HeadGirls _HeadGirl>><</button>></div> </div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<include "HGheck">> <<switch $typeOfAsk >> <<case "MakeHerHeadGirl">> <<set $pimpEarnings = 0>> <<if _HeadGirls.length > 0>> <<run _HeadGirl.characterEvents.unregisterEvent(_HeadGirl.info.id, "Is Head Girl")>> <</if>> <<run $interactionNpc.characterEvents.registerEvent($interactionNpc.info.id, "Is Head Girl", 1)>> <<ChatMessage 'You appointed a new girl to the position of the head girl.'>> <<case "Learn">> <<Chat $interactionNpc "You can appoint one of your girls as a head girl; she will collect your share and settle with the faction. However, remember that if you have already appointed another girl to this position, all the funds collected will be lost.">> <<case "CollectMoney">> <<if $pimpEarnings > 0>> <<set $pimpEarnings = $pimpEarnings / 4>> <<run $pimpEarnings = Math.trunc($pimpEarnings)>> <<Chat $interactionNpc "Here is your share of the earnings.">> <<set _msg = "She gives you $" + $pimpEarnings>> <<run $player.money += $pimpEarnings>> <<set $pimpEarnings = 0>> <<ChatMessage _msg>> <<else>> <<ChatMessage "We haven't earned anything yet.">> <</if>> <<case "HowManyGirls">> <<set _chars = []>> <<run _hookers = $Characters.filter((character) => character.info.characterWork == "Hooker")>> <<run _hookers.forEach((hooker) => { _chars.push($Characters.indexOf(hooker))})>> <<set _msg = "Currently, " + _hookers.length + " girls are working for you.">> <<Chat $interactionNpc _msg>> <<if _hookers.length > 0>> <div class="padding-up"> <<linkreplace "Hookers">> <<DisplayCharacters _chars>> <</linkreplace>> </div> <</if>> <</switch>> <div class="padding-top"> <div class="btn"><<button "Back" "HookerTalk">><</button>></div> </div> <<unset $typeOfAsk _SheIsHG _HeadGirls _HeadGirl>> <</nobr>>
<<nobr>> <<set _HeadGirlYet = false>> <<set _SheIsHG = false>> <<run _HeadGirls = $Characters.filter( (character) => character.characterEvents.isEventRegistered(character.info.id, "Is Head Girl") == true)>> <<if _HeadGirls.length > 0>> <<set _HeadGirlYet = true>> <<run _HeadGirl = _HeadGirls[0]>> <<if _HeadGirl.info.id == $interactionNpc.info.id>> <<set _SheIsHG = true>> <</if>> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <div class="padding-top"> <div class="btn-container"> <<if $player.attributes.seduction.value < $player.attributes.seduction.max>> <<if $player.status.energy.value >= 10 && $player.money >= 50>> <div class="btn"><<button "Seduction $50" "Training_Hooker">><<set $trainType = "Seduction">><</button>></div> <<else>> <div class="btn non-interacting" ><<button "Seduction $50">><</button>></div> <</if>> <<else>> <div class="btn non-interacting" ><<button "Seduction (MAX)">><</button>></div> <</if>> <<if $player.attributes.resistanceToSeduction.value < $player.attributes.resistanceToSeduction.max>> <<if $player.status.energy.value >= 10 && $player.money >= 50>> <div class="btn"><<button "Seduction Resistance $50" "Training_Hooker">><<set $trainType = "resistanceToSeduction">><</button>></div> <<else>> <div class="btn non-interacting" ><<button "Seduction Resistance $50">><</button>></div> <</if>> <<else>> <div class="btn non-interacting" ><<button "Seduction Resistance (MAX)">><</button>></div> <</if>> </div> </div> <div class="padding-top"> <div class="btn"><<button "Back" "CharacterInteractions">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<switch $trainType>> <<case "Seduction">> <<run $player.attributes.seduction.increase(Random(1,5))>> <<if $player.attributes.seduction.value < $player.attributes.seduction.max>> <<ChatMessage 'You have slightly increased your seduction.'>> <<else>> <<ChatMessage 'You have increased your seduction to the maximum.'>> <</if>> <<case "resistanceToSeduction">> <<run $player.attributes.resistanceToSeduction.increase(Random(1,5))>> <<if $player.attributes.resistanceToSeduction.value < $player.attributes.resistanceToSeduction.max>> <<ChatMessage 'You have slightly increased your seduction resistance.'>> <<else>> <<ChatMessage 'You have increased your seduction resistance to the maximum.'>> <</if>> <</switch>> <<set $player.money -= 50>> <<run $player.status.energy.decrease(10)>> <div class="padding-top"> <div class="btn"><<button "Back" "SexTrainer_Hooker">><<unset $trainType>><</button>></div> </div> <</nobr>>
<<nobr>> <div class="btn"><<button "Learn about recruiting" "AskForRecruiting_Pimp">><</button>></div> <div class="btn"><<button "I want to earn some extra money" "AskForWork_Pimp">><</button>></div> <div class="btn"><<button "Are you working for a faction?" "OtherQuestions_Pimp">><<set $askType = "Work For Faction">><</button>></div> <div class="btn"><<button "Can I become a pimp too?" "OtherQuestions_Pimp">><<set $askType = "Become Pimp">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<if $player.characterEvents.isEventRegistered($player.info.id, "CanRecruit Hookers") == false>> <<run $player.characterEvents.registerEvent($player.info.id, "CanRecruit Hookers", 1)>> <</if>> <<Chat $interactionNpc "If you're looking to make some extra cash, bring girls to me. I'll pay for each one. The prettier the girls are, the more I will pay.">> <div class="padding-top"> <div class="btn"><<button "Back" "Interactions_Ask">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<ChatMessage 'He looks at you with an evaluating gaze.'>> <<if $player.body.face.value < 2 || $player.gender() == "Male">> <<Chat $interactionNpc "You lack femininity.">> <<else>> <<if $player.characterEvents.isEventRegistered($player.info.id, "Can Work As Hooker") == false>> <<run $player.characterEvents.registerEvent($player.info.id, "Can Work As Hooker", 1)>> <<Chat $interactionNpc "Alright, now you're working for me. When you decide to earn, just tell me, and I'll find clients for you. I'll take 40% of your earnings.">> <<else>> <<Chat $interactionNpc "You're already working for me, after all. When you decide to earn, just tell me, and I'll find clients for you. I'll take 40% of your earnings.">> <</if>> <<Chat $interactionNpc "I'll give you one piece of advice: the more attractive you are, the more money clients might offer. So, don't neglect plastic surgery.">> <</if>> <div class="padding-top"> <div class="btn"><<button "Back" "Interactions_Ask">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<switch $askType>> <<case "Work For Faction">> <<Chat $interactionNpc "Of course. In this city, you can't just work for yourself. Factions will either make you pay a percentage or kill you if you refuse. I work for \"Snake Eyes\", they deal in drug trafficking and prostitution.">> <<case "Become Pimp">> <<Chat $interactionNpc "\"Snake Eyes\" usually only conduct business with one pimp in the area. Having multiple pimps at once can lead to numerous conflicts between them, affecting the stability of the income stream. So, if you want to become a pimp, you'll have to eliminate me, otherwise, \"Snake Eyes\" will eliminate you.">> <</switch>> <div class="padding-top"> <div class="btn"><<button "Back" "Interactions_Ask">><<unset $askType>><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<if $LoseBattle == true && $gameSettings.contentFilter.PlayerFeminization == true>> <<run $player.characterEvents.registerEvent($player.info.id, "Loose To Pimp", 1)>> <<run $player.characterEvents.registerEvent($player.info.id, "Is a pimp's whore", 1)>> <<Chat $interactionNpc "Nice try, but you've lost. Now you will pay for your foolishness. I will change you and you will earn a lot of money for me. I will arrange with your college to grant you a deferral from classes while you work off the debt">> <<ChatMessage 'The pimp\'s people take you to a clinic, where you undergo multiple surgeries. After that, you are taken to a room where you will work off the debt'>> <<ChatMessage 'Every day your debt will increase by 1%. You can pay it off by working as a whore for the pimp.'>> <<if $player.genitalia() == "Penis">> <<ChatMessage 'A chastity cage has been put on your penis. If you want to remove the chastity cage for one day, then you must pay the pimp.'>> <</if>> <<ChatMessage 'You have become a pimp\'s whore. Your debt is now: $10000'>> <div style="margin-top: 10px;"> <div class="btn"><<button "Continue" "PimpRoom">> <<set $playerFollowers = []>> <<run $playerDebt = 10000>> <<run $player.money = 0>> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <<include "CharactersData">> /*Create Whores */ <<set $pimp_Whores = []>> <<for _i = 0; _i < 5; _i++>> <<run _createChar = CreateCharacter({ isPlayer: false, characterWork: "Pimp's whore", sexualPreference: "Bi", clothesPreference: "women", age: Random(18,30), }, true)>> <<run _createChar.characterEvents.registerEvent(_createChar.info.id, "Is a pimp's whore", 1)>> <<set $pimp_Whores.push(_createChar.info.id)>> <</for>> /*Create Guards */ <<set $pimp_Guards = []>> <<for _i = 0; _i < 3; _i++>> <<run _createChar = CreateCharacter({ isPlayer: false, characterWork: "Brothel Security", battleSkill: 80, SexRole: "Active", gender: "Male", sexualPreference: "Bi", clothesPreference: "men", strength: Random(85,90), defense: Random(85,90), vitality: Random(85,90), dexterity: Random(85,90), seduction: Random(85,90), resistanceToSeduction: Random(85,90), age: Random(18,30), }, true)>> <<run _createChar.characterEvents.registerEvent(_createChar.info.id, "Is a pimp's whore", 1)>> <<set $pimp_Guards.push(_createChar.info.id)>> <</for>> <<run $pimpSurgeon = CreateCharacter({ isPlayer: false, characterWork: "Plastic Surgeon", age: Random(20,40), }, true)>> <<if $pimpSurgeon.characterEvents.isEventRegistered($pimpSurgeon.info.id, "IsSurgeonPimp") == false>> <<run $pimpSurgeon.characterEvents.registerEvent($pimpSurgeon.info.id, "IsSurgeonPimp", 1)>> <</if>> <<unset $maleNames $femaleNames $surnames $LoseBattle>> <<SetSaveBtn true>> <</button>></div> </div> <<elseif $LoseBattle == true && $gameSettings.contentFilter.PlayerFeminization == false>> <<run $player.characterEvents.registerEvent($player.info.id, "Loose To Pimp", 1)>> <<Chat $interactionNpc "Nice try, but you lost. Now you'll pay for your foolishness. You owe me 10,000.">> <<ChatMessage 'The player feminization content is blocked, as the \'Forced Player Feminization\' option is disabled in the content filter'>> <div style="margin-top: 10px;"> <div class="btn"><<button "Continue" "RedLightDistrict">> <<run $player.money -= 10000>> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <<unset $LoseBattle>> <</button>></div> </div> <<else>> <<run $player.characterEvents.registerEvent($player.info.id, "Became A Pimp", 1)>> <<set $pimpEarnings = 0>> <<ChatMessage 'After that, a person from the faction approached you and explained your obligations. Now, the faction will take 50% of your earnings'>> <<ChatMessage 'You have become a pimp. You can appoint one of your girls as the \'Madame\', and then you can collect your share from her weekly'>> <<ChatMessage 'What do you want to do with him?'>> <div style="margin-top: 10px;"> <div class="btn-container"> <div class="btn"><<button "Feminize him (Trans)" "Ending_Pimp">> <<run $interactionNpc.body.face.increase(6)>> <<run $interactionNpc.body.breastSize.increase(5)>> <<run $interactionNpc.body.buttSize.increase(5)>> <<run $interactionNpc.info.characterWork = "Hooker">> <<run $interactionNpc.info.clothesPreference = "women">> <<run $interactionNpc.AddCloth(true)>> <<set $PimpDest = "Feminize">> <<unset $LoseBattle>> <<run RandomRelocateCharacter($indexNPC, "RedLightDistrict")>> <</button>></div> <div class="btn"><<button "Feminize him (Fem)" "Ending_Pimp">> <<run $interactionNpc.body.face.increase(6)>> <<run $interactionNpc.body.breastSize.increase(5)>> <<run $interactionNpc.body.buttSize.increase(5)>> <<run $interactionNpc.body.penisSize.decrease(60)>> <<run $interactionNpc.body.vaginaSize.increase(1)>> <<run $interactionNpc.info.characterWork = "Hooker">> <<run $interactionNpc.info.clothesPreference = "women">> <<run $interactionNpc.AddCloth(true)>> <<set $PimpDest = "Feminize">> <<unset $LoseBattle>> <<run RandomRelocateCharacter($indexNPC, "RedLightDistrict")>> <</button>></div> <div class="btn"><<button "Let him go" "Ending_Pimp">><<set $PimpDest = "LetGo">><<run $interactionNpc.info.characterWork = "None">><<unset $LoseBattle>><</button>></div> </div> </div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<switch $PimpDest>> <<case "Feminize">> <<ShowNpcIcon $interactionNpc>> <<Chat $interactionNpc "You bastard, what have you done to me? I will never forgive you for this.">> <<ChatMessage 'He is furious, but he knows that he can\'t do anything against you, as the faction\'s people will find him and he will regret it even more.'>> <<case "LetGo">> <<ShowNpcIcon $interactionNpc>> <<Chat $interactionNpc "Are you just letting me go like that? Well, I didn't expect such generosity from you.">> <<ChatMessage 'You let him go and he leaves.'>> <</switch>> <div class="padding-top"> <<BackButton "<<set $canShowStatsBtn = true>> <<unset $interactionNpc $PimpDest>> <<set $gameSettings.allowSaves = true>>">> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <div class="padding-top"> <div class="btn"><<button "Talk" "PimpSecurityTalk_Pimp">><</button>></div> </div> <div class="padding-top"> <div class="btn"><<button "Offer yourself" "OfferYourselfToSecurity_Pimp">><</button>></div> </div> <div class="padding-top"> <div class="btn"><<button "Leave" $player.info.currentLocation>><<unset $interactionNpc $indexNPC>> <<set $gameSettings.allowSaves = true>><</button>><<set $canShowStatsBtn = true>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $player 'Mr. Security, I want to offer myself to you, if you\'ll have me.'>> <<Chat $interactionNpc 'Come here, whore, and let me see what you have to offer.'>> <div class="padding-top"> <div class="btn"><<button "Continue" "PassiveSex">><<set $sexType = "hoockerWork">><<set $aggresiveFuck = true>><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<Chat $interactionNpc 'Get back to work, whore.'>> <div class="padding-top"> <div class="btn"><<button "Leave" $player.info.currentLocation>><<unset $interactionNpc $indexNPC>> <<set $gameSettings.allowSaves = true>><</button>><<set $canShowStatsBtn = true>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <div class="padding-top"> <div class="btn-container"> <<if $player.money < 500>> <div class="btn non-interacting"><<button "Breast ($500)">><</button>></div> <<elseif $player.body.breastSize.value >= $player.body.breastSize.max>> <div class="btn non-interacting"><<button "Breast (MAX)">><</button>></div> <<else>> <div class="btn"><<button "Breast ($500)" "SurgeryDone_Pimp">> <<run $player.body.breastSize.increase(1)>> <<run $player.money -= 500>> <</button>></div> <</if>> <<if $player.money < 500>> <div class="btn non-interacting"><<button "Ass ($500)">><</button>></div> <<elseif $player.body.buttSize.value >= $player.body.buttSize.max>> <div class="btn non-interacting"><<button "Ass (MAX)">><</button>></div> <<else>> <div class="btn"><<button "Ass ($500)" "SurgeryDone_Pimp">> <<run $player.body.buttSize.increase(1)>> <<run $player.money -= 500>> <</button>></div> <</if>> <<if $player.money < 500>> <div class="btn non-interacting"><<button "Femininity ($500)">><</button>></div> <<elseif $player.body.face.value >= $player.body.face.max>> <div class="btn non-interacting"><<button "Femininity (MAX)">><</button>></div> <<else>> <div class="btn"><<button "Femininity ($500)" "SurgeryDone_Pimp">> <<run $player.body.face.increase(1)>> <<run $player.money -= 500>> <</button>></div> <</if>> <<if $player.money < 2000 && $player.genitalia() == "Penis">> <div class="btn non-interacting"><<button "Vaginoplasty ($2000)">><</button>></div> <<elseif $player.money >= 2000 && $player.genitalia() == "Penis">> <div class="btn"><<button "Vaginoplasty ($2000)" "SurgeryDone_Pimp">> <<run $player.body.penisSize.value = 0>> <<run $player.body.vaginaSize.value = 1>> <<run $player.money -= 2000>> <</button>></div> <</if>> </div> <div class="padding-top"> <div class="btn"><<button "Leave" $player.info.currentLocation>><<unset $interactionNpc $indexNPC>> <<set $gameSettings.allowSaves = true>><<set $canShowStatsBtn = true>><</button>></div> </div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatMessage 'The surgery was successful.'>> <div class="padding-top"> <div class="btn"><<button "Leave" "PimpSurgeon_Pimp">><</button>></div> </div> <</nobr>>
<<nobr>> <div class="btn"><<button "Talk" "PimpSecurityTalk_Pimp">><</button>></div> <<if $player.genitalia() == "Penis">> <<if $player.money >= 500 && $player.dailyEvents.isEventRegistered($player.info.id, "RemoveChastityCage") == false>> <div class="btn"><<button "Remove the chastity cage for 1 day (500$)" "RemoveSecurityCage_Pimp">><</button>></div> <<else>> <div class="btn non-interacting"><<button "Remove the chastity cage for 1 day (500$)">><</button>></div> <</if>> <</if>> <div class="btn"><<button "Debt" "PayOffDebt_Pimp">><</button>></div> <div class="btn"><<button "Leave" $player.info.currentLocation>><<unset $interactionNpc $indexNPC>> <<set $gameSettings.allowSaves = true>><<set $canShowStatsBtn = true>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<run $player.money -= 500>> <<if $player.dailyEvents.isEventRegistered($player.info.id, "RemoveChastityCage") == false>> <<run $player.dailyEvents.registerEvent($player.info.id, "RemoveChastityCage", 1)>> <</if>> <<Chat $interactionNpc 'Okay, I\'ll take off your chastity cage, but only for today. Have a good time whore.'>> <div class="padding-top"> <div class="btn"><<button "Continue" "CharacterInteractions">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<set _msgDebt = "Your debt: $" + $playerDebt>> <<ChatMessage _msgDebt>> <div class="grid-row-twice"> <fieldset> <legend>Pay Off</legend> <div class="btn-container"> <<if $player.money >= 100>> <div class="btn"><<button "$100" "PayOffDebt_Pimp">><<run _debtSum = Math.min(100, $playerDebt)>><<set _debtType = "PayOff">><<include "PimpDebtCalculate_Pimp">><</button>></div> <<else>> <div class="btn non-interacting"><<button "$100">><</button>></div> <</if>> <<if $player.money >= 1000>> <div class="btn"><<button "$1000" "PayOffDebt_Pimp">><<run _debtSum = Math.min(1000, $playerDebt)>><<set _debtType = "PayOff">><<include "PimpDebtCalculate_Pimp">><</button>></div> <<else>> <div class="btn non-interacting"><<button "$1000">><</button>></div> <</if>> <<if $player.money > 0>> <div class="btn"><<button "All" "PayOffDebt_Pimp">><<run _debtSum = Math.min($player.money, $playerDebt)>><<set _debtType = "PayOff">><<include "PimpDebtCalculate_Pimp">><</button>></div> <<else>> <div class="btn non-interacting"><<button "All">><</button>></div> <</if>> </div> </fieldset> <fieldset> <legend>Loan</legend> <div class="btn-container"> <div class="btn"><<button "$100" "PayOffDebt_Pimp">><<set _debtSum = 100>><<set _debtType = "Loan">><<include "PimpDebtCalculate_Pimp">><</button>></div> <div class="btn"><<button "$1000" "PayOffDebt_Pimp">><<set _debtSum = 1000>><<set _debtType = "Loan">><<include "PimpDebtCalculate_Pimp">><</button>></div> </div> </fieldset> </div> <div class="padding-top"> <div class="btn"><<button "Back" "CharacterInteractions">><</button>></div> </div> <</nobr>>
<<nobr>> <<if _debtType == "PayOff">> <<set $playerDebt -= _debtSum>> <<set $player.money -= _debtSum>> <<if $playerDebt > 0>> <<set _msg = "You paid off " + "$" + "_debtSum of the" + "$" + "$playerDebt debt">> <<ChatMessage 'You paid off _debtSum of the $playerDebt debt.'>> <div class="padding-top"> <div class="btn"><<button "Back" "PayOffDebt_Pimp">><</button>></div> </div> <<else>> <<goto "PlayerRelease_Pimp">> <</if>> <<else>> <<set $playerDebt += _debtSum>> <<set $player.money += _debtSum>> <<ChatMessage 'You borrowed _debtSum'>> <div class="padding-top"> <div class="btn"><<button "Back" "PayOffDebt_Pimp">><</button>></div> </div> <</if>> <</nobr>>
<<nobr>> <<EachLoc>> <<SaveLocation>> <<SetBackground "Media/Locations/City/RedLightDistrict/Basement.jpg">> <<ChatMessage 'You have settled your debt, and you have been released.'>> <<run $player.characterEvents.unregisterEvent($player.info.id, "Is a pimp's whore")>> <<Chat $interactionNpc 'Good whore. You have paid off your debt. You can leave now.'>> <<run $indexesToRemove = []>> <<run $Characters.forEach((item, index) => { if ($pimp_Whores.includes(item.info.id) || $pimp_Guards.includes(item.info.id) || $pimpSurgeon.info.id == item.info.id){ $indexesToRemove.push(index); } })>> <<run _lengt = $indexesToRemove.length - 1>> <<for _i = _lengt; _i >= 0; _i-->> <<run $Characters.splice($indexesToRemove[_i], 1);>> <</for>> <div class="padding-top"> <div class="btn"><<button "Continue" "RedLightDistrict">><<run $player.info.characterWork = "Student">><<unset $interactionNpc $indexNPC>><<set $gameSettings.allowSaves = true>><<set $canShowStatsBtn = true>><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <div class="btn padding-top"><<button "Stats">> <<run Dialog.setup("Info")>> <<run Dialog.wiki('<<CharacterStatsView $interactionNpc true>>')>> <<run Dialog.open();>> <</button>></div> <<if ($player.dailyEvents.isEventRegistered($player.info.id, "RemoveChastityCage") && $player.money >= 500) || $player.genitalia() == "Vagina">> <div class="padding-top"> <div class="btn"><<button "Sex (500)" "Sex">><<set $sexType = "hoocker">><<set $player.money -= 500>><</button>></div> </div> <<elseif $player.money >= 500 && $player.dailyEvents.isEventRegistered($player.info.id, "RemoveChastityCage") == false>> <div class="padding-top"> <div class="btn"><<button "Sex (500)" "ChastityCageLock_Pimp">><</button>></div> </div> <<else>> <div class="padding-top"> <div class="btn non-interacting"><<button "Sex (500)">><</button>></div> </div> <</if>> <div class="padding-top"> <div class="btn"><<button "Leave" $player.info.currentLocation>><<unset $interactionNpc $indexNPC>> <<set $gameSettings.allowSaves = true>><</button>><<set $canShowStatsBtn = true>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $interactionNpc 'Sorry, but first, you need to remove the chastity cage. Visit a pimp.'>> <div class="padding-top"> <div class="btn"><<button "Back" "Whore_Of_Pimp">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "SetSurgeChar">> <<ShowNpcIcon $changeChar>> <div class="padding-top"> <div class="btn-container"> <div class="btn"><<button "Breast ($500)" "PlasticSurgery_Change">><<set $surgery = "Breast">> <<set $cost = 500>><</button>></div> <div class="btn"><<button "Ass ($500)" "PlasticSurgery_Change">><<set $surgery = "Ass">> <<set $cost = 500>><</button>></div> <div class="btn"><<button "Femininity ($500)" "PlasticSurgery_Change">><<set $surgery = "Femininity">> <<set $cost = 500>><</button>></div> <div class="btn"><<button "Face ($500)" "FaceSurgery">><<set $cost = 500>><<set $currentFace = $changeChar.body.faceType.value>><</button>></div> <div class="btn"><<button "Genitals ($2000)" "PlasticSurgery_Genitals">><<set $cost = 2000>><</button>></div> </div> </div> <div class="padding-top"> <div class="btn"><<button "Back" "CharacterInteractions">><<unset $surgery $cost $changeChar>><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "SetSurgeChar">> <<ShowNpcIcon $changeChar>> <p>Current: <<print $changeChar.genitalia()>></p> <div class="padding-top"> <div class="btn-container"> <<if $changeChar.genitalia() != "Penis">> <div class="btn"><<button "Penis" "PlasticSurgery_Genitals">> <<if $cost > $player.money>> <<unset $cost>> <<goto "SurgeryNoMoney">> <<else>> <<run $changeChar.body.penisSize.value = 8>> <<run $changeChar.body.vaginaSize.value = 0>> <<run $player.money -= $cost>> <<unset $cost>> <</if>> <</button>></div> <<else>> <div class="btn"><<button "Change penis size" "PlasticSurgery_ChangePenisSize">><</button>></div> <</if>> <<if $changeChar.genitalia() != "Vagina">> <div class="btn"><<button "Vagina" "PlasticSurgery_Genitals">> <<if $cost > $player.money>> <<unset $cost>> <<goto "SurgeryNoMoney">> <<else>> <<run $changeChar.body.penisSize.value = 0>> <<run $changeChar.body.vaginaSize.value = 1>> <<run $player.money -= $cost>> <<unset $cost>> <</if>> <</button>></div> <</if>> <div class="btn"><<button "Back" "PlasticSurgery">><</button>></div> </div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "SetSurgeChar">> <<run _msg = "Current: " + (Math.floor($changeChar.body.penisSize.value * 100) / 100)>> <<print _msg>> <div class="padding-top"> <div class="btn-container"> <<if $changeChar.body.penisSize.value < $changeChar.body.penisSize.max>> <div class="btn"><<button "Increase penis size (50$)" "PlasticSurgery_ChangePenisSize">> <<set $cost = 50>> <<if $cost > $player.money>> <<unset $cost>> <<goto "SurgeryNoMoney">> <<else>> <<run $changeChar.body.penisSize.increase(0.25)>> <<run $player.money -= $cost>> <<unset $cost>> <</if>> <</button>></div> <</if>> <<if $changeChar.body.penisSize.value > 1>> <div class="btn"><<button "Reduce penis size (50$)" "PlasticSurgery_ChangePenisSize">> <<set $cost = 50>> <<if $cost > $player.money>> <<unset $cost>> <<goto "SurgeryNoMoney">> <<else>> <<run $changeChar.body.penisSize.decrease(0.25)>> <<if $changeChar.body.penisSize.value < 1>> <<set $changeChar.body.penisSize.value = 1>> <</if>> <<run $player.money -= $cost>> <<unset $cost>> <</if>> <</button>></div> <</if>> </div> </div> <div class="padding-top"> <div class="btn"><<button "Back" "PlasticSurgery_Genitals">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "SetSurgeChar">> <<switch $surgery>> <<case "Breast">> <<run _breastImg = $changeChar.getBreastImage()>> _breastImg <<set _changes = $changeChar.body.breastSize>> <<case "Ass">> <<run _assImg = $changeChar.getAssImage()>> _assImg <<set _changes = $changeChar.body.buttSize>> <<case "Femininity">> <<ShowNpcIcon $changeChar>> <<set _changes = $changeChar.body.face>> <</switch>> <<if $changeChar.dailyEvents.getOrRegisterEvent($changeChar.info.id, "Surgery", 0) < 1>> <div class="padding-top"> <div class="btn-container"> <<if _changes.value != _changes.max>> <div class="btn"><<button "Increase" "PlasticSurgery_Change">> <<if $cost > $player.money>> <<unset $cost>> <<goto "SurgeryNoMoney">> <<else>> <<run $changeChar.dailyEvents.registerEvent($changeChar.info.id, "Surgery", 1)>> <<run _changes.increase(1)>> <<run $player.money -= $cost>> <<unset $cost>> <</if>> <</button>></div> <</if>> <<if _changes.value != _changes.min>> <div class="btn"><<button "Reduce" "PlasticSurgery_Change">> <<if $cost > $player.money>> <<unset $cost>> <<goto "SurgeryNoMoney">> <<else>> <<run $changeChar.dailyEvents.registerEvent($changeChar.info.id, "Surgery", 1)>> <<run _changes.decrease(1)>> <<run $player.money -= $cost>> <<unset $cost>> <</if>> <</button>></div> <</if>> <div class="btn"><<button "Back" "PlasticSurgery">><<unset $cost>><</button>></div> </div> </div> <<else>> <<if $isPlayer == true>> <<ChatMessage "You've already undergone a surgery today. It's essential to take at least one full day for recovery.">> <<else>> <<set _msg = $changeChar.info.firstName + " has already undergone surgery today. It's essential to take at least one full day for recovery">> <<ChatMessage _msg>> <</if>> <div class="padding-top"> <div class="btn"><<button "Back" "PlasticSurgery">><<unset $cost>><</button>></div> </div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "SetSurgeChar">> <<ShowNpcIcon $changeChar>> <<set _selectText = "Select $" + $cost>> <div class="padding-top"> <div class="btn-container"> <<if $changeChar.body.faceType.value != $changeChar.body.faceType.max>> <div class="btn"><<button "Next" "FaceSurgery">> <<run $changeChar.body.faceType.increase(1)>><</button>></div> <</if>> <<if $changeChar.body.faceType.value != $changeChar.body.faceType.min>> <div class="btn"><<button "Previous" "FaceSurgery">><<run $changeChar.body.faceType.decrease(1)>><</button>></div> <</if>> <div class="btn"><<button _selectText "PlasticSurgery">> <<if $cost > $player.money>> <<run $changeChar.body.faceType.value = $currentFace>> <<unset $cost $currentFace>> <<goto "SurgeryNoMoney">> <<else>> <<run $changeChar.dailyEvents.registerEvent($changeChar.info.id, "Surgery", 1)>> <<run $player.money -= $cost>> <<unset $cost>> <</if>> <</button>></div> </div> </div> <div class="padding-top"> <div class="btn"><<button "Back" "PlasticSurgery">> <<run $changeChar.body.faceType.value = $currentFace>> <<unset $currentFace>> <</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "SetSurgeChar">> <<ChatMessage "Not enough money.">> <div class="padding-top"> <div class="btn"><<button "Back" "PlasticSurgery">><</button>></div> </div> <</nobr>> /* :: SetSurgeChar <<nobr>> <<if $isPlayer == true>> <<run $changeChar = $player>> <<else>> <<run $changeChar = $interactionNpc>> <</if>> <</nobr>> */
<<nobr>> <<include "UpdateAll">> <<if $player.dailyEvents.isEventRegistered($player.info.id, "DrugTesting") == true>> <<Chat $interactionNpc 'You have already participated in the drug testing today. We need more precise data, so please come back tomorrow.'>> <div class="padding-top"> <div class="btn"><<button "Back" "CharacterInteractions">><</button>></div> </div> <<else>> <<Chat $interactionNpc 'We need to test a new medication. If you agree to participate as a subject, the clinic will pay you $200.'>> <div class="padding-top"> <div class="btn-container"> <div class="btn"><<button "Agree" "DrugTest_RandomEvent">><</button>></div> <div class="btn"><<button "Refuse" "CharacterInteractions">><</button>></div> </div> </div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if Random(0, 100) < 60>> <<goto "AgreeDrugTest">> <<else>> <<goto "DrugTest_BimboTransformation">> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $interactionNpc 'Thank you for your participation. Please, follow me.'>> <<ChatMessage 'You are taken to a special room and given a pill.'>> <<ChatMessage 'You feel dizzy and fall asleep.'>> <<ChatMessage 'When you wake up, you are given $200.'>> <<set _randEffect = Random(0,5)>> <<switch _randEffect>> <<case 0>> <<run $player.body.penisSize.decrease(Random(0.1, 0.5, true))>> <<case 1>> <<run $player.body.face.increase(Random(0.2, 0.8, true))>> <<case 2>> <<run $player.body.face.decrease(Random(0.1, 0.5, true))>> <<case 3>> <<run $player.body.buttSize.increase(Random(0.2, 0.5, true))>> <<case 4>> <<run $player.body.breastSize.increase(Random(0.2, 0.5, true))>> <</switch>> <<if $player.dailyEvents.isEventRegistered($player.info.id, "DrugTesting") == false>> <<run $player.dailyEvents.registerEvent($player.info.id, "DrugTesting", 1)>> <</if>> <<set $player.money += 200>> <div class="padding-top"> <div class="btn"><<button "Back" "CharacterInteractions">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<LockSettings>> <<run _changePill = GetNewItem("gender_change_pills_female", 1)>> <<run $player.useItem(_changePill, $player)>> <<if $player.dailyEvents.isEventRegistered($player.info.id, "DrugTesting") == false>> <<run $player.dailyEvents.registerEvent($player.info.id, "DrugTesting", 1)>> <</if>> <<ChatMessage 'You find yourself standing in a sterile, white hospital room, the smell of disinfectant hanging heavy in the air. The doctor, a middle-aged man with a kind smile, gestures to a small table where a single pill rests.'>> <<Chat $interactionNpc 'This is the experimental drug we\'d like you to test *he explains, his voice calm and reassuring* It\'s supposed to enhance cognitive function, but we\'ve had some… interesting side effects in the past.'>> <<ChatMessage 'As you pick up the pill, you can\'t help but wonder what those side effects might be. The doctor hands you a glass of water, and you swallow the pill, feeling it slide down your throat. At first, nothing seems to happen. But then, a strange, tingling sensation begins to spread through your body.'>> <<ChatMessage 'Your mind starts to feel foggy, your thoughts growing less clear. You look down and notice that your hands are changing, becoming smaller and more delicate. Your body begins to shift, your muscles softening, your skin becoming smoother. You feel a sudden surge of arousal, your genitals changing, becoming a vulva.'>> <<Chat $interactionNpc 'Fascinating *he mutters, his voice dripping with excitement* You\'re becoming a bimbo girl, just as we predicted.'>> <<ChatMessage 'As you stumble forward, your newfound arousal taking control, the doctor guides you to stand between his legs. He unzips his pants, revealing his erect penis, and you feel an overwhelming urge to take it in your mouth. You start to suck him off, your mind clouded by your newfound horniness.'>> <<run _pic = "Media\\Events\\Clinic\\BimboTransformation\\BimboTransformation_Blowjob.mp4">> <<Video _pic>> <<ChatMessage 'The doctor\'s eyes close in ecstasy as you continue to blow him. After a few moments, he pulls you away, turning you to face the wall. He lifts your skirt, exposing your new vulva, and enters you from behind. You feel a wave of pleasure wash over you as he begins to thrust, your mind lost in the sensation.'>> <<ChatMessage 'As the doctor continues to fuck you, you can\'t help but wonder what other effects this drug might have. Will you remain in this state forever, or is there a way to reverse the transformation? And what other surprises might this experimental drug have in store for you?'>> <<run _pic = "Media\\Events\\Clinic\\BimboTransformation\\BimboTransformation_Fuck.mp4">> <<Video _pic>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if $player.getRelationship($interactionNpc.info.id).metrics.friendship >= 80 || $player.getRelationship($interactionNpc.info.id).metrics.love >= 80>> <<Chat $interactionNpc 'Of course, lead the way.'>> <div class="padding-top"> <div class="btn"><<button "Continue" $player.info.currentLocation>> <<set $playerFollowers.push($interactionNpc.info.id)>> <<unset $interactionNpc $indexNPC>> <<set $gameSettings.allowSaves = true>> <<set $canShowStatsBtn = true>> <</button>></div> </div> <<else>> <<ChatMessage 'Your level of friendship or love is not high enough, so $interactionNpc.info.firstName refuses to follow you.'>> <div class="padding-top"> <div class="btn"><<button "Back" "CharacterInteractions">><</button>></div> </div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <div class="padding-top"> <div class="btn-container"> <<if $player.dailyEvents.isEventRegistered($interactionNpc.info.id, "TalkAboutSex") == false>> <div class="btn"><<button "Talk about sex" "TalkAboutSex">><</button>></div> <<else>> <div class="btn non-interacting" ><<button "Talk about sex" "TalkAboutSex">><</button>></div> <</if>> <<if $interactionNpc.dailyEvents.isEventRegistered($interactionNpc.info.id, "Flirt") == false>> <div class="btn"><<button "Flirt" "TryFlirt">><</button>></div> <<else>> <div class="btn non-interacting"><<button "Flirt" "TryFlirt">><</button>></div> <</if>> <div class="btn"><<button "Interaction" "Interaction">><<set $interactionType = "Romance">><</button>></div> </div> </div> <div class="padding-top"> <div class="btn"><<button "Back" "CharacterInteractions">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<set _friendship = $player.getRelationship($interactionNpc.info.id).metrics.friendship>> <<set _allowFlirt = false>> <<if _friendship < 60>> <<ChatMessage 'The friendship level is too low for this'>> <<else>> <<run $interactionNpc.dailyEvents.registerEvent($interactionNpc.info.id, "Flirt", 1)>> <<include "CheckSexPref">> <<if _sexPrefResult == true>> <<include "FlirtDone">> <<else>> <<ChatMessage '$interactionNpc.info.firstName looks at you with disgust.'>> <<set _relUpgrd = {love: Random(-2.0, -1.0, true)}>> <</if>> <<SetRelations $player $interactionNpc _relUpgrd>> <<SpendTime 5>> <</if>> <div class="padding-top"> <div class="btn"><<button "Back" "Romance">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<switch $player.getAttractiveText()>> <<case "Ugly">> <<ChatMessage '$interactionNpc.info.firstName looks at you with disgust.'>> <<set _relUpgrd = {love: Random(-2.0, -1.0, true)}>> <<case "Ordinary">> <<ChatMessage '$interactionNpc.info.firstName a little flirtatious with you'>> <<set _relUpgrd = {love: Random(1, 3, true)}>> <<case "Beautiful">> <<ChatMessage '$interactionNpc.info.firstName actively flirting with you'>> <<set _relUpgrd = {love: Random(2, 5, true)}>> <</switch>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<run $player.dailyEvents.registerEvent($interactionNpc.info.id, "TalkAboutSex", 1)>> <<run _lust = $interactionNpc.attributes.lust>> <<SetCharProgression $interactionNpc 'lust' 8 false>> <<if _lust.value < 5>> <<ChatMessage '$interactionNpc.info.firstName blushes when you talk to her about sex.'>> <<elseif _lust.value >= 5 && _lust.value < 8>> <<ChatMessage '$interactionNpc.info.firstName actively participates in the conversation when you talk about sex.'>> <<elseif _lust.value >=8>> <<ChatMessage '$interactionNpc.info.firstName flirts with you when you talk about sex.'>> <</if>> <div class="padding-top"> <div class="btn"><<button "Back" "Romance">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _charLust = $interactionNpc.attributes.lust.value>> <<if _charLust <= 1>> <<set _maxSexCount = 1>> <<elseif _charLust > 1 && _charLust <= 2>> <<set _maxSexCount = 2>> <<elseif _charLust > 2 && _charLust <= 3>> <<set _maxSexCount = 3>> <<elseif _charLust > 3 && _charLust <= 5>> <<set _maxSexCount = 4>> <<elseif _charLust > 5 && _charLust <= 7>> <<set _maxSexCount = 4>> <<elseif _charLust > 7 && _charLust <= 9>> <<set _maxSexCount = 5>> <<elseif _charLust > 9>> <<set _maxSexCount = 6>> <</if>> <<if $sexType == "hoocker" || $sexType == "Rape">> <<if $playerlock == true>> <<goto "PassiveSex">> <<else>> <<goto "Sex">> <</if>> <<elseif $sexType == "hoockerWork">> <<set $roundCount = 1>> <<goto "PassiveSex">> <<elseif $interactionNpc.dailyEvents.getOrRegisterEvent($interactionNpc.info.id, "Sex", 0) < _maxSexCount>> <<run $interactionNpc.dailyEvents.registerEvent($interactionNpc.info.id, "Sex", 1)>> <<if $player.attributes.dominance.value < $interactionNpc.attributes.dominance.value || $playerlock == true>> <<run $roundCount = Random(1,3)>> <<goto "PassiveSex">> <<else>> <<goto "Sex">> <</if>> <<else>> <<set $maxSexEnd = true>> <<SpendEnergy $player 20>> <<SpendEnergy $interactionNpc 20>> <<goto "TrySex">> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $passiveSex = true>> <<if $roundCount <= 0 && $sexType != "hoocker" && $sexType != "hoockerWork">> <<set $endSexByRoundCount = true>> <<goto "TrySex">> <</if>> <fieldset> <legend>Sex(Passive)</legend> <div class="btn-container-row"> <div class="btn btn--small"> <<button "Sex" "TrySex">><<include "SetPassiveSexPose">> <</button>></div> </div> </fieldset> <<if $sexType != "hoockerWork" && $sexType != "Porn Shoot" && $sexType != "Porn Shoot (PlayerTransform)" && $sexType != "brothelClientService">> <div class="padding-top"> <div class="btn"><<button "Back" $player.info.currentLocation>> <<if $sexType == "OneSex (Destroy)">> <<run $Characters.splice($indexNPC, 1)>> <</if>> <<SetSaveBtn true>> <<set $passiveSex = false>> <<unset $sexType $interactionNpc $passiveSex $playerDom $partnerCum $cumIn $roundCount $maxSexEnd $Pose $cuni>> <</button>></div> </div> <<elseif $sexType == "brothelClientService">> <div class="padding-top"> <p style="color: #e91e63; font-style: italic; text-align: center;">💋 You must satisfy the client before leaving.</p> </div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $cuni = false>> <<set $passiveSex = false>> /* Check NPC limits for brothel prostitutes/candidates */ <<set _npcLimits = $interactionNpc.saveData.get("limits")>> <<set _analBlocked = false>> <<set _analReason = "">> <<set _vagBlocked = false>> <<set _vagReason = "">> <<set _oralBlocked = false>> <<set _oralReason = "">> <<if _npcLimits>> <<if _npcLimits.anal && _npcLimits.anal.status == "no">> <<set _analBlocked = true>> <<set _analReason = _npcLimits.anal.reason || "Not allowed">> <</if>> <<if _npcLimits.vaginal && _npcLimits.vaginal.status == "no">> <<set _vagBlocked = true>> <<set _vagReason = _npcLimits.vaginal.reason || "Not allowed">> <</if>> <<if _npcLimits.oral && _npcLimits.oral.status == "no">> <<set _oralBlocked = true>> <<set _oralReason = _npcLimits.oral.reason || "Not allowed">> <</if>> <</if>> <div class="grid-row-twice"> <<if $playerlock != true>> <fieldset> <legend>Sex(Active)</legend> <div class="btn-container-row"> <<if $interactionNpc.genitalia() == "Vagina">> <<if _vagBlocked>> <div class="btn btn--small" style="opacity: 0.5;" title="<<print _vagReason>>"><<button "Vaginal (🚫)">><<ChatMessage "They refuse: " + _vagReason>><</button>></div> <<else>> <div class="btn btn--small"><<button "Vaginal" "TrySex">><<set $playerDom = true>><<set $Pose = "Vag">><</button>></div> <</if>> <</if>> <<if _analBlocked>> <div class="btn btn--small" style="opacity: 0.5;" title="<<print _analReason>>"><<button "Anal (🚫)">><<ChatMessage "They refuse: " + _analReason>><</button>></div> <<else>> <div class="btn btn--small"><<button "Anal" "TrySex">><<set $playerDom = true>><<set $Pose = "Anal">><</button>></div> <</if>> <<if _oralBlocked>> <div class="btn btn--small" style="opacity: 0.5;" title="<<print _oralReason>>"><<button "Oral (🚫)">><<ChatMessage "They refuse: " + _oralReason>><</button>></div> <<else>> <div class="btn btn--small"><<button "Oral" "TrySex">><<set $playerDom = true>><<set $Pose = "Oral">><<set $cuni = $player.genitalia() == "Vagina">><</button>></div> <</if>> <<if $player.genitalia() == "Vagina">> <div class="btn btn--small"><<button "Oral(Strap-on)" "TrySex">><<set $playerDom = true>><<set $Pose = "Oral(Strap-on)">><</button>></div> <</if>> <<if $player.gender() == "Male" && $interactionNpc.body.breastSize.value >= 3>> <div class="btn btn--small"><<button "Titfuck" "TrySex">><<set $playerDom = true>><<set $Pose = "Titfuck">><</button>></div> <</if>> </div> </fieldset> <<else>> <<ChatMessage "You're locked in a chastity cage and can't take an active role.">> <</if>> <fieldset> <legend>Sex(Passive)</legend> <div class="btn-container-row"> <<if $player.genitalia() == "Vagina">> <div class="btn btn--small"><<button "Vaginal" "TrySex">><<set $playerDom = false>><<set $Pose = "Vag">><</button>></div> <</if>> <div class="btn btn--small"><<button "Anal" "TrySex">><<set $playerDom = false>><<set $Pose = "Anal">><</button>></div> <div class="btn btn--small"><<button "Oral" "TrySex">><<set $playerDom = false>><<set $Pose = "Oral">><<set $cuni = $interactionNpc.genitalia() == "Vagina">><</button>></div> <<if $interactionNpc.genitalia() == "Vagina">> <div class="btn btn--small"><<button "Oral(Strap-on)" "TrySex">><<set $playerDom = false>><<set $Pose = "Oral(Strap-on)">><</button>></div> <</if>> <<if $interactionNpc.gender() == "Male" && $player.body.breastSize.value >= 3>> <div class="btn btn--small"><<button "Titfuck" "TrySex">><<set $playerDom = false>><<set $Pose = "Titfuck">><</button>></div> <</if>> </div> </fieldset> </div> <<if $sexType != "brothelClientService">> <div class="btn padding-top"><<button "Leave" $player.info.currentLocation>> <<include "SexSystem_CheckSexType">> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <<unset $sexType $interactionNpc $passiveSex $playerDom $partnerCum $cumIn $roundCount $maxSexEnd $Pose $cuni>> <</button>></div> <<else>> <div class="padding-top"> <p style="color: #e91e63; font-style: italic; text-align: center;">💋 You must satisfy the client before leaving.</p> </div> <</if>> <</nobr>>
<<nobr>> <<if $sexType == "nightclub_sex">> <<DeleteCharacter $interactionNpc>> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> /* Check if player ran out of energy during brothel client service */ <<if $sexType == "brothelClientService" && $player.status.energy.value <= 0>> /* Player is out of energy - client leaves angry without paying */ <<ChatMessage "You're too exhausted to continue... your body gives out.">> <div class="btn padding-top" style="background: linear-gradient(135deg, #f44336 0%, #d32f2f 100%); border-radius: 10px;"> <<button "😠 Client leaves angry..." "BrothelMasterRoom_ClientAngry">> <<unset $sexType $interactionNpc $passiveSex $playerDom $partnerCum $cumIn $roundCount $maxSexEnd $Pose $cuni>> <</button>> </div> <<elseif $playerDom == true && $player.genitalia() == "Penis" && $player.status.potency.value == 0 && $sexType != "hoocker" && $sexType != "hoockerWork" && $sexType != "brothelClientService">> <<ChatMessage "I need a break.">> <div class="btn padding-top"><<button "Leave" $player.info.currentLocation>> <<include "SexSystem_CheckSexType">> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <<unset $sexType $interactionNpc $passiveSex $playerDom $partnerCum $cumIn $roundCount $maxSexEnd $Pose $cuni>> <</button>></div> <<elseif $playerDom == true && $player.genitalia() == "Penis" && $player.status.potency.value == 0 && $sexType == "brothelClientService">> /* Player is out of potency - client leaves angry without paying */ <<ChatMessage "You're completely exhausted and can't continue...">> <div class="btn padding-top" style="background: linear-gradient(135deg, #f44336 0%, #d32f2f 100%);"> <<button "😠 Client leaves angry..." "BrothelMasterRoom_ClientAngry">> <<unset $sexType $interactionNpc $passiveSex $playerDom $partnerCum $cumIn $roundCount $maxSexEnd $Pose $cuni>> <</button>> </div> <<elseif $playerDom == false && $interactionNpc.genitalia() == "Penis" && $interactionNpc.status.potency.value == 0 && $sexType != "hoocker" && $sexType != "hoockerWork" && $sexType != "Rape" && $sexType != "brothelClientService">> <<Chat $interactionNpc "Sorry, babe, I need a break.">> <div class="btn padding-top"><<button "Leave" $player.info.currentLocation>> <<include "SexSystem_CheckSexType">> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <<unset $sexType $interactionNpc $passiveSex $playerDom $partnerCum $cumIn $roundCount $maxSexEnd $Pose $cuni>> <</button>></div> <<elseif $playerDom == false && $interactionNpc.genitalia() == "Penis" && $interactionNpc.status.potency.value == 0 && $sexType == "brothelClientService">> /* Client (NPC) is out of potency - they came, service complete! */ <<ChatMessage "The client is completely satisfied!">> <div class="btn" style="background: linear-gradient(135deg, #4CAF50 0%, #8BC34A 100%); margin-top: 10px;"> <<button "💰 Collect Payment" "BrothelMasterRoom_ClientFinished">> <<unset $sexType $interactionNpc $passiveSex $playerDom $partnerCum $cumIn $roundCount $maxSexEnd $Pose $cuni>> <</button>> </div> <<elseif $endSexByRoundCount == true && $sexType != "Rape" && $sexType != "brothelClientService">> <<unset $endSexByRoundCount>> <<Chat $interactionNpc "It was fun, I'll see you around.">> <div class="btn padding-top"><<button "Leave" $player.info.currentLocation>> <<include "SexSystem_CheckSexType">> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <<unset $sexType $interactionNpc $passiveSex $playerDom $partnerCum $cumIn $roundCount $maxSexEnd $Pose $cuni>> <</button>></div> <<elseif $endSexByRoundCount == true && $sexType == "brothelClientService">> /* Brothel client service - ignore round count, continue until client cums */ <<unset $endSexByRoundCount>> <<goto "SexPose">> <<elseif $maxSexEnd == true && $sexType != "Rape" && $sexType != "brothelClientService">> <<unset $maxSexEnd>> <<Chat $interactionNpc "I'm sorry, baby, I don't want to do this anymore tonight. How about tomorrow?">> <div class="btn padding-top"><<button "Leave" $player.info.currentLocation>> <<include "SexSystem_CheckSexType">> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <<unset $sexType $interactionNpc $passiveSex $playerDom $partnerCum $cumIn $roundCount $maxSexEnd $Pose $cuni>> <</button>></div> <<elseif $maxSexEnd == true && $sexType == "brothelClientService">> /* Brothel client service - ignore max sex, continue until client cums */ <<unset $maxSexEnd>> <<goto "SexPose">> <<elseif $Pose == "Anal" && $sexType != "Rape" && $sexType != "hoocker" && $sexType != "hoockerWork" && $playerDom == true && $interactionNpc.attributes.lust.value < -7>> <<goto "NotReady">> <<else>> <<goto "SexPose">> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if $Pose == "Anal">> <<ChatMessage 'Lust level is below 70.'>> <<elseif $Pose == "Facefuck">> <<ChatMessage 'Lust level is below 50.'>> <</if>> <<Chat $interactionNpc "I'm not ready for this yet.">> <div style="margin-top: 10px;"> <div class="btn"><<button "Continue" "Sex">><<unset $Pose>><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "UpdateDomSub">> <<include "StretcHole">> <<switch $Pose>> <<case "Anal">> <<set _hole = _sub.body.anusSize.value>> <<SetAnalPick _dom.gender() _sub.gender()>> <<if $playerDom == true>> <<set _poseMsg = "You're fucking " + _sub.info.firstName + " in the ass.">> <<else>> <<set _poseMsg = _dom.info.firstName + " is fucking your ass.">> <</if>> <<case "Oral">> <<SetOralPick _dom.gender() _sub.gender()>> <<if $cuni == true>> <<if $playerDom == true>> <<set _poseMsg = _sub.info.firstName + " licks your pussy.">> <<else>> <<set _poseMsg = "You're licking " + _dom.info.firstName + "\'s pussy.">> <</if>> <<else>> <<if $playerDom == true>> <<set _poseMsg = _sub.info.firstName + " sucks your cock.">> <<else>> <<set _poseMsg = "You're sucking " + _dom.info.firstName + "\'s cock.">> <</if>> <</if>> <<if _dom.gender() != "Female">> <<set _canFacefuck = true>> <</if>> <<run _addInfo = ($cuni == true ? "Lick" : "")>> <<case "Oral(Strap-on)">> <<SetStrapFacePick _dom.gender() _sub.gender()>> <<set _canFacefuck = true>> <<if $playerDom == true>> <<set _poseMsg = _sub.info.firstName + " sucks your Strap-on.">> <<else>> <<set _poseMsg = "You're sucking " + _dom.info.firstName + "\'s Strap-on.">> <</if>> <<run _addInfo = "Oral(Strap-on)">> <<case "Facefuck">> <<SetFacefuckPick _dom.gender() _sub.gender()>> <<if $playerDom == true>> <<set _poseMsg = "You're fucking " + _sub.info.firstName + " in the throat.">> <<else>> <<set _poseMsg = _dom.info.firstName + " is fucking your throat.">> <</if>> <<case "Vag">> <<set _hole = _sub.body.vaginaSize.value>> <<SetVagPick _dom.gender() _sub.gender()>> <<if $playerDom == true>> <<set _poseMsg = "You're fucking " + _sub.info.firstName + " in the pussy.">> <<else>> <<set _poseMsg = _dom.info.firstName + " is fucking your pussy.">> <</if>> <<case "Titfuck">> <<SetTitfuckPic _dom.gender() _sub.gender()>> <<if $playerDom == true>> <<set _poseMsg = "You're fucking " + _sub.info.firstName + "'s tits.">> <<else>> <<set _poseMsg = _dom.info.firstName + " is fucking your tits.">> <</if>> <</switch>> <<if $Pose != "Anal" && $Pose != "Vag">> <<set _msgType = "Like">> <<else>> <<if _dom.genitalia() == "Vagina">> <<if (15 - _hole) <= 5>> <<set _msgType = "Like">> <<else>> <<set _msgType = "Pain">> <</if>> <<else>> <<if (_dom.body.penisSize.value - _hole) <= 5>> <<set _msgType = "Like">> <<else>> <<set _msgType = "Pain">> <</if>> <</if>> <</if>> <<Video _pick>> <<ChatMessage _poseMsg>> <<if _dom.info.isPlayer == true>> <<set $playerDom = true>> <<else>> <<set $playerDom = false>> <</if>> <<if $Pose != "Facefuck" && $sexType != "Rape" && $Pose != "Titfuck">> <<run _textDialog = getSexDialog((_dom.info.isPlayer == false), ($Pose == "Oral(Strap-on)" ? "Oral" : $Pose), _msgType, _addInfo)>> <<Chat $interactionNpc _textDialog>> <</if>> <<set _rejectBtn = false>> <<if (_sub.gender() == "Female" && $Pose == "Anal") == false && ($Pose == "Anal" || $Pose == "Vag")>> <<if (_dom.body.penisSize.value - _hole) <= 5>> <<if (_sub.status.potency.value > 0 && _sub.genitalia() == "Penis") || _sub.genitalia() == "Vagina">> <<run _sub.status.horny.increase(Random(5, 20))>> <<if _sub.status.horny.value >= _sub.status.horny.max>> <fieldset> <legend><<print (_sub.info.isPlayer == true ? "Cum(You)" : "Cum(Partner)")>></legend> <<set _rejectBtn = true>> <div class="btn-container-row"> <div class="btn"><<button "Cum" "Cum">><<set $partnerCum = true>><</button>></div> </div> </fieldset> <</if>> <</if>> <<else>> <<if _sub.gender() != "Female" && $Pose == "Anal" && _sub.info.isPlayer == true>> <<ChatMessage "Your anus is not yet sufficiently trained, so penetration causes you pain.">> <</if>> <</if>> <</if>> <<if (_dom.gender() == "Female" && ($Pose == "Anal" || $Pose == "Vag" || $Pose == "Oral(Strap-on)" || $Pose == "Facefuck")) == false>> <<run _dom.status.horny.increase(Random(5, 20))>> <<if _dom.status.horny.value >= _dom.status.horny.max && _sub.status.horny.value < _sub.status.horny.max>> <fieldset> <<set _rejectBtn = true>> <legend><<print (_dom.info.isPlayer == true ? "Cum(You)" : "Cum(Partner)")>></legend> <div class="btn-container-row"> <<if _dom.gender() == "Female">> <div class="btn"><<button "Cum" "Cum">><<set $cumIn = true>><</button>></div> <<else>> <<if $passiveSex == true>> <<if Random(0,100) > 50>> <div class="btn"><<button "Cum" "Cum">><<set $cumIn = true>><</button>></div> <<else>> <div class="btn"><<button "Cum" "Cum">><<set $cumIn = false>><</button>></div> <</if>> <<else>> <<if $Pose == "Titfuck">> <div class="btn"><<button "Cum" "Cum">><</button>></div> <<else>> /* Check if NPC has creampie limit */ <<set _npcLimits = $interactionNpc.saveData.get("limits")>> <<set _creampieBlocked = false>> <<set _creampieReason = "">> <<if _npcLimits && _npcLimits.creampie>> <<if _npcLimits.creampie.status == "no">> <<set _creampieBlocked = true>> <<set _creampieReason = _npcLimits.creampie.reason || "Not allowed">> <</if>> <</if>> <<if _creampieBlocked>> <div class="btn" style="opacity: 0.5;" title="<<print _creampieReason>>"><<button "In (🚫 <<print _creampieReason>>)">><</button>></div> <<else>> <div class="btn"><<button "In" "Cum">><<set $cumIn = true>><</button>></div> <</if>> <div class="btn"><<button "Out" "Cum">><<set $cumIn = false>><</button>></div> <</if>> <</if>> <</if>> </div> </fieldset> <</if>> <</if>> <<if _rejectBtn == false>> <<if _canFacefuck == true && $passiveSex == false>> <div style="margin-top: 10px;"> <<if $playerDom == true && $interactionNpc.attributes.lust.value < 5 && $sexType != "Rape" && $sexType != "hoocker" && $sexType != "hoockerWork">> <div class="btn"><<button "Facefuck" "NotReady">><<set $Pose = "Facefuck">><</button>></div> <<else>> <div class="btn"><<button "Facefuck" "SexPose">><<set $Pose = "Facefuck">><</button>></div> <</if>> </div> <</if>> <<if $passiveSex == true>> <<set _posePassage = "PassiveSex">> <<else>> <<set _posePassage = "Sex">> <</if>> <<if $passiveSex == false>> <div style="margin-top: 10px;"> <div class="btn"><<button "Continue" "SexPose">><</button>></div> </div> <div style="margin-top: 10px;"> <div class="btn"><<button "Change" _posePassage>><</button>></div> </div> <<else>> <div style="margin-top: 10px;"> <div class="btn"><<button "Continue" "SexPose">><<include "SetPassiveSexPose">><</button>></div> </div> <<if $sexType != "Rape" && $sexType != "hoockerWork" && $sexType != "Porn Shoot (PlayerTransform)" && $sexType != "brothelClientService">> <div style="margin-top: 10px;"> <div class="btn"><<button "Back" _posePassage>><</button>></div> </div> <</if>> <</if>> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "UpdateDomSub">> /* Save who came before the variable is reset */ <<set _wasPartnerCum = $partnerCum>> /* For brothelClientService, determine if the CLIENT came */ <<if $sexType == "brothelClientService">> <<if $playerDom == true>> /* Player is DOM, client is SUB - client cums when partnerCum is true */ <<set _clientCame = _wasPartnerCum>> <<else>> /* Player is SUB, client is DOM - client cums when partnerCum is false (dom cumming) */ <<set _clientCame = !_wasPartnerCum>> <</if>> <</if>> /* <<SetCharProgression $player "sexStamina" _randomValueChange true>> */ <<if $Pose == "Facefuck">> <<set $Pose = "Oral">> <</if>> <<if $passiveSex == true && $partnerCum != true && $sexType != "hoocker" && $sexType != "hoockerWork" && $sexType != "Porn Shoot" && $sexType != "Porn Shoot (PlayerTransform)" && $sexType != "OneSex" && $sexType != "OneSex (Destroy)">> <<set $roundCount -= 1>> <</if>> <<switch $Pose>> <<case "Anal">> <<if $partnerCum == true>> <<SetAnalPartnerCumPick _dom.gender() _sub.gender()>> <<if $playerDom == true>> <<set _poseMsg = _sub.info.firstName + " is having an anal orgasm.">> <<else>> <<set _poseMsg = "You're having an anal orgasm.">> <</if>> <<else>> <<if $cumIn == true>> <<SetAnalCumInPick _dom.gender() _sub.gender()>> <<if $playerDom == true>> <<set _poseMsg = "You're cumming in " + _sub.info.firstName + "\'s ass.">> <<else>> <<set _poseMsg = _dom.info.firstName + " is cumming in your ass.">> <</if>> <<else>> <<SetAnalCumOutPick _dom.gender() _sub.gender()>> <<if $playerDom == true>> <<set _poseMsg = "You pull your cock out of " + _sub.info.firstName + "\'s ass and cum all over " + possessivePronouns(_sub) + " body.">> <<else>> <<set _poseMsg = _dom.info.firstName + " pulls " + possessivePronouns(_dom) + " cock out of your ass and cum on you.">> <</if>> <</if>> <</if>> <<case "Oral">> <<if $cuni == true>> <<SetOralCumInPick _dom.gender() _sub.gender()>> <<if $playerDom == true>> <<set _poseMsg = "You're having an orgasm.">> <<else>> <<set _poseMsg = _dom.info.firstName + " is having an orgasm.">> <</if>> <<else>> <<if $cumIn == true>> <<SetOralCumInPick _dom.gender() _sub.gender()>> <<if $playerDom == true>> <<set _poseMsg = "You're cumming in " + _sub.info.firstName + "\'s mouth.">> <<else>> <<set _poseMsg = _dom.info.firstName + " is cumming in your mouth.">> <</if>> <<else>> <<SetOralCumOutPick _dom.gender() _sub.gender()>> <<if $playerDom == true>> <<set _poseMsg = "You're cumming on " + _sub.info.firstName + "\'s face.">> <<else>> <<set _poseMsg = _dom.info.firstName + " is cumming on your face.">> <</if>> <</if>> <</if>> <<case "Vag">> <<if $partnerCum == true>> <<SetVagPartnerCumPick _dom.gender() _sub.gender()>> <<if $playerDom == true>> <<set _poseMsg = _sub.info.firstName + " is having an orgasm.">> <<else>> <<set _poseMsg = "You're having an orgasm.">> <</if>> <<else>> <<if $cumIn == true>> <<SetVagCumInPick _dom.gender() _sub.gender()>> <<if $playerDom == true>> <<set _poseMsg = "You're cumming in " + _sub.info.firstName + "\'s pussy.">> <<else>> <<set _poseMsg = _dom.info.firstName + " is cumming in your pussy.">> <</if>> <<else>> <<SetVagCumOutPick _dom.gender() _sub.gender()>> <<if $playerDom == true>> <<set _poseMsg = "You pull your cock out of " + _sub.info.firstName + "\'s pussy and cum all over " + possessivePronouns(_sub) + " body.">> <<else>> <<set _poseMsg = _dom.info.firstName + " pulls " + possessivePronouns(_dom) + " cock out of your pussy and cum on you.">> <</if>> <</if>> <</if>> <<case "Titfuck">> <<SetTitfucCumkPic _dom.gender() _sub.gender()>> <<if $playerDom == true>> <<set _poseMsg = "You're cumming.">> <<else>> <<set _poseMsg = _dom.info.firstName + " is cumming.">> <</if>> <</switch>> <<if $partnerCum == true>> <<run _sub.status.horny.value = _sub.status.horny.min>> <<run _sub.status.potency.decrease(1)>> <<set $partnerCum = false>> <<else>> <<run _dom.status.horny.value = _dom.status.horny.min>> <<run _dom.status.potency.decrease(1)>> <<if ($sexType != "Porn Shoot" && $sexType != "Porn Shoot (PlayerTransform)" && $sexType != "OneSex (Destroy)") || _dom.info.isPlayer == true>> <<run _dom.characterEvents.registerEvent(_dom.info.id, "IsCum", 1)>> <<include "CheckSexStaminaUpgrade">> <</if>> <</if>> <<Video _pick>> <<ChatMessage _poseMsg>> <<if $playerDom == true>> <<run _gainExp = Random(10,25)>> <<SetCharProgression $player 'lust' _gainExp true>> <</if>> <<if $sexType == "hoocker" && $partnerCum != true>> <div style="margin-top: 10px;"> <div class="btn padding-top"><<button "Leave" $player.info.currentLocation>> <<include "SexSystem_CheckSexType">> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <<unset $sexType $interactionNpc $passiveSex $playerDom $partnerCum $cumIn $roundCount $maxSexEnd $Pose $cuni>> <</button>></div> </div> <<elseif $sexType == "brothelClientService">> /* Brothel client service - finish when client (NPC) cums */ <<if _clientCame == true>> /* Client came - service complete! */ <div style="margin-top: 10px;"> <div class="btn" style="background: linear-gradient(135deg, #4CAF50 0%, #8BC34A 100%);"> <<button "💰 Collect Payment" "BrothelMasterRoom_ClientFinished">> <<unset $sexType $interactionNpc $passiveSex $playerDom $partnerCum $cumIn $roundCount $maxSexEnd $Pose $cuni>> <</button>> </div> </div> <<else>> /* Player came first - continue until client is satisfied */ <<ChatMessage "The client isn't finished yet... keep going!">> <div style="margin-top: 10px;"> <<if $passiveSex == true>> <div class="btn"><<button "Continue" "PassiveSex">><</button>></div> <<else>> <div class="btn"><<button "Continue" "Sex">><</button>></div> <</if>> </div> <</if>> <<elseif $sexType == "hoockerWork" && $partnerCum != true>> <div style="margin-top: 10px;"> <<if $aggresiveFuck == true>> <div class="btn padding-top"><<button "Leave" $player.info.currentLocation>> <<include "SexSystem_CheckSexType">> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <<unset $sexType $interactionNpc $passiveSex $playerDom $partnerCum $cumIn $roundCount $maxSexEnd $Pose $cuni>> <</button>></div> <<elseif $isPimpSex != true>> <div class="btn"><<button "Continue" "HookerWork">><<unset $sexType $interactionNpc $passiveSex $playerDom $partnerCum $cumIn $roundCount $maxSexEnd $Pose $cuni>><<unset $indexNPC $interaction $interactType>><<set $dateTime.minutes += 60>><</button>></div> <<else>> <div class="btn"><<button "Continue" "PimpRoom">><<SetSaveBtn true>><<unset $isPimpSex $sexType $interactionNpc $passiveSex $playerDom $partnerCum $cumIn $roundCount $maxSexEnd $Pose $cuni>><<unset $indexNPC $interaction $interactType>><<set $dateTime.minutes += 60>><</button>></div> <</if>> </div> <<elseif $sexType == "Porn Shoot">> <<set $player.status.potency.value = $player.status.potency.min>> <div class="padding-top"> <div class="btn"><<button "Continue" $player.info.currentLocation>> <<run $Characters.splice($indexNPC, 1)>> <<set $player.money += Random(250, 1000)>> <<run $player.info.reputation.pornActer.increase(Random(2, 8, true))>> <<unset $sexType $interactionNpc $indexNPC>> <<SetSaveBtn true>> <</button>></div> </div> <<elseif $sexType == "Porn Shoot (PlayerTransform)">> <<set $player.status.potency.value = $player.status.potency.min>> <div class="padding-top"> <div class="btn"><<button "Continue" $player.info.currentLocation>> <<run $player.body.face.value = $savePlayerBody.face>> <<run $player.body.penisSize.value = $savePlayerBody.penisSize>> <<run $player.body.vaginaSize.value = $player.body.vaginaSize.min>> <<run $Characters.splice($indexNPC, 1)>> <<set $player.money += Random(250, 1000)>> <<run $player.info.reputation.pornActer.increase(Random(2, 8, true))>> <<unset $sexType $interactionNpc $indexNPC>> <<SetSaveBtn true>> <</button>></div> </div> <<elseif $sexType == "Porn Shoot (PlayerCasting)">> <div class="padding-top"> <div class="btn"><<button "Continue" "PornCasting_FemalePlayer_Finish">><<unset $sexType>><</button>></div> </div> <<elseif $sexType == "OneSex">> <div class="padding-top"> <div class="btn"><<button "Continue" $player.info.currentLocation>> <<SetSaveBtn true>> <<unset $sexType $interactionNpc $indexNPC>> <</button>></div> </div> <<elseif $sexType == "OneSex (Destroy)">> <div class="padding-top"> <div class="btn"><<button "Continue" $player.info.currentLocation>> <<run $Characters.splice($indexNPC, 1)>> <<unset $sexType $interactionNpc $indexNPC>> <<SetSaveBtn true>> <</button>></div> </div> <<elseif _dom.status.horny.value >= _dom.status.horny.max || $sexType == "Rape">> <div style="margin-top: 10px;"> <div class="btn"><<button "Continue" "Sex">><</button>></div> </div> <<else>> <<if $passiveSex == true>> <<set _posePassage = "PassiveSex">> <<else>> <<set _posePassage = "Sex">> <</if>> <div style="margin-top: 10px;"> <div class="btn"><<button "Continue" _posePassage>><</button>></div> </div> <</if>> <</nobr>>
<<nobr>> <<switch $Pose>> <<case "Anal">> <<if _sub.body.anusSize.value < _dom.body.penisSize.value || _dom.genitalia() == "Vagina">> <<run _sub.body.anusSize.increase(Random(0.3, 0.8, true))>> <</if>> <<case "Vag">> <<if _sub.body.vaginaSize.value < _dom.body.penisSize.value || _dom.genitalia() == "Vagina">> <<run _sub.body.vaginaSize.increase(Random(0.3, 0.8, true))>> <</if>> <<case "Oral">> <<if _sub.body.throatSize.value < _dom.body.penisSize.value || _dom.genitalia() == "Vagina">> <<run _sub.body.throatSize.increase(Random(0.3, 0.8, true))>> <</if>> <<case "Oral(Strap-on)">> <<run _sub.body.throatSize.increase(Random(0.3, 0.8, true))>> <<case "Facefuck">> <<if _sub.body.throatSize.value < _dom.body.penisSize.value || _dom.genitalia() == "Vagina">> <<run _sub.body.throatSize.increase(Random(0.3, 0.8, true))>> <</if>> <</switch>> <</nobr>>
<<nobr>> <<if ($playerDom == true && $sexType != "hoockerWork")>> <<set _dom = $player>> <<set _sub = $interactionNpc>> <<else>> <<set _dom = $interactionNpc>> <<set _sub = $player>> <</if>> <</nobr>>
<<nobr>> <<set _randGain = Random(5, 20)>> <<SetCharProgression _dom 'sexStamina' _randGain true>> <</nobr>>
<<nobr>> <<if $interactionNpc.info.SexRole == "Active">> <<set $playerDom = false>> <<elseif $interactionNpc.info.SexRole == "Versatile">> <<set $playerDom = [true, false].random()>> <<elseif $interactionNpc.info.SexRole == "Passive">> <<set $playerDom = true>> <</if>> <<set $Pose = ["Anal", "Oral", "Facefuck"]>> <<if $playerDom == true>> <<if $interactionNpc.genitalia() == "Vagina">> <<run $Pose.push("Vag")>> <</if>> <<if $player.gender() == "Male" && $interactionNpc.body.breastSize.value >= 3>> <<run $Pose.push("Titfuck")>> <</if>> <<run $Pose = $Pose[Math.floor(Math.random() * $Pose.length)]>> <<if $Pose == "Oral" && $player.genitalia() == "Vagina">> <<set $cuni = true>> <</if>> <<else>> <<if $player.genitalia() == "Vagina">> <<run $Pose.push("Vag")>> <</if>> <<if $interactionNpc.gender() == "Male" && $player.body.breastSize.value >= 3>> <<run $Pose.push("Titfuck")>> <</if>> <<run $Pose = $Pose[Math.floor(Math.random() * $Pose.length)]>> <<if $Pose == "Oral" && $interactionNpc.genitalia() == "Vagina">> <<set $cuni = true>> <</if>> <</if>> <<if $playerDom == true>> <<if $interactionNpc.attributes.lust.value < 5 && $Pose == "Facefuck">> <<set $Pose = ["Oral"]>> <<if $interactionNpc.genitalia() == "Vagina">> <<run $Pose.push("Vag")>> <</if>> <<if $player.gender() == "Male" && $interactionNpc.body.breastSize.value >= 3>> <<run $Pose.push("Titfuck")>> <</if>> <<run $Pose = $Pose[Math.floor(Math.random() * $Pose.length)]>> <<elseif $interactionNpc.attributes.lust.value < -7 && $Pose == "Anal">> <<set $Pose = ["Oral"]>> <<if $interactionNpc.genitalia() == "Vagina">> <<run $Pose.push("Vag")>> <</if>> <<if $player.gender() == "Male" && $interactionNpc.body.breastSize.value >= 3>> <<run $Pose.push("Titfuck")>> <</if>> <<if $interactionNpc.attributes.lust.value >= 5>> <<run $Pose.push("Facefuck")>> <</if>> <<run $Pose = $Pose[Math.floor(Math.random() * $Pose.length)]>> <</if>> <</if>> <</nobr>>
<<nobr>> <<if $interactionNpc.info.characterWork == "Pharmacist" || $interactionNpc.info.characterWork == "Gift seller" || $interactionNpc.info.characterWork == "Grocer" || $interactionNpc.info.characterWork == "Fitness Trainer" || $interactionNpc.info.characterWork == "Martial Arts Instructor" || $interactionNpc.info.characterWork == "Clothing Seller" || $interactionNpc.info.characterWork == "Sex Shop Worker">> <<if $dateTime.hours >= 8 && $dateTime.hours <=16 && $player.dailyEvents.isEventRegistered($interactionNpc.info.id, "Worked") == false>> <div class="btn"><<button "Start Work" "Work">><</button>></div> <</if>> <<elseif $interactionNpc.info.characterWork == "Pimp" && $player.characterEvents.isEventRegistered($player.info.id, "Can Work As Hooker") == true>> <div class="btn"><<button "Start Work" "WorkAsHooker">> <<include "HookerWordCalculateEarnings">> <</button>></div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if $player.status.energy.value < 50>> <<goto "NotEnoughEnergy">> <<else>> <<if $interactionNpc.info.characterWork == "Fitness Trainer">> <<if $player.attributes.strength.value < 9>> <<ChatMessage "You do not have enough muscle to work as a fitness trainer.">> <<else>> <<set _earning = Random(200, 450, false)>> <<include "WorkDone">> <</if>> <<elseif $interactionNpc.info.characterWork == "Martial Arts Instructor">> <<if $player.skills.battleSkill.value < 90>> <<ChatMessage "Your level of martial arts is too low.">> <<else>> <<set _earning = Random(200, 450, false)>> <<include "WorkDone">> <</if>> <<else>> <<set _earning = Random(100, 250, false)>> <<include "WorkDone">> <</if>> <</if>> <<BackButton "<<set $canShowStatsBtn = true>> <<unset $interactionNpc>> <<set $gameSettings.allowSaves = true>>">> <</nobr>>
<<nobr>> <<run $player.dailyEvents.registerEvent($interactionNpc.info.id, "Worked", 1)>> <<set $dateTime.hours += 6>> <<SpendEnergy $player 50>> <<set _msg = "You've done an excellent job and rightfully earned $" + _earning>> <<ChatMessage _msg>> <<run $player.money += _earning>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatMessage "Not enough energy.">> <<BackButton "<<set $canShowStatsBtn = true>> <<unset $interactionNpc>> <<set $gameSettings.allowSaves = true>>">> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatMessage "Not enough sexual stamina.">> <<BackButton "<<set $canShowStatsBtn = true>> <<unset $interactionNpc>> <<set $gameSettings.allowSaves = true>>">> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $canShowStatsBtn = false>> <<set $gameSettings.allowSaves = false>> <<set _allow = true>> <<if $player.status.energy.value < 50>> <<set _allow = false>> <<goto "NotEnoughEnergy">> <</if>> <<if $player.status.potency.value == 0>> <<set _allow = false>> <<goto "NotEnoughSexStamina">> <</if>> <<if ($player.body.face.value < 2 || $player.gender() == "Male") && $player.characterEvents.isEventRegistered($player.info.id, "Is a pimp's whore") == false>> <<ShowNpcIcon $interactionNpc>> <<Chat $interactionNpc "You lack femininity.">> <<set _allow = false>> <div class="padding-top"> <<BackButton "<<set $canShowStatsBtn = true>> <<unset $interactionNpc $clients $clientsCount $maxEarnings $sexType>> <<set $gameSettings.allowSaves = true>> <<set $canShowStatsBtn = true>>">> </div> <</if>> <<if _allow == true>> <<SpendEnergy $player 50>> <<goto "HookerWork">> <</if>> <</nobr>>
<<nobr>> <<set _client = $clients[Math.floor(Math.random() * $clients.length)]>> <<for _i = 0; _i < $Characters.length; _i++>> <<if $Characters[_i].info.id == _client.info.id>> <<set _character = $Characters[_i]>> <<set $interactionNpc = $Characters[_i]>> <<set $indexNPC = $Characters.indexOf(_character)>> <</if>> <</for>> <<include "UpdateAll">> <<if $clients.length == 0>> <<ChatMessage "There are no clients today.">> <<elseif $clientsCount <= 0>> <<ChatMessage "The clients are finished for today.">> <<elseif $player.status.potency.value == 0>> <<ChatMessage "You do not have enough sexual stamina.">> <<else>> <<ShowNpcIcon $interactionNpc>> <<run _earning = Random(20, $maxEarnings)>> <<set _msg = "Hey baby, I'll pay " + _earning + "$.">> <<Chat $interactionNpc _msg>> <</if>> <div class="padding-top"> <<if $clientsCount > 0 && $clients.length > 0 && _allow != false>> <div class="btn-container"> <div class="btn"><<button "Sex" "PassiveSex">><<set $roundCount = 100>><<set $sexType = "hoockerWork">><<set $player.money += _earning>><<set $clientsCount -= 1>><<set $interactionNpc.status.horny.value = 95>><</button>></div> <<if $player.characterEvents.isEventRegistered($player.info.id, "Loose To Pimp") == false>> <div class="btn"><<button "Refuse" "WorkAsHooker">><<set $clientsCount -= 1>><</button>></div> <</if>> </div> <<else>> <<BackButton "<<set $canShowStatsBtn = true>> <<unset $interactionNpc $clients $clientsCount $maxEarnings $sexType>> <<set $gameSettings.allowSaves = true>> <<set $canShowStatsBtn = true>>">> <</if>> </div> <</nobr>>
<<nobr>> <<run $clients = $Characters.filter(character => character.genitalia() == "Penis" && character.info.sexualPreference != "Manly" && character.info.SexRole == "Active" && character.info.characterWork != "Pimp" && character.info.characterWork != "external" && character.info.characterWork != "Pimp's whore" && character.info.characterWork != "Brothel Security" && character.status.potency.value > 0)>> <<set $clientsCount = Random(2,5)>> <<set $maxEarnings = 20>> <<switch Math.trunc($player.body.face.value)>> <<case 3>> <<set $maxEarnings += 20>> <<case 4>> <<set $maxEarnings += 80>> <<case 5>> <<set $maxEarnings += 120>> <<case 6>> <<set $maxEarnings += 200>> <</switch>> <<switch Math.trunc($player.body.breastSize.value)>> <<case 1>> <<set $maxEarnings += 20>> <<case 2>> <<set $maxEarnings += 80>> <<case 3>> <<set $maxEarnings += 120>> <<case 4>> <<set $maxEarnings += 150>> <<case 5>> <<set $maxEarnings += 180>> <<case 6>> <<set $maxEarnings += 200>> <</switch>> <<switch Math.trunc($player.body.buttSize.value)>> <<case 1>> <<set $maxEarnings += 20>> <<case 2>> <<set $maxEarnings += 80>> <<case 3>> <<set $maxEarnings += 120>> <<case 4>> <<set $maxEarnings += 150>> <<case 5>> <<set $maxEarnings += 180>> <<case 6>> <<set $maxEarnings += 200>> <</switch>> <<if $player.genitalia() == "Vagina">> <<set $maxEarnings += 150>> <</if>> <</nobr>>
<<nobr>> <<run CreateCharacters({ isPlayer: false, characterWork: "Student", age: 18, }, $generateNumber.students, $studentGenderArray, $studetsSkinsArray, $studentSexPrefArray)>> /*Hookers */ <<for _i = 1; _i < 3; _i++>> <<run CreateCharacter({ isPlayer: false, characterWork: "Hooker", age: Random(20,45), gender: "Female", SexRole: "Passive", sexualPreference: "Bi", throatSize: 30, anusSize: 30, vaginaSize: 30, }, true)>> <</for>> /*Citisens */ <<for _i = 0; _i < $generateNumber.citizens; _i++>> <<run _currentGender = removeRandomElement($citizensGenderArray)>> <<run _currentSkin = removeRandomElement($citizensSkinArray)>> <<run _currentSexPref = removeRandomElement($citizensSexPrefArray)>> <<if _currentGender == "Male">> <<switch _currentSexPref>> <<case "Straight">> <<set _currentSexPref = "Feminine">> <<case "Bi">> <<set _currentSexPref = "Bi">> <<case "Homo">> <<set _currentSexPref = "Manly">> <</switch>> <<else>> <<switch _currentSexPref>> <<case "Straight">> <<set _currentSexPref = "Manly">> <<case "Bi">> <<set _currentSexPref = "Bi">> <<case "Homo">> <<set _currentSexPref = "Feminine">> <</switch>> <</if>> <<run CreateCharacter({ isPlayer: false, characterWork: "None", age: Random(20,50), gender: _currentGender, skin: _currentSkin, sexualPreference: _currentSexPref, }, true)>> <</for>> /*Surgeon */ <<run CreateCharacter({ isPlayer: false, characterWork: "Plastic Surgeon", age: Random(30,45), }, true)>> /*Pimp */ <<run CreateCharacter({ isPlayer: false, characterWork: "Pimp", battleSkill: 80, strength: Random(85,90), defense: Random(85,90), vitality: Random(85,90), dexterity: Random(85,90), seduction: Random(85,90), resistanceToSeduction: Random(85,90), SexRole: "Active", gender: "Male", sexualPreference: "Bi", clothesPreference: "men", age: Random(30,45), }, true)>> /*Photographer */ <<run CreateCharacter({ isPlayer: false, characterWork: "Photographer", battleSkill: 80, strength: Random(85,90), defense: Random(85,90), vitality: Random(85,90), dexterity: Random(85,90), seduction: Random(85,90), resistanceToSeduction: Random(85,90), SexRole: "Active", gender: "Male", sexualPreference: "Bi", clothesPreference: "men", age: Random(25,45), }, true)>> /*Porn Director */ <<run CreateCharacter({ isPlayer: false, characterWork: "Porn director", battleSkill: 80, strength: Random(85,90), defense: Random(85,90), vitality: Random(85,90), dexterity: Random(85,90), seduction: Random(85,90), resistanceToSeduction: Random(85,90), SexRole: "Active", gender: "Male", sexualPreference: "Bi", clothesPreference: "men", age: Random(30,45), }, true)>> /*Quest Characters Start*/ /* Ethan */ <<run _ethan = CreateCharacter({ isPlayer: false, isQuestCharacter: true, questCharID: 0, currentQuestID: 0, currentCharImg: "Media\\Characters\\QuestChars\\Ethan\\face\\1.png", currentCharState: "Childhood friend", firstName: "Ethan", secondName: "Ashford", characterWork: "Quest", SexRole: "Active", dominance: 40, gender: "Male", sexualPreference: "Bi", clothesPreference: "men", skin: "White", age: 18, }, true)>> <<run $player.characterEvents.registerEvent(_ethan.info.id, "knows you", 1)>> /* Robert */ <<run _robert = CreateCharacter({ isPlayer: false, isQuestCharacter: true, questCharID: 1, currentQuestID: 0, currentCharImg: "Media\\Characters\\QuestChars\\Robert\\face\\1.png", currentCharState: "Friend's father", firstName: "Robert", secondName: "Ashford", characterWork: "Quest", SexRole: "Active", dominance: 80, gender: "Male", sexualPreference: "Bi", clothesPreference: "men", skin: "White", age: 45, }, true)>> <<run $player.characterEvents.registerEvent(_robert.info.id, "knows you", 1)>> /* Sarah */ <<run _sarah = CreateCharacter({ isPlayer: false, isQuestCharacter: true, questCharID: 2, currentQuestID: 0, currentCharImg: "Media\\Characters\\QuestChars\\Sarah\\face\\1.png", currentCharState: "Friend's sister", firstName: "Sarah", secondName: "Ashford", characterWork: "Quest", SexRole: "Passive", dominance: 20, gender: "Female", sexualPreference: "Bi", clothesPreference: "women", skin: "White", age: 19, }, true)>> <<run $player.characterEvents.registerEvent(_sarah.info.id, "knows you", 1)>> /* Amanda */ <<run _amanda = CreateCharacter({ isPlayer: false, isQuestCharacter: true, questCharID:3, currentQuestID: 0, currentCharImg: "Media\\Characters\\QuestChars\\Amanda\\face\\1.png", currentCharState: "Friend's mom", firstName: "Amanda", secondName: "Ashford", characterWork: "Quest", SexRole: "Active", dominance: 60, gender: "Female", sexualPreference: "Bi", clothesPreference: "women", skin: "White", age: 35, }, true)>> <<run $player.characterEvents.registerEvent(_amanda.info.id, "knows you", 1)>> /*Quest Characters End*/ <<unset $studentSexPrefArray $citizensSexPrefArray $studetsSkinsArray $citizensSkinArray $studentGenderArray $citizensGenderArray>> <</nobr>>
<<nobr>> <<set $fightPhrasesNpcWon = ["Looks like you're not as tough as you thought, huh? I always knew you were all talk. Now everyone can see it too", "Just goes to show, arrogance doesn't win fights. Skill does. And you were clearly lacking", "Maybe next time you'll think twice before underestimating me. I'm not someone you can just push around.", "Talk big, fall hard. That's what happens to people like you. Remember this defeat.", "I didn't just beat you in a fight, I showed you what happens when you mess with the wrong person.", "Looks like I had the last word this time. And it's a word you won't forget anytime soon"]>> <<set $fightPhrasesPlayerWon = ["Aaah, damn, that hurts.", "Okay, okay, you win... I'm done.", "Ugh, I didn't see that coming.", "I'm out, I'm out... no more.", "Ouch, my back."]>> <</nobr>>
<<nobr>> <<set _TalkPhrases = ["You can meet hookers in the red light district in the evenings.", "Did you know there's a Gloryhole in the park restroom?", "Don't you forget to go to your college classes at 9 AM?", "If you need money, the grocer was looking for a worker, you can stop by and see him.", "In the shopping center, you can buy various items from the sellers."]>> <</nobr>>
<<nobr>> <<set $maleNames to ["John", "Michael", "William", "David", "Richard", "Joseph", "Charles", "Thomas", "Daniel", "Matthew", "Robert", "James", "Brian", "Andrew", "Edward", "Steven", "George", "Christopher", "Kenneth", "Anthony", "Kevin", "Paul", "Mark", "Donald", "Steven", "Ronald", "Jeffrey", "Timothy", "Scott", "Jason", "Eric", "Stephen", "Larry", "Frank", "Gary", "Dennis", "Gregory", "Roger", "Jerry", "Keith", "Terry", "Samuel", "Bryan", "Willie", "Randy", "Howard", "Fred", "Eugene", "Carlos", "Russell", "Phillip", "Roy", "Harry", "Louis", "Benjamin", "Raymond", "Jeffery", "Wayne", "Ralph", "Billy", "Alan", "Juan", "Gerald", "Joe", "Carl", "Jeremy", "Adam", "Arthur", "Lawrence", "Sean", "Albert", "Dylan", "Logan", "Walter", "Jay", "Billy", "Henry", "Bobby", "Todd", "Craig", "Jesse", "Alan", "Louis", "Philip", "Bobby", "Ernest", "Martin", "Ethan", "Ricky", "Dwayne", "Willard", "Warren", "Arthur", "Clarence", "Lee", "Glenn", "Antonio", "Travis", "Stanley", "Fredrick", "Melvin", "Leon", "Micheal", "Kyle", "Adrian", "Alex", "Barry", "Blake", "Cameron", "Chase", "Cody", "Colin", "Curtis", "Darren", "Dominic", "Evan", "Felix", "Garrett", "Gordon", "Grant", "Harrison", "Isaac", "Jackson", "Jake", "Jared", "Jordan", "Justin", "Karl", "Kieran", "Landon", "Liam", "Lucas", "Malcolm", "Mason", "Nathan", "Nolan", "Oscar", "Owen", "Parker", "Patrick", "Quentin", "Raymond", "Rhys", "Sam", "Seth", "Shane", "Spencer", "Theodore", "Tobias", "Trevor", "Victor", "Vincent", "Wesley", "Wyatt", "Xavier", "Zachary", "Aiden", "Alec", "Archer", "Beckett", "Brooks", "Caleb", "Declan", "Derek", "Dexter", "Emmett", "Finn", "Graham", "Hudson", "Hunter", "Ian", "Jaxon", "Jonah", "Kai", "Keegan", "Kellan", "Leo", "Lincoln", "Max", "Nathaniel", "Nico", "Oliver", "Orion", "Preston", "Rhett", "Riley", "Rowan", "Sebastian", "Silas", "Theo", "Tristan", "Xander", "Zane", "Zayden", "Abraham", "August", "Bennett", "Calvin", "Colton", "Dawson", "Elliott", "Ezra", "Fabian", "Griffin", "Harrison", "Hugo", "Isaiah", "Jasper", "Knox", "Landon", "Levi", "Maddox", "Nash", "Noah", "Peyton", "Roman", "Sawyer", "Simon", "Thaddeus", "Tucker", "Winston", "Zephyr", "Adonis", "Apollo", "Bodhi", "Caspian", "Dante", "Dashiell", "Elias", "Ezekiel", "Finnian", "Gideon", "Hendrix", "Jagger", "Kairos", "Kaspar", "Lachlan", "Maverick", "Nehemiah", "Octavian", "Percival", "Quillon", "Rafferty", "Simeon", "Thelonious", "Ulysses", "Viggo", "Wilder", "Xerxes", "Yardley", "Zephyrus", "Zorion", "Alistair", "Barnaby", "Cassius", "Demitrius", "Emerson", "Finnegan", "Gulliver", "Hawthorne", "Ignatius", "Jotham", "Kipling", "Lysander", "Montgomery", "Napoleon", "Octavius", "Phineas", "Quincy", "Raphael", "Sebastian", "Tiberius", "Ulysses", "Valentine", "Walden", "Xander", "Yorick", "Zane", "Zebedee", "Alaric", "Beauregard", "Calloway", "Darrow", "Emory", "Fitzwilliam", "Gareth", "Hollis", "Ingram", "Jethro", "Kendrick", "Laramie"]>> <<set $femaleNames to [ "Alice", "Beatrice", "Catherine", "Daisy", "Eleanor", "Fiona", "Grace", "Hannah", "Isabella", "Jane", "Katherine", "Lily", "Megan", "Natalie", "Olivia", "Penelope", "Quinn", "Rebecca", "Samantha", "Tabitha", "Ursula", "Violet", "Wendy", "Xena", "Yvonne", "Zoe", "Abigail", "Brianna", "Charlotte", "Delilah", "Eloise", "Felicity", "Gabrielle", "Hazel", "Isabelle", "Josephine", "Kaitlyn", "Lillian", "Madeline", "Nora", "Ophelia", "Paige", "Quincy", "Rachel", "Serena", "Tiffany", "Uma", "Valerie", "Willow", "Xandra", "Yasmin", "Zara", "Adeline", "Bella", "Chloe", "Daphne", "Eva", "Faye", "Georgia", "Holly", "Ivy", "Jocelyn", "Kelsey", "Leah", "Mia", "Nina", "Olive", "Piper", "Quincy", "Riley", "Sophia", "Tessa", "Ursula", "Vivian", "Wren", "Xiomara", "Yvette", "Zoey", "Alexandra", "Brooklyn", "Cassandra", "Danielle", "Emily", "Fiona", "Grace", "Hannah", "Isabella", "Jasmine", "Katherine", "Lily", "Megan", "Natalie", "Olivia", "Penelope", "Quinn", "Rebecca", "Samantha", "Tabitha", "Ursula", "Violet", "Wendy", "Xena", "Yvonne", "Zoe", "Ava", "Brielle", "Carmen", "Diana", "Elena", "Faith", "Giselle", "Hailey", "Isla", "Jade", "Kylie", "Luna", "Mila", "Nora", "Olive", "Piper", "Quinn", "Riley", "Scarlett", "Taylor", "Uma", "Vivienne", "Willa", "Xanthe", "Yara", "Zara", "Amelia", "Bianca", "Cecilia", "Daisy", "Evelyn", "Felicity", "Gemma", "Hazel", "Ivy", "Josephine", "Kira", "Leah", "Morgan", "Natalia", "Octavia", "Poppy", "Quincy", "Raven", "Savannah", "Talia", "Ursula", "Violet", "Wren", "Xia", "Yasmine", "Zoey", "Avery", "Bella", "Charlotte", "Daphne", "Eva", "Fiona", "Grace", "Harper", "Isla", "Juliette", "Katherine", "Layla", "Mia", "Nina", "Olivia", "Penelope", "Quinn", "Reagan", "Sophia", "Tessa", "Ursula", "Valentina", "Willow", "Xena", "Yvonne", "Zara", "Aria", "Blair", "Clara", "Daisy", "Eloise", "Fiona", "Gwen", "Hannah", "Isabel", "Jenna", "Kendall", "Lily", "Maddison", "Nora", "Ophelia", "Paisley", "Quincy", "Riley", "Sienna", "Tessa", "Ursula", "Vivian", "Willow", "Ximena", "Yasmin", "Zoe", "Ariana", "Brynn", "Celeste", "Dahlia", "Eliza", "Fay", "Gwendolyn", "Haven", "Ivy", "Jessamine", "Kira", "Lilith", "Maeve", "Nola", "Olympia", "Paisley", "Quiana", "Raven", "Serenity", "Talia", "Uma", "Vivienne", "Willa", "Xanthe", "Yara", "Zahara", "Adriana", "Bianca", "Camila", "Darcy", "Eleanor", "Felicity", "Giselle", "Hermione", "Isla", "Jocelyn", "Kendall", "Lorelei", "Mabel", "Nina", "Ophelia", "Primrose", "Quinn", "Rowan", "Savannah", "Tessa", "Ursula", "Violet", "Winifred", "Xenia", "Yasmine", "Zephyr", "Avalon", "Briar", "Cassia", "Daisy", "Evangeline", "Faye", "Guinevere", "Hazel", "Isabeau", "Jade", "Kenna", "Luna", "Magnolia", "Niamh", "Odette", "Persephone", "Quincy", "Rhiannon", "Saoirse", "Thalia", "Undine", "Vesper", "Wren", "Xandra", "Yelena", "Zelda", "Amara", "Bellatrix", "Clarissa", "Delphine", "Eowyn", "Fleur", "Gwyneth", "Harmony", "Isolde", "Jasmine", "Kalliope", "Liliana", "Maren", "Nerissa", "Ondine", "Pandora", "Quinlan", "Rosalind", "Selene", "Thisbe", "Ulyssia", "Vada", "Willow", "Xylia", "Yara", "Zephyra" ]>> <<set $surnames to ["Smith", "Johnson", "Brown", "Davis", "Wilson", "Miller", "Moore", "Taylor", "Anderson", "Thomas", "Jackson", "White", "Harris", "Martin", "Thompson", "Garcia", "Martinez", "Robinson", "Clark", "Lewis", "Walker", "Hall", "Young", "Allen", "Wright", "King", "Green", "Baker", "Adams", "Nelson", "Hill", "Ramirez", "Campbell", "Mitchell", "Roberts", "Carter", "Phillips", "Evans", "Turner", "Parker", "Collins", "Edwards", "Stewart", "Flores", "Morris", "Nguyen", "Murphy", "Rivera", "Cook", "Rogers", "Morgan", "Peterson", "Cooper", "Reed", "Bailey", "Bell", "Gomez", "Kelly", "Howard", "Ward", "Cox", "Diaz", "Richardson", "Wood", "Watson", "Brooks", "Bennett", "Gray", "James", "Reyes", "Cruz", "Hughes", "Price", "Myers", "Long", "Foster", "Sanders", "Ross", "Morales", "Powell", "Sullivan", "Russell", "Ortiz", "Jenkins", "Gutierrez", "Perry", "Butler", "Barnes", "Fisher", "Henderson", "Coleman", "Simmons", "Patterson", "Jordan", "Reynolds", "Hamilton", "Graham", "Kim", "Gonzales", "Alexander", "Ramos", "Wallace", "Griffin", "West", "Cole", "Hayes", "Adler", "Brock", "Carver", "Delgado", "Elliott", "Fleming", "Graves", "Hansen", "Ingram", "Jefferson", "Keller", "Larson", "Mathews", "Nicholson", "Oliver", "Peters", "Quinn", "Rodriguez", "Silva", "Torres", "Underwood", "Vargas", "Wagner", "Xavier", "York", "Zimmerman", "Avery", "Bishop", "Chapman", "Dixon", "Erickson", "Ferguson", "Gill", "Harrison", "Irwin", "Jensen", "Kendrick", "Lawson", "Mendoza", "Nash", "Owens", "Porter", "Quintero", "Reyes", "Salazar", "Trujillo", "Vasquez", "Weaver", "Xiong", "Yates", "Zuniga", "Armstrong", "Barrett", "Chan", "Dunn", "Eaton", "Freeman", "Gaines", "Huffman", "Ingram", "Jensen", "Knox", "Lopez", "Mendez", "Owens", "Perez", "Quinn", "Ramsey", "Schmidt", "Tucker", "Vaughn", "Watkins", "Yoder", "Zhang", "Bauer", "Chavez", "Donovan", "Fowler", "Gibson", "Hanson", "Ibrahim", "Jackson", "Kaplan", "Lawrence", "Mendez", "Nguyen", "O'Donnell", "Patterson", "Quinn", "Reyes", "Sanchez", "Tanner", "Vargas", "Watts", "Young", "Zhao", "Abbott", "Bennett", "Carlson", "Donnelly", "Estrada", "Fitzgerald", "Gilliam", "Holloway", "Ingram", "Jefferson", "Kennedy", "Larson", "Manning", "Nelson", "O'Donnell", "Perez", "Quinn", "Ramirez", "Sullivan", "Thompson", "Underwood", "Valdez", "Wright", "Xiong", "Yates", "Zimmerman", "Austin", "Beck", "Chang", "Duncan", "Erickson", "Fowler", "Gonzalez", "Harrington", "Iverson", "Johnson", "Kaplan", "Lopez", "Martinez", "Nash", "Owens", "Patterson", "Quintero", "Reyes", "Soto", "Tucker", "Vasquez", "Wagner", "Xavier", "Young", "Zhang", "Bailey", "Chavez", "Dixon", "Eaton", "Fleming", "Garcia", "Hernandez", "Irwin", "Jenkins", "Keller", "Lawson", "Mendoza", "Norton", "Ortega", "Parker", "Ramos", "Sanchez", "Torres", "Valencia", "Walker", "Xiao", "Yoder", "Zuniga", "Bates", "Cruz", "Delgado", "Espinoza", "Fisher", "Gomez", "Hanson", "Ingram", "Jensen", "Kendrick", "Leblanc", "Mendez", "Nguyen", "O'Neill", "Perez", "Quinn", "Rivera", "Sullivan", "Trujillo", "Vargas", "Watts", "Yates", "Zhou"]>> <</nobr>>
<<nobr>> <div class="container-stat-visual" style="height: 340px;"> <p style="text-align: center; margin: 0; padding: 0;">Name</p> <div class="row-stat-visual"> <div class="stat-card-stat-visual"> <div class="cheat-form-container"> <form id="cheat-nameForm"> <div class="cheat-input-group"> <input type="text" id="cheat-firstName" class="cheat-input" required> <label for="cheat-firstName" class="cheat-label-name">First Name</label> </div> <div class="cheat-input-group"> <input type="text" id="cheat-secondName" class="cheat-input" required> <label for="cheat-secondName" class="cheat-label-name">Second Name</label> </div> <div class="padding-top"> <div class="btn"><<button "Apply">><<include "Change_Name_Cheats">><</button>></div> </div> </form> </div> </div> </div> </div> <<done>> <<include "UpdateNameField_Cheats">> <</done>> <</nobr>>
<<nobr>> <<run document.getElementById("cheat-firstName").value = $cheatsChar.info.firstName>> <<run document.getElementById("cheat-secondName").value = $cheatsChar.info.secondName>> <</nobr>>
<<nobr>> <<run $cheatsChar.info.firstName = document.getElementById("cheat-firstName").value>> <<run $cheatsChar.info.secondName = document.getElementById("cheat-secondName").value>> <<if $cheatsChar.info.isPlayer == true>> <<run DisplayText("player-name", $cheatsChar.info.firstName + " " + $cheatsChar.info.secondName)>> <</if>> <</nobr>>
<<nobr>> <div class="container-stat-visual" style="height: 340px;"> <p style="text-align: center; margin: 0; padding: 0;">Face</p> <div class="row-stat-visual"> <div class="stat-card-stat-visual"> <div class="surgery-container"> <div class="surgery-item"><div class="btn"><<button " <<< ">><<set $imgNumIncrease = false>><<replace "#surgery-icon">><<include "ChangeValue_Face_Cheats">><</replace>><</button>></div> </div> <div class="surgery-item" id="surgery-icon"><img style="width: 200px; height: 200px; border-radius: 25px;" @src="_characterIcon" alt="Avatar"></div> <div class="surgery-item"><div class="btn"><<button " >>> ">><<set $imgNumIncrease = true>><<replace "#surgery-icon">><<include "ChangeValue_Face_Cheats">><</replace>><</button>></div> </div> </div> <div class="surgery-item" id="select-new-charface"><div class="btn"><<button "Select">><<include "Select_Face_Cheats">><</button>></div> </div> </div> </div> </div> <<done>> <<include "Update_Select_Button_Face_Cheats">> <</done>> <</nobr>>
<<nobr>> <<if $cheatsChar.body.face.value >= 3>> <<set _charGenderIcon = "Female">> <<else>> <<set _charGenderIcon = "Male">> <</if>> <<set _characterGender = $cheatsChar.gender() == "Male" ? "Male" : "Female";>> <<if $gameSettings.feminizationStages == true>> <<set _characterIcon = "Media\\Characters\\" + $cheatsChar.info.skin + "\\Face\\" + $characterFaceType.value + "\\" + Math.trunc($cheatsChar.body.face.value) + ".jpeg">> <<else>> <<set _characterIcon = "Media\\Characters\\" + $cheatsChar.info.skin + "\\Face\\" + _charGenderIcon + "\\" + $characterFaceType.value + ".jpg">> <</if>> <</nobr>>
<<nobr>> <<if $imgNumIncrease == true>> <<if $characterFaceType.value == $characterFaceType.max>> <<set $characterFaceType.value = $characterFaceType.min>> <<else>> <<set $characterFaceType.increase(1)>> <</if>> <<else>> <<if $characterFaceType.value == $characterFaceType.min>> <<set $characterFaceType.value = $characterFaceType.max>> <<else>> <<set $characterFaceType.decrease(1)>> <</if>> <</if>> <<include "Update_Image_Cheats">> <<include "Update_Select_Button_Face_Cheats">> <</nobr>>
<<nobr>> <<if $cheatsChar.body.face.value >= 3>> <<set _charGenderIcon = "Female">> <<else>> <<set _charGenderIcon = "Male">> <</if>> <<if $gameSettings.feminizationStages == true>> <<run _characterIcon = "Media\\Characters\\" + $cheatsChar.info.skin + "\\Face\\" + $characterFaceType.value + "\\" + Math.trunc($cheatsChar.body.face.value) + ".jpeg">> <<else>> <<run _characterIcon = "Media\\Characters\\" + $cheatsChar.info.skin + "\\Face\\" + _charGenderIcon + "\\" + $characterFaceType.value + ".jpg">> <</if>> /* <<set _characterIcon = "Media\\Characters\\" + $cheatsChar.info.skin + "\\Face\\" + _charGenderIcon + "\\" + $characterFaceType.value + ".jpg">> */ <img style="width: 200px; height: 200px; border-radius: 25px;" @src="_characterIcon" alt="Avatar"> <</nobr>>
<<nobr>> <<if $characterFaceType.value != $cheatsChar.body.faceType.value>> <<replace "#select-new-charface">><div class="btn"><<button "Select">><<include "Assign_Face_Cheats">><</button>></div><</replace>> <<else>> <<replace "#select-new-charface">><div class="btn non-interacting"><<button "Select">><</button>></div><</replace>> <</if>> <</nobr>>
<<nobr>> <<set $cheatsChar.body.faceType.value = $characterFaceType.value>> <<include "Select_Face_Cheats">> <</nobr>>
<<nobr>> <<include "Face_Variables_Assign_Cheats">> <<replace "#surgery-icon">><<include "Update_Image_Cheats">><</replace>> <<include "Update_Image_Cheats">> <<include "Update_Select_Button_Face_Cheats">> <<if $cheatsChar.info.isPlayer == true>> <<run document.getElementById("player-icon").src = _characterIcon>> <</if>> <</nobr>>
<<nobr>> <div class="container-stat-visual" style="height: 340px;"> <p style="text-align: center; margin: 0; padding: 0;">Body</p> <div class="row-stat-visual"> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Femininity</div> <div class="surgery-container"> <div class="surgery-item" id="surgery-femininity-decrease-btn"></div> <div class="stat-visual-stat-visual" id="surgery-femininity-value_txt"></div> <div class="surgery-item" id="surgery-femininity-increase-btn"></div> </div> </div> </div> <div class="row-stat-visual"> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Breast</div> <div class="surgery-container"> <div class="surgery-item" id="surgery-breast-decrease-btn"></div> <div class="stat-visual-stat-visual" id="surgery-breast-value_txt"></div> <div class="surgery-item" id="surgery-breast-increase-btn"></div> </div> </div> </div> <div class="row-stat-visual"> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Butt</div> <div class="surgery-container"> <div class="surgery-item" id="surgery-butt-decrease-btn"></div> <div class="stat-visual-stat-visual" id="surgery-butt-value_txt"></div> <div class="surgery-item" id="surgery-butt-increase-btn"></div> </div> </div> </div> </div> <<done>> <<include "Update_Buttons_Body_Cheats">> <<include "Update_Body_Value_Cheats">> <</done>> <</nobr>>
<<nobr>> <<set _characterFemininity = $cheatsChar.body.face>> <<set _characterBreastSize = $cheatsChar.body.breastSize>> <<set _characterButtSize = $cheatsChar.body.buttSize>> <</nobr>>
<<nobr>> <<replace "#surgery-femininity-value_txt">><<print Math.trunc(_characterFemininity.value)>>/_characterFemininity.max<</replace>> <<replace "#surgery-breast-value_txt">><<print Math.trunc(_characterBreastSize.value)>>/_characterBreastSize.max<</replace>> <<replace "#surgery-butt-value_txt">><<print Math.trunc(_characterButtSize.value)>>/_characterButtSize.max<</replace>> <</nobr>>
<<nobr>> /* Femininity */ <<if Math.trunc(_characterFemininity.value) != _characterFemininity.max>> <<replace "#surgery-femininity-increase-btn">><div class="btn"><<button " >>> ">><<include "IncreaseFemininity_Cheats">><</button>></div><</replace>> <<else>> <<replace "#surgery-femininity-increase-btn">><div class="btn non-interacting"><<button " >>> ">><</button>></div><</replace>> <</if>> <<if Math.trunc(_characterFemininity.value) != _characterFemininity.min>> <<replace "#surgery-femininity-decrease-btn">><div class="btn"><<button " <<< ">><<include "DecreaseFemininity_Cheats">><</button>></div><</replace>> <<else>> <<replace "#surgery-femininity-decrease-btn">><div class="btn non-interacting"><<button " <<< ">><</button>></div><</replace>> <</if>> /* ------------------------ */ /* Breast */ <<if Math.trunc(_characterBreastSize.value) != _characterBreastSize.max>> <<replace "#surgery-breast-increase-btn">><div class="btn"><<button " >>> ">><<include "IncreaseBreast_Cheats">><</button>></div><</replace>> <<else>> <<replace "#surgery-breast-increase-btn">><div class="btn non-interacting"><<button " >>> ">><</button>></div><</replace>> <</if>> <<if Math.trunc(_characterBreastSize.value) != _characterBreastSize.min>> <<replace "#surgery-breast-decrease-btn">><div class="btn"><<button " <<< ">><<include "DecreaseBreast_Cheats">><</button>></div><</replace>> <<else>> <<replace "#surgery-breast-decrease-btn">><div class="btn non-interacting"><<button " <<< ">><</button>></div><</replace>> <</if>> /* ------------------------ */ /* Butt */ <<if Math.trunc(_characterButtSize.value) != _characterButtSize.max>> <<replace "#surgery-butt-increase-btn">><div class="btn"><<button " >>> ">><<include "IncreaseButt_Cheats">><</button>></div><</replace>> <<else>> <<replace "#surgery-butt-increase-btn">><div class="btn non-interacting"><<button " >>> ">><</button>></div><</replace>> <</if>> <<if Math.trunc(_characterButtSize.value) != _characterButtSize.min>> <<replace "#surgery-butt-decrease-btn">><div class="btn"><<button " <<< ">><<include "DecreaseButt_Cheats">><</button>></div><</replace>> <<else>> <<replace "#surgery-butt-decrease-btn">><div class="btn non-interacting"><<button " <<< ">><</button>></div><</replace>> <</if>> /* ------------------------ */ <</nobr>>
<<nobr>> <<run $cheatsChar.body.face.increase(1)>> <<include "Default_Body_Checks_Cheats">> <</nobr>>
<<nobr>> <<run $cheatsChar.body.face.decrease(1)>> <<include "Default_Body_Checks_Cheats">> <</nobr>>
<<nobr>> <<run $cheatsChar.body.breastSize.increase(1)>> <<include "Default_Body_Checks_Cheats">> <</nobr>>
<<nobr>> <<run $cheatsChar.body.breastSize.decrease(1)>> <<include "Default_Body_Checks_Cheats">> <</nobr>>
<<nobr>> <<run $cheatsChar.body.buttSize.increase(1)>> <<include "Default_Body_Checks_Cheats">> <</nobr>>
<<nobr>> <<run $cheatsChar.body.buttSize.decrease(1)>> <<include "Default_Body_Checks_Cheats">> <</nobr>>
<<nobr>> <<include "Update_Buttons_Body_Cheats">> <<include "Update_Body_Value_Cheats">> <<include "Face_Variables_Assign_Cheats">> <<replace "#surgery-icon">><<include "Update_Image_Cheats">><</replace>> <</nobr>>
<<nobr>> <div class="container-stat-visual" style="height: 340px;"> <p style="text-align: center; margin: 0; padding: 0;">Genitals</p> <div class="row-stat-visual" style="flex-direction: column;"> <div class="stat-card-stat-visual"> <div class="surgery-item"><div class="btn" id="surgery-vagina-btn"></div></div> <div class="padding-top"> <div class="surgery-item"><div class="btn" id="surgery-penis-btn"></div></div> </div> </div> </div> </div> <<done>> <<include "Update_Buttons_Genitals_Cheats">> <</done>> <</nobr>>
<<nobr>> <<set _characterGenitals = $cheatsChar.genitalia()>> <</nobr>>
<<nobr>> <<if _characterGenitals != "Vagina">> <<replace "#surgery-vagina-btn">><div class="btn"><<button "Vagina">><<include "SetVagina_Cheats">><</button>></div><</replace>> <<else>> <<replace "#surgery-vagina-btn">><div class="btn non-interacting"><<button "Vagina">><</button>></div><</replace>> <</if>> <<if _characterGenitals != "Penis">> <<replace "#surgery-penis-btn">><div class="btn"><<button "Penis">><<include "SetPenis_Cheats">><</button>></div><</replace>> <<else>> <<replace "#surgery-penis-btn">><div class="btn non-interacting"><<button "Penis">><</button>></div><</replace>> <</if>> <</nobr>>
<<nobr>> <<run $cheatsChar.body.penisSize.value = 8>> <<run $cheatsChar.body.vaginaSize.value = 0>> <<include "Genitals_Variables_Assign">> <<include "Update_Buttons_Genitals_Cheats">> <<include "Face_Variables_Assign_Cheats">> <<replace "#surgery-icon">><<include "Update_Image_Cheats">><</replace>> <<include "Update_Second_Stats_Cheats">> <<include "Update_Buttons_Second_Stats_Cheats">> <</nobr>>
<<nobr>> <<run $cheatsChar.body.penisSize.value = 0>> <<run $cheatsChar.body.vaginaSize.value = 1>> <<include "Genitals_Variables_Assign">> <<include "Update_Buttons_Genitals_Cheats">> <<include "Face_Variables_Assign_Cheats">> <<replace "#surgery-icon">><<include "Update_Image_Cheats">><</replace>> <<include "Update_Second_Stats_Cheats">> <<include "Update_Buttons_Second_Stats_Cheats">> <</nobr>>
<<nobr>> <div class="container-stat-visual" style="height: 340px;"> <p class="cheat-label">Skin Tone</p> <div class="row-stat-visual" style="flex-direction: column;"> <div class="stat-card-stat-visual"> <div class="surgery-item"><div class="btn" id="white-btn"></div></div> <div class="padding-top"> <div class="surgery-item"><div class="btn" id="black-btn"></div></div> </div> <div class="padding-top"> <div class="surgery-item"><div class="btn" id="asian-btn"></div></div> </div> </div> </div> </div> <<done>> <<include "Update_Buttons_Skin_Cheats">> <</done>> <</nobr>>
<<nobr>> <<if $cheatsChar.info.skin != "White">> <<replace "#white-btn">><div class="btn"><<button "White">><<run $cheatsChar.info.skin = "White">><<include "Skin_Update_Cheats">><</button>></div><</replace>> <<else>> <<replace "#white-btn">><div class="btn non-interacting"><<button "White">><</button>></div><</replace>> <</if>> <<if $cheatsChar.info.skin != "Black">> <<replace "#black-btn">><div class="btn"><<button "Black">><<run $cheatsChar.info.skin = "Black">><<include "Skin_Update_Cheats">><</button>></div><</replace>> <<else>> <<replace "#black-btn">><div class="btn non-interacting"><<button "Black">><</button>></div><</replace>> <</if>> <<if $cheatsChar.info.skin != "Asian">> <<replace "#asian-btn">><div class="btn"><<button "Asian">><<run $cheatsChar.info.skin = "Asian">><<include "Skin_Update_Cheats">><</button>></div><</replace>> <<else>> <<replace "#asian-btn">><div class="btn non-interacting"><<button "Asian">><</button>></div><</replace>> <</if>> <</nobr>>
<<nobr>> <<include "Face_Variables_Assign_Cheats">> <<replace "#surgery-icon">><<include "Update_Image_Cheats">><</replace>> <<include "Update_Buttons_Skin_Cheats">> <</nobr>>
<<nobr>> <div class="container-stat-visual" style="height: 340px;"> <p class="cheat-label">Stats (1)</p> <<StatsCheatButton "Energy" "energy" true>> <<StatsCheatButton "Health" "health" true>> <<StatsCheatButton "Horny" "horny" true>> </div> <<done>> <<include "Update_Stats1_Value_Cheats">> <<include "Update_Buttons_Stats1_Cheats">> <</done>> <</nobr>>
<<nobr>> <<set _characterHealth = $cheatsChar.status.health>> <<set _characterEnergy = $cheatsChar.status.energy>> <<set _characterHorny = $cheatsChar.status.horny>> <</nobr>>
<<nobr>> <<replace "#health-value_txt">><<print Math.trunc(_characterHealth.value)>>/_characterHealth.max<</replace>> <<replace "#energy-value_txt">><<print Math.trunc(_characterEnergy.value)>>/_characterEnergy.max<</replace>> <<replace "#horny-value_txt">><<print Math.trunc(_characterHorny.value)>>/_characterHorny.max<</replace>> <</nobr>>
<<nobr>> <<CheatsButtonUpdate "health" _characterHealth "UpdateStats1Values" true 1 10>> <<CheatsButtonUpdate "energy" _characterEnergy "UpdateStats1Values" true 1 10>> <<CheatsButtonUpdate "horny" _characterHorny "UpdateStats1Values" true 1 10>> <</nobr>>
<<nobr>> <<include "Update_Stats1_Value_Cheats">> <<include "Update_Buttons_Stats1_Cheats">> <<include "UpdateStatBars">> <</nobr>>
<<nobr>> <div class="container-stat-visual" style="height: 340px;"> <p class="cheat-label">Stats (2)</p> <<StatsCheatButton "Dominance" "dominance" true>> <<StatsCheatButton "Sexual Stamina" "potency" true>> <<StatsCheatButton "Penis Size" "penisSize" true>> </div> <<done>> <<include "Update_Second_Stats_Cheats">> <<include "Update_Buttons_Second_Stats_Cheats">> <</done>> <</nobr>>
<<nobr>> <<set _characterDominance = $cheatsChar.attributes.dominance>> <<set _characterPotency = $cheatsChar.status.potency>> <<set _characterPenisSize = $cheatsChar.body.penisSize>> <</nobr>>
<<nobr>> <<replace "#dominance-value_txt">><<print Math.trunc(_characterDominance.value)>>/_characterDominance.max<</replace>> <<replace "#potency-value_txt">><<print Math.trunc(_characterPotency.value)>>/_characterPotency.max<</replace>> <<replace "#penisSize-value_txt">><<print Math.trunc(_characterPenisSize.value)>>/_characterPenisSize.max<</replace>> <</nobr>>
<<nobr>> <<if _characterPenisSize.value == _characterPenisSize.min && _characterGenitals == "Penis">> /* <<run console.log("Change to Vagina")>> */ <<include "SetVagina_Cheats">> <<elseif _characterPenisSize.value > _characterPenisSize.min && _characterGenitals == "Vagina">> <<include "Genitals_Variables_Assign">> <<include "Update_Buttons_Genitals_Cheats">> <<include "Face_Variables_Assign_Cheats">> <<replace "#surgery-icon">><<include "Update_Image_Cheats">><</replace>> <<run $cheatsChar.body.vaginaSize.value = 0>> <</if>> <</nobr>>
<<nobr>> <<CheatsButtonUpdate "dominance" _characterDominance "UpdateStats2Values" true 1 10>> <<CheatsButtonUpdate "potency" _characterPotency "UpdateStats2Values" false 1>> <<CheatsButtonUpdate "penisSize" _characterPenisSize "UpdateStats2Values" true 1 5>> <</nobr>>
<<nobr>> <<include "Update_Second_Stats_Cheats">> <<include "Update_Buttons_Second_Stats_Cheats">> <<include "UpdateStatBars">> <<include "Check_Min_Penis_Size_Cheats">> <</nobr>>
<<nobr>> <div class="container-stat-visual" style="height: 340px;"> <p class="cheat-label">Relationships</p> <<StatsCheatButton "Friendship" "friendship" true>> <<StatsCheatButton "Love" "love" true>> <<StatsCheatButton "Fear" "fear" true>> </div> <<done>> <<include "Update_Relationships_Cheats">> <<include "Update_Buttons_Relationships_Cheats">> <</done>> <</nobr>>
<<nobr>> <<set _characterFriendship = $player.getRelationship($cheatsChar.info.id).metrics._friendship>> <<set _characterLove = $player.getRelationship($cheatsChar.info.id).metrics._love>> <<set _characterFear = $player.getRelationship($cheatsChar.info.id).metrics._fear>> <</nobr>>
<<nobr>> <<replace "#friendship-value_txt">><<print Math.trunc(_characterFriendship.value)>>/_characterFriendship.max<</replace>> <<replace "#love-value_txt">><<print Math.trunc(_characterLove.value)>>/_characterLove.max<</replace>> <<replace "#fear-value_txt">><<print Math.trunc(_characterFear.value)>>/_characterFear.max<</replace>> <</nobr>>
<<nobr>> <<CheatsButtonUpdate "friendship" _characterFriendship "UpdateRelationshipsValues" true 1 10>> <<CheatsButtonUpdate "love" _characterLove "UpdateRelationshipsValues" true 1 10>> <<CheatsButtonUpdate "fear" _characterFear "UpdateRelationshipsValues" true 1 10>> <</nobr>>
<<nobr>> <<include "Update_Relationships_Cheats">> <<include "Update_Buttons_Relationships_Cheats">> <</nobr>>
<<nobr>> <div class="container-stat-visual" style="height: 340px;"> <p class="cheat-label">Relationships (2)</p> <<StatsCheatButton "Sex" "sex" true>> <<StatsCheatButton "Anger" "anger" true>> </div> <<done>> <<include "Update_Relationships_Second_Cheats">> <<include "Update_Buttons_Relationships_Second_Cheats">> <</done>> <</nobr>>
<<nobr>> <<set _characterSex = $player.getRelationship($cheatsChar.info.id).metrics._sex>> <<set _characterAnger = $player.getRelationship($cheatsChar.info.id).metrics._anger>> <</nobr>>
<<nobr>> <<replace "#sex-value_txt">><<print Math.trunc(_characterSex.value)>>/_characterSex.max<</replace>> <<replace "#anger-value_txt">><<print Math.trunc(_characterAnger.value)>>/_characterAnger.max<</replace>> <</nobr>>
<<nobr>> <<CheatsButtonUpdate "sex" _characterSex "UpdateRelationships_SecondValues" true 1 10>> <<CheatsButtonUpdate "anger" _characterAnger "UpdateRelationships_SecondValues" true 1 10>> <</nobr>>
<<nobr>> <<include "Update_Relationships_Second_Cheats">> <<include "Update_Buttons_Relationships_Second_Cheats">> <</nobr>>
<<nobr>> <div class="container-stat-visual" style="height: 240px;"> <p style="text-align: center; margin: 0; padding: 0;">Location</p> <div class="row-stat-visual" style="flex-direction: column;"> <div class="stat-card-stat-visual"> <div class="surgery-item"><div class="btn" id="surgery-vagina-btn"><div class="btn"><<button "Relocate NPC">><<run RandomRelocateCharacter($indexNPC)>><</button>></div></div></div> </div> </div> </div> <</nobr>>
<<nobr>> <div class="container-stat-visual" style="height: 270px;"> <p style="text-align: center; margin: 0; padding: 0;">Money</p> <div class="row-stat-visual"> <div class="stat-card-stat-visual"> <div class="cheat-form-container"> <form id="cheat-nameForm"> <div class="cheat-input-group"> <input type="number" id="cheat-money" class="cheat-input" required> <label for="cheat-firstName" class="cheat-label-name">Money</label> </div> <div class="padding-top"> <div class="btn"><<button "Apply">><<include "Change_Money_Cheats">><</button>></div> </div> </form> </div> </div> </div> </div> <<done>> <<include "Update_Money_Field_Cheats">> <</done>> <</nobr>>
<<nobr>> <<run document.getElementById("cheat-money").value = $cheatsChar.money>> <</nobr>>
<<nobr>> <<run $cheatsChar.money = document.getElementById("cheat-money").value>> <<include "UpdateStatBars">> <</nobr>>
<<nobr>> <div class="container-stat-visual" style="height: 270px;"> <p class="cheat-label">Reputation</p> <<StatsCheatButton "Photo model" "photo-model" true>> <<StatsCheatButton "Porn" "porn" true>> <<StatsCheatButton "Nightclub" "nightclub" true>> </div> <<done>> <<include "Update_Reputation_Value_Cheats">> <<include "Update_Buttons_Reputation_Cheats">> <</done>> <</nobr>>
<<nobr>> <<set _characterPhoto = $cheatsChar.info.reputation.photoModel>> <<set _characterPorn = $cheatsChar.info.reputation.pornActer>> <<set _characterNightclub = $cheatsChar.info.reputation.nightclub>> <</nobr>>
<<nobr>> <<replace "#photo-model-value_txt">><<print Math.trunc(_characterPhoto.value)>>/_characterPhoto.max<</replace>> <<replace "#porn-value_txt">><<print Math.trunc(_characterPorn.value)>>/_characterPorn.max<</replace>> <<replace "#nightclub-value_txt">><<print Math.trunc(_characterNightclub.value)>>/_characterNightclub.max<</replace>> <</nobr>>
<<nobr>> <<CheatsButtonUpdate "photo-model" _characterPhoto "UpdateReputationValues" true 1 10>> <<CheatsButtonUpdate "porn" _characterPorn "UpdateReputationValues" true 1 10>> <<CheatsButtonUpdate "nightclub" _characterNightclub "UpdateReputationValues" true 1 10>> <</nobr>>
<<nobr>> <<include "Update_Reputation_Value_Cheats">> <<include "Update_Buttons_Reputation_Cheats">> <<include "UpdateStatBars">> <</nobr>>
<<nobr>> <div class="container-stat-visual" style="height: 340px;"> <p class="cheat-label">Clothing Preference</p> <div class="row-stat-visual" style="flex-direction: column;"> <div class="stat-card-stat-visual"> <div class="surgery-item"><div class="btn" id="men-btn"></div></div> <div class="padding-top"> <div class="surgery-item"><div class="btn" id="women-btn"></div></div> </div> </div> </div> </div> <<done>> <<include "Update_Buttons_Clothing_Preference_Cheats">> <</done>> <</nobr>>
<<nobr>> <<if $cheatsChar.info.clothesPreference != "men">> <<replace "#men-btn">><div class="btn"><<button "👔 Masculine">><<run $cheatsChar.info.clothesPreference = "men">><<run $cheatsChar.AddCloth(true)>><<include "Clothing_Preference_Update_Cheats">><</button>></div><</replace>> <<else>> <<replace "#men-btn">><div class="btn non-interacting"><<button "👔 Masculine">><</button>></div><</replace>> <</if>> <<if $cheatsChar.info.clothesPreference != "women">> <<replace "#women-btn">><div class="btn"><<button "👗 Feminine">><<run $cheatsChar.info.clothesPreference = "women">><<run $cheatsChar.AddCloth(true)>><<include "Clothing_Preference_Update_Cheats">><</button>></div><</replace>> <<else>> <<replace "#women-btn">><div class="btn non-interacting"><<button "👗 Feminine">><</button>></div><</replace>> <</if>> <</nobr>>
<<nobr>> <<include "Update_Buttons_Clothing_Preference_Cheats">> <</nobr>>
<<nobr>> <div class="container-stat-visual" style="height: 340px;"> <p class="cheat-label">Gender Preference</p> <div class="row-stat-visual" style="flex-direction: column;"> <div class="stat-card-stat-visual"> <div class="surgery-item"><div class="btn" id="manly-btn"></div></div> <div class="padding-top"> <div class="surgery-item"><div class="btn" id="bi-btn"></div></div> </div> <div class="padding-top"> <div class="surgery-item"><div class="btn" id="feminine-btn"></div></div> </div> </div> </div> </div> <<done>> <<include "Update_Buttons_Sexual_Orientation_Cheats">> <</done>> <</nobr>>
<<nobr>> <<if $cheatsChar.info.sexualPreference != "Manly">> <<replace "#manly-btn">><div class="btn"><<button "Manly">><<run $cheatsChar.info.sexualPreference = "Manly">><<include "Sexual_Orientation_Update_Cheats">><</button>></div><</replace>> <<else>> <<replace "#manly-btn">><div class="btn non-interacting"><<button "Manly">><</button>></div><</replace>> <</if>> <<if $cheatsChar.info.sexualPreference != "Bi">> <<replace "#bi-btn">><div class="btn"><<button "Bi">><<run $cheatsChar.info.sexualPreference = "Bi">><<include "Sexual_Orientation_Update_Cheats">><</button>></div><</replace>> <<else>> <<replace "#bi-btn">><div class="btn non-interacting"><<button "Bi">><</button>></div><</replace>> <</if>> <<if $cheatsChar.info.sexualPreference != "Feminine">> <<replace "#feminine-btn">><div class="btn"><<button "Feminine">><<run $cheatsChar.info.sexualPreference = "Feminine">><<include "Sexual_Orientation_Update_Cheats">><</button>></div><</replace>> <<else>> <<replace "#feminine-btn">><div class="btn non-interacting"><<button "Feminine">><</button>></div><</replace>> <</if>> <</nobr>>
<<nobr>> <<include "Update_Buttons_Sexual_Orientation_Cheats">> <</nobr>>
<<nobr>> <div class="container-stat-visual" style="height: 340px;"> <p class="cheat-label">Sexual Role</p> <div class="row-stat-visual" style="flex-direction: column;"> <div class="stat-card-stat-visual"> <div class="surgery-item"><div class="btn" id="top-btn"></div></div> <div class="padding-top"> <div class="surgery-item"><div class="btn" id="versatile-btn"></div></div> </div> <div class="padding-top"> <div class="surgery-item"><div class="btn" id="bottom-btn"></div></div> </div> </div> </div> </div> <<done>> <<include "Update_Buttons_Sexual_Role_Cheats">> <</done>> <</nobr>>
<<nobr>> <<if $cheatsChar.info.SexRole != "Active">> <<replace "#top-btn">><div class="btn"><<button "Top">><<run $cheatsChar.info.SexRole = "Active">><<include "Sexual_Role_Update_Cheats">><</button>></div><</replace>> <<else>> <<replace "#top-btn">><div class="btn non-interacting"><<button "Top">><</button>></div><</replace>> <</if>> <<if $cheatsChar.info.SexRole != "Versatile">> <<replace "#versatile-btn">><div class="btn"><<button "Versatile">><<run $cheatsChar.info.SexRole = "Versatile">><<include "Sexual_Role_Update_Cheats">><</button>></div><</replace>> <<else>> <<replace "#versatile-btn">><div class="btn non-interacting"><<button "Versatile">><</button>></div><</replace>> <</if>> <<if $cheatsChar.info.SexRole != "Passive">> <<replace "#bottom-btn">><div class="btn"><<button "Bottom">><<run $cheatsChar.info.SexRole = "Passive">><<include "Sexual_Role_Update_Cheats">><</button>></div><</replace>> <<else>> <<replace "#bottom-btn">><div class="btn non-interacting"><<button "Bottom">><</button>></div><</replace>> <</if>> <</nobr>>
<<nobr>> <<include "Update_Buttons_Sexual_Role_Cheats">> <</nobr>>
<<nobr>> <div class="container-stat-visual" style="height: 340px;"> <p class="cheat-label">Skills</p> <div class="btn padding-top"><<button "Max All Stats">><<include "Maximize_Stats_Cheats">><</button>></div> </div> <</nobr>>
<<nobr>> <<set $cheatsChar.attributes.strength.value = $cheatsChar.attributes.strength.max>> <<set $cheatsChar.attributes.vitality.value = $cheatsChar.attributes.vitality.max>> <<set $cheatsChar.attributes.endurance.value = $cheatsChar.attributes.endurance.max>> <<set $cheatsChar.attributes.dexterity.value = $cheatsChar.attributes.dexterity.max>> <<set $cheatsChar.attributes.defense.value = $cheatsChar.attributes.defense.max>> <<set $cheatsChar.attributes.corruption.value = $cheatsChar.attributes.corruption.max>> <<set $cheatsChar.attributes.lust.value = $cheatsChar.attributes.lust.max>> <<set $cheatsChar.attributes.sexStamina.value = $cheatsChar.attributes.sexStamina.max>> <<set $cheatsChar.attributes.dominance.value = $cheatsChar.attributes.dominance.max>> <<set $cheatsChar.attributes.intelligence.value = $cheatsChar.attributes.intelligence.max>> <<set $cheatsChar.attributes.speech.value = $cheatsChar.attributes.speech.max>> <<set $cheatsChar.attributes.performer.value = $cheatsChar.attributes.performer.max>> <<set $cheatsChar.attributes.lockpick.value = $cheatsChar.attributes.lockpick.max>> <<set $cheatsChar.attributes.hacker.value = $cheatsChar.attributes.hacker.max>> <<set $cheatsChar.attributes.guns.value = $cheatsChar.attributes.guns.max>> <<set $cheatsChar.attributes.meleeWeapons.value = $cheatsChar.attributes.meleeWeapons.max>> <<set $cheatsChar.attributes.submission.value = $cheatsChar.attributes.submission.max>> <</nobr>>
<<nobr>> <div class="container-stat-visual" style="height: 340px;"> <p class="cheat-label">Time Management</p> <div class="row-stat-visual"> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Minutes</div> <div class="surgery-container" style="justify-content: space-between;"> <div style="display: flex; flex-direction: row; gap: 10px;"> <div class="surgery-item" id="hour-minus-one"><div class="btn" style="width: 45px;"><<button " -10 ">><<include "Decrease_Minutes_Time_10_Cheats">><</button>></div></div> <div class="surgery-item" id="hour-minus-one"><div class="btn" style="width: 45px;"><<button " -1 ">><<include "Decrease_Minutes_Time_1_Cheats">><</button>></div></div> </div> <div class="stat-visual-stat-visual" style="width: 65px;" id="minutes-txt"></div> <div style="display: flex; flex-direction: row; gap: 10px;"> <div class="surgery-item" id="hour-plus-one"><div class="btn" style="width: 45px;"><<button " +1 ">><<include "Increase_Minutes_Time_Cheats">><</button>></div></div> <div class="surgery-item" id="hour-plus-one"><div class="btn" style="width: 45px;"><<button " +10 ">><<include "Increase_Minutes_Time_10_Cheats">><</button>></div></div> </div> </div> </div> </div> <div class="row-stat-visual"> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Hours</div> <div class="surgery-container" style="justify-content: space-between;"> <div style="display: flex; flex-direction: row; gap: 10px;"> <div class="surgery-item" id="hour-minus-one"><div class="btn" style="width: 45px;"><<button " -1 ">><<include "Decrease_Hour_Time_1_Cheats">><</button>></div></div> </div> <div class="stat-visual-stat-visual" style="width: 65px;" id="hours-txt"></div> <div style="display: flex; flex-direction: row; gap: 10px;"> <div class="surgery-item" id="hour-plus-one"><div class="btn" style="width: 45px;"><<button " +1 ">><<include "Increase_Hour_Time_Cheats">><</button>></div></div> </div> </div> </div> </div> <div class="row-stat-visual"> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Days</div> <div class="surgery-container" style="justify-content: space-between;"> <div style="display: flex; flex-direction: row; gap: 10px;"> <div class="surgery-item" id="hour-minus-one"><div class="btn" style="width: 45px;"><<button " -1 ">><<include "Decrease_Day_Time_1_Cheats">><</button>></div></div> </div> <div class="stat-visual-stat-visual" style="width: 65px;" id="days-txt"></div> <div style="display: flex; flex-direction: row; gap: 10px;"> <div class="surgery-item" id="hour-plus-one"><div class="btn" style="width: 45px;"><<button " +1 ">><<include "Increase_Day_Time_Cheats">><</button>></div></div> </div> </div> </div> </div> </div> <<done>> <<include "Update_Time_Value_Cheats">> <</done>> <</nobr>>
<<nobr>> <<replace "#hours-txt">><<print $dateTime.hours>><</replace>> <<replace "#minutes-txt">><<print $dateTime.minutes>><</replace>> <<replace "#days-txt">><<print $dateTime.day>><</replace>> <</nobr>>
<<nobr>> <<set $dateTime.hours += 1>> <<include "Update_Time_Cheats">> <</nobr>>
<<nobr>> <<set $dateTime.hours -= 1>> <<include "Update_Time_Cheats">> <</nobr>>
<<nobr>> <<set $dateTime.minutes += 1>> <<include "Update_Time_Cheats">> <</nobr>>
<<nobr>> <<set $dateTime.minutes -= 1>> <<include "Update_Time_Cheats">> <</nobr>>
<<nobr>> <<set $dateTime.minutes += 10>> <<include "Update_Time_Cheats">> <</nobr>>
<<nobr>> <<set $dateTime.minutes -= 10>> <<include "Update_Time_Cheats">> <</nobr>>
<<nobr>> <<set $dateTime.day += 1>> <<include "Update_Time_Cheats">> <</nobr>>
<<nobr>> <<set $dateTime.day -= 1>> <<include "Update_Time_Cheats">> <</nobr>>
<<nobr>> <<include "UpdateStatBars">> <<include "Update_Time_Value_Cheats">> <</nobr>>
<<nobr>> <<include "UpdateAll">> <div class="container-stat-visual" style="height: 240px;"> <p style="text-align: center; margin: 0; padding: 0;">Battle Mode</p> <div class="row-stat-visual" style="flex-direction: column;"> <div class="stat-card-stat-visual"> <div class="surgery-item"><div class="btn padding-top" id="battle-standard-btn"><<button "Standard">><<set $gameSettings.battleMode="Standard">><<include "Display_Battle_Modes_Cheats_UpdateButtons">><</button>></div></div> <div class="surgery-item"><div class="btn padding-top" id="battle-sex-battle-btn"><<button "Sex Battle">><<set $gameSettings.battleMode="SexBattle">><<include "Display_Battle_Modes_Cheats_UpdateButtons">><</button>></div></div> </div> </div> </div> <<include "Display_Battle_Modes_Cheats_UpdateButtons">> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if $gameSettings.battleMode == undefined>> <<set $gameSettings.battleMode = "Standard">> <</if>> <<done>> <<removeclass "#battle-standard-btn" "non-interacting">> <<removeclass "#battle-sex-battle-btn" "non-interacting">> <<if $gameSettings.battleMode == "Standard">> <<addclass "#battle-standard-btn" "non-interacting">> <<elseif $gameSettings.battleMode == "SexBattle">> <<addclass "#battle-sex-battle-btn" "non-interacting">> <</if>> <</done>> <</nobr>>
<<nobr>> <div class="container-stat-visual" style="height: auto; min-height: 320px;"> <p style="text-align: center; margin: 0; padding: 0; color: #e91e63;">🏩 Brothel Cheats</p> <<if $playerBrothel>> <div class="row-stat-visual" style="flex-direction: column; gap: 10px; padding: 10px;"> /* Brothel Level */ <div style="display: flex; justify-content: space-between; align-items: center; background: rgba(0,0,0,0.3); padding: 8px; border-radius: 5px;"> <span style="color: #aaa;">Level: <span style="color: #ffd700;"><<print $playerBrothel.level>></span>/26</span> <div style="display: flex; gap: 5px;"> <div class="btn btn--small"><<button "+1">> <<if $playerBrothel.level < 26>> <<set $playerBrothel.level += 1>> <</if>> <<goto "Cheats">> <</button>></div> <div class="btn btn--small"><<button "+5">> <<set $playerBrothel.level = Math.min(26, $playerBrothel.level + 5)>> <<goto "Cheats">> <</button>></div> <div class="btn btn--small"><<button "MAX">> <<set $playerBrothel.level = 26>> <<goto "Cheats">> <</button>></div> </div> </div> /* Skill Points */ <div style="display: flex; justify-content: space-between; align-items: center; background: rgba(0,0,0,0.3); padding: 8px; border-radius: 5px;"> <span style="color: #aaa;">Skill Points: <span style="color: #ffd700;"><<print $playerBrothel.skillPoints>></span></span> <div style="display: flex; gap: 5px;"> <div class="btn btn--small"><<button "+1">> <<set $playerBrothel.skillPoints += 1>> <<goto "Cheats">> <</button>></div> <div class="btn btn--small"><<button "+5">> <<set $playerBrothel.skillPoints += 5>> <<goto "Cheats">> <</button>></div> <div class="btn btn--small"><<button "+10">> <<set $playerBrothel.skillPoints += 10>> <<goto "Cheats">> <</button>></div> </div> </div> /* Reputation */ <div style="display: flex; justify-content: space-between; align-items: center; background: rgba(0,0,0,0.3); padding: 8px; border-radius: 5px;"> <span style="color: #aaa;">Reputation: <span style="color: #4CAF50;"><<print $playerBrothel.reputation>></span>/<<print $playerBrothel.maxReputation>></span> <div style="display: flex; gap: 5px;"> <div class="btn btn--small"><<button "+50">> <<set $playerBrothel.reputation += 50>> <<goto "Cheats">> <</button>></div> <div class="btn btn--small"><<button "MAX">> <<set $playerBrothel.reputation = $playerBrothel.maxReputation>> <<goto "Cheats">> <</button>></div> </div> </div> /* Rooms */ <div style="display: flex; justify-content: space-between; align-items: center; background: rgba(0,0,0,0.3); padding: 8px; border-radius: 5px;"> <span style="color: #aaa;">Rooms: <span style="color: #2196f3;"><<print $playerBrothel.rooms>></span>/<<print $playerBrothel.maxRooms>></span> <div style="display: flex; gap: 5px;"> <div class="btn btn--small"><<button "+1">> <<if $playerBrothel.rooms < $playerBrothel.maxRooms>> <<set $playerBrothel.rooms += 1>> <</if>> <<goto "Cheats">> <</button>></div> <div class="btn btn--small"><<button "MAX">> <<set $playerBrothel.rooms = $playerBrothel.maxRooms>> <<goto "Cheats">> <</button>></div> </div> </div> /* Client Rooms */ <div style="display: flex; justify-content: space-between; align-items: center; background: rgba(0,0,0,0.3); padding: 8px; border-radius: 5px;"> <span style="color: #aaa;">Client Rooms: <span style="color: #ff9800;"><<print $playerBrothel.clientRooms>></span>/10</span> <div style="display: flex; gap: 5px;"> <div class="btn btn--small"><<button "+1">> <<if $playerBrothel.clientRooms < 10>> <<set $playerBrothel.clientRooms += 1>> <</if>> <<goto "Cheats">> <</button>></div> <div class="btn btn--small"><<button "MAX">> <<set $playerBrothel.clientRooms = 10>> <<goto "Cheats">> <</button>></div> </div> </div> /* Dungeon Cells */ <div style="display: flex; justify-content: space-between; align-items: center; background: rgba(0,0,0,0.3); padding: 8px; border-radius: 5px;"> <span style="color: #aaa;">Dungeon Cells: <span style="color: #9c27b0;"><<print $playerBrothel.dungeonCells || 1>></span>/5</span> <div style="display: flex; gap: 5px;"> <div class="btn btn--small"><<button "+1">> <<if ($playerBrothel.dungeonCells || 1) < 5>> <<set $playerBrothel.dungeonCells = ($playerBrothel.dungeonCells || 1) + 1>> <</if>> <<goto "Cheats">> <</button>></div> <div class="btn btn--small"><<button "MAX">> <<set $playerBrothel.dungeonCells = 5>> <<goto "Cheats">> <</button>></div> </div> </div> /* Uncollected Earnings */ <div style="display: flex; justify-content: space-between; align-items: center; background: rgba(0,0,0,0.3); padding: 8px; border-radius: 5px;"> <span style="color: #aaa;">Uncollected: <span style="color: #4CAF50;">$<<print $playerBrothel.uncollectedEarnings || 0>>/20000</span></span> <div style="display: flex; gap: 5px;"> <div class="btn btn--small"><<button "+$500">> <<set $playerBrothel.uncollectedEarnings = Math.min(($playerBrothel.uncollectedEarnings || 0) + 500, 20000)>> <<goto "Cheats">> <</button>></div> <div class="btn btn--small"><<button "+$5000">> <<set $playerBrothel.uncollectedEarnings = Math.min(($playerBrothel.uncollectedEarnings || 0) + 5000, 20000)>> <<goto "Cheats">> <</button>></div> <div class="btn btn--small"><<button "Max">> <<set $playerBrothel.uncollectedEarnings = 20000>> <<goto "Cheats">> <</button>></div> </div> </div> /* Unlock All Upgrades */ <div style="display: flex; justify-content: space-between; align-items: center; background: rgba(233, 30, 99, 0.2); padding: 8px; border-radius: 5px; border: 1px solid #e91e63;"> <span style="color: #e91e63;">🔓 Upgrades</span> <div style="display: flex; gap: 5px;"> <div class="btn btn--small"><<button "Unlock All">> <<set $playerBrothel.upgrades.advertising = true>> <<set $playerBrothel.upgrades.security = true>> <<set $playerBrothel.upgrades.bar = true>> <<set $playerBrothel.upgrades.vipZone = true>> <<set $playerBrothel.upgrades.lighting = true>> <<set $playerBrothel.upgrades.furniture = true>> <<set $playerBrothel.upgrades.trainingRoom = true>> <<set $playerBrothel.upgrades.dungeon = true>> <<set $playerBrothel.upgrades.spa = true>> <<set $playerBrothel.upgrades.medical = true>> <<set $playerBrothel.upgrades.relaxation = true>> <<set $playerBrothel.upgrades.masterRoom = true>> <<goto "Cheats">> <</button>></div> </div> </div> /* Unlock All Perks */ <div style="display: flex; justify-content: space-between; align-items: center; background: rgba(255, 215, 0, 0.2); padding: 8px; border-radius: 5px; border: 1px solid #ffd700;"> <span style="color: #ffd700;">⭐ Perks</span> <div style="display: flex; gap: 5px;"> <div class="btn btn--small"><<button "Unlock All">> <<set $playerBrothel.perks.seeStats = true>> <<set $playerBrothel.perks.profitBonus = 5>> <<set $playerBrothel.perks.energySaving = 5>> <<set $playerBrothel.perks.securityDiscount = true>> <<set $playerBrothel.perks.feminizationAttempts = true>> <<set $playerBrothel.perks.haggle = true>> <<set $playerBrothel.perks.biweeklyPay = true>> <<set $playerBrothel.perks.playerProfitBonus = 5>> <<set $playerBrothel.perks.relaxationSpeed = 5>> <<set $playerBrothel.perks.surgeryDiscount = true>> <<goto "Cheats">> <</button>></div> <div class="btn btn--small"><<button "Reset">> <<set $playerBrothel.perks.seeStats = false>> <<set $playerBrothel.perks.profitBonus = 0>> <<set $playerBrothel.perks.energySaving = 0>> <<set $playerBrothel.perks.securityDiscount = false>> <<set $playerBrothel.perks.feminizationAttempts = false>> <<set $playerBrothel.perks.haggle = false>> <<set $playerBrothel.perks.biweeklyPay = false>> <<set $playerBrothel.perks.playerProfitBonus = 0>> <<set $playerBrothel.perks.relaxationSpeed = 0>> <<set $playerBrothel.perks.surgeryDiscount = false>> <<goto "Cheats">> <</button>></div> </div> </div> </div> <<else>> <div style="padding: 20px; text-align: center; color: #888;"> <p>Brothel not initialized.</p> <p style="font-size: 12px;">Visit the brothel first to initialize it.</p> </div> <</if>> </div> <</nobr>>
<<nobr>> <div class="container-stat-visual" style="height: 240px;"> <p style="text-align: center; margin: 0; padding: 0;">Events</p> <div class="row-stat-visual" style="flex-direction: column;"> <div class="stat-card-stat-visual"> <div class="surgery-item"><div class="btn" id="surgery-vagina-btn"><div class="btn"><<button "Clear Absences">><<run $cheatsChar.characterEvents.resetEventQuantity("SkippedClass")>><</button>></div></div></div> <div class="padding-top"> <div class="surgery-item"><div class="btn" id="surgery-vagina-btn"><div class="btn"><<button "Clear Daily Events">><<run $cheatsChar.dailyEvents.clearAllEvents()>><</button>></div></div></div> </div> </div> </div> </div> <</nobr>>
<<nobr>> <div class="container-stat-visual" style="height: 240px;"> <p style="text-align: center; margin: 0; padding: 0;">Items</p> <div class="row-stat-visual" style="flex-direction: column;"> <div class="stat-card-stat-visual"> <div class="surgery-item"><div class="btn" id="surgery-vagina-btn"><div class="btn"><<button "Get All Items">><<run $cheatsChar.getAllItems()>><</button>></div></div></div> </div> </div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if $cheatsToken == undefined || hashWord($cheatsToken) != '10293e4'>> <<ChatMessage 'Invalid cheat code'>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><</button>></div> <<else>> <<include "Choose_Object_Cheats">> <<include "Face_Variables_Assign_Cheats">> <<include "Body_Variables_Assign">> <<include "Genitals_Variables_Assign">> <<include "Stats1_Variables_Assign">> <<include "Second_Stats_Variables_Assign">> <<include "Reputation_Variables_Assign">> <<include "Relationships_Variables_Assign">> <<include "Relationships_Second_Variables_Assign">> <<if $cheatsChar.info.isPlayer>> <<include "Display_Battle_Modes_Cheats_UpdateButtons">> <</if>> <div class="container-stat-visual"> <div class="grid-row-twice" style = "grid-template-columns: 1fr 1fr 1fr; grid-template-rows: 1fr;"> <<include "Display_Face_Cheats">> <<include "ChangeName_Cheats">> </div> <div class="grid-row-twice" style = "grid-template-columns: 1fr 1fr 1fr; grid-template-rows: 1fr;"> <<include "Display_Body_Cheats">> <<include "Display_Genitals_Cheats">> <<include "Display_Skin_Cheats">> </div> <div class="grid-row-twice" style = "grid-template-columns: 1fr 1fr 1fr; grid-template-rows: 1fr;"> <<include "Display_Battle_Stats_Cheats">> <<include "Display_Second_Stats_Cheats">> </div> <div class="grid-row-twice" style = "grid-template-columns: 1fr 1fr 1fr; grid-template-rows: 1fr;"> <<if $cheatsChar.info.isPlayer == true>> <<include "Display_Reputation_Cheats">> <<include "Display_TimeManagement_Cheats">> <<else>> <<include "Display_Relationships_Cheats">> <<include "Display_Relationships_Second_Cheats">> <</if>> </div> <div class="grid-row-twice" style = "grid-template-columns: 1fr 1fr 1fr; grid-template-rows: 1fr;"> <<if $cheatsChar.info.isPlayer == true>> <<include "Display_Stats_Cheats">> <<include "Display_Money_Cheats">> <<else>> <<include "Sexual_Orientation_Cheats">> <<include "Display_Sexual_Role_Cheats">> <<include "Display_Clothing_Preference_Cheats">> <</if>> </div> <div class="grid-row-twice" style = "grid-template-columns: 1fr 1fr 1fr; grid-template-rows: 1fr;"> <<include "Display_Events_Cheats">> <<if $cheatsChar.info.isPlayer == true>> <<include "Display_Items_Cheats">> <<include "Display_Battle_Modes_Cheats">> <<else>> <<include "Display_Relocate_NPC_Cheats">> <</if>> </div> <<if $cheatsChar.info.isPlayer == true>> <div class="grid-row-twice" style = "grid-template-columns: 1fr; grid-template-rows: 1fr;"> <<include "Display_Brothel_Cheats">> </div> <</if>> </div> <div class="padding-top"> <div class="btn"><<button "Back" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> </div> <</if>> <</nobr>>
<<nobr>> <<if $cheatsChar.info.isPlayer == true>> <<set $cheatsChar = $player>> <<else>> <<set $cheatsChar = $interactionNpc>> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<LockSettings>> /* <<set $randomPolicemen = Random(0,100) > 50 ? "policeman" : "policewoman">> */ <<set $randomPolicemen = "policeman">> <<set $imgPolice = 'Media\\Characters\\QuestChars\\Other\\Police\\' + $randomPolicemen + '.jpg'>> <<DrawImg $imgPolice>> <<ChatWithoutNPC 'Policeman' $imgPolice 'Yo, dude, you think this is a nudist beach or what? Put some clothes on, or I’m writing you a ticket for public indecency!'>> <<Chat $player 'Aw, officer, I was just... getting some fresh air! Can we skip the paperwork?'>> <<ChatMessage 'Skip it? You’re naked as a jaybird! Fine’s 500 bucks, or we’re taking a ride to the station. Pick one, fast.'>> <<if $player.money >= 500>> <div class="btn padding-top"><<button "Pay the fine ($500)" "PayTheFine_PoliceTalkNaked">><</button>></div> <<else>> <div class="btn non-interacting"><<button "Pay the fine ($500)">><</button>></div> <</if>> <div class="btn padding-top"><<button "Arrest" "Arrest_PoliceTalkNaked">><</button>></div> <div class="btn padding-top"><<button "Offer to perform oral sex" "OralSex_PoliceTalkNaked">><</button>></div> <div class="btn padding-top"><<button "Fight " "PoliceFight">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $player 'Fine, fine, take your 500. grumbles Damn cops, no fun at all...'>> <<ChatWithoutNPC 'Policeman' $imgPolice 'Fun? Wear pants, then you can have fun. writes the ticket and walks off'>> <<set $policeDayPass = true>> <<set $player.money -= 500>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatWithoutNPC 'Policeman' $imgPolice 'Hands behind your back, we’re going downtown.'>> <<set $ArrestDay = 7>> <<set $playerInitFight = 0>> <div class="btn padding-top"><<button "Continue" "HoldingCell">><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $player '*with a sly grin* How about, officer, I... persuade you? I can be real convincing, you know. *gives a suggestive look*'>> <<ChatWithoutNPC 'Policeman' $imgPolice '*pauses, glances around* Hmm... Convincing, huh? Alright, over there behind the corner, make it quick. But if anyone finds out, you’re toast.'>> <<if $player.gender() == "Male">> <<run _pic = "Media\\Events\\Police\\Street\\Male_Cop_Blowjob.mp4">> <<else>> <<run _pic = "Media\\Events\\Police\\Street\\Female_Cop_Blowjob.mp4">> <</if>> <<Video _pic>> <<set $playerInitFight = 0>> <<set $policeDayPass = true>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "Create_policeman">> <<set _battleSetControls = {attack: true, seduce: false, items: true, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls "PoliceFightWin" "PoliceFightLoose">> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $dayFight = $dateTime.day>> <<LeaveInteractionSettings>> /* <<DeleteCharacter $interactionNpc>> */ <<goto $player.info.currentLocation>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<LeaveInteractionSettings>> /* <<DeleteCharacter $interactionNpc>> */ <<ChatWithoutNPC 'Policeman' $imgPolice 'Hands behind your back, we’re going downtown.'>> <<set $ArrestDay = 7>> <<set $playerInitFight = 0>> <div class="btn padding-top"><<button "Continue" "HoldingCell">><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "CharactersData">> <<run _policeman = CreateCharacter({ isPlayer: false, isQuestCharacter: true, questCharID: 11, currentQuestID: 0, currentCharImg: $imgPolice, currentCharState: "Policeman ", characterWork: "Policeman", SexRole: "Active", dominance: 100, gender: "Male", fat: 40, strength: 7, vitality: 5, endurance: 6, dexterity: 5, defense: 6, sexualPreference: "Bi", clothesPreference: "men", skin: "White", age: 34, }, true)>> <<set $indexNPC = $Characters.indexOf(_policeman)>> <<set $interactionNpc = $Characters[$indexNPC]>> <<unset $maleNames $femaleNames $surnames>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $randomPolicemen = "policeman">> <<set $imgPolice = 'Media\\Characters\\QuestChars\\Other\\Police\\' + $randomPolicemen + '.jpg'>> <<DrawImg $imgPolice>> <<ChatWithoutNPC 'Policeman' $imgPolice 'You are under arrest for assault. The victim has identified you. Please follow me'>> <div class="btn padding-top"><<button "Arrest" "Arrest_PoliceTalkNaked">><</button>></div> <div class="btn padding-top"><<button "Fight " "PoliceFight">><</button>></div> <</nobr>>
<<nobr>> <<set $showPlayerStat = 0>> <h1 style="text-align: center;">Game Over</h1> <<ChatMessage "You missed too many classes and got expelled.">> <</nobr>>
<<nobr>> <<include "UpdateAll">> <h1 style="text-align: center;">Bad ending (1)</h1> <<ChatMessage 'Your vision blurs in and out, like a flickering candle in the wind. When your eyes finally manage to focus, you\'re met with a sight that makes your blood run cold. You\'re in a dimly lit room, the walls of which seem to be closing in on you. The air is thick with the smell of decay and corruption. You try to move, but your body doesn\'t respond. It\'s as if you\'re paralyzed, unable to control your own limbs.'>> <<ChatMessage 'As your gaze falls upon your own body, you\'re horrified to see that it\'s been twisted and contorted into a grotesque parody of its former self. '>> <<ChatMessage 'And then, you see it. A figure looming over you, its face twisted into a cruel grin. You feel a searing pain as the figure violates you, tearing at your body with an unnatural strength. You try to scream, but your voice is barely a whisper. Your mind recoils in horror as you realize that you\'ve lost all control, reduced to a mere sex toy for the twisted desires of this monster.'>> <<ChatMessage 'The Etherium infection has consumed you, body and mind.'>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<LockSettings>> <<Chat $interactionNpc 'Darling, *she whispers softly, turning to you with that same smile that always makes your heart beat faster*. *Her voice, like warm silk, wraps you in comfort, like a hug on a cold evening*. I saw you pull up in that car. Is it really yours?'>> <<ChatMessage 'You nod, and a light wave of pride spreads through your chest, warming the tips of your fingers.'>> <<Chat $player 'Yeah, I just bought it. My first real ride.'>> <<ChatMessage 'Her eyes light up with surprise and genuine admiration, and she claps her hands like a girl who\'s just seen a magician pull a rabbit out of a hat.'>> <<Chat $interactionNpc 'Oh, you\'re amazing! Buying a car on your own—at your age, I wouldn\'t have dared dream of it. I\'m so proud of you, sweetie!'>> <<ChatMessage 'She steps closer, and the air fills with her scent—sweet vanilla with a hint of something mysterious, intimate, that stirs a light thrill in you. Her hand touches your shoulder—a warm, almost tender touch that makes your breath catch and your skin tingle with goosebumps.'>> <<Chat $interactionNpc 'I remember when Robert bought his first car, we\'d sneak off to the countryside all the time. Once we stumbled upon this secluded beach—no one around, just the waves and the wind. We could just be together, without any interruptions... Hey, how about we go there together sometime? I haven\'t been in ages.'>> <<ChatMessage 'You look at her and ask:'>> <<Chat $player 'Why not ask Robert?'>> <<ChatMessage 'She looks away, and a shadow of sadness flickers in her eyes, her lips twisting into a disappointed smile.'>> <<Chat $interactionNpc 'Robert doesn\'t want to go anywhere anymore. With age, he\'s become a real homebody—couch, TV, and no adventures.'>> <<ChatMessage 'You smile out of the corner of your mouth, trying to stay calm.'>> <<Chat $player 'Okay, let\'s go there right now.'>> <div class="btn padding-top"><<button "Continue" "Amanda_Picnic_Quest_Start">><<LeaveInteractionSettings>><<run $player.characterEvents.registerEvent($player.info.id, "AmandaPicnicEvent", 1)>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _Amanda = $Characters.filter((character) => character.info.questInfo.questCharID == 3)[0]>> <<ChatMessage 'Amanda\'s suggestion lingers in your mind—the secluded beach, the hush of the waves, the promise of stolen time alone. With your new car waiting in the driveway, the idea of planning a private getaway with her feels dangerously tempting.'>> <<ChatMessage 'She wants to feel that rush again, and you just promised to make it happen. All that\'s left is to decide when to slip away and how to keep it between the two of you.'>> <<ChatMessage "Amanda smiles happily, her eyes sparkling in the rays of the setting sun, like reflections of waves on golden sand.">> <<Chat _Amanda "Yes, this beach is just the same as I remembered it,">> <<ChatMessage "she whispers, getting out of the car and kicking off her shoes to step barefoot onto the warm sand. The sea breeze plays with her hair, bringing the salty ocean scent mixed with the light floral trail of her perfume—that same vanilla that always awakens something primal in you.">> <<ChatMessage "You follow her, feeling your heart beat faster from this closeness. The beach is truly deserted: no one around, just the rustle of waves and the cries of seagulls in the distance. She takes your hand, your fingers intertwining naturally, as if it's always been this way.">> <<Chat _Amanda "Remember I told you? This is where Robert and I... well, really spent time together.">> <<ChatMessage "Her voice drops lower, more intimate, and she stops, turning to face you. The sun paints her skin in a soft orange hue, and her light dress clings to her body from the sea breeze, outlining curves that are hard to look away from.">> <<Chat _Amanda "But now... now it's just us here,">> <<ChatMessage "she continues, stepping closer so you feel the warmth of her breath on your cheek. Her palm slides over your chest, lingering on your heartbeat.">> <<Chat _Amanda "Want to go for a swim? The water should be warm, like back then.">> <<ChatMessage "You nod, unable to resist this magnetism, and she pulls you to the water's edge, laughing quietly, like she's sharing a secret. The waves lap at your feet, and in that moment, the world narrows to just the two of you—no past, no Robert, only this instant, full of promises and forbidden heat.">> <<if $player.gender() == 'Male' || $player.gender() == 'Shemale'>> <<ChatMessage "The water splashes at your feet, warm and inviting, but Amanda doesn't give you time to think. She turns around, her eyes burning with that same fire you've noticed in her since the first meeting—a mix of desire and playful mischief.">> <<Chat _Amanda "Let's not waste time,">> <<ChatMessage "she whispers huskily, taking your hand and leading you a bit farther from the water's edge, where the sand is still warm from the day's sun. She pulls off her dress in one smooth motion, revealing smooth skin lightly touched by tan, and you can't tear your eyes away from her curves—full hips, slim waist, breasts rising with her breath.">> <<ChatMessage "You follow her lead, shedding your clothes, and the air between you heats up, as if the beach itself is fanning this spark. Amanda pushes you onto the sand, gently but firmly, and you lie back, feeling the grains dig into your skin, adding sharpness to the sensations. She straddles you, facing away in reverse cowgirl—her hair cascades down her back, and her ass presses perfectly against your thighs.">> <<Chat _Amanda "Like this... yes, just like this,">> <<ChatMessage "she murmurs, starting to move slowly, rhythmically, her body arching like a wave crashing on the shore.">> <<ChatMessage "You feel her lower onto you fully, the warmth and tightness enveloping you, making you exhale a moan. Her hands brace on your knees for support, and she quickens the pace, her hips circling, sliding up and down, each thrust sending waves of pleasure through your body. You see her back, the muscles tensing under her skin, and you can't hold back—your hands slide over her thighs, squeezing, guiding, feeling her tremble from your touch.">> <<Video "Media\\Sex\\Quest\\Amanda\\Beach\\0.mp4">> <<Chat _Amanda "Oh god, sweetie... you're so... strong,">> <<ChatMessage "she moans, throwing her head back, and her voice merges with the sound of the surf, making the moment even more intimate.">> <<ChatMessage "The sand beneath you crunches, the sea breeze cools your heated skin, but inside—it's a fire. You prop yourself up slightly to go deeper, and she responds, sinking down harder, her moans growing louder, more broken. The world spins: just her body, yours, and this beach where no one will see, no one will interrupt.">> <<ChatMessage "The climax crashes like a wave—her body clenches around you, she arches in a bow, crying out in pleasure, and you follow her, giving in completely to this forbidden bliss.">> <<ChatMessage "Afterward, she turns around, still sitting on you, and kisses you deeply, with a smile:">> <<Chat _Amanda "That was... magical. Promise we'll come back here again.">> <<elseif $player.gender() == 'Female'>> <<ChatMessage "Amanda looks at you with that same smile, full of tenderness and desire, that makes your heart beat faster. The sun is already dipping toward the horizon, painting the sky in shades of orange and pink, and the beach is just as deserted, as if created only for the two of you. She pulls a large towel from her bag—soft, white, with a light lavender scent—and spreads it on the warm sand, farther from the water's edge where the waves won't reach.">> <<Chat _Amanda "Lie down, sweetie,">> <<ChatMessage "she whispers huskily, taking your hand and helping you lower onto your back. The towel beneath you is cozy, like a cloud, and you feel the sand spring slightly under it, adding a light roughness to the sensations.">> <<ChatMessage "Your legs are still wet from the sea water, your skin covered in goosebumps from the breeze, but Amanda leans over you, her body warm and close, chasing away any chill. She kisses you slowly, deeply—her lips soft, her tongue sliding over yours, igniting a spark low in your belly. Her hands glide over your shoulders, down your sides, pulling off your bikini in one deft motion, baring you completely.">> <<Chat _Amanda "You're so beautiful... so responsive,">> <<ChatMessage "she murmurs, her breath hot on your neck as her fingers touch your breasts, gently squeezing your nipples, making you arch.">> <<ChatMessage "Then she moves lower, her palm resting on your stomach, slowly descending between your legs. You feel your body tense in anticipation, your thighs parting slightly on their own. Amanda looks into your eyes, her gaze full of passion, and whispers:">> <<Chat _Amanda "Relax, darling... let me take care of you.">> <<ChatMessage "Her fingers find your vagina—first one, gently sliding over your clit, circling, teasing, drawing a wave of warmth that spreads through your whole body. You moan quietly, fingers digging into the towel, and she adds a second finger, penetrating deeper, slowly but confidently, feeling you get wetter with each movement.">> <<Video "Media\\Sex\\Quest\\Amanda\\Beach\\1.mp4">> <<ChatMessage "Her rhythm builds—fingers moving inside you, curling to hit that spot that makes you gasp for breath. Her thumb presses against your clit, massaging in circles, syncing with the thrusts inside.">> <<Chat _Amanda "Yes... like that, sweetie... you're so tight, so hot,">> <<ChatMessage "she moans, leaning down to kiss your neck, nibbling the skin while her free hand caresses your breast. Your body writhes under her, hips rising to meet her hand, the world narrowing to this heat, to her touches, to your moans merging with the sound of the waves. The climax hits suddenly, like a tide—muscles clenching around her fingers, waves of orgasm rolling through you, making you cry out her name. Amanda doesn't stop, prolonging the pleasure with soft movements until you go limp, breathing heavily.">> <<ChatMessage "Afterward, she turns around, still sitting on you, and kisses you deeply, with a smile:">> <<Chat _Amanda "That was... magical. Promise we'll come back here again.">> <</if>> <<if $player.characterEvents.isEventRegistered($player.info.id, "AmandaPicnicQuestCompleted") == false>> <<run $player.characterEvents.registerEvent($player.info.id, "AmandaPicnicQuestCompleted", 1)>> <</if>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/City/EntertainmentDistrict/Bar.jpg">> <<ChatMessage 'You spend several hours drinking beer and talking.'>> <<set $player.money -= 150>> <<run $player.dailyEvents.registerEvent($interactionNpc.info.id, "InviteToBar", 1)>> <<set _relUpgrd = {friendship: Random(5.0, 8.0, true)}>> <<SetRelations $player $interactionNpc _relUpgrd>> <div class="padding-top"> <div class="btn"><<button "Spike the drink with a drug" "GiveItems">> <<set $filterType = "Drug">> <<set $source = "SpikeDrink_BarEvent">> <</button>></div> </div> <div class="padding-top"> <div class="btn"><<button "Leave" "Bar">> <<run RandomRelocateCharacter($indexNPC, "Bar")>> <<unset $interactionNpc $indexNPC>> <<SetSaveBtn true>> <</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<run _pronoun = $interactionNpc.pronoun().toLowerCase()>> <<run _pronounHisHer = $interactionNpc.pronounHisHer().toLowerCase()>> <<ChatMessage 'You spike $interactionNpc.info.firstName\'s beer with a drug when _pronoun goes to the restroom.'>> <<run $player.inventory.removeItem($item.name, 1)>> <<if Random(0,100) > 60>> <<ChatMessage '$interactionNpc.info.firstName doesn\'t notice anything and continues drinking beer.'>> <<run $interactionNpc.useItem($item, $player)>> <<run RandomRelocateCharacter($indexNPC, "Bar")>> <<else>> <<set _relUpgrd = {friendship: Random(-10.0, -20.0, true)}>> <<SetRelations $player $interactionNpc _relUpgrd>> <<run RandomRelocateCharacter($indexNPC)>> <<ChatMessage '$interactionNpc.info.firstName notices you trying to spike _pronounHisHer drink and gets angry at you, then leaves.'>> <</if>> <div style="margin-top: 10px;"> <div class="btn"><<button "Leave" "Bar">> <<unset $interactionNpc $indexNPC $item $filterType>> <<SetSaveBtn true>> <</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<CheckChance 'InviteToPicnic_Success' 'InviteToPicnic_Failed' 'InviteToPicnic_Failed_Twice' 'CharacterInteractions' 'InviteToPicnic' '{createBackButton: true, createTwiceBackButton: true}'>> <</nobr>>
<<nobr>> <<run $player.dailyEvents.registerEvent($player.info.id, "BeachInvite", 1)>> <<set _acceptPhrases = [ "A day at the beach? That sounds wonderful. Let me grab my things.", "Sun, sand, and time with you? Count me in!", "That sounds relaxing. Let's head down to the shore.", ].random()>> <<Chat $interactionNpc _acceptPhrases>> <div class="padding-top"> <div class="btn"><<button "Drive to the beach">> <<set $beachPicnicReturnLocation = $player.info.currentLocation>> <<set $beachPicnicTargetNpc = $interactionNpc>> <<set $beachPicnicShowIntro = true>> <<LeaveInteractionSettings>> <<goto "BeachPicnic_BeginConversation">> <</button>></div> </div> <</nobr>>
<<nobr>> <<set _declinePhrases = [ "I appreciate the invite, but I can't get away right now.", "That sounds nice, but I have other plans today.", "Maybe another time. I'm not really in the mood for the beach.", ].random()>> <<Chat $interactionNpc _declinePhrases>> <</nobr>>
<<nobr>> <<set _firmDeclinePhrases = [ "I already told you no. Please drop it.", "Seriously, I'm not going to the beach today.", "Stop pushing, okay? I said I'm not going.", ].random()>> <<Chat $interactionNpc _firmDeclinePhrases>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _npc = ($Characters.filter((character) => character.info.questInfo.questCharID == 0)[0])>> <<set $beachPicnicTargetNpc = _npc>> <<set $beachPicnicMissingMessage = "Ethan isn't around to hang out at the beach right now.">> <<goto "BeachPicnic_BeginConversation">> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _npc = ($Characters.filter((character) => character.info.questInfo.questCharID == 1)[0])>> <<set $beachPicnicTargetNpc = _npc>> <<set $beachPicnicMissingMessage = "Robert isn't at the beach right now.">> <<goto "BeachPicnic_BeginConversation">> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _npc = ($Characters.filter((character) => character.info.questInfo.questCharID == 2)[0])>> <<set $beachPicnicTargetNpc = _npc>> <<set $beachPicnicMissingMessage = "Sarah isn't able to make it to the beach right now.">> <<goto "BeachPicnic_BeginConversation">> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _npc = ($Characters.filter((character) => character.info.questInfo.questCharID == 3)[0])>> <<set $beachPicnicTargetNpc = _npc>> <<set $beachPicnicMissingMessage = "Amanda is busy for a moment and can't talk.">> <<goto "BeachPicnic_BeginConversation">> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _npc = ($Characters.filter((character) => character.info.questInfo.questCharID == 8)[0])>> <<set $beachPicnicTargetNpc = _npc>> <<set $beachPicnicMissingMessage = "Alice isn't ready to mingle just yet.">> <<goto "BeachPicnic_BeginConversation">> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if !$beachPicnicCurrentNpcId>> <<ChatMessage "There's no one waiting on the beach right now.">> <div class="padding-top"> <div class="btn"><<button "Wrap up the picnic">><<goto "BeachPicnic_End">><</button>></div> </div> <<else>> <<set _npc = ($Characters.filter((character) => character.info.id == $beachPicnicCurrentNpcId)[0])>> <<unset $beachPicnicCurrentNpcId>> <<set $beachPicnicTargetNpc = _npc>> <<set $beachPicnicMissingMessage = "Your guest seems to have wandered off for now.">> <<goto "BeachPicnic_BeginConversation">> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _npc = $beachPicnicTargetNpc>> <<set _fallback = $beachPicnicMissingMessage || "No one is ready to talk right now.">> <<unset $beachPicnicTargetNpc $beachPicnicMissingMessage>> <<if !_npc>> <<ChatMessage _fallback>> <div class="padding-top"> <div class="btn"><<button "Wrap up the picnic">><<goto "BeachPicnic_End">><</button>></div> </div> <<else>> <<set $interactionNpc = _npc>> <<set $indexNPC = $Characters.indexOf(_npc)>> <<set $beachPicnicSession = BeachPicnic.startSession(_npc)>> <<set $beachScore = $beachPicnicSession.score>> <<goto "BeachPicnic_TopicMenu">> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if !$beachPicnicSession>> <<goto "BeachPicnic_End">> <</if>> <<set _session = $beachPicnicSession>> <<if _session.npcId != -1 && (!$interactionNpc || $interactionNpc.info.id != _session.npcId)>> <<set _picnicNpc = ($Characters.filter((character) => character.info.id == _session.npcId)[0])>> <<if _picnicNpc>> <<set $interactionNpc = _picnicNpc>> <<set $indexNPC = $Characters.indexOf(_picnicNpc)>> <</if>> <</if>> <<if typeof $beachScore === 'undefined'>><<set $beachScore = _session.score>><</if>> <<if $beachPicnicShowIntro>> <<ChatMessage "You drive to the beach for a relaxing time together.">> <<unset $beachPicnicShowIntro>> <</if>> <<set _topicText = "Round 1 – pick a topic to break the ice with " + _session.npcName + ".">> <<ChatMessage _topicText>> <div class="padding-top"><span>Beach points so far: <<print $beachScore>></span></div> <div class="btn-container padding-top"> <<set _topics = BeachPicnic.getOptions('topics')>> <<for _topic range _topics>> <<capture _topic>> <div class="btn"><<button _topic>><<set $beachPicnicChoice = _topic>><<goto "BeachPicnic_TopicResult">><</button>></div> <</capture>> <</for>> </div> <div class="padding-top"> <div class="btn"><<button "Wrap up the picnic">><<unset $beachPicnicSession $beachPicnicChoice $beachScore>><<goto "BeachPicnic_End">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if !$beachPicnicSession || !$beachPicnicChoice>> <<goto "BeachPicnic_End">> <</if>> <<set _session = $beachPicnicSession>> <<if _session.npcId != -1 && (!$interactionNpc || $interactionNpc.info.id != _session.npcId)>> <<set _picnicNpc = ($Characters.filter((character) => character.info.id == _session.npcId)[0])>> <<if _picnicNpc>> <<set $interactionNpc = _picnicNpc>> <<set $indexNPC = $Characters.indexOf(_picnicNpc)>> <</if>> <</if>> <<set _choice = $beachPicnicChoice>> <<set _result = BeachPicnic.evaluateStage('topics', _session, _choice)>> <<set _session.score += _result.points>> <<if !_session.history>><<set _session.history = {}>><</if>> <<set _session.history.topics = {option: _choice, tone: _result.tone, points: _result.points}>> <<set $beachPicnicSession = _session>> <<set $beachScore = _session.score>> <<set _message = BeachPicnic.getStageMessage('topics', _result.tone, _choice, _session.npcName)>> <<ChatMessage _message>> <<set _dialogue = BeachPicnic.getStageDialogue('topics', _result.tone, _choice, _session.npcName)>> <<if _dialogue && _dialogue.length>> <<ChatMessage _dialogue>> <</if>> <<set _pointsText = (_result.points >= 0 ? '+' : '') + _result.points>> <<set _relations = BeachPicnic.getRelationDelta('topics', _result.tone)>> <<if _relations.friendship>> <<IncreaseFriendship $player $interactionNpc _relations.friendship>> <</if>> <<if _relations.love>> <<IncreaseLove $player $interactionNpc _relations.love>> <</if>> <<unset $beachPicnicChoice>> <div class="padding-top"> <div class="btn"><<button "Round 2 – Flirt">><<goto "BeachPicnic_FlirtMenu">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if !$beachPicnicSession>> <<goto "BeachPicnic_End">> <</if>> <<set _session = $beachPicnicSession>> <<if _session.npcId != -1 && (!$interactionNpc || $interactionNpc.info.id != _session.npcId)>> <<set _picnicNpc = ($Characters.filter((character) => character.info.id == _session.npcId)[0])>> <<if _picnicNpc>> <<set $interactionNpc = _picnicNpc>> <<set $indexNPC = $Characters.indexOf(_picnicNpc)>> <</if>> <</if>> <<if typeof $beachScore === 'undefined'>><<set $beachScore = _session.score>><</if>> <<set _flirtWithText = "Round 2 – choose how to flirt with " + _session.npcName + ".">> <<ChatMessage _flirtWithText >> <div class="padding-top"><span>Beach points so far: <<print $beachScore>></span></div> <div class="btn-container padding-top"> <<set _flirts = BeachPicnic.getOptions('flirt')>> <<for _flirt range _flirts>> <<capture _flirt>> <div class="btn"><<button _flirt>><<set $beachPicnicChoice = _flirt>><<goto "BeachPicnic_FlirtResult">><</button>></div> <</capture>> <</for>> </div> <div class="padding-top"> <div class="btn"><<button "Wrap up the picnic">><<unset $beachPicnicSession $beachPicnicChoice $beachScore>><<goto "BeachPicnic_End">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if !$beachPicnicSession || !$beachPicnicChoice>> <<goto "BeachPicnic_End">> <</if>> <<set _session = $beachPicnicSession>> <<if _session.npcId != -1 && (!$interactionNpc || $interactionNpc.info.id != _session.npcId)>> <<set _picnicNpc = ($Characters.filter((character) => character.info.id == _session.npcId)[0])>> <<if _picnicNpc>> <<set $interactionNpc = _picnicNpc>> <<set $indexNPC = $Characters.indexOf(_picnicNpc)>> <</if>> <</if>> <<set _choice = $beachPicnicChoice>> <<set _result = BeachPicnic.evaluateStage('flirt', _session, _choice)>> <<set _session.score += _result.points>> <<if !_session.history>><<set _session.history = {}>><</if>> <<set _session.history.flirt = {option: _choice, tone: _result.tone, points: _result.points}>> <<set $beachPicnicSession = _session>> <<set $beachScore = _session.score>> <<set _message = BeachPicnic.getStageMessage('flirt', _result.tone, _choice, _session.npcName)>> <<ChatMessage _message>> <<set _dialogue = BeachPicnic.getStageDialogue('flirt', _result.tone, _choice, _session.npcName)>> <<if _dialogue && _dialogue.length>> <<ChatMessage _dialogue>> <</if>> <<set _pointsText = (_result.points >= 0 ? '+' : '') + _result.points>> <<set _relations = BeachPicnic.getRelationDelta('flirt', _result.tone)>> <<if _relations.friendship>> <<IncreaseFriendship $player $interactionNpc _relations.friendship>> <</if>> <<if _relations.love>> <<IncreaseLove $player $interactionNpc _relations.love>> <</if>> <<unset $beachPicnicChoice>> <div class="padding-top"> <div class="btn"><<button "Round 3 – Make a move">><<goto "BeachPicnic_ActionMenu">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if !$beachPicnicSession>> <<goto "BeachPicnic_End">> <</if>> <<set _session = $beachPicnicSession>> <<if _session.npcId != -1 && (!$interactionNpc || $interactionNpc.info.id != _session.npcId)>> <<set _picnicNpc = ($Characters.filter((character) => character.info.id == _session.npcId)[0])>> <<if _picnicNpc>> <<set $interactionNpc = _picnicNpc>> <<set $indexNPC = $Characters.indexOf(_picnicNpc)>> <</if>> <</if>> <<if typeof $beachScore === 'undefined'>><<set $beachScore = _session.score>><</if>> <<set _moveText = "Round 3 – pick a bold move to try with " + _session.npcName + ".">> <<ChatMessage _moveText>> <div class="padding-top"><span>Beach points so far: <<print $beachScore>></span></div> <div class="btn-container padding-top"> <<set _actions = BeachPicnic.getOptions('actions')>> <<for _action range _actions>> <<capture _action>> <<set _chance = BeachPicnic.getActionChance($player, $interactionNpc, $beachPicnicSession, _action)>> <<set _tone = BeachPicnic.getPreferenceType($beachPicnicSession, 'actions', _action)>> <<set _toneIcon = (_tone == 'favorite' ? ' ★' : (_tone == 'dislike' ? ' ⚠' : ''))>> <<set _label = _action + _toneIcon + ' [' + _chance + '%]'>> <<set _details = BeachPicnic.getActionDetail(_action)>> <<set _videoPath = BeachPicnic.getActionVideo($player, $interactionNpc, _action)>> <fieldset class="padding-top beach-action-card"> <legend><<print _label>></legend> <<if _details>> <div class="padding-top"><strong>Positive:</strong> <<print _details.positive>></div> <div class="padding-top"><strong>Negative:</strong> <<print _details.negative>></div> <</if>> <<if _videoPath>> <div class="padding-top"><<Video _videoPath>></div> <</if>> <div class="padding-top"> <div class="btn"><<button "Make this move">><<set $beachPicnicChoice = _action>><<goto "BeachPicnic_ActionResult">><</button>></div> </div> </fieldset> <</capture>> <</for>> </div> <div class="padding-top"> <div class="btn"><<button "Wrap up the picnic">><<unset $beachPicnicSession $beachPicnicChoice $beachScore>><<goto "BeachPicnic_End">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if !$beachPicnicSession || !$beachPicnicChoice>> <<goto "BeachPicnic_End">> <</if>> <<set _session = $beachPicnicSession>> <<if _session.npcId != -1 && (!$interactionNpc || $interactionNpc.info.id != _session.npcId)>> <<set _picnicNpc = ($Characters.filter((character) => character.info.id == _session.npcId)[0])>> <<if _picnicNpc>> <<set $interactionNpc = _picnicNpc>> <<set $indexNPC = $Characters.indexOf(_picnicNpc)>> <</if>> <</if>> <<set _action = $beachPicnicChoice>> <<set _chance = BeachPicnic.getActionChance($player, $interactionNpc, _session, _action)>> <<set _tone = BeachPicnic.getPreferenceType(_session, 'actions', _action)>> <<set _success = rollChance(_chance)>> <<set _message = BeachPicnic.getActionMessage(_action, _tone, _success, _session.npcName)>> <<ChatMessage _message>> <<set _description = BeachPicnic.getActionDescription(_action, _success, _session.npcName)>> <<if _description && _description.length>> <<ChatMessage _description>> <</if>> <<set _relations = BeachPicnic.getActionRelationDelta(_tone, _success)>> <<if _relations.friendship>> <<IncreaseFriendship $player $interactionNpc _relations.friendship>> <</if>> <<if _relations.love>> <<IncreaseLove $player $interactionNpc _relations.love>> <</if>> <<if _relations.sex>> <<IncreaseSex $player $interactionNpc _relations.sex>> <</if>> <<if _success && _action == "Sex">> <<unset $beachPicnicSession $beachPicnicChoice $beachScore>> <<unset $sexType>> <<goto "ChooseSexType">> <</if>> <<unset $beachPicnicChoice>> <<set $beachPicnicSession = _session>> <<set $beachScore = _session.score>> <div class="padding-top"> <div class="btn"><<button "Wrap up the picnic">><<unset $beachPicnicSession $beachScore>><<goto "BeachPicnic_End">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if $player && $interactionNpc>> <<set _relationship = $interactionNpc.getRelationship($player.info.id)>> <<if _relationship && _relationship.metrics>> <<set _metrics = _relationship.metrics>> <</if>> <<unset _metrics _relationship>> <</if>> <<set _returnLocation = $beachPicnicReturnLocation || $player.info.currentLocation || "Campus">> <<ChatMessage "You take a final look at the shoreline before packing up your things.">> <div class="padding-top"> <div class="btn"><<button "Head back">> <<set $player.info.currentLocation = _returnLocation>> <<unset $beachPicnicReturnLocation $beachPicnicSession $beachPicnicChoice $beachScore $beachPicnicTargetNpc $beachPicnicMissingMessage $beachPicnicShowIntro $beachPicnicCurrentNpcId $interactionNpc $indexNPC>> <<goto _returnLocation>> <</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $gameSettings.allowSaves = false>> <<set $canShowStatsBtn = false>> <<Video "Media\\Events\\Nightclub\\party.mp4">> <div class="btn padding-top"><<button "Find someone" "NightClub_DrinkGame_Start">><</button>></div> <<if $player.money >= 25>> <div class="btn padding-top"><<button "Drink ($25)" "Night_Club_Events_Drink">><</button>></div> <<else>> <div class="btn padding-top non-interacting"><<button "Drink ($25)">><</button>></div> <</if>> <div class="btn padding-top"><<button "Back" $player.info.currentLocation>> <<set $gameSettings.allowSaves = true>> <<set $canShowStatsBtn = true>> <</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatMessage 'You go to the bar and have a shot'>> <<set $player.money -= 25>> <<set $player.status.alcoholIntoxication.increase(Random(8,15))>> <div class="btn padding-top"><<button "Continue" "Night_Club_Events">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $drinkGame = {success: 0, arousal: 20}>> <<include "NightClub_DrinkGame_CreateNPC">> <<include "NightClub_DrinkGame_CreateNPCName">> <<set $interactionNpc.status.alcoholIntoxication.increase(Random(0,25))>> <<set $drinkGame.arousal = (Random(1,20))>> <<ShowNpcIcon $interactionNpc>> <<ChatMessage _interactionNpcName>> <div class="btn padding-top"><<button "Approach" "NightClub_DrinkGame_ApproachToNPC">><</button>></div> <div class="btn padding-top"><<button "Look for someone else" "NightClub_DrinkGame_Start">><<DeleteCharacter $interactionNpc>><<SpendTimeWithoutUpdate 20>><</button>></div> <div class="btn padding-top"><<button "Leave" $player.info.currentLocation>><<include "NightClub_DrinkGame_Leave">><</button>></div> /* <div class="btn padding-top"><<button "Sex (Debug)" "ChooseSexType">><</button>></div> */ <</nobr>>
<<nobr>> <<SpendTimeWithoutUpdate 5>> <<include "UpdateAll">> <<done>> <<include "NightClub_DrinkGame_CheckDrunk">> <<include "NightClub_DrinkGame_TimeCheck">> <<include "NightClub_DrinkGame_ArouselCheck">> <</done>> <<ShowNpcIcon $interactionNpc>> <<run $drinkGame.arousal = clamp($drinkGame.arousal)>> <<run _pronounHimHer = $interactionNpc.pronounHimHer().toLowerCase()>> <<run _pronounHisHer = $interactionNpc.pronounHisHer().toLowerCase()>> <<set _chanceOfSuccess = $drinkGame.arousal>> <br> <<include "NightClub_DrinkGame_DrunkBar">> <<include "NightClub_DrinkGame_ArousalBar">> <<if $player.money >= 50>> <div class="btn padding-top"><<button "Have a drink together ($50)" "NightClub_DrinkGame_DrinkTogether">><</button>></div> <<else>> <div class="btn padding-top non-interacting"><<button "Have a drink together ($50)">><</button>></div> <</if>> <div class="btn padding-top"><<button "Flirty Behavior" "NightClub_DrinkGame_Flirty_Behavior">><</button>></div> <<if $player.dailyEvents.isEventRegistered($player.info.id, "RentAMotelRoom") == false>> <<if $player.money >= 100>> <div class="btn padding-top"><<button "Suggest going to a motel ($100)" "CalculateAccessChance">> <<run $player.dailyEvents.registerEvent($player.info.id, "RentAMotelRoom", 1)>> <<set $player.money -= 100>> <</button>></div> <<else>> <div class="btn non-interacting"><<button "Suggest going to a motel ($100)">><</button>></div> <</if>> <<else>> <div class="btn padding-top"><<button "Suggest going to a motel" "CalculateAccessChance">><</button>></div> <</if>> <div class="btn padding-top"><<button "Say goodbye" $player.info.currentLocation>><<include "NightClub_DrinkGame_Leave">><</button>></div> <div class="btn padding-top"><<button "Info">><<include "NightClub_DrinkGame_Info">><</button>></div> /* <div class="btn padding-top"><<button "Suggest going to the restroom" "CalculateAccessChance">><<set $NCSexLocation = "restroom">><</button>></div> */ /* <div class="btn padding-top"><<button "Sex (Debug)" "ChooseSexType">><</button>></div> */ <</nobr>>
<<nobr>> <<run Dialog.setup("Info")>> <<run Dialog.wiki("In this mini-game, your goal is to maximize the Lust meter. A higher Lust level increases the chances that the NPC will agree to accompany you to the motel. You can influence this by getting the NPC drunk; the more intoxicated they are, the better your chances. However, be cautious: if either your or the NPC’s drunkenness meter maxes out, it will result in vomiting. If the Lust meter depletes to zero, the NPC will depart. Additionally, you have the option to spike the NPC’s drink, but if you’re detected, you’ll be ejected from the club.")>> <<run Dialog.open();>> <</nobr>>
<<nobr>> <div class="leftbar-menu-attribute" style="width:300px; margin-left: auto; margin-right: auto;"> <span class="leftbar-menu-attribute-name"><<print $interactionNpc.info.firstName>>'s Drunk Level</span> <div class="leftbar-menu-progress-bar"> <div class="leftbar-menu-progress-fill" id="npc-drunkenness-bar"></div> </div> </div> <<done>> <<set _npcIntoxication = $interactionNpc.status.alcoholIntoxication>> <<run UpdateProgressBar("npc-drunkenness-bar", _npcIntoxication.value, _npcIntoxication.max)>> <<if _npcIntoxication.value > 80>> <<addclass "#npc-drunkenness-bar" "leftbar-menu-red">> <<elseif _npcIntoxication.value > 50 && _npcIntoxication.value <= 80>> <<addclass "#npc-drunkenness-bar" "leftbar-menu-yellow">> <<elseif _npcIntoxication.value <= 50>> <<addclass "#npc-drunkenness-bar" "leftbar-menu-green">> <</if>> <</done>> <</nobr>>
<<nobr>> <div class="leftbar-menu-attribute" style="width:300px; margin-left: auto; margin-right: auto;"> <span class="leftbar-menu-attribute-name"><<print $interactionNpc.info.firstName>>'s Arousal Level</span> <div class="leftbar-menu-progress-bar"> <div class="leftbar-menu-progress-fill" id="npc-arousal-bar"></div> </div> </div> <<done>> <<set _npcIntoxication = $interactionNpc.status.alcoholIntoxication>> <<run UpdateProgressBar("npc-arousal-bar", clamp($drinkGame.arousal), 100)>> <</done>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<set $player.money -= 50>> <<set $player.status.alcoholIntoxication.increase(Random(8,15))>> <<set $interactionNpc.status.alcoholIntoxication.increase(Random(8,15))>> <<ChatMessage 'You both take a shot together.'>> <div class="btn padding-top"><<button "Spike the drink with a drug" "GiveItems">> <<set $filterType = "Drug">> <<set $source = "SpikeDrink_NightClub">> <</button>></div> <div class="btn padding-top"><<button "Continue" "NightClub_DrinkGame_ApproachToNPC">><</button>></div> <</nobr>>
<<nobr>> <<if $player.status.alcoholIntoxication.value == $player.status.alcoholIntoxication.max>> <<goto "Nightclub_Puke_Player">> <<elseif $interactionNpc.status.alcoholIntoxication.value == $interactionNpc.status.alcoholIntoxication.max>> <<goto "Nightclub_Puke_NPC">> <</if>> <</nobr>>
<<nobr>> <<include "CharactersData">> <<run _nightclubVisitor = CreateCharacter({ isPlayer: false, characterWork: "Citizen", sexualPreference: "Bi", age: Random(18, 30), }, true)>> <<set $indexNPC = $Characters.indexOf(_nightclubVisitor)>> <<set $interactionNpc = $Characters[$indexNPC]>> <<run $interactionNpc.characterEvents.registerEvent($interactionNpc.info.id, "NightclubVisitor", 1)>> <<unset $maleNames $femaleNames $surnames>> <</nobr>>
<<nobr>> <<DeleteCharacter $interactionNpc>> <</nobr>>
<<nobr>> <<set _gender = $interactionNpc.gender()>> <<switch _gender>> <<case "Female">> <<if $interactionNpc.getAgeText() == "Young">> <<set _gender = "girl">> <<else>> <<set _gender = "woman">> <</if>> <<case "Male">> <<set _gender = "man">> <<case "Shemale">> <<if $interactionNpc.getAgeText() == "Young">> <<set _gender = "shemale">> <<else>> <<set _gender = "shemale">> <</if>> <</switch>> <<set _interactionNpcName = "You notice a " + $interactionNpc.getFatText() + " " + ($interactionNpc.info.skin.toLowerCase()) + " " + _gender>> <</nobr>>
<<nobr>> <<SpendTimeWithoutUpdate 20>> <<DeleteCharacter $interactionNpc>> <<set $gameSettings.allowSaves = true>> <<set $canShowStatsBtn = true>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<run _pronoun = $interactionNpc.pronoun().toLowerCase()>> <<run _pronounHisHer = $interactionNpc.pronounHisHer().toLowerCase()>> <<run _pronounHimHer = $interactionNpc.pronounHimHer().toLowerCase()>> <<if rollChance(70)>> <<set _result = true>> <<run $interactionNpc.useItem($item, $player)>> <<else>> <<set _result = false>> <</if>> <<ShowNpcIcon $interactionNpc>> <<ChatMessage 'You spike $interactionNpc.info.firstName\'s drink with a drug.'>> <<run $player.inventory.removeItem($item.name, 1)>> <<if _result == true>> <<if $item.name == "Sex change pills (Male)" && $interactionNpc.gender() != "Male">> <<Chat $interactionNpc 'What the fuck happened to me? Why did I turn into a man?'>> <<elseif $item.name == "Sex change pills (Female)" && $interactionNpc.gender() != "Female">> <<Chat $interactionNpc 'What the fuck happened to me? Why did I turn into a woman?'>> <<else>> <<ChatMessage '$interactionNpc.info.firstName doesn\'t notice anything and continues drinking drink.'>> <</if>> <div class="btn padding-top"><<button "Try to calm _pronounHimHer down" "SpikeDrink_NightClub_TryingToCalm">> <<unset $item $filterType>><</button>></div> <div class="btn padding-top"><<button "Leave" $player.info.currentLocation>><<include "NightClub_DrinkGame_Leave">> <<unset $item $filterType>><</button>></div> <<else>> <<ChatMessage '$interactionNpc.info.firstName notices you trying to spike _pronounHisHer drink and gets angry at you'>> <<ChatMessage '$interactionNpc.info.firstName calls over the bouncers and they kick you out of the club'>> <<set $player.info.currentLocation = "RedLightDistrict">> <div class="btn padding-top"><<button "Leave" $player.info.currentLocation>><<include "NightClub_DrinkGame_Leave">> <<unset $item $filterType>><</button>></div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<run _pronounHimHer = $interactionNpc.pronounHimHer().toLowerCase()>> <<run _pronounHeShe = $interactionNpc.pronoun().toLowerCase()>> <<if rollChance(70)>> <<ChatMessage 'You successfully calmed _pronounHimHer down'>> <div class="padding-top"> <div class="btn"><<button "Continue" "NightClub_DrinkGame_ApproachToNPC">><</button>></div> </div> <<else>> <<ChatMessage 'You failed to calm _pronounHimHer down'>> <<ChatMessage '$interactionNpc.info.firstName calls over the bouncers and they kick you out of the club'>> <<set $player.info.currentLocation = "RedLightDistrict">> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<include "NightClub_DrinkGame_Leave">><</button>></div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<run _pronounHeShe = $interactionNpc.pronoun()>> <<if rollChance(clamp($drinkGame.arousal * 10))>> <<Chat $interactionNpc 'Alright, let\'s go.'>> <div class="padding-top"> <div class="btn"><<button "Continue" "ChooseSexType">> <<set $sexType = "nightclub_sex">> <<run $player.info.currentLocation = "SR_Motel_Room">> <<SetBackground "Media/Locations/City/SkidRow/Motel/Room.jpg">> <</button>></div> </div> <<else>> <<ChatMessage '_pronounHeShe refuses and leaves'>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<include "NightClub_DrinkGame_Leave">><</button>></div> <</if>> /* <<ChatMessage 'They refuse to go to motel when they find out you live with your aunt.'>> <<ChatMessage 'They turn you down.'>> <<ChatMessage 'You head to the bathroom restroom.'>> */ <</nobr>>
<<nobr>> <<run _pronounHimHer = $interactionNpc.pronounHimHer().toLowerCase()>> <<run _pronounHisHer = $interactionNpc.pronounHisHer().toLowerCase()>> <<run _pronounHeShe = $interactionNpc.pronoun().toLowerCase()>> <<run _pronounHeSheNoLower = $interactionNpc.pronoun()>> <</nobr>>
<<nobr>> <<if $dateTime.hours < 18 && $dateTime.hours >= 6>> <<goto "NightClub_DrinkGame_TimeEnd">> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatMessage 'The club party is ending'>> <<if $interactionNpc != undefined>> <<DeleteCharacter $interactionNpc>> <</if>> <div class="padding-top"> <div class="btn"><<button "Continue" $player.info.currentLocation>> <<set $gameSettings.allowSaves = true>> <<set $canShowStatsBtn = true>> <</button>></div> </div> <</nobr>>
<<nobr>> <<if $drinkGame.arousal <= 0>> <<goto "NightClub_DrinkGame_Arousel_End">> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatMessage '_pronounHeSheNoLower loses interest and walks away.'>> <<if $interactionNpc != undefined>> <<DeleteCharacter $interactionNpc>> <</if>> <div class="padding-top"> <div class="btn"><<button "Continue" $player.info.currentLocation>> <<set $gameSettings.allowSaves = true>> <<set $canShowStatsBtn = true>> <</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<run _pronounHimHer = $interactionNpc.pronounHimHer().toLowerCase()>> <<run _pronounHisHer = $interactionNpc.pronounHisHer().toLowerCase()>> <<run $drinkGame.arousal = clamp($drinkGame.arousal)>> <<set _chanceOfSuccess = clamp($drinkGame.arousal)>> <br> <<include "NightClub_DrinkGame_DrunkBar">> <<include "NightClub_DrinkGame_ArousalBar">> <<done>> <<include "NightClub_DrinkGame_ArouselCheck">> <</done>> <div class="btn-container padding-top"> <div class="btn"><<button "Flirt" "NightClub_DrinkGame_Flirt">><</button>></div> <div class="btn"><<button "Grab _pronounHisHer butt" "NightClub_DrinkGame_Butt">><</button>></div> <<if $interactionNpc.gender() != "Male">> <div class="btn"><<button "Touch _pronounHisHer breast" "NightClub_DrinkGame_Breast">><</button>></div> <</if>> <div class="btn"><<button "Kiss" "NightClub_DrinkGame_Kiss">><</button>></div> </div> <div class="btn padding-top"><<button "Back" "NightClub_DrinkGame_ApproachToNPC">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "GetPronouns_DrinkGame">> <<set _npcIntoxication = $interactionNpc.status.alcoholIntoxication.value>> <<if rollChance(clamp((($drinkGame.arousal * 0.3) +(_npcIntoxication * 0.3))))>> <<set $drinkGame.arousal += 10>> <<ChatMessage 'You\'re flirting with _pronounHimHer, and _pronounHeShe smiles back, flirting in return.'>> <<else>> <<set $drinkGame.arousal -= 8>> <<ChatMessage 'You try to flirt with _pronounHimHer, but _pronounHeShe frowns and looks away.'>> <</if>> <div class="padding-top"> <div class="btn"><<button "Continue" "NightClub_DrinkGame_Flirty_Behavior">><<SpendTimeWithoutUpdate 5>><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "GetPronouns_DrinkGame">> <<set _npcIntoxication = $interactionNpc.status.alcoholIntoxication.value>> <<if rollChance(clamp((($drinkGame.arousal * 0.5) +(_npcIntoxication * 0.5))))>> <<set $drinkGame.arousal += 20>> <<ChatMessage 'The bass thumps through the club as you daringly reach out and touch _pronounHimHer butt. _pronounHeSheNoLower spins around, the strobe lights catching _pronounHimHer playful smirk.'>> <<Chat $interactionNpc 'Hey, you, if you’re gonna do that, at least buy me a drink first.'>> <<ChatMessage '_pronounHeSheNoLower steps closer, _pronounHimHer body swaying to the rhythm, clearly inviting more interaction.'>> <<else>> <<set $drinkGame.arousal -= 15>> <<ChatMessage 'Amidst the pulsing lights and loud music, you try to touch _pronounHimHer butt, but _pronounHeShe immediately swats your hand away.'>> <<Chat $interactionNpc 'What the hell, dude? Keep your hands to yourself.'>> <</if>> <div class="padding-top"> <div class="btn"><<button "Continue" "NightClub_DrinkGame_Flirty_Behavior">><<SpendTimeWithoutUpdate 5>><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "GetPronouns_DrinkGame">> <<set _npcIntoxication = $interactionNpc.status.alcoholIntoxication.value>> <<if rollChance(clamp((($drinkGame.arousal * 0.6) +(_npcIntoxication * 0.6))))>> <<set $drinkGame.arousal += 20>> <<ChatMessage 'In the dimly lit corner of the club, you place your hand on her chest. _pronounHeSheNoLower looks up at you, her eyes twinkling with amusement.'>> <<Chat $interactionNpc 'You’re quite forward, aren’t you?'>> <<ChatMessage '_pronounHeSheNoLower purrs, not resisting.'>> <<Chat $interactionNpc 'I don’t usually let strangers do that, but maybe you’re an exception'>> <<ChatMessage '_pronounHeSheNoLower leans into you, her perfume intoxicating.'>> <<else>> <<set $drinkGame.arousal -= 20>> <<ChatMessage 'The club is packed, and as you reach out to touch her chest, _pronounHeShe grabs your arm firmly.'>> <<Chat $interactionNpc 'Hey! What do you think you’re doing?'>> <</if>> <div class="padding-top"> <div class="btn"><<button "Continue" "NightClub_DrinkGame_Flirty_Behavior">><<SpendTimeWithoutUpdate 5>><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "GetPronouns_DrinkGame">> <<set _npcIntoxication = $interactionNpc.status.alcoholIntoxication.value>> <<if rollChance(clamp((($drinkGame.arousal * 0.7) +(_npcIntoxication * 0.7))))>> <<set $drinkGame.arousal += 30>> <<ChatMessage 'You lean in for a kiss. _pronounHeSheNoLower meets you halfway, _pronounHimHer lips warm against yours. When you part, _pronounHeShe grins'>> <<else>> <<set $drinkGame.arousal -= 25>> <<ChatMessage 'Just as you go for the kiss, the lights flash brightly, and _pronounHeShe pulls back, laughing awkwardly.'>> <<Chat $interactionNpc 'Whoa, not so fast, let’s not rush things. How about we grab a drink instead?'>> <</if>> <div class="padding-top"> <div class="btn"><<button "Continue" "NightClub_DrinkGame_Flirty_Behavior">><<SpendTimeWithoutUpdate 5>><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if $player.gender() == "Male">> <<set _threwPic = "Media\\Events\\Nightclub\\ThrewUp_Restroom_M.jpg">> <<else>> <<set _threwPic = "Media\\Events\\Nightclub\\ThrewUp_Restroom_F.jpg">> <</if>> <<set $player.status.alcoholIntoxication.decrease(20)>> <<SpendEnergy $player 50>> <<SpendTimeWithoutUpdate 240>> <img class="chat-image" @src="_threwPic" alt="Avatar"> <<ChatMessage 'You drank too much and threw up.'>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<include "NightClub_DrinkGame_Leave">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if $interactionNpc.gender() == "Male">> <<set _threwPic = "Media\\Events\\Nightclub\\ThrewUp_Restroom_M.jpg">> <<else>> <<set _threwPic = "Media\\Events\\Nightclub\\ThrewUp_Restroom_F.jpg">> <</if>> <img class="chat-image" @src="_threwPic" alt="Avatar"> <<ChatMessage 'interactionNpc.info.firstName drank too much and threw up'>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<include "NightClub_DrinkGame_Leave">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<ChatMessage 'As you step into the studio, you see the photographer setting up his equipment. He greet you with a smile and explain the theme of the shoot he have in mind. As the shoot begins, you notice that the photographer is flirting subtly, making light sexual remarks and touching your shoulders or arms while discussing the next pose.'>> <div class="padding-top"> <div class="btn-container"> <div class="btn"><<button "Flirt" "PhotoShoot_Event_01_02_Flirt">><</button>></div> <div class="btn"><<button "Continue the photoshoot" "EroticPhotoSession">><</button>></div> </div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<ChatMessage "You catch yourself blushing at the photographer's advance, but you return the flirtation, bantering back and forth as you try out different poses. The photographer responds by becoming more emboldened, even going so far as to touch and guide you in ways that are slightly more intimate than before. You find yourself enjoying the attention and becoming much more relaxed in front of the camera.">> <<ChatMessage "As you were posing for the photographer's camera, you noticed a bulge growing in his pants. Your heart raced as you realized what was happening - the photographer was getting turned on by you.">> <div class="padding-top"> <div class="btn-container"> <div class="btn"><<button "Suggest a blowjob" "PhotoShoot_Event_01_02_SuggestBlowjob">><</button>></div> <div class="btn"><<button "Try to turn him on even more" "PhotoShoot_Event_01_02_Sex">><</button>></div> <div class="btn"><<button "Continue the photoshoot" "PhotoShoot_Event_01_02_BeProfessional">><</button>></div> </div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<ChatMessage "You licked your lips in anticipation and shifted your weight, pressing your thighs together as you felt a heat building between them.">> <<ChatMessage "But instead of feeling uncomfortable, you felt an electricity between you. Instead of ignoring the photographer's arousal, you decided to embrace it. You paused in front of the camera, allowing yourself to ponder what you were about to do. In that split second, you considered the possibilities and consequences of offering him a blowjob.">> <<ChatMessage "The thought sent shivers up your spine, and you couldn't resist the temptation any longer. Moving closer to the photographer, you bit your lip, feeling your pulse quicken as you reached for his pant zipper. You imagined what he would taste like, and the thought made you all the more eager.">> <<ChatMessage "Your heart pounded in your chest as you looked up at him again, watching his expression change from surprise to pleasure.">> <<ChatMessage "You wasted no time in taking him into your mouth, savoring the salty taste of his pre-cum as it coated your tongue. You took him deep into your throat, feeling his hands grip your hair as he thrust into your mouth. Your fingers trailed up and down his thighs, feeling his muscles twitching under your touch.">> <<SetOralPick $interactionNpc.gender() $player.gender()>> <<Video _pick>> <<ChatMessage "It didn't take long until he came, spurting hotly into your mouth. You swallowed him down, feeling the wet heat seeping down your throat. When you looked up at him again, he was smiling down at you, his eyes filled with lust and admiration.">> <<SetOralCumInPick $interactionNpc.gender() $player.gender()>> <<Video _pick>> <<ChatMessage "Grinning, you got back to your feet, brushing back your hair and taking a playful stance.">> <<Chat $player "I think we're done for the day. Unless, of course, you have another photography job for me...">> <<SpendTime 60>> <<SpendEnergy $player 25>> <<run $player.money += Random(300, 500)>> <div class="padding-top"> <div class="btn"><<button "Continue" "CharacterInteractions">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<ChatMessage "As you posed for the photographer's camera, you couldn't help but notice how his gaze lingered on your curves and how his breathing quickened. You felt a warm, sensual energy between you, one that promised pleasure and excitement.">> <<ChatMessage "A mischievous idea crossed your mind as you leaned against the wall, arching your back to enhance your curves. You licked your lips seductively, watching the photographer's pupils dilate in response. Your skin prickled with anticipation as you thought about how far you could push this.">> <<Chat $player 'Do you like what you see?'>> <<ChatMessage "You purred, enjoying the way the photographer's eyes darkened as he nodded.">> <<Chat $player 'Do you want to touch me?'>> <<ChatMessage 'You whispered, feeling his fingers twitch with desire.'>> <<ChatMessage 'He nodded again, and you reached for his hand, leading him across the room to a plush couch. You sat down, crossing your legs in front of him, loving the power you had over him. You could feel his gaze on your every movement, watching as you leaned forward to brush your lips against his neck.'>> <<Chat $player 'Take your clothes off'>> <<ChatMessage 'You commanded, and he obeyed eagerly, undressing to reveal a toned, muscular body.'>> <<ChatMessage 'You smiled at the sight before you, feeling yourself grow more aroused with each passing moment. You could see how turned on he was, how he was waiting for your next move.'>> <<Chat $player "You're so sexy">> <<ChatMessage 'You murmured, running your hands over his chest and down to his waist. You pressed your hips against his, feeling his hardness growing against you.'>> <<ChatMessage 'In a sudden movement, you straddled him, taking him into your mouth. Your tongue traced his length, tasting the salty precum that dripped from his tip.'>> /* Blowjob Video */ <<SetOralPick $interactionNpc.gender() $player.gender()>> <<Video _pick>> <<ChatMessage 'You thought about how good he would feel inside you, how he would stretch you open and fill you up.'>> <<Chat $player 'Fuck me'>> <<SpendTime 60>> <<SpendEnergy $player 25>> <<run $player.money += Random(300, 500)>> <div class="padding-top"> <div class="btn"><<button "Continue" "PassiveSex">><<set $sexType = "OneSex">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<ChatMessage "While the photographer's touches and comments make you feel uncomfortable, you decide to maintain a professional attitude and focus on the task at hand. However, you can't shake the feeling of unease that comes from being nudged towards more provocative poses than you originally agreed upon. As the session progresses, the photographer keeps pushing the boundaries, until finally you find yourself unable to take it anymore.">> <<Chat $player "Look, I think we've gone as far as we needed to go. Let's just stick to the original plan and wrap this shoot up.">> <<ChatMessage "The photographer grumbles and changes back to the planned shots, but the feeling of discomfort lingers long after the shoot has ended.">> <div class="padding-top"> <div class="btn"><<button "Continue" "EroticPhotoSession">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <div class="padding-top"> <div class="btn-container"> <div class="btn"><<button "Ask about the photo shoot" "Photographer_01_Intro">><</button>></div> <<if $player.characterEvents.isEventRegistered($player.info.id, "Photoshoot") == true>> <div class="btn"><<button "Standard photo shoot" "RegularPhotoSession">><</button>></div> <<if $player.info.reputation.photoModel.value >= 50>> <div class="btn"><<button "Erotic photo shoot" "EroticPhotoSession">><</button>></div> <</if>> <</if>> /* <div class="btn"><<button "Buy a photo studio ($50 000)" "BuyPhotoStudio">><</button>></div> */ </div> </div> <div class="padding-top"> <div class="btn"><<button "Back" "CharacterInteractions">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if $player.money < 50000>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<Chat $interactionNpc "You don't have enough money.">> <<else>> <<set $player.money -= 50000>> <<run $player.characterEvents.registerEvent($player.info.id, "Buy a photo studio", 1)>> <<run $interactionNpc.info.characterWork = "None">> <<Chat $interactionNpc "Fine, the studio is yours.">> <<ChatMessage "You are buying a photo studio. Now you can shoot models yourself.">> <</if>> <div class="padding-top"> <div class="btn"><<button "Continue" $player.info.currentLocation>> <<SetSaveBtn true>>> <<unset $interactionNpc $indexNPC>> <</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatMessage "Not enough energy (25).">> <div class="padding-top"> <div class="btn"><<button "Back" "Photographer">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<Chat $interactionNpc "Today there is no more work for you, come back tomorrow.">> <div class="padding-top"> <div class="btn"><<button "Back" "Photographer">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<Chat $interactionNpc "Hi, are you new here? Then let me tell you about working as a model. We have jobs for women/trans individuals and men. Women and trans individuals are paid more, so some men decide to undergo feminization to earn more.">> <<Chat $interactionNpc "Your weight must not exceed (45) and must not be less than (10).">> <<Chat $interactionNpc "The higher your reputation, the more lucrative jobs you can get. Initially, only standard photo shoots will be available to you, but once you become famous enough(50), you can participate in erotic photo shoots.">> <<Chat $interactionNpc "Usually, you will have no more than one photoshoot per day.">> <<if $player.characterEvents.isEventRegistered($player.info.id, "Photoshoot") == false>> <<run $player.characterEvents.registerEvent($player.info.id, "Photoshoot", 1)>> <</if>> <div class="padding-top"> <div class="btn"><<button "Back" "Photographer">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if $player.status.energy.value < 25>> <<goto "NotEnoughEnergyPhoto">> <<else>> <<if $player.dailyEvents.isEventRegistered($player.info.id, "Photoshoot") == false>> <<set $dailyPhotoShootCount = Random(1, 3)>> <<run $player.dailyEvents.registerEvent($player.info.id, "Photoshoot", 1)>> <<elseif $dailyPhotoShootCount <= 0>> <<goto "MaxPhotoShootCount">> <</if>> <<set $dailyPhotoShootCount -= 1>> <<if $player.gender() == "Male">> <<set _gender = "Male">> <<set _randPic = 0>> <<set _gain = Random(100, 200)>> <<else>> <<set _gender = "Female">> <<set _randPic = Random(0,3)>> <<set _gain = Random(200, 350)>> <</if>> <<run _pic = "Media\\Jobs\\Photo\\" + _gender + "\\" + "regular" + "\\" + _randPic + ".mp4">> <<Video _pic>> <<set _gainText = "$" + _gain>> <<ChatMessage 'You were photographed for the latest fashion magazine for an hour. You earned _gainText.'>> <<run $player.info.reputation.photoModel.increase(Random(1, 4, true))>> <<SpendTime 60>> <<SpendEnergy $player 25>> <<run $player.money += _gain>> <div class="padding-top"> <div class="btn"><<button "Back" "Photographer">><</button>></div> </div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if $player.status.energy.value < 25>> <<goto "NotEnoughEnergyPhoto">> <<elseif Random(0,100) > 70 && $player.dailyEvents.isEventRegistered($player.info.id, "PhotographerEventStart") == false>> <<run $player.dailyEvents.registerEvent($player.info.id, "PhotographerEventStart", 1)>> <<goto "PhotoShoot_Event_01_01_Start">> <<else>> <<if $player.dailyEvents.isEventRegistered($player.info.id, "Photoshoot") == false>> <<set $dailyPhotoShootCount = Random(1, 3)>> <<run $player.dailyEvents.registerEvent($player.info.id, "Photoshoot", 1)>> <<elseif $dailyPhotoShootCount <= 0>> <<goto "MaxPhotoShootCount">> <</if>> <<set $dailyPhotoShootCount -= 1>> <<if $player.gender() == "Male">> <<set _gender = "Male">> <<set _gain = Random(300, 500)>> <<else>> <<set _gender = "Female">> <<set _gain = Random(500, 850)>> <</if>> <<run _pic = "Media\\Jobs\\Photo\\" + _gender + "\\erotic\\0.mp4">> <<Video _pic>> <<set _gainText = "$" + _gain>> <<ChatMessage 'You are being photographed for an hour for an erotic magazine. You earned _gainText.'>> <<run $player.info.reputation.photoModel.increase(Random(5, 10, true))>> <<SpendTime 60>> <<SpendEnergy $player 25>> <<run $player.money += _gain>> <div class="padding-top"> <div class="btn"><<button "Back" "Photographer">><</button>></div> </div> <</if>> <</nobr>>
<<nobr>> <<EachLoc>> <<SaveLocation>> <<SetBackground "Media/Locations/City/RedLightDistrict/Basement.jpg">> <<set $canShowStatsBtn = false>> <<set $gameSettings.allowSaves = false>> <<set _eventType = Random(1, 2, false)>> <<run _pimps = $Characters.filter( (character) => character.info.characterWork == "Pimp")>> <<run _pimp = _pimps[0]>> <<set $interactionNpc = _pimp>> <<set $indexNPC = $Characters.indexOf(_pimp)>> <<if _eventType == 1 && _pimp.dailyEvents.isEventRegistered(_pimp.info.id, "SlutTraining Player") == false>> <<run _pimp.dailyEvents.registerEvent(_pimp.info.id, "SlutTraining Player", 1)>> <<ChatMessage 'The metallic door of your room creaks open, and a pimp enters.'>> <<Chat $interactionNpc "Hey, whore, did you miss me?">> <<Chat $interactionNpc "Let's test your skills.">> <div class="padding-top"> <div class="btn"><<button "Sex" "PassiveSex">><<set $sexType = "hoockerWork">><<set _pimp.status.horny.value = 95>><<set $isPimpSex = true>><</button>></div> </div> <<else>> <<ChatMessage 'You hear sighs and shouts from the neighboring rooms.'>> <div class="padding-top"> <div class="btn"><<button "Continue" "PimpRoom">><<SetSaveBtn true>><</button>></div> </div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<run $player.dailyEvents.registerEvent($player.info.id, "BeingFeminizedByPimp", 1)>> <<run $player.body.face.increase(Random(0.1, 0.3, true))>> <<run $player.body.breastSize.increase(Random(0.1, 0.3, true))>> <<run $player.body.buttSize.increase(Random(0.1, 0.3, true))>> <<if $player.body.penisSize.value > 2>> <<run $player.body.penisSize.decrease(Random(0.1, 0.3, true))>> <</if>> <<run $player.info.characterWork = "Hooker">> <<run $player.info.clothesPreference = "women">> <<run $player.AddCloth(true)>> <<for _i = 0; _i < $Characters.length; _i++>> <<set _character = $Characters[_i]>> <<if $pimp_Whores.includes(_character.info.id) == true>> <<run _character.body.face.increase(Random(0.1, 0.3, true))>> <<run _character.body.breastSize.increase(Random(0.1, 0.3, true))>> <<run _character.body.buttSize.increase(Random(0.1, 0.3, true))>> <<if _character.body.penisSize.value > 2>> <<run _character.body.penisSize.decrease(Random(0.1, 0.3, true))>> <<elseif Random(0,100) > 90>> <<run $player.body.vaginaSize.increase(1)>> <<run _character.body.penisSize.decrease(30)>> <</if>> <</if>> <</for>> <<ChatMessage 'You were administered female hormones to make you more attractive to clients.'>> <<ChatMessage 'Your debt has been increased by 100.'>> <<run $playerDebt += 100>> <<run _debtIncrease = Math.floor(percentOfNumber(1, $playerDebt))>> <<run $playerDebt += _debtIncrease>> <<ChatMessage 'Your debt has been increased by 1%(_debtIncrease).'>> <div class="padding-top"> <div class="btn"><<button "Continue" "PimpRoom">><<SetSaveBtn true>><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<run _randEvent = Random(0,100)>> <<if _randEvent > 90>> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatMessage 'You come to a casting session. The director asks you to undress and show your body.'>> <<if $player.gender() == "Male">> <<include "PornCasting_MalePlayer">> <<else>> <<include "PornCasting_FemalePlayer">> <</if>> <</nobr>>
<<nobr>> <<if $player.body.penisSize.value < 15>> <<Chat $interactionNpc 'Your dick is too small, you should go to the clinic. (15)'>> <<else>> <<Chat $interactionNpc 'Excellent. Come to me when you want to work.'>> <<if $player.characterEvents.isEventRegistered($player.info.id, "CanWorkPornoActorAsMale") == false>> <<run $player.characterEvents.registerEvent($player.info.id, "CanWorkPornoActorAsMale", 1)>> <</if>> <</if>> <div class="padding-top"> <div class="btn"><<button "Back" "CharacterInteractions">><</button>></div> </div> <</nobr>>
<<nobr>> <<ChatMessage 'You undress, and the director examines your body.'>> <<ChatMessage 'When you undress, the director asks you questions about your sexual life.'>> <<Chat $interactionNpc 'Let\'s see what you can do'>> <div class="padding-top"> <div class="btn"><<button "Continue" "PassiveSex">> <<set $sexType = "Porn Shoot (PlayerCasting)">> <</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $interactionNpc 'Excellent. Come to me when you want to work.'>> <<if $player.characterEvents.isEventRegistered($player.info.id, "CanWorkPornoActorAsFemale") == false>> <<run $player.characterEvents.registerEvent($player.info.id, "CanWorkPornoActorAsFemale", 1)>> <</if>> <div class="padding-top"> <div class="btn"><<button "Continue" "CharacterInteractions">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <div class="padding-top"> <div class="btn-container"> <<if ($player.gender() == "Male" && $player.characterEvents.isEventRegistered($player.info.id, "CanWorkPornoActorAsMale") == true) || ($player.gender() != "Male" && $player.characterEvents.isEventRegistered($player.info.id, "CanWorkPornoActorAsFemale") == true)>> <div class="btn"><<button "Start shooting" "ChoosePartner">> <<if $player.dailyEvents.isEventRegistered($player.info.id, "Looked up porn actors") == false>> <<run $player.dailyEvents.registerEvent($player.info.id, "Looked up porn actors", 1)>> <<set $stillPhotoShoots = Random(1,5)>> <</if>> <</button>></div> <<else>> <div class="btn"><<button "Casting" "PornCastingInterview_Player">><</button>></div> <</if>> <div class="btn"><<button "Back" "CharacterInteractions">><</button>></div> </div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatMessage 'You lack energy (45).'>> <div class="padding-top"> <div class="btn"><<button "Back" "CharacterInteractions">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatMessage 'You lack sexual stamina.'>> <div class="padding-top"> <div class="btn"><<button "Back" "CharacterInteractions">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<Chat $interactionNpc 'There are no more shootings for today, come back tomorrow.'>> <div class="padding-top"> <div class="btn"><<button "Back" "CharacterInteractions">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if $stillPhotoShoots <= 0>> <<goto "NoPornShoots">> <<elseif $player.status.potency.value < $player.status.potency.max>> <<goto "NotEnoughtPotency_PornShoot">> <<elseif $player.status.energy.value < 45>> <<goto "NotEnoughtEnergy_PornShoot">> <<elseif Random(0,100) > 75 && $player.gender() == "Male">> <<goto "PornShootEvent_01_Intro">> <<else>> <<set $stillPhotoShoots -= 1>> <<include "CharactersData">> <<run _actor = CreateCharacter({ isPlayer: false, characterWork: "external", lust: 100, gender: ["Male", "Female", "Trans"].random(), sexualPreference: "Bi", age: Random(18,30), }, true, false)>> <<ShowNpcIcon _actor>> <<if Random(0,100) > 50>> <<set _passageTo = "PassiveSex">> <<set _sexRole = "Active">> <<else>> <<set _passageTo = "Sex">> <<set _sexRole = "Passive">> <</if>> <<set _msg = 'Name: _actor.info.firstName. <br> Gender: ' + _actor.gender() + '. <br> Age: _actor.info.age.value <br> Sex Role: _sexRole'>> <<ChatMessage _msg>> <<ChatMessage 'The remaining actors: $stillPhotoShoots'>> <div class="padding-top"> <div class="btn-container"> <div class="btn"><<button "Acept" _passageTo>> <<set $sexType = "Porn Shoot">> <<set $indexNPC = $Characters.indexOf(_actor)>> <<set $interactionNpc = $Characters[$indexNPC]>> <<SpendEnergy $player 45>> <</button>></div> <div class="btn"><<button "Next" "ChoosePartner">> <<set _indexChar = $Characters.indexOf(_actor)>> <<run $Characters.splice(_indexChar, 1)>> <</button>></div> <div class="btn"><<button "Back" "PornShooting">> <<set _indexChar = $Characters.indexOf(_actor)>> <<run $Characters.splice(_indexChar, 1)>> <</button>></div> </div> </div> <<unset $maleNames $femaleNames $surnames>> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatMessage 'As you arrived on set for another shoot, you were met by the director who had some unexpected news'>> <<Chat $interactionNpc '$player.info.firstName, one of our female actresses didn''t show up. I was wondering if you would be willing to replace her?'>> <<Chat $player 'A girl? I''m not sure about that'>> <<Chat $interactionNpc 'Well, I have an idea that might make it more appealing for you,'>> <<Chat $interactionNpc 'We have a special pill that can turn you into a girl for the duration of the shoot. We''re short-handed, and I know you won''t let us down.'>> <<ChatMessage 'You hesitated for a moment, contemplating your options. On the one hand, you were nervous about the idea of becoming a girl. '>> <div class="padding-top"> <div class="btn"><<button "Accept" "PornShootEvent_02_AceptPills">><</button>></div> </div> <div class="padding-top"> <div class="btn"><<button "Convince the director that the second actor should take the pill">> <<if $player.attributes.dominance.value < 7>> <<goto "PornShootEvent_02_NotEnoughDominance">> <<else>> <<goto "PornShootEvent_02_SecondActerFeminization">> <</if>> <</button>></div> </div> <div class="padding-top"> <div class="btn"><<button "Refuse" "PornShooting">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatMessage 'But on the other hand, you didn\'t want to let down your colleagues. Finally, you relented and agreed to take the pill.'>> <<ChatMessage 'With a few swallows of water, the pill was down the hatch, and the changes began. Your body started to tingle as your muscles shifted, your bones contorted, and your skin stretched. Your hair lengthened and thickened into long, golden locks. Your voice became higher and more feminine.'>> <<set $savePlayerBody = { face: $player.body.face.value, penisSize: $player.body.penisSize.value, }>> <<run $player.body.face.increase(6)>> <<run $player.body.penisSize.decrease(30)>> <<run $player.body.vaginaSize.increase(1)>> <<include "CharactersData">> <<run _testChar = CreateCharacter({ isPlayer: false, characterWork: "external", dominance: 100, lust: 100, SexRole: "Active", gender: "Male", sexualPreference: "Bi", clothesPreference: "men", age: Random(18,30), }, true, false)>> <<set $indexNPC = $Characters.indexOf(_testChar)>> <<set $interactionNpc = $Characters[$indexNPC]>> <<ChatMessage 'When the transformation was complete, the new "actress" stepped out onto set. You looked in the mirror and gasped - you couldn\'t believe what you saw. It was like looking at a perfect actress in the mirror.'>> <<Chat $interactionNpc 'Damn, you look so hot as a girl! Look at those curves and that pretty face...I can\'t wait to get my hands on you'>> <<ChatMessage 'He couldn\'t help but tease and taunt you, who was now a beautiful woman thanks to the special pill.'>> <<Chat $interactionNpc 'You better get ready, because I\'m going to fuck that tight little pussy of yours so hard that you won\'t be able to walk for days!'>> <div class="padding-top"> <div class="btn"><<button "Start" "PassiveSex">> <<unset $maleNames $femaleNames $surnames>> <<SpendEnergy $player 45>> <<set $indexNPC = $Characters.indexOf(_testChar)>> <<set $interactionNpc = $Characters[$indexNPC]>> <<set $sexType = "Porn Shoot (PlayerTransform)">> <</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "CharactersData">> <<ChatMessage 'After talking to the director, you managed to convince him that the second actor, who was already on set, should take the pill and play the part.'>> <<ChatMessage 'The director was initially hesitant, but eventually agreed to your suggestion. The second actor was given the pill with a few swallows of water, and the transformation began.'>> <<run _testChar = CreateCharacter({ isPlayer: false, characterWork: "external", dominance: 0, lust: 100, SexRole: "Active", gender: "Male", sexualPreference: "Bi", clothesPreference: "men", age: Random(18,30), }, true, false)>> <<ShowNpcIcon _testChar>> <<run _testChar.body.face.increase(6)>> <<run _testChar.body.penisSize.decrease(30)>> <<run _testChar.body.vaginaSize.increase(1)>> <<ChatMessage ' His body started to tingle as his muscles shifted, his bones contorted, and his skin stretched. His hair lengthened and thickened into long, blond locks. His voice became higher and more feminine until he became an actress.'>> <<ChatMessage 'When the transformation was complete, the new "actress" stepped out onto set. You watched in amazement - he looked like a perfect actress in every way imaginable!'>> <<ShowNpcIcon _testChar>> <div class="padding-top"> <div class="btn"><<button "Start" "Sex">> <<unset $maleNames $femaleNames $surnames>> <<set $sexType = "Porn Shoot">> <<SpendEnergy $player 45>> <<set $indexNPC = $Characters.indexOf(_testChar)>> <<set $interactionNpc = $Characters[$indexNPC]>> <</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatMessage 'You are trying to convince the director that the second actor should take the pill, but you don\'t seem very persuasive, and the director decides that you should take the pill after all'>> <<ChatMessage 'You lack dominance (70)'>> <div class="padding-top"> <div class="btn-container"> <div class="btn"><<button "Acept" "PornShootEvent_02_AceptPills">><</button>></div> <div class="btn"><<button "Refuse" "PornShooting">><</button>></div> </div> </div> <</nobr>>
<<nobr>> <<widget "AggressiveEvent">> <<run _locationKeys = Object.keys($Locations);>> <<if _locationKeys.includes(passage())>> <<set _chars = []>> <<run _chars = $Locations[passage()].filter( (id) => $Characters[id].info.characterWork != "Hooker" && $Characters[id].dailyEvents.isEventRegistered($player.info.id, "AggresiveEvent") == false && $Characters[id].info.questInfo.isQuestCharacter == false && $Characters[id].info.characterWork != "Etheriant")>> <<if _chars.length > 0>> <<set $indexNPC = _chars[Math.floor(Math.random() * _chars.length)]>> <<set $interactionNpc = $Characters[$indexNPC]>> <<run _contentAllow = CheckContentFilter($interactionNpc)>> <<if (_contentAllow == true)>> <<set _friendship = $player.getRelationship($interactionNpc.info.id).metrics.friendship>> <<set _love = $player.getRelationship($interactionNpc.info.id).metrics.love>> <<set _fear = $player.getRelationship($interactionNpc.info.id).metrics.fear>> <<if $interactionNpc.status.aggression.value >= 40 && _friendship < 70 && _love < 70 && _fear < 80 >> <<run $interactionNpc.dailyEvents.registerEvent($player.info.id, "AggresiveEvent", 1)>> <<goto "AggressiveEvent_SuccessApear">> <</if>> <</if>> <</if>> <</if>> <</widget>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $interaction = ["Touch Ass", "Touch Boobs", "Insult"].random()>> <<if $player.gender() == "Male" && $interaction == "Touch Boobs">> <<set $interaction = ["Touch Ass", "Insult"].random()>> <</if>> <<if ($interaction == "Touch Ass" || $interaction == "Touch Boobs") && (($player.gender() == "Male" && $interactionNpc.info.sexualPreference == "Feminine") || $player.gender() != "Male" && $interactionNpc.info.sexualPreference == "Manly")>> <<set $interaction == "Insult">> <</if>> <<ShowNpcIcon $interactionNpc>> <<if $FromInteraction != true>> <<run $interactionNpc.dailyEvents.registerEvent($interactionNpc.info.id, "WalkEventDone", 1)>> <</if>> <<switch $interaction>> <<case "Touch Ass">> <<set _msg = $interactionNpc.info.firstName + " tries to touch your ass.">> <<ChatMessage _msg>> <<case "Touch Boobs">> <<set _msg = $interactionNpc.info.firstName + " tries to touch your tits">> <<ChatMessage _msg>> <<case "Insult">> <<Chat $interactionNpc "Hey you, get out of my way.">> <</switch>> <div class="padding-top"> <<if $interaction != "Insult">> <div class="btn"><<button "Stay indifferent" "AggressiveEventAction">> <<set _rand = Random(1, 10) * -1>> <<SetCharProgression $player 'dominance' _rand true>> <</button>></div> <<else>> <<if $FromInteraction == true>> <div class="btn"><<button "Stay indifferent" "CharacterInteractions">> <<set _rand = Random(1, 10) * -1>> <<SetCharProgression $player 'dominance' _rand true>> <<unset $interactionType $interaction $FromInteraction>><</button>></div> <<else>> <div class="btn"><<button "Stay indifferent" $player.info.currentLocation>> <<set _rand = Random(1, 10) * -1>> <<SetCharProgression $player 'dominance' _rand true>> <<set $gameSettings.allowSaves = true>><<set $canShowStatsBtn = true>><<unset $interactionType $interactionNpc $indexNPC $interaction $FromInteraction>><</button>></div> <</if>> <</if>> </div> <div class="padding-top"> <<ChanceButton 'Try to resolve the situation' 'TryResolveSituation' $player $interactionNpc '{Friend: 40, Love: 0, Fear: 40, Lust: 0, CheckResistance: true, CheckSexPref: false}' 'TryResolveSituation'>> </div> <div class="padding-top"> <div class="btn"><<button "Fight">> <<unset $interactionType $interaction $FromInteraction>> <<set _battleSetControls = {attack: true, seduce: true, items: true, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls undefined undefined>><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<CheckChance 'TryResolveSituation_Succes' 'TryResolveSituation_Failed' 'TryResolveSituation_Failed' 'LocationEvent' 'TryResolveSituation' '{createBackButton: false, createTwiceBackButton: false}'>> <</nobr>>
<<nobr>> <<ChatMessage "You were unable to resolve the situation.">> <<SpendTime 15>> <div class="padding-top"> <<if $interaction != "Insult">> <div class="btn"><<button "Stay indifferent" "AggressiveEventAction">> <<set _rand = Random(1, 10) * -1>> <<SetCharProgression $player 'dominance' _rand true>> <</button>></div> <<else>> <<if $FromInteraction == true>> <div class="btn"><<button "Stay indifferent" "CharacterInteractions">> <<set _rand = Random(1, 10) * -1>> <<SetCharProgression $player 'dominance' _rand true>> <<unset $interactionType $interaction $FromInteraction>><</button>></div> <<else>> <div class="btn"><<button "Stay indifferent" $player.info.currentLocation>> <<set _rand = Random(1, 10) * -1>> <<SetCharProgression $player 'dominance' _rand true>> <<set $gameSettings.allowSaves = true>><<set $canShowStatsBtn = true>><<unset $interactionType $interactionNpc $indexNPC $interaction $FromInteraction>><</button>></div> <</if>> <</if>> </div> <div class="padding-top"> <div class="btn"><<button "Fight">> <<unset $interactionType $interaction $FromInteraction>> <<set _battleSetControls = {attack: true, seduce: true, items: true, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls undefined undefined>><</button>></div> </div> <</nobr>>
<<nobr>> <<SpendTime 15>> <<set _rand = Random(5, 8)>> <<SetCharProgression $player 'dominance' _rand true>> <<ChatMessage "You were able to successfully resolve the situation.">> <div class="padding-top"> <<if $FromInteraction == true>> <div class="btn"><<button "Continue" "CharacterInteractions">> <<unset $interactionType $interaction $FromInteraction>><</button>></div> <<else>> <div class="btn"><<button "Continue" $player.info.currentLocation>> <<set $gameSettings.allowSaves = true>><<set $canShowStatsBtn = true>><<unset $interactionType $interactionNpc $indexNPC $interaction $FromInteraction>><</button>></div> <</if>> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SpendTime 15>> <<switch $interaction>> <<case "Touch Ass">> <<set $interactionType = "Touch Ass">> <<if $player.gender() != "Male">> <<Interaction $interactionNpc $player>> <</if>> <<run _msg = $interactionNpc.info.firstName + " is touching your ass">> <<case "Touch Boobs">> <<set $interactionType = "Touch boobs">> <<Interaction $interactionNpc $player>> <<run _msg = $interactionNpc.info.firstName + " is touching your boobs">> <</switch>> <<if _msg>> <<ChatMessage _msg>> <</if>> <div class="padding-top"> <div class="btn"><<button "Back" $player.info.currentLocation>><<set $gameSettings.allowSaves = true>><<set $canShowStatsBtn = true>><<unset $indexNPC $interactionNpc $interaction $interactType>><</button>></div> </div> <</nobr>>
<<nobr>> <<widget "LocationEvents">> <<if $player.info.reputation.pornActer.value > 70 && Random(0,100) > 70 && $player.currentLocation != "CollegeHall" && $player.currentLocation != "Auditorium" && $player.currentLocation != "WomensRestroom" && $player.currentLocation != "MensRestroom">> <<SetSaveBtn false>> <<set $interactType = "PornoFanatCome">> <<goto "LocationEvent">> <<else>> <<run _locationKeys = Object.keys($Locations);>> <<if _locationKeys.includes(passage())>> <<set _chars = []>> <<run _chars = $Locations[passage()].filter( (id) => $Characters[id].info.characterWork != "Hooker" && $Characters[id].info.questInfo.isQuestCharacter == false && $Characters[id].info.characterWork != "Etheriant")>> <<if _chars.length > 0>> <<set $indexNPC = _chars[Math.floor(Math.random() * _chars.length)]>> <<set $interactionNpc = $Characters[$indexNPC]>> <<run _contentAllow = CheckContentFilter($interactionNpc)>> <<if (_contentAllow == true)>> <<goto "EventChoose">> <</if>> <</if>> <</if>> <</if>> <</widget>> <</nobr>>
<<nobr>> <<widget "PimpBrothelEvents">> <<if $player.currentLocation != "PimpRoom">> <<run _locationKeys = Object.keys($Locations);>> <<if _locationKeys.includes(passage()) && passage() != "PimpRoom">> <<run _EventCharsID = $Locations[passage()]>> <<if _EventCharsID.length > 0>> <<run _EventCharsID = getRandomElements(_EventCharsID, _EventCharsID.length)>> <<set _RandEvent = Random(0, 100, false)>> <<if _RandEvent >= 0 && _RandEvent < 50>> <<run $brothelSecurityChar = _EventCharsID( (id) => $Characters[id].dailyEvents.isEventRegistered($Characters[id].info.id, "FuckOtherWhore") == false && $Characters[id].info.characterWork == "Brothel Security" && CheckContentFilter($Characters[id]))>> <<run $brothelWhoreChar = _EventCharsID.filter( (id) => $Characters[id].info.characterWork == "Pimp's whore")>> <<if $brothelSecurityChar.length > 0 && $brothelWhoreChar.length > 0>> <<set $brothelSecurityChar = $brothelSecurityChar[0]>> <<set $brothelWhoreChar = $brothelWhoreChar[0]>> <<SetSaveBtn false>> <<goto "PimpBrothelEventChoose_TwoCharacters_Pimp">> <</if>> <<elseif _RandEvent >= 50>> <<run $brothelSecurityChar = _EventCharsID.filter( (id) => $Characters[id].dailyEvents.isEventRegistered($Characters[id].info.id, "FuckPlayer") == false && $Characters[id].info.characterWork== "Brothel Security" && CheckContentFilter($Characters[id]))>> <<if $brothelSecurityChar.length > 0>> <<set $brothelSecurityChar = $brothelSecurityChar[0]>> <<SetSaveBtn false>> <<goto "PimpBrothelEventChoose_GuardFuck_Pimp">> <</if>> <</if>> <</if>> <</if>> <</if>> <</widget>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground>> <<if $Characters[$brothelSecurityChar].dailyEvents.isEventRegistered($Characters[$brothelSecurityChar].info.id, "FuckOtherWhore") == false>> <<run $Characters[$brothelSecurityChar].dailyEvents.registerEvent($Characters[$brothelSecurityChar].info.id, "FuckOtherWhore", 1)>> <</if>> <<set _pos = ["Anal", "Blowjob", "Vaginal"].random()>> <<if $Characters[$brothelWhoreChar].genitalia() == "Penis" && _pos == "Vaginal">> <<set _pos = "Anal">> <</if>> <<switch _pos>> <<case "Anal">> <<SetAnalPick $Characters[$brothelSecurityChar].gender() $Characters[$brothelWhoreChar].gender()>> <<case "Blowjob">> <<SetOralPick $Characters[$brothelSecurityChar].gender() $Characters[$brothelWhoreChar].gender()>> <<case "Vaginal">> <<SetVagPick $Characters[$brothelSecurityChar].gender() $Characters[$brothelWhoreChar].gender()>> <</switch>> <<Video _pick>> <<ChatMessage 'You see the guard fucking one of the whores.'>> <div class="padding-top"> <div class="btn"><<button "Leave" $player.info.currentLocation>><<SetSaveBtn true>><<unset $interactionNpc $indexNPC>> <<set $gameSettings.allowSaves = true>><<set $canShowStatsBtn = true>><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground>> <<if $Characters[$brothelSecurityChar].dailyEvents.isEventRegistered($Characters[$brothelSecurityChar].info.id, "FuckPlayer") == false>> <<run $Characters[$brothelSecurityChar].dailyEvents.registerEvent($Characters[$brothelSecurityChar].info.id, "FuckPlayer", 1)>> <</if>> <<set $interactionNpc = $Characters[$brothelSecurityChar]>> <<set $indexNPC = $brothelSecurityChar>> <<Chat $interactionNpc 'Hey whore, let\'s have some fun.'>> <div class="padding-top"> <div class="btn"><<button "Contiue" "PassiveSex">><<set $sexType = "hoockerWork">><<set $aggresiveFuck = true>><</button>></div> </div> <</nobr>>
<<nobr>> <<set $gameSettings.allowSaves = false>> <<set $canShowStatsBtn = false>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<set _friendship = $player.getRelationship($interactionNpc.info.id).metrics.friendship>> <<set _love = $player.getRelationship($interactionNpc.info.id).metrics.love>> <<set _fear = $player.getRelationship($interactionNpc.info.id).metrics.fear>> <<if $player.characterEvents.isEventRegistered($interactionNpc.info.id, "knows you") == false>> <<set $interactType = "Get acquainted">> <<elseif _fear > 50>> <<set $interactType = "Ran away in fear">> <<else>> <<set $interactType = "Ordinary">> <<if _love >= 90 >> <<set $interaction = ["Talk", "Hug", "Kiss", "Touch Ass", "Touch Boobs", "Sex"].random()>> <<elseif _love >= 85>> <<set $interaction = ["Talk", "Hug", "Kiss", "Touch Ass", "Touch Boobs"].random()>> <<elseif _love >= 75>> <<set $interaction = ["Talk", "Hug", "Kiss"].random()>> <<elseif _friendship >= 65 || _love >= 60 >> <<set $interaction = ["Talk", "Hug"].random()>> <<else>> <<set $interaction = "Talk">> <</if>> <<if ($interaction == "Touch Ass" || $interaction == "Touch Boobs" || $interaction == "Sex" || $interaction == "Kiss") && (($player.gender() == "Male" && $interactionNpc.info.sexualPreference == "Feminine") || $player.gender() != "Male" && $interactionNpc.info.sexualPreference == "Manly")>> <<set $interaction = "Talk">> <</if>> <<if $player.gender() == "Male" && $interaction == "Touch Boobs">> <<set $interaction = "Talk">> <</if>> <<if ($player.status.potency.value == $player.status.potency.min || $interactionNpc.status.potency.value == $interactionNpc.status.potency.min) && $interaction == "Sex">> <<set $interaction = ["Talk", "Hug", "Kiss", "Touch Ass", "Touch Boobs"].random()>> <</if>> <</if>> <<goto "LocationEvent">> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if $interactType == "Ordinary">> <<ShowNpcIcon $interactionNpc>> <<if $FromInteraction != true>> <<run $interactionNpc.dailyEvents.registerEvent($interactionNpc.info.id, "WalkEventDone", 1)>> <</if>> <<switch $interaction>> <<case "Talk">> <<set _msg = $interactionNpc.info.firstName + " wants to talk to you.">> <<case "Hug">> <<set _msg = $interactionNpc.info.firstName + " wants to hug you.">> <<case "Kiss">> <<set _msg = $interactionNpc.info.firstName + " wants to kiss you.">> <<case "Touch Ass">> <<set _msg = $interactionNpc.info.firstName + " wants to touch your ass.">> <<case "Touch Boobs">> <<set _msg = $interactionNpc.info.firstName + " wants to touch your tits">> <<case "Sex">> <<set _msg = $interactionNpc.info.firstName + " wants to have sex with you.">> <</switch>> <<ChatMessage _msg>> <div class="padding-top"> <div class="btn"><<button "Accept" "LocationEventAction">><</button>></div> </div> <div class="padding-top"> <<if $FromInteraction == true>> <div class="btn"><<button "Decline" "CharacterInteractions">><<unset $FromInteraction>><<unset $interaction $interactType>><</button>></div> <<else>> <div class="btn"><<button "Decline" $player.info.currentLocation>><<set $gameSettings.allowSaves = true>><<set $canShowStatsBtn = true>><<unset $indexNPC $interactionNpc $interaction $interactType>><</button>></div> <</if>> </div> <<elseif $interactType == "Ran away in fear">> <<ShowNpcIcon $interactionNpc>> <<ChatMessage 'Upon seeing you, $interactionNpc.info.firstName got scared and ran away.'>> <div class="padding-top"> <div class="btn"><<button "Continue" $player.info.currentLocation>> <<run RandomRelocateCharacter($indexNPC)>> <<set $gameSettings.allowSaves = true>><<set $canShowStatsBtn = true>><<unset $interactionType $interactionNpc $indexNPC $interaction $FromInteraction>> <</button>></div> </div> <<elseif $interactType == "Get acquainted">> <<ShowNpcIcon $interactionNpc>> <<Chat $interactionNpc 'Hi, I haven\'t seen you around here before. I\'m $interactionNpc.info.firstName.'>> <div class="padding-top"> <div class="btn"><<button "Continue" $player.info.currentLocation>> <<run $player.characterEvents.registerEvent($interactionNpc.info.id, "knows you", 1)>> <<set $gameSettings.allowSaves = true>><<set $canShowStatsBtn = true>><<unset $interactionType $interactionNpc $indexNPC $interaction $FromInteraction>> <</button>></div> </div> <<elseif $interactType == "PornoFanatCome">> <<include "CharactersData">> <<run _testChar = CreateCharacter({ isPlayer: false, characterWork: "external", lust: 100, gender: ["Male", "Female", "Trans"].random(), sexualPreference: "Bi", age: Random(18,45), }, true)>> <<set $indexNPC = $Characters.indexOf(_testChar)>> <<set $interactionNpc = $Characters[$indexNPC]>> <<ShowNpcIcon $interactionNpc>> <<unset $maleNames $femaleNames $surnames $interactType>> <<Chat $interactionNpc 'Hello, I recognize you, you act in porno'>> <<ChatMessage 'You notice that your fan is overly interested in you.'>> <div class="padding-top"> <div class="btn-container"> <<if $player.status.potency.value > $player.status.potency.min && $playerlock != true>> <div class="btn"><<button "Sex with a fan (Passive)" "PassiveSex">><<set $sexType = "OneSex (Destroy)">><</button>></div> <div class="btn"><<button "Sex with a fan (Active)" "Sex">><<set $sexType = "OneSex (Destroy)">><</button>></div> <<elseif $player.status.potency.value > $player.status.potency.min && $playerlock == true>> <div class="btn"><<button "Sex with a fan (Passive)" "PassiveSex">><<set $sexType = "OneSex (Destroy)">><</button>></div> <div class="btn non-interacting"><<button "Sex with a fan (Active)" "Sex">><<set $sexType = "OneSex (Destroy)">><</button>></div> <<else>> <div class="btn non-interacting"><<button "Sex with a fan (Passive)" "PassiveSex">><<set $sexType = "OneSex (Destroy)">><</button>></div> <div class="btn non-interacting"><<button "Sex with a fan (Active)" "Sex">><<set $sexType = "OneSex (Destroy)">><</button>></div> <</if>> <div class="btn"><<button "A polite goodbye" $player.info.currentLocation>> <<SetSaveBtn true>> <<run $Characters.splice($indexNPC, 1)>> <</button>></div> </div> </div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<if $player.status.energy.value < 5>> <<goto "NotEnoughEnergy_Events">> <</if>> <<SpendTime 15>> <<if $interactType == "Ordinary">> <<switch $interaction>> <<case "Talk">> <<if $interactionNpc.dailyEvents.isEventRegistered($interactionNpc.info.id, "TalkEventDone") == false && $FromInteraction == true>> <<run $interactionNpc.dailyEvents.registerEvent($interactionNpc.info.id, "TalkEventDone", 1)>> <<set _relUpgrd = {friendship: Random(1, 2, true)}>> <<SetRelations $player $interactionNpc _relUpgrd>> <<elseif $FromInteraction != true>> <<set _relUpgrd = {friendship: Random(1, 2, true)}>> <<SetRelations $player $interactionNpc _relUpgrd>> <</if>> <<set _msg = "You are talking to " + $interactionNpc.info.firstName + " about various topics.">> <<case "Hug">> <<if $interactionNpc.dailyEvents.isEventRegistered($interactionNpc.info.id, "HugEventDone") == false && $FromInteraction == true>> <<run $interactionNpc.dailyEvents.registerEvent($interactionNpc.info.id, "HugEventDone", 1)>> <<set _relUpgrd = {friendship: Random(1, 3, true)}>> <<SetRelations $player $interactionNpc _relUpgrd>> <<elseif $FromInteraction != true>> <<set _relUpgrd = {friendship: Random(1, 3, true)}>> <<SetRelations $player $interactionNpc _relUpgrd>> <</if>> <<run _msg = "You and " + $interactionNpc.info.firstName + " are hugging">> <<case "Kiss">> <<if $interactionNpc.dailyEvents.isEventRegistered($interactionNpc.info.id, "KissEventDone") == false && $FromInteraction == true>> <<run $interactionNpc.dailyEvents.registerEvent($interactionNpc.info.id, "KissEventDone", 1)>> <<set _relUpgrd = {love: Random(1, 2, true)}>> <<SetRelations $player $interactionNpc _relUpgrd>> <<elseif $FromInteraction != true>> <<set _relUpgrd = {love: Random(1, 2, true)}>> <<SetRelations $player $interactionNpc _relUpgrd>> <</if>> <<set $interactionType = "Kiss">> <<Interaction $interactionNpc $player>> <<run _msg = "You and " + $interactionNpc.info.firstName + " are kissing">> <<case "Touch Ass">> <<if $interactionNpc.dailyEvents.isEventRegistered($interactionNpc.info.id, "TouchAssEventDone") == false && $FromInteraction == true>> <<run $interactionNpc.dailyEvents.registerEvent($interactionNpc.info.id, "TouchAssEventDone", 1)>> <<set _relUpgrd = {love: Random(1, 2, true)}>> <<SetRelations $player $interactionNpc _relUpgrd>> <<elseif $FromInteraction != true>> <<set _relUpgrd = {love: Random(1, 2, true)}>> <<SetRelations $player $interactionNpc _relUpgrd>> <</if>> <<set $interactionType = "Touch Ass">> <<Interaction $interactionNpc $player>> <<run _msg = $interactionNpc.info.firstName + " is touching your ass">> <<case "Touch Boobs">> <<if $interactionNpc.dailyEvents.isEventRegistered($interactionNpc.info.id, "TouchBoobsEventDone") == false && $FromInteraction == true>> <<run $interactionNpc.dailyEvents.registerEvent($interactionNpc.info.id, "TouchBoobsEventDone", 1)>> <<set _relUpgrd = {love: Random(1, 2, true)}>> <<SetRelations $player $interactionNpc _relUpgrd>> <<elseif $FromInteraction != true>> <<set _relUpgrd = {love: Random(1, 2, true)}>> <<SetRelations $player $interactionNpc _relUpgrd>> <</if>> <<set $interactionType = "Touch boobs">> <<Interaction $interactionNpc $player>> <<run _msg = $interactionNpc.info.firstName + " is touching your boobs">> <<case "Sex">> <<goto "Sex">> <</switch>> <<elseif $interactType == "Aggressive">> <<switch $interaction>> <<case "Touch Ass">> <<set $interactionType = "Touch Ass">> <<if $player.gender() != "Male">> <<Interaction $interactionNpc $player>> <</if>> <<run _msg = $interactionNpc.info.firstName + " is touching your ass">> <<case "Touch Boobs">> <<set $interactionType = "Touch boobs">> <<Interaction $interactionNpc $player>> <<run _msg = $interactionNpc.info.firstName + " is touching your boobs">> <</switch>> <</if>> <<ChatMessage _msg>> <div class="padding-top"> <<if $FromInteraction == true>> <div class="btn"><<button "Back" "CharacterInteractions">><<unset $FromInteraction>><<unset $interaction $interactType>><</button>></div> <<else>> <div class="btn"><<button "Back" $player.info.currentLocation>><<set $gameSettings.allowSaves = true>><<set $canShowStatsBtn = true>><<unset $indexNPC $interactionNpc $interaction $interactType>><</button>></div> <</if>> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<ChatMessage "Not enough energy">> <div class="padding-top"> <<if $FromInteraction == true>> <div class="btn"><<button "Back" "CharacterInteractions">><<unset $FromInteraction>><<unset $interaction $interactType>><</button>></div> <<else>> <div class="btn"><<button "Back" $player.info.currentLocation>><<set $gameSettings.allowSaves = true>><<set $canShowStatsBtn = true>><<unset $indexNPC $interactionNpc $interaction $interactType>><</button>></div> <</if>> </div> <</nobr>>
<<nobr>> <div class="item-filter"> <<if $filterType == "All">> <div class="filter-button active"><<button "All" _curLoc>><<set $filterType = "All">><</button>></div> <<else>> <div class="filter-button"><<button "All" _curLoc>><<set $filterType = "All">><</button>></div> <</if>> <<if $filterType == "Clothing">> <div class="filter-button active"><<button "Clothes" _curLoc>><<set $filterType = "Clothing">><</button>></div> <<else>> <div class="filter-button"><<button "Clothes" _curLoc>><<set $filterType = "Clothing">><</button>></div> <</if>> <<if $filterType == "Drug">> <div class="filter-button active"><<button "Drugs" _curLoc>><<set $filterType = "Drug">><</button>></div> <<else>> <div class="filter-button"><<button "Drugs" _curLoc>><<set $filterType = "Drug">><</button>></div> <</if>> <<if $filterType == "Gift">> <div class="filter-button active"><<button "Gift" _curLoc>><<set $filterType = "Gift">><</button>></div> <<else>> <div class="filter-button"><<button "Gift" _curLoc>><<set $filterType = "Gift">><</button>></div> <</if>> <<if $filterType == "Food">> <div class="filter-button active"><<button "Food" _curLoc>><<set $filterType = "Food">><</button>></div> <<else>> <div class="filter-button"><<button "Food" _curLoc>><<set $filterType = "Food">><</button>></div> <</if>> <<if $filterType == "SexToy">> <div class="filter-button active"><<button "Toys" _curLoc>><<set $filterType = "SexToy">><</button>></div> <<else>> <div class="filter-button"><<button "Toys" _curLoc>><<set $filterType = "SexToy">><</button>></div> <</if>> </div> <</nobr>>
<<nobr>> <<for _i = 0; _i < $Characters.length; _i++>> <<if $playerFollowers.includes($Characters[_i].info.id)>> <<run RandomRelocateCharacter($Characters.indexOf($Characters[_i]), $player.info.currentLocation)>> <</if>> <</for>> <</nobr>>
<<nobr>> <<done>> <<set _getPlayerEnergy = $player.status.energy>> <<set _getPlayerHorny = $player.status.horny>> <<set _getPlayerHealth = $player.status.health>> <<set _getPlayerDrunkenness = $player.status.alcoholIntoxication>> <<run UpdateProgressBar("energy-bar", _getPlayerEnergy.value, _getPlayerEnergy.max)>> <<run UpdateProgressBar("horny-bar", _getPlayerHorny.value, _getPlayerHorny.max)>> <<run UpdateProgressBar("health-bar", _getPlayerHealth.value, _getPlayerHealth.max)>> <<run UpdateProgressBar("drunkenness-bar", _getPlayerDrunkenness.value, _getPlayerDrunkenness.max)>> <<run UpdateProgressBar("sex-stamina-bar", $player.status.potency.value, $player.status.potency.max)>> <<run DisplayText("player-money", "💲" + $player.money)>> <<include "UpdateProgressBarsColor_">> <<run DisplayDate($dateTime)>> <<run DisplayTime($dateTime)>> <<run DisplayDayOfWeek($dateTime)>> <</done>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetCharProgression $player 'strength' 20 true>> <div class="btn padding-top"><<button "Back" "CharacterInteractions">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetCharProgression $player 'strength' -20 true>> <div class="btn padding-top"><<button "Back" "CharacterInteractions">><</button>></div> <</nobr>>
<<nobr>> <<removeclass "#energy-bar" "leftbar-menu-green">> <<removeclass "#energy-bar" "leftbar-menu-yellow">> <<removeclass "#energy-bar" "leftbar-menu-red">> <<if _getPlayerEnergy.value > 66>> <<addclass "#energy-bar" "leftbar-menu-green">> <<elseif _getPlayerEnergy.value > 33 && _getPlayerEnergy.value <= 66>> <<addclass "#energy-bar" "leftbar-menu-yellow">> <<elseif _getPlayerEnergy.value <= 33>> <<addclass "#energy-bar" "leftbar-menu-red">> <</if>> <<removeclass "#health-bar" "leftbar-menu-green">> <<removeclass "#health-bar" "leftbar-menu-yellow">> <<removeclass "#health-bar" "leftbar-menu-red">> <<if _getPlayerHealth.value > 66>> <<addclass "#health-bar" "leftbar-menu-green">> <<elseif _getPlayerHealth.value > 33 && _getPlayerHealth.value <= 66>> <<addclass "#health-bar" "leftbar-menu-yellow">> <<elseif _getPlayerHealth.value <= 33>> <<addclass "#health-bar" "leftbar-menu-red">> <</if>> <<removeclass "#drunkenness-bar" "leftbar-menu-green">> <<removeclass "#drunkenness-bar" "leftbar-menu-yellow">> <<removeclass "#drunkenness-bar" "leftbar-menu-red">> <<if _getPlayerDrunkenness.value > 80>> <<addclass "#drunkenness-bar" "leftbar-menu-red">> <<elseif _getPlayerDrunkenness.value > 50 && _getPlayerDrunkenness.value <= 80>> <<addclass "#drunkenness-bar" "leftbar-menu-yellow">> <<elseif _getPlayerDrunkenness.value <= 50>> <<addclass "#drunkenness-bar" "leftbar-menu-green">> <</if>> <</nobr>>
<<nobr>> <<run UpdateSaveAllow()>> <<UpdateNPCVar>> <<include "UpdateStatBars">> <<SetBackground>> <<include "CreateStartQuest">> <<done>> <<include "Update_Travel_Mode_Buttons">> <</done>> <</nobr>>
<<nobr>> <<if $player.status.potency.value > $player.status.potency.min>> <<run $player.status.horny.increase(2)>> <</if>> <<if $player.info.currentLocation != passage()>> <<SpendTime 2>> <</if>> <</nobr>>
<<nobr>> <<switch $badEnding>> <<case "SkippedClass">> <<set $canShowStatsBtn = false>> <<goto "Bad_Ending_SkippedClass">> <<case "EtheriumInfected">> <<set $canShowStatsBtn = false>> <<goto "Bad_Ending_EtheriumInfected">> <</switch>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/BusinessDistrict/BusinessDistrict.jpg">> <<timed 0.2s>> <div class="centre-text">Bank</div> <<ChatMessage 'Your Balance: $player.bankBalance'>> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn padding-top"><<button "Leave" "Business_District">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <<PoliceChecker>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <</nobr>>
<<nobr>> <<include "UpdateAll">> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/BusinessDistrict/BusinessDistrict.jpg">> <<timed 0.2s>> <div class="centre-text">Business District</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Business Center" "BC_Reception">><</button>></div> /* <div class="btn padding-top"><<button "Bank" "Bank">><</button>></div> */ <div class="btn padding-top"><<Travel "Leave" "Campus" "padding-top">></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <<PoliceChecker>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/BusinessDistrict/BusinessCenter/Amanda_Office.jpg">> <<timed 0.2s>> <div class="centre-text">Amanda's Office</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Leave" "BC_Reception">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/BusinessDistrict/BusinessCenter/CEO_Office.jpg">> <<timed 0.2s>> <div class="centre-text">CEO’s Office</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Leave" "BC_Reception">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/BusinessDistrict/BusinessCenter/OpenWorkspace.jpg">> <<timed 0.2s>> <div class="centre-text">Open Workspace</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Leave" "BC_Reception">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/BusinessDistrict/BusinessCenter/Office_Reception.jpg">> <<timed 0.2s>> <div class="centre-text">Reception</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn-container"> <div class="btn"><<button "Open Workspace" "BC_Open_Workspace">><</button>></div> <div class="btn"><<button "Amanda's Office" "BC_Amanda_Office">><</button>></div> <div class="btn"><<button "CEO’s Office" "BC_CEO_Office">><</button>></div> <div class="btn"><<button "Restroom " "BC_Restroom">><</button>></div> </div> <div class="btn padding-top"><<button "Leave" "Business_District">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/BusinessDistrict/BusinessCenter/Restroom.jpg">> <<timed 0.2s>> <div class="centre-text">Restroom</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Leave" "BC_Reception">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/Campus/Campus.jpg">> <<timed 0.2s>> <div class="centre-text">Campus</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn-container"> <div class="btn"><<button "College" "CollegeHall">><</button>></div> <div class="btn"><<button "Oak Street" "Oak_Street">><</button>></div> <div class="btn"><<button "Library" "Library">><</button>></div> <div class="btn"><<button "Mall" "Mall">><</button>></div> <div class="btn"><<button "Surgery center" "Clinic">><</button>></div> <div class="btn"><<button "Park" "Park">><</button>></div> <<Travel "Business District" "Business_District">> <<Travel "Entertainment District" "EntertainmentDistrict">> <<Travel "Residential area" "ResidentialArea">> <<Travel "Red Light Dist." "RedLightDistrict">> <<Travel "Skid Row" "SR_SkidRow">> <<Travel "Downtown" "Downtown">> </div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <<PoliceChecker>> <<RandomEvent "Campus">> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/Clinic/Clinic.jpg">> <<timed 0.2s>> <div class="centre-text">Surgery Center</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Leave" "Campus">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <<PoliceChecker>> <</timed>> <</nobr>>
<<nobr>> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/College/CollegeHall.jpg">> <<timed 0.2s>> <div class="centre-text">College Hall</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn-container"> <div class="btn"><<button "Auditorium" "Auditorium">><</button>></div> <div class="btn"><<button "Men's WC" "MensRestroom">><</button>></div> <div class="btn"><<button "Women's WC" "WomensRestroom">><</button>></div> </div> <div class="padding-top"> <div class="btn"><<button "Leave" "Campus">><</button>></div> </div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/College/Restroom/restroom.jpg">> <<timed 0.2s>> <div class="centre-text">Men's restroom</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Leave" "CollegeHall">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/College/Restroom/restroom.jpg">> <<timed 0.2s>> <div class="centre-text">Women's restroom</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Leave" "CollegeHall">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/College/Auditorium/Auditorium_02.jpg">> <<timed 0.2s>> <div class="centre-text">Auditorium</div> <div class="centre-text" style="font-size: 20px;">Classes start at 9 a.m. on weekdays.</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Leave" "CollegeHall">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<if $dateTime.hours >=9 && $dateTime.hours <=11 && $player.dailyEvents.isEventRegistered($player.info.id, "AttendedAClass") == false && $dateTime.getDayOfWeek() != "Sunday" && $dateTime.getDayOfWeek() != "Saturday">> <<if getTaskState("main_quest1_college", "Attend your first college class") != 'completed'>> <div class="btn"><<button "Attend a class" "Main_Quest1_College">><</button>></div> <<else>> <div class="btn"><<button "Attend a class" "AttendClass">><</button>></div> <</if>> <<elseif $dateTime.hours < 9 && $player.dailyEvents.isEventRegistered($player.info.id, "AttendedAClass") == false && $dateTime.getDayOfWeek() != "Sunday" && $dateTime.getDayOfWeek() != "Saturday">> <div class="btn"><<button "Wait until classes start" "Auditorium">> <<set _tempTime = {minutes: 0, hours: 8}>> <<SetTime _tempTime>> <<SpendTime 60>> <</button>></div> <<else>> <div class="btn non-interacting"><<button "Attend a class">><</button>></div> <</if>> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground>> <<SpendTimeWithoutUpdate 45>> <<run $player.dailyEvents.registerEvent($player.info.id, "AttendedAClass", 1)>> <<ChatMessage 'You attended a class'>> <<set _expGain = Random(30,60) + $player.attributes.intelligence.value>> <<SetCharProgression $player 'intelligence' _expGain true>> <div class="padding-top"> <div class="btn"><<button "Continue" "Auditorium">><</button>></div> </div> <</nobr>>
<<nobr>> <<SaveLocation "npcHome">> <<EachLoc>> <<SetBackground "Media/Locations/Dorm/DormRoom.png">> <<timed 0.2s>> <div class="centre-text"><<print "Room № " + ($currentRoom.id + 1)>></div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn-container"> <div class="btn"><<button "Exit" "DormCorridor">><</button>></div> </div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/Dorm/DormCorridor.jpg">> <<timed 0.2s>> <div class="centre-text">Dorm Hall</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn-container"> <div class="btn"><<button "Leave" "Campus">><</button>></div> <<DisplayRooms $Residents>> </div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/EntertainmentDistrict/Entertainment District.jpg">> <<timed 0.2s>> <div class="centre-text">Entertainment District</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn-container"> <div class="btn"><<button "Bar" "Bar">><</button>></div> </div> <div class="padding-top"> <<Travel "Campus" "Campus">> </div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> <<if $dateTime.hours < 18>> <div class="btn"><<button "Wait until evening" "RedLightDistrict">> <<set _tempTime = {minutes: 0, hours: 17}>> <<SetTime _tempTime>> <<SpendTime 60>> <</button>></div> <</if>> </div> </fieldset> </div> <<PeopleAround>> <<PoliceChecker>> <</timed>> <</nobr>>
<<nobr>> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/EntertainmentDistrict/Bar.jpg">> <<timed 0.2s>> <div class="centre-text">Bar</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Leave" "EntertainmentDistrict">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> <<if $dateTime.hours < 18>> <div class="btn"><<button "Wait until evening" "RedLightDistrict">> <<set _tempTime = {minutes: 0, hours: 17}>> <<SetTime _tempTime>> <<SpendTime 60>> <</button>></div> <</if>> </div> </fieldset> </div> <<PeopleAround>> <<PoliceChecker>> <<done>><<LocationEvent 'Victor Barker' 'Bar_VictorBarker' "transition" "Media\\Characters\\QuestChars\\Bar\\VictorBarker.jpeg">><</done>> <</timed>> <</nobr>>
<<nobr>> <<if $player.characterEvents.isEventRegistered($player.info.id, "victorBarker_quest_01") == false && $player.gender() == 'Male'>> <<goto "VictorBarker_Quest_1_Start">> <</if>> <<include "UpdateAll">> <<DrawImage "Media\\Characters\\QuestChars\\Bar\\VictorBarker.jpeg">> <div class="btn padding-top"><<button "Back" $player.info.currentLocation>><</button>></div> <</nobr>>
<<nobr>> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/College/Library/Library.jpg">> <div class="centre-text">Library</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Leave" "Campus">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> <<if $player.status.energy.value >= 20>> <div class="btn" id="study-btn"><<button "Study" "Library_Study">><</button>></div> <<else>> <div class="btn non-interacting" id="study-btn"><<button "Study">><</button>></div> <</if>> </div> </fieldset> </div> <<PeopleAround>> <<PoliceChecker>> <<done>> <<run addHoverTooltip('study-btn', 'Studying grants you experience. The amount of experience you gain depends on your Intelligence level (cost: 20 energy)')>> <</done>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SpendEnergy $player 20>> <<set _randomValueChange = Random(10,20) + $player.attributes.intelligence.value>> <<SetCharProgression $player 'intelligence' _randomValueChange true>> <div class="padding-top"> <div class="btn"><<button "Ok" "Library">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/Mall/Mall.png">> <<timed 0.2s>> <div class="centre-text">Mall</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn-container"> <div class="btn"><<button "Gym" "FitnessClub">><</button>></div> <div class="btn"><<button "Electronics" "ElectronicsStore">><</button>></div> <div class="btn"><<button "Pharmacy" "Pharmacy">><</button>></div> <div class="btn"><<button "Grocery" "Grocery">><</button>></div> <div class="btn"><<button "Clothing" "ClothingStore">><</button>></div> <div class="btn"><<button "Sex Shop" "SexShop">><</button>></div> </div> <div class="padding-top"> <div class="btn"><<button "Leave" "Campus">><</button>></div> </div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <<PoliceChecker>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/Mall/GiftShop.png">> <<timed 0.2s>> <div class="centre-text">Gift Shop</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Back" "Mall">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> <div class="btn"><<button "Shop">> <<OpenShop "Gift">> <</button>></div> </div> </fieldset> </div> <<PeopleAround>> <<PoliceChecker>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/Mall/Pharmacy.png">> <<timed 0.2s>> <div class="centre-text">Pharmacy</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Back" "Mall">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> <div class="btn"><<button "Shop">> <<OpenShop "Drug">> <</button>></div> </div> </fieldset> </div> <<PeopleAround>> <<PoliceChecker>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/Mall/Grocery.png">> <<timed 0.2s>> <div class="centre-text">Grocery section</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Back" "Mall">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> <div class="btn"><<button "Shop">> <<OpenShop "Food">> <</button>></div> </div> </fieldset> </div> <<PeopleAround>> <<PoliceChecker>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/Mall/Gym.jpg">> <<timed 0.2s>> <div class="centre-text">Fitness Club</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Back" "Mall">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> <<if $player.status.energy.value >= 20>> <div class="btn" id="study-btn"><<button "Work Out" "FitnessClub_Work_Out_ChooseType">><</button>></div> <<else>> <div class="btn non-interacting" id="study-btn"><<button "Work Out">><</button>></div> <</if>> </div> </fieldset> </div> <<PeopleAround>> <<PoliceChecker>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <div class="btn-container"> <<if $player.attributes.strength.value < $player.attributes.strength.max>> <div class="btn"><<button "Strength training" "FitnessClub_Work_Out">><<set $trainingType = "strength">><</button>></div> <<else>> <div class="btn non-interacting"><<button "Strength training">><</button>></div> <</if>> <<if $player.attributes.vitality.value < $player.attributes.vitality.max>> <div class="btn"><<button "Vitality training" "FitnessClub_Work_Out">><<set $trainingType = "vitality">><</button>></div> <<else>> <div class="btn non-interacting"><<button "Vitality training">><</button>></div> <</if>> <<if $player.attributes.endurance.value < $player.attributes.endurance.max>> <div class="btn"><<button "Endurance training" "FitnessClub_Work_Out">><<set $trainingType = "endurance">><</button>></div> <<else>> <div class="btn non-interacting"><<button "Endurance training">><</button>></div> <</if>> <<if $player.attributes.dexterity.value < $player.attributes.dexterity.max>> <div class="btn"><<button "Dexterity training" "FitnessClub_Work_Out">><<set $trainingType = "dexterity">><</button>></div> <<else>> <div class="btn non-interacting"><<button "Dexterity training">><</button>></div> <</if>> <<if $player.attributes.defense.value < $player.attributes.defense.max>> <div class="btn"><<button "Defense training" "FitnessClub_Work_Out">><<set $trainingType = "defense">><</button>></div> <<else>> <div class="btn non-interacting"><<button "Defense training">><</button>></div> <</if>> </div> <div class="btn padding-top"><<button "Back" "FitnessClub">><<unset $trainingType>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SpendEnergy $player 20>> <<SpendTimeWithoutUpdate 30>> <<set _randomValueChange = Random(10,20) + $player.attributes.intelligence.value>> <<SetCharProgression $player $trainingType _randomValueChange true>> <div class="btn padding-top"><<button "Continue" "FitnessClub">><<unset $trainingType>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/Mall/ClothingStorel.png">> <<timed 0.2s>> <div class="centre-text">Clothing Store</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Back" "Mall">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> <div class="btn"><<button "Shop">> <<OpenShop "Clothing">> <</button>></div> </div> </fieldset> </div> <<PeopleAround>> <<PoliceChecker>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/Mall/Sexshop.jpg">> <<timed 0.2s>> <div class="centre-text">Sex Shop</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Back" "Mall">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> <div class="btn"><<button "Shop">> <<OpenShop "SexToy">> <</button>></div> </div> </fieldset> </div> <<PeopleAround>> <<PoliceChecker>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/Mall/ElectronicsStore.jpg">> <<timed 0.2s>> <div class="centre-text">Electronics Store</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Back" "Mall">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> <div class="btn"><<button "Shop">> <<OpenShop "Gift">> <</button>></div> </div> </fieldset> </div> <<PeopleAround>> <<PoliceChecker>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/Park/Park.jpg">> <<timed 0.2s>> <div class="centre-text">Park</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn-container"> <div class="btn"><<button "Restrooms" "ParkRestrooms">><</button>></div> </div> <div class="padding-top"> <div class="btn"><<button "Campus" "Campus">><</button>></div> </div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <<if getQuestState("rayna_voss_quest1") == "active" && getTaskState("rayna_voss_quest1", "Track down Detective Rayna Voss in the city park") != 'completed' && $dateTime.hours >= 18 && $dateTime.hours < 22>> <<done>><<LocationEvent 'Rayna Voss' 'Rayna_Voss_Quest1_Meet' "transition" "Media//Characters//QuestChars//Detective//Detective.png">><</done>> <<elseif getQuestState("rayna_voss_quest1") == "active" && getTaskState("rayna_voss_quest1", "Retrieve the documents from the Skid Row basement") != 'completed' && $dateTime.hours >= 18 && $dateTime.hours < 22>> <<done>><<LocationEvent 'Rayna Voss' 'Rayna_Voss_Quest1_Remind' "transition" "Media//Characters//QuestChars//Detective//Detective.png">><</done>> <<elseif getQuestState("rayna_voss_quest1") == "active" && getTaskState("rayna_voss_quest1", "Retrieve the documents from the Skid Row basement") == 'completed' && getTaskState("rayna_voss_quest1", "Give the documents to Rayna") != 'completed' && $dateTime.hours >= 18 && $dateTime.hours < 22>> <<done>><<LocationEvent 'Rayna Voss' 'Rayna_Voss_Quest1_Return' "transition" "Media//Characters//QuestChars//Detective//Detective.png">><</done>> <</if>> <<PoliceChecker>> <<RandomEvent "Park">> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/Park/ParkRestrooms.jpg">> <<timed 0.2s>> <div class="centre-text">Park Restrooms</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Back" "Park">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <div class="btn"><<button "Work in gloryhole" "GloryHole">><<set $playerSuck = true>><</button>></div> <<if $player.genitalia() == "Penis" && $player.status.potency.value > $player.status.potency.min && $playerlock == false>> <div class="btn"><<button "Use gloryhole (- $50)" "GloryHole">><<set $playerSuck = false>><</button>></div> <</if>> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <<PoliceChecker>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if $playerSuck == true>> <<if $player.status.energy.value < 50>> <<goto "GloryHole_Totied">> <<else>> <<SpendTime 120>> <<SpendEnergy $player 50>> <<if $player.gender() == "Male">> <<set _pick = 'Media\\Sex\\GloryHole\\Male\\' + Random(0, 1, false) + '.mp4'>> <<else>> <<set _pick = 'Media\\Sex\\GloryHole\\Female\\' + Random(0, 4, false) + '.mp4'>> <</if>> <<set _income = Random(50, 500)>> <<set $player.money += _income>> <<set _msg = "You served several clients and earned " + "$" + _income>> <<Video _pick>> <<ChatMessage _msg>> <div class="padding-top"> <div class="btn"><<button "Back" "ParkRestrooms">><<unset $playerSuck $Gender>><</button>></div> </div> <</if>> <<else>> <<if $player.money < 50>> <<ChatMessage "Not enough money.">> <div class="padding-top"> <div class="btn"><<button "Back" "ParkRestrooms">><</button>></div> </div> <<else>> <<set $player.money -= 50>> <<set _pick = 'Media\\Sex\\GloryHole\\Female\\' + Random(0, 4, false) + '.mp4'>> <<Video _pick>> <<ChatMessage "You paid your money and an unknown girl started servicing your cock.">> <div class="padding-top"> <div class="btn"><<button "Cum" "GloryHoleCum">><<set $Gender = "Male">><</button>></div> </div> <</if>> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/City/Park/ParkRestrooms.jpg">> <<set _msg = "After a while, you cum.">> <<set _pick = 'Media\\Sex\\GloryHole\\Female\\Cum\\' + Random(0, 1, false) + '.mp4'>> <<set $player.status.potency.decrease(1)>> <<set $player.status.horny.decrease($player.status.horny.max)>> <<Video _pick>> <<ChatMessage _msg>> <div class="padding-top"> <div class="btn"><<button "Back" "ParkRestrooms">><<unset $playerSuck $Gender>><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatMessage "You are too tired.">> <div class="padding-top"> <div class="btn"><<button "Back" "ParkRestrooms">><<unset $playerSuck $Gender>><</button>></div> </div> <</nobr>>
<<nobr>> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/ResidentialArea/ResidentialArea.jpg">> <<timed 0.2s>> <div class="centre-text">Residential Area</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn-container"> <<if $player.characterEvents.isEventRegistered($player.info.id, "BuyAppartment") == false>> <<if $player.money >= 10000>> <div class="btn"><<button "Buy Apartment ($10000)" "ResidentialArea">> <<set $player.money -= 10000>> <<run $player.characterEvents.registerEvent($player.info.id, "BuyAppartment", 1)>> <</button>></div> <<else>> <div class="btn non-interacting"><<button "Buy Apartment ($10000)">><</button>></div> <</if>> <<else>> <div class="btn"><<button "Apartment" "LivingRoom_Apartments">><</button>></div> <</if>> </div> <div class="padding-top"> <<Travel "Campus" "Campus">> </div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <<PoliceChecker>> <</timed>> <</nobr>>
<<nobr>> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/ResidentialArea/LivingRoom.jpg">> <<timed 0.2s>> <div class="centre-text">Living room</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn-container"> <div class="btn"><<button "Bedroom" "Bedroom_Apartments">><</button>></div> </div> <div class="padding-top"> <div class="btn"><<button "Leave" "ResidentialArea">><</button>></div> </div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <<PoliceChecker>> <</timed>> <</nobr>>
<<nobr>> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/ResidentialArea/Bedroom.jpg">> <<timed 0.2s>> <div class="centre-text">Bedroom</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Living room" "LivingRoom_Apartments">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> <<SleepButton>> </div> </fieldset> </div> <<PeopleAround>> <<PoliceChecker>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/Downtown/CarDealership.jpg">> <<timed 0.2s>> <div class="centre-text">Car Dealership</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Back" "Downtown">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <<done>><<LocationEvent 'Lana Monroe' 'CarDealer_Sales' "transition" "Media//Characters//QuestChars//Other//Lana.jpg">><</done>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/Downtown/CarDealership.jpg">> <<ChatWithoutNPC 'Lana' 'Media//Characters//QuestChars//Other//Lana.jpg' 'Looking for a new ride? I can set you up.'>> <<LockSettings>> <<if !$playercars>> <<set $playercars = []>> <</if>> <div class="btn-container"> <<if $playercars.includes("Compact Car")>> <div id="compact-car-btn" class="btn non-interacting"><<button "Compact Car - Owned">><</button>></div> <<elseif $player.money < 5000>> <div id="compact-car-btn" class="btn non-interacting"><<button "Compact Car ($5000)">><</button>></div> <<else>> <div id="compact-car-btn" class="btn"><<button "Compact Car ($5000)" "CarDealer_Sales">> <<set $player.money -= 5000>> <<set $carObject = {name: "Compact Car", quality: 1, price: 5000}>> <<run $playercars.push("Compact Car")>> <<include "Update_Travel_Mode_Buttons">> <<replace "#compact-car-btn">><div id="compact-car-btn" class="btn non-interacting"><<button "Compact Car - Owned">><</button>></div><</replace>> <</button>></div> <</if>> <<if $playercars.includes("Sedan")>> <div id="sedan-btn" class="btn non-interacting"><<button "Sedan - Owned">><</button>></div> <<elseif $player.money < 12000>> <div id="sedan-btn" class="btn non-interacting"><<button "Sedan ($12000)">><</button>></div> <<else>> <div id="sedan-btn" class="btn"><<button "Sedan ($12000)" "CarDealer_Sales">> <<set $player.money -= 12000>> <<set $carObject = {name: "Sedan", quality: 2, price: 12000}>> <<run $playercars.push("Sedan")>> <<include "Update_Travel_Mode_Buttons">> <<replace "#sedan-btn">><div id="sedan-btn" class="btn non-interacting"><<button "Sedan - Owned">><</button>></div><</replace>> <</button>></div> <</if>> <<if $playercars.includes("SUV")>> <div id="suv-btn" class="btn non-interacting"><<button "SUV - Owned">><</button>></div> <<elseif $player.money < 25000>> <div id="suv-btn" class="btn non-interacting"><<button "SUV ($25000)">><</button>></div> <<else>> <div id="suv-btn" class="btn"><<button "SUV ($25000)" "CarDealer_Sales">> <<set $player.money -= 25000>> <<set $carObject = {name: "SUV", quality: 3, price: 25000}>> <<run $playercars.push("SUV")>> <<include "Update_Travel_Mode_Buttons">> <<replace "#suv-btn">><div id="suv-btn" class="btn non-interacting"><<button "SUV - Owned">><</button>></div><</replace>> <</button>></div> <</if>> <<if $playercars.includes("Sports Car")>> <div id="sports-car-btn" class="btn non-interacting"><<button "Sports Car - Owned">><</button>></div> <<elseif $player.money < 50000>> <div id="sports-car-btn" class="btn non-interacting"><<button "Sports Car ($50000)">><</button>></div> <<else>> <div id="sports-car-btn" class="btn"><<button "Sports Car ($50000)" "CarDealer_Sales">> <<set $player.money -= 50000>> <<set $carObject = {name: "Sports Car", quality: 4, price: 50000}>> <<run $playercars.push("Sports Car")>> <<include "Update_Travel_Mode_Buttons">> <<replace "#sports-car-btn">><div id="sports-car-btn" class="btn non-interacting"><<button "Sports Car - Owned">><</button>></div><</replace>> <</button>></div> <</if>> <<if $playercars.includes("Supercar")>> <div id="supercar-btn" class="btn non-interacting"><<button "Supercar - Owned">><</button>></div> <<elseif $player.money < 100000>> <div id="supercar-btn" class="btn non-interacting"><<button "Supercar ($100000)">><</button>></div> <<else>> <div id="supercar-btn" class="btn"><<button "Supercar ($100000)" "LanaQuest1_Start">> <<set $player.money -= 100000>> <<set $carObject = {name: "Supercar", quality: 5, price: 100000}>> <<run $playercars.push("Supercar")>> <<include "Update_Travel_Mode_Buttons">> <<replace "#supercar-btn">><div id="supercar-btn" class="btn non-interacting"><<button "Supercar - Owned">><</button>></div><</replace>> <<run $player.characterEvents.registerEvent($player.info.id, "LanaQuest1", 1)>> <</button>></div> <</if>> </div> <div class="btn padding-top"><<button "Leave" "CarDealership">><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/Other/Diner.jpg">> <<timed 0.2s>> <div class="centre-text">Diner</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Leave" "Downtown">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> <<WorkBtn>> </div> </fieldset> </div> <<PeopleAround>> <<PoliceChecker>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/Downtown/Downtown.jpg">> <<timed 0.2s>> <div class="centre-text">Downtown</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn-container"> <div class="btn"><<button "Diner" "Diner">><</button>></div> <div class="btn"><<button "Police department" "PoliceStation">><</button>></div> <div class="btn"><<button "Car Dealership" "CarDealership">><</button>></div> </div> <div class="btn padding-top"><<Travel "Leave" "Campus" "padding-top">></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <<PoliceChecker>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/Downtown/Police Station/HoldingCell.jpg">> <<timed 0.2s>> <div class="centre-text">Holding Cell</div> <div class="centre-text" style="font-size:18px;">Days remaining in jail: $ArrestDay</div> <div class="centre-text" style="font-size:16px;">Each day spent in prison decreases a random attribute</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <<if $ArrestDay <= 0>> <div class="btn"><<button "Leave" "PoliceRoom">><</button>></div> <<else>> <div class="btn non-interacting"><<button "Leave">><</button>></div> <</if>> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<if $ArrestDay > 0>> <div class="btn"><<button "Wait" "WaitInPoliceCell">><</button>></div> <<if $dateTime.hours < 22 && $dateTime.hours > 6>> <div class="btn"><<button "Wait until night" "WaitUntilNight">><</button>></div> <</if>> <<if $dateTime.hours >= 22 || $dateTime.hours < 6>> <div class="btn"><<button "Sleep" "SleepInPoliceCell">><</button>></div> <</if>> <</if>> </div> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _curDay = $dateTime.day>> <<SpendTime 60>> <<if _curDay != $dateTime.day>> <<set _curDay = $dateTime.day>> <<if $ArrestDay > 0>> <<set $ArrestDay -= 1>> <</if>> <<goto "ReleaseCell_ExpWorsening">> <<else>> <<goto "HoldingCell">> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $cellEvent = false>> <<set $dateTime.minutes = 0>> <<set _curDay = $dateTime.day>> <<run while ($dateTime.hours < 22) { $dateTime.minutes += 60; /* if (random(0, 100) > 70) { $cellEvent = true; break; } */ } >> <<if _curDay != $dateTime.day>> <<set _curDay = $dateTime.day>> <<if $ArrestDay > 0>> <<set $ArrestDay -= 1>> <</if>> <<goto "ReleaseCell_ExpWorsening">> <<elseif $cellEvent>> <<goto "PoliceCellEvent">> <<else>> <<goto "HoldingCell">> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> /* <<run console.log("Cell Event")>> */ <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if $ArrestDay > 0>> <<set $ArrestDay -= 1>> <</if>> <<Sleep "ReleaseCell_ExpWorsening">> <</nobr>>
<<nobr>> <<include "UpdateAll">> <</nobr>>
<<nobr>> <<include "UpdateAll">> /* <div class="btn padding-top"><<button "Talk" "Passage">><</button>></div> <div class="btn padding-top"><<button "Talk" "Passage">><</button>></div> */ <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $policeDayPass = true>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _params = ['speech','intelligence','strength','vitality','dexterity','defense','dominance'].random()>> <<set _randomProgression = Random (-5, -20)>> <<SetCharProgression $player _params _randomProgression true>> /* <<set _randomIndex = Math.floor(Math.random() * _params.length)>> <<set _randomAttribute = _params[_randomIndex]>> */ <div class="btn padding-top"><<button "Continue" "HoldingCell">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/Downtown/Police Station/PoliceRoom.jpg">> <<timed 0.2s>> <div class="centre-text">Police Room</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> /* <div class="btn"><<button "Cell" "HoldingCell">><</button>></div> */ <div class="btn padding-top"><<button "Leave" "PoliceStation">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <<PoliceChecker>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/Downtown/Police Station/PoliceStation.jpg">> <<timed 0.2s>> <div class="centre-text">Police Department</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Police Room" "PoliceRoom">><</button>></div> <div class="btn padding-top"><<button "Leave" "Campus">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <<PoliceChecker>> <</timed>> <</nobr>>
<<nobr>> <<EachLoc>> <<SaveLocation>> <<SetBackground "Media/Locations/Neighborhood/OakStreet/Oak Street.jpg">> <<timed 0.2s>> <div class="centre-text">Oak Street</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Your Home" "Living_Room_PHome">><</button>></div> <div class="btn padding-top"><<button "Campus" "Campus">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <<PoliceChecker>> <</timed>> <</nobr>>
<<nobr>> <<EachLoc>> <<SaveLocation>> <<SetBackground "Media/Locations/Neighborhood/OakStreet/PlayerHome/player_bedroom.jpg">> <<timed 0.2s>> <div class="centre-text">Your Bedroom</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Living Room" "Living_Room_PHome">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> <<SleepButton>> </div> <<if $player.characterEvents.isEventRegistered($player.info.id, "SetupPC") == false>> <<if $player.inventory.hasItem("PC")>> <div class="btn padding-top"><<button "Set up PC" $player.info.currentLocation>> <<run $player.characterEvents.registerEvent($player.info.id, "SetupPC", 1)>> <<run $player.inventory.removeItem("PC", 1)>> <</button>></div> <<else>> <div class="btn non-interacting padding-top"><<button "Set up PC">><</button>></div> <</if>> <<else>> <div class="btn padding-top"><<button "PC" "ComputerSystem">><</button>></div> <</if>> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<EachLoc>> <<SaveLocation>> <<SetBackground "Media/Locations/Neighborhood/OakStreet/PlayerHome/Kyle_Bedroom.jpg">> <<timed 0.2s>> <div class="centre-text">Ethan's bedroom</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Living Room" "Living_Room_PHome">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<EachLoc>> <<SaveLocation>> <<SetBackground "Media/Locations/Neighborhood/OakStreet/PlayerHome/Sarah_Bedroom.jpg">> <<timed 0.2s>> <div class="centre-text">Sarah's bedroom</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Living Room" "Living_Room_PHome">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <<done>> <<done>><<LocationEvent 'Alice' 'AliceQuestChecker' "transition" "Media\\Characters\\QuestChars\\Alice\\Alice.png">><</done>> <</done>> <</timed>> <</nobr>>
<<nobr>> <<EachLoc>> <<SaveLocation>> <<SetBackground "Media/Locations/Neighborhood/OakStreet/PlayerHome/Amanda_bedroom.jpg">> <<timed 0.2s>> <div class="centre-text">Master bedroom</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Living Room" "Living_Room_PHome">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<EachLoc>> <<SaveLocation>> <<SetBackground "Media/Locations/Neighborhood/OakStreet/PlayerHome/bathroom.jpg">> <<timed 0.2s>> <div class="centre-text">Bathroom</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Living Room" "Living_Room_PHome">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<EachLoc>> <<SaveLocation>> <<SetBackground "Media/Locations/Neighborhood/OakStreet/PlayerHome/LivingRoom.jpg">> <<timed 0.2s>> <div class="centre-text">Living Room</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn-container"> <div class="btn"><<button "Your Bedroom" "Player_Bedroom_PHome">><</button>></div> <div class="btn"><<button "Kitchen" "Kitchen_PHome">><</button>></div> <div class="btn"><<button "Bathroom" "Bathroom_PHome">><</button>></div> <div class="btn"><<button "Ethan's bedroom" "Ethan_Bedroom_PHome">><</button>></div> <div class="btn"><<button "Sarah's bedroom" "Sarah_Bedroom_PHome">><</button>></div> <div class="btn"><<button "Master bedroom" "Amanda_Bedroom_PHome">><</button>></div> <div class="btn"><<button "Basement" "Basement_PHome">><</button>></div> </div> <div class="padding-top"> <div class="btn"><<button "Leave" "Oak_Street">><</button>></div> </div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <<if $player.characterEvents.isEventRegistered($player.info.id, "Robert_Event_0") == false>> <<run $player.characterEvents.registerEvent($player.info.id, "Robert_Event_0", 1)>> <<goto "Robert_Event_0">> <</if>> <<include "CheckRobert_Quest_1">> <</timed>> <</nobr>>
<<nobr>> <<EachLoc>> <<SaveLocation>> <<SetBackground "Media/Locations/Neighborhood/OakStreet/PlayerHome/kitchen.jpg">> <<timed 0.2s>> <div class="centre-text">Kitchen</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Living Room" "Living_Room_PHome">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<EachLoc>> <<SaveLocation>> <<SetBackground "Media/Locations/Neighborhood/OakStreet/PlayerHome/basement.jpg">> <<timed 0.2s>> <div class="centre-text">Basement</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Living Room" "Living_Room_PHome">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<if getQuestState("robert_quest_1") == undefined && getTaskState("robert_quest_1", "Get the serum") != 'completed' && getQuestState("mad_dog_quest1") == "completed" && $player.characterEvents.isEventRegistered($player.info.id, "Robert_Event_0") == true>> <<goto "Robert_Quest_01">> <<elseif getQuestState("robert_quest_1") == "active" && getTaskState("robert_quest_1", "Get the serum") == 'completed' && getQuestState("mad_dog_quest1") == "completed" && $player.characterEvents.isEventRegistered($player.info.id, "Robert_Event_0") == true>> <<if $player.characterEvents.isEventRegistered($player.info.id, "ChooseMaskSerum_Robert") == true>> <<include "ChangeRobertToAlpha">> <<if $player.gender() == "Male">> <<goto "Robert_Request_1_Male_Option1_Mask">> <<elseif $player.gender() == "Female">> <<goto "Robert_Request_1_Female_Option1_Mask">> <<else>> <<goto "Robert_Request_1_Shemale_Option1_Mask">> <</if>> <<elseif $player.characterEvents.isEventRegistered($player.info.id, "ChooseBimboSerum_Robert") == true>> <<include "ChangeRobertToBimbo">> <<if $player.gender() == "Male">> <<goto "Robert_Request_1_Male_Option2_Bimbo">> <<elseif $player.gender() == "Female">> <<goto "Robert_Request_1_Female_Option2_Bimbo">> <<else>> <<goto "Robert_Request_1_Shemale_Option2_Bimbo">> <</if>> <</if>> <</if>> <</nobr>>
<<nobr>> <<EachLoc>> <<SaveLocation>> <<SetBackground "Media/Locations/Other/Villa/Villa.jpg">> <div class="centre-text">Villa</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn-container"> <div class="btn"><<button "Villa Bedroom" "VillaBedroom">><</button>></div> <<Travel "Leave" "Campus">> </div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <</nobr>>
<<nobr>> <<EachLoc>> <<SaveLocation>> <<SetBackground "Media/Locations/Other/Villa/bedroom.jpg">> <div class="centre-text">Villa Bedroom</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn-container"> <<Travel "Leave" "Campus">> </div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/City/RedLightDistrict/Night Club/Elevator/Elevator_Door.png">> <<if getQuestState("damian_quest3") == undefined && $player.characterEvents.isEventRegistered($player.info.id, "NightClubElevatorAccess") == false>> <<Chat $player 'Some kind of weird elevator. Looks like the door opens with a keycard. Maybe the club owner can tell me where it leads—I should talk to him.'>> <<run _questList = [ { id: "damian_quest3", title: "Nightclub elevator", description: "I came across an elevator in the nightclub. I should find out where it goes.", state: "active", questType: "side", tasks: [ { description: "Ask the club owner about the elevator", completed: false } ], } ]>> <<CreateQuest _questList true>> <<elseif $player.characterEvents.isEventRegistered($player.info.id, "NightClubElevatorAccess") == true>> <div class="btn padding-top"><<button "Enter" "Elevator_NC">><</button>></div> <</if>> <div class="btn padding-top"><<button "Back" "NC_DanceFloor">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/City/RedLightDistrict/Night Club/Elevator/Elevator.png">> <div class="btn padding-top"><<button "1st floor" "Elevator_Basement_1_NC">><</button>></div> <div class="btn padding-top"><<button "Back" "NC_DanceFloor">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/City/RedLightDistrict/Night Club/Elevator/Elevator_basement.png">> <div class="centre-text">1st level basement</div> <div class="btn padding-top"><<button "Back" "Elevator_NC">><</button>></div> <div style="padding-top: 15px;" class="characters-grid" id="character-grid"></div> <<if getTaskState("damian_quest3", "Go down to the lower level and meet the first-floor manager") != 'completed' && getTaskState("damian_quest3", "Earn 50 nightclub reputation points") == 'completed'>> <<done>><<LocationEvent '1st floor manager' 'DamianQuest3_1stFloorManager_NC_Finish' "transition" "Media\\Characters\\QuestChars\\Other\\NC_Basement_FloorManager_1.png">><</done>> <<elseif getTaskState("damian_quest3", "Go down to the lower level and meet the first-floor manager") == 'completed'>> <<done>><<LocationEvent '1st floor manager' 'Elevator_Basement_1_FloorManager_NC' "transition" "Media\\Characters\\QuestChars\\Other\\NC_Basement_FloorManager_1.png">><</done>> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<DrawImage 'Media\\Characters\\QuestChars\\Other\\NC_Basement_FloorManager_1.png'>> <<if ($dateTime.hours >= 8 && $dateTime.hours < 22) || $player.money < 1000>> <div class="btn padding-top"><<button "Sex Battle ($1000)" "Elevator_Basement_1_TestSexFight_Choose">> <</button>></div> <<else>> <div class="btn padding-top non-interacting"><<button "Sex Battle ($1000)" "Elevator_Basement_1_TestSexFight_Choose">><</button>></div> <</if>> <div class="btn padding-top"><<button "Leave" "Elevator_Basement_1_NC">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<DrawImage 'Media\\Characters\\QuestChars\\Other\\NC_Basement_FloorManager_1.png'>> <<ChatWithoutNPC '1st floor manager' 'Media\\Characters\\QuestChars\\Other\\NC_Basement_FloorManager_1.png' 'Hey there, I haven’t seen you around before—you must be new. Let me fill you in on the vibe. This elevator takes you to different floors where Damian’s VIP guests can live out their wildest fantasies. Here on this floor, we host sex battles. The rules are simple: players place their bets, then the battle kicks off. First one to climax loses. We run tournaments every Saturday from 8 a.m. to 10 p.m., and trust me, it’s a hot time. Wanna join the fun? Just swing by during those hours, find me here, and I’ll get you signed up for the next round.'>> <<run completeTaskByQuestID("damian_quest3", "Go down to the lower level and meet the first-floor manager")>> <div class="btn padding-top"><<button "Continue" "Elevator_Basement_1_NC">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatMessage 'Choose your opponent.'>> <div class="btn padding-top"><<button "Female opponent" "Elevator_Basement_1_TestSexFight_Start">><<set $opponentGender = "Female">><</button>></div> <div class="btn padding-top"><<button "Male opponent" "Elevator_Basement_1_TestSexFight_Start">><<set $opponentGender = "Male">><</button>></div> <div class="btn padding-top"><<button "Shemale opponent" "Elevator_Basement_1_TestSexFight_Start">><<set $opponentGender = "Trans">><</button>></div> <div class="btn padding-top"><<button "Random" "Elevator_Basement_1_TestSexFight_Start">><<run $opponentGender = ["Male", "Female", "Trans"][Random(0,2)]>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "CharactersData">> <<run _character = CreateCharacter({ isPlayer: false, characterWork: "None", gender: $opponentGender, sexualPreference: "Bi", age: Random(18,30), }, true)>> <<unset $maleNames $femaleNames $surnames>> <<set $indexNPC = $Characters.indexOf(_character)>> <<set $interactionNpc = $Characters[$indexNPC]>> <<set _battleSetControls = {attack: false, seduce: true, items: false, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls 'Elevator_Basement_1_TestSexFight_Finish_Win' 'Elevator_Basement_1_TestSexFight_Finish_Loose' "SexFight">> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatMessage 'You won and earned $1,000.'>> <<set $player.money += 1000>> <<DeleteCharacter $interactionNpc>> <div class="btn padding-top"><<button "Continue" "Elevator_Basement_1_NC">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatMessage 'You lost and forfeited $1,000.'>> <<set $player.money -= 1000>> <<DeleteCharacter $interactionNpc>> <div class="btn padding-top"><<button "Continue" "Elevator_Basement_1_NC">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/RedLightDistrict/Night Club/NC_Bar.jpg">> <<timed 0.2s>> <div class="centre-text">Bar</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Dance Floor" "NC_DanceFloor">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> <<if $player.money >= 25>> <div class="btn"><<button "Drink ($25)" "NC_Bar_Drink">><</button>></div> <<else>> <div class="btn non-interacting"><<button "Drink ($25)">><</button>></div> <</if>> </div> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatMessage 'You go to the bar and have a shot'>> <<done>> <<include "CheckDrunkenness">> <</done>> <<set $player.money -= 25>> <<set $player.status.alcoholIntoxication.increase(Random(8,15))>> <div class="padding-top"> <div class="btn"><<button "Continue" $player.info.currentLocation>><</button>></div> </div> <</nobr>>
<<nobr>> <<if $player.status.alcoholIntoxication.value == $player.status.alcoholIntoxication.max>> <<SpendEnergy $player 20>> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/RedLightDistrict/Night Club/NC_DanceFloor.jpg">> <<timed 0.2s>> <div class="centre-text">Dance Floor</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn-container"> <div class="btn"><<button "Bar" "NC_Bar">><</button>></div> <<if $player.characterEvents.isEventRegistered($player.info.id, "MeetDamian") == false>> <div class="btn"><<button "VIP Lounge" "VIP_Section_NC">><</button>></div> <<else>> <div class="btn"><<button "VIP Lounge" "NC_VIP_Lounge">><</button>></div> <</if>> <div class="btn"><<button "Restroom" "NC_Restroom">><</button>></div> </div> <div class="btn padding-top"><<button "Leave" "RedLightDistrict">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> <<if $dateTime.hours >= 18 || $dateTime.hours < 6>> <div class="btn"><<button "Party" "Night_Club_Events">><</button>></div> <<else>> <div class="btn non-interacting" id="party-btn"><<button "Party">><</button>></div> <<done>> <<run addHoverTooltip('party-btn', 'The parties at the club run from 6 PM to 6 AM')>> <</done>> <</if>> <div class="btn"><<button "Elevator" "Elevator_Door_NC">><</button>></div> </div> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/RedLightDistrict/Night Club/NC_Restroom.jpg">> <<timed 0.2s>> <div class="centre-text">Restroom</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Dance Floor" "NC_DanceFloor">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/RedLightDistrict/Night Club/NC_VIP.jpg">> <<timed 0.2s>> <div class="centre-text">VIP Lounge</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Dance Floor" "NC_DanceFloor">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<EachLoc>> <<SaveLocation>> <<SetBackground "Media/Locations/City/RedLightDistrict/Basement.jpg">> <<timed 0.2s>> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <<if $player.dailyEvents.isEventRegistered($player.info.id, "BeingFeminizedByPimp") == false>> <<goto "DailyFeminization_Pimp">> <<elseif Random(0,100) > 87>> <<goto "Events_Pimp">> <<else>> <div class="centre-text">Your room</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn-container"> <div class="btn"><<button "Leave" "BrothelCorridor_Pimp">><</button>></div> </div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> <<SleepButton>> </div> </fieldset> </div> <div class="padding-top"> <<set _msgDebt = "Your debt: $" + $playerDebt>> <<ChatMessage _msgDebt>> </div> <</if>> <</timed>> <</nobr>>
<<nobr>> <<SaveLocation>> <<SetBackground "Media/Locations/City/RedLightDistrict/Brothel_corridor.jpg">> <<EachLoc>> <<timed 0.2s>> <div class="centre-text">Hooker Rooms</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn-container"> <div class="btn"><<button "Your room" "PimpRoom">><</button>></div> <div class="btn"><<button "Hall" "BrothelHall_Pimp">><</button>></div> <div class="btn"><<button "Feminization room" "FeminizationRoom_Pimp">><</button>></div> <div class="btn"><<button "Pimp's room" "PimpRoom_Pimp">><</button>></div> </div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<SaveLocation>> <<SetBackground "Media/Locations/City/RedLightDistrict/Brothel_Hall.jpg">> <<EachLoc>> <<timed 0.2s>> <div class="centre-text">Brothel Hall</div> <div class="centre-text" style="font-size: 20px;">You can work from 8 AM to 10 PM.</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn-container"> <div class="btn"><<button "Hooker Rooms" "BrothelCorridor_Pimp">><</button>></div> </div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> <<if $dateTime.hours >= 8 && $dateTime.hours < 22>> <div class="btn"><<button "Start Work" "WorkAsHooker">> <<include "HookerWordCalculateEarnings">> <</button>></div> <<else>> <div class="btn non-interacting"><<button "Start Work">><</button>></div> <</if>> </div> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<SaveLocation>> <<SetBackground "Media/Locations/City/RedLightDistrict/Feminization_room.jpg">> <<EachLoc>> <<timed 0.2s>> <div class="centre-text">Feminization Room</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn-container"> <div class="btn"><<button "Leave" "BrothelCorridor_Pimp">><</button>></div> </div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<SaveLocation>> <<SetBackground "Media/Locations/City/RedLightDistrict/pimp_room.jpg">> <<EachLoc>> <<timed 0.2s>> <div class="centre-text">Pimp's office</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn-container"> <div class="btn"><<button "Leave" "BrothelCorridor_Pimp">><</button>></div> </div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<include "PlayerBrothel_InitCheck">> <<include "UpdateAll">> <div class="centre-text">Casting - Hire New Workers</div> <<set _currentWorkers = $playerBrothel.prostitutes.length>> <<set _maxWorkers = $playerBrothel.rooms>> <<if _currentWorkers >= _maxWorkers>> <<ChatMessage "All your rooms are occupied! You need to buy more rooms or fire workers to hire new ones.">> <<set _msg = "Current workers: " + _currentWorkers + "/" + _maxWorkers>> <<ChatMessage _msg>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn neutral"><<button "← Back to Office" "PlayerBrothel_Office">><</button>></span> </div> <<else>> <<set _msg = "You can hire " + (_maxWorkers - _currentWorkers) + " more worker(s).">> <<ChatMessage _msg>> <<ChatMessage "Interview candidates to learn about them and test their skills.">> <div class="brothel-btn-container padding-top"> <span class="brothel-btn primary"><<button "💋 View Candidates" "BrothelCasting_ViewCandidates">><</button>></span> <span class="brothel-btn neutral"><<button "← Back to Office" "PlayerBrothel_Office">><</button>></span> </div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> /* Generate candidates only if not already generated */ <<if ndef $castingCandidates || $castingCandidates.length == 0>> <<include "CharactersData">> <<set $castingCandidates = []>> <<for _i = 0; _i < 3; _i++>> <<set _genderRoll = Random(0, 100)>> <<if _genderRoll < 50>> <<set _candidateGender = "Female">> <<elseif _genderRoll < 75>> <<set _candidateGender = "Trans">> <<else>> <<set _candidateGender = "Male">> <</if>> /* Generate personality type */ <<set _personalities = ["shy", "confident", "flirty", "desperate", "arrogant", "submissive", "cynical"]>> <<set _personality = _personalities.random()>> /* Set appropriate body parameters based on gender */ /* Gender is calculated: femininity = breastSize + buttSize + face */ /* Male: femininity <= 4, Shemale: femininity > 4, Female: has vagina */ <<if _candidateGender == "Male">> <<set _breastSize = 0>> <<set _buttSize = Random(0, 1)>> <<set _faceValue = 0>> <<set _vaginaSize = 0>> <<set _penisSize = Random(15, 40)>> <<set _clothesPref = "men">> <<elseif _candidateGender == "Trans">> <<set _breastSize = Random(2, 4)>> <<set _buttSize = Random(2, 4)>> <<set _faceValue = Random(4, 7)>> <<set _vaginaSize = 0>> <<set _penisSize = Random(10, 35)>> <<set _clothesPref = "women">> <<else>> <<set _breastSize = Random(1, 5)>> <<set _buttSize = Random(1, 5)>> <<set _faceValue = Random(3, 8)>> <<set _vaginaSize = Random(10, 40)>> <<set _penisSize = 0>> <<set _clothesPref = "women">> <</if>> /* Generate sex skills based on brothel level - higher level = better candidates */ <<set _skillBonus = Math.min(($playerBrothel.level || 1) * 5, 40)>> <<set _oralSkill = Math.min(Random(10, 40 + _skillBonus), 100)>> <<set _analSkill = Math.min(Random(5, 30 + _skillBonus), 100)>> <<if _candidateGender == "Female">> <<set _vaginalSkill = Math.min(Random(10, 40 + _skillBonus), 100)>> <<else>> <<set _vaginalSkill = 0>> <</if>> <<set _candidate = CreateCharacter({ isPlayer: false, characterWork: "Candidate", gender: _candidateGender, sexualPreference: "Bi", clothesPreference: _clothesPref, age: Random(18, 35), face: _faceValue, corruption: Random(1, 10), breastSize: _breastSize, buttSize: _buttSize, throatSize: Random(10, 40), anusSize: Random(5, 35), vaginaSize: _vaginaSize, penisSize: _penisSize, }, true)>> /* Store personality in character's saveData */ <<run _candidate.saveData.set("personality", _personality)>> /* Store sex skills */ <<run _candidate.saveData.set("oralSkill", _oralSkill)>> <<run _candidate.saveData.set("analSkill", _analSkill)>> <<run _candidate.saveData.set("vaginalSkill", _vaginalSkill)>> /* Generate limits based on corruption */ <<set _corruption = _candidate.attributes.corruption.value>> /* Oral limit - almost everyone allows */ <<if _corruption >= 2>> <<set _oralLimit = "yes">> <<set _oralReason = "">> <<else>> <<set _oralLimit = "reluctant">> <<set _oralReason = "Inexperienced">> <</if>> /* Vaginal limit */ <<if _candidateGender == "Female">> <<if _corruption >= 5>> <<set _vaginalLimit = "yes">> <<set _vaginalReason = "">> <<elseif _corruption >= 3>> <<set _vaginalLimit = "maybe">> <<set _vaginalReason = "Needs trust">> <<else>> <<set _vaginalLimit = "no">> <<set _vaginalReason = "Not ready">> <</if>> <<else>> <<set _vaginalLimit = "na">> <<set _vaginalReason = "N/A">> <</if>> /* Anal limit */ <<if _corruption >= 7>> <<set _analLimit = "yes">> <<set _analReason = "">> <<elseif _corruption >= 4>> <<set _analLimit = "maybe">> <<set _analReason = "Extra charge">> <<else>> <<set _analLimit = "no">> <<set _analReason = "Too painful">> <</if>> /* Creampie/Cum inside limit */ <<if _corruption >= 8>> <<set _creampieLimit = "yes">> <<set _creampieReason = "">> <<elseif _corruption >= 5>> <<set _creampieLimit = "maybe">> <<set _creampieReason = "With protection">> <<else>> <<set _creampieLimit = "no">> <<set _creampieReason = "Risk of pregnancy">> <</if>> /* Anilingus (rimjob giving) limit */ <<if _corruption >= 6>> <<set _anilingusLimit = "yes">> <<set _anilingusReason = "">> <<elseif _corruption >= 3>> <<set _anilingusLimit = "maybe">> <<set _anilingusReason = "If clean">> <<else>> <<set _anilingusLimit = "no">> <<set _anilingusReason = "Unhygienic">> <</if>> /* Cunnilingus (receiving) limit */ <<if _candidateGender == "Female">> <<if _corruption >= 3>> <<set _cunnilingusLimit = "yes">> <<set _cunnilingusReason = "">> <<else>> <<set _cunnilingusLimit = "maybe">> <<set _cunnilingusReason = "Shy">> <</if>> <<else>> <<set _cunnilingusLimit = "na">> <<set _cunnilingusReason = "N/A">> <</if>> /* Golden shower limit */ <<if _corruption >= 9>> <<set _goldenLimit = "yes">> <<set _goldenReason = "">> <<elseif _corruption >= 7>> <<set _goldenLimit = "maybe">> <<set _goldenReason = "Extra charge">> <<else>> <<set _goldenLimit = "no">> <<set _goldenReason = "Degrading">> <</if>> /* Store all limits */ <<run _candidate.saveData.set("limits", { oral: { status: _oralLimit, reason: _oralReason }, vaginal: { status: _vaginalLimit, reason: _vaginalReason }, anal: { status: _analLimit, reason: _analReason }, creampie: { status: _creampieLimit, reason: _creampieReason }, anilingus: { status: _anilingusLimit, reason: _anilingusReason }, cunnilingus: { status: _cunnilingusLimit, reason: _cunnilingusReason }, goldenShower: { status: _goldenLimit, reason: _goldenReason } })>> /* Generate mood (0-10) - affected by personality */ <<set _baseMood = Random(3, 8)>> <<if _personality == "Shy">> <<set _baseMood -= 1>> <<elseif _personality == "Nervous">> <<set _baseMood -= 2>> <<elseif _personality == "Friendly">> <<set _baseMood += 1>> <<elseif _personality == "Flirty">> <<set _baseMood += 2>> <<elseif _personality == "Confident">> <<set _baseMood += 1>> <</if>> <<set _baseMood = Math.max(0, Math.min(10, _baseMood))>> <<run _candidate.saveData.set("mood", _baseMood)>> <<run $castingCandidates.push(_candidate.info.id)>> <</for>> <<unset $maleNames $femaleNames $surnames>> <</if>> <div class="centre-text" style="font-size: 22px; color: #e91e63; text-shadow: 0 0 10px rgba(233, 30, 99, 0.5);">💋 Available Candidates</div> <<ChatMessage "Select a candidate to start an interview.">> <div class="item-shop-container" style="padding-top: 15px; gap: 40px; grid-template-columns: repeat(3, 1fr);"> <<for _i = 0; _i < $castingCandidates.length; _i++>> <<set _candId = $castingCandidates[_i]>> <<set _cand = $Characters.find(c => c.info.id == _candId)>> <<if _cand>> <<set _candIcon = _cand.getPhotoImage()>> <<set _candName = _cand.info.firstName + " " + _cand.info.secondName>> <<set _candAge = _cand.info.age.value>> <<set _candGender = _cand.gender()>> <<set _candFace = _cand.body.face.value>> <<set _candCorruption = _cand.attributes.corruption.value>> <<set _candPersonality = _cand.saveData.get("personality")>> /* Personality display with icon */ <<switch _candPersonality>> <<case "shy">> <<set _personalityDisplay = "Shy">> <<set _personalityColor = "#ff9999">> <<set _personalityIcon = "🥺">> <<case "confident">> <<set _personalityDisplay = "Confident">> <<set _personalityColor = "#64b5f6">> <<set _personalityIcon = "😎">> <<case "flirty">> <<set _personalityDisplay = "Flirty">> <<set _personalityColor = "#f48fb1">> <<set _personalityIcon = "😘">> <<case "desperate">> <<set _personalityDisplay = "Desperate">> <<set _personalityColor = "#ffcc80">> <<set _personalityIcon = "😰">> <<case "arrogant">> <<set _personalityDisplay = "Arrogant">> <<set _personalityColor = "#b39ddb">> <<set _personalityIcon = "😤">> <<case "submissive">> <<set _personalityDisplay = "Submissive">> <<set _personalityColor = "#80cbc4">> <<set _personalityIcon = "🙇">> <<case "cynical">> <<set _personalityDisplay = "Cynical">> <<set _personalityColor = "#b0bec5">> <<set _personalityIcon = "🙄">> <<default>> <<set _personalityDisplay = "Unknown">> <<set _personalityColor = "#888888">> <<set _personalityIcon = "❓">> <</switch>> /* Gender icon */ <<if _candGender == "Female">> <<set _genderIcon = "♀️">> <<set _genderColor = "#f48fb1">> <<elseif _candGender == "Male">> <<set _genderIcon = "♂️">> <<set _genderColor = "#64b5f6">> <<else>> <<set _genderIcon = "⚧️">> <<set _genderColor = "#ce93d8">> <</if>> /* Calculate hiring cost based on attractiveness and skills */ <<set _baseCost = 100>> <<set _faceCost = Math.floor(_candFace * 50)>> /* Get skills from saveData */ <<set _oralSkill = _cand.saveData.get("oralSkill") || 0>> <<set _analSkill = _cand.saveData.get("analSkill") || 0>> <<set _vagSkill = _cand.saveData.get("vaginalSkill") || 0>> <<set _avgSkill = Math.floor((_oralSkill + _analSkill + _vagSkill) / 3)>> <<set _skillCost = Math.floor(_avgSkill * 2)>> /* Get limits and add bonus for more permissive prostitutes */ <<set _limits = _cand.saveData.get("limits")>> <<set _limitBonus = 0>> <<if _limits>> <<if _limits.anal && _limits.anal.status == "yes">><<set _limitBonus += 20>><</if>> <<if _limits.creampie && _limits.creampie.status == "yes">><<set _limitBonus += 30>><</if>> <<if _limits.goldenShower && _limits.goldenShower.status == "yes">><<set _limitBonus += 25>><</if>> <</if>> <<set _hiringCost = _baseCost + _faceCost + _skillCost + _limitBonus>> /* Calculate bar widths and styles */ <<set _faceWidth = _candFace * 10>> <<set _corruptionWidth = _candCorruption * 10>> <<set _faceBarStyle = "background: linear-gradient(90deg, #e91e63, #f48fb1); width: " + _faceWidth + "%; height: 100%;">> <<set _corruptionBarStyle = "background: linear-gradient(90deg, #ff5722, #ff9800); width: " + _corruptionWidth + "%; height: 100%;">> <<set _genderBadgeStyle = "position: absolute; bottom: 0; right: 30%; background: " + _genderColor + "; border-radius: 50%; padding: 3px 6px; font-size: 14px;">> <<set _personalityBadgeStyle = "background: " + _personalityColor + "33; padding: 3px 10px; border-radius: 12px; font-size: 12px; color: " + _personalityColor + ";">> <<capture _cand _candIcon _candName _candAge _candGender _candFace _candCorruption _hiringCost _personalityDisplay _personalityColor _personalityIcon _genderIcon _genderColor _faceWidth _corruptionWidth _faceBarStyle _corruptionBarStyle _genderBadgeStyle _personalityBadgeStyle>> <div class="shop-item" style="background: linear-gradient(180deg, rgba(233, 30, 99, 0.15) 0%, rgba(33, 33, 33, 0.95) 100%); border: 2px solid #e91e63; border-radius: 15px; padding: 15px; box-shadow: 0 5px 20px rgba(233, 30, 99, 0.3); width: 260px; min-height: 420px;"> /* Avatar with glow */ <div style="text-align: center; position: relative;"> <img @src='_candIcon' alt='Avatar' style="width: 90px; height: 90px; border-radius: 50%; border: 3px solid #e91e63; box-shadow: 0 0 15px rgba(233, 30, 99, 0.5);"> <div @style="_genderBadgeStyle"><<print _genderIcon>></div> </div> /* Name */ <h3 style="color: #fff; text-align: center; margin: 10px 0 5px; font-size: 16px;"><<print _candName>></h3> /* Age and Personality badge */ <div style="display: flex; justify-content: center; gap: 10px; margin-bottom: 10px;"> <span style="background: rgba(255,255,255,0.1); padding: 3px 10px; border-radius: 12px; font-size: 12px; color: #aaa;"><<print _candAge>> y.o.</span> <span @style="_personalityBadgeStyle"><<print _personalityIcon>> <<print _personalityDisplay>></span> </div> /* Stats with progress bars - only visible with Candidate Insight perk */ <<if $playerBrothel.perks && $playerBrothel.perks.seeStats>> <div style="margin: 10px 0;"> <div style="display: flex; justify-content: space-between; font-size: 11px; color: #aaa; margin-bottom: 3px;"> <span>✨ Attractiveness</span> <span><<print _candFace>>/10</span> </div> <div style="background: rgba(255,255,255,0.1); height: 6px; border-radius: 3px; overflow: hidden;"> <div @style="_faceBarStyle"></div> </div> </div> <div style="margin: 8px 0;"> <div style="display: flex; justify-content: space-between; font-size: 11px; color: #aaa; margin-bottom: 3px;"> <span>🔥 Corruption</span> <span><<print _candCorruption>>/10</span> </div> <div style="background: rgba(255,255,255,0.1); height: 6px; border-radius: 3px; overflow: hidden;"> <div @style="_corruptionBarStyle"></div> </div> </div> <<else>> <div style="margin: 10px 0; padding: 15px; background: rgba(0,0,0,0.3); border-radius: 8px; text-align: center;"> <div style="color: #888; font-size: 11px;">🔒 Stats Hidden</div> <div style="color: #666; font-size: 10px; margin-top: 5px;">Learn "Candidate Insight" skill</div> </div> <</if>> /* Price tag */ <div style="background: linear-gradient(135deg, rgba(255, 215, 0, 0.2) 0%, rgba(255, 152, 0, 0.2) 100%); padding: 8px; border-radius: 8px; text-align: center; margin: 12px 0;"> <span style="color: #ffd700; font-size: 20px; font-weight: bold;">$<<print _hiringCost>></span> <div style="color: #aaa; font-size: 10px; margin-top: 3px;">per week</div> </div> /* Interview button */ <div style="margin-top: 5px;"> <span class="brothel-btn primary small"><<button "💬 INTERVIEW" "BrothelCasting_Interview">> <<set $selectedCandidate = _cand>> <<set $candidateHiringCost = _hiringCost>> <<set $interactionNpc = _cand>> <<set $indexNPC = $Characters.indexOf(_cand)>> <</button>></span> </div> </div> <</capture>> <</if>> <</for>> </div> <div class="brothel-btn-container padding-top"> <<if $player.money >= 50>> <span class="brothel-btn success"><<button "🔄 Refresh Candidates ($50)" "BrothelCasting_RefreshCandidates">><</button>></span> <<else>> <span class="brothel-btn disabled"><<button "🔄 Refresh ($50) - Not enough money">><</button>></span> <</if>> <span class="brothel-btn neutral"><<button "← Back" "BrothelCasting_Main">><</button>></span> </div> <</nobr>>
<<nobr>> /* Remove unsaved candidates from game */ <<if def $castingCandidates>> <<for _i = 0; _i < $castingCandidates.length; _i++>> <<set _candId = $castingCandidates[_i]>> <<set _candIndex = $Characters.findIndex(c => c.info.id == _candId)>> <<if _candIndex > -1 && !$playerBrothel.prostitutes.includes(_candId)>> <<run $Characters.splice(_candIndex, 1)>> <</if>> <</for>> <<unset $castingCandidates>> <</if>> <</nobr>>
<<nobr>> <<if $player.money >= 50>> <<set $player.money -= 50>> <<include "BrothelCasting_CleanupCandidates">> <<goto "BrothelCasting_ViewCandidates">> <<else>> <<ChatMessage "Not enough money to refresh candidates. You need $50.">> <div class="brothel-btn-container padding-top"> <span class="brothel-btn neutral"><<button "← Back" "BrothelCasting_ViewCandidates">><</button>></span> </div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _candidate = $selectedCandidate>> <<ShowNpcIcon _candidate>> <<set _candName = _candidate.info.firstName>> <<set _candCorruption = _candidate.attributes.corruption.value>> <<set _personality = _candidate.saveData.get("personality")>> /* Greeting based on personality */ <<switch _personality>> <<case "shy">> <<set _greetings = [ "H-hello... I'm here for the interview. I hope I'm not too nervous...", "Um... hi. I've never done anything like this before. Please be patient with me.", "Oh! You must be the boss. I... I'll try my best.", "*fidgets with hands* Hello... I hope I'm what you're looking for." ]>> <<case "confident">> <<set _greetings = [ "Hello. I'm here to discuss the position. I believe I have exactly what you need.", "Good day. Let's get straight to business - what do you need to know?", "I've done my research on this establishment. I think we can work well together.", "Thank you for seeing me. I'm confident I'll exceed your expectations." ]>> <<case "flirty">> <<set _greetings = [ "*winks* Well, hello there, boss. I hope you like what you see.", "Mmm, they didn't tell me the owner was so attractive. This might be more fun than I thought.", "*licks lips* I'm here for the position... among other things.", "Hi there, handsome. I've been looking forward to meeting you personally." ]>> <<case "desperate">> <<set _greetings = [ "Please, I really need this job. I'll do whatever it takes.", "Thank you so much for this opportunity. I won't let you down, I promise!", "I've been looking for work everywhere. Please, just give me a chance.", "I'll work harder than anyone else here. Just please hire me." ]>> <<case "arrogant">> <<set _greetings = [ "Finally. I was wondering when you'd see me. Let's make this quick.", "You're lucky I even showed up. I had other offers, you know.", "So, this is your establishment? It's... quaint. I suppose it will do.", "I'm here because I heard you pay well. Don't waste my time." ]>> <<case "submissive">> <<set _greetings = [ "Hello, sir. I'm here to serve in whatever capacity you need.", "I'll do anything you ask. Just tell me what you want.", "It's an honor to be considered. I'll follow any instructions you give.", "I'm yours to command, if you'll have me." ]>> <<case "cynical">> <<set _greetings = [ "Another interview, another brothel. Let's see if this one's any different.", "Look, I know how this works. What do you need to see?", "I've been in this business long enough. Skip the pleasantries - what's the deal?", "So, what's your angle? Every place has one." ]>> <<default>> <<set _greetings = ["Hello! I'm here for the job interview. What would you like to know?"]>> <</switch>> <<Chat _candidate _greetings.random()>> <<set _mood = _candidate.saveData.get("mood") || 5>> <div class="centre-text" style="font-size: 14px; padding-top: 10px;"> Interview with _candName <br><span style="color: #888; font-size: 12px;">Personality: <<print _personality.charAt(0).toUpperCase() + _personality.slice(1)>></span> </div> /* Mood display panel */ <<set _moodPercent = _mood * 10>> <<set _moodColor = _mood >= 7 ? "#4CAF50" : (_mood >= 4 ? "#ffc107" : "#f44336")>> <fieldset style="background: linear-gradient(135deg, rgba(255, 193, 7, 0.1) 0%, rgba(33, 33, 33, 0.9) 100%); border: 1px solid #ffc107; margin-top: 10px;"> <legend style="color: #ffca28;">😊 Mood</legend> <div style="padding: 10px;"> <div style="display: flex; align-items: center; gap: 15px;"> /* Mood bar */ <div style="flex-grow: 1;"> <div style="background: rgba(0, 0, 0, 0.3); border-radius: 10px; height: 20px; overflow: hidden; border: 1px solid #555;"> <div @style="'background: linear-gradient(90deg, ' + _moodColor + ' 0%, ' + _moodColor + '88 100%); height: 100%; width: ' + _moodPercent + '%; transition: width 0.3s;'"></div> </div> </div> /* Mood value */ <div @style="'color: ' + _moodColor + '; font-weight: bold; font-size: 16px; min-width: 40px; text-align: right;'"> <<print _mood>>/10 </div> </div> /* Mood description */ <div style="margin-top: 8px; font-size: 12px; color: #aaa; text-align: center;"> <<if _mood >= 9>> <<set _moodDesc = "Very happy and ready for anything!">> <<elseif _mood >= 7>> <<set _moodDesc = "In a good mood, open to suggestions">> <<elseif _mood >= 5>> <<set _moodDesc = "Neutral mood">> <<elseif _mood >= 3>> <<set _moodDesc = "A bit tense">> <<else>> <<set _moodDesc = "In a bad mood, skeptical">> <</if>> <<print _moodDesc>> </div> </div> </fieldset> <fieldset class="brothel-fieldset purple"> <legend>Questions</legend> <div class="brothel-btn-container"> <span class="brothel-btn info"><<button "📖 Tell me about yourself" "BrothelCasting_AskAboutSelf">><</button>></span> <span class="brothel-btn info"><<button "💼 Ask about experience" "BrothelCasting_AskExperience">><</button>></span> <span class="brothel-btn info"><<button "❤️ Ask about preferences" "BrothelCasting_AskPreferences">><</button>></span> <span class="brothel-btn info"><<button "🚫 Ask about limits" "BrothelCasting_AskLimits">><</button>></span> <span class="brothel-btn info"><<button "💑 Ask about relationships" "BrothelCasting_AskRelationship">><</button>></span> <span class="brothel-btn secondary"><<button "👀 View Body" "BrothelCasting_ViewBody">><</button>></span> <<if _mood < 10>> <span class="brothel-btn primary"><<button "💬 Improve Mood" "BrothelCasting_ImproveMood">><</button>></span> <<else>> <span class="brothel-btn disabled" title="Mood is already at maximum"><<button "💬 Improve Mood">><</button>></span> <</if>> /* Gift money option */ <<if _mood < 10 && $player.money >= 250>> <span class="brothel-btn success"><<button "💵 Gift $250 (+1 Mood)" "BrothelCasting_GiftMoney">><</button>></span> <<elseif _mood >= 10>> <span class="brothel-btn disabled" title="Mood is already at maximum"><<button "💵 Gift $250 (+1 Mood)">><</button>></span> <<else>> <span class="brothel-btn disabled" title="Not enough money ($250 required)"><<button "💵 Gift $250 (+1 Mood)">><</button>></span> <</if>> </div> </fieldset> <<if _mood >= 8>> <fieldset class="brothel-fieldset"> <legend>Test Skills</legend> <<set _playerGender = $player.gender()>> <<set _hasEnergy = $player.status.energy.value >= 10>> <<set _hasPotency = $player.status.potency.value >= 1>> <<set _canTest = _hasEnergy && _hasPotency>> <<set _candGender = _candidate.gender()>> <<set _playerHasVagina = $player.body.vaginaSize.value > 0>> <<if !_canTest>> <<if !_hasEnergy>> <p style="color: #ff6666; font-size: 12px; margin: 5px 0;">⚠ You're too tired to conduct physical tests (Energy < 10)</p> <<elseif !_hasPotency>> <p style="color: #ff6666; font-size: 12px; margin: 5px 0;">⚠ You're too exhausted for sex (Sex Stamina < 1)</p> <</if>> <</if>> <div class="brothel-btn-container"> /* Oral test - for Male candidates, player gives oral; for others, candidate gives oral */ <<if _candGender == "Male">> <<if _canTest>> <span class="brothel-btn primary"><<button "👄 Give Blowjob Test" "BrothelCasting_TestBlowjob">><</button>></span> <<else>> <span class="brothel-btn disabled" title="Not enough energy/stamina"><<button "👄 Give Blowjob Test">><</button>></span> <</if>> <<else>> <<if _canTest>> <span class="brothel-btn primary"><<button "👄 Request Blowjob Test" "BrothelCasting_TestBlowjob">><</button>></span> <<else>> <span class="brothel-btn disabled" title="Not enough energy/stamina"><<button "👄 Request Blowjob Test">><</button>></span> <</if>> <</if>> /* Vaginal test - for Female candidates, player fucks them; for Male candidates, player receives (if has vagina) */ <<if _candGender == "Female">> <<if _canTest>> <span class="brothel-btn primary"><<button "💕 Request Vaginal Test" "BrothelCasting_TestVaginal">><</button>></span> <<else>> <span class="brothel-btn disabled" title="Not enough energy/stamina"><<button "💕 Request Vaginal Test">><</button>></span> <</if>> <<elseif _candGender == "Male">> <<if _playerHasVagina>> <<if _canTest>> <span class="brothel-btn primary"><<button "💕 Receive Vaginal Test" "BrothelCasting_TestVaginal_ReceiveFromMale">><</button>></span> <<else>> <span class="brothel-btn disabled" title="Not enough energy/stamina"><<button "💕 Receive Vaginal Test">><</button>></span> <</if>> <<else>> <span class="brothel-btn disabled" title="You don't have a vagina"><<button "💕 Vaginal Test (N/A)">><</button>></span> <</if>> <<else>> /* Shemale - no vaginal */ <span class="brothel-btn disabled" title="Not available for this gender"><<button "💕 Vaginal Test (N/A)">><</button>></span> <</if>> /* Anal test - for Male candidates, player receives; for others, candidate receives */ <<if _candGender == "Male">> <<if _canTest>> <span class="brothel-btn primary"><<button "🍑 Receive Anal Test" "BrothelCasting_TestAnal_ReceiveFromMale">><</button>></span> <<else>> <span class="brothel-btn disabled" title="Not enough energy/stamina"><<button "🍑 Receive Anal Test">><</button>></span> <</if>> <<else>> <<if _canTest>> <span class="brothel-btn primary"><<button "🍑 Request Anal Test" "BrothelCasting_TestAnal">><</button>></span> <<else>> <span class="brothel-btn disabled" title="Not enough energy/stamina"><<button "🍑 Request Anal Test">><</button>></span> <</if>> <</if>> </div> </fieldset> <<else>> <fieldset class="brothel-fieldset" style="opacity: 0.7;"> <legend>Test Skills 🔒</legend> <div style="padding: 15px; text-align: center;"> <div style="color: #ffa726; font-size: 14px; margin-bottom: 10px;">⚠ Skills Testing Unavailable</div> <div style="color: #888; font-size: 12px;">Candidate's mood is too low for demonstration</div> <div style="color: #aaa; font-size: 11px; margin-top: 5px;">Current Mood: <<print _mood>>/10 | Required: 8+</div> <div style="color: #666; font-size: 11px; margin-top: 8px;">Improve their mood with conversation or gifts</div> </div> </fieldset> <</if>> <fieldset class="brothel-fieldset purple"> <legend>Decision</legend> <<set _hireBtnText = "✓ Hire ($" + $candidateHiringCost + "/week)">> <<set _noMoneyBtnText = "Not enough money ($" + $candidateHiringCost + "/week)">> <<set _canHire = _mood >= 7>> /* Haggle option - Negotiator perk */ <<set _hasHagglePerk = $playerBrothel.perks && $playerBrothel.perks.haggle>> <<set _alreadyHaggled = $selectedCandidate.saveData.get("haggled")>> <<if _hasHagglePerk && !_alreadyHaggled>> <div style="background: rgba(255, 152, 0, 0.2); padding: 10px; border-radius: 8px; margin-bottom: 10px; border: 1px solid #ff9800;"> <div style="color: #ffc107; font-size: 12px; margin-bottom: 8px;">💬 Negotiator Perk Available</div> <span class="brothel-btn info small"><<button "Try to haggle (30% off)" "BrothelCasting_Haggle">><</button>></span> </div> <<elseif _hasHagglePerk && _alreadyHaggled>> <div style="background: rgba(100, 100, 100, 0.2); padding: 10px; border-radius: 8px; margin-bottom: 10px; border: 1px solid #666;"> <div style="color: #888; font-size: 12px;">💬 Already attempted negotiation</div> </div> <</if>> <<if !_canHire>> <div style="background: rgba(255, 152, 0, 0.15); padding: 10px; border-radius: 8px; margin-bottom: 10px; border: 1px solid #ff9800;"> <div style="color: #ffa726; font-size: 12px;">⚠ Candidate's mood is too low to accept your offer (Mood: <<print _mood>>/10, need: 7+)</div> <div style="color: #888; font-size: 11px; margin-top: 5px;">Improve their mood with conversation or gifts</div> </div> <</if>> <div class="brothel-btn-container"> <<if !_canHire>> <span class="brothel-btn disabled" title="Mood too low (<<print _mood>>/7)"><<button _hireBtnText>><</button>></span> <<elseif $player.money >= $candidateHiringCost && $playerBrothel.prostitutes.length < $playerBrothel.rooms>> <span class="brothel-btn success"><<button _hireBtnText "BrothelCasting_HireComplete">><</button>></span> <<elseif $playerBrothel.prostitutes.length >= $playerBrothel.rooms>> <span class="brothel-btn disabled"><<button "No room available">><</button>></span> <<else>> <span class="brothel-btn disabled"><<button _noMoneyBtnText>><</button>></span> <</if>> <span class="brothel-btn danger"><<button "✗ Reject" "BrothelCasting_Reject">><</button>></span> <span class="brothel-btn neutral"><<button "← Back to candidates" "BrothelCasting_ViewCandidates">> <<unset $selectedCandidate $candidateHiringCost>> <</button>></span> </div> </fieldset> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _candidate = $selectedCandidate>> <<ShowNpcIcon _candidate>> <<set _candName = _candidate.info.firstName>> <<set _personality = _candidate.saveData.get("personality")>> <<set _candAge = _candidate.info.age.value>> /* Generate backstory if not already generated */ <<if !_candidate.saveData.has("backstory")>> /* Childhood stories based on personality */ <<switch _personality>> <<case "shy">> <<set _childhoodOptions = [ "I grew up in a small town. I was always the quiet kid, never really fit in.", "My childhood was lonely. I spent most of my time reading books alone in my room.", "I had a difficult relationship with my parents. They never really understood me.", "I was bullied a lot growing up. It made me afraid to speak up.", "My family was poor. We didn't have much, but my grandmother was kind to me." ]>> <<case "confident">> <<set _childhoodOptions = [ "I was raised to believe in myself. My parents always supported my ambitions.", "I grew up competing in sports and academics. I learned early that hard work pays off.", "My family had high expectations, and I always exceeded them.", "I was popular in school. People naturally gravitated towards me.", "My parents were successful business owners. I learned confidence from watching them." ]>> <<case "flirty">> <<set _childhoodOptions = [ "I was always a charmer, even as a kid. I knew how to get what I wanted.", "I grew up with lots of siblings. I learned early how to stand out and get attention.", "My parents spoiled me. I was their little princess.", "I discovered my... effect on people pretty early. It made life interesting.", "I was a cheerleader, prom queen material. Always in the spotlight." ]>> <<case "desperate">> <<set _childhoodOptions = [ "I grew up in poverty. We never had enough food on the table.", "My parents abandoned me when I was young. I bounced between foster homes.", "We lost everything when I was a kid. My father's business failed.", "I grew up in a broken home. Violence was normal.", "I had to work from a young age to help my family survive." ]>> <<case "arrogant">> <<set _childhoodOptions = [ "I was born into a wealthy family. We had everything money could buy.", "I was always the smartest kid in class. Teachers praised me constantly.", "My parents told me I was special, destined for greatness.", "I grew up with servants and private tutors. Only the best for me.", "I was better than everyone else, and I knew it from the start." ]>> <<case "submissive">> <<set _childhoodOptions = [ "I grew up in a strict household. Obedience was expected, not requested.", "My parents were very controlling. I learned to follow rules without question.", "I was taught that my purpose was to serve others and make them happy.", "I was a quiet, obedient child. Never caused any trouble.", "My family had traditional values. Women were expected to be submissive." ]>> <<case "cynical">> <<set _childhoodOptions = [ "I learned early that life isn't fair. My parents divorced when I was five.", "I grew up seeing the worst in people. Trust was never an option.", "My childhood was fine, I guess. Nothing special either way.", "I was raised by a single mother who worked three jobs. Reality hit me early.", "I saw my father's dreams crushed by the system. That teaches you things." ]>> <<default>> <<set _childhoodOptions = ["I had a normal childhood. Nothing too exciting."]>> <</switch>> /* Teenage years based on personality */ <<switch _personality>> <<case "shy">> <<set _teenOptions = [ "In my teens, I discovered I could express myself through art and writing.", "High school was hard. I barely talked to anyone.", "I had one close friend who understood me. We're still in touch.", "I spent my teenage years online, where I felt more comfortable.", "I developed severe anxiety in my teens. It still affects me." ]>> <<case "confident">> <<set _teenOptions = [ "I was captain of the debate team. Learned to argue my point.", "In high school, I already knew I'd be successful at whatever I chose.", "I dated a lot but never seriously. I was focused on my future.", "I started my first business at 16. It failed, but I learned a lot.", "College was when I really came into my own. Made connections that matter." ]>> <<case "flirty">> <<set _teenOptions = [ "I had my first boyfriend at 14. Or girlfriend. I experimented a lot.", "High school was a blur of parties and first experiences.", "I was voted 'Most Likely to Break Hearts'. They weren't wrong.", "I discovered my sexuality early. Let's just say I explored it thoroughly.", "I was every parent's worst nightmare. But I had so much fun." ]>> <<case "desperate">> <<set _teenOptions = [ "I dropped out of school to work full-time. Education was a luxury we couldn't afford.", "My teenage years were spent surviving, not living.", "I got into trouble with the wrong crowd. Made mistakes I regret.", "I ran away from home at 16. The streets were harsh but felt safer.", "I had to grow up fast. There was no room for being a kid." ]>> <<case "arrogant">> <<set _teenOptions = [ "I went to the best private schools. Only associated with the right people.", "I was already modeling in my teens. Everyone wanted me.", "College was boring. I was smarter than most of my professors.", "I traveled the world as a teenager. Most people never see what I've seen.", "I had everything handed to me. Because I deserved it." ]>> <<case "submissive">> <<set _teenOptions = [ "I had my first relationship at 17. They controlled everything. I liked it.", "I always followed the rules. Never rebelled like other teens.", "I discovered I enjoyed being told what to do. It felt natural.", "I dated someone older who taught me my... place. I was grateful.", "My teens were about learning to serve others better." ]>> <<case "cynical">> <<set _teenOptions = [ "I got my first job at 15. Learned quickly that bosses exploit workers.", "High school politics taught me that people are selfish at their core.", "I dated someone who cheated. Lost my ability to trust.", "I watched friends get into drugs and crime. Some didn't make it out.", "By 18, I'd seen enough to know how the world really works." ]>> <<default>> <<set _teenOptions = ["My teenage years were pretty typical."]>> <</switch>> /* How they ended up here based on personality */ <<switch _personality>> <<case "shy">> <<set _reasonOptions = [ "I needed money and... this seemed like something I could do quietly. Behind closed doors.", "A friend suggested it. Said I might... come out of my shell.", "I couldn't find regular work. Too anxious for customer service. This is different somehow.", "I heard you treat your workers well. I need a safe place.", "I'm tired of being invisible. Maybe here I can be... wanted." ]>> <<case "confident">> <<set _reasonOptions = [ "I analyzed the industry. The earning potential is significant if managed correctly.", "I'm good at what I do. This is just another skill to monetize.", "I want to build capital for my real goals. This is a stepping stone.", "I'm in control here. I decide my worth. That appeals to me.", "I've always been comfortable with my sexuality. Why not profit from it?" ]>> <<case "flirty">> <<set _reasonOptions = [ "I love sex. I love attention. Why not get paid for it?", "This is basically what I've been doing for free anyway!", "My last boyfriend said I should just be a prostitute. So here I am. Thanks, jerk.", "I've always been a natural at... pleasing people. Time to make it official.", "The nightlife got boring. I need something more... structured. And lucrative." ]>> <<case "desperate">> <<set _reasonOptions = [ "I have debts. Bad ones. This is the only way I can pay them off.", "My family needs money for medical bills. I'll do anything.", "I was on the streets. This is better than what I was doing before.", "I have nothing. No education, no skills. This is all I have.", "Someone threatened my family. I need money. Fast." ]>> <<case "arrogant">> <<set _reasonOptions = [ "I lost everything due to circumstances beyond my control. This is temporary.", "I'm slumming it while I rebuild my empire. Don't get used to me.", "Rich men want to pay for my company. I'm finally charging what I'm worth.", "This is research for a book I'm writing. Or a documentary. Something.", "Let's just say bad investments happened. I'll be back on top soon." ]>> <<case "submissive">> <<set _reasonOptions = [ "I was sent here by someone I serve. I do as I'm told.", "I've always wanted to serve. This is the purest form of that.", "I need structure. Rules. Someone to tell me what to do. This provides that.", "My previous master released me. I need a new purpose.", "I want to belong to someone. Multiple someones. I want to be used." ]>> <<case "cynical">> <<set _reasonOptions = [ "Regular jobs don't pay enough. At least this is honest about what it is.", "I've done worse things for less money. This is just business.", "Society failed me. Now I play by my own rules.", "Bills don't pay themselves. Dreams don't come true. But money is real.", "Everyone sells themselves somehow. I'm just more direct about it." ]>> <<default>> <<set _reasonOptions = ["I need the money and this seemed like a good opportunity."]>> <</switch>> /* Generate the story */ <<set _childhood = _childhoodOptions.random()>> <<set _teens = _teenOptions.random()>> <<set _reason = _reasonOptions.random()>> /* Add feminization story for shemale/female NPCs */ <<set _feminizationStory = "">> <<set _wasFeminizedByPlayer = _candidate.saveData.has("feminizedByPlayer") && _candidate.saveData.get("feminizedByPlayer") == true>> <<if _wasFeminizedByPlayer>> /* Player feminized this candidate during casting */ <<set _feminizedLevel = _candidate.saveData.get("feminized")>> <<if _feminizedLevel == "shemale">> <<switch _personality>> <<case "shy">> <<set _feminizationStory = " *blushes deeply* A-and... you know... you convinced me to undergo the transformation. To become a shemale. I was scared at first, but... *touches new breasts* I think it was the right choice. Thank you for believing in me.">> <<case "confident">> <<set _feminizationStory = " And as you know, you offered me the chance to transform. I weighed the pros and cons and decided it was a smart career move. The results speak for themselves. Best investment I've made.">> <<case "flirty">> <<set _feminizationStory = " *giggles* And then YOU came along and offered to make me even prettier! *bounces* I love my new curves! And I still have my fun parts down there. Win-win, right boss?">> <<case "desperate">> <<set _feminizationStory = " A-and you... you gave me a chance to transform. I would have done anything to get this job, and now... *looks at body* I'm actually grateful. This is who I was meant to be. Thank you so much!">> <<case "arrogant">> <<set _feminizationStory = " Then you proposed the feminization. I considered it beneath me at first, but I must admit... the results are impressive. I make a stunning shemale. As expected.">> <<case "submissive">> <<set _feminizationStory = " And then you, my future master, offered to reshape me. I obeyed without hesitation. You knew what was best for me. *kneeling* This body belongs to you now.">> <<case "cynical">> <<set _feminizationStory = " Then you made the feminization offer. I figured, why not? It's just business. New body, new opportunities. At least you were upfront about what you wanted.">> <<default>> <<set _feminizationStory = " And then you offered to help me transform. It was a big decision, but I trusted you. Now I'm a shemale, and honestly, it feels right.">> <</switch>> <<else>> /* Full female transformation */ <<switch _personality>> <<case "shy">> <<set _feminizationStory = " *voice trembles* And... you helped me become a real woman. Completely. I was so nervous, but... *looks down at body* I finally feel like myself. Thank you for giving me this gift.">> <<case "confident">> <<set _feminizationStory = " And you facilitated my complete transformation. I'm now fully female. It was a calculated decision, and I'm satisfied with the outcome. A whole new chapter begins.">> <<case "flirty">> <<set _feminizationStory = " *twirls excitedly* And YOU turned me into a real girl! Look at me! *giggles* I can't believe I used to be a man. This is SO much better! Thank you, boss~">> <<case "desperate">> <<set _feminizationStory = " You... you gave me a completely new body. A new life. I'm a woman now, fully. I can never repay you for this. I'll work so hard for you!">> <<case "arrogant">> <<set _feminizationStory = " Then you offered full feminization. I accepted because I knew I would be exceptional in any form. I was right. I make a magnificent woman.">> <<case "submissive">> <<set _feminizationStory = " You remade me entirely. I'm a woman now because you wished it. *bowing* My old self is gone. I exist only to serve you in this new form.">> <<case "cynical">> <<set _feminizationStory = " You offered to make me fully female. I thought about it, weighed my options, and agreed. No point in half measures. It's done now, and I'm fine with it.">> <<default>> <<set _feminizationStory = " And you helped me become a complete woman. It was a life-changing decision, and I'm grateful you gave me that opportunity.">> <</switch>> <</if>> <<elseif _candidate.gender() == "Shemale">> /* Original shemale - standard backstory */ <<set _feminizationOptions = [ "I always felt like I was born in the wrong body. When I was 18, I finally started transitioning. Hormones changed everything - my skin, my curves, my whole outlook on life. I kept what makes me special down there though... clients love that.", "My journey to becoming who I am started young. I knew I was different. After high school, I saved every penny for hormones and surgery. Now I'm the woman I was always meant to be... with a little extra surprise.", "I was raised as a boy, but I never felt like one. A wealthy patron helped me transition in exchange for... companionship. It was worth it. Now I'm finally comfortable in my skin.", "The streets taught me that being different can be an advantage. I started hormones when I was 19. The transformation attracted a certain clientele. Now it's my biggest asset.", "I discovered myself through the underground scene. The hormones, the surgeries... each step brought me closer to who I really am. A woman, yes, but with something extra that many find... irresistible.", "My ex-boyfriend encouraged me to explore my feminine side. What started as roleplay became my reality. I transitioned fully, except for one part. It's made me very popular in certain circles." ]>> <<set _feminizationStory = " " + _feminizationOptions.random()>> <</if>> <<set _fullStory = _childhood + " " + _teens + _feminizationStory + " And that's how I ended up here. " + _reason>> <<run _candidate.saveData.set("backstory", _fullStory)>> <<else>> <<set _fullStory = _candidate.saveData.get("backstory")>> <</if>> /* Add personality-specific intro */ <<switch _personality>> <<case "shy">> <<set _intro = ["*looks down nervously* You want to know about me...? Okay... *takes a deep breath*", "*fidgets with hands* My story isn't very interesting... but if you want to hear it...", "*quietly* I don't usually talk about myself... but I'll try..."].random()>> <<case "confident">> <<set _intro = ["Of course. My background speaks for itself.", "Happy to share. I have nothing to hide.", "Let me tell you about the person you're about to hire."].random()>> <<case "flirty">> <<set _intro = ["*giggles* Ooh, getting personal! I like it.", "*winks* Want to know my secrets? How naughty...", "*playfully* Buy me a drink first! Just kidding. Here's my story..."].random()>> <<case "desperate">> <<set _intro = ["*takes a shaky breath* Okay... I'll tell you everything.", "*voice trembling* I have nothing to hide at this point...", "*sniffles* It's not a happy story... but you should know."].random()>> <<case "arrogant">> <<set _intro = ["*sighs* Fine. I suppose you need to understand who you're dealing with.", "*smugly* My story is more impressive than most candidates, I assure you.", "Very well. Prepare to be impressed by my background."].random()>> <<case "submissive">> <<set _intro = ["Yes, sir. I'll tell you everything about myself.", "*obediently* Whatever you want to know, I'll share.", "*head bowed* My life is an open book for you."].random()>> <<case "cynical">> <<set _intro = ["*shrugs* Fine. Though I'm not sure what you're expecting.", "Sure, why not. Here's the sob story.", "*sarcastically* Oh, story time? Alright, gather 'round."].random()>> <<default>> <<set _intro = "Sure, I can tell you about myself.">> <</switch>> <<Chat _candidate _intro>> <<Chat _candidate _fullStory>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Continue interview" "BrothelCasting_Interview">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _candidate = $selectedCandidate>> <<ShowNpcIcon _candidate>> <<set _corruption = _candidate.attributes.corruption.value>> <<set _candName = _candidate.info.firstName>> <<set _personality = _candidate.saveData.get("personality")>> /* Experience responses based on personality AND corruption level */ <<switch _personality>> <<case "shy">> <<if _corruption >= 8>> <<set _responses = [ "*blushes deeply* I... I've actually done quite a lot. More than you might think looking at me...", "People always underestimate me because I'm quiet. But I've learned... many things over the years.", "*looks away* I'm more experienced than I seem. I just don't like to brag about it..." ]>> <<elseif _corruption >= 5>> <<set _responses = [ "I've worked a few places... *fidgets* It was okay, I guess. I learned the basics.", "Um, I have some experience. Clients usually... they liked how gentle I was.", "*quietly* I've done this before. Not a lot, but... I know what I'm doing." ]>> <<elseif _corruption >= 3>> <<set _responses = [ "I... I've only done this a couple of times. *voice trembles* Is that okay?", "I'm still learning... *twirls hair nervously* But I really want to get better.", "Not much, honestly... *looks down* But I'm a fast learner, I promise." ]>> <<else>> <<set _responses = [ "*barely audible* This is... this would be my first time doing this kind of work...", "I've never... *face turns red* I don't have any experience at all. I'm sorry...", "*voice cracks* I don't know what I'm doing here. I just really need the money..." ]>> <</if>> <<case "confident">> <<if _corruption >= 8>> <<set _responses = [ "I've worked at three different establishments over the past five years. My client satisfaction rate was exceptional.", "Let me be direct - I'm a professional. I've mastered every technique you can name and invented a few of my own.", "Experience? I could write a book. Actually, several books. All bestsellers, if you know what I mean." ]>> <<elseif _corruption >= 5>> <<set _responses = [ "I have solid experience. I know what clients want and how to deliver it efficiently.", "I've been doing this long enough to know my strengths and how to use them.", "Enough experience to know this is what I'm good at. You won't be disappointed." ]>> <<elseif _corruption >= 3>> <<set _responses = [ "I'm newer to the industry, but I learn quickly and apply myself fully.", "What I lack in experience, I make up for in dedication and professionalism.", "I may not have years of experience, but I have natural talent and drive." ]>> <<else>> <<set _responses = [ "I'm entering this field fresh, but I've done my research and I'm prepared.", "No prior experience, but everyone starts somewhere. I intend to excel.", "This is new territory for me, but I approach every challenge with determination." ]>> <</if>> <<case "flirty">> <<if _corruption >= 8>> <<set _responses = [ "*traces finger down your arm* Mmm, years and years of practice. Want me to show you what I've learned?", "Let's just say I've made a LOT of people very, very happy. *bites lip* Including myself.", "Oh honey, I've been in more beds than I can count. And I remember every single trick I picked up." ]>> <<elseif _corruption >= 5>> <<set _responses = [ "*winks* I've had my fair share of... adventures. Each one taught me something new.", "Enough experience to know exactly what I'm doing. *leans closer* Want a demonstration?", "*giggles* I've been around the block a few times. It's always been... fun." ]>> <<elseif _corruption >= 3>> <<set _responses = [ "I'm still exploring... *playful smile* But I've had some very educational encounters.", "*twirls hair* Not super experienced yet, but I'm a natural. Can't you tell?", "I'm learning as I go... *touches your hand* Maybe you could teach me more?" ]>> <<else>> <<set _responses = [ "*bats eyelashes* I'm practically a virgin in this business. But I'm SO eager to learn...", "New to this, but... *moves closer* I have a feeling you could show me the ropes?", "Zero experience... *pouts cutely* But my body was made for this. Don't you think?" ]>> <</if>> <<case "desperate">> <<if _corruption >= 8>> <<set _responses = [ "I've done everything, I swear! Whatever you need, I can do it. I've been doing this for years!", "Tons of experience! I worked at the best places until... well, things happened. Please, I need this!", "I know everything there is to know. Every technique, every trick. Just give me a chance!" ]>> <<elseif _corruption >= 5>> <<set _responses = [ "I have experience! Maybe not a lot, but enough! I know what I'm doing, I promise!", "I've done this before, really! I'll work twice as hard as anyone else!", "Some experience, yes! And I'll learn anything else you need. Just please consider me!" ]>> <<elseif _corruption >= 3>> <<set _responses = [ "I-I don't have much experience, but I'll learn! I'll work so hard, you'll see!", "Not a lot, but that means I'm trainable! Please, I really need this opportunity!", "I'm newer to this, but I'll do anything. Literally anything. Just tell me what you need!" ]>> <<else>> <<set _responses = [ "None... but please, I'll learn! I have nowhere else to go. I'll do whatever you want!", "I've never done this before, but I'm desperate! I'll be the best worker you've ever had!", "No experience at all... *tears welling up* But I'll do anything. Please, just hire me..." ]>> <</if>> <<case "arrogant">> <<if _corruption >= 8>> <<set _responses = [ "More experience than anyone else you'll interview. I've worked at establishments you couldn't afford to enter.", "I've been doing this since before it was trendy. Everyone else is an amateur compared to me.", "My experience? Legendary. Ask anyone in the district. Actually, don't bother - just hire me." ]>> <<elseif _corruption >= 5>> <<set _responses = [ "I have adequate experience. More than enough for a place like this, anyway.", "I've worked at better establishments than this one. I know exactly what I'm doing.", "Sufficient experience to be overqualified for this position, if I'm honest." ]>> <<elseif _corruption >= 3>> <<set _responses = [ "Not much, but I don't need it. Some people are just naturally gifted. I'm one of them.", "Limited experience, but with my looks and talents, does it really matter?", "I'm relatively new, but I'm a quick study. Besides, experience is overrated when you have raw talent." ]>> <<else>> <<set _responses = [ "None yet. But frankly, someone with my assets doesn't need experience.", "This is my first time, but I'm already better than most veterans. You'll see.", "No experience. So what? Look at me. Clients will be fighting over me regardless." ]>> <</if>> <<case "submissive">> <<if _corruption >= 8>> <<set _responses = [ "I've served many masters before, and I've learned to fulfill any desire they have.", "Years of experience obeying and pleasing. I exist only to serve, and I've perfected it.", "I've done everything that's ever been asked of me. Everything. And I'll do the same for you." ]>> <<elseif _corruption >= 5>> <<set _responses = [ "I have some experience serving others. I always do exactly as I'm told.", "I've learned to please and obey. Whatever you need, I will provide.", "Enough experience to know my place. I'm here to serve, nothing more." ]>> <<elseif _corruption >= 3>> <<set _responses = [ "Not much experience yet, but I'm eager to learn. Please teach me how to serve you.", "I'm still learning, but I want to be useful. I'll do anything you command.", "Limited experience... but I'm obedient. Just tell me what you want me to do." ]>> <<else>> <<set _responses = [ "No experience... but I want to learn to serve. Will you show me how?", "I've never done this before. Please be patient with me as I learn to please you.", "None at all... but I'm ready to submit and learn. I'll be whatever you need me to be." ]>> <</if>> <<case "cynical">> <<if _corruption >= 8>> <<set _responses = [ "Too much experience. I've seen it all, done it all. Nothing surprises me anymore.", "Years in the business. Multiple establishments, each one the same as the last. At least the money was decent.", "Extensive experience. I know every trick in the book, and I've seen how this industry really works." ]>> <<elseif _corruption >= 5>> <<set _responses = [ "Moderate experience. Enough to know what to expect and not to expect any fairy tales.", "A few years in the business. Long enough to lose any illusions about it.", "Some experience. Enough to know that clients are all pretty much the same." ]>> <<elseif _corruption >= 3>> <<set _responses = [ "Not much. But it doesn't take long to figure out how this all works.", "Limited experience. Already enough to see through the glamour to what this really is.", "Newer to the business. Already jaded though, if you can believe that." ]>> <<else>> <<set _responses = [ "None. First time. Probably won't be my last desperate decision, knowing my luck.", "No experience. Life just has a way of leading you to places you never planned to go.", "Never done this before. But hey, we all have to pay rent somehow, right?" ]>> <</if>> <<default>> <<if _corruption >= 8>> <<set _responses = ["I've been doing this for years. I know exactly how to please any client."]>> <<else>> <<set _responses = ["I have some experience in this field."]>> <</if>> <</switch>> <<Chat _candidate _responses.random()>> /* Assessment message based on corruption */ <<if _corruption >= 8>> <<set _msg = _candName + " is clearly very experienced and knowledgeable.">> <<ChatMessage _msg>> <<elseif _corruption >= 5>> <<set _msg = _candName + " has solid experience in the industry.">> <<ChatMessage _msg>> <<elseif _corruption >= 3>> <<set _msg = _candName + " is somewhat inexperienced but shows potential.">> <<ChatMessage _msg>> <<else>> <<set _msg = _candName + " is a complete novice to this line of work.">> <<ChatMessage _msg>> <</if>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Continue interview" "BrothelCasting_Interview">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _candidate = $selectedCandidate>> <<ShowNpcIcon _candidate>> <<set _corruption = _candidate.attributes.corruption.value>> <<set _sexPref = _candidate.info.sexualPreference>> <<set _candName = _candidate.info.firstName>> <<set _personality = _candidate.saveData.get("personality")>> /* Sexual orientation responses based on personality */ <<switch _personality>> <<case "shy">> <<if _sexPref == "Bi">> <<set _prefResponse = [ "*blushes* I... I like both, actually. Men and women. Is that okay?", "*quiet voice* I don't really have a preference... both can be nice.", "Um... I'm open to anyone, really. *looks down* Whatever you need." ].random()>> <<elseif _sexPref == "Manly">> <<set _prefResponse = [ "*fidgets* I... I'm more comfortable with men, if that's alright.", "I prefer male clients... *whispers* they make me feel safer somehow.", "*quietly* I like men more. Women make me... nervous." ].random()>> <<else>> <<set _prefResponse = [ "*mumbles* I prefer women... or feminine people. They're gentler.", "Is it okay if I mostly see female clients? *nervously* I'm more comfortable with them.", "*shyly* I feel more at ease with women..." ].random()>> <</if>> <<case "confident">> <<if _sexPref == "Bi">> <<set _prefResponse = [ "I work equally well with all genders. Versatility is a professional asset.", "Men, women, doesn't matter. I know how to satisfy anyone.", "Bisexual and proud of it. It doubles my potential client base." ].random()>> <<elseif _sexPref == "Manly">> <<set _prefResponse = [ "I specialize in male clients. I know exactly what men want.", "Men are my forte. I've studied male psychology extensively.", "I prefer men - I've perfected my technique for them specifically." ].random()>> <<else>> <<set _prefResponse = [ "I prefer women and feminine clients. I excel at understanding their needs.", "Women are my specialty. The female body holds no mysteries for me.", "I focus on female clients - that's where my expertise lies." ].random()>> <</if>> <<case "flirty">> <<if _sexPref == "Bi">> <<set _prefResponse = [ "*giggles* Why choose? I love everyone. The more variety, the more fun!", "Mmm, I'm an equal opportunity lover. Everyone gets my attention.", "*winks* Men, women, I adore them all. Twice the pleasure!" ].random()>> <<elseif _sexPref == "Manly">> <<set _prefResponse = [ "*licks lips* I just love men. There's something about a strong masculine presence...", "Give me a handsome man any day. *sighs dreamily* They're so... satisfying.", "I'm all about the boys. *giggles* Can you blame me? Look at you!" ].random()>> <<else>> <<set _prefResponse = [ "Women are so beautiful... *traces own curves* I love exploring feminine bodies.", "*playfully* There's nothing like a woman's touch. Soft, sensual...", "I prefer the ladies. We understand each other's needs so well." ].random()>> <</if>> <<case "desperate">> <<if _sexPref == "Bi">> <<set _prefResponse = [ "I'll work with anyone! Men, women, whoever! I'm not picky at all!", "Both! Either! I don't care, as long as I can work!", "I'm fine with everyone! Please, just give me a chance!" ].random()>> <<elseif _sexPref == "Manly">> <<set _prefResponse = [ "I prefer men, but I can try with women too if you need that!", "Men are my preference, but I'm flexible! I'll adapt!", "I like men best, but I'll do whatever you need me to!" ].random()>> <<else>> <<set _prefResponse = [ "Women mostly, but I can learn with men too! Whatever you need!", "I prefer feminine clients, but I'll work with anyone if you hire me!", "I'm better with women, but I'll try anything! Please!" ].random()>> <</if>> <<case "arrogant">> <<if _sexPref == "Bi">> <<set _prefResponse = [ "I grace both men and women with my presence. They're all lucky to have me.", "Gender is irrelevant. Everyone desires me equally.", "I don't discriminate - I allow everyone the pleasure of my company." ].random()>> <<elseif _sexPref == "Manly">> <<set _prefResponse = [ "I only work with men. Women couldn't handle someone like me anyway.", "Men only. They pay better and appreciate quality when they see it.", "I prefer men. They're easier to... impress. If you know what I mean." ].random()>> <<else>> <<set _prefResponse = [ "Women and feminine types only. Men are too... simple for my tastes.", "I prefer sophisticated clientele. Usually women.", "Ladies only. They have better taste and appreciate true beauty." ].random()>> <</if>> <<case "submissive">> <<if _sexPref == "Bi">> <<set _prefResponse = [ "I'll serve anyone you assign me to. Your choice is my preference.", "Either gender is fine. I exist to please whoever you want me to please.", "Men or women, I submit to all equally. I have no preference of my own." ].random()>> <<elseif _sexPref == "Manly">> <<set _prefResponse = [ "I prefer serving men, if that's acceptable. Their dominance... feels natural.", "Male clients, please. I respond well to masculine authority.", "I feel most comfortable serving men. They know how to command." ].random()>> <<else>> <<set _prefResponse = [ "I prefer serving women. Their touch is gentler but just as commanding.", "Female clients, if possible. I love being at a woman's service.", "Women, please. I want to devote myself to their pleasure." ].random()>> <</if>> <<case "cynical">> <<if _sexPref == "Bi">> <<set _prefResponse = [ "Men, women, doesn't matter. Money's money regardless of who it comes from.", "Both. They all pay the same and want the same things, more or less.", "No preference. Everyone's just a client at the end of the day." ].random()>> <<elseif _sexPref == "Manly">> <<set _prefResponse = [ "Men. They're quicker and don't expect emotional labor afterwards.", "I stick to male clients. Simpler transactions, fewer complications.", "Men only. Less drama, more straightforward." ].random()>> <<else>> <<set _prefResponse = [ "Women. At least they tip better and don't get weird afterwards.", "Female clients. They understand boundaries better, usually.", "I prefer women. Fewer uncomfortable situations." ].random()>> <</if>> <<default>> <<if _sexPref == "Bi">> <<set _prefResponse = "I'm comfortable with both men and women.">> <<elseif _sexPref == "Manly">> <<set _prefResponse = "I prefer working with men.">> <<else>> <<set _prefResponse = "I'm more comfortable with women and feminine partners.">> <</if>> <</switch>> <<Chat _candidate _prefResponse>> /* Kink level based on personality */ <<switch _personality>> <<case "shy">> <<if _corruption >= 7>> <<set _kinkResponse = [ "*whispers* I... I actually like the kinky stuff. *face turns red* Don't tell anyone...", "*barely audible* The dirtier the better, honestly... I just can't admit it out loud.", "*blushing furiously* I have... secret desires. Things I'm embarrassed to talk about." ].random()>> <<elseif _corruption >= 4>> <<set _kinkResponse = [ "I can do some things... *fidgets* Just not too extreme, please.", "*nervously* I'm... adaptable. Within reason.", "I'll try new things if the client is patient with me..." ].random()>> <<else>> <<set _kinkResponse = [ "*shrinks back* Nothing too intense, please. I scare easily.", "V-vanilla only, if that's okay? Anything else is too much...", "*timidly* Can we keep things... simple? I'm not ready for more." ].random()>> <</if>> <<case "confident">> <<if _corruption >= 7>> <<set _kinkResponse = [ "I'm proficient in all areas - vanilla to extreme. Name it, I've mastered it.", "My repertoire is extensive. No kink is beyond my expertise.", "I've trained in everything you can imagine and a few things you can't." ].random()>> <<elseif _corruption >= 4>> <<set _kinkResponse = [ "I have my specialties, but I maintain professional flexibility.", "I know what I'm good at and I excel at it. Adaptable within reason.", "My skill set covers most common requests effectively." ].random()>> <<else>> <<set _kinkResponse = [ "I focus on quality over variety. Classic techniques, perfected.", "I believe in doing a few things exceptionally well.", "Standard services, delivered at the highest level of quality." ].random()>> <</if>> <<case "flirty">> <<if _corruption >= 7>> <<set _kinkResponse = [ "*bites lip* Mmm, I'm into EVERYTHING. The kinkier the better, baby.", "*eyes sparkle* Oh, I have so many fantasies to explore. Wanna hear them?", "I love trying new things. *moves closer* Want to discover my limits together?" ].random()>> <<elseif _corruption >= 4>> <<set _kinkResponse = [ "*playfully* I can be naughty or nice. Depends on the mood...", "I have my favorites... *winks* but I'm always up for adventure.", "*giggles* I'm pretty open-minded. Surprise me!" ].random()>> <<else>> <<set _kinkResponse = [ "*teasing smile* I like to keep things romantic. Sweet and sensual.", "I'm more of a lover than a freak, if you know what I mean.", "*pouts* Nothing too crazy. I prefer making love to... performing." ].random()>> <</if>> <<case "desperate">> <<if _corruption >= 7>> <<set _kinkResponse = [ "Anything! Everything! I'll do whatever the clients want, no matter what!", "I have no limits! Nothing is too extreme for me! I'll prove it!", "I'll do things no one else will! Just please hire me!" ].random()>> <<elseif _corruption >= 4>> <<set _kinkResponse = [ "I can do a lot of things! And I'll learn more if you need!", "I'm flexible! I'll push my boundaries for the right opportunity!", "Whatever clients want! I'll adapt! I promise!" ].random()>> <<else>> <<set _kinkResponse = [ "I'm new to... all this. But I'll try! I'll try anything once!", "Standard stuff for now, but I can learn! Please give me time!", "I'll start simple and work my way up! Just give me a chance!" ].random()>> <</if>> <<case "arrogant">> <<if _corruption >= 7>> <<set _kinkResponse = [ "I excel at everything. Even the extreme stuff. ESPECIALLY the extreme stuff.", "There's nothing I can't do and nothing I won't do. I'm that good.", "Kinks? Please. I invented half of them. Ask anyone." ].random()>> <<elseif _corruption >= 4>> <<set _kinkResponse = [ "I choose what I do based on my mood. Clients should be grateful for anything.", "I have my preferences and they should be respected.", "Standard offerings from me are better than anyone else's best." ].random()>> <<else>> <<set _kinkResponse = [ "I don't need tricks or gimmicks. My natural talents are sufficient.", "Classic services only. Why degrade myself with bizarre requests?", "I'm not some desperate amateur who needs kinks to attract clients." ].random()>> <</if>> <<case "submissive">> <<if _corruption >= 7>> <<set _kinkResponse = [ "I'll do anything commanded. Anything. I have no limits when ordered.", "Use me however you see fit. The more extreme, the better I serve.", "My body is yours to command. For any purpose. Any." ].random()>> <<elseif _corruption >= 4>> <<set _kinkResponse = [ "I obey most requests willingly. Tell me what to do and it's done.", "I aim to please. Most things... I will submit to.", "Whatever is asked of me, within reason, I will comply." ].random()>> <<else>> <<set _kinkResponse = [ "I follow instructions, but I hope they're gentle ones...", "I'll obey, but please... don't ask for anything too harsh.", "I want to please, but I need some... protection from extremes." ].random()>> <</if>> <<case "cynical">> <<if _corruption >= 7>> <<set _kinkResponse = [ "I've done it all. Seen it all. Nothing shocks me anymore. Might as well profit.", "Extreme stuff pays better anyway. I stopped caring about 'limits' years ago.", "Whatever they're paying for. At this point, it's all just... work." ].random()>> <<elseif _corruption >= 4>> <<set _kinkResponse = [ "I do what pays. Got a few things I won't touch, but not many.", "Most things are on the table. As long as the price is right.", "Flexible enough. Everyone has their price, I know mine." ].random()>> <<else>> <<set _kinkResponse = [ "Keeping it simple. Less complicated means less drama.", "Standard stuff only. Not interested in pretending I enjoy more than that.", "Basic services. Anything more requires... significant compensation." ].random()>> <</if>> <<default>> <<if _corruption >= 7>> <<set _kinkResponse = "I'm open to pretty much anything. The kinkier the better.">> <<elseif _corruption >= 4>> <<set _kinkResponse = "I have my favorites, but I can adapt to what clients want.">> <<else>> <<set _kinkResponse = "I prefer to keep things... vanilla, if possible.">> <</if>> <</switch>> <<Chat _candidate _kinkResponse>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Continue interview" "BrothelCasting_Interview">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _candidate = $selectedCandidate>> <<ShowNpcIcon _candidate>> <<set _candName = _candidate.info.firstName>> /* Check for Candidate Insight perk */ <<if !$playerBrothel.perks || !$playerBrothel.perks.seeStats>> <<Chat _candidate "You want to know my limits? I'll tell you what I'm comfortable with...">> <fieldset style="background: rgba(0,0,0,0.4); border: 2px solid #ff9800; margin: 15px 0;"> <legend style="color: #ff9800;">🔒 Details Hidden</legend> <div style="text-align: center; padding: 30px;"> <div style="font-size: 48px; margin-bottom: 15px;">🔒</div> <p style="color: #ff9800; font-size: 16px; font-weight: bold;">Candidate Insight Required</p> <p style="color: #aaa; font-size: 13px; margin-top: 10px;"> Without the "Candidate Insight" skill, you cannot accurately assess a candidate's limits and preferences. </p> <p style="color: #666; font-size: 11px; margin-top: 15px;"> 🎯 Skills → Management → Candidate Insight (1 skill point) </p> </div> </fieldset> <div class="brothel-btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Continue interview" "BrothelCasting_Interview">><</button>></span> </div> <<else>> <<set _corruption = _candidate.attributes.corruption.value>> <<set _hasVagina = _candidate.body.vaginaSize.value > 0>> <<set _personality = _candidate.saveData.get("personality")>> <<set _limits = _candidate.saveData.get("limits")>> <<set _msg = "Here are " + _candName + "'s service boundaries:">> <<ChatMessage _msg>> /* Limits Panel UI */ <div style="margin: 15px 0; padding: 20px; background: linear-gradient(180deg, rgba(156, 39, 176, 0.15) 0%, rgba(33, 33, 33, 0.95) 100%); border: 2px solid #9c27b0; border-radius: 15px; box-shadow: 0 5px 20px rgba(156, 39, 176, 0.3);"> <div style="text-align: center; margin-bottom: 15px;"> <span style="color: #ce93d8; font-size: 18px; font-weight: bold; text-shadow: 0 0 10px rgba(156, 39, 176, 0.5);">🚫 Service Limits</span> </div> <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 10px;"> /* Oral */ <div style="background: rgba(0,0,0,0.3); padding: 10px; border-radius: 8px; border-left: 3px solid <<if _limits && _limits.oral && _limits.oral.status == 'yes'>>#4caf50<<elseif _limits && _limits.oral && _limits.oral.status == 'reluctant'>>#ff9800<<else>>#f44336<</if>>;"> <div style="display: flex; justify-content: space-between; align-items: center;"> <span style="color: #fff; font-size: 13px;">👅 Oral</span> <<if _limits && _limits.oral>> <<if _limits.oral.status == "yes">> <span style="color: #4caf50; font-size: 12px;">✓ Yes</span> <<elseif _limits.oral.status == "reluctant">> <span style="color: #ff9800; font-size: 12px;">~ Reluctant</span> <<else>> <span style="color: #f44336; font-size: 12px;">✗ No</span> <</if>> <<else>> <span style="color: #888; font-size: 12px;">?</span> <</if>> </div> <<if _limits && _limits.oral && _limits.oral.reason>> <div style="color: #888; font-size: 10px; margin-top: 3px;">(<<print _limits.oral.reason>>)</div> <</if>> </div> /* Vaginal */ <div style="background: rgba(0,0,0,0.3); padding: 10px; border-radius: 8px; border-left: 3px solid <<if !_hasVagina>>#666<<elseif _limits && _limits.vaginal && _limits.vaginal.status == 'yes'>>#4caf50<<elseif _limits && _limits.vaginal && _limits.vaginal.status == 'maybe'>>#ff9800<<else>>#f44336<</if>>;"> <div style="display: flex; justify-content: space-between; align-items: center;"> <span style="color: #fff; font-size: 13px;">🌸 Vaginal</span> <<if !_hasVagina>> <span style="color: #666; font-size: 12px;">— N/A</span> <<elseif _limits && _limits.vaginal>> <<if _limits.vaginal.status == "yes">> <span style="color: #4caf50; font-size: 12px;">✓ Yes</span> <<elseif _limits.vaginal.status == "maybe">> <span style="color: #ff9800; font-size: 12px;">~ Maybe</span> <<else>> <span style="color: #f44336; font-size: 12px;">✗ No</span> <</if>> <<else>> <span style="color: #888; font-size: 12px;">?</span> <</if>> </div> <<if _hasVagina && _limits && _limits.vaginal && _limits.vaginal.reason>> <div style="color: #888; font-size: 10px; margin-top: 3px;">(<<print _limits.vaginal.reason>>)</div> <</if>> </div> /* Anal */ <div style="background: rgba(0,0,0,0.3); padding: 10px; border-radius: 8px; border-left: 3px solid <<if _limits && _limits.anal && _limits.anal.status == 'yes'>>#4caf50<<elseif _limits && _limits.anal && _limits.anal.status == 'maybe'>>#ff9800<<else>>#f44336<</if>>;"> <div style="display: flex; justify-content: space-between; align-items: center;"> <span style="color: #fff; font-size: 13px;">🍑 Anal</span> <<if _limits && _limits.anal>> <<if _limits.anal.status == "yes">> <span style="color: #4caf50; font-size: 12px;">✓ Yes</span> <<elseif _limits.anal.status == "maybe">> <span style="color: #ff9800; font-size: 12px;">~ Maybe</span> <<else>> <span style="color: #f44336; font-size: 12px;">✗ No</span> <</if>> <<else>> <span style="color: #888; font-size: 12px;">?</span> <</if>> </div> <<if _limits && _limits.anal && _limits.anal.reason>> <div style="color: #888; font-size: 10px; margin-top: 3px;">(<<print _limits.anal.reason>>)</div> <</if>> </div> /* Creampie */ <div style="background: rgba(0,0,0,0.3); padding: 10px; border-radius: 8px; border-left: 3px solid <<if _limits && _limits.creampie && _limits.creampie.status == 'yes'>>#4caf50<<elseif _limits && _limits.creampie && _limits.creampie.status == 'maybe'>>#ff9800<<else>>#f44336<</if>>;"> <div style="display: flex; justify-content: space-between; align-items: center;"> <span style="color: #fff; font-size: 13px;">💦 Cum Inside</span> <<if _limits && _limits.creampie>> <<if _limits.creampie.status == "yes">> <span style="color: #4caf50; font-size: 12px;">✓ Yes</span> <<elseif _limits.creampie.status == "maybe">> <span style="color: #ff9800; font-size: 12px;">~ Maybe</span> <<else>> <span style="color: #f44336; font-size: 12px;">✗ No</span> <</if>> <<else>> <span style="color: #888; font-size: 12px;">?</span> <</if>> </div> <<if _limits && _limits.creampie && _limits.creampie.reason>> <div style="color: #888; font-size: 10px; margin-top: 3px;">(<<print _limits.creampie.reason>>)</div> <</if>> </div> /* Anilingus */ <div style="background: rgba(0,0,0,0.3); padding: 10px; border-radius: 8px; border-left: 3px solid <<if _limits && _limits.anilingus && _limits.anilingus.status == 'yes'>>#4caf50<<elseif _limits && _limits.anilingus && _limits.anilingus.status == 'maybe'>>#ff9800<<else>>#f44336<</if>>;"> <div style="display: flex; justify-content: space-between; align-items: center;"> <span style="color: #fff; font-size: 13px;">👅🍑 Anilingus</span> <<if _limits && _limits.anilingus>> <<if _limits.anilingus.status == "yes">> <span style="color: #4caf50; font-size: 12px;">✓ Yes</span> <<elseif _limits.anilingus.status == "maybe">> <span style="color: #ff9800; font-size: 12px;">~ Maybe</span> <<else>> <span style="color: #f44336; font-size: 12px;">✗ No</span> <</if>> <<else>> <span style="color: #888; font-size: 12px;">?</span> <</if>> </div> <<if _limits && _limits.anilingus && _limits.anilingus.reason>> <div style="color: #888; font-size: 10px; margin-top: 3px;">(<<print _limits.anilingus.reason>>)</div> <</if>> </div> /* Cunnilingus */ <div style="background: rgba(0,0,0,0.3); padding: 10px; border-radius: 8px; border-left: 3px solid <<if !_hasVagina>>#666<<elseif _limits && _limits.cunnilingus && _limits.cunnilingus.status == 'yes'>>#4caf50<<elseif _limits && _limits.cunnilingus && _limits.cunnilingus.status == 'maybe'>>#ff9800<<else>>#f44336<</if>>;"> <div style="display: flex; justify-content: space-between; align-items: center;"> <span style="color: #fff; font-size: 13px;">👅🌸 Cunnilingus</span> <<if !_hasVagina>> <span style="color: #666; font-size: 12px;">— N/A</span> <<elseif _limits && _limits.cunnilingus>> <<if _limits.cunnilingus.status == "yes">> <span style="color: #4caf50; font-size: 12px;">✓ Yes</span> <<elseif _limits.cunnilingus.status == "maybe">> <span style="color: #ff9800; font-size: 12px;">~ Maybe</span> <<else>> <span style="color: #f44336; font-size: 12px;">✗ No</span> <</if>> <<else>> <span style="color: #888; font-size: 12px;">?</span> <</if>> </div> <<if _hasVagina && _limits && _limits.cunnilingus && _limits.cunnilingus.reason>> <div style="color: #888; font-size: 10px; margin-top: 3px;">(<<print _limits.cunnilingus.reason>>)</div> <</if>> </div> /* Golden Shower */ <div style="background: rgba(0,0,0,0.3); padding: 10px; border-radius: 8px; border-left: 3px solid <<if _limits && _limits.goldenShower && _limits.goldenShower.status == 'yes'>>#4caf50<<elseif _limits && _limits.goldenShower && _limits.goldenShower.status == 'maybe'>>#ff9800<<else>>#f44336<</if>>; grid-column: span 2;"> <div style="display: flex; justify-content: space-between; align-items: center;"> <span style="color: #fff; font-size: 13px;">🚿 Golden Shower</span> <<if _limits && _limits.goldenShower>> <<if _limits.goldenShower.status == "yes">> <span style="color: #4caf50; font-size: 12px;">✓ Yes</span> <<elseif _limits.goldenShower.status == "maybe">> <span style="color: #ff9800; font-size: 12px;">~ Maybe</span> <<else>> <span style="color: #f44336; font-size: 12px;">✗ No</span> <</if>> <<else>> <span style="color: #888; font-size: 12px;">?</span> <</if>> </div> <<if _limits && _limits.goldenShower && _limits.goldenShower.reason>> <div style="color: #888; font-size: 10px; margin-top: 3px;">(<<print _limits.goldenShower.reason>>)</div> <</if>> </div> </div> /* Income impact summary */ <div style="margin-top: 15px; padding: 10px; background: rgba(255,215,0,0.1); border-radius: 8px; border: 1px solid rgba(255,215,0,0.3);"> <div style="color: #ffd700; font-size: 11px; text-align: center;"> 💰 <strong>Income Impact:</strong> <<set _permissiveCount = 0>> <<if _limits>> <<if _limits.anal && _limits.anal.status == "yes">><<set _permissiveCount++>><</if>> <<if _limits.creampie && _limits.creampie.status == "yes">><<set _permissiveCount++>><</if>> <<if _limits.goldenShower && _limits.goldenShower.status == "yes">><<set _permissiveCount++>><</if>> <<if _limits.anilingus && _limits.anilingus.status == "yes">><<set _permissiveCount++>><</if>> <</if>> <<if _permissiveCount >= 3>> <span style="color: #4caf50;">+++ Very High (accepts most services)</span> <<elseif _permissiveCount >= 2>> <span style="color: #8bc34a;">++ High (accepts many services)</span> <<elseif _permissiveCount >= 1>> <span style="color: #ff9800;">+ Moderate (some restrictions)</span> <<else>> <span style="color: #f44336;">Low (many restrictions)</span> <</if>> </div> </div> </div> /* Personality-based limit explanation */ <<switch _personality>> <<case "shy">> <<if _corruption >= 8>> <<set _limitResponse = "*whispering* I'll... I'll do anything you want. *blushes deeply*">> <<elseif _corruption >= 5>> <<set _limitResponse = "*fidgets* There are a few things I'm not comfortable with...">> <<else>> <<set _limitResponse = "*voice trembling* I have a lot of limits, I'm sorry...">> <</if>> <<case "confident">> <<if _corruption >= 8>> <<set _limitResponse = "No limits to speak of. I've mastered every service.">> <<elseif _corruption >= 5>> <<set _limitResponse = "I have clear boundaries, but they're reasonable.">> <<else>> <<set _limitResponse = "I have firm boundaries. Quality over quantity.">> <</if>> <<case "flirty">> <<if _corruption >= 8>> <<set _limitResponse = "*winks* Limits? What are those? I'm up for anything~">> <<elseif _corruption >= 5>> <<set _limitResponse = "*playfully* Most things are on the menu...">> <<else>> <<set _limitResponse = "*pouts* I'm a romantic at heart. Some things aren't... sexy to me.">> <</if>> <<case "desperate">> <<if _corruption >= 8>> <<set _limitResponse = "No limits! None! I'll do ANYTHING! Please hire me!">> <<elseif _corruption >= 5>> <<set _limitResponse = "Almost no limits! I can work on the rest!">> <<else>> <<set _limitResponse = "I have some limits... but I'll try! For the job!">> <</if>> <<case "arrogant">> <<if _corruption >= 8>> <<set _limitResponse = "I have no limits. But that's because I'm exceptional.">> <<elseif _corruption >= 5>> <<set _limitResponse = "My limits are my choice. Clients should be grateful.">> <<else>> <<set _limitResponse = "Strict limits. I'm not here to degrade myself.">> <</if>> <<case "submissive">> <<if _corruption >= 8>> <<set _limitResponse = "I have no limits. I exist to serve. Use me as you see fit.">> <<elseif _corruption >= 5>> <<set _limitResponse = "Few limits. I want to obey. Tell me what to do.">> <<else>> <<set _limitResponse = "I want to serve, but... I have fears. Please be gentle.">> <</if>> <<case "cynical">> <<if _corruption >= 8>> <<set _limitResponse = "No limits anymore. Everything has a price.">> <<elseif _corruption >= 5>> <<set _limitResponse = "Some limits. Everyone needs a line somewhere.">> <<else>> <<set _limitResponse = "Plenty of limits. This is a job, not my life.">> <</if>> <<default>> <<if _corruption >= 8>> <<set _limitResponse = "I don't really have limits. Whatever pays well.">> <<elseif _corruption >= 5>> <<set _limitResponse = "I have a few things I won't do, but I'm fairly flexible.">> <<else>> <<set _limitResponse = "I have some strict boundaries. I hope that's okay...">> <</if>> <</switch>> <<Chat _candidate _limitResponse>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Continue interview" "BrothelCasting_Interview">><</button>></span> </div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _candidate = $selectedCandidate>> <<ShowNpcIcon _candidate>> <<set _candName = _candidate.info.firstName>> <<set _personality = _candidate.saveData.get("personality")>> /* Generate relationship status randomly if not set */ <<if !_candidate.saveData.has("relationshipStatus")>> <<set _statusRoll = Random(0, 100)>> <<if _statusRoll < 50>> <<set _relStatus = "single">> <<elseif _statusRoll < 75>> <<set _relStatus = "dating">> <<elseif _statusRoll < 90>> <<set _relStatus = "complicated">> <<else>> <<set _relStatus = "married">> <</if>> <<run _candidate.saveData.set("relationshipStatus", _relStatus)>> <<else>> <<set _relStatus = _candidate.saveData.get("relationshipStatus")>> <</if>> <<set _msg = "You ask " + _candName + " about their relationship status...">> <<ChatMessage _msg>> /* Relationship responses based on personality AND status */ <<switch _personality>> <<case "shy">> <<switch _relStatus>> <<case "single">> <<set _relResponse = [ "*blushes* I... I'm single. *looks down* I've never been very good at... relationships.", "*fidgets* No boyfriend or girlfriend... *quiet voice* I'm too shy to talk to people.", "*whispers* I'm alone... *sad smile* Maybe that will change someday..." ].random()>> <<case "dating">> <<set _relResponse = [ "*nervously* I... I'm seeing someone. *blushes deeply* They don't know I'm here...", "*fidgets* I have a partner... *looks away* They think I'm at a regular job interview.", "*anxiously* There's someone... please don't tell them about this place..." ].random()>> <<case "complicated">> <<set _relResponse = [ "*sighs quietly* It's... complicated. *tears forming* We're kind of on a break...", "*sad* I don't know what we are anymore... *voice breaks* Things are confusing.", "*hesitantly* There's someone, but... *sniffles* I don't know if they still want me." ].random()>> <<case "married">> <<set _relResponse = [ "*hides ring finger* I... I'm married. *tearfully* They can't know about this...", "*whispering* I have a spouse... *voice breaking* We need the money so badly...", "*crying quietly* I'm married, but... things are hard... please keep it secret..." ].random()>> <</switch>> <<case "confident">> <<switch _relStatus>> <<case "single">> <<set _relResponse = [ "Single by choice. Relationships are distracting and I'm focused on my career.", "No partner currently. I prefer to keep my personal and professional life separate.", "I'm unattached. It makes this line of work much simpler." ].random()>> <<case "dating">> <<set _relResponse = [ "I'm in a relationship. They're aware of my career and supportive of it.", "I have a partner. We have an open arrangement - it works for both of us.", "Dating someone, yes. They understand that this is professional, not personal." ].random()>> <<case "complicated">> <<set _relResponse = [ "It's complicated. But that's none of my employer's concern.", "Relationship status: undefined. I'm handling it professionally.", "There's someone in my life, but we're working through things. It won't affect my work." ].random()>> <<case "married">> <<set _relResponse = [ "Married. My spouse is fully aware and we have an understanding.", "I have a spouse. We're pragmatic about finances and have discussed this.", "Yes, I'm married. We're adults who made this decision together." ].random()>> <</switch>> <<case "flirty">> <<switch _relStatus>> <<case "single">> <<set _relResponse = [ "*giggles* Single and ready to mingle! *winks* Why, are you interested?", "*playfully* No boyfriend, no girlfriend... I'm all yours, boss.", "*teasing* Completely unattached! My heart is available... if you're offering." ].random()>> <<case "dating">> <<set _relResponse = [ "*giggles* I'm dating someone, but we're open! *winks* Very open.", "*playfully* There's someone... but they know I'm a free spirit.", "*teasing* I have a partner who knows sharing is caring. Jealousy is so boring!" ].random()>> <<case "complicated">> <<set _relResponse = [ "*dramatic sigh* It's complicated... you know how love is. *flirty smile* Maybe you could uncomplicate things?", "*pouts* Relationship drama! *giggles* But that makes me more available for... work.", "*playfully* On-and-off with someone. More off than on lately. Good timing for you!" ].random()>> <<case "married">> <<set _relResponse = [ "*whispers conspiratorially* Married... but very bored. *winks* This job will be exciting.", "*giggles* I have a ring, but what happens at work stays at work, right?", "*flirty* Technically married... but we have a 'don't ask, don't tell' policy." ].random()>> <</switch>> <<case "desperate">> <<switch _relStatus>> <<case "single">> <<set _relResponse = [ "*sadly* I'm single. I've been alone for a while... it's hard.", "No one... *voice breaks* I don't have anyone. That's why I need this job so much.", "*tearfully* I'm alone. Maybe if I had money, someone would want me..." ].random()>> <<case "dating">> <<set _relResponse = [ "*anxiously* I have a partner... they don't know I'm here. Please don't tell!", "*nervously* I'm seeing someone. I'm doing this for us! We need the money!", "*desperately* There's someone in my life... but bills come first. They'll understand... right?" ].random()>> <<case "complicated">> <<set _relResponse = [ "*crying* It's complicated... we're fighting over money... that's why I'm here!", "*sobbing* I don't know what we are anymore! But I need this job to survive!", "*desperately* Things are falling apart... this job might save my relationship... or end it..." ].random()>> <<case "married">> <<set _relResponse = [ "*sobbing* I'm married... my spouse lost their job... we're about to lose everything!", "*crying* I have a family to support! *desperate* Please, I'll do anything!", "*tearfully* Married with debts... this is my only option... please hire me!" ].random()>> <</switch>> <<case "arrogant">> <<switch _relStatus>> <<case "single">> <<set _relResponse = [ "*scoffs* Single. Because no one meets my standards. Obviously.", "Unattached. Most people aren't worthy of dating someone like me.", "*dismissive* Single by choice. I haven't found anyone good enough yet." ].random()>> <<case "dating">> <<set _relResponse = [ "I have a partner who knows their place. They don't question what I do.", "*smugly* Dating someone who's lucky to have me. They're supportive, as they should be.", "In a relationship with someone who respects my independence." ].random()>> <<case "complicated">> <<set _relResponse = [ "*rolls eyes* Complicated. They can't handle being with someone superior.", "*dismissive* Drama with someone who doesn't appreciate me. Their loss.", "Relationship issues. They'll come crawling back. They always do." ].random()>> <<case "married">> <<set _relResponse = [ "*haughtily* Married. My spouse knows they're lucky to have me.", "I have a spouse. They don't tell me what to do with my career.", "*superior* Married, not that it's any of your business. Next question." ].random()>> <</switch>> <<case "submissive">> <<switch _relStatus>> <<case "single">> <<set _relResponse = [ "*sadly* I'm single, sir. I'm looking for someone to... belong to.", "*quietly* No one owns me yet... *hopeful* Maybe this job will change that.", "*submissively* I'm alone. I want to serve someone... anyone..." ].random()>> <<case "dating">> <<set _relResponse = [ "*obediently* I have a master... I mean, partner. They sent me here.", "*devoted* I belong to someone. They know I'm interviewing here.", "*quietly* My partner controls my decisions. They approved this job." ].random()>> <<case "complicated">> <<set _relResponse = [ "*sadly* It's complicated... my master... they're not sure if they want me anymore...", "*tearfully* Someone owns me... but they've been distant. I'm scared.", "*submissively* There's someone, but I don't know if I still belong to them..." ].random()>> <<case "married">> <<set _relResponse = [ "*obediently* I'm married, sir. My spouse commands me, and they approved this.", "*devoted* I have a spouse who owns me completely. They sent me here to work.", "*submissively* Married. I serve my spouse in all things. This is their decision." ].random()>> <</switch>> <<case "cynical">> <<switch _relStatus>> <<case "single">> <<set _relResponse = [ "*shrugs* Single. Relationships are overrated anyway.", "No partner. Had enough of that drama. Flying solo now.", "*sarcastically* Blissfully alone. Romance is just trouble with extra steps." ].random()>> <<case "dating">> <<set _relResponse = [ "*shrugs* Dating someone. They know about this job. It is what it is.", "I have a partner. We're realistic about money and what it takes to get it.", "*matter-of-fact* In a relationship. They're not thrilled, but they understand." ].random()>> <<case "complicated">> <<set _relResponse = [ "*sighs* It's complicated. Isn't it always? Relationships are messy.", "*sarcastically* Some 'it's complicated' situation. The usual romantic disaster.", "*tiredly* Relationship drama. Nothing new. That's life, I guess." ].random()>> <<case "married">> <<set _relResponse = [ "*flatly* Married. We need money. This is the reality of modern economics.", "*cynically* Got a spouse at home. Fairy tale romance, right? *laughs bitterly*", "*matter-of-fact* Married. The romance died, the bills didn't. Here I am." ].random()>> <</switch>> <<default>> <<switch _relStatus>> <<case "single">> <<set _relResponse = "I'm single at the moment.">> <<case "dating">> <<set _relResponse = "I'm in a relationship.">> <<case "complicated">> <<set _relResponse = "It's... complicated.">> <<case "married">> <<set _relResponse = "I'm married.">> <</switch>> <</switch>> <<Chat _candidate _relResponse>> /* Additional assessment message */ <<switch _relStatus>> <<case "single">> <<set _msg = _candName + " appears to be unattached, which may mean fewer complications.">> <<ChatMessage _msg>> <<case "dating">> <<set _msg = _candName + " is in a relationship. This could potentially cause issues.">> <<ChatMessage _msg>> <<case "complicated">> <<set _msg = _candName + " has relationship drama. They might be emotionally distracted.">> <<ChatMessage _msg>> <<case "married">> <<set _msg = _candName + " is married. This is a significant personal factor to consider.">> <<ChatMessage _msg>> <</switch>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Continue interview" "BrothelCasting_Interview">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _candidate = $selectedCandidate>> <<set _candName = _candidate.info.firstName>> <<set _personality = _candidate.saveData.get("personality")>> <<set _currentMood = _candidate.saveData.get("mood") || 5>> <<ShowNpcIcon _candidate>> <div class="centre-text" style="font-size: 18px; color: #ffc107; padding-bottom: 10px;">💬 Improve Mood</div> /* Speech check determines success */ <<set _speechSkill = $player.attributes.speech.value>> <<set _successChance = 40 + (_speechSkill * 8)>> /* Personality modifiers */ <<if _personality == "shy" || _personality == "nervous">> <<set _successChance += 10>> <<set _personalityMod = "shyness">> <<elseif _personality == "friendly">> <<set _successChance += 20>> <<set _personalityMod = "friendliness">> <<elseif _personality == "flirty">> <<set _successChance += 15>> <<set _personalityMod = "flirtatiousness">> <<elseif _personality == "arrogant">> <<set _successChance -= 15>> <<set _personalityMod = "arrogance">> <<elseif _personality == "cynical">> <<set _successChance -= 10>> <<set _personalityMod = "cynicism">> <<elseif _personality == "submissive">> <<set _successChance += 25>> <<set _personalityMod = "submissiveness">> <<elseif _personality == "desperate">> <<set _successChance += 30>> <<set _personalityMod = "desperation">> <<else>> <<set _personalityMod = "personality">> <</if>> <<set _successChance = Math.max(10, Math.min(95, _successChance))>> <<set _roll = Random(1, 100)>> <<if _roll <= _successChance>> /* Success - improve mood */ <<set _moodGain = Random(1, 3)>> <<if _personality == "desperate" || _personality == "submissive">> <<set _moodGain += 1>> <</if>> <<set _newMood = Math.min(10, _currentMood + _moodGain)>> <<run _candidate.saveData.set("mood", _newMood)>> /* Update in Characters array */ <<for _i = 0; _i < $Characters.length; _i++>> <<if $Characters[_i].info.id == _candidate.info.id>> <<run $Characters[_i].saveData.set("mood", _newMood)>> <<break>> <</if>> <</for>> <<ChatMessage "You start a pleasant conversation, showing interest in the candidate...">> /* Response based on personality */ <<switch _personality>> <<case "shy">> <<set _responses = [ "*smiles shyly* Thank you for listening to me... I feel better now.", "*relaxes a bit* You're... very kind. That's nice.", "*blushes* Oh, thank you... That means a lot to me." ]>> <<case "confident">> <<set _responses = [ "*smiles* Nice to meet someone with a good sense of humor.", "I must admit, you know how to make people comfortable.", "Not bad. I like your approach." ]>> <<case "flirty">> <<set _responses = [ "*winks* Mmm, you know how to make a girl feel good~", "*laughs playfully* You're definitely interesting.", "*licks lips* You're so charming... I like it." ]>> <<case "desperate">> <<set _responses = [ "Really? You really think so? Thank you so much!", "*eyes light up* You're such a kind person!", "That's so nice to hear! I'm so glad I came here!" ]>> <<case "arrogant">> <<set _responses = [ "*surprised* Hm, not bad. Maybe you're not so bad after all.", "*smiles slightly* Alright, you've earned some respect.", "I must admit, you know how to talk." ]>> <<case "submissive">> <<set _responses = [ "*lowers eyes, smiling* Thank you, master... I'm very pleased.", "*nods obediently* You're very kind to me...", "*smiles shyly* I'm glad you're happy with me..." ]>> <<case "cynical">> <<set _responses = [ "*raises an eyebrow* Hm, unexpected. Maybe not everyone here is so bad.", "Alright, that was... nice. Not used to that.", "*smirks* You're a strange one. But in a good way." ]>> <<default>> <<set _responses = [ "Thank you, I feel better now!", "You're a very nice person.", "I enjoy talking with you." ]>> <</switch>> <<Chat _candidate _responses.random()>> <div style="background: rgba(76, 175, 80, 0.2); padding: 12px; border-radius: 8px; margin-top: 15px; border: 1px solid #4CAF50;"> <div style="color: #81c784; font-size: 14px;"> ✅ <b>Success!</b> Mood improved by +<<print _moodGain>> </div> <div style="color: #aaa; font-size: 12px; margin-top: 5px;"> Current mood: <<print _newMood>>/10 </div> </div> <<else>> /* Failure */ <<ChatMessage "You try to start a pleasant conversation, but...">> <<switch _personality>> <<case "shy">> <<set _failResponses = [ "*looks away* Oh... um... sure, I guess...", "*awkward silence* ...thanks, I suppose..." ]>> <<case "confident">> <<set _failResponses = [ "*looks coolly* That was... nice, I suppose.", "Yeah, sure. Can we get back to business?" ]>> <<case "arrogant">> <<set _failResponses = [ "*rolls eyes* Seriously? Is that all you've got?", "*bored* Yeah, yeah, very nice. Next question?" ]>> <<case "cynical">> <<set _failResponses = [ "*skeptically* Was that an attempt to butter me up? Weak.", "Yeah, right. I've seen better attempts." ]>> <<default>> <<set _failResponses = [ "Um... okay. That was... weird.", "*awkward smile* Yeah, thanks, I guess..." ]>> <</switch>> <<Chat _candidate _failResponses.random()>> <div style="background: rgba(244, 67, 54, 0.2); padding: 12px; border-radius: 8px; margin-top: 15px; border: 1px solid #f44336;"> <div style="color: #ef9a9a; font-size: 14px;"> ❌ <b>Failed</b> to improve mood </div> <div style="color: #aaa; font-size: 12px; margin-top: 5px;"> Their _personalityMod worked against you </div> </div> <</if>> <div style="color: #888; font-size: 11px; margin-top: 10px; text-align: center;"> Success chance was: <<print _successChance>>% (Speech: <<print _speechSkill>>) </div> <div class="brothel-btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Continue interview" "BrothelCasting_Interview">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _candidate = $selectedCandidate>> <<set _candName = _candidate.info.firstName>> <<set _personality = _candidate.saveData.get("personality")>> <<set _currentMood = _candidate.saveData.get("mood") || 5>> <<ShowNpcIcon _candidate>> <div class="centre-text" style="font-size: 18px; color: #4CAF50; padding-bottom: 10px;">💵 Gift Money</div> <<if $player.money >= 250 && _currentMood < 10>> <<set $player.money -= 250>> <<set _newMood = Math.min(10, _currentMood + 1)>> <<run _candidate.saveData.set("mood", _newMood)>> /* Update in Characters array */ <<for _i = 0; _i < $Characters.length; _i++>> <<if $Characters[_i].info.id == _candidate.info.id>> <<run $Characters[_i].saveData.set("mood", _newMood)>> <<break>> <</if>> <</for>> <<ChatMessage "You discreetly hand $250 to " + _candName + "...">> /* Response based on personality */ <<switch _personality>> <<case "shy">> <<set _responses = [ "*eyes widen* Oh! That's... that's very generous of you. Thank you...", "*blushes* I... I don't know what to say. Thank you so much.", "*looks surprised* For me? That's... really kind." ]>> <<case "confident">> <<set _responses = [ "*smiles appreciatively* Nice. I like a boss who knows how to treat people.", "Well, this is a pleasant surprise. You certainly know how to make an impression.", "*nods approvingly* Smart move. I appreciate the gesture." ]>> <<case "flirty">> <<set _responses = [ "*winks* Mmm, throwing money at me already? I like your style~", "*purrs* Oh my, aren't you generous... I might have to show my appreciation later.", "*licks lips* You know how to get a girl's attention, don't you?" ]>> <<case "desperate">> <<set _responses = [ "*tears up* Oh my god, thank you so much! This means everything to me!", "*grabs your hand* You're amazing! I won't forget this!", "*overwhelmed* I... I really needed this. Thank you, thank you!" ]>> <<case "arrogant">> <<set _responses = [ "*raises eyebrow* Hmph. At least you understand my worth.", "*takes money cooly* I suppose this is appropriate. You have taste.", "*slight smile* Well, well. Perhaps you're not as bad as I thought." ]>> <<case "submissive">> <<set _responses = [ "*lowers eyes* Thank you, master... You're too kind to me.", "*bows slightly* I'm grateful for your generosity, sir.", "*smiles softly* Thank you... I'll remember your kindness." ]>> <<case "cynical">> <<set _responses = [ "*looks at money* Hm. Bribery, huh? ...I can respect that.", "*smirks* Trying to buy my affection? ...Well, it's working.", "*shrugs* Money talks, I guess. Alright, you've got my attention." ]>> <<default>> <<set _responses = [ "Wow, thank you! That's really generous of you!", "*smiles warmly* This is very kind. Thank you!", "I appreciate this a lot. Thank you!" ]>> <</switch>> <<Chat _candidate _responses.random()>> <div style="background: rgba(76, 175, 80, 0.2); padding: 12px; border-radius: 8px; margin-top: 15px; border: 1px solid #4CAF50;"> <div style="color: #81c784; font-size: 14px;"> 💵 <b>-$250</b> | Mood improved by +1 </div> <div style="color: #aaa; font-size: 12px; margin-top: 5px;"> Current mood: <<print _newMood>>/10 </div> </div> <<else>> <<if _currentMood >= 10>> <<ChatMessage "Their mood is already at maximum.">> <<else>> <<ChatMessage "You don't have enough money.">> <</if>> <</if>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Continue interview" "BrothelCasting_Interview">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _candidate = $selectedCandidate>> <<set _candName = _candidate.info.firstName>> <<set _candGender = _candidate.gender()>> <<ShowNpcIcon _candidate>> <div class="centre-text" style="font-size: 20px; color: #e91e63;">👀 <<print _candName>>'s Body</div> <<set _msg = "You ask " + _candName + " to show you their body...">> <<ChatMessage _msg>> <<set _personality = _candidate.saveData.get("personality")>> <<switch _personality>> <<case "shy">> <<set _response = "*blushes deeply and hesitates* O-okay... if you need to see...">> <<case "confident">> <<set _response = "*smiles and poses* Sure, take a good look. I know what I'm working with.">> <<case "flirty">> <<set _response = "*winks seductively* Mmm, like what you see? There's plenty more~">> <<case "desperate">> <<set _response = "*quickly complies* Of course! Whatever you need to see!">> <<case "arrogant">> <<set _response = "*sighs* Fine, feast your eyes. Try not to be too jealous.">> <<case "submissive">> <<set _response = "*nods obediently* Yes, of course... as you wish.">> <<case "cynical">> <<set _response = "*shrugs* Sure, look all you want. Part of the job, right?">> <<default>> <<set _response = "Alright, here you go...">> <</switch>> <<Chat _candidate _response>> <fieldset style="background: linear-gradient(135deg, rgba(233, 30, 99, 0.15) 0%, rgba(33, 33, 33, 0.95) 100%); border: 1px solid #e91e63; margin: 15px 0;"> <legend style="color: #f48fb1;">Body Photos</legend> <div style="display: grid; grid-template-columns: repeat(3, 1fr); gap: 15px; padding: 15px; text-align: center;"> /* Breasts */ <div style="background: rgba(0,0,0,0.3); border-radius: 10px; padding: 15px;"> <div style="color: #fff; font-size: 14px; margin-bottom: 10px;">🍈 Breasts</div> <div style="color: #aaa; font-size: 12px; margin-bottom: 10px;"><<print _candidate.getBreastText()>></div> <span class="brothel-btn primary small"><<button "View">> <<script>> Dialog.setup(SugarCube.State.variables.selectedCandidate.getBreastText()); Dialog.wiki(SugarCube.State.variables.selectedCandidate.getBreastImage()); Dialog.open(); <</script>> <</button>></span> </div> /* Butt */ <div style="background: rgba(0,0,0,0.3); border-radius: 10px; padding: 15px;"> <div style="color: #fff; font-size: 14px; margin-bottom: 10px;">🍑 Butt</div> <div style="color: #aaa; font-size: 12px; margin-bottom: 10px;"><<print _candidate.getButtText()>></div> <span class="brothel-btn secondary small"><<button "View">> <<script>> Dialog.setup(SugarCube.State.variables.selectedCandidate.getButtText()); Dialog.wiki(SugarCube.State.variables.selectedCandidate.getAssImage()); Dialog.open(); <</script>> <</button>></span> </div> /* Genitals */ <div style="background: rgba(0,0,0,0.3); border-radius: 10px; padding: 15px;"> <div style="color: #fff; font-size: 14px; margin-bottom: 10px;">🔞 Genitals</div> <<if _candGender == "Female">> <div style="color: #aaa; font-size: 12px; margin-bottom: 10px;">Vagina</div> <span class="brothel-btn secondary small"><<button "View">> <<script>> var cand = SugarCube.State.variables.selectedCandidate; Dialog.setup("Vagina"); var skin = cand.info.skin; var skinCapitalized = skin.charAt(0).toUpperCase() + skin.slice(1); var img = '<img class="chat-image" style="width: 400px; height: 300px;" src="Media/Characters/' + skinCapitalized + '/Vag/0.jpg" alt="Vagina">'; Dialog.wiki(img); Dialog.open(); <</script>> <</button>></span> <<elseif _candGender == "Male">> <div style="color: #aaa; font-size: 12px; margin-bottom: 10px;">Penis</div> <span class="brothel-btn disabled small" title="Photos of male genitals are not available"><<button "View (N/A)">><</button>></span> <<else>> <div style="color: #aaa; font-size: 12px; margin-bottom: 10px;">Penis (Shemale)</div> <span class="brothel-btn disabled small" title="Photos of male genitals are not available"><<button "View (N/A)">><</button>></span> <</if>> </div> </div> </fieldset> /* Body stats */ <fieldset style="background: rgba(0,0,0,0.3); border: 1px solid #888; margin: 10px 0;"> <legend style="color: #aaa;">Body Stats</legend> <div style="display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; padding: 10px;"> <div style="font-size: 12px; color: #aaa;">🍈 Breast Size: <span style="color: #fff;"><<print _candidate.body.breastSize.value>>/5</span></div> <div style="font-size: 12px; color: #aaa;">🍑 Butt Size: <span style="color: #fff;"><<print _candidate.body.buttSize.value>>/5</span></div> <<if _candGender == "Female">> <div style="font-size: 12px; color: #aaa;">💕 Vagina Size: <span style="color: #fff;"><<print _candidate.body.vaginaSize.value>></span></div> <<else>> <div style="font-size: 12px; color: #aaa;">🍆 Penis Size: <span style="color: #fff;"><<print _candidate.body.penisSize.value>></span></div> <</if>> <div style="font-size: 12px; color: #aaa;">🍩 Anus Size: <span style="color: #fff;"><<print _candidate.body.anusSize.value>></span></div> </div> </fieldset> <div class="brothel-btn-container padding-top"> <span class="brothel-btn neutral"><<button "← Back to interview" "BrothelCasting_Interview">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _candidate = $selectedCandidate>> <<ShowNpcIcon _candidate>> <<set _corruption = _candidate.attributes.corruption.value>> <<set _candName = _candidate.info.firstName>> <<set _personality = _candidate.saveData.get("personality")>> <<set _requiredCorruption = 2>> <<set _msg = "You ask " + _candName + " if they would demonstrate their oral skills...">> <<ChatMessage _msg>> <<if _corruption >= _requiredCorruption>> /* Agreed - personality-based responses */ <<switch _personality>> <<case "shy">> <<set _agreeResponse = [ "*blushes deeply* O-okay... I'll do my best. *kneels down nervously*", "*voice barely audible* If... if you want me to... *hesitantly approaches*", "*trembling slightly* I... I can try. Please don't judge me too harshly..." ].random()>> <<case "confident">> <<set _agreeResponse = [ "Of course. Prepare to be impressed.", "Gladly. This is one of my strongest skills. Let me demonstrate.", "A practical demonstration? Smart. You'll see exactly why I'm the best choice." ].random()>> <<case "flirty">> <<set _agreeResponse = [ "*licks lips sensually* Mmm, I was hoping you'd ask. *winks*", "*giggles* Finally, the fun part! *drops to knees with a smile*", "Ooh, I thought you'd never ask! Let me show you my favorite skill..." ].random()>> <<case "desperate">> <<set _agreeResponse = [ "Yes! Of course! I'll show you I'm worth hiring! Right now!", "Absolutely! I'll be the best you've ever seen! I promise!", "Right away! I'll prove myself! You won't regret it!" ].random()>> <<case "arrogant">> <<set _agreeResponse = [ "*sighs* Fine. Though this is beneath a formal interview. Watch and learn.", "Very well. Consider yourself lucky to receive a preview.", "If you insist. Don't expect this kind of treatment from me normally." ].random()>> <<case "submissive">> <<set _agreeResponse = [ "Yes, sir. *immediately kneels* I'm here to serve.", "Of course. I want to show you how obedient I can be.", "*drops to knees* Command me. I'll do exactly as you wish." ].random()>> <<case "cynical">> <<set _agreeResponse = [ "*shrugs* Sure. It's part of the interview process, right? Let's get it done.", "Why not. Actions speak louder than words anyway.", "Alright. At least this part of the interview is straightforward." ].random()>> <<default>> <<set _agreeResponse = "Of course. Let me show you what I can do.">> <</switch>> <<Chat _candidate _agreeResponse>> <<set _msg = _candName + " agrees to the test.">> <<ChatMessage _msg>> <div class="btn-container padding-top"> <span class="brothel-btn primary"><<button "✓ Proceed with test" "BrothelCasting_TestBlowjob_Scene">><</button>></span> <span class="brothel-btn neutral"><<button "← That won't be necessary" "BrothelCasting_Interview">><</button>></span> </div> <<else>> /* Refused - personality-based responses */ <<switch _personality>> <<case "shy">> <<set _refuseResponse = [ "*shrinks back* I-I'm sorry, I can't... not like this... *eyes tear up*", "*shakes head rapidly* Please, no... I'm not ready for that... not here...", "*voice cracks* I... I couldn't possibly... it's too much for me right now..." ].random()>> <<case "confident">> <<set _refuseResponse = [ "I don't perform during interviews. Hire me first, then we'll discuss demonstrations.", "That's not appropriate for an interview. I maintain professional boundaries.", "I keep certain skills exclusive for actual employment. Standards, you understand." ].random()>> <<case "flirty">> <<set _refuseResponse = [ "*pouts* Mmm, tempting... but a girl has to keep some mystery. Hire me first?", "*teasing smile* That's for after you hire me, handsome. Anticipation is half the fun.", "*winks* Not yet, sweetie. But I promise it'll be worth the wait if you bring me on." ].random()>> <<case "desperate">> <<set _refuseResponse = [ "I... I want to, but... *tears welling* Please, can we just... not during the interview?", "*looks conflicted* I need this job so badly, but... I'm not ready for that yet...", "Maybe... maybe after you hire me? I'll do it then, I promise! Just not now..." ].random()>> <<case "arrogant">> <<set _refuseResponse = [ "*scoffs* Excuse me? I don't audition like some common street worker.", "Absolutely not. You should be able to recognize quality without degrading tests.", "*coldly* That's insulting. Either hire me based on my qualities or don't." ].random()>> <<case "submissive">> <<set _refuseResponse = [ "*head bowed* I'm sorry... I want to obey but... I'm scared. Please forgive me...", "*trembling* I wish I could serve you, but... I'm not ready yet. I'm so sorry...", "Forgive me... I want to please you but my fear is too strong right now..." ].random()>> <<case "cynical">> <<set _refuseResponse = [ "Nice try. Unpaid demonstrations aren't part of legitimate interviews.", "*raises eyebrow* I know this game. Work comes after contracts, not before.", "Let me guess - this is a 'test' that never leads to actual hiring? Pass." ].random()>> <<default>> <<set _refuseResponse = "I'm not comfortable doing that during an interview. Maybe after you hire me?">> <</switch>> <<Chat _candidate _refuseResponse>> <<set _msg = _candName + " refuses. They seem too shy for this.">> <<ChatMessage _msg>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Continue interview" "BrothelCasting_Interview">><</button>></span> </div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _candidate = $selectedCandidate>> <<set _throatSize = _candidate.body.throatSize.value>> <<set _candName = _candidate.info.firstName>> <<set _candGender = _candidate.gender()>> <<set _playerGender = $player.gender()>> <<set _personality = _candidate.saveData.get("personality")>> /* For male candidates, player gives oral; for others, candidate gives oral */ <<if _candGender == "Male">> /* Male candidate - player gives oral to test candidate's cock */ <<SetOralPick _candGender _playerGender>> <<Video _pick>> <<set _msg = "You get on your knees to evaluate " + _candName + "'s equipment and endurance...">> <<ChatMessage _msg>> <<set _penisSize = _candidate.body.penisSize.value>> <<if _penisSize >= 30>> <<ChatMessage "He's very well-endowed. Impressive equipment for the job.">> <<elseif _penisSize >= 20>> <<ChatMessage "He has a good size. Should satisfy most clients.">> <<else>> <<ChatMessage "He's on the smaller side, but technique matters more than size.">> <</if>> <<else>> /* Female/Shemale candidate - candidate gives oral */ /* Determine who is the tester (dom) */ <<if _playerGender == "Female">> /* Female player - use a brothel worker as tester */ <<set _testerGender = "Male">> <<set _testerName = "brothel worker">> <<set _msg = "You call one of your brothel workers to test " + _candName + "'s oral skills.">> <<ChatMessage _msg>> <<else>> /* Male/Shemale player tests directly */ <<set _testerGender = _playerGender>> <<set _testerName = "you">> <</if>> /* Set video - tester receives oral from candidate */ <<SetOralPick _testerGender _candGender>> <<Video _pick>> <<if _playerGender == "Female">> <<set _msg = _candName + " gets on their knees and begins demonstrating on the worker...">> <<ChatMessage _msg>> <<else>> <<set _msg = _candName + " gets on their knees and begins the demonstration...">> <<ChatMessage _msg>> <</if>> <</if>> /* Performance reaction based on throat size AND personality */ <<if _throatSize >= 30>> <<ChatMessage "They take it deep without any trouble. Clearly experienced at this.">> <<switch _personality>> <<case "shy">> <<set _afterResponse = [ "*wipes mouth, blushing* W-was that okay...? *avoids eye contact*", "*breathless, face red* I... I hope that was good enough...", "*quietly* I practiced a lot... *embarrassed smile*" ].random()>> <<case "confident">> <<set _afterResponse = [ "*stands up gracefully* As expected. No gag reflex whatsoever.", "That's just a preview. Hire me and see what else I can do.", "*wipes lips with satisfaction* Perfect technique, as always." ].random()>> <<case "flirty">> <<set _afterResponse = [ "*licks lips* Mmm, delicious. I could do this all day. *winks*", "*giggles* That was fun! Want me to go again? Pretty please?", "How was that, baby? *runs tongue over lips seductively* I love this part..." ].random()>> <<case "desperate">> <<set _afterResponse = [ "*eagerly* Was that good? I can do better! Let me try again!", "Please tell me that was impressive! I worked so hard on this skill!", "*hopeful eyes* Did I do well? I really want this job!" ].random()>> <<case "arrogant">> <<set _afterResponse = [ "*stands, unimpressed* Obviously. Did you expect anything less?", "Naturally. Years of perfecting my craft. You're welcome.", "*flips hair* Child's play. The real question is can your clients handle me?" ].random()>> <<case "submissive">> <<set _afterResponse = [ "*kneeling* Was my service pleasing, sir? I exist only to satisfy.", "*head bowed* Please tell me if I did well. Your approval means everything.", "Thank you for allowing me to serve. *looks up with devoted eyes* Shall I continue?" ].random()>> <<case "cynical">> <<set _afterResponse = [ "*stands, businesslike* Deep throat. Not everyone can do it. Now you know I can.", "*shrugs* Years of practice. It's just a skill like any other.", "There. Proof of ability delivered. Can we move on?" ].random()>> <<default>> <<set _afterResponse = "How was that? I can go even deeper if you want...">> <</switch>> <<elseif _throatSize >= 20>> <<ChatMessage "They handle it well, showing decent technique.">> <<switch _personality>> <<case "shy">> <<set _afterResponse = [ "*coughing slightly* I... I hope that was okay? *nervously*", "*embarrassed* S-sorry if it wasn't perfect... I tried my best...", "*quietly* Did I do alright...? *fidgets with hands*" ].random()>> <<case "confident">> <<set _afterResponse = [ "Solid performance. I know my technique is reliable.", "That was good, but I can do better with more practice.", "Not my absolute best, but clearly above average." ].random()>> <<case "flirty">> <<set _afterResponse = [ "*playful smile* Not bad, right? I'm still warming up though...", "*giggles* That was pretty good! With practice it gets even better.", "*winks* I have other skills that are even better, you know..." ].random()>> <<case "desperate">> <<set _afterResponse = [ "That was decent, right? I'll practice more! I'll get even better!", "Please, that was okay, wasn't it? I'll improve, I promise!", "*anxiously* I hope that showed my potential! I can learn more!" ].random()>> <<case "arrogant">> <<set _afterResponse = [ "*brushes off* Adequate. I wasn't really trying my hardest.", "That was restrained. I don't give my all for free tests.", "*dismissive* Good enough for an interview, I suppose." ].random()>> <<case "submissive">> <<set _afterResponse = [ "*apologetically* I'm sorry if it wasn't perfect, sir. I'll do better.", "*head down* I tried to please you. Please forgive any shortcomings.", "Was my service acceptable? I want only to satisfy..." ].random()>> <<case "cynical">> <<set _afterResponse = [ "Decent performance. Not my best, not my worst.", "*matter-of-fact* Standard blowjob. Gets the job done.", "There. Competent, if not spectacular. Hire me if you want." ].random()>> <<default>> <<set _afterResponse = "I hope that was satisfactory...">> <</switch>> <<else>> <<ChatMessage "They struggle a bit but try their best.">> <<switch _personality>> <<case "shy">> <<set _afterResponse = [ "*coughing, tears in eyes* I-I'm so sorry... I tried... *voice breaking*", "*embarrassed and upset* I'm not very good at this yet... I'm sorry...", "*nearly crying* Please don't reject me... I'll practice, I promise..." ].random()>> <<case "confident">> <<set _afterResponse = [ "*clearing throat* I admit that could have gone better. I'll improve.", "Not my finest moment, but everyone has room for growth.", "*composed* That was... a learning experience. I'll work on it." ].random()>> <<case "flirty">> <<set _afterResponse = [ "*coughing cutely* Oops! *giggles* I guess I need more practice...", "*pouts* That wasn't my best... but practice makes perfect, right?", "*winks despite struggling* I'm better at other things, I promise!" ].random()>> <<case "desperate">> <<set _afterResponse = [ "*coughing, panicking* I'm sorry! I'll get better! Please don't reject me!", "*tears forming* I know that was bad... please, give me a chance to improve!", "*desperately* I'll practice every day! Just please hire me anyway!" ].random()>> <<case "arrogant">> <<set _afterResponse = [ "*coughing* That was... *composes self* ...an unusual angle. Not my fault.", "*defensive* I was caught off guard. Normally I'm much better.", "*irritated* This testing environment isn't fair. Under normal conditions..." ].random()>> <<case "submissive">> <<set _afterResponse = [ "*coughing, apologetic* I'm so sorry, sir... I failed you... please forgive me...", "*head bowed in shame* I wasn't good enough... I deserve punishment...", "*tearfully* Please let me try again... I want to please you properly..." ].random()>> <<case "cynical">> <<set _afterResponse = [ "*coughing* Look, I never claimed deep throat was my specialty.", "*shrugs while recovering* Can't be good at everything. Moving on.", "*matter-of-fact* Not my strongest skill. At least I'm honest about it." ].random()>> <<default>> <<set _afterResponse = "*cough* Sorry... I'm still learning...">> <</switch>> <</if>> <<Chat _candidate _afterResponse>> <<SpendTimeWithoutUpdate 15>> <<SpendEnergy $player 5>> /* Increase lust for male/shemale player */ <<if _playerGender != "Female">> <<set _hornyIncrease = Random(15, 30)>> <<run $player.status.horny.increase(_hornyIncrease)>> <</if>> <div class="brothel-btn-container padding-top"> <<if _playerGender != "Female" && $player.status.horny.value >= $player.status.horny.max>> <span class="brothel-btn danger"><<button "💦 Cum" "BrothelCasting_CumScene">> <<set $castingCumType = "Oral">> <</button>></span> <<else>> <span class="brothel-btn secondary"><<button "→ Continue interview" "BrothelCasting_Interview">><</button>></span> <</if>> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _candidate = $selectedCandidate>> <<ShowNpcIcon _candidate>> <<set _corruption = _candidate.attributes.corruption.value>> <<set _candName = _candidate.info.firstName>> <<set _personality = _candidate.saveData.get("personality")>> <<set _requiredCorruption = 4>> <<set _msg = "You ask " + _candName + " if they would demonstrate their skills in bed...">> <<ChatMessage _msg>> <<if _corruption >= _requiredCorruption>> /* Agreed - personality-based responses */ <<switch _personality>> <<case "shy">> <<set _agreeResponse = [ "*blushes intensely* I... okay... if you really need me to... *starts undressing slowly*", "*heart racing* This is embarrassing but... I'll do it... for the job...", "*trembling slightly* O-okay... just... please be gentle with me..." ].random()>> <<case "confident">> <<set _agreeResponse = [ "Absolutely. This is where I truly shine. Prepare yourself.", "Of course. A proper demonstration will remove any doubts.", "Gladly. You'll see exactly why clients will pay premium for me." ].random()>> <<case "flirty">> <<set _agreeResponse = [ "*eyes light up* Mmm, finally! I've been waiting for this part! *bites lip*", "*starts undressing seductively* Oh yes... this is my favorite kind of interview...", "*giggles excitedly* I thought you'd never ask! Let's have some real fun..." ].random()>> <<case "desperate">> <<set _agreeResponse = [ "Yes! Anything! I'll show you I'm worth it! I'll be amazing!", "Of course! Whatever it takes! I need this job so badly!", "Absolutely! Let me prove myself! You won't regret it!" ].random()>> <<case "arrogant">> <<set _agreeResponse = [ "*sighs* Fine. But remember this is a privilege, not a right.", "Very well. Try to keep up. Not everyone can handle me.", "If you insist. Don't blame me if you become... attached." ].random()>> <<case "submissive">> <<set _agreeResponse = [ "*obediently undresses* Yes, sir. Use my body as you see fit.", "I'm yours to test. Do whatever you need to do to me.", "*lies down submissively* Please take me. I exist to be used." ].random()>> <<case "cynical">> <<set _agreeResponse = [ "*starts undressing* Sure. Figured this was coming. Let's get it over with.", "Alright. It's the most honest part of any interview, really.", "*shrugs* Fine. At least this is straightforward. No more games." ].random()>> <<default>> <<set _agreeResponse = "Sure, let's do it.">> <</switch>> <<Chat _candidate _agreeResponse>> <<set _msg = _candName + " agrees to the test.">> <<ChatMessage _msg>> <div class="btn-container padding-top"> <span class="brothel-btn primary"><<button "✓ Proceed with test" "BrothelCasting_TestVaginal_Scene">><</button>></span> <span class="brothel-btn neutral"><<button "← That won't be necessary" "BrothelCasting_Interview">><</button>></span> </div> <<elseif _corruption >= 2>> /* Hesitant - personality-based responses */ <<switch _personality>> <<case "shy">> <<set _hesitantResponse = [ "*shakes head quickly* I-I can't... not during an interview... it's too much...", "*covers face* Please... that's too intimate... I'm not ready for that yet...", "*voice cracking* I want the job but... this is too fast for me..." ].random()>> <<case "confident">> <<set _hesitantResponse = [ "That's a significant request for an interview. I'd prefer to establish terms first.", "I could, but I'd rather discuss compensation before that level of demonstration.", "Interesting request. I'm capable, but prefer to save the full experience for employment." ].random()>> <<case "flirty">> <<set _hesitantResponse = [ "*teasing pout* Mmm, jumping straight to the main event? Shouldn't we warm up first?", "*playfully* Eager, aren't you? I like that... but maybe after you hire me?", "*bites lip* Tempting... very tempting... but I like to be wined and dined first." ].random()>> <<case "desperate">> <<set _hesitantResponse = [ "I... *conflicted* I want to say yes... I need this job... but...", "*torn* Maybe? I'm just... can you promise you'll hire me if I do?", "*nervously* I'm not sure... but if it's the only way... maybe..." ].random()>> <<case "arrogant">> <<set _hesitantResponse = [ "*offended* Excuse me? I don't audition like some cheap escort.", "That's presumptuous. My skills in bed are for paying customers only.", "*coldly* Perhaps after you've proven YOUR worth as an employer." ].random()>> <<case "submissive">> <<set _hesitantResponse = [ "*conflicted* I want to obey, but... this feels wrong without commitment...", "*hesitantly* I... if you command me to... but I'm scared...", "*uncertain* Should I? I want to please you but... this is a lot to ask..." ].random()>> <<case "cynical">> <<set _hesitantResponse = [ "*raises eyebrow* Free sample? I know how this usually ends. Pass for now.", "Ah, the classic 'test' that magically doesn't lead to hiring. I've seen this before.", "Tell you what - hire me first, then you can test all you want. Fair's fair." ].random()>> <<default>> <<set _hesitantResponse = "I... that's a big ask for an interview. Are you sure it's necessary?">> <</switch>> <<Chat _candidate _hesitantResponse>> <<set _msg = _candName + " seems hesitant. Maybe with more corruption they would agree.">> <<ChatMessage _msg>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Continue interview" "BrothelCasting_Interview">><</button>></span> </div> <<else>> /* Refused - personality-based responses */ <<switch _personality>> <<case "shy">> <<set _refuseResponse = [ "*backs away, scared* No! Please, I can't... not like this... *nearly in tears*", "*covers body protectively* I'm sorry, I just can't... it's too much...", "*shaking head rapidly* No, no, no... please don't make me... I'm not ready..." ].random()>> <<case "confident">> <<set _refuseResponse = [ "Absolutely not. I have standards for how I enter professional relationships.", "That's a firm no. If you want that service, hire me first. Simple.", "I don't do auditions of that nature. It's unprofessional on both our parts." ].random()>> <<case "flirty">> <<set _refuseResponse = [ "*pouts dramatically* Aww, naughty! But no, not until there's a ring... I mean, a contract.", "*playfully shakes finger* Nice try, but I save the best for actual clients!", "*teasing* You'll have to work harder than that to get into my panties, boss." ].random()>> <<case "desperate">> <<set _refuseResponse = [ "*crying* I want to say yes so badly, but... I can't... please understand...", "*conflicted and upset* I need this job, but I can't give that for free... please...", "*tears streaming* Please don't make that a requirement... I'll do anything else..." ].random()>> <<case "arrogant">> <<set _refuseResponse = [ "*furious* How DARE you! I'm not some desperate street whore!", "*stands up angrily* This interview is over if that's what you expect.", "*scoffs loudly* Absolutely not. I deserve better than this treatment." ].random()>> <<case "submissive">> <<set _refuseResponse = [ "*trembling* I want to obey... but I can't... please forgive me, sir...", "*head bowed in shame* I'm sorry I can't comply... I'm too scared...", "*crying softly* Please don't hate me for refusing... I just can't..." ].random()>> <<case "cynical">> <<set _refuseResponse = [ "*laughs bitterly* Oh, of course. The 'free test' scam. Not falling for that.", "*cold stare* I've seen this trick a hundred times. Hard pass.", "Save it. I know exactly where this 'interview' is going. The answer is no." ].random()>> <<default>> <<set _refuseResponse = "No! That's too much. I'm not doing that until I'm officially hired.">> <</switch>> <<Chat _candidate _refuseResponse>> <<set _msg = _candName + " firmly refuses.">> <<ChatMessage _msg>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Continue interview" "BrothelCasting_Interview">><</button>></span> </div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _candidate = $selectedCandidate>> <<set _vaginaSize = _candidate.body.vaginaSize.value>> <<set _candName = _candidate.info.firstName>> <<set _candGender = _candidate.gender()>> <<set _playerGender = $player.gender()>> <<set _personality = _candidate.saveData.get("personality")>> /* Determine who is the tester (dom) */ <<if _playerGender == "Female">> /* Female player - use a brothel worker as tester */ <<set _testerGender = "Male">> <<set _testerName = "brothel worker">> <<set _msg = "You call one of your brothel workers to test " + _candName + "'s skills in bed.">> <<ChatMessage _msg>> <<else>> /* Male/Shemale player tests directly */ <<set _testerGender = _playerGender>> <<set _testerName = "you">> <</if>> /* Set video - tester fucks candidate's vagina */ <<SetVagPick _testerGender _candGender>> <<Video _pick>> /* Personality-based start */ <<switch _personality>> <<case "shy">> <<if _playerGender == "Female">> <<set _msg = _candName + " nervously undresses, blushing as the worker approaches...">> <<ChatMessage _msg>> <<else>> <<set _msg = _candName + " shyly removes their clothes, avoiding eye contact...">> <<ChatMessage _msg>> <</if>> <<case "confident">> <<if _playerGender == "Female">> <<set _msg = _candName + " confidently undresses, beckoning the worker with a commanding look...">> <<ChatMessage _msg>> <<else>> <<set _msg = _candName + " smoothly removes their clothes, meeting your gaze with confidence...">> <<ChatMessage _msg>> <</if>> <<case "flirty">> <<if _playerGender == "Female">> <<set _msg = _candName + " does a little striptease for the worker, giggling playfully...">> <<ChatMessage _msg>> <<else>> <<set _msg = _candName + " slowly peels off their clothes, putting on a show just for you...">> <<ChatMessage _msg>> <</if>> <<case "desperate">> <<if _playerGender == "Female">> <<set _msg = _candName + " quickly undresses, eager to prove themselves to the worker...">> <<ChatMessage _msg>> <<else>> <<set _msg = _candName + " hurriedly strips, desperate to show you they're worth hiring...">> <<ChatMessage _msg>> <</if>> <<case "arrogant">> <<if _playerGender == "Female">> <<set _msg = _candName + " undresses with an air of superiority, as if gracing the worker with a gift...">> <<ChatMessage _msg>> <<else>> <<set _msg = _candName + " leisurely removes their clothes, acting like they're doing you a favor...">> <<ChatMessage _msg>> <</if>> <<case "submissive">> <<if _playerGender == "Female">> <<set _msg = _candName + " obediently strips and presents themselves to the worker...">> <<ChatMessage _msg>> <<else>> <<set _msg = _candName + " submissively undresses and awaits your command...">> <<ChatMessage _msg>> <</if>> <<case "cynical">> <<if _playerGender == "Female">> <<set _msg = _candName + " matter-of-factly undresses as the worker prepares...">> <<ChatMessage _msg>> <<else>> <<set _msg = _candName + " efficiently removes their clothes without ceremony...">> <<ChatMessage _msg>> <</if>> <<default>> <<if _playerGender == "Female">> <<set _msg = _candName + " undresses as the worker approaches...">> <<ChatMessage _msg>> <<else>> <<set _msg = _candName + " undresses and leads you to the couch...">> <<ChatMessage _msg>> <</if>> <</switch>> /* Performance reaction based on vagina size AND personality */ <<if _vaginaSize >= 30>> <<ChatMessage "They know exactly how to move. Experienced and skilled.">> <<switch _personality>> <<case "shy">> <<set _afterResponse = [ "*panting, face flushed* Was that... was that good...? *embarrassed smile*", "*catching breath* I hope... I hope you liked it... *looks away shyly*", "*quietly* I... I enjoyed that... is that okay to say...?" ].random()>> <<case "confident">> <<set _afterResponse = [ "*smiles knowingly* As expected. I know exactly what I'm doing.", "That was just a sample. Hire me and experience the full service.", "*stretches luxuriously* Perfect technique, as always. Any questions?" ].random()>> <<case "flirty">> <<set _afterResponse = [ "*moaning softly* Mmm, that was SO good... can we do it again?", "*giggles breathlessly* Did you enjoy that as much as I did?", "*winks while panting* Now THAT's what I call an interview..." ].random()>> <<case "desperate">> <<set _afterResponse = [ "*eagerly* Was that good? Tell me it was good! Please hire me!", "*hopeful* I was amazing, right? Right?! I need this job!", "*anxiously* That was my best! Did it work? Will you hire me?!" ].random()>> <<case "arrogant">> <<set _afterResponse = [ "*languidly* You're welcome. Not everyone gets that experience.", "*smirks* Obviously that was exceptional. I don't do mediocre.", "*stretches* Now you understand why I'm overqualified." ].random()>> <<case "submissive">> <<set _afterResponse = [ "*breathlessly* Thank you for using me, sir. Did I please you?", "*devotedly* I hope my body satisfied you. I live to serve.", "*submissively* Was my performance acceptable? I exist for your pleasure." ].random()>> <<case "cynical">> <<set _afterResponse = [ "*matter-of-fact* There. Proof of competence. Hire me or don't.", "*shrugs while dressing* Standard excellent performance. As expected.", "That's what experience looks like. Now you know what you'd be getting." ].random()>> <<default>> <<set _afterResponse = "Mmm... was that good enough for you, boss?">> <</switch>> <<elseif _vaginaSize >= 20>> <<ChatMessage "They perform well, with good rhythm and technique.">> <<switch _personality>> <<case "shy">> <<set _afterResponse = [ "*blushing deeply* I... I hope that was okay... *voice quiet*", "*embarrassed* Sorry if I wasn't perfect... I tried my best...", "*timidly* Did you... did you like it...?" ].random()>> <<case "confident">> <<set _afterResponse = [ "That was a solid performance. I can do even better with time.", "Good demonstration. I have room to improve, and I will.", "Reliable technique. You'd be getting consistent quality." ].random()>> <<case "flirty">> <<set _afterResponse = [ "*playfully* Not bad, right? I get better with practice...", "*winks* That was fun! Imagine what I can do with more time...", "*giggles* Pretty good for an interview, don't you think?" ].random()>> <<case "desperate">> <<set _afterResponse = [ "That was good, right? I can improve! I promise I'll get better!", "*anxiously* Please tell me that was enough! I'll practice every day!", "I know I can do better! Just give me a chance to prove it!" ].random()>> <<case "arrogant">> <<set _afterResponse = [ "*dismissive* That was adequate. I wasn't trying my hardest.", "Decent performance given the circumstances.", "*brushes off* Better than most, I'm sure. Good enough for here." ].random()>> <<case "submissive">> <<set _afterResponse = [ "*apologetic* I tried to please you, sir. Was it acceptable?", "*head bowed* I hope I didn't disappoint. I'll do better next time.", "*quietly* Please tell me if I need to improve. I want to serve better." ].random()>> <<case "cynical">> <<set _afterResponse = [ "Decent performance. Not my best, not my worst. Hire accordingly.", "*shrugs* Solid work. You know what you'd be getting.", "Average-plus performance. Consistent, reliable. That's worth something." ].random()>> <<default>> <<set _afterResponse = "I hope that demonstrated my abilities...">> <</switch>> <<else>> <<ChatMessage "They're a bit tight and inexperienced, but enthusiastic.">> <<switch _personality>> <<case "shy">> <<set _afterResponse = [ "*tearful* I-I'm sorry... I'm not very experienced... please don't reject me...", "*embarrassed and upset* That was my first time... I'll get better, I promise...", "*voice breaking* I'm so embarrassed... I know that wasn't good..." ].random()>> <<case "confident">> <<set _afterResponse = [ "*composes self* I admit that could have gone better. I'll improve quickly.", "Not my finest moment, but everyone starts somewhere. I learn fast.", "*determined* That wasn't representative. Give me time to develop." ].random()>> <<case "flirty">> <<set _afterResponse = [ "*pouts cutely* Oops... I guess I need more practice. Wanna help?", "*giggles nervously* That wasn't my best... but I'm a quick learner!", "*playfully embarrassed* I'm better at other things, I swear!" ].random()>> <<case "desperate">> <<set _afterResponse = [ "*panicking* I'm sorry! I'll get better! Please don't reject me because of that!", "*crying* I know that was bad... please, I need this job... I'll practice!", "*desperately* Give me another chance! I'll improve, I swear!" ].random()>> <<case "arrogant">> <<set _afterResponse = [ "*defensive* The conditions weren't ideal. Normally I'm much better.", "*irritated* That was an off performance. Don't judge me by that.", "*making excuses* The position was awkward. Under normal circumstances..." ].random()>> <<case "submissive">> <<set _afterResponse = [ "*ashamed* I failed you, sir... I'm sorry... please punish me if needed...", "*crying softly* I wanted to please you so much... I'm so sorry...", "*begging* Please forgive me... I'll train harder... I'll be better..." ].random()>> <<case "cynical">> <<set _afterResponse = [ "*shrugs* Not my specialty, clearly. At least I'm honest about it.", "Well, that could have gone better. Can't be good at everything.", "*matter-of-fact* Yeah, that wasn't great. Moving on." ].random()>> <<default>> <<set _afterResponse = "Was... was that okay? I can do better with practice...">> <</switch>> <</if>> <<Chat _candidate _afterResponse>> <<SpendTimeWithoutUpdate 30>> <<SpendEnergy $player 10>> /* Increase lust for male/shemale player */ <<if _playerGender != "Female">> <<set _hornyIncrease = Random(25, 45)>> <<run $player.status.horny.increase(_hornyIncrease)>> <</if>> <div class="brothel-btn-container padding-top"> <<if _playerGender != "Female" && $player.status.horny.value >= $player.status.horny.max>> <span class="brothel-btn danger"><<button "💦 Cum" "BrothelCasting_CumScene">> <<set $castingCumType = "Vag">> <</button>></span> <<else>> <span class="brothel-btn secondary"><<button "→ Continue interview" "BrothelCasting_Interview">><</button>></span> <</if>> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _candidate = $selectedCandidate>> <<ShowNpcIcon _candidate>> <<set _corruption = _candidate.attributes.corruption.value>> <<set _candName = _candidate.info.firstName>> <<set _personality = _candidate.saveData.get("personality")>> <<set _requiredCorruption = 6>> <<set _msg = "You ask " + _candName + " if they would be willing to demonstrate anal...">> <<ChatMessage _msg>> <<if _corruption >= _requiredCorruption>> /* Agreed - personality-based responses */ <<switch _personality>> <<case "shy">> <<set _agreeResponse = [ "*blushes deeply but nods* O-okay... if that's what you need to see... *nervously prepares*", "*face crimson* I... I can do that... just please be gentle...", "*quietly* Anal? *gulps* ...okay. I'll try my best..." ].random()>> <<case "confident">> <<set _agreeResponse = [ "Anal? No problem. I'm trained for everything. Let me show you.", "Certainly. This is one of my premium skills. Observe.", "Of course. Comprehensive service requires comprehensive abilities." ].random()>> <<case "flirty">> <<set _agreeResponse = [ "*eyes sparkle* Ooh, you're naughty! I like that. *turns and presents* Take a look at this...", "*giggles excitedly* Mmm, going straight for the back door? I love it!", "*bites lip seductively* My favorite... let's do this, baby." ].random()>> <<case "desperate">> <<set _agreeResponse = [ "Yes! Anal! Whatever you want! I'll prove I can do it all!", "Of course! Anything! I'll show you I'm worth hiring!", "Absolutely! I can handle it! Just watch!" ].random()>> <<case "arrogant">> <<set _agreeResponse = [ "*sighs dramatically* Fine. But don't think everyone gets this privilege.", "Very well. You should consider yourself fortunate.", "I suppose I can demonstrate. Try to appreciate the skill you're about to witness." ].random()>> <<case "submissive">> <<set _agreeResponse = [ "Yes, sir. *presents self obediently* Use me as you wish.", "Of course, master. My body is yours to test however you please.", "*eagerly positions self* Please take me. I submit completely." ].random()>> <<case "cynical">> <<set _agreeResponse = [ "Sure, why not. Anal's just another skill. Let's get it done.", "*shrugs* Fine. At this point, modesty is just inefficient.", "Alright. Might as well test everything while we're at it." ].random()>> <<default>> <<set _agreeResponse = "Anal? Sure, I don't mind. Let me get ready...">> <</switch>> <<Chat _candidate _agreeResponse>> <<set _msg = _candName + " agrees without hesitation.">> <<ChatMessage _msg>> <div class="btn-container padding-top"> <span class="brothel-btn primary"><<button "✓ Proceed with test" "BrothelCasting_TestAnal_Scene">><</button>></span> <span class="brothel-btn neutral"><<button "← That won't be necessary" "BrothelCasting_Interview">><</button>></span> </div> <<elseif _corruption >= 4>> /* Hesitant - personality-based responses */ <<switch _personality>> <<case "shy">> <<set _hesitantResponse = [ "*backs away, terrified* A-anal?! I... I don't know if I can... *trembling*", "*covers face* That's so embarrassing to ask... I'm not sure...", "*voice shaking* I've never... I mean... maybe after you hire me...?" ].random()>> <<case "confident">> <<set _hesitantResponse = [ "Anal is a specialized service. I'd prefer to discuss terms before demonstrating.", "That's a significant request. I'm capable, but let's formalize things first.", "I can do anal, but I don't give premium services for free interviews." ].random()>> <<case "flirty">> <<set _hesitantResponse = [ "*pouts* Mmm, anal? That's my special treat... usually saved for after the first date.", "*teasing* Eager to explore the back entrance? Maybe if you hire me first...", "*playfully* That's third base, honey. We're still on first. Hire me?" ].random()>> <<case "desperate">> <<set _hesitantResponse = [ "*conflicted* I... anal is hard for me... but if it's the only way... maybe?", "*torn* I want to say yes... I need this job... but it's so much...", "*nervously* Can... can we try something else first? Please?" ].random()>> <<case "arrogant">> <<set _hesitantResponse = [ "*offended* Anal? During an INTERVIEW? What kind of establishment is this?", "*coldly* That service is for premium clients, not auditions.", "*scoffs* I don't give that away for free. Have some class." ].random()>> <<case "submissive">> <<set _hesitantResponse = [ "*conflicted* I want to obey... but anal scares me a little... I'm sorry...", "*hesitantly* If you command it, I... I'll try... but please be gentle...", "*uncertain* I... I'm scared, but... if you really need me to..." ].random()>> <<case "cynical">> <<set _hesitantResponse = [ "*suspicious* Anal for a free interview? That's a lot to ask.", "Let me guess - this 'test' doesn't guarantee a job either. Pass.", "*raised eyebrow* That's premium service territory. Contract first." ].random()>> <<default>> <<set _hesitantResponse = "Anal during an interview? That's... I don't know...">> <</switch>> <<Chat _candidate _hesitantResponse>> <<set _msg = _candName + " is uncomfortable with the request.">> <<ChatMessage _msg>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Continue interview" "BrothelCasting_Interview">><</button>></span> </div> <<else>> /* Refused - personality-based responses */ <<switch _personality>> <<case "shy">> <<set _refuseResponse = [ "*backs away in terror* NO! Please, no... that's... I can't... *starts crying*", "*shaking uncontrollably* I can't do that... please don't ask me... please...", "*covers self protectively* That's too much... I'm sorry... I just can't..." ].random()>> <<case "confident">> <<set _refuseResponse = [ "Absolutely not. That request is inappropriate for this stage.", "That's a firm no. I maintain standards regardless of how much I want the job.", "Not happening. If that's a requirement, I'll find employment elsewhere." ].random()>> <<case "flirty">> <<set _refuseResponse = [ "*shakes head playfully* Sorry sweetie, that's WAY too advanced for an interview!", "*giggles nervously* Nice try! But that exit is for VIP clients only.", "*winks but firm* The back door is locked until there's a contract, honey." ].random()>> <<case "desperate">> <<set _refuseResponse = [ "*sobbing* I want to say yes... I need this job so badly... but I just can't do that...", "*crying* Please don't make that a requirement... anything else... please...", "*tears streaming* I'm so sorry... I wish I could... but I can't..." ].random()>> <<case "arrogant">> <<set _refuseResponse = [ "*furious* How DARE you?! I'm leaving. This interview is over!", "*stands up angrily* Absolutely not! This is degrading and unprofessional!", "*coldly* Consider this interaction terminated. I deserve better." ].random()>> <<case "submissive">> <<set _refuseResponse = [ "*cowering* Please... I want to obey... but I'm too scared... forgive me...", "*crying softly* I can't... I'm so sorry I can't submit to that...", "*trembling* Please don't hate me for refusing... I just can't..." ].random()>> <<case "cynical">> <<set _refuseResponse = [ "*laughs coldly* And there it is. The classic exploitation attempt. Hard no.", "*stands up* I've seen enough. This 'interview' is a scam. Goodbye.", "*sarcastically* Sure, free anal for a job that probably doesn't exist. Pass." ].random()>> <<default>> <<set _refuseResponse = "Absolutely not! I don't do that, especially not in an interview!">> <</switch>> <<Chat _candidate _refuseResponse>> <<set _msg = _candName + " refuses firmly.">> <<ChatMessage _msg>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Continue interview" "BrothelCasting_Interview">><</button>></span> </div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _candidate = $selectedCandidate>> <<set _anusSize = _candidate.body.anusSize.value>> <<set _candName = _candidate.info.firstName>> <<set _candGender = _candidate.gender()>> <<set _playerGender = $player.gender()>> <<set _personality = _candidate.saveData.get("personality")>> /* Determine who is the tester (dom) */ <<if _playerGender == "Female">> /* Female player - use a brothel worker as tester */ <<set _testerGender = "Male">> <<set _testerName = "brothel worker">> <<set _msg = "You call one of your brothel workers to test " + _candName + "'s anal skills.">> <<ChatMessage _msg>> <<else>> /* Male/Shemale player tests directly */ <<set _testerGender = _playerGender>> <<set _testerName = "you">> <</if>> /* Set video - tester fucks candidate's ass */ <<SetAnalPick _testerGender _candGender>> <<Video _pick>> /* Personality-based start */ <<switch _personality>> <<case "shy">> <<if _playerGender == "Female">> <<set _msg = _candName + " nervously bends over, trembling as the worker approaches...">> <<ChatMessage _msg>> <<else>> <<set _msg = _candName + " shyly positions themselves, face red with embarrassment...">> <<ChatMessage _msg>> <</if>> <<case "confident">> <<if _playerGender == "Female">> <<set _msg = _candName + " confidently assumes the position, ready for the worker...">> <<ChatMessage _msg>> <<else>> <<set _msg = _candName + " smoothly gets into position, completely at ease...">> <<ChatMessage _msg>> <</if>> <<case "flirty">> <<if _playerGender == "Female">> <<set _msg = _candName + " wiggles their ass playfully at the worker, beckoning...">> <<ChatMessage _msg>> <<else>> <<set _msg = _candName + " bends over seductively, looking back with a teasing smile...">> <<ChatMessage _msg>> <</if>> <<case "desperate">> <<if _playerGender == "Female">> <<set _msg = _candName + " quickly gets into position, eager to prove themselves...">> <<ChatMessage _msg>> <<else>> <<set _msg = _candName + " hurries to position, determined to impress you...">> <<ChatMessage _msg>> <</if>> <<case "arrogant">> <<if _playerGender == "Female">> <<set _msg = _candName + " positions themselves with an air of superiority...">> <<ChatMessage _msg>> <<else>> <<set _msg = _candName + " gets into position like they're doing you a favor...">> <<ChatMessage _msg>> <</if>> <<case "submissive">> <<if _playerGender == "Female">> <<set _msg = _candName + " obediently presents themselves to the worker...">> <<ChatMessage _msg>> <<else>> <<set _msg = _candName + " submissively offers their body for your use...">> <<ChatMessage _msg>> <</if>> <<case "cynical">> <<if _playerGender == "Female">> <<set _msg = _candName + " gets into position without ceremony, ready to proceed...">> <<ChatMessage _msg>> <<else>> <<set _msg = _candName + " positions themselves matter-of-factly...">> <<ChatMessage _msg>> <</if>> <<default>> <<if _playerGender == "Female">> <<set _msg = _candName + " bends over the desk as the worker approaches...">> <<ChatMessage _msg>> <<else>> <<set _msg = _candName + " bends over the desk, ready for the test...">> <<ChatMessage _msg>> <</if>> <</switch>> /* Performance reaction based on anus size AND personality */ <<if _anusSize >= 30>> <<ChatMessage "They take it easily, moaning with pleasure. Very experienced.">> <<switch _personality>> <<case "shy">> <<set _afterResponse = [ "*panting, blushing furiously* I... I actually liked that... *whispers* a lot...", "*breathless* Was that good...? *embarrassed but pleased*", "*quietly moaning* Mmm... I'm surprised how good that felt..." ].random()>> <<case "confident">> <<set _afterResponse = [ "*stands gracefully* As demonstrated, I have no limitations.", "That was barely challenging. Hire me for the advanced experience.", "*satisfied smile* Perfect technique, even anally. I'm the complete package." ].random()>> <<case "flirty">> <<set _afterResponse = [ "*moans happily* Mmm, that was AMAZING! I love it back there...", "*giggles breathlessly* Can we go again? That was so good!", "*bites lip* Best part of the interview... hire me and there's more of that..." ].random()>> <<case "desperate">> <<set _afterResponse = [ "*eagerly* Was that good?! I can do anal anytime! Hire me!", "*excitedly* See? I can take it! I'm worth hiring!", "*hopeful* That proves I'm experienced, right? Right?!" ].random()>> <<case "arrogant">> <<set _afterResponse = [ "*smugly* Obviously I excelled. Did you expect less?", "Natural talent. Not everyone can perform like that.", "*flips hair* You're welcome for that demonstration." ].random()>> <<case "submissive">> <<set _afterResponse = [ "*devotedly* Thank you for using me, sir. My body is yours.", "*blissfully* I love being taken like that. Please use me more.", "*submissive gaze* Did my body please you? I exist for your pleasure." ].random()>> <<case "cynical">> <<set _afterResponse = [ "*catches breath* There. Anal proficiency confirmed. Hire or don't.", "*matter-of-fact* Years of practice. That's what experience looks like.", "Proof delivered. Any more tests or can we move on?" ].random()>> <<default>> <<set _afterResponse = "Mmm... I love it. Hire me and you can do this anytime...">> <</switch>> <<elseif _anusSize >= 20>> <<ChatMessage "They handle it reasonably well after some initial adjustment.">> <<switch _personality>> <<case "shy">> <<set _afterResponse = [ "*wincing but smiling* That was... intense... but okay... *blushes*", "*breathless* It hurt a little... but I think I did okay...?", "*quietly* It's getting easier... I just need more practice..." ].random()>> <<case "confident">> <<set _afterResponse = [ "Not my strongest skill, but certainly adequate. I'll improve.", "That was competent. With more practice, I'll master it.", "Reasonable performance. Room for growth, which I'll achieve." ].random()>> <<case "flirty">> <<set _afterResponse = [ "*playfully* Whew! That was intense! Practice makes perfect though...", "*giggles* Not bad, right? I'll get even better with time!", "*winks* A few more sessions and I'll be a pro back there!" ].random()>> <<case "desperate">> <<set _afterResponse = [ "That was okay, right? I'll improve! I promise I'll practice!", "*anxiously* I know I can do better! Just give me a chance!", "I handled it! Please, that shows potential, right?!" ].random()>> <<case "arrogant">> <<set _afterResponse = [ "*dismissive* That was adequate given the circumstances.", "Not my fault it wasn't perfect - better conditions would help.", "*brushes off* Decent enough. I was holding back anyway." ].random()>> <<case "submissive">> <<set _afterResponse = [ "*apologetic* I tried my best, sir. Was it acceptable?", "*head bowed* I hope I pleased you. I'll train harder.", "Thank you for using me. I'll improve for you, I promise." ].random()>> <<case "cynical">> <<set _afterResponse = [ "Decent performance. Not my specialty but I manage.", "*shrugs* Average-plus. Good enough for most clients.", "There. Proof I can handle it. Not spectacular, but solid." ].random()>> <<default>> <<set _afterResponse = "Ahh... that was intense but good...">> <</switch>> <<else>> <<ChatMessage "It's clearly uncomfortable for them, but they endure it.">> <<switch _personality>> <<case "shy">> <<set _afterResponse = [ "*crying softly* Ow... that really hurt... I'm so sorry I'm not better...", "*tearful* I tried... I really tried... please don't reject me...", "*sobbing quietly* It's okay... I'll learn... I'll get used to it..." ].random()>> <<case "confident">> <<set _afterResponse = [ "*composed despite discomfort* That was challenging. I'll work on it.", "Admittedly not my best area. I'm committed to improvement.", "*recovering* That needs work. I acknowledge my weaknesses and address them." ].random()>> <<case "flirty">> <<set _afterResponse = [ "*wincing cutely* Ouch! Okay, that one needs practice...", "*laughs through discomfort* Bigger than I expected! I'll adapt!", "*pouts* That wasn't my best... but I'll get the hang of it!" ].random()>> <<case "desperate">> <<set _afterResponse = [ "*crying in pain* I'm sorry! I know that was bad! Please give me a chance to improve!", "*sobbing* It hurt so much... but I'll practice! I promise!", "*desperately through tears* Don't reject me for this! I'll get better!" ].random()>> <<case "arrogant">> <<set _afterResponse = [ "*in pain but defensive* That was... the angle was wrong. Normally I'm better.", "*irritated* Unprepared conditions. That wasn't a fair test.", "*grimacing* I wasn't ready. Under proper circumstances..." ].random()>> <<case "submissive">> <<set _afterResponse = [ "*crying* I'm so sorry, sir... I failed... please punish me...", "*in pain* I disappointed you... I'm ashamed... please forgive me...", "*sobbing* I'll train harder... I'll stretch myself... please don't reject me..." ].random()>> <<case "cynical">> <<set _afterResponse = [ "*grimaces* Look, anal isn't my strongest area. At least I'm honest.", "*wincing* That wasn't great. Can't be good at everything.", "*recovering* Not ideal. But most clients don't even ask for that." ].random()>> <<default>> <<set _afterResponse = "Ow... it's been a while... I'll get better at this...">> <</switch>> <<run _candidate.body.anusSize.increase(2)>> <</if>> <<Chat _candidate _afterResponse>> <<SpendTimeWithoutUpdate 30>> <<SpendEnergy $player 15>> /* Increase lust for male/shemale player */ <<if _playerGender != "Female">> <<set _hornyIncrease = Random(30, 50)>> <<run $player.status.horny.increase(_hornyIncrease)>> <</if>> <div class="brothel-btn-container padding-top"> <<if _playerGender != "Female" && $player.status.horny.value >= $player.status.horny.max>> <span class="brothel-btn danger"><<button "💦 Cum" "BrothelCasting_CumScene">> <<set $castingCumType = "Anal">> <</button>></span> <<else>> <span class="brothel-btn secondary"><<button "→ Continue interview" "BrothelCasting_Interview">><</button>></span> <</if>> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _candidate = $selectedCandidate>> <<ShowNpcIcon _candidate>> <<set _corruption = _candidate.attributes.corruption.value>> <<set _candName = _candidate.info.firstName>> <<set _personality = _candidate.saveData.get("personality")>> <<set _requiredCorruption = 3>> <<set _msg = "You offer to let " + _candName + " demonstrate his skills on you...">> <<ChatMessage _msg>> <<if _corruption >= _requiredCorruption>> <<switch _personality>> <<case "shy">> <<set _agreeResponse = "*blushes deeply* R-really? You want me to... with you? *nervously excited* O-okay...">> <<case "confident">> <<set _agreeResponse = "A hands-on test? Perfect. Prepare yourself - I don't hold back.">> <<case "flirty">> <<set _agreeResponse = "*grins eagerly* Mmm, now that's what I call a job perk! Come here, boss...">> <<case "desperate">> <<set _agreeResponse = "Yes! I'll show you exactly how good I am! You won't regret this!">> <<case "arrogant">> <<set _agreeResponse = "*smirks* Finally, a proper evaluation. Don't worry - I'll be gentle... or not.">> <<case "submissive">> <<set _agreeResponse = "If that's what you command... I'll do my best to please you, sir.">> <<case "cynical">> <<set _agreeResponse = "*raises eyebrow* The boss wants to test the merchandise personally? Alright, let's do this.">> <<default>> <<set _agreeResponse = "Sure, I'm ready to show you what I can do.">> <</switch>> <<Chat _candidate _agreeResponse>> <div class="btn-container padding-top"> <span class="brothel-btn primary"><<button "✓ Proceed with test" "BrothelCasting_TestVaginal_ReceiveFromMale_Scene">><</button>></span> <span class="brothel-btn neutral"><<button "← That won't be necessary" "BrothelCasting_Interview">><</button>></span> </div> <<else>> <<switch _personality>> <<case "shy">> <<set _refuseResponse = "*shocked* W-what?! I... I couldn't... not like this... *backs away*">> <<case "confident">> <<set _refuseResponse = "I don't do that during interviews. Hire me first, then we can discuss benefits.">> <<case "flirty">> <<set _refuseResponse = "*winks* Tempting, but I save the good stuff for after I'm hired. Anticipation, you know?">> <<case "desperate">> <<set _refuseResponse = "*conflicted* I... I really want this job but... can we do this after you hire me? Please?">> <<case "arrogant">> <<set _refuseResponse = "*scoffs* You think I'd give that away for free? Hire me first.">> <<case "submissive">> <<set _refuseResponse = "*trembling* I want to obey but... I'm not ready yet... please forgive me...">> <<case "cynical">> <<set _refuseResponse = "Nice try. Sex comes after employment, not before. Basic business.">> <<default>> <<set _refuseResponse = "I'd prefer to save that for after I'm hired.">> <</switch>> <<Chat _candidate _refuseResponse>> <<ChatMessage "They refused. Higher corruption might make them more willing.">> <div class="brothel-btn-container padding-top"> <span class="brothel-btn neutral"><<button "← Back to interview" "BrothelCasting_Interview">><</button>></span> </div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _candidate = $selectedCandidate>> <<set _penisSize = _candidate.body.penisSize.value>> <<set _candName = _candidate.info.firstName>> <<set _candGender = _candidate.gender()>> <<set _playerGender = $player.gender()>> <<set _personality = _candidate.saveData.get("personality")>> /* Video - male candidate fucks player's vagina */ <<SetVagPick _candGender _playerGender>> <<Video _pick>> <<set _msg = _candName + " takes control and begins demonstrating his skills...">> <<ChatMessage _msg>> <<if _penisSize >= 30>> <<ChatMessage "He's impressively well-endowed and knows how to use it.">> <<elseif _penisSize >= 20>> <<ChatMessage "He has good size and technique.">> <<else>> <<ChatMessage "What he lacks in size, he makes up for with enthusiasm.">> <</if>> <<SpendTimeWithoutUpdate 30>> <<run $player.status.energy.decrease(15)>> /* Increase player horny */ <<if $player.gender() != "Male">> <<run $player.status.horny.increase(25)>> <</if>> <<switch _personality>> <<case "shy">> <<set _afterResponse = "*panting, embarrassed* W-was that... okay? I tried my best...">> <<case "confident">> <<set _afterResponse = "*satisfied grin* That's just a taste. Hire me and your clients will be begging for more.">> <<case "flirty">> <<set _afterResponse = "*breathless* Mmm, that was fun! Did I pass the test, boss? *winks*">> <<case "desperate">> <<set _afterResponse = "*hopeful* Was that good enough?! I can do better! Please hire me!">> <<case "arrogant">> <<set _afterResponse = "*smirks* Obviously impressive. You're welcome.">> <<case "submissive">> <<set _afterResponse = "*kneeling* Thank you for allowing me to serve you... Did I please you?">> <<case "cynical">> <<set _afterResponse = "There. Proof of ability. Now, about that job...">> <<default>> <<set _afterResponse = "How was that? I can definitely handle your clients.">> <</switch>> <<Chat _candidate _afterResponse>> <div class="btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Continue interview" "BrothelCasting_Interview">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _candidate = $selectedCandidate>> <<ShowNpcIcon _candidate>> <<set _corruption = _candidate.attributes.corruption.value>> <<set _candName = _candidate.info.firstName>> <<set _personality = _candidate.saveData.get("personality")>> <<set _requiredCorruption = 5>> <<set _msg = "You offer to let " + _candName + " test his anal skills on you...">> <<ChatMessage _msg>> <<if _corruption >= _requiredCorruption>> <<switch _personality>> <<case "shy">> <<set _agreeResponse = "*eyes widen* Y-you want me to... there? *nervous but excited* I... I'll be careful...">> <<case "confident">> <<set _agreeResponse = "Anal? My specialty. Hope you're ready for an intense experience.">> <<case "flirty">> <<set _agreeResponse = "*licks lips* Ooh, the boss likes it rough? I can definitely deliver...">> <<case "desperate">> <<set _agreeResponse = "Yes! Anything you want! I'll prove I'm worth hiring!">> <<case "arrogant">> <<set _agreeResponse = "*smirks* Going for the advanced test? Bold. I like it.">> <<case "submissive">> <<set _agreeResponse = "If you wish to use your body to test me... I am honored to serve.">> <<case "cynical">> <<set _agreeResponse = "Full service evaluation, huh? Alright, let's see what you can handle.">> <<default>> <<set _agreeResponse = "Sure, I'm ready to demonstrate my full capabilities.">> <</switch>> <<Chat _candidate _agreeResponse>> <div class="btn-container padding-top"> <span class="brothel-btn primary"><<button "✓ Proceed with test" "BrothelCasting_TestAnal_ReceiveFromMale_Scene">><</button>></span> <span class="brothel-btn neutral"><<button "← That won't be necessary" "BrothelCasting_Interview">><</button>></span> </div> <<else>> <<switch _personality>> <<case "shy">> <<set _refuseResponse = "*shakes head rapidly* N-no! That's... that's too much! I can't!">> <<case "confident">> <<set _refuseResponse = "That's a premium service. Hire me first if you want that level of demonstration.">> <<case "flirty">> <<set _refuseResponse = "*playful pout* That's my special move - save it for when I'm officially employed.">> <<case "desperate">> <<set _refuseResponse = "*tears up* I want to please you but... I'm not ready for that yet...">> <<case "arrogant">> <<set _refuseResponse = "*coldly* Absolutely not. That privilege is earned, not given in interviews.">> <<case "submissive">> <<set _refuseResponse = "*trembling* Forgive me... I'm too scared to do that right now...">> <<case "cynical">> <<set _refuseResponse = "No way. Anal is post-employment only. I have standards.">> <<default>> <<set _refuseResponse = "I'm not comfortable with that during an interview.">> <</switch>> <<Chat _candidate _refuseResponse>> <<ChatMessage "They refused. Higher corruption might make them more willing.">> <div class="brothel-btn-container padding-top"> <span class="brothel-btn neutral"><<button "← Back to interview" "BrothelCasting_Interview">><</button>></span> </div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _candidate = $selectedCandidate>> <<set _penisSize = _candidate.body.penisSize.value>> <<set _candName = _candidate.info.firstName>> <<set _candGender = _candidate.gender()>> <<set _playerGender = $player.gender()>> <<set _personality = _candidate.saveData.get("personality")>> /* Video - male candidate fucks player's ass */ <<SetAnalPick _candGender _playerGender>> <<Video _pick>> <<set _msg = _candName + " positions himself and begins the demonstration...">> <<ChatMessage _msg>> <<if _penisSize >= 30>> <<ChatMessage "His impressive size makes the experience intense.">> <<elseif _penisSize >= 20>> <<ChatMessage "He knows exactly how to use what he has.">> <<else>> <<ChatMessage "He focuses on technique and rhythm.">> <</if>> <<SpendTimeWithoutUpdate 30>> <<run $player.status.energy.decrease(20)>> /* Increase player horny */ <<run $player.status.horny.increase(30)>> <<switch _personality>> <<case "shy">> <<set _afterResponse = "*panting heavily, blushing* I... I hope that was... good? *avoids eye contact*">> <<case "confident">> <<set _afterResponse = "*satisfied* That's what I bring to the table. Your clients will be very happy.">> <<case "flirty">> <<set _afterResponse = "*wipes sweat* Mmm, that was hot! You really know how to evaluate talent, boss~">> <<case "desperate">> <<set _afterResponse = "*gasping* Did I do well?! Please say yes! I need this job!">> <<case "arrogant">> <<set _afterResponse = "*smirks* Impressed? Of course you are. I'm the best at what I do.">> <<case "submissive">> <<set _afterResponse = "*kneeling* Thank you for letting me serve you so intimately... Was it pleasing?">> <<case "cynical">> <<set _afterResponse = "*catching breath* Full demonstration complete. So, do I get the job?">> <<default>> <<set _afterResponse = "That's what I can offer. Your clients will love it.">> <</switch>> <<Chat _candidate _afterResponse>> <div class="btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Continue interview" "BrothelCasting_Interview">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _candidate = $selectedCandidate>> <<ShowNpcIcon _candidate>> <<set _candName = _candidate.info.firstName>> <<set _corruption = _candidate.attributes.corruption.value>> <<set _submission = _candidate.saveData.get("submission") || 3>> <<set _personality = _candidate.saveData.get("personality")>> /* Calculate acceptance chance */ /* Higher corruption and submission = more likely to accept */ <<set _acceptChance = (_corruption * 5) + (_submission * 10)>> /* Max 80% chance */ <<set _acceptChance = Math.min(80, _acceptChance)>> <<set _msg = "You explain to " + _candName + " that while you appreciate his application, your clientele primarily desires feminine workers. However, you could offer him a feminization procedure...">> <<ChatMessage _msg>> <<set _roll = Random(1, 100)>> <<if _roll <= _acceptChance>> /* Accepted - personality based response */ <<switch _personality>> <<case "shy">> <<set _acceptResponse = "*looks down, conflicted* I... I've actually thought about this before... *quietly* Maybe it wouldn't be so bad...">> <<case "confident">> <<set _acceptResponse = "Interesting proposition. If that's what's required to succeed here, I'm willing to adapt.">> <<case "flirty">> <<set _acceptResponse = "*giggles* Become a pretty girl? That actually sounds kind of exciting! I'm in!">> <<case "desperate">> <<set _acceptResponse = "*nodding eagerly* Yes! Anything! If that's what it takes, I'll do it! I need this job!">> <<case "arrogant">> <<set _acceptResponse = "*sighs* If you think that's what will make me more valuable... fine. I'll be the best at being feminine too.">> <<case "submissive">> <<set _acceptResponse = "*kneeling* If that is your wish for me, I will obey. Transform me however you desire.">> <<case "cynical">> <<set _acceptResponse = "*considers* It's a big change... but if that's what the market demands, I can adapt.">> <<default>> <<set _acceptResponse = "Alright... if that's what you need, I'm willing to try it.">> <</switch>> <<Chat _candidate _acceptResponse>> <fieldset style="background: rgba(233, 30, 99, 0.15); border: 1px solid #e91e63; margin-top: 15px;"> <legend style="color: #f48fb1;">Choose Transformation Level</legend> <p style="color: #aaa; font-size: 11px; margin-bottom: 10px;">💰 Your money: $<<print $player.money>></p> <div class="brothel-btn-container" style="flex-direction: column;"> <<if $player.money >= 500>> <span class="brothel-btn secondary" style="width: 100%;"><<button "🍆➡️🍑 Transform to Shemale ($500)">> <<set $feminizationLevel = "shemale">> <<goto "BrothelCasting_Feminization_Confirm">> <</button>></span> <<else>> <span class="brothel-btn disabled" style="width: 100%;"><<button "🍆➡️🍑 Transform to Shemale ($500) - Not enough money">><</button>></span> <</if>> <<if $player.money >= 1000>> <span class="brothel-btn primary" style="width: 100%;"><<button "🍆➡️💕 Transform to Female ($1000)">> <<set $feminizationLevel = "female">> <<goto "BrothelCasting_Feminization_Confirm">> <</button>></span> <<else>> <span class="brothel-btn disabled" style="width: 100%;"><<button "🍆➡️💕 Transform to Female ($1000) - Not enough money">><</button>></span> <</if>> <span class="brothel-btn neutral" style="width: 100%;"><<button "← Maybe later" "BrothelCasting_Interview">><</button>></span> </div> </fieldset> <<else>> /* Refused */ <<switch _personality>> <<case "shy">> <<set _refuseResponse = "*shakes head fearfully* N-no! I... I can't change who I am! That's too scary!">> <<case "confident">> <<set _refuseResponse = "No. I am who I am. If you can't use me as a man, find someone else.">> <<case "flirty">> <<set _refuseResponse = "*pouts* Aww, but I like being a guy! Can't you make an exception?">> <<case "desperate">> <<set _refuseResponse = "*tears up* I... I want the job but... I can't... I just can't do that...">> <<case "arrogant">> <<set _refuseResponse = "*scoffs* Change myself to suit your business? Absolutely not. Take me as I am or not at all.">> <<case "submissive">> <<set _refuseResponse = "*trembling* I want to obey but... this is too much... I'm sorry, I can't...">> <<case "cynical">> <<set _refuseResponse = "That's a permanent change. Not worth any job. I'll find work elsewhere.">> <<default>> <<set _refuseResponse = "No, I'm not willing to go that far. I'll look for other opportunities.">> <</switch>> <<Chat _candidate _refuseResponse>> <<ChatMessage "They firmly refused the feminization offer. Perhaps a candidate with higher corruption or submission would be more open to it.">> /* Mark that feminization was attempted and refused */ <<run _candidate.saveData.set("feminizationAttempted", true)>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn neutral"><<button "← Back to interview" "BrothelCasting_Interview">><</button>></span> </div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> /* Feminization costs */ <<set _shemaleCost = 500>> <<set _femaleCost = 1000>> <<if $feminizationLevel == "shemale">> <<set _cost = _shemaleCost>> <<else>> <<set _cost = _femaleCost>> <</if>> <<if $player.money < _cost>> <<ChatMessage "You don't have enough money for this procedure!">> <<set _costMsg = "Cost: $" + _cost + " | Your money: $" + $player.money>> <<ChatMessage _costMsg>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn neutral"><<button "← Back" "BrothelCasting_OfferFeminization">><</button>> </div> <<else>> /* Deduct cost */ <<set $player.money -= _cost>> <<ShowNpcIcon $selectedCandidate>> <<set _candName = $selectedCandidate.info.firstName>> <<set _personality = $selectedCandidate.saveData.get("personality")>> <<set _candId = $selectedCandidate.info.id>> <<if $feminizationLevel == "shemale">> <<set _costMsg = "You pay $" + _shemaleCost + " for the shemale transformation procedure.">> <<ChatMessage _costMsg>> <<ChatMessage "You prepare to transform " + _candName + " into a shemale - adding feminine features while keeping the penis.">> /* Apply transformation - femininity = breastSize + buttSize + face, need > 4 for Shemale */ <<set _newBreast = Random(2, 4)>> <<set _newButt = Random(2, 3)>> <<set _newFace = Random(5, 7)>> /* Find and update character in $Characters array directly */ <<for _i = 0; _i < $Characters.length; _i++>> <<if $Characters[_i].info.id == _candId>> <<set $Characters[_i].info.originGender = "Trans">> <<set $Characters[_i].body.breastSize.value = _newBreast>> <<set $Characters[_i].body.buttSize.value = _newButt>> <<set $Characters[_i].body.face.value = _newFace>> <<set $Characters[_i].body.vaginaSize.value = 0>> <<run $Characters[_i].saveData.set("feminized", "shemale")>> <<run $Characters[_i].saveData.set("feminizedByPlayer", true)>> /* Update $selectedCandidate reference */ <<set $selectedCandidate = $Characters[_i]>> <<break>> <</if>> <</for>> <<switch _personality>> <<case "shy">> <<set _transformResponse = "*looks at new body in wonder* Oh my... I... I have breasts now... *touches them shyly*">> <<case "confident">> <<set _transformResponse = "*examines new curves* Impressive work. I think I can work with this.">> <<case "flirty">> <<set _transformResponse = "*giggles excitedly* Ooh! Look at these! *bounces* This is actually really fun!">> <<case "desperate">> <<set _transformResponse = "*relieved* Thank you! Thank you so much! I'll be the best shemale worker you have!">> <<case "arrogant">> <<set _transformResponse = "*studies reflection* Hmm. Not bad. I make an attractive shemale, as expected.">> <<case "submissive">> <<set _transformResponse = "*kneeling* Thank you for reshaping me to serve you better, master...">> <<case "cynical">> <<set _transformResponse = "*looks down at chest* Well... that's different. I suppose it could be worse.">> <<default>> <<set _transformResponse = "Wow... this is quite a change. I think I can get used to it.">> <</switch>> <<else>> <<set _costMsg = "You pay $" + _femaleCost + " for the full female transformation procedure.">> <<ChatMessage _costMsg>> <<ChatMessage "You prepare to fully transform " + _candName + " into a woman.">> /* Apply full transformation - add vagina to make Female */ <<set _newBreast = Random(2, 5)>> <<set _newButt = Random(2, 4)>> <<set _newVagina = Random(15, 35)>> <<set _newFace = Random(5, 8)>> /* Find and update character in $Characters array directly */ <<for _i = 0; _i < $Characters.length; _i++>> <<if $Characters[_i].info.id == _candId>> <<set $Characters[_i].info.originGender = "Female">> <<set $Characters[_i].body.breastSize.value = _newBreast>> <<set $Characters[_i].body.buttSize.value = _newButt>> <<set $Characters[_i].body.vaginaSize.value = _newVagina>> <<set $Characters[_i].body.penisSize.value = 0>> <<set $Characters[_i].body.face.value = _newFace>> <<run $Characters[_i].saveData.set("feminized", "female")>> <<run $Characters[_i].saveData.set("feminizedByPlayer", true)>> /* Update $selectedCandidate reference */ <<set $selectedCandidate = $Characters[_i]>> <<break>> <</if>> <</for>> <<switch _personality>> <<case "shy">> <<set _transformResponse = "*gasps, looking at completely transformed body* I'm... I'm really a woman now... *voice now feminine* This is so strange...">> <<case "confident">> <<set _transformResponse = "*examines new body* Complete transformation. I can adapt. Watch me become the best.">> <<case "flirty">> <<set _transformResponse = "*twirls excitedly* Oh my god! I'm a real girl now! *giggles in new voice* This is amazing!">> <<case "desperate">> <<set _transformResponse = "*crying happy tears* Thank you! I'll be the best woman worker! I promise!">> <<case "arrogant">> <<set _transformResponse = "*admiring new figure* Well... I do make a stunning woman. As expected of me.">> <<case "submissive">> <<set _transformResponse = "*bowing in new body* You have remade me completely. I am yours in this new form.">> <<case "cynical">> <<set _transformResponse = "*looking at reflection* This is... definitely not what I expected from today. But I guess this is my life now.">> <<default>> <<set _transformResponse = "I'm... completely different now. It'll take some getting used to.">> <</switch>> <</if>> <<Chat $selectedCandidate _transformResponse>> <<set _msg = _candName + " has been successfully transformed! Their appearance is now more appealing for your clientele.">> <<ChatMessage _msg>> <div class="btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Continue interview" "BrothelCasting_Interview">><</button>></span> </div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _candidate = $selectedCandidate>> <<ShowNpcIcon _candidate>> <<set _candName = _candidate.info.firstName>> <<set _personality = _candidate.saveData.get("personality")>> <<set _originalCost = $candidateHiringCost>> /* Mark as haggled */ <<run _candidate.saveData.set("haggled", true)>> /* Success chance based on speech */ <<set _successChance = 40 + ($player.attributes.speech.value * 5)>> <<set _roll = random(1, 100)>> <<if _roll <= _successChance>> /* Success - reduce price by 30% */ <<set _discount = Math.floor(_originalCost * 0.3)>> <<set $candidateHiringCost = _originalCost - _discount>> <<switch _personality>> <<case "shy">> <<Chat _candidate "*fidgets nervously* W-well... I suppose I could accept a bit less...">> <<case "confident">> <<Chat _candidate "*sighs* You drive a hard bargain. Fine, I'll take the lower offer.">> <<case "flirty">> <<Chat _candidate "*winks* Alright handsome, just for you I'll lower my price~">> <<case "submissive">> <<Chat _candidate "*bows head* Of course... whatever you think is fair...">> <<case "aggressive">> <<Chat _candidate "*grumbles* Ugh, fine. But you better treat me well for this.">> <<default>> <<Chat _candidate "Alright, I'll accept your offer.">> <</switch>> <<set _successMsg = "Success! The price has been reduced from $" + _originalCost + " to $" + $candidateHiringCost + " (-$" + _discount + ")!">> <<ChatMessage _successMsg>> <<else>> /* Failure */ <<switch _personality>> <<case "shy">> <<Chat _candidate "*shakes head timidly* I-I'm sorry, but I really can't go lower...">> <<case "confident">> <<Chat _candidate "*crosses arms* Absolutely not. My skills are worth every penny.">> <<case "flirty">> <<Chat _candidate "*pouts* Aww, nice try sweetie, but no~">> <<case "submissive">> <<Chat _candidate "*looks away sadly* I'm sorry, but I really need that amount...">> <<case "aggressive">> <<Chat _candidate "*glares* Don't insult me with lowball offers. Take it or leave it.">> <<default>> <<Chat _candidate "I can't accept that. The original price stands.">> <</switch>> <<ChatMessage "Negotiation failed. The price remains $" + _originalCost + ".">> <</if>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Continue" "BrothelCasting_Interview">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _candidate = $selectedCandidate>> <<ShowNpcIcon _candidate>> <<set _candName = _candidate.info.firstName>> <<set _personality = _candidate.saveData.get("personality")>> /* Rejection reaction based on personality */ <<switch _personality>> <<case "shy">> <<set _rejectResponse = [ "*tears welling up* Oh... I see... *voice breaks* I'm sorry I wasn't good enough...", "*looks down, crying softly* I understand... thank you for... for seeing me...", "*sniffles* I knew I wasn't right for this... *wipes eyes* goodbye..." ].random()>> <<case "confident">> <<set _rejectResponse = [ "*nods professionally* I understand. Perhaps we're not the right fit. Good luck.", "Very well. It's your loss, but I respect the decision. Farewell.", "I appreciate your time. I'll find a better opportunity elsewhere." ].random()>> <<case "flirty">> <<set _rejectResponse = [ "*pouts* Aww, really? *sighs* Well, you know where to find me if you change your mind...", "*disappointed but playful* Your loss, handsome. Call me if you reconsider?", "*winks sadly* Too bad. We could have had so much fun together..." ].random()>> <<case "desperate">> <<set _rejectResponse = [ "*breaks down crying* No! Please! I'll do anything! Don't send me away!", "*sobbing* Please reconsider! I need this job! I'll do whatever you want!", "*grabs your arm* Wait! Please! Give me another chance! I'm begging you!" ].random()>> <<case "arrogant">> <<set _rejectResponse = [ "*scoffs* YOUR loss. This place couldn't handle someone like me anyway.", "*laughs coldly* Please. I was doing YOU a favor by showing up. Goodbye.", "*stands angrily* Fine! You'll regret this when you see me at a better establishment!" ].random()>> <<case "submissive">> <<set _rejectResponse = [ "*head bowed* I understand, sir. I wasn't worthy. *leaves quietly*", "*sadly* I'm sorry I couldn't please you. I'll try to be better for someone else...", "*crying softly* Thank you for considering me, master. I'm sorry I failed..." ].random()>> <<case "cynical">> <<set _rejectResponse = [ "*shrugs* Expected as much. Thanks for wasting my time, I guess.", "*coldly* Right. Another interview that goes nowhere. Classic.", "*sarcastically* Great. Glad I came all this way for nothing. Bye." ].random()>> <<default>> <<set _rejectResponse = "Oh... I understand. Thank you for your time.">> <</switch>> <<Chat _candidate _rejectResponse>> <<set _msg = "You reject " + _candName + ". They leave.">> <<ChatMessage _msg>> /* Remove candidate from list and game */ <<set _candIndex = $castingCandidates.indexOf(_candidate.info.id)>> <<if _candIndex > -1>> <<run $castingCandidates.splice(_candIndex, 1)>> <</if>> <<set _charIndex = $Characters.indexOf(_candidate)>> <<if _charIndex > -1>> <<run $Characters.splice(_charIndex, 1)>> <</if>> <<unset $selectedCandidate $candidateHiringCost>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Continue" "BrothelCasting_ViewCandidates">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _candidate = $selectedCandidate>> <<set _cost = $candidateHiringCost>> <<ShowNpcIcon _candidate>> /* Deduct money */ <<set $player.money -= _cost>> /* Add to brothel */ <<run $playerBrothel.prostitutes.push(_candidate.info.id)>> /* Update candidate's work status */ <<run _candidate.info.characterWork = "Brothel Worker">> <<run _candidate.info.currentLocation = "PlayerBrothel_Rooms">> /* Initialize brothel worker stats */ <<set _baseSubmission = Random(1, 3)>> <<set _baseAffection = Random(1, 3)>> <<set _baseFear = Random(0, 2)>> /* Adjust based on personality */ <<set _personality = _candidate.saveData.get("personality")>> <<switch _personality>> <<case "shy">> <<set _baseSubmission += 2>> <<set _baseFear += 1>> <<case "confident">> <<set _baseSubmission -= 1>> <<case "submissive">> <<set _baseSubmission += 4>> <<set _baseAffection += 1>> <<case "arrogant">> <<set _baseSubmission -= 2>> <<case "desperate">> <<set _baseSubmission += 2>> <<set _baseAffection += 2>> <<case "flirty">> <<set _baseAffection += 2>> <</switch>> /* Clamp values */ <<set _baseSubmission = Math.max(0, Math.min(10, _baseSubmission))>> <<set _baseAffection = Math.max(0, Math.min(10, _baseAffection))>> <<set _baseFear = Math.max(0, Math.min(10, _baseFear))>> /* Store stats in saveData */ <<run _candidate.saveData.set("submission", _baseSubmission)>> <<run _candidate.saveData.set("affection", _baseAffection)>> <<run _candidate.saveData.set("fear", _baseFear)>> <<run _candidate.saveData.set("weeklySalary", _cost)>> /* Remove from casting candidates list */ <<set _candIndex = $castingCandidates.indexOf(_candidate.info.id)>> <<if _candIndex > -1>> <<run $castingCandidates.splice(_candIndex, 1)>> <</if>> <<set _candName = _candidate.info.firstName>> <<set _personality = _candidate.saveData.get("personality")>> /* Hire reaction based on personality */ <<switch _personality>> <<case "shy">> <<set _hireResponse = [ "*eyes wide with joy* R-really?! *tears of happiness* Thank you so much! I'll work so hard!", "*gasps* You're... you're hiring me? *trembling with happiness* I won't disappoint you!", "*crying happy tears* Thank you, thank you! *bows repeatedly* I'll do my very best!" ].random()>> <<case "confident">> <<set _hireResponse = [ "Excellent choice. You won't regret this decision. I'll be your best worker.", "Smart move. I knew you'd recognize quality when you saw it. Let's get to work.", "Thank you for making the right decision. I'll exceed all your expectations." ].random()>> <<case "flirty">> <<set _hireResponse = [ "*jumps excitedly* Yay! This is going to be so much fun! *hugs you* Thank you!", "*squeals happily* I knew you'd pick me! *kisses your cheek* We're going to be amazing together!", "*giggles joyfully* Best decision ever! I promise to make this place extra... exciting." ].random()>> <<case "desperate">> <<set _hireResponse = [ "*bursts into tears of relief* Thank you! Thank you so much! You saved me!", "*falls to knees crying* I can't believe it! Thank you! I'll work harder than anyone!", "*sobbing with joy* You won't regret this! I promise! I'll give everything I have!" ].random()>> <<case "arrogant">> <<set _hireResponse = [ "*smirks* Finally, recognition. Don't worry, you made the right choice. I'll make this place famous.", "About time. I expect proper compensation for my talents. You won't be disappointed.", "*nods approvingly* Good. At least you can recognize quality. Let's discuss my schedule." ].random()>> <<case "submissive">> <<set _hireResponse = [ "*kneels gratefully* Thank you, master. I am yours to command. Use me as you wish.", "*head bowed* I'm so grateful, sir. I'll obey every order and serve perfectly.", "*devotedly* Thank you for accepting me. My body and service belong to you now." ].random()>> <<case "cynical">> <<set _hireResponse = [ "*slightly surprised* Huh. You actually hired me. Well... thanks. I'll do good work.", "*small smile* Fair enough. I'll earn my keep. At least this place seems legitimate.", "Alright then. Thanks for the opportunity. Let's see how this goes." ].random()>> <<default>> <<set _hireResponse = "Thank you so much! I won't let you down!">> <</switch>> <<Chat _candidate _hireResponse>> <<set _msg = "You hired " + _candName + " for $" + _cost + ".">> <<ChatMessage _msg>> <<ChatMessage "They are now working in your brothel and will generate income daily.">> <div class="brothel-btn-container padding-top"> <span class="brothel-btn success"><<button "→ Continue" "BrothelCasting_ViewCandidates">> <<unset $selectedCandidate $candidateHiringCost>> <</button>></span> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _candidate = $selectedCandidate>> <<set _candName = _candidate.info.firstName>> <<set _candGender = _candidate.gender()>> <<set _playerGender = $player.gender()>> <<set _personality = _candidate.saveData.get("personality")>> <<ChatMessage "You feel yourself reaching the edge...">> /* Set cumshot video based on the type of sex */ <<set _cumInside = Random(0, 100) > 50>> <<switch $castingCumType>> <<case "Oral">> /* Cumming in/on mouth */ <<if _cumInside>> <<SetOralCumInPick _playerGender _candGender>> <<set _cumMsg = "You cum in " + _candName + "'s mouth.">> <<else>> <<SetOralCumOutPick _playerGender _candGender>> <<set _cumMsg = "You pull out and cum all over " + _candName + "'s face.">> <</if>> <<case "Vag">> /* Cumming in/on pussy */ <<if _cumInside>> <<SetVagCumInPick _playerGender _candGender>> <<set _cumMsg = "You cum deep inside " + _candName + "'s pussy.">> <<else>> <<SetVagCumOutPick _playerGender _candGender>> <<set _cumMsg = "You pull out and cum all over " + _candName + "'s body.">> <</if>> <<case "Anal">> /* Cumming in/on ass */ <<if _cumInside>> <<SetAnalCumInPick _playerGender _candGender>> <<set _cumMsg = "You cum deep inside " + _candName + "'s ass.">> <<else>> <<SetAnalCumOutPick _playerGender _candGender>> <<set _cumMsg = "You pull out and cum all over " + _candName + "'s ass.">> <</if>> <</switch>> <<Video _pick>> <<ChatMessage _cumMsg>> /* Personality-based cum reaction */ <<switch _personality>> <<case "shy">> <<if _cumInside>> <<set _cumResponse = [ "*gasps and blushes* Oh! I... I can feel it inside me... *trembles*", "*squeaks in surprise* S-so warm... *face turns crimson*", "*whimpers softly* That felt... strange... but not bad..." ].random()>> <<else>> <<set _cumResponse = [ "*covers face in embarrassment* Oh my... there's so much... *blushes furiously*", "*gasps* I... I'm all messy now... *shy smile*", "*trembling* I've never had anyone... *voice trails off*" ].random()>> <</if>> <<case "confident">> <<if _cumInside>> <<set _cumResponse = [ "*satisfied smile* Mmm, exactly as planned. I know how to finish a man properly.", "Good. I aim to bring clients to completion efficiently. Test passed.", "*nods approvingly* That's what a professional does. Delivers results." ].random()>> <<else>> <<set _cumResponse = [ "*wipes face gracefully* A satisfying conclusion. Did I pass your test?", "*professionally* Well, that demonstrates my ability to please. Hire me?", "*stands with poise despite the mess* Quality service, as expected." ].random()>> <</if>> <<case "flirty">> <<if _cumInside>> <<set _cumResponse = [ "*moans happily* Mmm, I love it! Fill me up anytime, boss...", "*giggles* That felt AMAZING! Can we do this every interview?", "*purrs with pleasure* So good... hire me and you can do this whenever you want..." ].random()>> <<else>> <<set _cumResponse = [ "*giggles and licks lips* Mmm, delicious! I love being covered...", "*playfully* You marked your territory! Does that mean I'm hired?", "*winks while wiping face* Such a naughty boss... I like it!" ].random()>> <</if>> <<case "desperate">> <<if _cumInside>> <<set _cumResponse = [ "*eagerly* Did you enjoy that?! Please tell me I did good! Please hire me!", "*hopeful* I made you cum! That means I pass, right? RIGHT?!", "*anxiously* I felt you finish! Does this mean I get the job?!" ].random()>> <<else>> <<set _cumResponse = [ "*covered but hopeful* I did it! I made you cum! Please hire me now!", "*desperately* See? I'm good at this! Please give me the job!", "*begging* I proved myself! I can make clients happy! Please!" ].random()>> <</if>> <<case "arrogant">> <<if _cumInside>> <<set _cumResponse = [ "*smugly* You're welcome. Not everyone can make that happen so quickly.", "*superior smirk* See? That's the premium experience. Now hire me.", "*proudly* That's what real talent looks like. Any questions?" ].random()>> <<else>> <<set _cumResponse = [ "*unimpressed while cleaning* There. Satisfied? Of course you are.", "*dismissive* That was clearly overwhelming for you. You're welcome.", "*arrogantly* I have that effect on people. Make your decision." ].random()>> <</if>> <<case "submissive">> <<if _cumInside>> <<set _cumResponse = [ "*gratefully* Thank you for filling me, sir. I'm yours to use...", "*devoted* I'm so happy to receive your seed. Did I please you?", "*blissfully* Use me however you want. I exist for your pleasure..." ].random()>> <<else>> <<set _cumResponse = [ "*kneeling, covered* Thank you for marking me, sir. I belong to you.", "*submissively* Your cum on my body feels right. I'm yours.", "*devotedly* Please claim me like this always. I'm your property..." ].random()>> <</if>> <<case "cynical">> <<if _cumInside>> <<set _cumResponse = [ "*matter-of-fact* Alright, you finished. Test complete. Moving on?", "*shrugs* There we go. Job well done, I guess. Hiring me?", "*businesslike* Okay, that happened. Can we get back to the interview?" ].random()>> <<else>> <<set _cumResponse = [ "*grabs tissue* Right. That happened. So, do I get the job?", "*cleans up calmly* Interview by orgasm. At least it's honest.", "*unemotionally* There. Proof of service. Make your decision." ].random()>> <</if>> <<default>> <<set _cumResponse = "Mmm... that was intense. Did I pass the test?">> <</switch>> <<Chat _candidate _cumResponse>> /* Reset player's lust */ <<run $player.status.horny.value = 0>> <<run $player.status.potency.decrease(1)>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Continue interview" "BrothelCasting_Interview">> <<unset $castingCumType>> <</button>></span> </div> <</nobr>>
<<nobr>> <<include "PlayerBrothel_InitCheck">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/RedLightDistrict/Brothel/Dungeon.jpg">> <<timed 0.2s>> <div class="centre-text" style="color: #9c27b0; font-size: 22px; text-shadow: 0 0 10px rgba(156, 39, 176, 0.5);">⛓️ The Dungeon</div> <div class="centre-text" style="font-size: 14px; color: #666;">A dark prison for troublesome clients...</div> <div class="centre-text" style="font-size: 14px; color: #ba68c8; margin-top: 5px;">📍 Cells: <<print $playerBrothel.prisoners.length>> / <<print $playerBrothel.dungeonCells>></div> <<ChatMessage "You descend into the cold, dark dungeon beneath your brothel. The stone walls are lined with chains and cells.">> <fieldset class="brothel-fieldset dark"> <legend>⛓️ Prisoners (<<print $playerBrothel.prisoners.length>>/<<print $playerBrothel.dungeonCells>>)</legend> <<if $playerBrothel.prisoners.length == 0>> <div style="padding: 20px; text-align: center; color: #888;"> <p>No prisoners currently held.</p> <p style="font-size: 12px; color: #666;">Capture troublesome clients from brothel events to imprison them here.</p> </div> <<else>> <div class="characters-grid" style="padding: 15px;"> <<for _i = 0; _i < $playerBrothel.prisoners.length; _i++>> <<set _prisonerId = $playerBrothel.prisoners[_i]>> <<set _prisoner = $Characters.find(c => c.info.id == _prisonerId)>> <<if _prisoner>> <<set _prisonerIcon = _prisoner.getPhotoImage()>> <<set _prisonerName = _prisoner.info.firstName>> <<set _submission = _prisoner.saveData.get("dungeonSubmission") || 0>> <<set _subWidth = _submission * 10>> <<set _subBarStyle = "background: linear-gradient(90deg, #9c27b0, #e91e63); height: 100%; border-radius: 4px; width: " + _subWidth + "%;">> <<capture _prisoner _prisonerIcon _prisonerName _submission _subBarStyle>> <div style="background: linear-gradient(135deg, rgba(156, 39, 176, 0.2) 0%, rgba(33, 33, 33, 0.95) 100%); border: 1px solid #9c27b0; border-radius: 10px; padding: 10px; text-align: center; width: 150px;"> <img class='avatar-list' @src='_prisonerIcon' alt='Avatar' style="border: 2px solid #9c27b0;"> <p style="color: #fff; margin: 5px 0;"><<print _prisonerName>></p> /* Submission bar */ <div style="background: rgba(255,255,255,0.1); height: 8px; border-radius: 4px; margin: 5px 0;"> <div @style="_subBarStyle"></div> </div> <p style="color: #888; font-size: 10px; margin: 0;">Submission: <<print _submission>>/10</p> <span class="brothel-btn dark small" style="margin-top: 8px;"><<button "Interact" "BrothelDungeon_Prisoner">> <<set $dungeonPrisoner = _prisoner>> <</button>></span> </div> <</capture>> <<else>> /* Remove invalid prisoner */ <<run $playerBrothel.prisoners.splice(_i, 1)>> <<set _i -= 1>> <</if>> <</for>> </div> <</if>> </fieldset> /* Show debt workers if any */ <<if $playerBrothel.debtWorkers && $playerBrothel.debtWorkers.length > 0>> <fieldset class="brothel-fieldset"> <legend>💸 Debt Workers</legend> <div style="padding: 10px;"> <<for _i = 0; _i < $playerBrothel.debtWorkers.length; _i++>> <<set _debtWorkerId = $playerBrothel.debtWorkers[_i]>> <<set _debtWorker = $Characters.find(c => c.info.id == _debtWorkerId)>> <<if _debtWorker>> <<set _debtRemaining = _debtWorker.saveData.get("debtRemaining") || 0>> <<set _debtProgress = Math.floor((1 - (_debtRemaining / 2500)) * 100)>> <<set _debtBarStyle = "background: linear-gradient(90deg, #4CAF50, #8BC34A); height: 100%; border-radius: 3px; width: " + _debtProgress + "%;">> <<set _debtWorkerIcon = _debtWorker.getPhotoImage()>> <<set _debtWorkerName = _debtWorker.info.firstName>> <div style="display: flex; align-items: center; gap: 10px; background: rgba(0,0,0,0.3); padding: 10px; border-radius: 8px; margin-bottom: 8px;"> <img class='avatar-list' @src='_debtWorkerIcon' alt='Avatar' style="width: 40px; height: 40px; border-radius: 50%;"> <div style="flex: 1;"> <div style="color: #fff;"><<print _debtWorkerName>></div> <div style="color: #888; font-size: 11px;">Debt remaining: $<<print _debtRemaining>> (<<print _debtProgress>>% complete)</div> <div style="background: rgba(255,255,255,0.1); height: 6px; border-radius: 3px; margin-top: 5px;"> <div @style="_debtBarStyle"></div> </div> </div> </div> <</if>> <</for>> </div> </fieldset> <</if>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn neutral"><<button "← Return to Hall" "PlayerBrothel_Main">><</button>></span> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _prisonerId = $dungeonPrisoner.info.id>> <<set _prisoner = $Characters.find(c => c.info.id == _prisonerId)>> <<if !_prisoner>> <<ChatMessage "Error: Prisoner not found!">> <<goto "BrothelDungeon_Main">> <</if>> <<ShowNpcIcon _prisoner>> <<set _prisonerName = _prisoner.info.firstName>> <<set _submission = _prisoner.saveData.get("dungeonSubmission") || 0>> <<set _prisonerGender = _prisoner.gender()>> <<set _whippedToday = _prisoner.saveData.get("whippedToday") || false>> <<set _convincedToday = _prisoner.saveData.get("convincedToday") || false>> /* Initial reaction */ <<set _fearLevel = _submission >= 7 ? "broken" : (_submission >= 4 ? "fearful" : "defiant")>> <<switch _fearLevel>> <<case "broken">> <<set _reaction = [ "*kneels immediately* P-please... I'll do anything... just don't hurt me again...", "*trembles* M-master... I'm sorry... I'll obey...", "*broken gaze* Whatever you want... I'm yours..." ].random()>> <<case "fearful">> <<set _reaction = [ "*flinches* W-what do you want from me...?", "*backs away* Please... no more punishment...", "*nervously* I-I'll cooperate... just tell me what you want..." ].random()>> <<default>> <<set _reaction = [ "*glares* You can't keep me here forever!", "*angrily* This is illegal! Let me go!", "*defiant* You'll pay for this!" ].random()>> <</switch>> <<Chat _prisoner _reaction>> <fieldset class="brothel-fieldset dark"> <legend><<print _prisonerName>> - Status</legend> <div style="padding: 15px;"> /* Submission bar */ <<set _subWidth = _submission * 10>> <<set _subBarStyle = "background: linear-gradient(90deg, #9c27b0, #e91e63); height: 100%; border-radius: 6px; width: " + _subWidth + "%; transition: width 0.3s;">> <div style="margin-bottom: 15px;"> <div style="display: flex; justify-content: space-between; font-size: 12px; color: #aaa; margin-bottom: 5px;"> <span>⛓️ Submission</span> <span><<print _submission>>/10</span> </div> <div style="background: rgba(255,255,255,0.1); height: 12px; border-radius: 6px; overflow: hidden;"> <div @style="_subBarStyle"></div> </div> <<if _submission >= 10>> <div style="color: #4CAF50; font-size: 11px; margin-top: 5px; text-align: center;">✓ Fully broken - ready to accept debt work</div> <<elseif _submission >= 7>> <div style="color: #ff9800; font-size: 11px; margin-top: 5px; text-align: center;">Almost broken...</div> <</if>> </div> <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 10px; font-size: 12px;"> <div><b>Gender:</b> <span style="color: #e91e63;"><<print _prisonerGender>></span></div> <div><b>Health:</b> <span style="color: #4CAF50;"><<print _prisoner.status.health.value>>/<<print _prisoner.status.health.max>></span></div> </div> </div> </fieldset> <fieldset class="brothel-fieldset"> <legend>Actions</legend> <div class="brothel-btn-container"> /* Whip action */ <<if _whippedToday>> <span class="brothel-btn disabled"><<button "🔱 Whip (Already done today)">><</button>></span> <<else>> <span class="brothel-btn danger"><<button "🔱 Whip" "BrothelDungeon_Whip">><</button>></span> <</if>> /* Sex action */ <<set _hasEnergy = $player.status.energy.value >= 20>> <<set _hasPotency = $player.genitalia() != "Penis" || $player.status.potency.value > $player.status.potency.min>> <<if _hasEnergy && _hasPotency>> <span class="brothel-btn special"><<button "💋 Have Sex" "BrothelDungeon_Sex">><</button>></span> <<else>> <span class="brothel-btn disabled"><<button "💋 Have Sex (No energy/stamina)">><</button>></span> <</if>> /* Convince to work off debt */ <<set _hasRoomSpace = $playerBrothel.prostitutes.length < $playerBrothel.rooms>> <<if _convincedToday>> <span class="brothel-btn disabled"><<button "💬 Convince (Already tried today)">><</button>></span> <<elseif _submission < 7>> <span class="brothel-btn disabled"><<button "💬 Convince (Submission too low)">><</button>></span> <<elseif !_hasRoomSpace>> <span class="brothel-btn disabled"><<button "💬 Convince (No free rooms)">><</button>></span> <<else>> <span class="brothel-btn success"><<button "💬 Convince to Work Off Debt" "BrothelDungeon_Convince">><</button>></span> <</if>> </div> </fieldset> /* Surgery options for males */ <<if _prisonerGender == "Male">> <fieldset class="brothel-fieldset"> <legend>💉 Forced Transformation</legend> <p style="color: #aaa; font-size: 12px;">Force surgical changes on this prisoner.</p> <div class="brothel-btn-container"> <<if $player.money >= 500>> <span class="brothel-btn secondary"><<button "🍆➡️🍑 Make Shemale ($500)" "BrothelDungeon_Surgery_Shemale">><</button>></span> <<else>> <span class="brothel-btn disabled"><<button "🍆➡️🍑 Make Shemale ($500)">><</button>></span> <</if>> <<if $player.money >= 1000>> <span class="brothel-btn primary"><<button "🍆➡️💕 Make Female ($1000)" "BrothelDungeon_Surgery_Female">><</button>></span> <<else>> <span class="brothel-btn disabled"><<button "🍆➡️💕 Make Female ($1000)">><</button>></span> <</if>> </div> </fieldset> <</if>> <fieldset class="brothel-fieldset"> <legend>⚙️ Management</legend> <div class="brothel-btn-container"> <span class="brothel-btn danger"><<button "🚪 Release" "BrothelDungeon_Release">><</button>></span> <span class="brothel-btn neutral"><<button "← Back" "BrothelDungeon_Main">><<unset $dungeonPrisoner>><</button>></span> </div> </fieldset> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _prisonerId = $dungeonPrisoner.info.id>> <<set _prisoner = $Characters.find(c => c.info.id == _prisonerId)>> <<if !_prisoner>> <<ChatMessage "Error: Prisoner not found!">> <<goto "BrothelDungeon_Main">> <</if>> <<ShowNpcIcon _prisoner>> <<set _prisonerName = _prisoner.info.firstName>> <<set _submission = _prisoner.saveData.get("dungeonSubmission") || 0>> <<SpendTimeWithoutUpdate 15>> <<ChatMessage "You take the whip and approach the chained prisoner...">> /* Whipping increases submission */ <<set _submissionGain = Random(1, 3)>> <<set _newSubmission = Math.min(10, _submission + _submissionGain)>> <<run _prisoner.saveData.set("dungeonSubmission", _newSubmission)>> <<run _prisoner.saveData.set("whippedToday", true)>> /* Health damage */ <<run _prisoner.status.health.decrease(Random(5, 10))>> /* Reaction based on submission level */ <<if _newSubmission >= 8>> <<set _response = [ "*screams* THANK YOU MASTER! I DESERVE THIS!", "*sobbing* Y-yes... punish me... I was bad...", "*broken* I'm sorry... I'm sorry... I'll be good..." ].random()>> <<elseif _newSubmission >= 5>> <<set _response = [ "*cries out in pain* STOP! PLEASE! I'LL DO ANYTHING!", "*screams* OKAY! OKAY! I GIVE UP!", "*sobbing* Please... no more... I'll cooperate..." ].random()>> <<else>> <<set _response = [ "*screams defiantly* IS THAT ALL YOU'VE GOT?!", "*grits teeth* You'll... regret this...", "*groans* You think this will break me?!" ].random()>> <</if>> <<Chat _prisoner _response>> <<set _msg = "The whipping was effective. (Submission +" + _submissionGain + ")">> <<ChatMessage _msg>> <<if _newSubmission >= 10>> <<ChatMessage "The prisoner seems completely broken now. They might be willing to work off their debt.">> <</if>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Continue" "BrothelDungeon_Prisoner">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _prisonerId = $dungeonPrisoner.info.id>> <<set _prisoner = $Characters.find(c => c.info.id == _prisonerId)>> <<if !_prisoner>> <<ChatMessage "Error: Prisoner not found!">> <<goto "BrothelDungeon_Main">> <</if>> /* Set up sex interaction - get fresh reference from $Characters */ <<set $interactionNpc = _prisoner>> <<set $indexNPC = $Characters.indexOf(_prisoner)>> <<set $sexType = "dungeonSex">> <<set $playerDom = true>> <<set $passiveSex = false>> <<set $canShowStatsBtn = false>> <<set $gameSettings.allowSaves = false>> /* Increase submission slightly from sex */ <<set _submission = _prisoner.saveData.get("dungeonSubmission") || 0>> <<run _prisoner.saveData.set("dungeonSubmission", Math.min(10, _submission + 1))>> <<goto "Sex">> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _prisonerId = $dungeonPrisoner.info.id>> <<set _prisoner = $Characters.find(c => c.info.id == _prisonerId)>> <<if !_prisoner>> <<ChatMessage "Error: Prisoner not found!">> <<goto "BrothelDungeon_Main">> <</if>> /* Check for available rooms */ <<if $playerBrothel.prostitutes.length >= $playerBrothel.rooms>> <<ChatMessage "You don't have any free rooms for new workers. Build more rooms first.">> <<goto "BrothelDungeon_Prisoner">> <</if>> <<ShowNpcIcon _prisoner>> <<set _prisonerName = _prisoner.info.firstName>> <<set _submission = _prisoner.saveData.get("dungeonSubmission") || 0>> <<SpendTimeWithoutUpdate 15>> /* Mark as tried today */ <<run _prisoner.saveData.set("convincedToday", true)>> /* Success chance based on submission */ <<set _successChance = (_submission - 6) * 25>> /* 7=25%, 8=50%, 9=75%, 10=100% */ <<set _roll = Random(1, 100)>> <<set _msg = "You explain to " + _prisonerName + " that they can earn their freedom by working off a $2500 debt...">> <<ChatMessage _msg>> <<if _roll <= _successChance>> /* Success */ <<set _response = [ "*defeated* Fine... I'll do it. Just... let me out of these chains.", "*broken* Yes... I'll work for you. I have no choice...", "*sobbing* Okay... anything to get out of here..." ].random()>> <<Chat _prisoner _response>> <<ChatMessage "They agree to work off their debt! They will work as a prostitute until they earn $2500.">> /* Move from prisoners to debtWorkers and prostitutes */ <<set _index = $playerBrothel.prisoners.indexOf(_prisoner.info.id)>> <<if _index > -1>> <<run $playerBrothel.prisoners.splice(_index, 1)>> <</if>> <<run $playerBrothel.debtWorkers.push(_prisoner.info.id)>> <<run $playerBrothel.prostitutes.push(_prisoner.info.id)>> /* Set debt amount */ <<run _prisoner.saveData.set("debtRemaining", 2500)>> <<run _prisoner.saveData.set("isDebtWorker", true)>> <<run _prisoner.saveData.set("weeklySalary", 0)>> /* No salary for debt workers */ /* Set default assignment */ <<set $playerBrothel.workerAssignments[_prisoner.info.id] = "work">> <div class="brothel-btn-container padding-top"> <span class="brothel-btn success"><<button "→ Send to Work" "BrothelDungeon_Main">><<unset $dungeonPrisoner>><</button>></span> </div> <<else>> /* Failure */ <<set _response = [ "*shakes head* No... I won't be your whore... I'd rather rot here...", "*defiant* I'll never agree to that!", "*glares* Find someone else to sell..." ].random()>> <<Chat _prisoner _response>> <<ChatMessage "They refused. Try again tomorrow, or break them further.">> <div class="brothel-btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Continue" "BrothelDungeon_Prisoner">><</button>></span> </div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _prisonerId = $dungeonPrisoner.info.id>> <<set _prisoner = $Characters.find(c => c.info.id == _prisonerId)>> <<if !_prisoner>> <<ChatMessage "Error: Prisoner not found!">> <<goto "BrothelDungeon_Main">> <</if>> <<ShowNpcIcon _prisoner>> <<set _prisonerName = _prisoner.info.firstName>> <<set _cost = 500>> <<if $player.money < _cost>> <<ChatMessage "You don't have enough money!">> <div class="brothel-btn-container padding-top"> <span class="brothel-btn neutral"><<button "← Back" "BrothelDungeon_Prisoner">><</button>></span> </div> <<else>> <<set $player.money -= _cost>> <<SpendTimeWithoutUpdate 120>> <<ChatMessage "You arrange for the forced transformation surgery...">> <<set _response = [ "*screams in terror* NO! PLEASE! DON'T DO THIS TO ME!", "*struggles against chains* YOU CAN'T! THIS IS INSANE!", "*crying hysterically* PLEASE! I'LL DO ANYTHING ELSE!" ].random()>> <<Chat _prisoner _response>> /* Apply transformation - _prisoner is a reference from $Characters.find() */ <<set _newBreast = Random(2, 4)>> <<set _newButt = Random(2, 3)>> <<set _newFace = Random(5, 7)>> <<set _prisoner.info.originGender = "Trans">> <<set _prisoner.body.breastSize.value = _newBreast>> <<set _prisoner.body.buttSize.value = _newButt>> <<set _prisoner.body.face.value = _newFace>> /* Increase submission from trauma */ <<set _submission = _prisoner.saveData.get("dungeonSubmission") || 0>> <<run _prisoner.saveData.set("dungeonSubmission", Math.min(10, _submission + 3))>> <<ChatMessage "The surgery is complete. The prisoner has been transformed into a shemale.">> <<ChatMessage "The trauma has increased their submission significantly. (+3 Submission)">> <div class="brothel-btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Continue" "BrothelDungeon_Prisoner">><</button>></span> </div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _prisonerId = $dungeonPrisoner.info.id>> <<set _prisoner = $Characters.find(c => c.info.id == _prisonerId)>> <<if !_prisoner>> <<ChatMessage "Error: Prisoner not found!">> <<goto "BrothelDungeon_Main">> <</if>> <<ShowNpcIcon _prisoner>> <<set _prisonerName = _prisoner.info.firstName>> <<set _cost = 1000>> <<if $player.money < _cost>> <<ChatMessage "You don't have enough money!">> <div class="brothel-btn-container padding-top"> <span class="brothel-btn neutral"><<button "← Back" "BrothelDungeon_Prisoner">><</button>></span> </div> <<else>> <<set $player.money -= _cost>> <<SpendTimeWithoutUpdate 180>> <<ChatMessage "You arrange for the complete transformation surgery...">> <<set _response = [ "*screaming* NO! NO! NO! PLEASE! I BEG YOU!", "*hysterical* YOU MONSTER! DON'T TAKE THAT FROM ME!", "*broken sobs* Why... why are you doing this..." ].random()>> <<Chat _prisoner _response>> /* Apply complete transformation - _prisoner is a reference from $Characters.find() */ <<set _newBreast = Random(3, 5)>> <<set _newButt = Random(3, 4)>> <<set _newFace = Random(6, 8)>> <<set _newVagina = Random(15, 35)>> <<set _prisoner.info.originGender = "Female">> <<set _prisoner.body.breastSize.value = _newBreast>> <<set _prisoner.body.buttSize.value = _newButt>> <<set _prisoner.body.face.value = _newFace>> <<set _prisoner.body.penisSize.value = 0>> <<set _prisoner.body.vaginaSize.value = _newVagina>> /* Major submission increase from trauma */ <<set _submission = _prisoner.saveData.get("dungeonSubmission") || 0>> <<run _prisoner.saveData.set("dungeonSubmission", Math.min(10, _submission + 5))>> <<ChatMessage "The surgery is complete. The prisoner has been fully transformed into a female.">> <<ChatMessage "The traumatic experience has completely broken them. (+5 Submission)">> <div class="brothel-btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Continue" "BrothelDungeon_Prisoner">><</button>></span> </div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _prisonerId = $dungeonPrisoner.info.id>> <<set _prisoner = $Characters.find(c => c.info.id == _prisonerId)>> <<if !_prisoner>> <<ChatMessage "Error: Prisoner not found!">> <<goto "BrothelDungeon_Main">> <</if>> <<ShowNpcIcon _prisoner>> <<set _prisonerName = _prisoner.info.firstName>> <<ChatMessage "You release the prisoner from the dungeon...">> /* Remove from prisoners array */ <<set _index = $playerBrothel.prisoners.indexOf(_prisoner.info.id)>> <<if _index > -1>> <<run $playerBrothel.prisoners.splice(_index, 1)>> <</if>> /* Delete the character */ <<DeleteCharacter _prisoner>> <<set _msg = _prisonerName + " has been released and flees into the night.">> <<ChatMessage _msg>> <<unset $dungeonPrisoner>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Continue" "BrothelDungeon_Main">><</button>></span> </div> <</nobr>>
<<widget "AddPrisonerToDungeon">> <<nobr>> /* Widget to add an NPC to the dungeon as a prisoner */ /* Usage: <<AddPrisonerToDungeon _npcObject>> */ <<set _npc = $args[0]>> <<if _npc && _npc.info>> /* Initialize prisoner data */ <<run _npc.saveData.set("dungeonSubmission", 0)>> <<run _npc.saveData.set("whippedToday", false)>> <<run _npc.saveData.set("convincedToday", false)>> /* Add to prisoners array */ <<run $playerBrothel.prisoners.push(_npc.info.id)>> <</if>> <</nobr>> <</widget>>
/* Random events for the brothel */ /* Check if random event should trigger (20% chance when walking around) */ <<widget "BrothelRandomEventCheck">> <<nobr>> <<if $playerBrothel && $playerBrothel.prostitutes && $playerBrothel.prostitutes.length > 0>> <<set _eventChance = Random(1, 100)>> <<if _eventChance <= 15>> /* 15% chance for an event */ <<set _eventType = Random(1, 4)>> <<switch _eventType>> <<case 1>> <<goto "BrothelEvent_RowdyClient">> <<case 2>> <<goto "BrothelEvent_NonPayingClient">> <<case 3>> <<goto "BrothelEvent_RoughSexRequest">> <<case 4>> <<goto "BrothelEvent_Nymphomaniac">> <</switch>> <</if>> <</if>> <</nobr>> <</widget>>
<<nobr>> <<include "PlayerBrothel_InitCheck">> <<SetBackground "Media/Locations/City/RedLightDistrict/Brothel/Hall.jpg">> /* Pick a random worker */ <<set _workerId = $playerBrothel.prostitutes.random()>> <<set _worker = $Characters.find(c => c.info.id == _workerId)>> <<if !_worker>> <<goto "PlayerBrothel_Main">> <</if>> <<set _workerName = _worker.info.firstName>> <div class="centre-text" style="font-size: 22px; color: #f44336; text-shadow: 0 0 15px rgba(244, 67, 54, 0.5);">⚠️ Incident!</div> <fieldset style="background: linear-gradient(135deg, rgba(244, 67, 54, 0.2) 0%, rgba(33, 33, 33, 0.95) 100%); border: 2px solid #f44336;"> <legend style="color: #ef9a9a;">🔥 Rowdy Client</legend> <<set _eventMsg = "You hear shouting from one of the rooms. A drunk client is causing trouble with " + _workerName + "!">> <<ChatMessage _eventMsg>> <<if $playerBrothel.upgrades && $playerBrothel.upgrades.security == true>> /* Security handles it */ <<ChatMessage "Your security guards quickly rush to the scene and restrain the troublemaker.">> <div style="margin-top: 15px; padding: 15px; background: rgba(76, 175, 80, 0.2); border-radius: 10px; border: 1px solid #4CAF50;"> <p style="color: #81c784;">🛡️ The guards are holding the client. What do you want to do with him?</p> </div> <div class="brothel-btn-container" style="margin-top: 15px;"> <<set $brothelEventWorkerId = _workerId>> <span class="brothel-btn danger"><<button "🚪 Throw him out">> <<ChatMessage "You order the guards to throw him out. He won't be coming back anytime soon.">> <<set $playerBrothel.reputation = Math.max(0, $playerBrothel.reputation - 2)>> <<goto "PlayerBrothel_Main">> <</button>></span> <<if $playerBrothel.upgrades.dungeon == true>> <<set _dungeonFull = $playerBrothel.prisoners.length >= $playerBrothel.dungeonCells>> <<if _dungeonFull>> <span class="brothel-btn disabled"><<button "⛓️ Dungeon Full">><</button>></span> <<else>> <span class="brothel-btn dark"><<button "⛓️ Take him to the dungeon">> /* Create a random male client NPC */ <<include "CharactersData">> <<set _clientNpc = CreateCharacter({ isPlayer: false, characterWork: "None", age: Random(25, 50), gender: "Male", sexualPreference: "Bi" }, true)>> <<unset $maleNames $femaleNames $surnames>> <<run _clientNpc.saveData.set("dungeonSubmission", 0)>> <<run _clientNpc.saveData.set("prisonerReason", "rowdy")>> <<run $playerBrothel.prisoners.push(_clientNpc.info.id)>> <<ChatMessage "The guards drag him down to the dungeon. He'll have time to think about his behavior...">> <<goto "PlayerBrothel_Main">> <</button>></span> <</if>> <</if>> </div> <<else>> /* No security - player must handle it */ <<ChatMessage "You don't have security guards. You'll have to deal with this yourself!">> <div style="margin-top: 15px; padding: 15px; background: rgba(255, 152, 0, 0.2); border-radius: 10px; border: 1px solid #ff9800;"> <p style="color: #ffcc80;">⚔️ The client is getting aggressive. What will you do?</p> </div> <div class="brothel-btn-container" style="margin-top: 15px;"> <<set $brothelEventWorkerId = _workerId>> <span class="brothel-btn danger"><<button "👊 Fight him!" "BrothelEvent_RowdyClient_Fight">><</button>></span> <span class="brothel-btn neutral"><<button "🏃 Back off and let him go">> /* Worker gets hurt, reputation suffers */ <<set _worker = $Characters.find(c => c.info.id == $brothelEventWorkerId)>> <<if _worker>> <<run _worker.status.health.value = _worker.status.health.min>> <</if>> <<set $playerBrothel.reputation = Math.max(0, $playerBrothel.reputation - 15)>> <<set _badMsg = "The client beats " + _workerName + " badly before storming out. Your reputation suffers greatly.">> <<ChatMessage _badMsg>> <<goto "PlayerBrothel_Main">> <</button>></span> </div> <</if>> </fieldset> <</nobr>>
<<nobr>> <<include "PlayerBrothel_InitCheck">> <<SetBackground "Media/Locations/City/RedLightDistrict/Brothel/Hall.jpg">> <<set _worker = $Characters.find(c => c.info.id == $brothelEventWorkerId)>> <<set _workerName = _worker ? _worker.info.firstName : "the worker">> /* Simple fight check based on player stats */ <<set _playerStrength = $player.status.health.value + $player.status.energy.value>> <<set _clientStrength = Random(30, 80)>> <<set _fightRoll = Random(1, 100)>> /* Player wins if their strength + roll beats client */ <<set _playerWins = (_playerStrength + _fightRoll) > (_clientStrength + 50)>> <div class="centre-text" style="font-size: 22px; color: #ff9800;">⚔️ Fight!</div> <fieldset style="background: linear-gradient(135deg, rgba(255, 152, 0, 0.2) 0%, rgba(33, 33, 33, 0.95) 100%); border: 2px solid #ff9800;"> <legend style="color: #ffcc80;">Combat Result</legend> <<if _playerWins>> <<ChatMessage "You manage to overpower the drunk client! He's now at your mercy.">> <<run $player.status.health.decrease(Random(5, 15))>> <<run $player.status.energy.decrease(Random(10, 20))>> <div style="margin-top: 15px; padding: 15px; background: rgba(76, 175, 80, 0.2); border-radius: 10px; border: 1px solid #4CAF50;"> <p style="color: #81c784;">✅ Victory! The client is subdued. What do you want to do with him?</p> </div> <div class="brothel-btn-container" style="margin-top: 15px;"> <span class="brothel-btn danger"><<button "🚪 Throw him out">> <<ChatMessage "You drag him outside and toss him into the street.">> <<goto "PlayerBrothel_Main">> <</button>></span> <<if $playerBrothel.upgrades && $playerBrothel.upgrades.dungeon == true>> <<set _dungeonFull2 = $playerBrothel.prisoners.length >= $playerBrothel.dungeonCells>> <<if _dungeonFull2>> <span class="brothel-btn disabled"><<button "⛓️ Dungeon Full">><</button>></span> <<else>> <span class="brothel-btn dark"><<button "⛓️ Take him to the dungeon">> /* Create a random male client NPC */ <<include "CharactersData">> <<set _clientNpc = CreateCharacter({ isPlayer: false, characterWork: "None", age: Random(25, 50), gender: "Male", sexualPreference: "Bi" }, true)>> <<unset $maleNames $femaleNames $surnames>> <<run _clientNpc.saveData.set("dungeonSubmission", 0)>> <<run _clientNpc.saveData.set("prisonerReason", "rowdy")>> <<run $playerBrothel.prisoners.push(_clientNpc.info.id)>> <<ChatMessage "You drag him down to the dungeon. He'll regret causing trouble here...">> <<goto "PlayerBrothel_Main">> <</button>></span> <</if>> <</if>> </div> <<else>> /* Player loses */ <<run $player.status.health.decrease(Random(20, 40))>> <<run $player.status.energy.decrease(Random(25, 40))>> <<if _worker>> <<run _worker.status.health.value = _worker.status.health.min>> <</if>> <<set $playerBrothel.reputation = Math.max(0, $playerBrothel.reputation - 20)>> <<set _loseMsg = "The client overpowers you! He beats you and " + _workerName + " before fleeing. Your reputation takes a massive hit.">> <<ChatMessage _loseMsg>> <div style="margin-top: 15px; padding: 15px; background: rgba(244, 67, 54, 0.2); border-radius: 10px; border: 1px solid #f44336;"> <p style="color: #ef9a9a;">❌ Defeat! You need to recover...</p> <p style="color: #888; font-size: 12px;">Consider hiring security guards to prevent this in the future.</p> </div> <div class="brothel-btn-container" style="margin-top: 15px;"> <span class="brothel-btn neutral"><<button "← Continue" "PlayerBrothel_Main">><</button>></span> </div> <</if>> </fieldset> <</nobr>>
<<nobr>> <<include "PlayerBrothel_InitCheck">> <<SetBackground "Media/Locations/City/RedLightDistrict/Brothel/Hall.jpg">> /* Pick a random worker */ <<set _workerId = $playerBrothel.prostitutes.random()>> <<set _worker = $Characters.find(c => c.info.id == _workerId)>> <<if !_worker>> <<goto "PlayerBrothel_Main">> <</if>> <<set _workerName = _worker.info.firstName>> <<set _stolenAmount = Random(50, 200)>> <div class="centre-text" style="font-size: 22px; color: #ff9800; text-shadow: 0 0 15px rgba(255, 152, 0, 0.5);">💸 Problem!</div> <fieldset style="background: linear-gradient(135deg, rgba(255, 152, 0, 0.2) 0%, rgba(33, 33, 33, 0.95) 100%); border: 2px solid #ff9800;"> <legend style="color: #ffcc80;">💰 Non-Paying Client</legend> <<set _eventMsg = _workerName + " runs up to you, upset. A client just left without paying $" + _stolenAmount + "!">> <<ChatMessage _eventMsg>> <<if $playerBrothel.upgrades && $playerBrothel.upgrades.security == true>> /* Security catches him */ <<ChatMessage "Your security guards quickly catch the thief at the exit and drag him back to you.">> <div style="margin-top: 15px; padding: 15px; background: rgba(76, 175, 80, 0.2); border-radius: 10px; border: 1px solid #4CAF50;"> <p style="color: #81c784;">🛡️ The guards are holding the client. He's begging for mercy. What do you want to do?</p> </div> <div class="brothel-btn-container" style="margin-top: 15px;"> <<set $brothelEventStolenAmount = _stolenAmount>> <span class="brothel-btn success"><<button "💵 Make him pay double">> <<set _payment = $brothelEventStolenAmount * 2>> <<set $player.money += _payment>> <<set _payMsg = "You force him to pay $" + _payment + " as compensation.">> <<ChatMessage _payMsg>> <<goto "PlayerBrothel_Main">> <</button>></span> <span class="brothel-btn danger"><<button "🚪 Take the money and throw him out">> <<set $player.money += $brothelEventStolenAmount>> <<set _payMsg = "You take back the $" + $brothelEventStolenAmount + " and have him thrown out.">> <<ChatMessage _payMsg>> <<goto "PlayerBrothel_Main">> <</button>></span> <<if $playerBrothel.upgrades.dungeon == true>> <<set _dungeonFull3 = $playerBrothel.prisoners.length >= $playerBrothel.dungeonCells>> <<if _dungeonFull3>> <span class="brothel-btn disabled"><<button "⛓️ Dungeon Full">><</button>></span> <<else>> <span class="brothel-btn dark"><<button "⛓️ Take him to the dungeon">> <<set $player.money += $brothelEventStolenAmount>> /* Create a random male client NPC */ <<include "CharactersData">> <<set _clientNpc = CreateCharacter({ isPlayer: false, characterWork: "None", age: Random(25, 50), gender: "Male", sexualPreference: "Bi" }, true)>> <<unset $maleNames $femaleNames $surnames>> <<run _clientNpc.saveData.set("dungeonSubmission", 0)>> <<run _clientNpc.saveData.set("prisonerReason", "thief")>> <<run $playerBrothel.prisoners.push(_clientNpc.info.id)>> <<set _payMsg = "You take back the $" + $brothelEventStolenAmount + " and send him to the dungeon to work off his crime...">> <<ChatMessage _payMsg>> <<goto "PlayerBrothel_Main">> <</button>></span> <</if>> <</if>> </div> <<else>> /* No security - client escapes */ <<ChatMessage "Without security guards, the thief has already fled into the streets.">> <<set $playerBrothel.reputation = Math.max(0, $playerBrothel.reputation - 5)>> <div style="margin-top: 15px; padding: 15px; background: rgba(244, 67, 54, 0.2); border-radius: 10px; border: 1px solid #f44336;"> <<set _lossMsg = "You lost $" + _stolenAmount + ". Consider hiring security guards to prevent theft.">> <p style="color: #ef9a9a;"><<print _lossMsg>></p> </div> <div class="brothel-btn-container" style="margin-top: 15px;"> <span class="brothel-btn neutral"><<button "← Continue" "PlayerBrothel_Main">><</button>></span> </div> <</if>> </fieldset> <</nobr>>
<<nobr>> <<include "PlayerBrothel_InitCheck">> <<SetBackground "Media/Locations/City/RedLightDistrict/Brothel/Hall.jpg">> /* Pick a random worker */ <<set _workerId = $playerBrothel.prostitutes.random()>> <<set _worker = $Characters.find(c => c.info.id == _workerId)>> <<if !_worker>> <<goto "PlayerBrothel_Main">> <</if>> <<set _workerName = _worker.info.firstName>> <<set _bonusAmount = Random(100, 500)>> <<set $brothelEventWorkerId = _workerId>> <<set $brothelEventBonus = _bonusAmount>> <div class="centre-text" style="font-size: 22px; color: #9c27b0; text-shadow: 0 0 15px rgba(156, 39, 176, 0.5);">💋 Special Request</div> <fieldset style="background: linear-gradient(135deg, rgba(156, 39, 176, 0.2) 0%, rgba(33, 33, 33, 0.95) 100%); border: 2px solid #9c27b0;"> <legend style="color: #ce93d8;">🔥 Rough Sex Request</legend> <<set _eventMsg = "A wealthy-looking client approaches you. He wants to have rough, intense sex with " + _workerName + " and is willing to pay extra.">> <<ChatMessage _eventMsg>> <div style="margin-top: 15px; padding: 15px; background: rgba(76, 175, 80, 0.2); border-radius: 10px; border: 1px solid #4CAF50;"> <<set _offerMsg = "He's offering an additional $" + _bonusAmount + " on top of the regular fee.">> <p style="color: #81c784;">💰 <<print _offerMsg>></p> </div> <div style="margin-top: 10px; padding: 10px; background: rgba(255, 152, 0, 0.1); border-radius: 8px;"> <p style="color: #ffcc80; font-size: 12px;">⚠️ Warning: This may affect the worker's health and energy.</p> </div> <div class="brothel-btn-container" style="margin-top: 15px;"> <span class="brothel-btn success"><<button "✅ Accept the offer">> <<set $player.money += $brothelEventBonus>> <<set _worker = $Characters.find(c => c.info.id == $brothelEventWorkerId)>> <<if _worker>> <<run _worker.status.health.decrease(Random(10, 25))>> <<run _worker.status.energy.decrease(Random(15, 30))>> <</if>> <<set _acceptMsg = "You accept the offer. The client pays $" + $brothelEventBonus + " extra. " + _workerName + " looks a bit worn out afterwards, but the money is good.">> <<ChatMessage _acceptMsg>> <<goto "PlayerBrothel_Main">> <</button>></span> <span class="brothel-btn danger"><<button "❌ Refuse">> <<ChatMessage "You politely decline. The client looks disappointed but accepts your decision.">> <<goto "PlayerBrothel_Main">> <</button>></span> </div> </fieldset> <</nobr>>
<<nobr>> <<include "PlayerBrothel_InitCheck">> <<include "CharactersData">> <<SetBackground "Media/Locations/City/RedLightDistrict/Brothel/Hall.jpg">> /* Create a random nymphomaniac NPC */ <<set _nymphoGender = Random(0, 1) == 0 ? "Female" : "Male">> <<if Random(1, 100) <= 15>> <<set _nymphoGender = "Shemale">> <</if>> <<set _breastSize = _nymphoGender == "Male" ? 0 : Random(2, 5)>> <<set _buttSize = Random(1, 4)>> <<set _faceValue = _nymphoGender == "Male" ? 0 : Random(3, 5)>> <<set _vaginaSize = _nymphoGender == "Male" ? 0 : Random(10, 30)>> <<set _penisSize = _nymphoGender == "Female" ? 0 : Random(10, 25)>> <<set _nympho = CreateCharacter({ isPlayer: false, characterWork: "Nymphomaniac", gender: _nymphoGender, sexualPreference: "Bi", clothesPreference: (_nymphoGender == "Male" ? "men" : "women"), age: Random(20, 35), face: _faceValue, breastSize: _breastSize, buttSize: _buttSize, vaginaSize: _vaginaSize, penisSize: _penisSize, throatSize: Random(20, 40), anusSize: Random(15, 35) }, true)>> <<unset $maleNames $femaleNames $surnames>> <<if !_nympho>> <<goto "PlayerBrothel_Main">> <</if>> <<set $brothelEventNympho = _nympho>> <<set _nymphoName = _nympho.info.firstName>> <<set _nymphoGenderText = _nympho.gender()>> <div class="centre-text" style="font-size: 22px; color: #e91e63; text-shadow: 0 0 15px rgba(233, 30, 99, 0.5);">💕 Unexpected Visitor</div> <fieldset style="background: linear-gradient(135deg, rgba(233, 30, 99, 0.2) 0%, rgba(33, 33, 33, 0.95) 100%); border: 2px solid #e91e63;"> <legend style="color: #f48fb1;">😍 Nymphomaniac</legend> /* Photo centered at top */ <div style="text-align: center; margin-bottom: 15px;"> <<ShowNpcIcon _nympho>> </div> /* Text and dialogue below */ <<set _arrivalMsg = "A desperate-looking " + _nymphoGenderText.toLowerCase() + " rushes up to you. " + _nymphoName + " seems extremely aroused and barely able to contain themselves.">> <<ChatMessage _arrivalMsg>> <<set _pleadings = [ "Please! I need this so badly! Let me work here just once, I'll do anything!", "I'm burning up inside! Just one client, please! I need it!", "You have to help me! I can't take it anymore! Let me service someone!", "I'll work for free! Just please let me have sex with someone here!" ]>> <<Chat _nympho _pleadings.random()>> <div style="margin-top: 15px; padding: 15px; background: rgba(156, 39, 176, 0.15); border-radius: 10px; border: 1px solid #9c27b0;"> <p style="color: #ce93d8;">This person is clearly a nymphomaniac and desperately needs sexual release. What do you do?</p> </div> <div class="brothel-btn-container" style="margin-top: 15px;"> <span class="brothel-btn success"><<button "💰 Let them work (Earn $200)">> <<set $player.money += 200>> <<ChatMessage "You allow them to service one client. They're incredibly enthusiastic and the client is very satisfied. You pocket $200.">> /* Remove the NPC */ <<set _nymphoIndex = $Characters.indexOf($brothelEventNympho)>> <<if _nymphoIndex != -1>> <<run $Characters.splice(_nymphoIndex, 1)>> <</if>> <<goto "PlayerBrothel_Main">> <</button>></span> /* Check if player can have sex - energy, stamina, and not locked */ <<set _playerEnergy = $player.status.energy.value>> <<set _playerPotency = $player.status.potency.value>> <<set _potencyMin = $player.status.potency.min>> <<set _hasEnergy = _playerEnergy >= 15>> <<set _hasPotency = _playerPotency > 0>> <<set _notLocked = $playerlock != true>> <<set _canHaveSex = _hasEnergy && _hasPotency && _notLocked>> <<if _canHaveSex>> <span class="brothel-btn primary"><<button "💋 Have sex with them yourself">> <<set $interactionNpc = $brothelEventNympho>> <<set $indexNPC = $Characters.indexOf($brothelEventNympho)>> <<goto "BrothelEvent_Nympho_Sex">> <</button>></span> <<elseif !_notLocked>> <span class="brothel-btn primary disabled" title="You're locked in a chastity cage"> <<button "💋 Have sex with them yourself">><</button>> </span> <<elseif !_hasEnergy>> <span class="brothel-btn primary disabled" title="Not enough energy"> <<button "💋 Have sex with them yourself">><</button>> </span> <<elseif !_hasPotency>> <span class="brothel-btn primary disabled" title="Not enough sex stamina"> <<button "💋 Have sex with them yourself">><</button>> </span> <<else>> <span class="brothel-btn primary disabled" title="Cannot have sex"> <<button "💋 Have sex with them yourself">><</button>> </span> <</if>> <span class="brothel-btn danger"><<button "❌ Send them away">> <<Chat $brothelEventNympho "No! Please! I need this!">> <<ChatMessage "You refuse and have them escorted out. They leave looking desperate and disappointed.">> /* Remove the NPC */ <<set _nymphoIndex = $Characters.indexOf($brothelEventNympho)>> <<if _nymphoIndex != -1>> <<run $Characters.splice(_nymphoIndex, 1)>> <</if>> <<goto "PlayerBrothel_Main">> <</button>></span> </div> </fieldset> <</nobr>>
<<nobr>> <<include "PlayerBrothel_InitCheck">> <<include "CharactersData">> <<SetBackground "Media/Locations/City/RedLightDistrict/Brothel/Hall.jpg">> <<set _nympho = $brothelEventNympho>> <<if !_nympho || !_nympho.info>> <<ChatMessage "The visitor seems to have left...">> <<goto "PlayerBrothel_Main">> <</if>> /* Set up for standard sex system - NPC will be destroyed after sex */ <<set $interactionNpc = _nympho>> <<set $indexNPC = $Characters.indexOf(_nympho)>> <<set $sexType = "OneSex (Destroy)">> /* Make sure NPC is in Characters array */ <<if $indexNPC == -1>> <<run $Characters.push(_nympho)>> <<set $indexNPC = $Characters.length - 1>> <</if>> <<include "UpdateAll">> <<set _nymphoName = _nympho.info.firstName>> <<set _nymphoGender = _nympho.gender()>> <div class="centre-text" style="font-size: 22px; color: #e91e63;">💕 <<print _nymphoName>></div> <fieldset style="background: linear-gradient(135deg, rgba(233, 30, 99, 0.2) 0%, rgba(33, 33, 33, 0.95) 100%); border: 2px solid #e91e63;"> <legend style="color: #f48fb1;">Choose Position</legend> /* Photo centered at top */ <div style="text-align: center; margin-bottom: 15px;"> <<ShowNpcIcon _nympho>> </div> /* Text below */ <<set _readyMsg = _nymphoName + " is ready and eager. They look at you with desperate desire.">> <<ChatMessage _readyMsg>> <<set _playerHasPenis = $player.body.penisSize.value > 0>> <<set _playerHasVagina = $player.body.vaginaSize.value > 0>> <<set _nymphoHasPenis = _nympho.body.penisSize.value > 0>> <<set _nymphoHasVagina = _nympho.body.vaginaSize.value > 0>> <div class="btn-container"> /* Player is Active (Top) */ <<if _playerHasPenis>> <div class="btn"><<button "Sex (Active)" "Sex">><</button>></div> <</if>> /* Player is Passive (Bottom) */ <<if _nymphoHasPenis>> <div class="btn"><<button "Sex (Passive)" "PassiveSex">><</button>></div> <<elseif _nymphoHasVagina && _playerHasVagina>> <div class="btn"><<button "Sex (Passive)" "PassiveSex">><</button>></div> <</if>> </div> <div class="brothel-btn-container" style="margin-top: 15px;"> <span class="brothel-btn neutral"><<button "← Changed my mind">> /* Remove the NPC */ <<set _nymphoIndex = $Characters.indexOf($brothelEventNympho)>> <<if _nymphoIndex != -1>> <<run $Characters.splice(_nymphoIndex, 1)>> <</if>> <<unset $sexType $interactionNpc $indexNPC>> <<goto "PlayerBrothel_Main">> <</button>></span> </div> </fieldset> <</nobr>> /* Old custom sex scenes removed - now using standard sex system with "OneSex (Destroy)" type */
<<nobr>> /* This passage is included when player visits the brothel */ /* It shows income status - actual income is calculated weekly in day-refresh.ts */ <<include "PlayerBrothel_InitCheck">> /* Count working prostitutes only */ <<set _workingProstitutes = []>> <<for _i = 0; _i < $playerBrothel.prostitutes.length; _i++>> <<set _workerId = $playerBrothel.prostitutes[_i]>> <<set _assignment = $playerBrothel.workerAssignments[_workerId] || "work">> <<if _assignment == "work">> <<run _workingProstitutes.push(_workerId)>> <</if>> <</for>> <<if _workingProstitutes.length > 0>> /* Show today's earnings */ <<set _dailyEarnings = $playerBrothel.dailyEarnings || 0>> <<if _dailyEarnings > 0>> <<set _dailyMsg = "📈 Today's income: +$" + _dailyEarnings>> <<ChatMessage _dailyMsg>> <</if>> /* Show uncollected earnings */ <<if $playerBrothel.uncollectedEarnings && $playerBrothel.uncollectedEarnings > 0>> <<set _uncollectedMsg = "💵 Ready to collect: $" + $playerBrothel.uncollectedEarnings>> <<ChatMessage _uncollectedMsg>> <</if>> /* Show last week's earnings if available */ <<if $playerBrothel.weeklyEarnings && $playerBrothel.weeklyEarnings > 0>> <<set _weeklyMsg = "💰 Last week total: $" + $playerBrothel.weeklyEarnings>> <<ChatMessage _weeklyMsg>> <</if>> /* Show weekly salary notification if salary was paid */ <<if $playerBrothel.lastWeeklySalary && $playerBrothel.lastWeeklySalary > 0>> <<set _salaryMsg = "💸 Weekly salaries paid: -$" + $playerBrothel.lastWeeklySalary>> <<ChatMessage _salaryMsg>> <<set $playerBrothel.lastWeeklySalary = 0>> <</if>> /* Show level up notification */ <<if $playerBrothel.leveledUpThisWeek>> <<set _levelUpMsg = "🎉 Brothel leveled up to Level " + $playerBrothel.level + "! ⭐ +1 Skill Point!">> <<ChatMessage _levelUpMsg>> <<set $playerBrothel.leveledUpThisWeek = false>> <</if>> <<else>> <<ChatMessage "No workers assigned to work. Assign workers to 'Work' to earn income.">> <</if>> <</nobr>>
<<widget "BrothelDailyReset">> <<nobr>> /* Call this widget at the start of each new day to reset daily flags */ /* Note: Income is now calculated weekly in day-refresh.ts */ <<set $playerBrothel.visitedToday = false>> <</nobr>> <</widget>>
<<nobr>> <<include "UpdateAll">> <div class="centre-text" style="font-size: 20px; color: #4CAF50;">💰 Brothel Income Report</div> <<set _workerCount = $playerBrothel.prostitutes.length>> <<set _roomCount = $playerBrothel.rooms>> <<set _dailyEarnings = $playerBrothel.dailyEarnings || 0>> <<set _weeklyEarnings = $playerBrothel.weeklyEarnings || 0>> /* Count working prostitutes */ <<set _workingCount = 0>> <<for _i = 0; _i < $playerBrothel.prostitutes.length; _i++>> <<set _wId = $playerBrothel.prostitutes[_i]>> <<set _assignment = $playerBrothel.workerAssignments[_wId] || "work">> <<if _assignment == "work">> <<set _workingCount++>> <</if>> <</for>> /* Calculate upgrade bonus */ <<set _upgradeBonus = 0>> <<if $playerBrothel.upgrades.advertising>><<set _upgradeBonus += 20>><</if>> <<if $playerBrothel.upgrades.security>><<set _upgradeBonus += 5>><</if>> <<if $playerBrothel.upgrades.bar>><<set _upgradeBonus += 15>><</if>> <<if $playerBrothel.upgrades.vipZone>><<set _upgradeBonus += 30>><</if>> <<if $playerBrothel.upgrades.lighting>><<set _upgradeBonus += 10>><</if>> <<if $playerBrothel.upgrades.furniture>><<set _upgradeBonus += 15>><</if>> <fieldset style="background: rgba(76, 175, 80, 0.1); border: 1px solid #4CAF50;"> <legend style="color: #81c784;">📊 Statistics</legend> <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 10px; padding: 10px;"> <div style="color: #aaa;">👩 Total Workers:</div><div style="color: #fff; font-weight: bold;"><<print _workerCount>>/<<print _roomCount>></div> <div style="color: #aaa;">💋 Working Now:</div><div style="color: #e91e63; font-weight: bold;"><<print _workingCount>></div> <div style="color: #aaa;">🏠 Rooms:</div><div style="color: #fff; font-weight: bold;"><<print _roomCount>>/<<print $playerBrothel.maxRooms>></div> <div style="color: #aaa;">🛏️ Client Rooms:</div><div style="color: #fff; font-weight: bold;"><<print $playerBrothel.clientRooms>></div> <div style="color: #aaa;">⭐ Brothel Level:</div><div style="color: #ffd700; font-weight: bold;"><<print $playerBrothel.level>>/26</div> <div style="color: #aaa;">📈 Upgrade Bonus:</div><div style="color: #4CAF50; font-weight: bold;">+<<print _upgradeBonus>>%</div> <div style="color: #aaa;">📈 Today:</div><div style="color: #ff9800; font-weight: bold;">+$<<print _dailyEarnings>></div> <div style="color: #aaa;">💵 Last Week:</div><div style="color: #4CAF50; font-weight: bold;">$<<print _weeklyEarnings>></div> <div style="color: #aaa;">💰 Uncollected:</div><div style="color: #ffd700; font-weight: bold;">$<<print $playerBrothel.uncollectedEarnings || 0>></div> </div> </fieldset> <fieldset style="background: rgba(33, 150, 243, 0.1); border: 1px solid #2196f3; margin-top: 15px;"> <legend style="color: #64b5f6;">📋 Income System</legend> <div style="padding: 10px; font-size: 13px;"> <p style="color: #fff; margin: 5px 0;">💵 <b>Daily income:</b> <span style="color: #4CAF50;">1/7 of weekly rate</span> per worker</p> <p style="color: #fff; margin: 5px 0;">💰 <b>Collect anytime:</b> <span style="color: #4CAF50;">Income added daily, collect whenever you want!</span></p> <p style="color: #fff; margin: 5px 0;">✨ <b>Attractiveness:</b> Higher attractiveness = more income. <span style="color: #ff9800;">Workers lose attractiveness daily!</span></p> <p style="color: #fff; margin: 5px 0;">💆 <b>Spa Salon:</b> <span style="color: #4fc3f7;">Restores worker attractiveness</span></p> <p style="color: #fff; margin: 5px 0;">🔥 <b>Corruption bonus:</b> Up to <span style="color: #4CAF50;">+$7/day</span> per worker</p> <p style="color: #fff; margin: 5px 0;">💸 <b>Salaries:</b> <span style="color: #f44336;">Paid weekly (deducted from earnings)</span></p> </div> </fieldset> <div class="brothel-btn-container padding-top"> <span class="brothel-btn neutral"><<button "← Back" "PlayerBrothel_Office">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "PlayerBrothel_InitCheck">> <<SetBackground "Media/Locations/City/RedLightDistrict/Brothel/office.jpg">> <div class="centre-text" style="font-size: 24px; color: #ffd700; text-shadow: 0 0 15px rgba(255, 215, 0, 0.5);">🎯 Brothel Skills</div> /* Display skill points */ <div style="text-align: center; margin: 15px 0;"> <span style="background: linear-gradient(135deg, #ffd700 0%, #ff8c00 100%); padding: 10px 25px; border-radius: 20px; font-size: 16px; font-weight: bold; color: #000; box-shadow: 0 4px 15px rgba(255, 215, 0, 0.4);"> ⭐ Skill Points: <<print $playerBrothel.skillPoints>> </span> </div> <<set _perks = $playerBrothel.perks>> <<set _points = $playerBrothel.skillPoints>> /* Skill Tree Container */ <div style="display: grid; grid-template-columns: repeat(2, 1fr); gap: 15px; padding: 10px;"> /* Column 1: Basic Skills */ <div style="background: linear-gradient(180deg, rgba(156, 39, 176, 0.2) 0%, rgba(33, 33, 33, 0.95) 100%); border: 2px solid #9c27b0; border-radius: 15px; padding: 15px;"> <h3 style="color: #ce93d8; text-align: center; margin-bottom: 15px;">📊 Management</h3> /* Perk 1: See Stats */ <<set _perkOwned = _perks.seeStats>> <<set _canBuy = _points >= 1 && !_perkOwned>> <div style="background: rgba(0,0,0,0.3); padding: 12px; border-radius: 10px; margin-bottom: 10px; border: 1px solid <<if _perkOwned>>#4CAF50<<else>>#666<</if>>;"> <div style="display: flex; justify-content: space-between; align-items: center;"> <div> <div style="color: <<if _perkOwned>>#4CAF50<<else>>#fff<</if>>; font-weight: bold;">👁️ Candidate Insight</div> <div style="color: #888; font-size: 11px;">See candidate statistics during casting</div> </div> <div> <<if _perkOwned>> <span style="color: #4CAF50; font-size: 12px;">✓ Owned</span> <<elseif _canBuy>> <span class="brothel-btn success small"><<button "Buy (1)">> <<set $playerBrothel.skillPoints -= 1>> <<set $playerBrothel.perks.seeStats = true>> <<goto "BrothelPerks_Main">> <</button>></span> <<else>> <span style="color: #666; font-size: 12px;">🔒 1 point</span> <</if>> </div> </div> </div> /* Perk 6: Haggle */ <<set _perkOwned = _perks.haggle>> <<set _canBuy = _points >= 1 && !_perkOwned>> <div style="background: rgba(0,0,0,0.3); padding: 12px; border-radius: 10px; margin-bottom: 10px; border: 1px solid <<if _perkOwned>>#4CAF50<<else>>#666<</if>>;"> <div style="display: flex; justify-content: space-between; align-items: center;"> <div> <div style="color: <<if _perkOwned>>#4CAF50<<else>>#fff<</if>>; font-weight: bold;">💬 Negotiator</div> <div style="color: #888; font-size: 11px;">Haggle to reduce candidate price by 30%</div> </div> <div> <<if _perkOwned>> <span style="color: #4CAF50; font-size: 12px;">✓ Owned</span> <<elseif _canBuy>> <span class="brothel-btn success small"><<button "Buy (1)">> <<set $playerBrothel.skillPoints -= 1>> <<set $playerBrothel.perks.haggle = true>> <<goto "BrothelPerks_Main">> <</button>></span> <<else>> <span style="color: #666; font-size: 12px;">🔒 1 point</span> <</if>> </div> </div> </div> /* Perk 5: Feminization Attempts */ <<set _perkOwned = _perks.feminizationAttempts>> <<set _canBuy = _points >= 2 && !_perkOwned>> <div style="background: rgba(0,0,0,0.3); padding: 12px; border-radius: 10px; margin-bottom: 10px; border: 1px solid <<if _perkOwned>>#4CAF50<<else>>#666<</if>>;"> <div style="display: flex; justify-content: space-between; align-items: center;"> <div> <div style="color: <<if _perkOwned>>#4CAF50<<else>>#fff<</if>>; font-weight: bold;">🔄 Persuasion Master</div> <div style="color: #888; font-size: 11px;">2 feminization attempts instead of 1</div> </div> <div> <<if _perkOwned>> <span style="color: #4CAF50; font-size: 12px;">✓ Owned</span> <<elseif _canBuy>> <span class="brothel-btn success small"><<button "Buy (2)">> <<set $playerBrothel.skillPoints -= 2>> <<set $playerBrothel.perks.feminizationAttempts = true>> <<goto "BrothelPerks_Main">> <</button>></span> <<else>> <span style="color: #666; font-size: 12px;">🔒 2 points</span> <</if>> </div> </div> </div> /* Perk 4: Security Discount */ <<set _perkOwned = _perks.securityDiscount>> <<set _canBuy = _points >= 1 && !_perkOwned>> <div style="background: rgba(0,0,0,0.3); padding: 12px; border-radius: 10px; margin-bottom: 10px; border: 1px solid <<if _perkOwned>>#4CAF50<<else>>#666<</if>>;"> <div style="display: flex; justify-content: space-between; align-items: center;"> <div> <div style="color: <<if _perkOwned>>#4CAF50<<else>>#fff<</if>>; font-weight: bold;">🛡️ Security Deal</div> <div style="color: #888; font-size: 11px;">50% discount on security weekly cost</div> </div> <div> <<if _perkOwned>> <span style="color: #4CAF50; font-size: 12px;">✓ Owned</span> <<elseif _canBuy>> <span class="brothel-btn success small"><<button "Buy (1)">> <<set $playerBrothel.skillPoints -= 1>> <<set $playerBrothel.perks.securityDiscount = true>> <<goto "BrothelPerks_Main">> <</button>></span> <<else>> <span style="color: #666; font-size: 12px;">🔒 1 point</span> <</if>> </div> </div> </div> /* Perk 7: Biweekly Pay */ <<set _perkOwned = _perks.biweeklyPay>> <<set _canBuy = _points >= 2 && !_perkOwned>> <div style="background: rgba(0,0,0,0.3); padding: 12px; border-radius: 10px; margin-bottom: 10px; border: 1px solid <<if _perkOwned>>#4CAF50<<else>>#666<</if>>;"> <div style="display: flex; justify-content: space-between; align-items: center;"> <div> <div style="color: <<if _perkOwned>>#4CAF50<<else>>#fff<</if>>; font-weight: bold;">📅 Extended Pay Period</div> <div style="color: #888; font-size: 11px;">Pay workers every 2 weeks instead of 1</div> </div> <div> <<if _perkOwned>> <span style="color: #4CAF50; font-size: 12px;">✓ Owned</span> <<elseif _canBuy>> <span class="brothel-btn success small"><<button "Buy (2)">> <<set $playerBrothel.skillPoints -= 2>> <<set $playerBrothel.perks.biweeklyPay = true>> <<goto "BrothelPerks_Main">> <</button>></span> <<else>> <span style="color: #666; font-size: 12px;">🔒 2 points</span> <</if>> </div> </div> </div> /* Perk 10: Surgery Discount */ <<set _perkOwned = _perks.surgeryDiscount>> <<set _canBuy = _points >= 2 && !_perkOwned>> <div style="background: rgba(0,0,0,0.3); padding: 12px; border-radius: 10px; border: 1px solid <<if _perkOwned>>#4CAF50<<else>>#666<</if>>;"> <div style="display: flex; justify-content: space-between; align-items: center;"> <div> <div style="color: <<if _perkOwned>>#4CAF50<<else>>#fff<</if>>; font-weight: bold;">💉 Medical Connections</div> <div style="color: #888; font-size: 11px;">50% discount on all surgeries</div> </div> <div> <<if _perkOwned>> <span style="color: #4CAF50; font-size: 12px;">✓ Owned</span> <<elseif _canBuy>> <span class="brothel-btn success small"><<button "Buy (2)">> <<set $playerBrothel.skillPoints -= 2>> <<set $playerBrothel.perks.surgeryDiscount = true>> <<goto "BrothelPerks_Main">> <</button>></span> <<else>> <span style="color: #666; font-size: 12px;">🔒 2 points</span> <</if>> </div> </div> </div> </div> /* Column 2: Upgradeable Skills */ <div style="background: linear-gradient(180deg, rgba(33, 150, 243, 0.2) 0%, rgba(33, 33, 33, 0.95) 100%); border: 2px solid #2196f3; border-radius: 15px; padding: 15px;"> <h3 style="color: #64b5f6; text-align: center; margin-bottom: 15px;">📈 Upgrades</h3> /* Perk 2: Profit Bonus (5 levels) */ <<set _level = _perks.profitBonus>> <<set _maxLevel = 5>> <<set _canBuy = _points >= 1 && _level < _maxLevel>> <div style="background: rgba(0,0,0,0.3); padding: 12px; border-radius: 10px; margin-bottom: 10px; border: 1px solid <<if _level >= _maxLevel>>#4CAF50<<elseif _level > 0>>#ff9800<<else>>#666<</if>>;"> <div style="display: flex; justify-content: space-between; align-items: center;"> <div> <div style="color: <<if _level > 0>>#ff9800<<else>>#fff<</if>>; font-weight: bold;">💰 Income Boost</div> <div style="color: #888; font-size: 11px;">+<<print _level * 10>>% brothel income (<<print _level>>/<<print _maxLevel>>)</div> </div> <div> <<if _level >= _maxLevel>> <span style="color: #4CAF50; font-size: 12px;">MAX</span> <<elseif _canBuy>> <<set _btnText = "+10% (" + _level + "/" + _maxLevel + ")">> <span class="brothel-btn info small"><<button _btnText>> <<set $playerBrothel.skillPoints -= 1>> <<set $playerBrothel.perks.profitBonus += 1>> <<goto "BrothelPerks_Main">> <</button>></span> <<else>> <span style="color: #666; font-size: 12px;">🔒 1 point</span> <</if>> </div> </div> /* Progress bar */ <<set _progressWidth = (_level / _maxLevel) * 100>> <<set _progressBarStyle = "background: linear-gradient(90deg, #ff9800, #ffc107); height: 100%; border-radius: 3px; width: " + _progressWidth + "%;">> <div style="background: rgba(255,255,255,0.1); height: 6px; border-radius: 3px; margin-top: 8px;"> <div @style="_progressBarStyle"></div> </div> </div> /* Perk 3: Energy Saving (5 levels) */ <<set _level = _perks.energySaving>> <<set _canBuy = _points >= 1 && _level < _maxLevel>> <div style="background: rgba(0,0,0,0.3); padding: 12px; border-radius: 10px; margin-bottom: 10px; border: 1px solid <<if _level >= _maxLevel>>#4CAF50<<elseif _level > 0>>#4CAF50<<else>>#666<</if>>;"> <div style="display: flex; justify-content: space-between; align-items: center;"> <div> <div style="color: <<if _level > 0>>#4CAF50<<else>>#fff<</if>>; font-weight: bold;">⚡ Energy Efficiency</div> <div style="color: #888; font-size: 11px;">-<<print _level * 10>>% worker energy use (<<print _level>>/<<print _maxLevel>>)</div> </div> <div> <<if _level >= _maxLevel>> <span style="color: #4CAF50; font-size: 12px;">MAX</span> <<elseif _canBuy>> <<set _btnText = "+10% (" + _level + "/" + _maxLevel + ")">> <span class="brothel-btn info small"><<button _btnText>> <<set $playerBrothel.skillPoints -= 1>> <<set $playerBrothel.perks.energySaving += 1>> <<goto "BrothelPerks_Main">> <</button>></span> <<else>> <span style="color: #666; font-size: 12px;">🔒 1 point</span> <</if>> </div> </div> <<set _progressWidth = (_level / _maxLevel) * 100>> <<set _progressBarStyle = "background: linear-gradient(90deg, #4CAF50, #8BC34A); height: 100%; border-radius: 3px; width: " + _progressWidth + "%;">> <div style="background: rgba(255,255,255,0.1); height: 6px; border-radius: 3px; margin-top: 8px;"> <div @style="_progressBarStyle"></div> </div> </div> /* Perk 8: Player Profit Bonus (5 levels) */ <<set _level = _perks.playerProfitBonus>> <<set _canBuy = _points >= 1 && _level < _maxLevel>> <div style="background: rgba(0,0,0,0.3); padding: 12px; border-radius: 10px; margin-bottom: 10px; border: 1px solid <<if _level >= _maxLevel>>#4CAF50<<elseif _level > 0>>#e91e63<<else>>#666<</if>>;"> <div style="display: flex; justify-content: space-between; align-items: center;"> <div> <div style="color: <<if _level > 0>>#e91e63<<else>>#fff<</if>>; font-weight: bold;">💋 Personal Touch</div> <div style="color: #888; font-size: 11px;">+<<print _level * 10>>% income when YOU work (<<print _level>>/<<print _maxLevel>>)</div> </div> <div> <<if _level >= _maxLevel>> <span style="color: #4CAF50; font-size: 12px;">MAX</span> <<elseif _canBuy>> <<set _btnText = "+10% (" + _level + "/" + _maxLevel + ")">> <span class="brothel-btn info small"><<button _btnText>> <<set $playerBrothel.skillPoints -= 1>> <<set $playerBrothel.perks.playerProfitBonus += 1>> <<goto "BrothelPerks_Main">> <</button>></span> <<else>> <span style="color: #666; font-size: 12px;">🔒 1 point</span> <</if>> </div> </div> <<set _progressWidth = (_level / _maxLevel) * 100>> <<set _progressBarStyle = "background: linear-gradient(90deg, #e91e63, #f48fb1); height: 100%; border-radius: 3px; width: " + _progressWidth + "%;">> <div style="background: rgba(255,255,255,0.1); height: 6px; border-radius: 3px; margin-top: 8px;"> <div @style="_progressBarStyle"></div> </div> </div> /* Perk 9: Relaxation Speed (5 levels) */ <<set _level = _perks.relaxationSpeed>> <<set _canBuy = _points >= 1 && _level < _maxLevel>> <div style="background: rgba(0,0,0,0.3); padding: 12px; border-radius: 10px; border: 1px solid <<if _level >= _maxLevel>>#4CAF50<<elseif _level > 0>>#00bcd4<<else>>#666<</if>>;"> <div style="display: flex; justify-content: space-between; align-items: center;"> <div> <div style="color: <<if _level > 0>>#00bcd4<<else>>#fff<</if>>; font-weight: bold;">🛋️ Quick Recovery</div> <div style="color: #888; font-size: 11px;">+<<print _level * 10>>% relaxation speed (<<print _level>>/<<print _maxLevel>>)</div> </div> <div> <<if _level >= _maxLevel>> <span style="color: #4CAF50; font-size: 12px;">MAX</span> <<elseif _canBuy>> <<set _btnText = "+10% (" + _level + "/" + _maxLevel + ")">> <span class="brothel-btn info small"><<button _btnText>> <<set $playerBrothel.skillPoints -= 1>> <<set $playerBrothel.perks.relaxationSpeed += 1>> <<goto "BrothelPerks_Main">> <</button>></span> <<else>> <span style="color: #666; font-size: 12px;">🔒 1 point</span> <</if>> </div> </div> <<set _progressWidth = (_level / _maxLevel) * 100>> <<set _progressBarStyle = "background: linear-gradient(90deg, #00bcd4, #4dd0e1); height: 100%; border-radius: 3px; width: " + _progressWidth + "%;">> <div style="background: rgba(255,255,255,0.1); height: 6px; border-radius: 3px; margin-top: 8px;"> <div @style="_progressBarStyle"></div> </div> </div> </div> </div> /* Back button */ <div class="brothel-btn-container" style="margin-top: 20px;"> <span class="brothel-btn neutral"><<button "← Back to Office" "PlayerBrothel_Office">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "PlayerBrothel_InitCheck">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/RedLightDistrict/Brothel/Training Room.jpg">> <<timed 0.2s>> <div class="centre-text">Training Room</div> <div class="centre-text" style="font-size: 14px; color: #9c27b0;">Train your workers to improve their skills</div> <<if $playerBrothel.prostitutes.length == 0>> <<ChatMessage "You have no workers to train. Hire someone first!">> <<else>> <<ChatMessage "Select a worker to begin training.">> <div class="characters-grid" style="padding-top: 15px;"> <<for _i = 0; _i < $playerBrothel.prostitutes.length; _i++>> <<set _prostId = $playerBrothel.prostitutes[_i]>> <<set _prost = $Characters.find(c => c.info.id == _prostId)>> <<if _prost>> <<set _prostIcon = _prost.getPhotoImage()>> <<set _prostName = _prost.info.firstName>> <<capture _prost _prostIcon _prostName>> <div class="btn btn--tw-link"> <<button "<img class='avatar-list' @src='_prostIcon' alt='Avatar'><p>_prostName</p>" "BrothelTraining_SelectWorker">> <<set $trainingWorker = _prost>> <</button>> </div> <</capture>> <</if>> <</for>> </div> <</if>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn neutral"><<button "← Back to Hall" "PlayerBrothel_Main">><</button>></span> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _worker = $trainingWorker>> <<ShowNpcIcon _worker>> <<set _workerName = _worker.info.firstName>> <<set _submission = _worker.saveData.has("submission") ? _worker.saveData.get("submission") : 3>> <<set _affection = _worker.saveData.has("affection") ? _worker.saveData.get("affection") : 3>> <<set _fear = _worker.saveData.has("fear") ? _worker.saveData.get("fear") : 1>> <<set _corruption = _worker.attributes.corruption.value>> <<set _personality = _worker.saveData.get("personality") || "default">> <fieldset> <legend><<print _workerName>> - Current Stats</legend> <div class="grid-row-twice"> <div> <p><b>Corruption:</b> <<print _corruption>>/10</p> <p><b>Submission:</b> <span style="color: #ff9800;"><<print _submission>>/10</span></p> </div> <div> <p><b>Affection:</b> <span style="color: #e91e63;"><<print _affection>>/10</span></p> <p><b>Fear:</b> <span style="color: #9c27b0;"><<print _fear>>/10</span></p> </div> </div> </fieldset> <<set _lastTrainingDay = _worker.saveData.get("lastTrainingDay") || 0>> <<set _currentDay = $dateTime.day + ($dateTime.month * 31) + ($dateTime.year * 365)>> <<set _alreadyTrainedToday = (_lastTrainingDay == _currentDay)>> <fieldset class="brothel-fieldset purple"> <legend>Training Options</legend> <<if _alreadyTrainedToday>> <div style="text-align: center; padding: 15px; color: #ff9800;"> <p>⏰ <<print _workerName>> has already been trained today.</p> <p style="font-size: 12px; color: #888;">Come back tomorrow for more training.</p> </div> <</if>> <div class="brothel-btn-container"> <<set _obedienceAcceptChance = (_submission * 8) + (_fear * 5) + (_affection * 3)>> <<set _sexAcceptChance = (_submission * 6) + (_corruption * 8) + (_affection * 4)>> <<if _alreadyTrainedToday>> <span class="brothel-btn disabled" title="Already trained today"><<button "🎯 Obedience Training">><</button>></span> <<elseif $player.status.energy.value >= 15>> <span class="brothel-btn special"><<button "🎯 Obedience Training" "BrothelTraining_Obedience">><</button>></span> <<else>> <span class="brothel-btn disabled" title="Not enough energy"><<button "🎯 Obedience Training (No Energy)">><</button>></span> <</if>> <<if _alreadyTrainedToday>> <span class="brothel-btn disabled" title="Already trained today"><<button "💋 Sex Skills Training">><</button>></span> <<elseif $player.status.energy.value >= 20>> <span class="brothel-btn primary"><<button "💋 Sex Skills Training" "BrothelTraining_SexSkills">><</button>></span> <<else>> <span class="brothel-btn disabled" title="Not enough energy"><<button "💋 Sex Skills Training (No Energy)">><</button>></span> <</if>> <<if _alreadyTrainedToday>> <span class="brothel-btn disabled" title="Already trained today"><<button "⚡ Discipline Training">><</button>></span> <<elseif $player.status.energy.value >= 10>> <span class="brothel-btn dark"><<button "⚡ Discipline Training" "BrothelTraining_Discipline">><</button>></span> <<else>> <span class="brothel-btn disabled" title="Not enough energy"><<button "⚡ Discipline Training (No Energy)">><</button>></span> <</if>> </div> </fieldset> <div class="brothel-btn-container padding-top"> <span class="brothel-btn neutral"><<button "← Back" "BrothelTrainingRoom_Main">><<unset $trainingWorker>><</button>></span> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _worker = $trainingWorker>> <<ShowNpcIcon _worker>> <<set _workerName = _worker.info.firstName>> <<set _submission = _worker.saveData.get("submission") || 3>> <<set _affection = _worker.saveData.get("affection") || 3>> <<set _fear = _worker.saveData.get("fear") || 1>> <<set _personality = _worker.saveData.get("personality") || "default">> /* Calculate acceptance chance */ <<set _acceptChance = 30 + (_submission * 5) + (_fear * 4) + (_affection * 3)>> <<set _acceptChance = Math.min(95, _acceptChance)>> <<set _roll = Random(1, 100)>> <<SpendTimeWithoutUpdate 30>> <<run $player.status.energy.decrease(15)>> /* Mark as trained today */ <<set _currentDay = $dateTime.day + ($dateTime.month * 31) + ($dateTime.year * 365)>> <<run _worker.saveData.set("lastTrainingDay", _currentDay)>> <<set _msg = "You begin obedience training with " + _workerName + "...">> <<ChatMessage _msg>> <<if _roll <= _acceptChance>> /* Success */ <<switch _personality>> <<case "shy">> <<set _response = [ "*follows instructions nervously* Y-yes, I'll do as you say...", "*tries hard to obey* I... I want to be good for you...", "*blushes but complies* I'll try my best..." ].random()>> <<case "submissive">> <<set _response = [ "*kneels obediently* Yes, master. I live to serve you.", "*follows every command* Whatever you desire, I will do.", "*devotedly* Your word is my law, sir." ].random()>> <<case "confident">> <<set _response = [ "*sighs but complies* Fine. I suppose I can follow your lead.", "*nods professionally* Alright, show me what you want.", "I'll go along with this. You are the boss after all." ].random()>> <<case "arrogant">> <<set _response = [ "*reluctantly* Ugh, fine. But don't think this makes you special.", "*rolls eyes but obeys* I suppose I can humor you.", "*grumbles* This better be worth my time..." ].random()>> <<default>> <<set _response = "Okay, I'll follow your instructions.">> <</switch>> <<Chat _worker _response>> /* Increase submission */ <<set _newSubmission = Math.min(10, _submission + 1)>> <<run _worker.saveData.set("submission", _newSubmission)>> <<set _msg = "The training was successful! " + _workerName + "'s submission increased. (Submission +1)">> <<ChatMessage _msg>> <<else>> /* Failure */ <<switch _personality>> <<case "shy">> <<set _response = [ "*backs away scared* I-I can't... please don't make me...", "*trembles* I'm sorry, I just can't do this right now...", "*tears up* It's too much... I need more time..." ].random()>> <<case "arrogant">> <<set _response = [ "*scoffs* You think you can order me around? Please.", "*crosses arms defiantly* I don't take orders from anyone.", "*dismissive* Not happening. Try again when you've earned my respect." ].random()>> <<case "confident">> <<set _response = [ "*shakes head* No. I have my limits and you're pushing them.", "*firmly* I said no. Respect that.", "*stands ground* This isn't something I'm willing to do." ].random()>> <<default>> <<set _response = "I'm sorry, but I can't do this right now.">> <</switch>> <<Chat _worker _response>> <<ChatMessage "The training failed. Try improving their stats first, or try again later.">> <</if>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Continue" "BrothelTraining_SelectWorker">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _worker = $trainingWorker>> <<ShowNpcIcon _worker>> <<set _workerName = _worker.info.firstName>> <<set _workerGender = _worker.gender()>> <<set _playerGender = $player.gender()>> <<set _submission = _worker.saveData.get("submission") || 3>> <<set _corruption = _worker.attributes.corruption.value>> <<set _affection = _worker.saveData.get("affection") || 3>> <<set _personality = _worker.saveData.get("personality") || "default">> /* Calculate acceptance chance */ <<set _acceptChance = 20 + (_submission * 5) + (_corruption * 6) + (_affection * 4)>> <<set _acceptChance = Math.min(95, _acceptChance)>> <<set _roll = Random(1, 100)>> <<SpendTimeWithoutUpdate 45>> <<run $player.status.energy.decrease(20)>> /* Mark as trained today */ <<set _currentDay = $dateTime.day + ($dateTime.month * 31) + ($dateTime.year * 365)>> <<run _worker.saveData.set("lastTrainingDay", _currentDay)>> <<set _msg = "You begin sex skills training with " + _workerName + "...">> <<ChatMessage _msg>> <<if _roll <= _acceptChance>> /* Success */ <<switch _personality>> <<case "shy">> <<set _response = [ "*blushes intensely* I-I'll try to learn... please guide me...", "*nervous but willing* O-okay... show me what to do...", "*trembling* I want to get better at this..." ].random()>> <<case "flirty">> <<set _response = [ "*excited* Ooh, practical training? I love it!", "*winks* Now THIS is the kind of lesson I enjoy...", "*giggles* Teach me everything you know, boss..." ].random()>> <<case "submissive">> <<set _response = [ "*kneels* Use my body to teach me, master.", "*obediently* I am ready to learn however you wish to teach.", "*devoted* My body is your tool for training, sir." ].random()>> <<default>> <<set _response = "Alright, let's practice...">> <</switch>> <<Chat _worker _response>> /* Show video */ <<if _workerGender == "Female">> <<SetVagPick _playerGender _workerGender>> <<else>> <<SetAnalPick _playerGender _workerGender>> <</if>> <<Video _pick>> /* Increase corruption */ <<set _newCorruption = Math.min(10, _corruption + 1)>> <<set _worker.attributes.corruption.value = _newCorruption>> /* Small chance to increase affection */ <<if Random(1, 100) <= 30>> <<set _affection = _worker.saveData.get("affection") || 3>> <<set _newAffection = Math.min(10, _affection + 1)>> <<run _worker.saveData.set("affection", _newAffection)>> <<set _msg = "The training was successful! " + _workerName + "'s corruption increased. They also seem closer to you. (Corruption +1, Affection +1)">> <<else>> <<set _msg = "The training was successful! " + _workerName + "'s corruption increased. (Corruption +1)">> <</if>> <<ChatMessage _msg>> /* Player effects */ <<if _playerGender != "Female">> <<run $player.status.potency.decrease(1)>> <</if>> <<run $player.status.horny.decrease(30)>> <<else>> /* Failure */ <<switch _personality>> <<case "shy">> <<set _response = [ "*backs away blushing* I-I'm not ready for this kind of training...", "*covers self* Please... not yet... I need more time...", "*tears up* It's too embarrassing..." ].random()>> <<case "arrogant">> <<set _response = [ "*scoffs* You think I need YOUR training? Please.", "*dismissive* I know what I'm doing. Back off.", "*haughty* Maybe when you prove you're worth my time." ].random()>> <<default>> <<set _response = "I'm not comfortable with this right now...">> <</switch>> <<Chat _worker _response>> <<ChatMessage "The training failed. Try improving their stats first.">> <</if>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Continue" "BrothelTraining_SelectWorker">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _worker = $trainingWorker>> <<ShowNpcIcon _worker>> <<set _workerName = _worker.info.firstName>> <<set _submission = _worker.saveData.get("submission") || 3>> <<set _fear = _worker.saveData.get("fear") || 1>> <<set _affection = _worker.saveData.get("affection") || 3>> <<set _personality = _worker.saveData.get("personality") || "default">> <<SpendTimeWithoutUpdate 20>> <<run $player.status.energy.decrease(10)>> /* Mark as trained today */ <<set _currentDay = $dateTime.day + ($dateTime.month * 31) + ($dateTime.year * 365)>> <<run _worker.saveData.set("lastTrainingDay", _currentDay)>> <<set _msg = "You establish discipline rules with " + _workerName + "...">> <<ChatMessage _msg>> /* Discipline always works but has different effects */ <<switch _personality>> <<case "shy">> <<set _response = [ "*trembles* Y-yes, I understand... I'll follow all the rules...", "*nods quickly* I-I don't want any trouble...", "*scared* I'll be good, I promise..." ].random()>> <<set _fearGain = 2>> <<set _submissionGain = 1>> <<set _affectionLoss = 0>> <<case "submissive">> <<set _response = [ "*kneels* Thank you for guiding me, master. I crave your discipline.", "*bows* Your rules give my life structure. I am grateful.", "*devotedly* I will obey every rule without question." ].random()>> <<set _fearGain = 0>> <<set _submissionGain = 2>> <<set _affectionLoss = 0>> <<case "confident">> <<set _response = [ "*sighs* Fine, I understand the rules. I'll follow them.", "*nods* Fair enough. Structure helps everyone.", "I can respect clear boundaries. I'll comply." ].random()>> <<set _fearGain = 1>> <<set _submissionGain = 1>> <<set _affectionLoss = 0>> <<case "arrogant">> <<set _response = [ "*grumbles* Whatever. I'll play along... for now.", "*rolls eyes* Fine, I get it. Rules. Great.", "*reluctant* Ugh, if I must..." ].random()>> <<set _fearGain = 2>> <<set _submissionGain = 0>> <<set _affectionLoss = 1>> <<case "desperate">> <<set _response = [ "*nods frantically* Yes, yes! I'll do whatever you say!", "*eager to please* I understand! I won't break any rules!", "*submissive* Anything to keep this job... I'll obey everything!" ].random()>> <<set _fearGain = 1>> <<set _submissionGain = 2>> <<set _affectionLoss = 0>> <<default>> <<set _response = "I understand. I'll follow the rules.">> <<set _fearGain = 1>> <<set _submissionGain = 1>> <<set _affectionLoss = 0>> <</switch>> <<Chat _worker _response>> /* Apply stat changes */ <<set _newFear = Math.min(10, _fear + _fearGain)>> <<set _newSubmission = Math.min(10, _submission + _submissionGain)>> <<set _newAffection = Math.max(0, _affection - _affectionLoss)>> <<run _worker.saveData.set("fear", _newFear)>> <<run _worker.saveData.set("submission", _newSubmission)>> <<run _worker.saveData.set("affection", _newAffection)>> <<set _resultMsg = "Discipline established.">> <<if _fearGain > 0>> <<set _resultMsg = _resultMsg + " (Fear +" + _fearGain + ")">> <</if>> <<if _submissionGain > 0>> <<set _resultMsg = _resultMsg + " (Submission +" + _submissionGain + ")">> <</if>> <<if _affectionLoss > 0>> <<set _resultMsg = _resultMsg + " (Affection -" + _affectionLoss + ")">> <</if>> <<ChatMessage _resultMsg>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Continue" "BrothelTraining_SelectWorker">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "PlayerBrothel_InitCheck">> <<include "UpdateAll">> <<set _currentLevel = $playerBrothel.level>> <div class="centre-text">Brothel Upgrades & Buildings</div> <div class="centre-text" style="font-size: 14px; color: #ffd700; margin-bottom: 10px;">⭐ Level <<print _currentLevel>>/26</div> <<ChatMessage "Purchase upgrades to increase your brothel's income and safety, or build new facilities.">> <<ChatMessage "New upgrades and buildings unlock as your brothel level increases.">> /* Define buildings (special constructions) with level requirements */ <<set _buildings = [ { id: "masterRoom", name: "Master Room", description: "A private bedroom for the brothel owner. You can sleep here to restore energy and pass time.", price: 2500, icon: "🛏️", levelRequired: 1 }, { id: "trainingRoom", name: "Training Room", description: "A room to train your workers' skills. Allows improving submission and sex skills.", price: 3000, icon: "🎓", levelRequired: 3 }, { id: "spa", name: "Spa Salon", description: "A relaxing spa where workers can restore energy faster. Assigned workers recover +50% energy per day.", price: 4000, icon: "💆", levelRequired: 5 }, { id: "relaxation", name: "Relaxation Room", description: "A cozy room for workers to rest. Reduces stress and increases affection over time.", price: 3500, icon: "🛋️", levelRequired: 6 }, { id: "dungeon", name: "Dungeon", description: "A prison for troublesome clients. Imprison non-paying or violent customers and break their will until they agree to work off their debt.", price: 5000, icon: "⛓️", levelRequired: 8 }, { id: "medical", name: "Medical Room", description: "A medical facility for treating workers. Assigned workers recover health and can be cured of diseases.", price: 6000, icon: "🏥", levelRequired: 10 } ]>> /* Define upgrades with level requirements and weekly costs */ <<set _upgrades = [ { id: "lighting", name: "Premium Lighting", description: "+10% attractiveness bonus", price: 300, incomeBonus: 0.10, levelRequired: 1, weeklyCost: 0 }, { id: "advertising", name: "Advertising", description: "+20% more clients", price: 500, incomeBonus: 0.20, levelRequired: 2, weeklyCost: 0 }, { id: "furniture", name: "Luxury Furniture", description: "+15% comfort bonus", price: 600, incomeBonus: 0.15, levelRequired: 4, weeklyCost: 0 }, { id: "bar", name: "Bar", description: "+15% income from drinks (Weekly upkeep: $100)", price: 800, incomeBonus: 0.15, levelRequired: 6, weeklyCost: 100 }, { id: "security", name: "Security Guards", description: "Reduces risk of problems (Weekly upkeep: $150)", price: 1000, incomeBonus: 0.05, levelRequired: 7, weeklyCost: 150 }, { id: "vipZone", name: "VIP Zone", description: "+30% income from premium clients", price: 2000, incomeBonus: 0.30, levelRequired: 12, weeklyCost: 0 } ]>> /* Client Rooms section */ <<set _clientRoomPrice = ($playerBrothel.clientRooms + 1) * 500>> <<set _maxClientRooms = $playerBrothel.rooms * 3>> <<set _roomProgress = Math.round(($playerBrothel.clientRooms / Math.max(1, _maxClientRooms)) * 100)>> <<set _clientRoomBtnText = "🛏️ BUILD $" + _clientRoomPrice>> <<set _roomProgressBarStyle = "background: linear-gradient(90deg, #e91e63, #f48fb1); width: " + _roomProgress + "%; height: 100%; border-radius: 4px; transition: width 0.3s;">> <fieldset style="background: linear-gradient(135deg, rgba(233, 30, 99, 0.15) 0%, rgba(33, 33, 33, 0.95) 100%); border: 2px solid #e91e63; margin-bottom: 20px; border-radius: 12px;"> <legend style="color: #f48fb1; font-size: 18px; font-weight: bold;">🛏️ Client Rooms</legend> <div style="padding: 15px;"> <div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 15px;"> <div> <p style="color: #fff; font-size: 18px; margin: 0; font-weight: bold;"><<print $playerBrothel.clientRooms>> <span style="color: #888; font-weight: normal;">/ <<print _maxClientRooms>></span></p> <p style="color: #aaa; font-size: 11px; margin: 3px 0 0;">Capacity for simultaneous clients</p> </div> <div style="text-align: right;"> <<if $playerBrothel.clientRooms >= _maxClientRooms>> <div style="background: linear-gradient(135deg, #4CAF50 0%, #388E3C 100%); padding: 12px 24px; border-radius: 25px; box-shadow: 0 4px 15px rgba(76, 175, 80, 0.4);"> <span style="color: #fff; font-size: 13px; font-weight: bold;">✓ MAXIMUM</span> </div> <<elseif $player.money >= _clientRoomPrice>> <span class="brothel-btn primary"><<button _clientRoomBtnText "BrothelUpgrades_BuyClientRoom">><</button>></span> <<else>> <<set _noBuyText = "💰 $" + _clientRoomPrice>> <span class="brothel-btn disabled"><<button _noBuyText>><</button>></span> <</if>> </div> </div> <div style="background: rgba(0,0,0,0.3); height: 8px; border-radius: 4px; overflow: hidden;"> <div @style="_roomProgressBarStyle"></div> </div> </div> </fieldset> /* Dungeon Cells section - only show if dungeon is built */ <<if $playerBrothel.upgrades.dungeon == true>> <<set _dungeonCellPrice = $playerBrothel.dungeonCells * 750>> <<set _maxDungeonCells = 5>> <<set _dungeonProgress = Math.round(($playerBrothel.dungeonCells / _maxDungeonCells) * 100)>> <<set _dungeonCellBtnText = "⛓️ EXPAND $" + _dungeonCellPrice>> <<set _dungeonProgressBarStyle = "background: linear-gradient(90deg, #9c27b0, #ba68c8); width: " + _dungeonProgress + "%; height: 100%; border-radius: 4px; transition: width 0.3s;">> <fieldset style="background: linear-gradient(135deg, rgba(156, 39, 176, 0.15) 0%, rgba(33, 33, 33, 0.95) 100%); border: 2px solid #9c27b0; margin-top: 20px; border-radius: 12px;"> <legend style="color: #ce93d8; font-size: 18px; font-weight: bold;">⛓️ Dungeon Cells</legend> <div style="padding: 15px;"> <div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 15px;"> <div> <p style="color: #fff; font-size: 18px; margin: 0; font-weight: bold;"><<print $playerBrothel.dungeonCells>> <span style="color: #888; font-weight: normal;">/ <<print _maxDungeonCells>></span></p> <p style="color: #aaa; font-size: 11px; margin: 3px 0 0;">Capacity for prisoners</p> </div> <div style="text-align: right;"> <<if $playerBrothel.dungeonCells >= _maxDungeonCells>> <div style="background: linear-gradient(135deg, #4CAF50 0%, #388E3C 100%); padding: 12px 24px; border-radius: 25px; box-shadow: 0 4px 15px rgba(76, 175, 80, 0.4);"> <span style="color: #fff; font-size: 13px; font-weight: bold;">✓ MAXIMUM</span> </div> <<elseif $player.money >= _dungeonCellPrice>> <span class="brothel-btn dark"><<button _dungeonCellBtnText "BrothelUpgrades_BuyDungeonCell">><</button>></span> <<else>> <<set _noBuyDungeonText = "💰 $" + _dungeonCellPrice>> <span class="brothel-btn disabled"><<button _noBuyDungeonText>><</button>></span> <</if>> </div> </div> <div style="background: rgba(0,0,0,0.3); height: 8px; border-radius: 4px; overflow: hidden;"> <div @style="_dungeonProgressBarStyle"></div> </div> </div> </fieldset> <</if>> /* Buildings section */ <fieldset style="background: linear-gradient(135deg, rgba(156, 39, 176, 0.15) 0%, rgba(33, 33, 33, 0.95) 100%); border: 2px solid #9c27b0; border-radius: 12px;"> <legend style="color: #ce93d8; font-size: 18px; font-weight: bold;">🏗️ Buildings</legend> <div class="item-shop-container" style="gap: 15px; padding: 10px;"> <<for _i = 0; _i < _buildings.length; _i++>> <<set _building = _buildings[_i]>> <<set _owned = $playerBrothel.upgrades[_building.id]>> <<set _levelReq = _building.levelRequired || 1>> <<set _isLocked = _currentLevel < _levelReq>> /* Set icon for building */ <<set _icon = _building.icon || "🏠">> /* Pre-compute button text */ <<set _buildBtnText = "🔨 BUILD $" + _building.price>> <<set _lockedText = "🔒 Level " + _levelReq>> <<capture _building _owned _icon _buildBtnText _levelReq _isLocked _lockedText>> <div class="shop-item" style="background: linear-gradient(180deg, rgba(156, 39, 176, 0.25) 0%, rgba(20, 20, 20, 0.95) 100%); border: 2px solid <<if _owned>>#4CAF50<<elseif _isLocked>>#555<<else>>#9c27b0<</if>>; border-radius: 16px; padding: 18px; display: flex; flex-direction: column; min-height: 300px; width: 220px; box-shadow: 0 6px 20px rgba(156, 39, 176, 0.25); position: relative; overflow: hidden; <<if _isLocked>>opacity: 0.6;<</if>>"> /* Status badge - only show for built items */ <<if _owned>> <div style="position: absolute; top: 10px; right: 10px; background: linear-gradient(135deg, #4CAF50 0%, #388E3C 100%); padding: 4px 10px; border-radius: 10px;"> <span style="color: #fff; font-size: 10px; font-weight: bold;">✓ BUILT</span> </div> <</if>> <div style="text-align: center; font-size: 40px; margin-bottom: 8px; filter: <<if _owned>>grayscale(0)<<elseif _isLocked>>grayscale(1)<<else>>grayscale(0.3)<</if>>;"><<print _icon>></div> <h3 style="color: <<if _owned>>#4CAF50<<elseif _isLocked>>#666<<else>>#ce93d8<</if>>; text-align: center; margin: 5px 0; font-size: 14px; text-transform: uppercase; letter-spacing: 1px; font-weight: bold;"><<print _building.name>></h3> <hr style="border-color: rgba(156, 39, 176, 0.3); margin: 10px 0;"> <p style="flex-grow: 1; color: <<if _isLocked>>#666<<else>>#999<</if>>; font-size: 11px; line-height: 1.5; text-align: center;"><<print _building.description>></p> /* Level requirement */ <<if !_owned>> <div style="text-align: center; font-size: 10px; color: <<if _isLocked>>#f44336<<else>>#4CAF50<</if>>; margin-bottom: 5px;"> Requires Level <<print _levelReq>> </div> <</if>> /* Price and button */ <<if _owned>> <div style="background: rgba(76, 175, 80, 0.2); padding: 12px; border-radius: 10px; text-align: center; margin-top: 10px;"> <span style="color: #4CAF50; font-size: 13px; font-weight: bold;">Constructed</span> </div> <<elseif _isLocked>> <div style="margin-top: 10px;"> <span class="brothel-btn disabled small"><<button _lockedText>><</button>></span> </div> <<elseif $player.money >= _building.price>> <div style="margin-top: 10px;"> <span class="brothel-btn secondary small"><<button _buildBtnText "BrothelUpgrades_Purchase">> <<set $selectedUpgrade = _building>> <</button>></span> </div> <<else>> <<set _noBuildText = "💰 $" + _building.price>> <div style="margin-top: 10px;"> <span class="brothel-btn disabled small"><<button _noBuildText>><</button>></span> </div> <</if>> </div> <</capture>> <</for>> </div> </fieldset> /* Regular upgrades section */ <fieldset style="background: linear-gradient(135deg, rgba(255, 152, 0, 0.15) 0%, rgba(33, 33, 33, 0.95) 100%); border: 2px solid #ff9800; margin-top: 20px; border-radius: 12px;"> <legend style="color: #ffb74d; font-size: 18px; font-weight: bold;">⬆️ Upgrades</legend> <div class="item-shop-container" style="gap: 12px; padding: 10px;"> <<for _i = 0; _i < _upgrades.length; _i++>> <<set _upgrade = _upgrades[_i]>> <<set _owned = $playerBrothel.upgrades[_upgrade.id]>> <<set _levelReq = _upgrade.levelRequired || 1>> <<set _isLocked = _currentLevel < _levelReq>> <<set _weeklyCost = _upgrade.weeklyCost || 0>> /* Set icon for upgrade */ <<switch _upgrade.id>> <<case "advertising">><<set _icon = "📢">> <<case "security">><<set _icon = "🛡️">> <<case "bar">><<set _icon = "🍸">> <<case "vipZone">><<set _icon = "👑">> <<case "lighting">><<set _icon = "💡">> <<case "furniture">><<set _icon = "🛋️">> <<default>><<set _icon = "📦">> <</switch>> /* Pre-compute button text */ <<set _upgradeBtnText = "⬆️ BUY $" + _upgrade.price>> <<set _lockedText = "🔒 Level " + _levelReq>> <<capture _upgrade _owned _icon _upgradeBtnText _levelReq _isLocked _lockedText _weeklyCost>> <div class="shop-item" style="background: linear-gradient(180deg, rgba(255, 152, 0, 0.2) 0%, rgba(20, 20, 20, 0.95) 100%); border: 2px solid <<if _owned>>#4CAF50<<elseif _isLocked>>#555<<else>>#ff9800<</if>>; border-radius: 14px; padding: 15px; display: flex; flex-direction: column; min-height: 220px; width: 180px; box-shadow: 0 4px 15px rgba(255, 152, 0, 0.2); position: relative; <<if _isLocked>>opacity: 0.6;<</if>>"> /* Status indicator - only show for owned items */ <<if _owned>> <div style="position: absolute; top: 8px; right: 8px; background: linear-gradient(135deg, #4CAF50 0%, #388E3C 100%); padding: 3px 8px; border-radius: 8px;"> <span style="color: #fff; font-size: 9px; font-weight: bold;">✓ OWNED</span> </div> <</if>> <div style="display: flex; align-items: center; gap: 12px; margin-bottom: 8px;"> <div style="background: rgba(255, 152, 0, 0.2); padding: 8px; border-radius: 10px; <<if _isLocked>>filter: grayscale(1);<</if>>"> <span style="font-size: 26px;"><<print _icon>></span> </div> <h3 style="color: <<if _owned>>#4CAF50<<elseif _isLocked>>#666<<else>>#ffb74d<</if>>; margin: 0; font-size: 12px; text-transform: uppercase; font-weight: bold;"><<print _upgrade.name>></h3> </div> <p style="flex-grow: 1; color: <<if _isLocked>>#666<<else>>#999<</if>>; font-size: 10px; line-height: 1.4; margin: 0;"><<print _upgrade.description>></p> /* Weekly cost indicator */ <<if _weeklyCost > 0>> <div style="background: rgba(255, 193, 7, 0.2); padding: 5px 8px; border-radius: 6px; text-align: center; margin: 5px 0;"> <span style="color: #ffc107; font-size: 9px;">⚠️ Weekly: $<<print _weeklyCost>></span> </div> <</if>> /* Level requirement */ <<if !_owned>> <div style="text-align: center; font-size: 10px; color: <<if _isLocked>>#f44336<<else>>#4CAF50<</if>>; margin-bottom: 5px;"> Requires Level <<print _levelReq>> </div> <</if>> /* Price and button */ <<if _owned == true>> <div style="background: rgba(76, 175, 80, 0.15); padding: 10px; border-radius: 8px; text-align: center; margin-top: 5px;"> <span style="color: #4CAF50; font-size: 12px; font-weight: bold;">Active</span> </div> <<elseif _isLocked>> <div style="margin-top: 5px;"> <span class="brothel-btn disabled small"><<button _lockedText>><</button>></span> </div> <<elseif $player.money >= _upgrade.price>> <div style="margin-top: 5px;"> <span class="brothel-btn special small"><<button _upgradeBtnText "BrothelUpgrades_Purchase">> <<set $selectedUpgrade = _upgrade>> <</button>></span> </div> <<else>> <<set _noUpgradeText = "💰 $" + _upgrade.price>> <div style="margin-top: 5px;"> <span class="brothel-btn disabled small"><<button _noUpgradeText>><</button>></span> </div> <</if>> </div> <</capture>> <</for>> </div> </fieldset> /* Show total bonus */ <<set _totalBonus = 0>> <<if $playerBrothel.upgrades.advertising>><<set _totalBonus += 0.20>><</if>> <<if $playerBrothel.upgrades.security>><<set _totalBonus += 0.05>><</if>> <<if $playerBrothel.upgrades.bar>><<set _totalBonus += 0.15>><</if>> <<if $playerBrothel.upgrades.vipZone>><<set _totalBonus += 0.30>><</if>> <<if $playerBrothel.upgrades.lighting>><<set _totalBonus += 0.10>><</if>> <<if $playerBrothel.upgrades.furniture>><<set _totalBonus += 0.15>><</if>> <<set _bonusPercent = Math.floor(_totalBonus * 100)>> <<set _msg = "Current income bonus from upgrades: +" + _bonusPercent + "%">> <<ChatMessage _msg>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn neutral"><<button "← Back to Office" "PlayerBrothel_Office">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _upgrade = $selectedUpgrade>> <<set _msg = "Purchase " + _upgrade.name + " for $" + _upgrade.price + "?">> <<ChatMessage _msg>> <<ChatMessage _upgrade.description>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn success"><<button "✓ Confirm Purchase" "BrothelUpgrades_Complete">><</button>></span> <span class="brothel-btn neutral"><<button "✗ Cancel" "BrothelUpgrades_Main">><<unset $selectedUpgrade>><</button>></span> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _upgrade = $selectedUpgrade>> /* Deduct money */ <<set $player.money -= _upgrade.price>> /* Mark upgrade as owned */ <<set $playerBrothel.upgrades[_upgrade.id] = true>> <<set _msg = "You purchased " + _upgrade.name + "!">> <<ChatMessage _msg>> <<ChatMessage "Brothel now has improved facilities.">> <div class="brothel-btn-container padding-top"> <span class="brothel-btn primary"><<button "→ Continue" "BrothelUpgrades_Main">><<unset $selectedUpgrade>><</button>></span> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _price = ($playerBrothel.clientRooms + 1) * 500>> <<set _maxRooms = $playerBrothel.rooms * 3>> <<if $playerBrothel.clientRooms >= _maxRooms>> <<ChatMessage "You have reached the maximum number of client rooms for your current worker rooms.">> <<elseif $player.money < _price>> <<set _msg = "You don't have enough money. You need $" + _price>> <<ChatMessage _msg>> <<else>> <<set $player.money -= _price>> <<set $playerBrothel.clientRooms += 1>> <<set _msg = "You built a new client room! You now have " + $playerBrothel.clientRooms + " client rooms.">> <<ChatMessage _msg>> <<ChatMessage "More client rooms means more customers can be served simultaneously, increasing daily income!">> <</if>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Continue" "BrothelUpgrades_Main">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _price = $playerBrothel.dungeonCells * 750>> <<set _maxCells = 5>> <<if $playerBrothel.dungeonCells >= _maxCells>> <<ChatMessage "You have reached the maximum number of dungeon cells.">> <<elseif $player.money < _price>> <<set _msg = "You don't have enough money. You need $" + _price>> <<ChatMessage _msg>> <<else>> <<set $player.money -= _price>> <<set $playerBrothel.dungeonCells += 1>> <<set _msg = "You expanded the dungeon! You now have " + $playerBrothel.dungeonCells + " cells.">> <<ChatMessage _msg>> <<ChatMessage "More cells means you can hold more troublesome clients in captivity.">> <</if>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Continue" "BrothelUpgrades_Main">><</button>></span> </div> <</nobr>>
<<nobr>> /* Initialize playerBrothel if it doesn't exist (for old saves) */ <<if ndef $playerBrothel>> <<set $playerBrothel = { owned: false, name: "Brothel", rooms: 1, maxRooms: 10, clientRooms: 0, prostitutes: [], workerAssignments: {}, upgrades: { advertising: false, security: false, bar: false, vipZone: false, lighting: false, furniture: false, trainingRoom: false, dungeon: false, spa: false, medical: false, relaxation: false, masterRoom: false }, dailyEarnings: 0, uncollectedEarnings: 0, totalEarnings: 0, reputation: 0, level: 1, maxReputation: 100, visitedToday: false }>> <</if>> /* Ensure new upgrades exist for old saves */ <<if ndef $playerBrothel.upgrades.trainingRoom>> <<set $playerBrothel.upgrades.trainingRoom = false>> <</if>> <<if ndef $playerBrothel.upgrades.dungeon>> <<set $playerBrothel.upgrades.dungeon = false>> <</if>> <<if ndef $playerBrothel.upgrades.spa>> <<set $playerBrothel.upgrades.spa = false>> <</if>> <<if ndef $playerBrothel.upgrades.medical>> <<set $playerBrothel.upgrades.medical = false>> <</if>> <<if ndef $playerBrothel.upgrades.relaxation>> <<set $playerBrothel.upgrades.relaxation = false>> <</if>> <<if ndef $playerBrothel.reputation || typeof $playerBrothel.reputation !== "number">> <<set $playerBrothel.reputation = 0>> <</if>> /* Ensure reputation doesn't exceed max */ <<if $playerBrothel.reputation > $playerBrothel.maxReputation>> <<set $playerBrothel.reputation = $playerBrothel.maxReputation>> <</if>> <<if ndef $playerBrothel.level>> <<set $playerBrothel.level = 1>> <</if>> <<if ndef $playerBrothel.maxReputation>> <<set $playerBrothel.maxReputation = 100>> <</if>> <<if ndef $playerBrothel.clientRooms>> <<set $playerBrothel.clientRooms = 0>> <</if>> <<if ndef $playerBrothel.workerAssignments>> <<set $playerBrothel.workerAssignments = {}>> <</if>> <<if ndef $playerBrothel.upgrades.masterRoom>> <<set $playerBrothel.upgrades.masterRoom = false>> <</if>> /* Perk system initialization */ <<if ndef $playerBrothel.skillPoints>> <<set $playerBrothel.skillPoints = 0>> <</if>> <<if ndef $playerBrothel.perks>> <<set $playerBrothel.perks = { seeStats: false, profitBonus: 0, energySaving: 0, securityDiscount: false, feminizationAttempts: false, haggle: false, biweeklyPay: false, playerProfitBonus: 0, relaxationSpeed: 0, surgeryDiscount: false }>> <</if>> /* Dungeon prisoners array */ <<if ndef $playerBrothel.prisoners>> <<set $playerBrothel.prisoners = []>> <</if>> /* Dungeon cells capacity (starts at 1, max 5) */ <<if ndef $playerBrothel.dungeonCells>> <<set $playerBrothel.dungeonCells = 1>> <</if>> /* Debt workers array (prisoners who agreed to work off debt) */ <<if ndef $playerBrothel.debtWorkers>> <<set $playerBrothel.debtWorkers = []>> <</if>> /* Weekly income system properties */ <<if ndef $playerBrothel.pendingWeeklyEarnings>> <<set $playerBrothel.pendingWeeklyEarnings = 0>> <</if>> <<if ndef $playerBrothel.weeklyEarnings>> <<set $playerBrothel.weeklyEarnings = 0>> <</if>> <<if ndef $playerBrothel.lastPayDay>> <<set $playerBrothel.lastPayDay = 0>> <</if>> <</nobr>>
<<nobr>> <<include "PlayerBrothel_InitCheck">> <<if $playerBrothel.owned>> <<goto "PlayerBrothel_Main">> <<else>> <<goto "PlayerBrothel_Purchase">> <</if>> <</nobr>>
<<nobr>> <<include "PlayerBrothel_InitCheck">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/RedLightDistrict/Brothel/Hall.jpg">> <<timed 0.2s>> <<set _purchaseCost = 20000>> <div class="centre-text" style="font-size: 28px; color: #e91e63; text-shadow: 0 0 20px rgba(233, 30, 99, 0.5);">🏩 Brothel For Sale</div> <fieldset style="background: linear-gradient(135deg, rgba(233, 30, 99, 0.15) 0%, rgba(33, 33, 33, 0.95) 100%); border: 2px solid #e91e63; margin: 20px 0;"> <legend style="color: #f48fb1; font-size: 16px;">💰 Investment Opportunity</legend> <div style="padding: 20px; text-align: center;"> <p style="color: #ccc; font-size: 14px; line-height: 1.8;"> This abandoned brothel is up for sale. With the right management, it could become a thriving business in the Red Light District. </p> <div style="background: rgba(0,0,0,0.3); padding: 20px; border-radius: 15px; margin: 20px 0;"> <div style="color: #ffd700; font-size: 24px; font-weight: bold; margin-bottom: 10px;"> $<<print _purchaseCost.toLocaleString()>> </div> <div style="color: #888; font-size: 12px;">Purchase Price</div> </div> <div style="background: rgba(76, 175, 80, 0.1); padding: 15px; border-radius: 10px; border: 1px solid #4CAF50; margin: 15px 0;"> <div style="color: #81c784; font-size: 13px; font-weight: bold; margin-bottom: 10px;">What you'll get:</div> <div style="color: #aaa; font-size: 12px; text-align: left; display: inline-block;"> ✓ 1 Worker Room (expandable to 10)<br> ✓ Main Hall for clients<br> ✓ Office for management<br> ✓ Ability to hire prostitutes<br> ✓ Upgrade options (Security, Bar, VIP Zone, etc.)<br> ✓ Daily passive income from workers </div> </div> <div style="margin-top: 20px;"> <div style="color: #888; font-size: 12px; margin-bottom: 10px;">Your money: <span style="color: #4CAF50; font-weight: bold;">$<<print $player.money.toLocaleString()>></span></div> <<if $player.money >= _purchaseCost>> <span class="brothel-btn success" style="font-size: 16px; padding: 15px 40px;"> <<button "🏩 Purchase Brothel ($20,000)" "PlayerBrothel_PurchaseConfirm">><</button>> </span> <<else>> <<set _needed = _purchaseCost - $player.money>> <span class="brothel-btn disabled" style="font-size: 16px; padding: 15px 40px;"> <<set _neededText = "🏩 Purchase Brothel (Need $" + _needed.toLocaleString() + " more)">> <<button _neededText>><</button>> </span> <</if>> </div> </div> </fieldset> <div class="brothel-btn-container padding-top"> <span class="brothel-btn neutral"><<button "← Leave" "RedLightDistrict">><</button>></span> </div> <</timed>> <</nobr>>
<<nobr>> <<include "PlayerBrothel_InitCheck">> <<set _purchaseCost = 20000>> <<if $player.money >= _purchaseCost>> <<set $player.money -= _purchaseCost>> <<set $playerBrothel.owned = true>> <<goto "PlayerBrothel_PurchaseSuccess">> <<else>> <<ChatMessage "You don't have enough money to purchase the brothel.">> <<goto "PlayerBrothel_Purchase">> <</if>> <</nobr>>
<<nobr>> <<SaveLocation>> <<SetBackground "Media/Locations/City/RedLightDistrict/Brothel/Hall.jpg">> <<timed 0.2s>> <div class="centre-text" style="font-size: 28px; color: #4CAF50; text-shadow: 0 0 20px rgba(76, 175, 80, 0.5);">🎉 Congratulations!</div> <fieldset style="background: linear-gradient(135deg, rgba(76, 175, 80, 0.15) 0%, rgba(33, 33, 33, 0.95) 100%); border: 2px solid #4CAF50; margin: 20px 0;"> <legend style="color: #81c784; font-size: 16px;">✓ Purchase Complete</legend> <div style="padding: 30px; text-align: center;"> <div style="font-size: 60px; margin-bottom: 20px;">🏩</div> <p style="color: #fff; font-size: 18px; font-weight: bold; margin-bottom: 15px;"> You are now the proud owner of a brothel! </p> <p style="color: #aaa; font-size: 14px; line-height: 1.6;"> Your business journey begins here. Start by hiring workers, upgrading your facilities, and building your reputation in the Red Light District. </p> <div style="background: rgba(0,0,0,0.3); padding: 15px; border-radius: 10px; margin: 20px 0;"> <div style="color: #ffd700; font-size: 14px;">💡 First Steps:</div> <div style="color: #888; font-size: 12px; margin-top: 10px; text-align: left; display: inline-block;"> 1. Visit the <b>Office</b> to manage your business<br> 2. Go to <b>Casting</b> to hire your first worker<br> 3. Check <b>Upgrades</b> for improvement options<br> 4. Explore <b>Skills</b> to unlock special perks </div> </div> </div> </fieldset> <div class="brothel-btn-container padding-top"> <span class="brothel-btn success" style="font-size: 16px; padding: 12px 30px;"> <<button "🏠 Enter Your Brothel" "PlayerBrothel_Main">><</button>> </span> </div> <</timed>> <</nobr>>
<<nobr>> <<include "PlayerBrothel_InitCheck">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/RedLightDistrict/Brothel/Hall.jpg">> <<timed 0.2s>> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> /* Check for daily income collection */ <<if $playerBrothel.visitedToday == false>> <<set $playerBrothel.visitedToday = true>> <<include "BrothelCalculateDailyIncome">> <</if>> /* Calculate reputation bar */ <<set _reputationPercent = Math.round(($playerBrothel.reputation / $playerBrothel.maxReputation) * 100)>> <<if _reputationPercent > 100>><<set _reputationPercent = 100>><</if>> <<if _reputationPercent < 0>><<set _reputationPercent = 0>><</if>> <<set _reputationColor = _reputationPercent >= 70 ? "#4CAF50" : (_reputationPercent >= 40 ? "#ff9800" : "#f44336")>> <<set _levelColor = $playerBrothel.level >= 8 ? "#ffd700" : ($playerBrothel.level >= 5 ? "#9c27b0" : "#2196f3")>> /* Pre-compute bar styles to avoid parsing issues */ <<set _barBackgroundStyle = "background: linear-gradient(90deg, " + _reputationColor + ", " + _reputationColor + "cc); width: " + _reputationPercent + "%; height: 100%; border-radius: 6px; transition: width 0.3s; box-shadow: 0 0 10px " + _reputationColor + "66;">> <div class="centre-text" style="font-size: 24px; color: #e91e63; text-shadow: 0 0 15px rgba(233, 30, 99, 0.5);">$playerBrothel.name</div> /* Level Badge */ <div style="text-align: center; margin: 10px 0;"> <span style="background: linear-gradient(135deg, <<print _levelColor>> 0%, <<print _levelColor>>99 100%); padding: 8px 20px; border-radius: 20px; font-size: 14px; font-weight: bold; color: #fff; box-shadow: 0 4px 15px <<print _levelColor>>66;"> ⭐ Level <<print $playerBrothel.level>>/26 </span> </div> /* Stats Panel */ <<set _dailyEarnings = $playerBrothel.dailyEarnings || 0>> <<set _weeklyEarnings = $playerBrothel.weeklyEarnings || 0>> <fieldset style="background: linear-gradient(135deg, rgba(233, 30, 99, 0.1) 0%, rgba(33, 33, 33, 0.9) 100%); border: 1px solid #e91e63; margin-bottom: 15px;"> <legend style="color: #f48fb1;">📊 Status</legend> <div style="display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; text-align: center;"> <div style="background: rgba(0,0,0,0.2); padding: 10px; border-radius: 8px;"> <div style="color: #aaa; font-size: 11px;">🏠 Rooms</div> <div style="color: #fff; font-size: 16px; font-weight: bold;">$playerBrothel.rooms<span style="color: #666; font-size: 12px;">/$playerBrothel.maxRooms</span></div> </div> <div style="background: rgba(0,0,0,0.2); padding: 10px; border-radius: 8px;"> <div style="color: #aaa; font-size: 11px;">🛏️ Client Rooms</div> <div style="color: #fff; font-size: 16px; font-weight: bold;"><<print $playerBrothel.clientRooms>></div> </div> <div style="background: rgba(0,0,0,0.2); padding: 10px; border-radius: 8px;"> <div style="color: #aaa; font-size: 11px;">👩 Workers</div> <div style="color: #fff; font-size: 16px; font-weight: bold;"><<print $playerBrothel.prostitutes.length>><span style="color: #666; font-size: 12px;">/$playerBrothel.rooms</span></div> </div> <div style="background: rgba(255, 152, 0, 0.2); padding: 10px; border-radius: 8px; border: 1px solid #ff9800;"> <div style="color: #ffb74d; font-size: 11px;">📈 Today</div> <div style="color: #ff9800; font-size: 16px; font-weight: bold;">+$<<print _dailyEarnings>></div> </div> <div style="background: rgba(76, 175, 80, 0.2); padding: 10px; border-radius: 8px; border: 1px solid #4CAF50;"> <div style="color: #81c784; font-size: 11px;">💵 Last Week</div> <div style="color: #4CAF50; font-size: 16px; font-weight: bold;">$<<print _weeklyEarnings>></div> </div> <div style="background: rgba(76, 175, 80, 0.2); padding: 10px; border-radius: 8px; border: 1px solid #4CAF50;"> <div style="color: #81c784; font-size: 11px;">💰 Uncollected</div> <div style="color: #4CAF50; font-size: 16px; font-weight: bold;">$<<print $playerBrothel.uncollectedEarnings || 0>><span style="color: #666; font-size: 10px;">/20000</span></div> </div> </div> /* Reputation Progress */ <div style="margin-top: 15px; background: rgba(0,0,0,0.2); padding: 12px; border-radius: 8px;"> <div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 6px;"> <span style="color: #fff; font-size: 13px;">🏆 Reputation Progress</span> <span style="color: <<print _reputationColor>>; font-size: 13px; font-weight: bold;"><<print $playerBrothel.reputation>>/<<print $playerBrothel.maxReputation>></span> </div> <div style="background: rgba(255,255,255,0.1); height: 12px; border-radius: 6px; overflow: hidden;"> <div @style="_barBackgroundStyle"></div> </div> <<if $playerBrothel.level < 26>> <div style="color: #888; font-size: 10px; margin-top: 5px; text-align: center;">Fill the bar to reach Level <<print $playerBrothel.level + 1>></div> <<else>> <div style="color: #ffd700; font-size: 10px; margin-top: 5px; text-align: center;">✨ Maximum Level Reached! ✨</div> <</if>> </div> </fieldset> <div class="grid-row-twice"> <fieldset class="brothel-fieldset"> <legend>Navigation</legend> <div class="brothel-btn-container"> <span class="brothel-btn primary"><<button "🏢 Office" "PlayerBrothel_Office">><</button>></span> <span class="brothel-btn secondary"><<button "🚪 Working Rooms" "PlayerBrothel_Rooms">><</button>></span> <<if $playerBrothel.upgrades.masterRoom>> <span class="brothel-btn secondary"><<button "🛏️ Master Room" "BrothelMasterRoom_Main">><</button>></span> <</if>> <<if $playerBrothel.upgrades.trainingRoom>> <span class="brothel-btn special"><<button "🎓 Training Room" "BrothelTrainingRoom_Main">><</button>></span> <</if>> <<if $playerBrothel.upgrades.dungeon>> <span class="brothel-btn dark"><<button "⛓️ Dungeon" "BrothelDungeon_Main">><</button>></span> <</if>> <<if $playerBrothel.upgrades.spa>> <span class="brothel-btn spa"><<button "💆 Spa Salon" "BrothelSpa_Main">><</button>></span> <</if>> <<if $playerBrothel.upgrades.medical>> <span class="brothel-btn success"><<button "🏥 Medical Room" "BrothelMedical_Main">><</button>></span> <</if>> <<if $playerBrothel.upgrades.relaxation>> <span class="brothel-btn info"><<button "🛋️ Relaxation Room" "BrothelRelaxation_Main">><</button>></span> <</if>> <span class="brothel-btn neutral"><<button "🚶 Leave" "RedLightDistrict">><</button>></span> </div> </fieldset> <fieldset class="brothel-fieldset purple"> <legend>Activity</legend> <div class="brothel-btn-container"> <span class="brothel-btn secondary"><<button "⏳ Wait">> <<run $player.status.energy.increase(Random(1, 5, true))>> <<SpendTimeWithoutUpdate 15>> <<run $player.status.alcoholIntoxication.decrease(Random(1, 2))>> <<goto "PlayerBrothel_Main">> <</button>></span> </div> </fieldset> </div> /* Worker Management Panel */ <<if $playerBrothel.prostitutes.length > 0>> <fieldset class="brothel-fieldset" style="border-color: #2196f3;"> <legend style="color: #64b5f6;">👩💼 Worker Management</legend> <div class="brothel-btn-container"> <span class="brothel-btn info"><<button "📋 Manage Assignments" "BrothelWorkerManagement">><</button>></span> </div> </fieldset> <</if>> <fieldset style="background: linear-gradient(135deg, rgba(33, 150, 243, 0.1) 0%, rgba(33, 33, 33, 0.9) 100%); border: 1px solid #2196f3;"> <legend style="color: #64b5f6;">💰 Financial Info</legend> <div style="padding: 10px;"> /* Calculate weekly expenses */ <<set _weeklyExpenses = 0>> /* Worker salaries */ <<set _workerSalaries = 0>> <<for _i = 0; _i < $playerBrothel.prostitutes.length; _i++>> <<set _prostId = $playerBrothel.prostitutes[_i]>> <<set _worker = $Characters.find(c => c.info.id == _prostId)>> <<if _worker>> <<set _salary = _worker.saveData.get("weeklySalary") || 50>> <<set _workerSalaries += _salary>> <</if>> <</for>> <<set _weeklyExpenses += _workerSalaries>> /* Security Guards upkeep */ <<set _securityCost = 0>> <<if $playerBrothel.upgrades && $playerBrothel.upgrades.security == true>> <<set _securityCost = 100>> <<set _weeklyExpenses += _securityCost>> <</if>> /* Bar upkeep */ <<set _barCost = 0>> <<if $playerBrothel.upgrades && $playerBrothel.upgrades.bar == true>> <<set _barCost = 150>> <<set _weeklyExpenses += _barCost>> <</if>> /* Daily and weekly earnings */ <<set _dailyEarningsInfo = $playerBrothel.dailyEarnings || 0>> <<set _lastWeekEarnings = $playerBrothel.weeklyEarnings || 0>> <div style="display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 10px; margin-bottom: 15px;"> <div style="background: rgba(255, 152, 0, 0.15); padding: 12px; border-radius: 10px; border: 1px solid #ff9800;"> <div style="color: #ffb74d; font-size: 10px; text-transform: uppercase; letter-spacing: 1px;">Today's Income</div> <div style="color: #ff9800; font-size: 18px; font-weight: bold;">+$<<print _dailyEarningsInfo>></div> </div> <div style="background: rgba(76, 175, 80, 0.15); padding: 12px; border-radius: 10px; border: 1px solid #4CAF50;"> <div style="color: #81c784; font-size: 10px; text-transform: uppercase; letter-spacing: 1px;">Last Week Total</div> <div style="color: #4CAF50; font-size: 18px; font-weight: bold;">$<<print _lastWeekEarnings>></div> </div> <div style="background: rgba(76, 175, 80, 0.15); padding: 12px; border-radius: 10px; border: 1px solid #4CAF50;"> <div style="color: #81c784; font-size: 10px; text-transform: uppercase; letter-spacing: 1px;">Uncollected</div> <div style="color: #4CAF50; font-size: 18px; font-weight: bold;">$<<print $playerBrothel.uncollectedEarnings || 0>></div> </div> </div> /* Daily income breakdown */ <<set _estimatedDailyIncome = 0>> <<set _workingCount = 0>> <<for _i = 0; _i < $playerBrothel.prostitutes.length; _i++>> <<set _prostId = $playerBrothel.prostitutes[_i]>> <<set _assignment = $playerBrothel.workerAssignments[_prostId] || "work">> <<if _assignment == "work">> <<set _worker = $Characters.find(c => c.info.id == _prostId)>> <<if _worker>> <<set _workingCount++>> /* Base income */ <<set _workerIncome = 50>> /* Attractiveness bonus */ <<set _workerIncome += _worker.body.face.value * 10>> /* Corruption bonus */ <<set _workerIncome += _worker.attributes.corruption.value * 5>> /* Skills bonus */ <<set _oralSkill = _worker.saveData.get("oralSkill") || 0>> <<set _analSkill = _worker.saveData.get("analSkill") || 0>> <<set _vagSkill = _worker.saveData.get("vaginalSkill") || 0>> <<set _workerIncome += Math.floor((_oralSkill + _analSkill + _vagSkill) / 5)>> /* Limits bonus */ <<set _limits = _worker.saveData.get("limits")>> <<if _limits>> <<if _limits.anal && _limits.anal.status == "yes">><<set _workerIncome += 10>><</if>> <<if _limits.creampie && _limits.creampie.status == "yes">><<set _workerIncome += 15>><</if>> <<if _limits.goldenShower && _limits.goldenShower.status == "yes">><<set _workerIncome += 20>><</if>> <<if _limits.anilingus && _limits.anilingus.status == "yes">><<set _workerIncome += 10>><</if>> <</if>> /* Level bonus */ <<set _workerIncome += ($playerBrothel.level || 1) * 5>> /* Client rooms bonus */ <<set _workerIncome += ($playerBrothel.clientRooms || 0) * 2>> <<set _estimatedDailyIncome += _workerIncome>> <</if>> <</if>> <</for>> /* Apply upgrade multipliers */ <<set _upgradeMultiplier = 1.0>> <<if $playerBrothel.upgrades && $playerBrothel.upgrades.advertising == true>> <<set _upgradeMultiplier += 0.20>> <</if>> <<if $playerBrothel.upgrades && $playerBrothel.upgrades.security == true>> <<set _upgradeMultiplier += 0.05>> <</if>> <<if $playerBrothel.upgrades && $playerBrothel.upgrades.bar == true>> <<set _upgradeMultiplier += 0.15>> <</if>> <<if $playerBrothel.upgrades && $playerBrothel.upgrades.vipZone == true>> <<set _upgradeMultiplier += 0.30>> <</if>> <<if $playerBrothel.upgrades && $playerBrothel.upgrades.lighting == true>> <<set _upgradeMultiplier += 0.10>> <</if>> <<if $playerBrothel.upgrades && $playerBrothel.upgrades.furniture == true>> <<set _upgradeMultiplier += 0.15>> <</if>> /* Apply perk bonuses */ <<set _perkBonus = 0>> <<if $playerBrothel.perks && $playerBrothel.perks.profitBonus > 0>> <<set _perkBonus = $playerBrothel.perks.profitBonus * 10>> <</if>> <<set _baseIncome = _estimatedDailyIncome>> <<set _upgradeBonus = Math.floor(_estimatedDailyIncome * (_upgradeMultiplier - 1))>> <<set _perkBonusAmount = Math.floor(_estimatedDailyIncome * _perkBonus / 100)>> <<set _estimatedDailyIncome = Math.floor(_estimatedDailyIncome * _upgradeMultiplier * (1 + _perkBonus / 100))>> /* Weekly income estimate (income is already weekly, not daily) */ <div style="background: rgba(76, 175, 80, 0.1); padding: 12px; border-radius: 10px; border: 1px solid #4CAF50; margin-bottom: 15px;"> <div style="color: #81c784; font-size: 11px; text-transform: uppercase; letter-spacing: 1px; margin-bottom: 10px;">📊 Estimated Weekly Income</div> <<if _workingCount > 0>> <div style="display: flex; justify-content: space-between; padding: 5px 0; border-bottom: 1px solid rgba(76, 175, 80, 0.2);"> <span style="color: #ccc;">👩 Working Prostitutes (<<print _workingCount>>)</span> <span style="color: #4CAF50; font-weight: bold;">+$<<print _baseIncome>></span> </div> <</if>> <<if _upgradeBonus > 0>> <div style="display: flex; justify-content: space-between; padding: 5px 0; border-bottom: 1px solid rgba(76, 175, 80, 0.2);"> <span style="color: #ccc;">🏢 Upgrade Bonuses (<<print Math.round((_upgradeMultiplier - 1) * 100)>>%)</span> <span style="color: #4CAF50; font-weight: bold;">+$<<print _upgradeBonus>></span> </div> <</if>> <<if _perkBonusAmount > 0>> <div style="display: flex; justify-content: space-between; padding: 5px 0; border-bottom: 1px solid rgba(76, 175, 80, 0.2);"> <span style="color: #ccc;">⭐ Perk Bonuses (<<print _perkBonus>>%)</span> <span style="color: #4CAF50; font-weight: bold;">+$<<print _perkBonusAmount>></span> </div> <</if>> <<if _workingCount == 0>> <div style="color: #888; font-style: italic; text-align: center;">No workers assigned to work</div> <<else>> <div style="display: flex; justify-content: space-between; padding: 8px 0; margin-top: 5px;"> <span style="color: #fff; font-weight: bold;">ESTIMATED WEEKLY</span> <span style="color: #4CAF50; font-size: 18px; font-weight: bold;">~$<<print _estimatedDailyIncome>></span> </div> <div style="color: #666; font-size: 10px; text-align: center; margin-top: 5px;"> (Income paid on days 1, 8, 15, 22, 29 | Actual varies ±20%) </div> <</if>> </div> /* Weekly expenses breakdown */ <div style="background: rgba(244, 67, 54, 0.1); padding: 12px; border-radius: 10px; border: 1px solid #f44336;"> <div style="color: #ef9a9a; font-size: 11px; text-transform: uppercase; letter-spacing: 1px; margin-bottom: 10px;">📅 Weekly Expenses</div> <<if _workerSalaries > 0>> <div style="display: flex; justify-content: space-between; padding: 5px 0; border-bottom: 1px solid rgba(244, 67, 54, 0.2);"> <span style="color: #ccc;">👩 Worker Salaries (<<print $playerBrothel.prostitutes.length>> workers)</span> <span style="color: #f44336; font-weight: bold;">-$<<print _workerSalaries>></span> </div> <</if>> <<if _securityCost > 0>> <div style="display: flex; justify-content: space-between; padding: 5px 0; border-bottom: 1px solid rgba(244, 67, 54, 0.2);"> <span style="color: #ccc;">🛡️ Security Guards</span> <span style="color: #f44336; font-weight: bold;">-$<<print _securityCost>></span> </div> <</if>> <<if _barCost > 0>> <div style="display: flex; justify-content: space-between; padding: 5px 0; border-bottom: 1px solid rgba(244, 67, 54, 0.2);"> <span style="color: #ccc;">🍺 Bar</span> <span style="color: #f44336; font-weight: bold;">-$<<print _barCost>></span> </div> <</if>> <<if _weeklyExpenses == 0>> <div style="color: #888; font-style: italic; text-align: center;">No weekly expenses</div> <<else>> <div style="display: flex; justify-content: space-between; padding: 8px 0; margin-top: 5px;"> <span style="color: #fff; font-weight: bold;">TOTAL WEEKLY</span> <span style="color: #f44336; font-size: 18px; font-weight: bold;">-$<<print _weeklyExpenses>></span> </div> <</if>> </div> </div> </fieldset> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<include "PlayerBrothel_InitCheck">> <<SaveLocation>> <<EachLoc>> <<BrothelRandomEventCheck>> <<SetBackground "Media/Locations/City/RedLightDistrict/Brothel/office.jpg">> <<timed 0.2s>> <div class="centre-text">Brothel Office</div> <div class="centre-text" style="font-size: 14px; color: #888;">Manage your business from here</div> <div class="grid-row-twice"> <fieldset class="brothel-fieldset"> <legend>Navigation</legend> <div class="brothel-btn-container"> <span class="brothel-btn neutral"><<button "← Main Hall" "PlayerBrothel_Main">><</button>></span> </div> </fieldset> <fieldset class="brothel-fieldset purple"> <legend>Management</legend> <div class="brothel-btn-container"> <span class="brothel-btn primary"><<button "💋 Casting (Hire Workers)" "BrothelCasting_Main">><</button>></span> <span class="brothel-btn secondary"><<button "🔧 Buy Upgrades" "BrothelUpgrades_Main">><</button>></span> <span class="brothel-btn secondary"><<button "🚪 Buy Rooms" "BrothelBuyRooms">><</button>></span> <span class="brothel-btn info"><<button "👥 View Workers" "BrothelViewWorkers">><</button>></span> <<if ($playerBrothel.uncollectedEarnings || 0) > 0>> <span class="brothel-btn success"><<button "💰 Collect $<<print $playerBrothel.uncollectedEarnings>>" "BrothelCollectEarnings">><</button>></span> <<else>> <span class="brothel-btn neutral"><<button "💰 No Earnings" "BrothelCollectEarnings">><</button>></span> <</if>> <<if $playerBrothel.skillPoints > 0>> <span class="brothel-btn special"><<button "🎯 Skills (<<print $playerBrothel.skillPoints>>)" "BrothelPerks_Main">><</button>></span> <<else>> <span class="brothel-btn neutral"><<button "🎯 Skills" "BrothelPerks_Main">><</button>></span> <</if>> </div> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<include "PlayerBrothel_InitCheck">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/RedLightDistrict/Brothel/Working Rooms.jpg">> /* Check for random events */ <<BrothelRandomEventCheck>> <<timed 0.2s>> <div class="centre-text">Working Rooms</div> <div class="centre-text" style="font-size: 14px;">You have <<print $playerBrothel.rooms>> rooms available</div> <div class="grid-row-twice"> <fieldset class="brothel-fieldset"> <legend>Navigation</legend> <div class="brothel-btn-container"> <span class="brothel-btn neutral"><<button "← Main Hall" "PlayerBrothel_Main">><</button>></span> </div> </fieldset> <fieldset class="brothel-fieldset purple"> <legend>Activity</legend> <div class="brothel-btn-container"> <span class="brothel-btn secondary"><<button "⏳ Wait">> <<run $player.status.energy.increase(Random(1, 5, true))>> <<SpendTimeWithoutUpdate 15>> <<run $player.status.alcoholIntoxication.decrease(Random(1, 2))>> <<goto "PlayerBrothel_Rooms">> <</button>></span> </div> </fieldset> </div> /* Filter only workers assigned to "work" */ <<set _workingProstitutes = []>> <<for _i = 0; _i < $playerBrothel.prostitutes.length; _i++>> <<set _prostId = $playerBrothel.prostitutes[_i]>> <<set _assignment = $playerBrothel.workerAssignments[_prostId] || "work">> <<if _assignment == "work">> <<set _prost = $Characters.find(c => c.info.id == _prostId)>> <<if _prost>> <<run _workingProstitutes.push(_prost)>> <</if>> <</if>> <</for>> <<if _workingProstitutes.length > 0>> <fieldset> <legend>Workers Currently Working (<<print _workingProstitutes.length>>)</legend> <div class="characters-grid"> <<for _i = 0; _i < _workingProstitutes.length; _i++>> <<set _prost = _workingProstitutes[_i]>> <<set _prostIcon = _prost.getPhotoImage()>> <<set _prostName = _prost.info.firstName + " " + _prost.info.secondName>> <<capture _prost _prostIcon _prostName>> <div class="btn btn--tw-link"> <<button "<img class='avatar-list' @src='_prostIcon' alt='Avatar'><p>_prostName</p>" "BrothelWorkerDetails">> <<set $selectedBrothelWorker = _prost>> <</button>> </div> <</capture>> <</for>> </div> </fieldset> <<else>> <<if $playerBrothel.prostitutes.length > 0>> <<ChatMessage "All workers are currently assigned to other duties (Spa, Medical, or Relaxation). Assign workers to 'Work' from the Worker Management panel.">> <<else>> <<ChatMessage "No workers hired yet. Go to the Office to hire some!">> <</if>> <</if>> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _worker = $selectedBrothelWorker>> <<set _workerId = _worker.info.id>> <<ShowNpcIcon _worker>> <<set _workerName = _worker.info.firstName + " " + _worker.info.secondName>> <<set _workerAge = _worker.info.age.value>> <<set _workerFace = _worker.body.face.value>> <<set _workerCorruption = _worker.attributes.corruption.value>> /* Get brothel worker stats (with defaults for old hires) */ <<set _submission = _worker.saveData.has("submission") ? _worker.saveData.get("submission") : 3>> <<set _affection = _worker.saveData.has("affection") ? _worker.saveData.get("affection") : 3>> <<set _fear = _worker.saveData.has("fear") ? _worker.saveData.get("fear") : 1>> /* Get energy and health */ <<set _energy = _worker.status.energy.value>> <<set _energyMax = _worker.status.energy.max>> <<set _health = _worker.status.health.value>> <<set _healthMax = _worker.status.health.max>> <<set _energyPercent = Math.round((_energy / _energyMax) * 100)>> <<set _healthPercent = Math.round((_health / _healthMax) * 100)>> /* Get current assignment */ <<set _assignment = $playerBrothel.workerAssignments[_workerId] || "work">> /* Initialize stats if not set */ <<if !_worker.saveData.has("submission")>> <<run _worker.saveData.set("submission", _submission)>> <<run _worker.saveData.set("affection", _affection)>> <<run _worker.saveData.set("fear", _fear)>> <</if>> /* Calculate bar widths and styles */ <<set _faceWidth = _workerFace * 10>> <<set _corruptionWidth = _workerCorruption * 10>> <<set _submissionWidth = _submission * 10>> <<set _affectionWidth = _affection * 10>> <<set _fearWidth = _fear * 10>> /* Pre-compute bar styles for proper rendering */ <<set _healthBarStyle = "background: linear-gradient(90deg, #f44336, #e91e63); width: " + _healthPercent + "%; height: 100%; border-radius: 5px; transition: width 0.3s;">> <<set _energyBarStyle = "background: linear-gradient(90deg, #ff9800, #ffeb3b); width: " + _energyPercent + "%; height: 100%; border-radius: 5px; transition: width 0.3s;">> <<set _faceBarStyle = "background: #e91e63; width: " + _faceWidth + "%; height: 100%; border-radius: 3px;">> <<set _corruptionBarStyle = "background: #9c27b0; width: " + _corruptionWidth + "%; height: 100%; border-radius: 3px;">> <<set _submissionBarStyle = "background: #ff9800; width: " + _submissionWidth + "%; height: 100%; border-radius: 3px;">> <<set _affectionBarStyle = "background: #e91e63; width: " + _affectionWidth + "%; height: 100%; border-radius: 3px;">> <<set _fearBarStyle = "background: #673ab7; width: " + _fearWidth + "%; height: 100%; border-radius: 3px;">> <fieldset style="background: linear-gradient(135deg, rgba(233, 30, 99, 0.1) 0%, rgba(33, 33, 33, 0.9) 100%); border: 1px solid #e91e63;"> <legend style="color: #f48fb1;"><<print _workerName>></legend> /* Vital Stats - Health & Energy */ <div style="margin-bottom: 15px;"> <div style="font-size: 12px; margin: 8px 0;"> <div style="display: flex; justify-content: space-between; color: #fff;"><span>❤️ Health</span><span><<print _health>>/<<print _healthMax>></span></div> <div style="background: rgba(255,255,255,0.1); height: 10px; border-radius: 5px; margin-top: 4px;"> <div @style="_healthBarStyle"></div> </div> </div> <div style="font-size: 12px; margin: 8px 0;"> <div style="display: flex; justify-content: space-between; color: #fff;"><span>⚡ Energy</span><span><<print _energy>>/<<print _energyMax>></span></div> <div style="background: rgba(255,255,255,0.1); height: 10px; border-radius: 5px; margin-top: 4px;"> <div @style="_energyBarStyle"></div> </div> </div> </div> <hr style="border-color: rgba(255,255,255,0.1); margin: 10px 0;"> /* Basic Info */ <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 15px;"> <div> <p style="color: #aaa; font-size: 12px;"><b>Age:</b> <span style="color: #fff;"><<print _workerAge>></span></p> <div style="font-size: 11px; margin: 8px 0;"> <div style="display: flex; justify-content: space-between; color: #aaa;"><span>✨ Attractiveness</span><span><<print _workerFace>>/10</span></div> <div style="background: rgba(255,255,255,0.1); height: 6px; border-radius: 3px; margin-top: 3px;"> <div @style="_faceBarStyle"></div> </div> </div> <div style="font-size: 11px; margin: 8px 0;"> <div style="display: flex; justify-content: space-between; color: #aaa;"><span>🔥 Corruption</span><span><<print _workerCorruption>>/10</span></div> <div style="background: rgba(255,255,255,0.1); height: 6px; border-radius: 3px; margin-top: 3px;"> <div @style="_corruptionBarStyle"></div> </div> </div> </div> <div> <div style="font-size: 11px; margin: 8px 0;"> <div style="display: flex; justify-content: space-between; color: #aaa;"><span>🎀 Submission</span><span><<print _submission>>/10</span></div> <div style="background: rgba(255,255,255,0.1); height: 6px; border-radius: 3px; margin-top: 3px;"> <div @style="_submissionBarStyle"></div> </div> </div> <div style="font-size: 11px; margin: 8px 0;"> <div style="display: flex; justify-content: space-between; color: #aaa;"><span>💕 Affection</span><span><<print _affection>>/10</span></div> <div style="background: rgba(255,255,255,0.1); height: 6px; border-radius: 3px; margin-top: 3px;"> <div @style="_affectionBarStyle"></div> </div> </div> <div style="font-size: 11px; margin: 8px 0;"> <div style="display: flex; justify-content: space-between; color: #aaa;"><span>😨 Fear</span><span><<print _fear>>/10</span></div> <div style="background: rgba(255,255,255,0.1); height: 6px; border-radius: 3px; margin-top: 3px;"> <div @style="_fearBarStyle"></div> </div> </div> </div> </div> <div style="text-align: center; margin-top: 10px;"> <span class="brothel-btn info small"><<button "❓ Stats Guide" "BrothelWorker_StatsHelp">><</button>></span> </div> </fieldset> <fieldset style="background: linear-gradient(135deg, rgba(33, 150, 243, 0.1) 0%, rgba(33, 33, 33, 0.9) 100%); border: 1px solid #2196f3;"> <legend style="color: #64b5f6;">📋 Assignment</legend> /* Current assignment display */ <div style="background: rgba(0,0,0,0.3); padding: 10px 15px; border-radius: 10px; margin-bottom: 12px; display: flex; justify-content: space-between; align-items: center;"> <span style="color: #aaa; font-size: 12px;">Current Assignment:</span> <<if _assignment == "work">> <span style="background: linear-gradient(135deg, #e91e63 0%, #c2185b 100%); padding: 5px 15px; border-radius: 15px; color: #fff; font-size: 12px; font-weight: bold;">💋 Working</span> <<elseif _assignment == "spa">> <span style="background: linear-gradient(135deg, #00bcd4 0%, #0097a7 100%); padding: 5px 15px; border-radius: 15px; color: #fff; font-size: 12px; font-weight: bold;">💆 Spa</span> <<elseif _assignment == "medical">> <span style="background: linear-gradient(135deg, #4CAF50 0%, #388E3C 100%); padding: 5px 15px; border-radius: 15px; color: #fff; font-size: 12px; font-weight: bold;">🏥 Medical</span> <<elseif _assignment == "relaxation">> <span style="background: linear-gradient(135deg, #ff9800 0%, #f57c00 100%); padding: 5px 15px; border-radius: 15px; color: #fff; font-size: 12px; font-weight: bold;">🛋️ Relaxation</span> <<else>> <span style="background: linear-gradient(135deg, #e91e63 0%, #c2185b 100%); padding: 5px 15px; border-radius: 15px; color: #fff; font-size: 12px; font-weight: bold;">💋 Working</span> <</if>> </div> /* Assignment buttons grid */ <div style="display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px;"> <<if _assignment != "work">> <span class="brothel-btn primary small"><<button "💋 Work" "BrothelWorker_Assign">><<set $workerNewAssignment = "work">><</button>></span> <<else>> <div style="background: rgba(233, 30, 99, 0.3); border-radius: 10px; padding: 12px; text-align: center; border: 2px solid #e91e63;"> <span style="color: #e91e63; font-size: 12px;">💋 Working ✓</span> </div> <</if>> <<if $playerBrothel.upgrades.spa>> <<if _assignment != "spa">> <span class="brothel-btn spa small"><<button "💆 Spa" "BrothelWorker_Assign">><<set $workerNewAssignment = "spa">><</button>></span> <<else>> <div style="background: rgba(0, 188, 212, 0.3); border-radius: 10px; padding: 12px; text-align: center; border: 2px solid #00bcd4;"> <span style="color: #00bcd4; font-size: 12px;">💆 Spa ✓</span> </div> <</if>> <</if>> <<if $playerBrothel.upgrades.medical>> <<if _assignment != "medical">> <span class="brothel-btn success small"><<button "🏥 Medical" "BrothelWorker_Assign">><<set $workerNewAssignment = "medical">><</button>></span> <<else>> <div style="background: rgba(76, 175, 80, 0.3); border-radius: 10px; padding: 12px; text-align: center; border: 2px solid #4CAF50;"> <span style="color: #4CAF50; font-size: 12px;">🏥 Medical ✓</span> </div> <</if>> <</if>> <<if $playerBrothel.upgrades.relaxation>> <<if _assignment != "relaxation">> <span class="brothel-btn special small"><<button "🛋️ Rest" "BrothelWorker_Assign">><<set $workerNewAssignment = "relaxation">><</button>></span> <<else>> <div style="background: rgba(255, 152, 0, 0.3); border-radius: 10px; padding: 12px; text-align: center; border: 2px solid #ff9800;"> <span style="color: #ff9800; font-size: 12px;">🛋️ Rest ✓</span> </div> <</if>> <</if>> /* Room assignment - always available */ <<if _assignment != "room">> <span class="brothel-btn neutral small"><<button "🚪 Room" "BrothelWorker_Assign">><<set $workerNewAssignment = "room">><</button>></span> <<else>> <div style="background: rgba(96, 125, 139, 0.3); border-radius: 10px; padding: 12px; text-align: center; border: 2px solid #607D8B;"> <span style="color: #607D8B; font-size: 12px;">🚪 In Room ✓</span> </div> <</if>> </div> </fieldset> /* Check if player can have sex */ <<set _playerEnergy = $player.status.energy.value>> <<set _playerPotency = $player.status.potency.value>> <<set _potencyMin = $player.status.potency.min>> <<set _workerEnergy = _worker.status.energy.value>> <<set _workerHasEnergy = _workerEnergy >= 10>> <<set _hasEnoughAffection = _affection >= 8>> <<set _canHaveSex = _playerEnergy >= 10 && _playerPotency > _potencyMin && _workerHasEnergy && _hasEnoughAffection>> /* Check if player already talked to this worker today */ <<set _workerId = _worker.info.id>> <<set _talkEventKey = "brothelTalk_" + _workerId>> <<set _alreadyTalkedToday = $dailyEvents && $dailyEvents[_talkEventKey]>> <fieldset class="brothel-fieldset purple"> <legend>💬 Interactions</legend> <div class="brothel-btn-container"> <<if _canHaveSex>> <span class="brothel-btn primary"><<button "💋 Offer Sex" "BrothelWorker_OfferSex">><</button>></span> <<else>> <<if !_hasEnoughAffection>> <span class="brothel-btn disabled" title="Worker's affection is too low (<<print _affection>>/8)"><<button "💋 Offer Sex (Low Affection)">><</button>></span> <<elseif !_workerHasEnergy>> <span class="brothel-btn disabled" title="Worker is too tired"><<button "💋 Offer Sex (Worker Tired)">><</button>></span> <<elseif _playerEnergy < 10 && _playerPotency <= _potencyMin>> <span class="brothel-btn disabled" title="Not enough energy and sex stamina"><<button "💋 Offer Sex (Low Energy & Stamina)">><</button>></span> <<elseif _playerEnergy < 10>> <span class="brothel-btn disabled" title="Not enough energy"><<button "💋 Offer Sex (Low Energy)">><</button>></span> <<else>> <span class="brothel-btn disabled" title="Not enough sex stamina"><<button "💋 Offer Sex (Exhausted)">><</button>></span> <</if>> <</if>> <span class="brothel-btn success"><<button "💰 Give Money" "BrothelWorker_GiveMoney">><</button>></span> <<if _alreadyTalkedToday>> <span class="brothel-btn disabled" title="You already talked to this worker today"><<button "🗣️ Talk (Already Talked)">><</button>></span> <<else>> <span class="brothel-btn info"><<button "🗣️ Talk" "BrothelWorker_Talk">><</button>></span> <</if>> <span class="brothel-btn secondary"><<button "👀 View Body" "BrothelWorker_ViewBody">><</button>></span> <span class="brothel-btn special"><<button "💋 Skills & Limits" "BrothelWorker_ViewSkillsLimits">><</button>></span> </div> </fieldset> /* Feminization option for male workers */ <<set _workerGender = _worker.gender()>> <<if _workerGender == "Male">> <<set _feminizationAttempts = _worker.saveData.get("feminizationAttempts") || 0>> <<set _hasExtraAttempt = $playerBrothel.perks && $playerBrothel.perks.feminizationAttempts>> <<set _maxAttempts = _hasExtraAttempt ? 2 : 1>> <<set _canAttempt = _feminizationAttempts < _maxAttempts>> <<set _hasEnoughAffectionForSurgery = _affection >= 8>> <fieldset class="brothel-fieldset"> <legend>🎀 Feminization</legend> <<if !_hasEnoughAffectionForSurgery>> <p style="color: #ffa726; font-size: 12px;">⚠ Worker's affection is too low for surgical procedures (<<print _affection>>/8)</p> <p style="color: #888; font-size: 11px;">Build trust through talking and gifts before offering transformation.</p> <div class="brothel-btn-container"> <span class="brothel-btn disabled" title="Affection too low (<<print _affection>>/8)"><<button "💉 Offer Feminization (Low Affection)">><</button>></span> </div> <<elseif !_canAttempt>> <p style="color: #ff6666; font-size: 12px;">⚠ You already offered feminization to this worker <<print _maxAttempts>> time(s), but they refused.</p> <div class="brothel-btn-container"> <span class="brothel-btn disabled"><<button "💉 Offer Feminization (Max Attempts)">><</button>></span> </div> <<else>> <p style="color: #aaa; font-size: 12px;">Offer this male worker a feminization procedure to transform them into a more desirable form.</p> <<if _hasExtraAttempt>> <p style="color: #ffd700; font-size: 11px;">⭐ Persuasion Master: <<print _maxAttempts - _feminizationAttempts>> attempt(s) remaining</p> <</if>> <div class="brothel-btn-container"> <span class="brothel-btn special"><<button "💉 Offer Feminization" "BrothelWorker_OfferFeminization">><</button>></span> </div> <</if>> </fieldset> <</if>> /* Surgical Enhancement option - only for females and shemales */ <<set _canEnhance = _workerGender == "Female" || _workerGender == "Shemale">> <<set _hasEnoughAffectionForSurgery = _affection >= 8>> <<if _canEnhance>> <fieldset class="brothel-fieldset"> <legend>💉 Surgical Enhancement</legend> <<if !_hasEnoughAffectionForSurgery>> <p style="color: #ffa726; font-size: 12px;">⚠ Worker's affection is too low for surgical procedures (<<print _affection>>/8)</p> <p style="color: #888; font-size: 11px;">Build trust through talking and gifts before offering enhancements.</p> <div class="brothel-btn-container"> <span class="brothel-btn disabled" title="Affection too low (<<print _affection>>/8)"><<button "🍈 Breast Enhancement (Low Affection)">><</button>></span> <span class="brothel-btn disabled" title="Affection too low (<<print _affection>>/8)"><<button "🍑 Butt Enhancement (Low Affection)">><</button>></span> </div> <<else>> <p style="color: #aaa; font-size: 12px;">Enhance your worker's body through surgical procedures.</p> <div class="brothel-btn-container"> <span class="brothel-btn special"><<button "🍈 Breast Enhancement" "BrothelWorker_Surgery_Breasts">><</button>></span> <span class="brothel-btn special"><<button "🍑 Butt Enhancement" "BrothelWorker_Surgery_Butt">><</button>></span> </div> <</if>> </fieldset> <</if>> <fieldset> <legend>⚙️ Management</legend> <div class="brothel-btn-container"> <span class="brothel-btn danger"><<button "🚫 Fire Worker" "BrothelFireWorker">><</button>></span> <span class="brothel-btn neutral"><<button "← Back" "BrothelViewWorkers">><<unset $selectedBrothelWorker>><</button>></span> </div> </fieldset> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _worker = $selectedBrothelWorker>> <<ShowNpcIcon _worker>> <div class="centre-text" style="font-size: 22px; color: #ffc107; text-shadow: 0 0 15px rgba(255, 193, 7, 0.5);">❓ Worker Stats Guide</div> /* Attractiveness */ <fieldset style="background: linear-gradient(135deg, rgba(233, 30, 99, 0.15) 0%, rgba(33, 33, 33, 0.95) 100%); border: 2px solid #e91e63; margin: 15px 0;"> <legend style="color: #f48fb1; font-size: 16px;">✨ Attractiveness</legend> <div style="padding: 15px;"> <p style="color: #ccc; font-size: 13px; margin-bottom: 15px;"> 💰 <b>Directly affects income!</b> The most important stat for profitability. </p> <div style="background: rgba(76, 175, 80, 0.15); padding: 12px; border-radius: 8px; border-left: 3px solid #4CAF50; margin-bottom: 10px;"> <div style="color: #81c784; font-weight: bold; margin-bottom: 8px;">✓ High Attractiveness (7+)</div> <ul style="color: #aaa; font-size: 12px; margin: 0; padding-left: 20px;"> <li>100% of potential income at 10</li> <li>Attracts more clients</li> <li>Higher tips from satisfied customers</li> </ul> </div> <div style="background: rgba(244, 67, 54, 0.15); padding: 12px; border-radius: 8px; border-left: 3px solid #f44336; margin-bottom: 10px;"> <div style="color: #ef9a9a; font-weight: bold; margin-bottom: 8px;">✗ Low Attractiveness (3-)</div> <ul style="color: #aaa; font-size: 12px; margin: 0; padding-left: 20px;"> <li>Only 40-60% of potential income</li> <li>Fewer clients want to pay for services</li> <li>At 1: Minimum 40% income</li> </ul> </div> <div style="background: rgba(255, 152, 0, 0.15); padding: 12px; border-radius: 8px; border-left: 3px solid #ff9800; margin-bottom: 10px;"> <div style="color: #ffb74d; font-weight: bold; margin-bottom: 8px;">⚠️ Important: Daily Decay!</div> <ul style="color: #aaa; font-size: 12px; margin: 0; padding-left: 20px;"> <li>All workers lose 0.1-0.3 attractiveness per day from work</li> <li>Without maintenance, attractiveness will drop over time</li> <li>Send workers to the <span style="color: #4fc3f7;">💆 Spa Salon</span> to restore it!</li> </ul> </div> <div style="background: rgba(0,0,0,0.3); padding: 10px; border-radius: 5px; margin-top: 10px;"> <div style="color: #888; font-size: 11px;">📈 How to restore: Spa Salon (+0.5-1.0/day), Breast/Butt surgery (one-time boost)</div> </div> </div> </fieldset> /* Submission */ <fieldset style="background: linear-gradient(135deg, rgba(255, 152, 0, 0.15) 0%, rgba(33, 33, 33, 0.95) 100%); border: 2px solid #ff9800; margin: 15px 0;"> <legend style="color: #ffb74d; font-size: 16px;">🎀 Submission</legend> <div style="padding: 15px;"> <p style="color: #ccc; font-size: 13px; margin-bottom: 15px;"> Determines how obedient the worker is and whether they follow your orders. </p> <div style="background: rgba(76, 175, 80, 0.15); padding: 12px; border-radius: 8px; border-left: 3px solid #4CAF50; margin-bottom: 10px;"> <div style="color: #81c784; font-weight: bold; margin-bottom: 8px;">✓ High Submission (6+)</div> <ul style="color: #aaa; font-size: 12px; margin: 0; padding-left: 20px;"> <li>Accepts difficult clients without complaint</li> <li>Never refuses work assignments</li> <li>At 8+: Agrees to surgical procedures</li> <li>At 8+: Can work overtime shifts</li> </ul> </div> <div style="background: rgba(244, 67, 54, 0.15); padding: 12px; border-radius: 8px; border-left: 3px solid #f44336;"> <div style="color: #ef9a9a; font-weight: bold; margin-bottom: 8px;">✗ Low Submission (3-)</div> <ul style="color: #aaa; font-size: 12px; margin: 0; padding-left: 20px;"> <li>May refuse unpleasant clients (-income)</li> <li>At 2-: Sometimes skips work</li> <li>Demands higher salary</li> </ul> </div> <div style="background: rgba(0,0,0,0.3); padding: 10px; border-radius: 5px; margin-top: 10px;"> <div style="color: #888; font-size: 11px;">📈 How to increase: Training, successful work, positive interactions</div> </div> </div> </fieldset> /* Affection */ <fieldset style="background: linear-gradient(135deg, rgba(233, 30, 99, 0.15) 0%, rgba(33, 33, 33, 0.95) 100%); border: 2px solid #e91e63; margin: 15px 0;"> <legend style="color: #f48fb1; font-size: 16px;">💕 Affection</legend> <div style="padding: 15px;"> <p style="color: #ccc; font-size: 13px; margin-bottom: 15px;"> Represents how much the worker likes and trusts you personally. </p> <div style="background: rgba(76, 175, 80, 0.15); padding: 12px; border-radius: 8px; border-left: 3px solid #4CAF50; margin-bottom: 10px;"> <div style="color: #81c784; font-weight: bold; margin-bottom: 8px;">✓ High Affection (7+)</div> <ul style="color: #aaa; font-size: 12px; margin: 0; padding-left: 20px;"> <li>At 7+: Will accept your job offer (hiring)</li> <li>At 8+: Agrees to have sex with you</li> <li>At 8+: Agrees to surgical procedures</li> <li>Loyal worker, less likely to cause problems</li> </ul> </div> <div style="background: rgba(244, 67, 54, 0.15); padding: 12px; border-radius: 8px; border-left: 3px solid #f44336;"> <div style="color: #ef9a9a; font-weight: bold; margin-bottom: 8px;">✗ Low Affection (3-)</div> <ul style="color: #aaa; font-size: 12px; margin: 0; padding-left: 20px;"> <li>Refuses personal requests</li> <li>No loyalty to you</li> <li>May complain about working conditions</li> </ul> </div> <div style="background: rgba(0,0,0,0.3); padding: 10px; border-radius: 5px; margin-top: 10px;"> <div style="color: #888; font-size: 11px;">📈 How to increase: Gifts ($), talking, positive interactions</div> </div> </div> </fieldset> /* Corruption */ <fieldset style="background: linear-gradient(135deg, rgba(156, 39, 176, 0.15) 0%, rgba(33, 33, 33, 0.95) 100%); border: 2px solid #9c27b0; margin: 15px 0;"> <legend style="color: #ce93d8; font-size: 16px;">🔥 Corruption</legend> <div style="padding: 15px;"> <p style="color: #ccc; font-size: 13px; margin-bottom: 15px;"> Measures sexual experience and willingness to perform various services. </p> <div style="background: rgba(76, 175, 80, 0.15); padding: 12px; border-radius: 8px; border-left: 3px solid #4CAF50; margin-bottom: 10px;"> <div style="color: #81c784; font-weight: bold; margin-bottom: 8px;">✓ High Corruption (7+)</div> <ul style="color: #aaa; font-size: 12px; margin: 0; padding-left: 20px;"> <li>+3% income bonus per level (up to +30%)</li> <li>At 7+: Can serve VIP clients (x2 income)</li> <li>Fewer service limits (more "Yes" limits)</li> <li>Learns new skills faster</li> <li>Handles kinky requests well</li> </ul> </div> <div style="background: rgba(244, 67, 54, 0.15); padding: 12px; border-radius: 8px; border-left: 3px solid #f44336;"> <div style="color: #ef9a9a; font-weight: bold; margin-bottom: 8px;">✗ Low Corruption (3-)</div> <ul style="color: #aaa; font-size: 12px; margin: 0; padding-left: 20px;"> <li>Refuses kinky clients</li> <li>More service limits</li> <li>Learns skills slower</li> </ul> </div> <div style="background: rgba(0,0,0,0.3); padding: 10px; border-radius: 5px; margin-top: 10px;"> <div style="color: #888; font-size: 11px;">📈 How to increase: Work experience, sex with player, training</div> </div> </div> </fieldset> /* Fear */ <fieldset style="background: linear-gradient(135deg, rgba(103, 58, 183, 0.15) 0%, rgba(33, 33, 33, 0.95) 100%); border: 2px solid #673ab7; margin: 15px 0;"> <legend style="color: #b39ddb; font-size: 16px;">😨 Fear</legend> <div style="padding: 15px;"> <p style="color: #ccc; font-size: 13px; margin-bottom: 15px;"> ⚠️ <b>Double-edged stat!</b> Balance is key - too high or too low causes problems. </p> <div style="background: rgba(255, 193, 7, 0.15); padding: 12px; border-radius: 8px; border-left: 3px solid #ffc107; margin-bottom: 10px;"> <div style="color: #ffca28; font-weight: bold; margin-bottom: 8px;">⚖️ Optimal Fear (3-5)</div> <ul style="color: #aaa; font-size: 12px; margin: 0; padding-left: 20px;"> <li>Respects your authority</li> <li>Follows orders reliably</li> <li>Works even when tired</li> <li>No negative effects</li> </ul> </div> <div style="background: rgba(244, 67, 54, 0.15); padding: 12px; border-radius: 8px; border-left: 3px solid #f44336; margin-bottom: 10px;"> <div style="color: #ef9a9a; font-weight: bold; margin-bottom: 8px;">⚠️ High Fear (7+) - DANGEROUS</div> <ul style="color: #aaa; font-size: 12px; margin: 0; padding-left: 20px;"> <li>-5% income per level above 6 (poor performance)</li> <li>At 9+: Risk of escape (5-15% daily chance)</li> <li>Lowers other workers' morale</li> <li>Makes mistakes with clients (-reputation)</li> </ul> </div> <div style="background: rgba(33, 150, 243, 0.15); padding: 12px; border-radius: 8px; border-left: 3px solid #2196f3;"> <div style="color: #64b5f6; font-weight: bold; margin-bottom: 8px;">💙 Low Fear (0-2)</div> <ul style="color: #aaa; font-size: 12px; margin: 0; padding-left: 20px;"> <li>May refuse unpleasant tasks</li> <li>Sometimes demands salary raises</li> <li>Best combined with high Affection</li> </ul> </div> <div style="background: rgba(0,0,0,0.3); padding: 10px; border-radius: 5px; margin-top: 10px;"> <div style="color: #888; font-size: 11px;">📈 Increases: Punishment, dungeon whipping | 📉 Decreases: Gifts, kindness, time</div> </div> </div> </fieldset> /* Optimal Builds Table */ <fieldset style="background: linear-gradient(135deg, rgba(255, 215, 0, 0.1) 0%, rgba(33, 33, 33, 0.95) 100%); border: 2px solid #ffd700; margin: 15px 0;"> <legend style="color: #ffd700; font-size: 16px;">🏆 Optimal Worker Builds</legend> <div style="padding: 15px;"> <table style="width: 100%; border-collapse: collapse; font-size: 12px;"> <tr style="background: rgba(0,0,0,0.3);"> <th style="padding: 10px; text-align: left; color: #ffd700; border-bottom: 1px solid #555;">Build</th> <th style="padding: 10px; text-align: center; color: #ff9800;">Sub</th> <th style="padding: 10px; text-align: center; color: #9c27b0;">Cor</th> <th style="padding: 10px; text-align: center; color: #673ab7;">Fear</th> <th style="padding: 10px; text-align: left; color: #aaa;">Effect</th> </tr> <tr style="border-bottom: 1px solid #333;"> <td style="padding: 10px; color: #4CAF50;">💰 Gold Mine</td> <td style="padding: 10px; text-align: center; color: #ccc;">6-8</td> <td style="padding: 10px; text-align: center; color: #ccc;">8-10</td> <td style="padding: 10px; text-align: center; color: #ccc;">3-5</td> <td style="padding: 10px; color: #888;">Maximum income</td> </tr> <tr style="border-bottom: 1px solid #333;"> <td style="padding: 10px; color: #2196f3;">🛡️ Reliable</td> <td style="padding: 10px; text-align: center; color: #ccc;">8+</td> <td style="padding: 10px; text-align: center; color: #ccc;">5-7</td> <td style="padding: 10px; text-align: center; color: #ccc;">2-4</td> <td style="padding: 10px; color: #888;">Stable, never fails</td> </tr> <tr style="border-bottom: 1px solid #333;"> <td style="padding: 10px; color: #e91e63;">🔥 VIP Star</td> <td style="padding: 10px; text-align: center; color: #ccc;">5-7</td> <td style="padding: 10px; text-align: center; color: #ccc;">10</td> <td style="padding: 10px; text-align: center; color: #ccc;">0-2</td> <td style="padding: 10px; color: #888;">VIP clients, but demanding</td> </tr> <tr style="border-bottom: 1px solid #333;"> <td style="padding: 10px; color: #f44336;">😰 Broken</td> <td style="padding: 10px; text-align: center; color: #ccc;">10</td> <td style="padding: 10px; text-align: center; color: #ccc;">any</td> <td style="padding: 10px; text-align: center; color: #ccc;">8+</td> <td style="padding: 10px; color: #888;">Obeys, but may escape!</td> </tr> <tr> <td style="padding: 10px; color: #ff9800;">💕 Loyal</td> <td style="padding: 10px; text-align: center; color: #ccc;">6+</td> <td style="padding: 10px; text-align: center; color: #ccc;">5+</td> <td style="padding: 10px; text-align: center; color: #ccc;">0-3</td> <td style="padding: 10px; color: #888;">High affection + stability</td> </tr> </table> </div> </fieldset> <div class="brothel-btn-container padding-top"> <span class="brothel-btn neutral"><<button "← Back to Worker" "BrothelWorkerDetails">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _worker = $selectedBrothelWorker>> <<set _workerId = _worker.info.id>> <<set _workerName = _worker.info.firstName>> <<set _newAssign = $workerNewAssignment>> <<set $playerBrothel.workerAssignments[_workerId] = _newAssign>> <<switch _newAssign>> <<case "work">> <<set _msg = _workerName + " has been assigned to work with clients.">> <<case "spa">> <<set _msg = _workerName + " has been sent to the Spa Salon to relax and restore energy.">> <<case "medical">> <<set _msg = _workerName + " has been sent to the Medical Room for treatment.">> <<case "relaxation">> <<set _msg = _workerName + " has been sent to the Relaxation Room to rest.">> <<case "room">> <<set _msg = _workerName + " has been sent to their room to rest.">> <<default>> <<set _msg = _workerName + " assignment has been updated.">> <</switch>> <<ChatMessage _msg>> <<unset $workerNewAssignment>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Continue" "BrothelWorkerDetails">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _worker = $selectedBrothelWorker>> <<if ndef _worker || !_worker>> <<ChatMessage "Error: No worker selected.">> <<else>> <<set _workerId = _worker.info.id>> <<set _workerName = _worker.info.firstName>> <<set _workerIndex = $playerBrothel.prostitutes.indexOf(_workerId)>> <<if _workerIndex > -1>> /* Remove from brothel list */ <<run $playerBrothel.prostitutes.splice(_workerIndex, 1)>> /* Update worker status and relocate to Red Light District */ <<set _worker.info.characterWork = "None">> <<set _worker.info.currentLocation = "RedLightDistrict">> /* Add to RedLightDistrict location list if it exists */ <<set _charIndex = $Characters.findIndex(c => c.info.id == _workerId)>> <<if _charIndex > -1 && $Locations["RedLightDistrict"]>> <<run $Locations["RedLightDistrict"].push(_charIndex)>> <</if>> <<set _msg = "You have fired " + _workerName + ". They are no longer working for you.">> <<ChatMessage _msg>> <<else>> <<ChatMessage "Error: Worker not found in brothel list.">> <</if>> <</if>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn neutral"><<button "← Back" "PlayerBrothel_Rooms">><<unset $selectedBrothelWorker>><</button>></span> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _worker = $selectedBrothelWorker>> <<ShowNpcIcon _worker>> <<set _workerName = _worker.info.firstName>> <<set _submission = _worker.saveData.get("submission") || 3>> <<set _affection = _worker.saveData.get("affection") || 3>> <<set _fear = _worker.saveData.get("fear") || 1>> <<set _corruption = _worker.attributes.corruption.value>> <<set _personality = _worker.saveData.get("personality") || "default">> /* Calculate acceptance chance based on stats */ /* Higher submission, affection, fear, and corruption = higher chance */ <<set _acceptChance = (_submission * 8) + (_affection * 6) + (_fear * 4) + (_corruption * 5)>> /* Base 20% + calculated bonus, max 95% */ <<set _acceptChance = Math.min(95, 20 + _acceptChance)>> <<set _roll = Random(1, 100)>> <<set _msg = "You approach " + _workerName + " and suggest spending some private time together...">> <<ChatMessage _msg>> <<if _roll <= _acceptChance>> /* Accepted */ <<switch _personality>> <<case "shy">> <<set _response = [ "*blushes deeply* I... if you want to, boss... I-I'll do my best...", "*looks down nervously* O-okay... I'm yours after all...", "*trembles slightly* Y-yes... please be gentle..." ].random()>> <<case "confident">> <<set _response = [ "*smirks* A private session with the boss? I'm flattered. Let's go.", "Of course. I'll show you exactly why you hired me.", "*nods approvingly* I was wondering when you'd ask. Lead the way." ].random()>> <<case "flirty">> <<set _response = [ "*giggles excitedly* I thought you'd never ask! Let's have some fun!", "*winks* Mmm, I've been hoping you'd want me... Let's go somewhere private!", "*purrs* Finally! I've been thinking about this all day..." ].random()>> <<case "submissive">> <<set _response = [ "*kneels* Yes, master. My body is always ready for you.", "*bows head* I exist to serve your desires. Use me as you wish.", "*devotedly* Of course, sir. I am yours to command." ].random()>> <<case "desperate">> <<set _response = [ "*eagerly* Yes! Anything for you, boss! You've done so much for me!", "*nods quickly* Of course! I'll do anything you want!", "*grateful* You want me? Really? I won't disappoint you!" ].random()>> <<case "arrogant">> <<set _response = [ "*sighs* Fine. I suppose the boss deserves some... special attention.", "*reluctantly* Very well. But only because you're the one paying me.", "*smirks* Alright. Consider this a privilege I'm granting you." ].random()>> <<case "cynical">> <<set _response = [ "*shrugs* Sure, why not. You're the boss after all.", "Alright. Part of the job, I guess. Let's get to it.", "*small smile* Fair enough. At least you're decent about it." ].random()>> <<default>> <<set _response = "Yes, of course... Let's go somewhere private.">> <</switch>> <<Chat _worker _response>> /* Increase affection slightly */ <<set _newAffection = Math.min(10, _affection + 1)>> <<run _worker.saveData.set("affection", _newAffection)>> /* Check worker gender for available options */ <<set _workerGender = _worker.gender()>> <<set _hasVagina = _workerGender == "Female">> <<ChatMessage "Choose what you want to do:">> <div class="brothel-btn-container padding-top"> <span class="brothel-btn primary"><<button "👄 Oral Sex" "BrothelWorker_SexScene">> <<set $workerSexType = "Oral">> <</button>></span> <<if _hasVagina>> <span class="brothel-btn secondary"><<button "💕 Vaginal Sex" "BrothelWorker_SexScene">> <<set $workerSexType = "Vag">> <</button>></span> <</if>> <span class="brothel-btn secondary"><<button "🍑 Anal Sex" "BrothelWorker_SexScene">> <<set $workerSexType = "Anal">> <</button>></span> </div> <<else>> /* Refused */ <<switch _personality>> <<case "shy">> <<set _response = [ "*steps back nervously* I-I'm sorry... I'm not comfortable with that right now...", "*looks away* P-please... not now... I need more time...", "*trembles* I... I can't... please don't be angry..." ].random()>> <<case "confident">> <<set _response = [ "I don't think so. Just because you're the boss doesn't mean you own me.", "*crosses arms* No. I work here, but I have my limits.", "Not interested right now. Maybe treat me better first." ].random()>> <<case "flirty">> <<set _response = [ "*pouts* Sorry sweetie, I'm not in the mood right now...", "*giggles nervously* Maybe another time? I'm tired today...", "*winks* Not right now, but keep trying, you might get lucky!" ].random()>> <<case "submissive">> <<set _response = [ "*kneels apologetically* F-forgive me... I don't feel ready yet...", "*head bowed* I'm sorry, master... please give me more time...", "*trembling* I want to obey, but... please, not yet..." ].random()>> <<case "arrogant">> <<set _response = [ "*scoffs* Absolutely not. You haven't earned that privilege.", "*dismissively* Please. I'm not some cheap commodity.", "*looks away haughtily* Maybe when you prove you're worth my time." ].random()>> <<case "cynical">> <<set _response = [ "*frowns* No. I don't trust you enough for that yet.", "*shakes head* Nope. Buy me dinner first or something.", "*sarcastically* Great way to make me uncomfortable. Hard pass." ].random()>> <<default>> <<set _response = "I'm sorry, but I'm not comfortable with that right now.">> <</switch>> <<Chat _worker _response>> <<ChatMessage "They refused your advance. Perhaps improving their submission, affection, or fear would help.">> <div class="brothel-btn-container padding-top"> <span class="brothel-btn neutral"><<button "← Back" "BrothelWorkerDetails">><</button>></span> </div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _worker = $selectedBrothelWorker>> <<ShowNpcIcon _worker>> <<set _workerName = _worker.info.firstName>> <<set _workerGender = _worker.gender()>> <<set _playerGender = $player.gender()>> <<set _msg = "You take " + _workerName + " to a private room...">> <<ChatMessage _msg>> <<SpendTimeWithoutUpdate 30>> /* Set up sex video based on selected type */ <<set _sexType = $workerSexType || "Vag">> <<switch _sexType>> <<case "Oral">> <<SetOralPick _playerGender _workerGender>> <<ChatMessage "You enjoy oral pleasure...">> <<case "Vag">> <<SetVagPick _playerGender _workerGender>> <<ChatMessage "You enjoy vaginal sex...">> <<case "Anal">> <<SetAnalPick _playerGender _workerGender>> <<ChatMessage "You enjoy anal sex...">> <</switch>> <<Video _pick>> /* Increase horny for male/shemale players */ <<if _playerGender != "Female">> <<run $player.status.horny.increase(30)>> <</if>> /* Decrease energy for player */ <<run $player.status.energy.decrease(10)>> /* Decrease energy for worker */ <<run _worker.status.energy.decrease(15)>> <<set _msg = "You spend quality time with " + _workerName + "...">> <<ChatMessage _msg>> /* Small chance to increase affection */ <<if Random(1, 100) <= 30>> <<set _affection = _worker.saveData.get("affection") || 3>> <<set _newAffection = Math.min(10, _affection + 1)>> <<run _worker.saveData.set("affection", _newAffection)>> <<set _msg = _workerName + " seems to enjoy your company. (Affection +1)">> <<ChatMessage _msg>> <</if>> /* Check if player reached max horny */ <<if _playerGender != "Female" && $player.status.horny.value >= $player.status.horny.max>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn danger"><<button "💦 Cum" "BrothelWorker_CumScene">><</button>></span> </div> <<else>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Finish" "BrothelWorkerDetails">><</button>></span> </div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _worker = $selectedBrothelWorker>> <<set _workerName = _worker.info.firstName>> <<set _workerGender = _worker.gender()>> <<set _playerGender = $player.gender()>> <<set _personality = _worker.saveData.get("personality") || "default">> <<ShowNpcIcon _worker>> <<ChatMessage "You feel yourself reaching the edge...">> /* Set cumshot video based on the type of sex */ <<set _cumInside = Random(0, 100) > 50>> <<switch $workerSexType>> <<case "Oral">> <<if _cumInside>> <<SetOralCumInPick _playerGender _workerGender>> <<set _cumMsg = "You cum in " + _workerName + "'s mouth.">> <<else>> <<SetOralCumOutPick _playerGender _workerGender>> <<set _cumMsg = "You cum all over " + _workerName + "'s face.">> <</if>> <<case "Vag">> <<if _cumInside>> <<SetVagCumInPick _playerGender _workerGender>> <<set _cumMsg = "You cum deep inside " + _workerName + ".">> <<else>> <<SetVagCumOutPick _playerGender _workerGender>> <<set _cumMsg = "You pull out and cum all over " + _workerName + ".">> <</if>> <<case "Anal">> <<if _cumInside>> <<SetAnalCumInPick _playerGender _workerGender>> <<set _cumMsg = "You cum deep inside " + _workerName + "'s ass.">> <<else>> <<SetAnalCumOutPick _playerGender _workerGender>> <<set _cumMsg = "You pull out and cum all over " + _workerName + "'s ass.">> <</if>> <<default>> <<SetOralCumOutPick _playerGender _workerGender>> <<set _cumMsg = "You finish all over " + _workerName + ".">> <</switch>> <<Video _pick>> <<ChatMessage _cumMsg>> /* Personality-based cum reaction */ <<switch _personality>> <<case "shy">> <<if _cumInside>> <<set _cumResponse = [ "*gasps* Oh! I... I can feel it inside me... *blushes deeply*", "*squeaks* S-so warm... *trembles*", "*whimpers softly* That felt... intense..." ].random()>> <<else>> <<set _cumResponse = [ "*covers face* Oh my... *blushes furiously*", "*gasps* I'm all messy now... *shy smile*", "*trembling* That was... a lot..." ].random()>> <</if>> <<case "confident">> <<if _cumInside>> <<set _cumResponse = [ "*satisfied smile* Mmm, exactly as I expected.", "Good. That's what a professional delivers.", "*nods approvingly* Satisfying, wasn't it?" ].random()>> <<else>> <<set _cumResponse = [ "*wipes self gracefully* A job well done.", "*professionally* I trust you're satisfied?", "*stands with poise* Quality service, as always." ].random()>> <</if>> <<case "flirty">> <<if _cumInside>> <<set _cumResponse = [ "*moans happily* Mmm, I love it! Do that anytime, boss...", "*giggles* That felt AMAZING!", "*purrs* So good... I could get used to this..." ].random()>> <<else>> <<set _cumResponse = [ "*giggles and licks lips* Yummy! Can we do this again soon?", "*playfully* Mmm, you made quite a mess! I love it!", "*winks while wiping* That was fun! Come back anytime..." ].random()>> <</if>> <<case "submissive">> <<if _cumInside>> <<set _cumResponse = [ "*kneels gratefully* Thank you for using me, master...", "*head bowed* I am honored to receive your seed...", "*devotedly* My body is yours to fill whenever you desire..." ].random()>> <<else>> <<set _cumResponse = [ "*kneels in the mess* Thank you, master. I am marked as yours.", "*doesn't wipe* May I wear your mark proudly, sir?", "*bows* I am grateful for your attention..." ].random()>> <</if>> <<case "desperate">> <<if _cumInside>> <<set _cumResponse = [ "*clings to you* Thank you... thank you for wanting me...", "*emotional* You actually... finished inside... I feel so wanted...", "*crying happy tears* That was wonderful... thank you..." ].random()>> <<else>> <<set _cumResponse = [ "*grateful despite the mess* Thank you for choosing me...", "*sniffles happily* I'm glad I could satisfy you...", "*holds you* That meant more than you know..." ].random()>> <</if>> <<case "arrogant">> <<if _cumInside>> <<set _cumResponse = [ "*smirks* I knew you couldn't resist me.", "Well, you're welcome for that experience.", "*satisfied* As expected, I'm irresistible." ].random()>> <<else>> <<set _cumResponse = [ "*examines the mess* Quite the tribute you've left.", "*sighs dramatically* I suppose I'll have to clean up now.", "*inspects nails* Well, that was... adequate." ].random()>> <</if>> <<case "cynical">> <<if _cumInside>> <<set _cumResponse = [ "*catches breath* Alright, that was... pretty good.", "*small smile* Not bad, boss. Not bad at all.", "Well, at least you know what you're doing." ].random()>> <<else>> <<set _cumResponse = [ "*wipes self* Job done. Same time tomorrow?", "*shrugs* Could have been worse. Could have been better.", "*lights imaginary cigarette* ...That was actually decent." ].random()>> <</if>> <<default>> <<set _cumResponse = "*catches breath* That was... really good.">> <</switch>> <<Chat _worker _cumResponse>> /* Reset horny, decrease potency */ <<run $player.status.horny.decrease(1000)>> <<run $player.status.potency.decrease(1)>> <<ChatMessage "You feel satisfied and spent.">> <<unset $workerSexType>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Finish" "BrothelWorkerDetails">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _worker = $selectedBrothelWorker>> <<ShowNpcIcon _worker>> <<set _workerName = _worker.info.firstName>> <<set _personality = _worker.saveData.get("personality") || "default">> <div class="centre-text">Give Money to <<print _workerName>></div> <<ChatMessage "How much money do you want to give?">> <div class="btn-container padding-top"> <<set _amounts = [50, 100, 250, 500]>> <<for _i = 0; _i < _amounts.length; _i++>> <<set _amount = _amounts[_i]>> <<capture _amount>> <<if $player.money >= _amount>> <<set _btnText = "💰 Give $" + _amount>> <span class="brothel-btn success"><<button _btnText "BrothelWorker_GiveMoneyConfirm">> <<set $giftAmount = _amount>> <</button>></span> <<else>> <<set _btnText = "Give $" + _amount + " (Not enough)">> <span class="brothel-btn disabled"><<button _btnText>><</button>></span> <</if>> <</capture>> <</for>> </div> <div class="brothel-btn-container padding-top"> <span class="brothel-btn neutral"><<button "✗ Cancel" "BrothelWorkerDetails">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _worker = $selectedBrothelWorker>> <<ShowNpcIcon _worker>> <<set _workerName = _worker.info.firstName>> <<set _amount = $giftAmount>> <<set _personality = _worker.saveData.get("personality") || "default">> /* Deduct money */ <<set $player.money -= _amount>> /* Calculate affection gain based on amount */ <<set _affectionGain = Math.floor(_amount / 100) + 1>> <<set _affection = _worker.saveData.get("affection") || 3>> <<set _newAffection = Math.min(10, _affection + _affectionGain)>> <<run _worker.saveData.set("affection", _newAffection)>> /* Personality-based response */ <<switch _personality>> <<case "shy">> <<set _response = [ "*eyes widen* F-for me? *blushes* Thank you so much...!", "*takes money with trembling hands* Y-you're so kind to me...", "*tears up slightly* I... I don't know what to say... Thank you!" ].random()>> <<case "confident">> <<set _response = [ "*nods approvingly* Generous. I appreciate that you value my work.", "Thank you. It's nice to see a boss who takes care of their people.", "*smiles* A thoughtful gesture. You have my respect." ].random()>> <<case "flirty">> <<set _response = [ "*squeals* Oh my god, thank you! *hugs you* You're the best boss ever!", "*giggles* Aww, for me? You're so sweet! *kisses your cheek*", "*bounces excitedly* This is amazing! Let me thank you properly later..." ].random()>> <<case "submissive">> <<set _response = [ "*kneels gratefully* Thank you, master. You are too generous...", "*head bowed* I am unworthy of such kindness... Thank you, sir.", "*devotedly* Your generosity moves me, master. I am forever yours." ].random()>> <<case "desperate">> <<set _response = [ "*bursts into tears* Oh thank you! Thank you so much! This means everything!", "*clutches money tightly* You... you're saving me... Thank you!", "*sobbing with gratitude* I can't believe you'd do this for me...!" ].random()>> <<case "arrogant">> <<set _response = [ "*takes money* Hmph. About time you showed some appreciation.", "*inspects the money* Well, at least you know quality deserves rewards.", "*slight smile* Finally recognizing my worth. Keep this up." ].random()>> <<case "cynical">> <<set _response = [ "*surprised* Huh. That's... actually really nice. Thanks.", "*small smile* Well, didn't expect that. Maybe you're alright after all.", "*takes money* No strings attached? ...Thanks. Seriously." ].random()>> <<default>> <<set _response = "Thank you so much! This is very generous of you.">> <</switch>> <<Chat _worker _response>> <<set _msg = "You gave $" + _amount + " to " + _workerName + ". (Affection +" + _affectionGain + ")">> <<ChatMessage _msg>> <<unset $giftAmount>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Continue" "BrothelWorkerDetails">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _worker = $selectedBrothelWorker>> <<ShowNpcIcon _worker>> <<set _workerName = _worker.info.firstName>> <<set _workerId = _worker.info.id>> <<set _personality = _worker.saveData.get("personality") || "default">> <<set _affection = _worker.saveData.get("affection") || 3>> /* Mark that player talked to this worker today */ <<if ndef $dailyEvents>><<set $dailyEvents = {}>><</if>> <<set _talkEventKey = "brothelTalk_" + _workerId>> <<set $dailyEvents[_talkEventKey] = true>> <<set _msg = "You spend some time talking with " + _workerName + "...">> <<ChatMessage _msg>> <<SpendTimeWithoutUpdate 15>> /* Personality-based conversation */ <<switch _personality>> <<case "shy">> <<set _response = [ "*fidgets nervously* I... I like working here. You've been kind to me...", "*speaks softly* Thank you for talking to me. Most people just... want other things.", "*small smile* It's nice that you want to talk. Not many bosses do that." ].random()>> <<case "confident">> <<set _response = [ "Good to see a boss who connects with their workers. I respect that.", "This place has potential. Keep running it well and we'll all prosper.", "I appreciate you taking the time. It shows good management." ].random()>> <<case "flirty">> <<set _response = [ "*giggles* I love our little chats! You're so fun to talk to!", "*playfully* Are you sure you just want to talk? *winks*", "*smiles warmly* You know, you're actually really nice when you're not being all bossy." ].random()>> <<case "submissive">> <<set _response = [ "*gratefully* Thank you for speaking with me, master. I am honored.", "*head slightly bowed* Your attention means so much to me...", "*devotedly* I cherish these moments with you, sir." ].random()>> <<case "desperate">> <<set _response = [ "*emotional* You actually want to hear about me? That's so kind...", "*sniffles* Nobody's cared to talk to me in so long... Thank you.", "*grateful* This means more than you know. Thank you for caring." ].random()>> <<case "arrogant">> <<set _response = [ "*shrugs* I suppose it's acceptable that you want to converse with me.", "*inspects nails* Fine, I'll grace you with my conversation.", "*slight smile* At least you recognize I'm worth talking to." ].random()>> <<case "cynical">> <<set _response = [ "*slightly surprised* You actually want to talk? Huh. That's different.", "*opens up slightly* Alright. I guess you're not so bad after all.", "*small smile* You know, you're more human than most bosses I've had." ].random()>> <<default>> <<set _response = "Thanks for talking to me. It's nice to have a normal conversation sometimes.">> <</switch>> <<Chat _worker _response>> /* Small chance to increase affection */ <<if Random(1, 100) <= 40>> <<set _newAffection = Math.min(10, _affection + 1)>> <<run _worker.saveData.set("affection", _newAffection)>> <<set _msg = _workerName + " seems to appreciate the conversation. (Affection +1)">> <<ChatMessage _msg>> <</if>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Continue" "BrothelWorkerDetails">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _worker = $selectedBrothelWorker>> <<set _workerName = _worker.info.firstName>> <<ShowNpcIcon _worker>> <div class="centre-text" style="font-size: 20px; color: #e91e63;">💋 <<print _workerName>>'s Skills & Limits</div> /* Check for Candidate Insight perk */ <<if !$playerBrothel.perks || !$playerBrothel.perks.seeStats>> <fieldset style="background: rgba(0,0,0,0.4); border: 2px solid #ff9800; margin: 15px 0;"> <legend style="color: #ff9800;">🔒 Locked</legend> <div style="text-align: center; padding: 30px;"> <div style="font-size: 48px; margin-bottom: 15px;">🔒</div> <p style="color: #ff9800; font-size: 16px; font-weight: bold;">Candidate Insight Required</p> <p style="color: #aaa; font-size: 13px; margin-top: 10px;"> Learn the "Candidate Insight" skill from the Skills menu to view worker statistics, skills, and limits. </p> <p style="color: #666; font-size: 11px; margin-top: 15px;"> 🎯 Skills → Management → Candidate Insight (1 skill point) </p> </div> </fieldset> <div class="brothel-btn-container padding-top"> <span class="brothel-btn neutral"><<button "← Back" "BrothelWorkerDetails">><</button>></span> </div> <<else>> /* Sex Skills */ <<set _oralSkill = _worker.saveData.get("oralSkill") || 0>> <<set _analSkill = _worker.saveData.get("analSkill") || 0>> <<set _vagSkill = _worker.saveData.get("vaginalSkill") || 0>> <<set _hasSkills = _oralSkill > 0 || _analSkill > 0 || _vagSkill > 0>> <<if _hasSkills>> <<set _oralBarStyle = "background: linear-gradient(90deg, #2196f3, #64b5f6); width: " + _oralSkill + "%; height: 100%; border-radius: 4px;">> <<set _analBarStyle = "background: linear-gradient(90deg, #9c27b0, #ce93d8); width: " + _analSkill + "%; height: 100%; border-radius: 4px;">> <<set _vagBarStyle = "background: linear-gradient(90deg, #e91e63, #f48fb1); width: " + _vagSkill + "%; height: 100%; border-radius: 4px;">> <fieldset style="background: linear-gradient(135deg, rgba(233, 30, 99, 0.15) 0%, rgba(33, 33, 33, 0.95) 100%); border: 2px solid #e91e63; margin: 15px 0;"> <legend style="color: #f48fb1; font-size: 16px;">💋 Sex Skills</legend> <div style="display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 15px; padding: 10px;"> /* Oral */ <div style="background: rgba(0,0,0,0.4); padding: 15px; border-radius: 10px; text-align: center;"> <div style="color: #64b5f6; font-size: 24px; margin-bottom: 5px;">👅</div> <div style="color: #fff; font-size: 14px; font-weight: bold; margin-bottom: 10px;">Oral</div> <div style="background: rgba(255,255,255,0.1); height: 10px; border-radius: 5px; overflow: hidden; margin-bottom: 8px;"> <div @style="_oralBarStyle"></div> </div> <div style="color: #64b5f6; font-size: 18px; font-weight: bold;"><<print _oralSkill>>%</div> </div> /* Vaginal */ <<if _vagSkill > 0>> <div style="background: rgba(0,0,0,0.4); padding: 15px; border-radius: 10px; text-align: center;"> <div style="color: #f48fb1; font-size: 24px; margin-bottom: 5px;">🌸</div> <div style="color: #fff; font-size: 14px; font-weight: bold; margin-bottom: 10px;">Vaginal</div> <div style="background: rgba(255,255,255,0.1); height: 10px; border-radius: 5px; overflow: hidden; margin-bottom: 8px;"> <div @style="_vagBarStyle"></div> </div> <div style="color: #f48fb1; font-size: 18px; font-weight: bold;"><<print _vagSkill>>%</div> </div> <<else>> <div style="background: rgba(0,0,0,0.2); padding: 15px; border-radius: 10px; text-align: center; opacity: 0.5;"> <div style="color: #666; font-size: 24px; margin-bottom: 5px;">🌸</div> <div style="color: #666; font-size: 14px; font-weight: bold; margin-bottom: 10px;">Vaginal</div> <div style="color: #666; font-size: 18px;">N/A</div> </div> <</if>> /* Anal */ <div style="background: rgba(0,0,0,0.4); padding: 15px; border-radius: 10px; text-align: center;"> <div style="color: #ce93d8; font-size: 24px; margin-bottom: 5px;">🍑</div> <div style="color: #fff; font-size: 14px; font-weight: bold; margin-bottom: 10px;">Anal</div> <div style="background: rgba(255,255,255,0.1); height: 10px; border-radius: 5px; overflow: hidden; margin-bottom: 8px;"> <div @style="_analBarStyle"></div> </div> <div style="color: #ce93d8; font-size: 18px; font-weight: bold;"><<print _analSkill>>%</div> </div> </div> /* Income bonus */ <<set _avgSkill = Math.floor((_oralSkill + _analSkill + (_vagSkill || 0)) / (_vagSkill > 0 ? 3 : 2))>> <div style="margin: 10px; padding: 12px; background: rgba(255,215,0,0.15); border-radius: 10px; border: 1px solid rgba(255,215,0,0.4);"> <div style="display: flex; justify-content: space-between; align-items: center;"> <span style="color: #ffd700; font-size: 14px;">💰 Daily Income Bonus from Skills:</span> <span style="color: #ffd700; font-size: 18px; font-weight: bold;">+$<<print Math.floor(_avgSkill / 5)>></span> </div> </div> </fieldset> <<else>> <fieldset style="background: rgba(0,0,0,0.3); border: 1px solid #666; margin: 15px 0;"> <legend style="color: #888;">💋 Sex Skills</legend> <div style="text-align: center; padding: 20px; color: #666;"> <p>No skill data available for this worker.</p> <p style="font-size: 11px;">(Workers hired before the skill system was implemented don't have recorded skills)</p> </div> </fieldset> <</if>> /* Service Limits */ <<set _workerLimits = _worker.saveData.get("limits")>> <<set _hasVagina = _worker.body.vaginaSize.value > 0>> <<if _workerLimits>> <fieldset style="background: linear-gradient(135deg, rgba(156, 39, 176, 0.15) 0%, rgba(33, 33, 33, 0.95) 100%); border: 2px solid #9c27b0; margin: 15px 0;"> <legend style="color: #ce93d8; font-size: 16px;">🚫 Service Limits</legend> <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 10px; padding: 10px;"> /* Oral */ <div style="background: rgba(0,0,0,0.3); padding: 12px; border-radius: 8px; border-left: 4px solid <<if _workerLimits.oral && _workerLimits.oral.status == 'yes'>>#4caf50<<elseif _workerLimits.oral && _workerLimits.oral.status == 'reluctant'>>#ff9800<<else>>#f44336<</if>>;"> <div style="display: flex; justify-content: space-between; align-items: center;"> <span style="color: #fff; font-size: 14px;">👅 Oral</span> <<if _workerLimits.oral>> <<if _workerLimits.oral.status == "yes">> <span style="color: #4caf50; font-size: 14px; font-weight: bold;">✓ Yes</span> <<elseif _workerLimits.oral.status == "reluctant">> <span style="color: #ff9800; font-size: 14px; font-weight: bold;">~ Reluctant</span> <<else>> <span style="color: #f44336; font-size: 14px; font-weight: bold;">✗ No</span> <</if>> <</if>> </div> <<if _workerLimits.oral && _workerLimits.oral.reason>> <div style="color: #888; font-size: 11px; margin-top: 5px;">(<<print _workerLimits.oral.reason>>)</div> <</if>> </div> /* Vaginal */ <div style="background: rgba(0,0,0,0.3); padding: 12px; border-radius: 8px; border-left: 4px solid <<if !_hasVagina>>#666<<elseif _workerLimits.vaginal && _workerLimits.vaginal.status == 'yes'>>#4caf50<<elseif _workerLimits.vaginal && _workerLimits.vaginal.status == 'maybe'>>#ff9800<<else>>#f44336<</if>>;"> <div style="display: flex; justify-content: space-between; align-items: center;"> <span style="color: #fff; font-size: 14px;">🌸 Vaginal</span> <<if !_hasVagina>> <span style="color: #666; font-size: 14px;">— N/A</span> <<elseif _workerLimits.vaginal>> <<if _workerLimits.vaginal.status == "yes">> <span style="color: #4caf50; font-size: 14px; font-weight: bold;">✓ Yes</span> <<elseif _workerLimits.vaginal.status == "maybe">> <span style="color: #ff9800; font-size: 14px; font-weight: bold;">~ Maybe</span> <<else>> <span style="color: #f44336; font-size: 14px; font-weight: bold;">✗ No</span> <</if>> <</if>> </div> <<if _hasVagina && _workerLimits.vaginal && _workerLimits.vaginal.reason>> <div style="color: #888; font-size: 11px; margin-top: 5px;">(<<print _workerLimits.vaginal.reason>>)</div> <</if>> </div> /* Anal */ <div style="background: rgba(0,0,0,0.3); padding: 12px; border-radius: 8px; border-left: 4px solid <<if _workerLimits.anal && _workerLimits.anal.status == 'yes'>>#4caf50<<elseif _workerLimits.anal && _workerLimits.anal.status == 'maybe'>>#ff9800<<else>>#f44336<</if>>;"> <div style="display: flex; justify-content: space-between; align-items: center;"> <span style="color: #fff; font-size: 14px;">🍑 Anal</span> <<if _workerLimits.anal>> <<if _workerLimits.anal.status == "yes">> <span style="color: #4caf50; font-size: 14px; font-weight: bold;">✓ Yes</span> <<elseif _workerLimits.anal.status == "maybe">> <span style="color: #ff9800; font-size: 14px; font-weight: bold;">~ Maybe</span> <<else>> <span style="color: #f44336; font-size: 14px; font-weight: bold;">✗ No</span> <</if>> <</if>> </div> <<if _workerLimits.anal && _workerLimits.anal.reason>> <div style="color: #888; font-size: 11px; margin-top: 5px;">(<<print _workerLimits.anal.reason>>)</div> <</if>> </div> /* Creampie */ <div style="background: rgba(0,0,0,0.3); padding: 12px; border-radius: 8px; border-left: 4px solid <<if _workerLimits.creampie && _workerLimits.creampie.status == 'yes'>>#4caf50<<elseif _workerLimits.creampie && _workerLimits.creampie.status == 'maybe'>>#ff9800<<else>>#f44336<</if>>;"> <div style="display: flex; justify-content: space-between; align-items: center;"> <span style="color: #fff; font-size: 14px;">💦 Cum Inside</span> <<if _workerLimits.creampie>> <<if _workerLimits.creampie.status == "yes">> <span style="color: #4caf50; font-size: 14px; font-weight: bold;">✓ Yes</span> <<elseif _workerLimits.creampie.status == "maybe">> <span style="color: #ff9800; font-size: 14px; font-weight: bold;">~ Maybe</span> <<else>> <span style="color: #f44336; font-size: 14px; font-weight: bold;">✗ No</span> <</if>> <</if>> </div> <<if _workerLimits.creampie && _workerLimits.creampie.reason>> <div style="color: #888; font-size: 11px; margin-top: 5px;">(<<print _workerLimits.creampie.reason>>)</div> <</if>> </div> /* Anilingus */ <div style="background: rgba(0,0,0,0.3); padding: 12px; border-radius: 8px; border-left: 4px solid <<if _workerLimits.anilingus && _workerLimits.anilingus.status == 'yes'>>#4caf50<<elseif _workerLimits.anilingus && _workerLimits.anilingus.status == 'maybe'>>#ff9800<<else>>#f44336<</if>>;"> <div style="display: flex; justify-content: space-between; align-items: center;"> <span style="color: #fff; font-size: 14px;">👅🍑 Anilingus</span> <<if _workerLimits.anilingus>> <<if _workerLimits.anilingus.status == "yes">> <span style="color: #4caf50; font-size: 14px; font-weight: bold;">✓ Yes</span> <<elseif _workerLimits.anilingus.status == "maybe">> <span style="color: #ff9800; font-size: 14px; font-weight: bold;">~ Maybe</span> <<else>> <span style="color: #f44336; font-size: 14px; font-weight: bold;">✗ No</span> <</if>> <</if>> </div> <<if _workerLimits.anilingus && _workerLimits.anilingus.reason>> <div style="color: #888; font-size: 11px; margin-top: 5px;">(<<print _workerLimits.anilingus.reason>>)</div> <</if>> </div> /* Cunnilingus */ <div style="background: rgba(0,0,0,0.3); padding: 12px; border-radius: 8px; border-left: 4px solid <<if !_hasVagina>>#666<<elseif _workerLimits.cunnilingus && _workerLimits.cunnilingus.status == 'yes'>>#4caf50<<elseif _workerLimits.cunnilingus && _workerLimits.cunnilingus.status == 'maybe'>>#ff9800<<else>>#f44336<</if>>;"> <div style="display: flex; justify-content: space-between; align-items: center;"> <span style="color: #fff; font-size: 14px;">👅🌸 Cunnilingus</span> <<if !_hasVagina>> <span style="color: #666; font-size: 14px;">— N/A</span> <<elseif _workerLimits.cunnilingus>> <<if _workerLimits.cunnilingus.status == "yes">> <span style="color: #4caf50; font-size: 14px; font-weight: bold;">✓ Yes</span> <<elseif _workerLimits.cunnilingus.status == "maybe">> <span style="color: #ff9800; font-size: 14px; font-weight: bold;">~ Maybe</span> <<else>> <span style="color: #f44336; font-size: 14px; font-weight: bold;">✗ No</span> <</if>> <</if>> </div> <<if _hasVagina && _workerLimits.cunnilingus && _workerLimits.cunnilingus.reason>> <div style="color: #888; font-size: 11px; margin-top: 5px;">(<<print _workerLimits.cunnilingus.reason>>)</div> <</if>> </div> /* Golden Shower - full width */ <div style="background: rgba(0,0,0,0.3); padding: 12px; border-radius: 8px; border-left: 4px solid <<if _workerLimits.goldenShower && _workerLimits.goldenShower.status == 'yes'>>#4caf50<<elseif _workerLimits.goldenShower && _workerLimits.goldenShower.status == 'maybe'>>#ff9800<<else>>#f44336<</if>>; grid-column: span 2;"> <div style="display: flex; justify-content: space-between; align-items: center;"> <span style="color: #fff; font-size: 14px;">🚿 Golden Shower</span> <<if _workerLimits.goldenShower>> <<if _workerLimits.goldenShower.status == "yes">> <span style="color: #4caf50; font-size: 14px; font-weight: bold;">✓ Yes</span> <<elseif _workerLimits.goldenShower.status == "maybe">> <span style="color: #ff9800; font-size: 14px; font-weight: bold;">~ Maybe</span> <<else>> <span style="color: #f44336; font-size: 14px; font-weight: bold;">✗ No</span> <</if>> <</if>> </div> <<if _workerLimits.goldenShower && _workerLimits.goldenShower.reason>> <div style="color: #888; font-size: 11px; margin-top: 5px;">(<<print _workerLimits.goldenShower.reason>>)</div> <</if>> </div> </div> /* Income impact */ <<set _permissiveCount = 0>> <<if _workerLimits.anal && _workerLimits.anal.status == "yes">><<set _permissiveCount++>><</if>> <<if _workerLimits.creampie && _workerLimits.creampie.status == "yes">><<set _permissiveCount++>><</if>> <<if _workerLimits.goldenShower && _workerLimits.goldenShower.status == "yes">><<set _permissiveCount++>><</if>> <<if _workerLimits.anilingus && _workerLimits.anilingus.status == "yes">><<set _permissiveCount++>><</if>> <div style="margin: 10px; padding: 12px; background: rgba(255,215,0,0.15); border-radius: 10px; border: 1px solid rgba(255,215,0,0.4);"> <div style="display: flex; justify-content: space-between; align-items: center;"> <span style="color: #ffd700; font-size: 14px;">💰 Income Impact:</span> <<if _permissiveCount >= 3>> <span style="color: #4caf50; font-size: 14px; font-weight: bold;">+++ Very High</span> <<elseif _permissiveCount >= 2>> <span style="color: #8bc34a; font-size: 14px; font-weight: bold;">++ High</span> <<elseif _permissiveCount >= 1>> <span style="color: #ff9800; font-size: 14px; font-weight: bold;">+ Moderate</span> <<else>> <span style="color: #f44336; font-size: 14px; font-weight: bold;">Low</span> <</if>> </div> </div> </fieldset> <<else>> <fieldset style="background: rgba(0,0,0,0.3); border: 1px solid #666; margin: 15px 0;"> <legend style="color: #888;">🚫 Service Limits</legend> <div style="text-align: center; padding: 20px; color: #666;"> <p>No limit data available for this worker.</p> <p style="font-size: 11px;">(Workers hired before the limit system was implemented don't have recorded limits)</p> </div> </fieldset> <</if>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn neutral"><<button "← Back" "BrothelWorkerDetails">><</button>></span> </div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _worker = $selectedBrothelWorker>> <<set _workerName = _worker.info.firstName>> <<set _workerGender = _worker.gender()>> <div class="centre-text" style="font-size: 20px; color: #e91e63;">👀 <<print _workerName>>'s Body</div> <<ChatMessage "You take a closer look at your worker's body...">> <fieldset style="background: linear-gradient(135deg, rgba(233, 30, 99, 0.15) 0%, rgba(33, 33, 33, 0.95) 100%); border: 1px solid #e91e63; margin: 15px 0;"> <legend style="color: #f48fb1;">Body Photos</legend> <div style="display: grid; grid-template-columns: repeat(3, 1fr); gap: 15px; padding: 15px; text-align: center;"> /* Breasts */ <div style="background: rgba(0,0,0,0.3); border-radius: 10px; padding: 15px;"> <div style="color: #fff; font-size: 14px; margin-bottom: 10px;">🍈 Breasts</div> <div style="color: #aaa; font-size: 12px; margin-bottom: 10px;"><<print _worker.getBreastText()>></div> <span class="brothel-btn primary small"><<button "View">> <<script>> Dialog.setup(SugarCube.State.variables.selectedBrothelWorker.getBreastText()); Dialog.wiki(SugarCube.State.variables.selectedBrothelWorker.getBreastImage()); Dialog.open(); <</script>> <</button>></span> </div> /* Butt */ <div style="background: rgba(0,0,0,0.3); border-radius: 10px; padding: 15px;"> <div style="color: #fff; font-size: 14px; margin-bottom: 10px;">🍑 Butt</div> <div style="color: #aaa; font-size: 12px; margin-bottom: 10px;"><<print _worker.getButtText()>></div> <span class="brothel-btn secondary small"><<button "View">> <<script>> Dialog.setup(SugarCube.State.variables.selectedBrothelWorker.getButtText()); Dialog.wiki(SugarCube.State.variables.selectedBrothelWorker.getAssImage()); Dialog.open(); <</script>> <</button>></span> </div> /* Genitals */ <div style="background: rgba(0,0,0,0.3); border-radius: 10px; padding: 15px;"> <div style="color: #fff; font-size: 14px; margin-bottom: 10px;">🔞 Genitals</div> <<if _workerGender == "Female">> <div style="color: #aaa; font-size: 12px; margin-bottom: 10px;">Vagina</div> <span class="brothel-btn secondary small"><<button "View">> <<script>> var worker = SugarCube.State.variables.selectedBrothelWorker; Dialog.setup("Vagina"); var skin = worker.info.skin; var skinCapitalized = skin.charAt(0).toUpperCase() + skin.slice(1); var img = '<img class="chat-image" style="width: 400px; height: 300px;" src="Media/Characters/' + skinCapitalized + '/Vag/0.jpg" alt="Vagina">'; Dialog.wiki(img); Dialog.open(); <</script>> <</button>></span> <<elseif _workerGender == "Male">> <div style="color: #aaa; font-size: 12px; margin-bottom: 10px;">Penis</div> <span class="brothel-btn disabled small" title="Photos of male genitals are not available"><<button "View (N/A)">><</button>></span> <<else>> <div style="color: #aaa; font-size: 12px; margin-bottom: 10px;">Penis (Shemale)</div> <span class="brothel-btn disabled small" title="Photos of male genitals are not available"><<button "View (N/A)">><</button>></span> <</if>> </div> </div> </fieldset> /* Body stats */ <fieldset style="background: rgba(0,0,0,0.3); border: 1px solid #888; margin: 10px 0;"> <legend style="color: #aaa;">Body Stats</legend> <div style="display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; padding: 10px;"> <div style="font-size: 12px; color: #aaa;">🍈 Breast Size: <span style="color: #fff;"><<print _worker.body.breastSize.value>>/5</span></div> <div style="font-size: 12px; color: #aaa;">🍑 Butt Size: <span style="color: #fff;"><<print _worker.body.buttSize.value>>/5</span></div> <<if _workerGender == "Female">> <div style="font-size: 12px; color: #aaa;">💕 Vagina Size: <span style="color: #fff;"><<print _worker.body.vaginaSize.value>></span></div> <<else>> <div style="font-size: 12px; color: #aaa;">🍆 Penis Size: <span style="color: #fff;"><<print _worker.body.penisSize.value>></span></div> <</if>> <div style="font-size: 12px; color: #aaa;">🍩 Anus Size: <span style="color: #fff;"><<print _worker.body.anusSize.value>></span></div> </div> </fieldset> <div class="brothel-btn-container padding-top"> <span class="brothel-btn neutral"><<button "← Back" "BrothelWorkerDetails">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _worker = $selectedBrothelWorker>> <<ShowNpcIcon _worker>> <<set _workerName = _worker.info.firstName>> <<set _currentSize = Math.floor(_worker.body.breastSize.value)>> <<set _maxSize = 5>> <div class="centre-text" style="font-size: 20px; color: #e91e63;">🍈 Breast Enhancement</div> <<set _msg = "You consider surgical breast enhancement for " + _workerName + "...">> <<ChatMessage _msg>> <fieldset style="background: linear-gradient(135deg, rgba(233, 30, 99, 0.15) 0%, rgba(33, 33, 33, 0.95) 100%); border: 1px solid #e91e63; margin: 15px 0;"> <legend style="color: #f48fb1;">Current Status</legend> <div style="text-align: center; padding: 15px;"> <div style="color: #fff; font-size: 16px; margin-bottom: 10px;">Current Breast Size: <span style="color: #e91e63; font-weight: bold;"><<print _currentSize>>/<<print _maxSize>></span></div> <div style="color: #aaa; font-size: 12px;"><<print _worker.getBreastText()>></div> </div> </fieldset> <<if _currentSize >= _maxSize>> <<ChatMessage "This worker's breasts are already at maximum size. No further enhancement is possible.">> <div class="brothel-btn-container padding-top"> <span class="brothel-btn neutral"><<button "← Back" "BrothelWorkerDetails">><</button>></span> </div> <<else>> /* Surgery costs increase with each level, reduced by Medical Connections perk */ <<set _baseCost = 200>> <<set _fullCost = _baseCost * (_currentSize + 1)>> <<set _hasSurgeryDiscount = $playerBrothel.perks && $playerBrothel.perks.surgeryDiscount>> <<set _surgeryCost = _hasSurgeryDiscount ? Math.floor(_fullCost * 0.5) : _fullCost>> <fieldset class="brothel-fieldset"> <legend>💉 Enhancement Options</legend> <p style="color: #aaa; font-size: 12px;">Each surgery increases breast size by 1 level.</p> <<if _hasSurgeryDiscount>> <p style="color: #fff; font-size: 14px;">Cost: <span style="color: #4CAF50;">$<<print _surgeryCost>></span> <span style="color: #888; text-decoration: line-through;">$<<print _fullCost>></span> <span style="color: #ffd700; font-size: 11px;">(Medical Connections)</span></p> <<else>> <p style="color: #fff; font-size: 14px;">Cost: <span style="color: #4CAF50;">$<<print _surgeryCost>></span></p> <</if>> <p style="color: #aaa; font-size: 11px;">Next size: <<print _currentSize + 1>>/<<print _maxSize>></p> <div class="brothel-btn-container" style="margin-top: 15px;"> <<if $player.money >= _surgeryCost>> <<set _confirmBtnText = "💉 Perform Surgery ($" + _surgeryCost + ")">> <span class="brothel-btn success"><<button _confirmBtnText "BrothelWorker_Surgery_Breasts_Confirm">> <<set $surgeryCost = _surgeryCost>> <</button>></span> <<else>> <<set _noMoneyText = "Not enough money ($" + _surgeryCost + ")">> <span class="brothel-btn disabled"><<button _noMoneyText>><</button>></span> <</if>> <span class="brothel-btn neutral"><<button "← Back" "BrothelWorkerDetails">><</button>></span> </div> </fieldset> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _worker = $selectedBrothelWorker>> <<ShowNpcIcon _worker>> <<set _workerName = _worker.info.firstName>> <<set _cost = $surgeryCost>> /* Deduct money */ <<set $player.money -= _cost>> /* Increase breast size */ <<set _oldSize = Math.floor(_worker.body.breastSize.value)>> <<run _worker.body.breastSize.increase(1)>> <<set _newSize = Math.floor(_worker.body.breastSize.value)>> /* Spend time */ <<SpendTimeWithoutUpdate 60>> <div class="centre-text" style="font-size: 20px; color: #4CAF50;">✓ Surgery Complete!</div> <<set _msg = _workerName + "'s breast enhancement surgery was successful!">> <<ChatMessage _msg>> <fieldset style="background: linear-gradient(135deg, rgba(76, 175, 80, 0.15) 0%, rgba(33, 33, 33, 0.95) 100%); border: 1px solid #4CAF50; margin: 15px 0;"> <legend style="color: #81c784;">Results</legend> <div style="text-align: center; padding: 15px;"> <div style="color: #aaa; font-size: 14px;">Breast Size:</div> <div style="color: #fff; font-size: 18px; margin: 10px 0;"> <span style="color: #888;"><<print _oldSize>></span> <span style="color: #4CAF50;">→</span> <span style="color: #e91e63; font-weight: bold;"><<print _newSize>></span> </div> <div style="color: #aaa; font-size: 12px;"><<print _worker.getBreastText()>></div> <div style="color: #ff9800; font-size: 12px; margin-top: 10px;">-$<<print _cost>></div> </div> </fieldset> <<unset $surgeryCost>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Continue" "BrothelWorkerDetails">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _worker = $selectedBrothelWorker>> <<ShowNpcIcon _worker>> <<set _workerName = _worker.info.firstName>> <<set _currentSize = Math.floor(_worker.body.buttSize.value)>> <<set _maxSize = 5>> <div class="centre-text" style="font-size: 20px; color: #e91e63;">🍑 Butt Enhancement</div> <<set _msg = "You consider surgical butt enhancement for " + _workerName + "...">> <<ChatMessage _msg>> <fieldset style="background: linear-gradient(135deg, rgba(233, 30, 99, 0.15) 0%, rgba(33, 33, 33, 0.95) 100%); border: 1px solid #e91e63; margin: 15px 0;"> <legend style="color: #f48fb1;">Current Status</legend> <div style="text-align: center; padding: 15px;"> <div style="color: #fff; font-size: 16px; margin-bottom: 10px;">Current Butt Size: <span style="color: #e91e63; font-weight: bold;"><<print _currentSize>>/<<print _maxSize>></span></div> <div style="color: #aaa; font-size: 12px;"><<print _worker.getButtText()>></div> </div> </fieldset> <<if _currentSize >= _maxSize>> <<ChatMessage "This worker's butt is already at maximum size. No further enhancement is possible.">> <div class="brothel-btn-container padding-top"> <span class="brothel-btn neutral"><<button "← Back" "BrothelWorkerDetails">><</button>></span> </div> <<else>> /* Surgery costs increase with each level, reduced by Medical Connections perk */ <<set _baseCost = 200>> <<set _fullCost = _baseCost * (_currentSize + 1)>> <<set _hasSurgeryDiscount = $playerBrothel.perks && $playerBrothel.perks.surgeryDiscount>> <<set _surgeryCost = _hasSurgeryDiscount ? Math.floor(_fullCost * 0.5) : _fullCost>> <fieldset class="brothel-fieldset"> <legend>💉 Enhancement Options</legend> <p style="color: #aaa; font-size: 12px;">Each surgery increases butt size by 1 level.</p> <<if _hasSurgeryDiscount>> <p style="color: #fff; font-size: 14px;">Cost: <span style="color: #4CAF50;">$<<print _surgeryCost>></span> <span style="color: #888; text-decoration: line-through;">$<<print _fullCost>></span> <span style="color: #ffd700; font-size: 11px;">(Medical Connections)</span></p> <<else>> <p style="color: #fff; font-size: 14px;">Cost: <span style="color: #4CAF50;">$<<print _surgeryCost>></span></p> <</if>> <p style="color: #aaa; font-size: 11px;">Next size: <<print _currentSize + 1>>/<<print _maxSize>></p> <div class="brothel-btn-container" style="margin-top: 15px;"> <<if $player.money >= _surgeryCost>> <<set _confirmBtnText = "💉 Perform Surgery ($" + _surgeryCost + ")">> <span class="brothel-btn success"><<button _confirmBtnText "BrothelWorker_Surgery_Butt_Confirm">> <<set $surgeryCost = _surgeryCost>> <</button>></span> <<else>> <<set _noMoneyText = "Not enough money ($" + _surgeryCost + ")">> <span class="brothel-btn disabled"><<button _noMoneyText>><</button>></span> <</if>> <span class="brothel-btn neutral"><<button "← Back" "BrothelWorkerDetails">><</button>></span> </div> </fieldset> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _worker = $selectedBrothelWorker>> <<ShowNpcIcon _worker>> <<set _workerName = _worker.info.firstName>> <<set _cost = $surgeryCost>> /* Deduct money */ <<set $player.money -= _cost>> /* Increase butt size */ <<set _oldSize = Math.floor(_worker.body.buttSize.value)>> <<run _worker.body.buttSize.increase(1)>> <<set _newSize = Math.floor(_worker.body.buttSize.value)>> /* Spend time */ <<SpendTimeWithoutUpdate 60>> <div class="centre-text" style="font-size: 20px; color: #4CAF50;">✓ Surgery Complete!</div> <<set _msg = _workerName + "'s butt enhancement surgery was successful!">> <<ChatMessage _msg>> <fieldset style="background: linear-gradient(135deg, rgba(76, 175, 80, 0.15) 0%, rgba(33, 33, 33, 0.95) 100%); border: 1px solid #4CAF50; margin: 15px 0;"> <legend style="color: #81c784;">Results</legend> <div style="text-align: center; padding: 15px;"> <div style="color: #aaa; font-size: 14px;">Butt Size:</div> <div style="color: #fff; font-size: 18px; margin: 10px 0;"> <span style="color: #888;"><<print _oldSize>></span> <span style="color: #4CAF50;">→</span> <span style="color: #e91e63; font-weight: bold;"><<print _newSize>></span> </div> <div style="color: #aaa; font-size: 12px;"><<print _worker.getButtText()>></div> <div style="color: #ff9800; font-size: 12px; margin-top: 10px;">-$<<print _cost>></div> </div> </fieldset> <<unset $surgeryCost>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Continue" "BrothelWorkerDetails">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _worker = $selectedBrothelWorker>> <<ShowNpcIcon _worker>> <<set _workerName = _worker.info.firstName>> <<set _corruption = _worker.attributes.corruption.value>> <<set _submission = _worker.saveData.get("submission") || 3>> <<set _affection = _worker.saveData.get("affection") || 3>> <<set _fear = _worker.saveData.get("fear") || 1>> <<set _personality = _worker.saveData.get("personality") || "default">> /* Calculate acceptance chance - higher for employed workers who trust you */ <<set _acceptChance = (_corruption * 4) + (_submission * 8) + (_affection * 5) + (_fear * 3)>> /* Max 85% chance for hired workers */ <<set _acceptChance = Math.min(85, _acceptChance)>> <<set _msg = "You approach " + _workerName + " about undergoing a feminization procedure. You explain that it could make them more valuable and desirable to clients...">> <<ChatMessage _msg>> <<set _roll = Random(1, 100)>> <<if _roll <= _acceptChance>> /* Accepted */ <<switch _personality>> <<case "shy">> <<set _acceptResponse = "*looks down, blushing* I... I've thought about it before... If you think it would help the business, and you... *quietly* I trust you.">> <<case "confident">> <<set _acceptResponse = "An upgrade, you say? I'm always willing to improve myself. If this is what the market demands, I'll adapt.">> <<case "flirty">> <<set _acceptResponse = "*giggles* Become even prettier? And maybe get to keep my fun parts? That sounds exciting, boss~">> <<case "desperate">> <<set _acceptResponse = "If it means you'll keep me around and I'll earn more, yes! I'll do whatever you want!">> <<case "arrogant">> <<set _acceptResponse = "*sighs* If you believe this will make me more profitable, fine. I'll still be better than everyone else.">> <<case "submissive">> <<set _acceptResponse = "*kneeling* If my master wishes to reshape me, I will obey without question. My body is yours.">> <<case "cynical">> <<set _acceptResponse = "*considers* It's a big step... but I trust you at this point. If you think it's best for business, let's do it.">> <<default>> <<set _acceptResponse = "Alright... I've grown to trust you. If you think this is for the best, I'll do it.">> <</switch>> <<Chat _worker _acceptResponse>> <fieldset style="background: rgba(233, 30, 99, 0.15); border: 1px solid #e91e63; margin-top: 15px;"> <legend style="color: #f48fb1;">Choose Transformation Level</legend> <p style="color: #aaa; font-size: 12px;">Select the level of transformation for <<print _workerName>>:</p> <p style="color: #aaa; font-size: 11px;">💰 Your money: $<<print $player.money>></p> <div class="brothel-btn-container" style="flex-direction: column;"> <<if $player.money >= 500>> <span class="brothel-btn secondary" style="width: 100%;"><<button "🍆➡️🍑 Transform to Shemale ($500)">> <<set $feminizationLevel = "shemale">> <<goto "BrothelWorker_Feminization_Confirm">> <</button>></span> <<else>> <span class="brothel-btn disabled" style="width: 100%;"><<button "🍆➡️🍑 Transform to Shemale ($500) - Not enough money">><</button>></span> <</if>> <<if $player.money >= 1000>> <span class="brothel-btn primary" style="width: 100%;"><<button "🍆➡️💕 Transform to Female ($1000)">> <<set $feminizationLevel = "female">> <<goto "BrothelWorker_Feminization_Confirm">> <</button>></span> <<else>> <span class="brothel-btn disabled" style="width: 100%;"><<button "🍆➡️💕 Transform to Female ($1000) - Not enough money">><</button>></span> <</if>> <span class="brothel-btn neutral" style="width: 100%;"><<button "← Maybe later" "BrothelWorkerDetails">><</button>></span> </div> </fieldset> <<else>> /* Refused */ <<switch _personality>> <<case "shy">> <<set _refuseResponse = "*shakes head, eyes tearing up* I... I'm sorry, I can't... It's too scary for me... Please don't be angry...">> <<case "confident">> <<set _refuseResponse = "No. I'm happy with who I am. If my current form isn't enough for you, that's your problem.">> <<case "flirty">> <<set _refuseResponse = "*pouts* Aww, but I like my body the way it is! Can't we just... work with what I have?">> <<case "desperate">> <<set _refuseResponse = "*tears streaming* I want to please you so badly, but... I just can't do this... Please don't fire me...">> <<case "arrogant">> <<set _refuseResponse = "*coldly* Absolutely not. I'm perfect as I am. Find someone else to reshape.">> <<case "submissive">> <<set _refuseResponse = "*trembling* I... I want to obey you, master, but... my fear is too great... Forgive me...">> <<case "cynical">> <<set _refuseResponse = "That's a permanent change. Even for this job, I'm not willing to go that far.">> <<default>> <<set _refuseResponse = "I'm sorry, but I'm not willing to change myself that drastically.">> <</switch>> <<Chat _worker _refuseResponse>> <<ChatMessage "They refused. Higher submission, affection, or corruption might make them more open to the idea.">> /* Increment feminization attempt counter */ <<set _currentAttempts = _worker.saveData.get("feminizationAttempts") || 0>> <<run _worker.saveData.set("feminizationAttempts", _currentAttempts + 1)>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn neutral"><<button "← Back" "BrothelWorkerDetails">><</button>></span> </div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> /* Feminization costs */ <<set _shemaleCost = 500>> <<set _femaleCost = 1000>> <<if $feminizationLevel == "shemale">> <<set _cost = _shemaleCost>> <<else>> <<set _cost = _femaleCost>> <</if>> <<if $player.money < _cost>> <<ChatMessage "You don't have enough money for this procedure!">> <<set _costMsg = "Cost: $" + _cost + " | Your money: $" + $player.money>> <<ChatMessage _costMsg>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn neutral"><<button "← Back" "BrothelWorker_OfferFeminization">><</button>></span> </div> <<else>> /* Deduct cost */ <<set $player.money -= _cost>> <<ShowNpcIcon $selectedBrothelWorker>> <<set _workerName = $selectedBrothelWorker.info.firstName>> <<set _workerId = $selectedBrothelWorker.info.id>> <<set _personality = $selectedBrothelWorker.saveData.get("personality") || "default">> <<if $feminizationLevel == "shemale">> <<set _costMsg = "You pay $" + _shemaleCost + " for the shemale transformation procedure.">> <<ChatMessage _costMsg>> <<ChatMessage "You arrange for " + _workerName + " to undergo a shemale transformation - adding feminine features while keeping the penis.">> /* Apply transformation - femininity = breastSize + buttSize + face, need > 4 for Shemale */ <<set _newBreast = Random(2, 4)>> <<set _newButt = Random(2, 3)>> <<set _newFace = Random(5, 7)>> /* Find and update character in $Characters array directly */ <<for _i = 0; _i < $Characters.length; _i++>> <<if $Characters[_i].info.id == _workerId>> <<set $Characters[_i].info.originGender = "Trans">> <<set $Characters[_i].body.breastSize.value = _newBreast>> <<set $Characters[_i].body.buttSize.value = _newButt>> <<set $Characters[_i].body.face.value = _newFace>> <<set $Characters[_i].body.vaginaSize.value = 0>> <<run $Characters[_i].saveData.set("feminized", "shemale")>> <<run $Characters[_i].saveData.set("feminizedByPlayer", true)>> /* Update $selectedBrothelWorker reference */ <<set $selectedBrothelWorker = $Characters[_i]>> <<break>> <</if>> <</for>> <<SpendTimeWithoutUpdate 60>> <<switch _personality>> <<case "shy">> <<set _transformResponse = "*looks at new body in awe* Oh... oh my... I have breasts now... *touches them gently* This feels so strange but... nice?">> <<case "confident">> <<set _transformResponse = "*examines new figure* Impressive. These new assets will definitely attract more clients. Good call, boss.">> <<case "flirty">> <<set _transformResponse = "*bounces excitedly* Ooh! Look at these babies! *giggles* And I still have my other equipment! Best of both worlds!">> <<case "desperate">> <<set _transformResponse = "*grateful tears* Thank you! Thank you for investing in me! I'll work so hard for you now!">> <<case "arrogant">> <<set _transformResponse = "*admires reflection* Hmm. As expected, I make a beautiful shemale. Your clients are lucky.">> <<case "submissive">> <<set _transformResponse = "*kneeling* Thank you for reshaping me, master. I hope my new body pleases you...">> <<case "cynical">> <<set _transformResponse = "*sighs* Well, that's done. I suppose these look good... Could be worse.">> <<default>> <<set _transformResponse = "Wow... this is really different. I think I can get used to it though.">> <</switch>> <<else>> <<set _costMsg = "You pay $" + _femaleCost + " for the full female transformation procedure.">> <<ChatMessage _costMsg>> <<ChatMessage "You arrange for " + _workerName + " to undergo a complete female transformation.">> /* Apply full transformation - add vagina to make Female */ <<set _newBreast = Random(2, 5)>> <<set _newButt = Random(2, 4)>> <<set _newVagina = Random(15, 35)>> <<set _newFace = Random(5, 8)>> /* Find and update character in $Characters array directly */ <<for _i = 0; _i < $Characters.length; _i++>> <<if $Characters[_i].info.id == _workerId>> <<set $Characters[_i].info.originGender = "Female">> <<set $Characters[_i].body.breastSize.value = _newBreast>> <<set $Characters[_i].body.buttSize.value = _newButt>> <<set $Characters[_i].body.vaginaSize.value = _newVagina>> <<set $Characters[_i].body.penisSize.value = 0>> <<set $Characters[_i].body.face.value = _newFace>> <<run $Characters[_i].saveData.set("feminized", "female")>> <<run $Characters[_i].saveData.set("feminizedByPlayer", true)>> /* Update $selectedBrothelWorker reference */ <<set $selectedBrothelWorker = $Characters[_i]>> <<break>> <</if>> <</for>> <<SpendTimeWithoutUpdate 120>> <<switch _personality>> <<case "shy">> <<set _transformResponse = "*gasps at reflection* I'm... I'm really a woman now... *feminine voice trembles* This is so surreal...">> <<case "confident">> <<set _transformResponse = "*examines completely new body* Complete transformation. I'll master this new form quickly.">> <<case "flirty">> <<set _transformResponse = "*twirls in excitement* Oh my god! I'm a real girl! *giggles in new voice* This is amazing, boss!">> <<case "desperate">> <<set _transformResponse = "*crying happy tears* Thank you so much! I'll be the best female worker you've ever had!">> <<case "arrogant">> <<set _transformResponse = "*studies new figure with satisfaction* I make a stunning woman. Of course I do.">> <<case "submissive">> <<set _transformResponse = "*bowing* You have completely remade me. I am entirely yours in this new form, master.">> <<case "cynical">> <<set _transformResponse = "*looks at reflection* This is... quite a change. But I made my choice. Time to adapt.">> <<default>> <<set _transformResponse = "I'm... a woman now. Completely. This will take some getting used to.">> <</switch>> <</if>> <<Chat $selectedBrothelWorker _transformResponse>> <<set _msg = _workerName + " has been successfully transformed! Their new form will be more appealing to your clientele.">> <<ChatMessage _msg>> /* Increase affection for trusting you with this */ <<set _currentAffection = $selectedBrothelWorker.saveData.get("affection") || 3>> <<run $selectedBrothelWorker.saveData.set("affection", Math.min(10, _currentAffection + 1))>> <<ChatMessage "Their affection has increased for trusting you with such an important decision.">> <div class="brothel-btn-container padding-top"> <span class="brothel-btn primary"><<button "→ Continue" "BrothelWorkerDetails">><</button>></span> </div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <div class="centre-text">Buy New Rooms</div> <div class="centre-text" style="font-size: 14px;">Current rooms: <<print $playerBrothel.rooms>> / <<print $playerBrothel.maxRooms>></div> <<if $playerBrothel.rooms >= $playerBrothel.maxRooms>> <<ChatMessage "You have reached the maximum number of rooms (10). No more rooms available for purchase.">> <<else>> <<set _nextRoom = $playerBrothel.rooms + 1>> <<set _roomPrice = _nextRoom * 1000>> <<set _priceMsg = "Room " + _nextRoom + " costs $" + _roomPrice>> <<ChatMessage _priceMsg>> <<set _buyBtnText = "Buy Room ($" + _roomPrice + ")">> <<set _noBuyBtnText = "Buy Room ($" + _roomPrice + ") - Not enough money">> <<if $player.money >= _roomPrice>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn success"><<button _buyBtnText "BrothelBuyRoomConfirm">> <<set $roomPriceToPay = _roomPrice>> <</button>></span> </div> <<else>> <div class="brothel-btn-container padding-top"><span class="brothel-btn disabled"><<button _noBuyBtnText>><</button>></span></div> <</if>> <</if>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn neutral"><<button "← Back" "PlayerBrothel_Office">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $player.money -= $roomPriceToPay>> <<set $playerBrothel.rooms += 1>> <<set _successMsg = "You have purchased a new room! You now have " + $playerBrothel.rooms + " rooms.">> <<ChatMessage _successMsg>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn secondary"><<button "→ Continue" "BrothelBuyRooms">><<unset $roomPriceToPay>><</button>></span> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <div class="centre-text" style="font-size: 22px; color: #e91e63; text-shadow: 0 0 10px rgba(233, 30, 99, 0.5);">👩💼 Your Workers</div> <<if $playerBrothel.prostitutes.length == 0>> <<ChatMessage "You don't have any workers yet. Go to Casting to hire some!">> <<else>> <<set _workerCount = $playerBrothel.prostitutes.length>> <<set _msg = "You have " + _workerCount + " worker(s):">> <<ChatMessage _msg>> <div class="item-shop-container" style="padding-top: 15px; gap: 20px; display: flex; flex-wrap: wrap; justify-content: center;"> <<for _i = 0; _i < $playerBrothel.prostitutes.length; _i++>> <<set _prostId = $playerBrothel.prostitutes[_i]>> <<set _prost = $Characters.find(c => c.info.id == _prostId)>> <<if _prost>> <<set _prostIcon = _prost.getPhotoImage()>> <<set _prostName = _prost.info.firstName>> <<set _prostFace = _prost.body.face.value>> <<set _prostCorruption = _prost.attributes.corruption.value>> <<set _prostGender = _prost.gender()>> /* Get worker stats */ <<set _submission = _prost.saveData.has("submission") ? _prost.saveData.get("submission") : 3>> <<set _affection = _prost.saveData.has("affection") ? _prost.saveData.get("affection") : 3>> <<set _fear = _prost.saveData.has("fear") ? _prost.saveData.get("fear") : 1>> <<set _personality = _prost.saveData.get("personality") || "default">> /* Get energy and health */ <<set _energy = _prost.status.energy.value>> <<set _energyMax = _prost.status.energy.max>> <<set _health = _prost.status.health.value>> <<set _healthMax = _prost.status.health.max>> <<set _energyPercent = Math.round((_energy / _energyMax) * 100)>> <<set _healthPercent = Math.round((_health / _healthMax) * 100)>> /* Get assignment */ <<set _assignment = $playerBrothel.workerAssignments[_prostId] || "work">> <<switch _assignment>> <<case "work">><<set _assignIcon = "💋">><<set _assignLabel = "Working">><<set _assignColor = "#e91e63">> <<case "spa">><<set _assignIcon = "💆">><<set _assignLabel = "Spa">><<set _assignColor = "#4fc3f7">> <<case "medical">><<set _assignIcon = "🏥">><<set _assignLabel = "Medical">><<set _assignColor = "#81c784">> <<case "relaxation">><<set _assignIcon = "🛋️">><<set _assignLabel = "Resting">><<set _assignColor = "#ffb74d">> <<default>><<set _assignIcon = "💋">><<set _assignLabel = "Working">><<set _assignColor = "#e91e63">> <</switch>> /* Personality icon */ <<switch _personality>> <<case "shy">><<set _personalityIcon = "🥺">><<set _personalityColor = "#ff9999">> <<case "confident">><<set _personalityIcon = "😎">><<set _personalityColor = "#64b5f6">> <<case "flirty">><<set _personalityIcon = "😘">><<set _personalityColor = "#f48fb1">> <<case "desperate">><<set _personalityIcon = "😰">><<set _personalityColor = "#ffcc80">> <<case "arrogant">><<set _personalityIcon = "😤">><<set _personalityColor = "#b39ddb">> <<case "submissive">><<set _personalityIcon = "🙇">><<set _personalityColor = "#80cbc4">> <<case "cynical">><<set _personalityIcon = "🙄">><<set _personalityColor = "#b0bec5">> <<default>><<set _personalityIcon = "❓">><<set _personalityColor = "#888">> <</switch>> /* Gender icon */ <<if _prostGender == "Female">> <<set _genderIcon = "♀️">><<set _genderColor = "#f48fb1">> <<elseif _prostGender == "Male">> <<set _genderIcon = "♂️">><<set _genderColor = "#64b5f6">> <<else>> <<set _genderIcon = "⚧️">><<set _genderColor = "#ce93d8">> <</if>> /* Calculate bar widths and pre-compute styles */ <<set _faceWidth = _prostFace * 10>> <<set _submissionWidth = _submission * 10>> <<set _affectionWidth = _affection * 10>> <<set _fearWidth = _fear * 10>> /* Pre-compute all bar styles */ <<set _healthBarStyle = "background: linear-gradient(90deg, #f44336, #e91e63); width: " + _healthPercent + "%; height: 100%; border-radius: 3px;">> <<set _energyBarStyle = "background: linear-gradient(90deg, #ff9800, #ffeb3b); width: " + _energyPercent + "%; height: 100%; border-radius: 3px;">> <<set _faceBarStyle = "background: #e91e63; width: " + _faceWidth + "%; height: 100%; border-radius: 2px;">> <<set _submissionBarStyle = "background: #ff9800; width: " + _submissionWidth + "%; height: 100%; border-radius: 2px;">> <<set _affectionBarStyle = "background: #e91e63; width: " + _affectionWidth + "%; height: 100%; border-radius: 2px;">> <<set _fearBarStyle = "background: #9c27b0; width: " + _fearWidth + "%; height: 100%; border-radius: 2px;">> <<set _assignBadgeStyle = "background: " + _assignColor + "; padding: 3px 12px; border-radius: 10px; font-size: 11px; color: #fff;">> <<set _genderBadgeStyle = "position: absolute; bottom: 0; right: 35%; background: " + _genderColor + "; border-radius: 50%; padding: 2px 5px; font-size: 10px;">> <<set _personalityBadgeStyle = "background: " + _personalityColor + "33; padding: 2px 8px; border-radius: 10px; font-size: 11px; color: " + _personalityColor + ";">> <<capture _prost _prostId _prostIcon _prostName _prostFace _prostCorruption _prostGender _submission _affection _fear _energy _energyMax _health _healthMax _energyPercent _healthPercent _assignment _assignIcon _assignLabel _assignColor _personalityIcon _personalityColor _genderIcon _genderColor _faceWidth _submissionWidth _affectionWidth _fearWidth _healthBarStyle _energyBarStyle _faceBarStyle _submissionBarStyle _affectionBarStyle _fearBarStyle _assignBadgeStyle _genderBadgeStyle _personalityBadgeStyle _personality>> <div class="shop-item" style="background: linear-gradient(180deg, rgba(76, 175, 80, 0.15) 0%, rgba(33, 33, 33, 0.95) 100%); border: 2px solid #4CAF50; border-radius: 15px; padding: 15px; box-shadow: 0 5px 20px rgba(76, 175, 80, 0.3); min-width: 250px; max-width: 300px; min-height: 480px; flex: 1;"> /* Assignment badge */ <div style="text-align: center; margin-bottom: 5px;"> <span @style="_assignBadgeStyle"><<print _assignIcon>> <<print _assignLabel>></span> </div> /* Avatar with glow */ <div style="text-align: center; position: relative;"> <img @src='_prostIcon' alt='Avatar' style="width: 70px; height: 70px; border-radius: 50%; border: 3px solid #4CAF50; box-shadow: 0 0 15px rgba(76, 175, 80, 0.5);"> <div @style="_genderBadgeStyle"><<print _genderIcon>></div> </div> /* Name and personality */ <h3 style="color: #fff; text-align: center; margin: 8px 0 4px; font-size: 15px;"><<print _prostName>></h3> <div style="text-align: center; margin-bottom: 8px;"> <span @style="_personalityBadgeStyle"><<print _personalityIcon>> <<print _personality>></span> </div> /* Health and Energy bars */ <div style="font-size: 10px; margin: 6px 0;"> <div style="display: flex; justify-content: space-between; color: #aaa;"><span>❤️ Health</span><span><<print _health>>/<<print _healthMax>></span></div> <div style="background: rgba(255,255,255,0.1); height: 6px; border-radius: 3px; margin-top: 2px;"> <div @style="_healthBarStyle"></div> </div> </div> <div style="font-size: 10px; margin: 6px 0;"> <div style="display: flex; justify-content: space-between; color: #aaa;"><span>⚡ Energy</span><span><<print _energy>>/<<print _energyMax>></span></div> <div style="background: rgba(255,255,255,0.1); height: 6px; border-radius: 3px; margin-top: 2px;"> <div @style="_energyBarStyle"></div> </div> </div> <hr style="border-color: rgba(255,255,255,0.1); margin: 8px 0;"> /* Stats with mini bars */ /* Attractiveness color based on level */ <<set _attractColor = _prostFace >= 7 ? "#4CAF50" : (_prostFace >= 4 ? "#ff9800" : "#f44336")>> <<set _faceBarStyleColored = "background: " + _attractColor + "; width: " + _faceWidth + "%; height: 100%; border-radius: 2px;">> <div style="font-size: 10px; margin: 5px 0;"> <div style="display: flex; justify-content: space-between; color: #aaa;"><span>✨ Attract</span><span style="color: <<print _attractColor>>;"><<print Math.floor(_prostFace * 10) / 10>>/10</span></div> <div style="background: rgba(255,255,255,0.1); height: 4px; border-radius: 2px; margin-top: 2px;"> <div @style="_faceBarStyleColored"></div> </div> <<if _prostFace < 5>> <div style="color: #f44336; font-size: 9px; margin-top: 2px;">⚠️ Low - Send to Spa!</div> <</if>> </div> <div style="font-size: 10px; margin: 5px 0;"> <div style="display: flex; justify-content: space-between; color: #aaa;"><span>🎀 Submit</span><span><<print _submission>>/10</span></div> <div style="background: rgba(255,255,255,0.1); height: 4px; border-radius: 2px; margin-top: 2px;"> <div @style="_submissionBarStyle"></div> </div> </div> <div style="font-size: 10px; margin: 5px 0;"> <div style="display: flex; justify-content: space-between; color: #aaa;"><span>💕 Affection</span><span><<print _affection>>/10</span></div> <div style="background: rgba(255,255,255,0.1); height: 4px; border-radius: 2px; margin-top: 2px;"> <div @style="_affectionBarStyle"></div> </div> </div> <div style="font-size: 10px; margin: 5px 0;"> <div style="display: flex; justify-content: space-between; color: #aaa;"><span>😨 Fear</span><span><<print _fear>>/10</span></div> <div style="background: rgba(255,255,255,0.1); height: 4px; border-radius: 2px; margin-top: 2px;"> <div @style="_fearBarStyle"></div> </div> </div> /* Interact button */ <div style="margin-top: 10px;"> <span class="brothel-btn success small"><<button "💬 INTERACT" "BrothelWorkerDetails">> <<set $selectedBrothelWorker = _prost>> <</button>></span> </div> </div> <</capture>> <</if>> <</for>> </div> <</if>> <div class="brothel-btn-container padding-top" style="margin-top: 20px;"> <span class="brothel-btn neutral"><<button "← Back" "PlayerBrothel_Office">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _uncollected = Number($playerBrothel.uncollectedEarnings) || 0>> <<if _uncollected > 0>> <<set $player.money = Number($player.money) + _uncollected>> <<set $playerBrothel.uncollectedEarnings = 0>> <<set $playerBrothel.totalEarnings = 0>> <<set _msg = "💰 You collected $" + _uncollected + " from your brothel!">> <<ChatMessage _msg>> <<else>> <<ChatMessage "No earnings to collect right now. Workers generate income each day.">> <</if>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn neutral"><<button "← Back" "PlayerBrothel_Office">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "PlayerBrothel_InitCheck">> <<include "UpdateAll">> <<SetBackground "Media/Locations/City/RedLightDistrict/Brothel/Spa.jpg">> <div class="centre-text" style="font-size: 22px; color: #4fc3f7; text-shadow: 0 0 10px rgba(79, 195, 247, 0.5);">💆 Spa Salon</div> <<ChatMessage "A luxurious spa where workers can restore their beauty and attractiveness. Soft music plays in the background and the air smells of lavender.">> <fieldset style="background: rgba(79, 195, 247, 0.1); border: 1px solid #4fc3f7; margin: 15px 0;"> <legend style="color: #4fc3f7;">💡 Spa Benefits</legend> <div style="padding: 10px; font-size: 12px; color: #aaa;"> <p style="margin: 5px 0;">✨ <b style="color: #e91e63;">Restores Attractiveness</b> - Workers regain beauty each day in the spa</p> <p style="margin: 5px 0;">⚠️ <b style="color: #ff9800;">Important:</b> All workers lose attractiveness daily from working</p> <p style="margin: 5px 0;">💰 <b style="color: #4CAF50;">Low attractiveness = less income</b> - Keep workers beautiful!</p> </div> </fieldset> /* Count workers in spa */ <<set _spaWorkers = []>> <<for _i = 0; _i < $playerBrothel.prostitutes.length; _i++>> <<set _prostId = $playerBrothel.prostitutes[_i]>> <<set _assignment = $playerBrothel.workerAssignments[_prostId] || "work">> <<if _assignment == "spa">> <<set _prost = $Characters.find(c => c.info.id == _prostId)>> <<if _prost>> <<run _spaWorkers.push(_prost)>> <</if>> <</if>> <</for>> <<if _spaWorkers.length == 0>> <<ChatMessage "No workers are currently assigned to the spa. Assign workers from the View Workers menu.">> <<else>> <<set _msg = _spaWorkers.length + " worker(s) are being pampered in the spa:">> <<ChatMessage _msg>> <div class="item-shop-container" style="padding-top: 15px; gap: 15px;"> <<for _i = 0; _i < _spaWorkers.length; _i++>> <<set _worker = _spaWorkers[_i]>> <<set _workerIcon = _worker.getPhotoImage()>> <<set _workerName = _worker.info.firstName>> <<set _attractiveness = Math.floor(_worker.body.face.value * 10) / 10>> <<set _attractivenessMax = _worker.body.face.max || 10>> <<set _attractivenessPercent = Math.round((_attractiveness / _attractivenessMax) * 100)>> <<set _attractivenessBarStyle = "background: linear-gradient(90deg, #e91e63, #f48fb1); width: " + _attractivenessPercent + "%; height: 100%; border-radius: 3px;">> /* Color based on attractiveness level */ <<if _attractiveness >= 7>> <<set _attractColor = "#4CAF50">> <<elseif _attractiveness >= 4>> <<set _attractColor = "#ff9800">> <<else>> <<set _attractColor = "#f44336">> <</if>> <<capture _worker _workerIcon _workerName _attractiveness _attractivenessMax _attractivenessPercent _attractivenessBarStyle _attractColor>> <div style="background: linear-gradient(180deg, rgba(79, 195, 247, 0.2) 0%, rgba(33, 33, 33, 0.9) 100%); border: 1px solid #4fc3f7; border-radius: 10px; padding: 15px; min-width: 200px; text-align: center;"> <img @src='_workerIcon' alt='Avatar' style="width: 60px; height: 60px; border-radius: 50%; border: 2px solid #4fc3f7;"> <h4 style="color: #fff; margin: 8px 0 5px;"><<print _workerName>></h4> <div style="font-size: 11px;"> <div style="display: flex; justify-content: space-between; color: #aaa;"><span>✨ Attractiveness</span><span style="color: <<print _attractColor>>;"><<print _attractiveness>>/<<print _attractivenessMax>></span></div> <div style="background: rgba(255,255,255,0.1); height: 6px; border-radius: 3px; margin-top: 3px;"> <div @style="_attractivenessBarStyle"></div> </div> </div> <p style="color: #4fc3f7; font-size: 10px; margin-top: 8px;">💆 Restoring beauty... (+0.5-1.0/day)</p> </div> <</capture>> <</for>> </div> <</if>> <div class="brothel-btn-container padding-top" style="margin-top: 20px;"> <span class="brothel-btn neutral"><<button "← Back to Hall" "PlayerBrothel_Main">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "PlayerBrothel_InitCheck">> <<include "UpdateAll">> <<SetBackground "Media/Locations/City/RedLightDistrict/Brothel/Medical Room.jpg">> <div class="centre-text" style="font-size: 22px; color: #81c784; text-shadow: 0 0 10px rgba(129, 199, 132, 0.5);">🏥 Medical Room</div> <<ChatMessage "A clean medical facility for treating workers. The room is sterile and well-equipped.">> /* Count workers in medical */ <<set _medWorkers = []>> <<for _i = 0; _i < $playerBrothel.prostitutes.length; _i++>> <<set _prostId = $playerBrothel.prostitutes[_i]>> <<set _assignment = $playerBrothel.workerAssignments[_prostId] || "work">> <<if _assignment == "medical">> <<set _prost = $Characters.find(c => c.info.id == _prostId)>> <<if _prost>> <<run _medWorkers.push(_prost)>> <</if>> <</if>> <</for>> <<if _medWorkers.length == 0>> <<ChatMessage "No workers are currently receiving medical treatment. Assign workers from the View Workers menu.">> <<else>> <<set _msg = _medWorkers.length + " worker(s) are receiving treatment:">> <<ChatMessage _msg>> <div class="item-shop-container" style="padding-top: 15px; gap: 15px;"> <<for _i = 0; _i < _medWorkers.length; _i++>> <<set _worker = _medWorkers[_i]>> <<set _workerIcon = _worker.getPhotoImage()>> <<set _workerName = _worker.info.firstName>> <<set _health = _worker.status.health.value>> <<set _healthMax = _worker.status.health.max>> <<set _healthPercent = Math.round((_health / _healthMax) * 100)>> <<set _healthBarStyle = "background: linear-gradient(90deg, #f44336, #e91e63); width: " + _healthPercent + "%; height: 100%; border-radius: 3px;">> <<capture _worker _workerIcon _workerName _health _healthMax _healthPercent _healthBarStyle>> <div style="background: linear-gradient(180deg, rgba(129, 199, 132, 0.2) 0%, rgba(33, 33, 33, 0.9) 100%); border: 1px solid #81c784; border-radius: 10px; padding: 15px; min-width: 180px; text-align: center;"> <img @src='_workerIcon' alt='Avatar' style="width: 60px; height: 60px; border-radius: 50%; border: 2px solid #81c784;"> <h4 style="color: #fff; margin: 8px 0 5px;"><<print _workerName>></h4> <div style="font-size: 11px;"> <div style="display: flex; justify-content: space-between; color: #aaa;"><span>❤️ Health</span><span><<print _health>>/<<print _healthMax>></span></div> <div style="background: rgba(255,255,255,0.1); height: 6px; border-radius: 3px; margin-top: 3px;"> <div @style="_healthBarStyle"></div> </div> </div> <p style="color: #81c784; font-size: 10px; margin-top: 8px;">🏥 Recovering... (+health, cures diseases)</p> </div> <</capture>> <</for>> </div> <</if>> <div class="brothel-btn-container padding-top" style="margin-top: 20px;"> <span class="brothel-btn neutral"><<button "← Back to Hall" "PlayerBrothel_Main">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "PlayerBrothel_InitCheck">> <<include "UpdateAll">> <<SetBackground "Media/Locations/City/RedLightDistrict/Brothel/Relaxation Room.jpg">> <div class="centre-text" style="font-size: 22px; color: #ffb74d; text-shadow: 0 0 10px rgba(255, 183, 77, 0.5);">🛋️ Relaxation Room</div> <<ChatMessage "A cozy room with soft couches and dim lighting. Workers can rest here to reduce stress and feel more appreciated.">> /* Count workers in relaxation */ <<set _restWorkers = []>> <<for _i = 0; _i < $playerBrothel.prostitutes.length; _i++>> <<set _prostId = $playerBrothel.prostitutes[_i]>> <<set _assignment = $playerBrothel.workerAssignments[_prostId] || "work">> <<if _assignment == "relaxation">> <<set _prost = $Characters.find(c => c.info.id == _prostId)>> <<if _prost>> <<run _restWorkers.push(_prost)>> <</if>> <</if>> <</for>> <<if _restWorkers.length == 0>> <<ChatMessage "No workers are currently resting. Assign workers from the View Workers menu.">> <<else>> <<set _msg = _restWorkers.length + " worker(s) are resting here:">> <<ChatMessage _msg>> <div class="item-shop-container" style="padding-top: 15px; gap: 15px;"> <<for _i = 0; _i < _restWorkers.length; _i++>> <<set _worker = _restWorkers[_i]>> <<set _workerIcon = _worker.getPhotoImage()>> <<set _workerName = _worker.info.firstName>> <<set _affection = _worker.saveData.get("affection") || 3>> <<set _affectionWidth = _affection * 10>> <<set _affectionBarStyle = "background: #e91e63; width: " + _affectionWidth + "%; height: 100%; border-radius: 3px;">> <<capture _worker _workerIcon _workerName _affection _affectionWidth _affectionBarStyle>> <div style="background: linear-gradient(180deg, rgba(255, 183, 77, 0.2) 0%, rgba(33, 33, 33, 0.9) 100%); border: 1px solid #ffb74d; border-radius: 10px; padding: 15px; min-width: 180px; text-align: center;"> <img @src='_workerIcon' alt='Avatar' style="width: 60px; height: 60px; border-radius: 50%; border: 2px solid #ffb74d;"> <h4 style="color: #fff; margin: 8px 0 5px;"><<print _workerName>></h4> <div style="font-size: 11px;"> <div style="display: flex; justify-content: space-between; color: #aaa;"><span>💕 Affection</span><span><<print _affection>>/10</span></div> <div style="background: rgba(255,255,255,0.1); height: 6px; border-radius: 3px; margin-top: 3px;"> <div @style="_affectionBarStyle"></div> </div> </div> <p style="color: #ffb74d; font-size: 10px; margin-top: 8px;">🛋️ Relaxing... (+affection over time)</p> </div> <</capture>> <</for>> </div> <</if>> <div class="brothel-btn-container padding-top" style="margin-top: 20px;"> <span class="brothel-btn neutral"><<button "← Back to Hall" "PlayerBrothel_Main">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "PlayerBrothel_InitCheck">> <<include "UpdateAll">> <<SetBackground "Media/Locations/City/RedLightDistrict/Brothel/Master Room.jpg">> /* Check for daily income collection */ <<if $playerBrothel.visitedToday == false>> <<set $playerBrothel.visitedToday = true>> <<include "BrothelCalculateDailyIncome">> <</if>> <div class="centre-text" style="font-size: 22px; color: #9c27b0; text-shadow: 0 0 10px rgba(156, 39, 176, 0.5);">🛏️ Master Room</div> <<ChatMessage "Your private bedroom in the brothel. A luxurious space where you can rest and recover.">> /* Show player stats */ <<set _energyPercent = Math.round(($player.status.energy.value / $player.status.energy.max) * 100)>> <<set _healthPercent = Math.round(($player.status.health.value / $player.status.health.max) * 100)>> <<set _potencyPercent = Math.round(($player.status.potency.value / $player.status.potency.max) * 100)>> <fieldset style="background: rgba(0,0,0,0.3); border: 1px solid #9c27b0; margin: 15px 0;"> <legend style="color: #ce93d8;">Your Status</legend> <div style="padding: 10px;"> <div style="font-size: 14px; margin: 10px 0;"> <div style="display: flex; justify-content: space-between; color: #fff;"><span>⚡ Energy</span><span><<print $player.status.energy.value>>/<<print $player.status.energy.max>></span></div> <div style="background: rgba(255,255,255,0.1); height: 12px; border-radius: 6px; margin-top: 5px;"> <div style="background: linear-gradient(90deg, #ff9800, #ffeb3b); width: <<print _energyPercent>>%; height: 100%; border-radius: 6px;"></div> </div> </div> <div style="font-size: 14px; margin: 10px 0;"> <div style="display: flex; justify-content: space-between; color: #fff;"><span>❤️ Health</span><span><<print $player.status.health.value>>/<<print $player.status.health.max>></span></div> <div style="background: rgba(255,255,255,0.1); height: 12px; border-radius: 6px; margin-top: 5px;"> <div style="background: linear-gradient(90deg, #f44336, #e91e63); width: <<print _healthPercent>>%; height: 100%; border-radius: 6px;"></div> </div> </div> <div style="font-size: 14px; margin: 10px 0;"> <div style="display: flex; justify-content: space-between; color: #fff;"><span>💪 Sex Stamina</span><span><<print $player.status.potency.value>>/<<print $player.status.potency.max>></span></div> <div style="background: rgba(255,255,255,0.1); height: 12px; border-radius: 6px; margin-top: 5px;"> <div style="background: linear-gradient(90deg, #e91e63, #f48fb1); width: <<print _potencyPercent>>%; height: 100%; border-radius: 6px;"></div> </div> </div> </div> </fieldset> <fieldset class="brothel-fieldset purple"> <legend>Actions</legend> <div class="brothel-btn-container"> <span class="brothel-btn info"><<button "😴 Sleep" "BrothelMasterRoom_Sleep">><</button>></span> /* Accept Client button - requires energy and sex stamina */ <<set _canAcceptClient = $player.status.energy.value >= 20 && $player.status.potency.value >= 1>> <<if _canAcceptClient>> <span class="brothel-btn primary"><<button "💋 Accept Client" "BrothelMasterRoom_AcceptClient">><</button>></span> <<else>> <span class="brothel-btn disabled" title="Need at least 20 energy and 1 sex stamina"><<button "💋 Accept Client (Too tired)">><</button>></span> <</if>> </div> </fieldset> <div class="brothel-btn-container padding-top"> <span class="brothel-btn neutral"><<button "← Back to Hall" "PlayerBrothel_Main">><</button>></span> </div> <</nobr>>
<<nobr>> /* Use the standard Sleep widget which handles time advancement and CharactersRefresh */ <<Sleep "BrothelMasterRoom_Main">> <</nobr>>
<<nobr>> <<include "PlayerBrothel_InitCheck">> <<include "UpdateAll">> <<include "CharactersData">> <<SetBackground "Media/Locations/City/RedLightDistrict/Brothel/Master Room.jpg">> /* Generate a random client */ /* Gender is determined by femininity = breastSize + buttSize + face */ /* Male: femininity <= 4, Shemale: femininity > 4 with penis, Female: femininity > 4 with vagina */ <<set _clientGenderRoll = Random(1, 100)>> <<if _clientGenderRoll <= 70>> /* 70% Male clients - femininity must be <= 4 */ <<set _clientGender = "Male">> <<set _clientOriginGender = "Male">> <<set _breastSize = 0>> <<set _buttSize = Random(0, 1)>> <<set _faceValue = Random(0, 2)>> /* Max femininity = 0 + 1 + 2 = 3, safely male */ <<set _vaginaSize = 0>> <<set _penisSize = Random(12, 35)>> <<elseif _clientGenderRoll <= 90>> /* 20% Female clients - femininity > 4, has vagina */ <<set _clientGender = "Female">> <<set _clientOriginGender = "Female">> <<set _breastSize = Random(2, 5)>> <<set _buttSize = Random(2, 4)>> <<set _faceValue = Random(5, 8)>> /* Min femininity = 2 + 2 + 5 = 9, definitely female with vagina */ <<set _vaginaSize = Random(15, 35)>> <<set _penisSize = 0>> <<else>> /* 10% Trans/Shemale clients - femininity > 4, has penis, no vagina */ <<set _clientGender = "Trans">> <<set _clientOriginGender = "Trans">> <<set _breastSize = Random(2, 4)>> <<set _buttSize = Random(2, 3)>> <<set _faceValue = Random(5, 7)>> /* Min femininity = 2 + 2 + 5 = 9, definitely shemale (has penis, no vagina) */ <<set _vaginaSize = 0>> <<set _penisSize = Random(10, 25)>> <</if>> /* Create the client character */ <<set _client = CreateCharacter({ isPlayer: false, characterWork: "Brothel Client", gender: _clientOriginGender, sexualPreference: "Bi", clothesPreference: (_clientGender == "Male" ? "men" : "women"), age: Random(22, 55), face: _faceValue, breastSize: _breastSize, buttSize: _buttSize, vaginaSize: _vaginaSize, penisSize: _penisSize, throatSize: Random(10, 30), anusSize: Random(10, 30) }, true)>> <<unset $maleNames $femaleNames $surnames>> /* Assign random sex role to client */ <<set _clientRoleRoll = Random(1, 100)>> <<if _clientRoleRoll <= 50>> <<set _client.info.SexRole = "Active">> <<set _clientRole = "Top">> <<elseif _clientRoleRoll <= 85>> <<set _client.info.SexRole = "Versatile">> <<set _clientRole = "Versatile">> <<else>> <<set _client.info.SexRole = "Passive">> <<set _clientRole = "Bottom">> <</if>> /* Calculate payment based on brothel level and client wealth */ <<set _basePayment = 100 + ($playerBrothel.level || 1) * 20>> <<set _wealthMultiplier = Random(80, 150) / 100>> <<set _clientPayment = Math.floor(_basePayment * _wealthMultiplier)>> /* Store client data for the sex scene */ <<set $brothelClient = _client>> <<set $brothelClientId = _client.info.id>> <<set $brothelClientPayment = _clientPayment>> <<set $brothelClientRole = _clientRole>> <<ShowNpcIcon $brothelClient>> <div class="centre-text" style="font-size: 22px; color: #e91e63; text-shadow: 0 0 10px rgba(233, 30, 99, 0.5);">💋 Client Arrived</div> <<set _clientName = $brothelClient.info.firstName>> <<set _clientGenderText = $brothelClient.gender()>> <<set _arrivalMsg = "A " + _clientGenderText.toLowerCase() + " client has arrived, looking for your services.">> <<ChatMessage _arrivalMsg>> /* Client greeting based on their role preference */ <<if _clientRole == "Top">> <<set _greetings = [ "I've heard good things about this place. I hope you can handle me.", "*looks you up and down* Perfect. I've been stressed all week and need to let off some steam.", "Don't worry, I'll be in charge. Just relax and enjoy.", "*confident smirk* I know what I want. Let's not waste time." ]>> <<elseif _clientRole == "Bottom">> <<set _greetings = [ "*shyly* I... I want you to take control, please.", "I've been dreaming of being used. Make me yours tonight.", "*submissively* I'll do whatever you want. Just tell me.", "Please be gentle... or rough. Whatever you prefer." ]>> <<else>> <<set _greetings = [ "I'm flexible. Let's see where the mood takes us.", "*smiles* I enjoy both giving and receiving. Surprise me.", "Whatever happens, happens. I'm up for anything.", "Let's have some fun together, shall we?" ]>> <</if>> <<Chat $brothelClient _greetings.random()>> <fieldset style="background: rgba(233, 30, 99, 0.1); border: 1px solid #e91e63; margin: 15px 0;"> <legend style="color: #f48fb1;">Client Info</legend> <div style="display: grid; grid-template-columns: 1fr 1fr; gap: 10px; padding: 10px;"> <div style="color: #aaa;">Gender:</div><div style="color: #fff; font-weight: bold;"><<print _clientGenderText>></div> <div style="color: #aaa;">Preference:</div><div style="color: #e91e63; font-weight: bold;"><<print _clientRole>></div> <div style="color: #aaa;">Payment:</div><div style="color: #4CAF50; font-weight: bold;">$<<print _clientPayment>></div> </div> </fieldset> <div class="brothel-btn-container" style="margin-top: 15px;"> <span class="brothel-btn primary"><<button "💋 Service Client" "BrothelMasterRoom_ClientSex">><</button>></span> <span class="brothel-btn danger"><<button "❌ Refuse Client" "BrothelMasterRoom_RefuseClient">><</button>></span> </div> <</nobr>>
<<nobr>> /* Set up sex scene with client BEFORE UpdateAll */ /* UpdateNPCVar in UpdateAll sets $interactionNpc = $Characters[$indexNPC] */ /* So we must set $indexNPC to point to our brothel client */ /* Find client by ID to ensure we get the correct character */ <<set _clientChar = $Characters.find(c => c.info.id == $brothelClientId)>> <<set $indexNPC = $Characters.indexOf(_clientChar)>> <<set $interactionNpc = _clientChar>> <<include "UpdateAll">> <<set $sexType = "brothelClientService">> <<set $gameSettings.allowSaves = false>> <<set $canShowStatsBtn = false>> /* Determine who is dominant based on client role */ <<if $brothelClientRole == "Top">> <<set $playerDom = false>> <<elseif $brothelClientRole == "Bottom">> <<set $playerDom = true>> <<else>> /* Versatile - random */ <<set $playerDom = [true, false].random()>> <</if>> /* Spend some energy to start */ <<SpendEnergy $player 10>> <<SpendTimeWithoutUpdate 30>> /* Go to sex scene */ <<if $playerDom == true>> <<goto "Sex">> <<else>> <<goto "PassiveSex">> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $brothelClient>> <<set _refusalResponses = [ "*disappointed* Fine. I'll find someone else then.", "*shrugs* Your loss. I pay well.", "*huffs* Whatever. This place isn't that great anyway.", "*sighs* Alright. Maybe next time." ]>> <<Chat $brothelClient _refusalResponses.random()>> /* Delete the client */ <<DeleteCharacter $brothelClient>> <<unset $brothelClient $brothelClientId $brothelClientPayment $brothelClientRole>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn neutral"><<button "← Back" "BrothelMasterRoom_Main">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/City/RedLightDistrict/Brothel/Master Room.jpg">> <<set _client = $brothelClient>> <<ShowNpcIcon _client>> <div class="centre-text" style="font-size: 22px; color: #f44336; text-shadow: 0 0 10px rgba(244, 67, 54, 0.5);">😠 Client Unsatisfied</div> <<set _angryResponses = [ "*furious* Are you kidding me?! I paid for a service and you can't even finish?! I'm not paying for this!", "*disgusted* What a waste of my time! You call yourself a professional? I want my money back!", "*shouting* This is ridiculous! I came here for satisfaction, not this pathetic performance!", "*sneering* Unbelievable. The worst experience I've ever had. I'm telling everyone about this dump!", "*storming out* Forget it! I'm leaving and I'm NOT paying a single cent for this disaster!" ]>> <<Chat _client _angryResponses.random()>> <<ChatMessage "The client storms out without paying. This reflects badly on your brothel's reputation.">> /* Lose reputation for failed service */ <<set _repLoss = Random(3, 8)>> <<set $playerBrothel.reputation = Math.max(0, $playerBrothel.reputation - _repLoss)>> <<set _repLossMsg = "🔻 Reputation -" + _repLoss>> <<ChatMessage _repLossMsg>> /* Delete the client */ <<DeleteCharacter _client>> <<unset $brothelClient $brothelClientId $brothelClientPayment $brothelClientRole>> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn neutral"><<button "← Back to Room" "BrothelMasterRoom_Main">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/City/RedLightDistrict/Brothel/Master Room.jpg">> <<set _payment = $brothelClientPayment>> <<set _client = $brothelClient>> <<ShowNpcIcon _client>> <div class="centre-text" style="font-size: 22px; color: #4CAF50; text-shadow: 0 0 10px rgba(76, 175, 80, 0.5);">💰 Service Complete</div> <<set _satisfiedResponses = [ "*catching breath* That was... incredible. Worth every penny.", "*dressing up* Wow. I'll definitely be coming back for more.", "*satisfied smile* You really know what you're doing. Thank you.", "*stretching* Mmm, I needed that. Best decision I made this week.", "*grinning* Money well spent. You're amazing." ]>> <<Chat _client _satisfiedResponses.random()>> /* Apply Personal Touch perk bonus */ <<set _playerProfitLevel = $playerBrothel.perks ? ($playerBrothel.perks.playerProfitBonus || 0) : 0>> <<set _bonusMultiplier = 1 + (_playerProfitLevel * 0.1)>> <<set _finalPayment = Math.floor(_payment * _bonusMultiplier)>> /* Give player the payment */ <<set $player.money += _finalPayment>> <<if _playerProfitLevel > 0>> <<set _paymentMsg = "You received $" + _finalPayment + " for your services (+" + (_playerProfitLevel * 10) + "% Personal Touch bonus).">> <<else>> <<set _paymentMsg = "You received $" + _finalPayment + " for your services.">> <</if>> <<ChatMessage _paymentMsg>> /* Add to brothel earnings tracking */ <<set $playerBrothel.dailyEarnings += _finalPayment>> /* Add to uncollected earnings (capped at $20,000) */ <<if ndef $playerBrothel.uncollectedEarnings>> <<set $playerBrothel.uncollectedEarnings = 0>> <</if>> <<set _newUncollected = $playerBrothel.uncollectedEarnings + _finalPayment>> <<if _newUncollected > 20000>> <<set $playerBrothel.uncollectedEarnings = 20000>> <<else>> <<set $playerBrothel.uncollectedEarnings = _newUncollected>> <</if>> /* Sync totalEarnings with uncollectedEarnings */ <<set $playerBrothel.totalEarnings = $playerBrothel.uncollectedEarnings>> /* Small reputation boost for personal service */ <<set _repGain = Math.floor(_payment / 100) + 1>> <<set $playerBrothel.reputation += _repGain>> /* Check for level up */ <<if $playerBrothel.reputation >= $playerBrothel.maxReputation && $playerBrothel.level < 26>> <<set $playerBrothel.level += 1>> <<set $playerBrothel.reputation = 0>> <<set $playerBrothel.maxReputation = Math.floor($playerBrothel.maxReputation * 1.25)>> <<set $playerBrothel.skillPoints += 1>> <<set _levelUpMsg = "🎉 Brothel leveled up to Level " + $playerBrothel.level + "! ⭐ +1 Skill Point!">> <<ChatMessage _levelUpMsg>> <</if>> /* Delete the client */ <<DeleteCharacter _client>> <<unset $brothelClient $brothelClientId $brothelClientPayment $brothelClientRole>> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <div class="brothel-btn-container padding-top"> <span class="brothel-btn neutral"><<button "← Back to Room" "BrothelMasterRoom_Main">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "PlayerBrothel_InitCheck">> <<include "UpdateAll">> <div class="centre-text" style="font-size: 22px; color: #2196f3; text-shadow: 0 0 10px rgba(33, 150, 243, 0.5);">📋 Worker Management</div> <<ChatMessage "Manage your workers' assignments. Workers assigned to 'Work' will generate income. Other assignments provide different benefits.">> /* Count workers in each assignment */ <<set _workCount = 0>> <<set _spaCount = 0>> <<set _medicalCount = 0>> <<set _restCount = 0>> <<for _i = 0; _i < $playerBrothel.prostitutes.length; _i++>> <<set _prostId = $playerBrothel.prostitutes[_i]>> <<set _assignment = $playerBrothel.workerAssignments[_prostId] || "work">> <<if _assignment == "work">><<set _workCount++>> <<elseif _assignment == "spa">><<set _spaCount++>> <<elseif _assignment == "medical">><<set _medicalCount++>> <<elseif _assignment == "relaxation">><<set _restCount++>> <</if>> <</for>> /* Summary */ <fieldset style="background: rgba(0,0,0,0.3); border: 1px solid #2196f3; margin-bottom: 15px;"> <legend style="color: #64b5f6;">Summary</legend> <div style="display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; text-align: center; padding: 10px;"> <div style="background: rgba(233, 30, 99, 0.2); padding: 10px; border-radius: 8px;"> <div style="color: #e91e63; font-size: 20px; font-weight: bold;"><<print _workCount>></div> <div style="color: #aaa; font-size: 11px;">💋 Working</div> </div> <div style="background: rgba(0, 188, 212, 0.2); padding: 10px; border-radius: 8px;"> <div style="color: #00bcd4; font-size: 20px; font-weight: bold;"><<print _spaCount>></div> <div style="color: #aaa; font-size: 11px;">💆 Spa</div> </div> <div style="background: rgba(76, 175, 80, 0.2); padding: 10px; border-radius: 8px;"> <div style="color: #4CAF50; font-size: 20px; font-weight: bold;"><<print _medicalCount>></div> <div style="color: #aaa; font-size: 11px;">🏥 Medical</div> </div> <div style="background: rgba(255, 152, 0, 0.2); padding: 10px; border-radius: 8px;"> <div style="color: #ff9800; font-size: 20px; font-weight: bold;"><<print _restCount>></div> <div style="color: #aaa; font-size: 11px;">🛋️ Rest</div> </div> </div> </fieldset> /* Worker list with assignment toggles */ <fieldset style="background: linear-gradient(135deg, rgba(33, 150, 243, 0.1) 0%, rgba(33, 33, 33, 0.9) 100%); border: 1px solid #2196f3;"> <legend style="color: #64b5f6;">All Workers</legend> <div style="max-height: 400px; overflow-y: auto; padding: 10px;"> <<for _i = 0; _i < $playerBrothel.prostitutes.length; _i++>> <<set _prostId = $playerBrothel.prostitutes[_i]>> <<set _prost = $Characters.find(c => c.info.id == _prostId)>> <<if _prost>> <<set _prostIcon = _prost.getPhotoImage()>> <<set _prostName = _prost.info.firstName>> <<set _assignment = $playerBrothel.workerAssignments[_prostId] || "work">> <<set _energy = _prost.status.energy.value>> <<set _health = _prost.status.health.value>> <<capture _prost _prostId _prostIcon _prostName _assignment _energy _health>> <div style="background: rgba(0,0,0,0.3); border-radius: 10px; padding: 12px; margin-bottom: 10px; display: flex; align-items: center; gap: 15px;"> /* Avatar */ <img @src='_prostIcon' alt='Avatar' style="width: 50px; height: 50px; border-radius: 50%; border: 2px solid #2196f3;"> /* Info */ <div style="flex-grow: 1;"> <div style="color: #fff; font-weight: bold; font-size: 14px;"><<print _prostName>></div> <div style="color: #888; font-size: 11px;">⚡ <<print _energy>> | ❤️ <<print _health>></div> </div> /* Assignment buttons */ <div style="display: flex; gap: 5px;"> <<if _assignment == "work">> <div style="background: #e91e63; padding: 6px 10px; border-radius: 6px; color: #fff; font-size: 10px;">💋</div> <<else>> <span class="brothel-btn primary small" style="padding: 2px;"><<button "💋" "BrothelWorkerManagement_SetAssign">> <<set $mgmtWorkerId = _prostId>> <<set $mgmtNewAssignment = "work">> <</button>></span> <</if>> <<if $playerBrothel.upgrades.spa>> <<if _assignment == "spa">> <div style="background: #00bcd4; padding: 6px 10px; border-radius: 6px; color: #fff; font-size: 10px;">💆</div> <<else>> <span class="brothel-btn spa small" style="padding: 2px;"><<button "💆" "BrothelWorkerManagement_SetAssign">> <<set $mgmtWorkerId = _prostId>> <<set $mgmtNewAssignment = "spa">> <</button>></span> <</if>> <</if>> <<if $playerBrothel.upgrades.medical>> <<if _assignment == "medical">> <div style="background: #4CAF50; padding: 6px 10px; border-radius: 6px; color: #fff; font-size: 10px;">🏥</div> <<else>> <span class="brothel-btn success small" style="padding: 2px;"><<button "🏥" "BrothelWorkerManagement_SetAssign">> <<set $mgmtWorkerId = _prostId>> <<set $mgmtNewAssignment = "medical">> <</button>></span> <</if>> <</if>> <<if $playerBrothel.upgrades.relaxation>> <<if _assignment == "relaxation">> <div style="background: #ff9800; padding: 6px 10px; border-radius: 6px; color: #fff; font-size: 10px;">🛋️</div> <<else>> <span class="brothel-btn special small" style="padding: 2px;"><<button "🛋️" "BrothelWorkerManagement_SetAssign">> <<set $mgmtWorkerId = _prostId>> <<set $mgmtNewAssignment = "relaxation">> <</button>></span> <</if>> <</if>> /* Room assignment - always available */ <<if _assignment == "room">> <div style="background: #607D8B; padding: 6px 10px; border-radius: 6px; color: #fff; font-size: 10px;">🚪</div> <<else>> <span class="brothel-btn neutral small" style="padding: 2px;"><<button "🚪" "BrothelWorkerManagement_SetAssign">> <<set $mgmtWorkerId = _prostId>> <<set $mgmtNewAssignment = "room">> <</button>></span> <</if>> </div> </div> <</capture>> <</if>> <</for>> </div> </fieldset> <div class="brothel-btn-container" style="margin-top: 15px;"> <span class="brothel-btn neutral"><<button "← Back to Hall" "PlayerBrothel_Main">><</button>></span> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $playerBrothel.workerAssignments[$mgmtWorkerId] = $mgmtNewAssignment>> <<unset $mgmtWorkerId>> <<unset $mgmtNewAssignment>> <<goto "BrothelWorkerManagement">> <</nobr>>
<<nobr>> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/RedLightDistrict/Red_Light_District.png">> <<timed 0.2s>> <div class="centre-text">Red Light District</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn-container"> <div class="btn"><<button "Photo Studio" "PhotoStudio">><</button>></div> <div class="btn"><<button "Porn Studio" "PornStudio">><</button>></div> /*<div class="btn"><<button "Strip Club" "SC_StripClub">><</button>></div>*/ <div class="btn"><<button "Night Club" "Nightclub_Entry">><</button>></div> <div class="btn"><<button "Brothel" "PlayerBrothel_Entry">><</button>></div> </div> <div class="btn padding-top"><<Travel "Leave" "Campus" "padding-top">></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> <<if $dateTime.hours < 18>> <div class="btn"><<button "Wait until evening" "RedLightDistrict">> <<set _tempTime = {minutes: 0, hours: 17}>> <<SetTime _tempTime>> <<SpendTime 60>> <</button>></div> <</if>> </div> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $gameSettings.allowSaves = false>> <<set $canShowStatsBtn = false>> <<set _charPic = "Media\\Characters\\QuestChars\\Other\\nightclub_bouncer.jpeg">> <img class="chat-image" @src="_charPic" alt="Avatar"> <<set _ncEntry = $player.dailyEvents.isEventRegistered($player.info.id, "NC_Entry")>> <<set _repa = $player.info.reputation.nightclub.value >= 50>> <<ChatMessage 'Entry: $50 for men, free for women'>> <<if _ncEntry == true>> <<ChatMessage 'You’ve already paid for admission today.'>> <<elseif _repa >= 70>> <<Chat $interactionNpc 'Welcome *Your reputation is very high, so you are allowed to enter free of charge.*'>> <</if>> <<if $player.gender() == "Male" && _ncEntry == false && _repa < 70>> <<if $player.money >= 50>> <div class="btn padding-top"><<button "Pay ($50)" "NC_DanceFloor">> <<set $gameSettings.allowSaves = true>> <<set $canShowStatsBtn = true>> <<set $player.money -= 50>> <<run $player.dailyEvents.registerEvent($player.info.id, "NC_Entry", 1)>> <</button>></div> <<else>> <div class="btn non-interacting"><<button "Pay ($50)">><</button>></div> <</if>> <<else>> <div class="btn padding-top"><<button "Enter" "NC_DanceFloor">> <<set $gameSettings.allowSaves = true>> <<set $canShowStatsBtn = true>> <</button>></div> <</if>> <div class="btn padding-top"><<button "Leave" $player.info.currentLocation>> <<set $gameSettings.allowSaves = true>> <<set $canShowStatsBtn = true>> <</button>></div> <</nobr>>
<<nobr>> <<EachLoc>> <<SaveLocation>> <<SetBackground "Media/Locations/City/RedLightDistrict/PhotoStudio.jpg">> <<timed 0.2s>> <div class="centre-text">Photo Studio</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn-container"> <div class="btn"><<button "Leave" "RedLightDistrict">><</button>></div> </div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> <<if $dateTime.hours < 8>> <div class="btn"><<button "Wait for the photographer" "PhotoStudio">> <<set _tempTime = {minutes: 0, hours: 7}>> <<SetTime _tempTime>> <<SpendTime 60>> <</button>></div> <</if>> </div> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/RedLightDistrict/PornStudio.jpeg">> <<timed 0.2s>> <div class="centre-text">Porn studio</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn-container"> <div class="btn"><<button "Leave" "RedLightDistrict">><</button>></div> </div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> <<if $dateTime.hours < 8>> <div class="btn"><<button "Wait for the director" "PornStudio">> <<set _tempTime = {minutes: 0, hours: 7}>> <<SetTime _tempTime>> <<SpendTime 60>> <</button>></div> <</if>> </div> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/RedLightDistrict/Strip Club/SC_Bar.jpg">> <<timed 0.2s>> <div class="centre-text">Bar</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Back" "SC_StripClub">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/RedLightDistrict/Strip Club/SC_StripClub.jpg">> <<timed 0.2s>> <div class="centre-text">Strip Club</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Bar" "SC_Bar">><</button>></div> <div class="btn padding-top"><<button "Leave" "RedLightDistrict">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/SkidRow/SR_Motel.jpg">> <<timed 0.2s>> <div class="centre-text">Motel</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <<if $player.dailyEvents.isEventRegistered($player.info.id, "RentAMotelRoom") == false>> <<if $player.money >= 100>> <div class="btn"><<button "Rent a room ($100)" "SR_Motel">> <<run $player.dailyEvents.registerEvent($player.info.id, "RentAMotelRoom", 1)>> <<set $player.money -= 100>> <</button>></div> <<else>> <div class="btn non-interacting"><<button "Rent a room ($100)">><</button>></div> <</if>> <<else>> <div class="btn"><<button "Motel Room" "SR_Motel_Room">><</button>></div> <</if>> <div class="btn padding-top"><<button "Leave" "SR_SkidRow">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/SkidRow/Motel/Room.jpg">> <<timed 0.2s>> <div class="centre-text">Motel Room</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Leave" "SR_Motel">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> <<SleepButton>> </div> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/SkidRow/SR_Shop.jpg">> <<timed 0.2s>> <div class="centre-text">Shop</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Leave" "SR_SkidRow">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/SkidRow/SkidRow.jpg">> <<timed 0.2s>> <div class="centre-text">Skid Row</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn-container"> <div class="btn"><<button "Warehouse" "SR_Warehouse">><</button>></div> <div class="btn"><<button "Shop" "SR_Shop">><</button>></div> <div class="btn"><<button "Motel" "SR_Motel">><</button>></div> <div class="btn"><<button "Underground Fight Gym" "Underground_Fight_Gym">><</button>></div> <<if getQuestState("rayna_voss_quest1") == "active" && getTaskState("rayna_voss_quest1", "After dark, infiltrate the BioGenesis basement in Skid Row") != 'completed'>> <div class="btn"><<button "Basement" "BG_Basement_Entrance">><</button>></div> <</if>> </div> <div class="btn padding-top"><<Travel "Leave" "Campus" "padding-top">></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/SkidRow/Warehouse/Warehouse.jpg">> <<timed 0.2s>> <div class="centre-text">Warehouse</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn padding-top"><<button "Leave" "SR_SkidRow">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <<done>><<LocationEvent 'Mad Dog' 'MadDog_Interaction' "transition" "Media//Characters//QuestChars//MadDog//MadDog.jpg">><</done>> <</timed>> <<include "Check_SkidRow_Quests">> <</nobr>>
<<nobr>> <<if getQuestState("meet_mad_dog") == "active">> <<goto "MadDog_Quest1_Warehouse_Scene">> <<elseif getQuestState("meet_mad_dog") == undefined>> <<goto "Check_SkidRow_Quests_Leave">> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "GetCharactersMadDog_Quest1">> <<ChatWithoutNPC 'Gangster' _gangsterImg 'Hey, you! You\'re fucked if you don\'t fuck off right now!'>> <<LockSettings>> <div class="btn padding-top"><<button "Leave" "SR_SkidRow">><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/SkidRow/Warehouse/Locker_Room.jpg">> <<timed 0.2s>> <div class="centre-text">Locker Room</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Shower Room" "UFG_Shower_Room">><</button>></div> <div class="btn padding-top"><<button "Leave" "Underground_Fight_Gym">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/SkidRow/Warehouse/Shower_Room.jpg">> <<timed 0.2s>> <div class="centre-text">Shower Room</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Leave" "UFG_Locker_Room">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/SkidRow/Warehouse/Warehouse_Basement.jpg">> <<timed 0.2s>> <div class="centre-text">Fight Club</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn"><<button "Locker Room" "UFG_Locker_Room">><</button>></div> <div class="btn padding-top"><<button "Leave" "SR_SkidRow">><</button>></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> </div> </fieldset> </div> <<PeopleAround>> <<if $player.characterEvents.isEventRegistered($player.info.id, "GrantMeet") == false>> <<done>><<LocationEvent 'Grant Maddox' 'Grant_FirstMeet' "transition" "Media//Characters//QuestChars//UFG//Grant Maddox.jpg">><</done>> <<else>> <<done>><<LocationEvent 'Grant Maddox' 'Grant_Checker' "transition" "Media//Characters//QuestChars//UFG//Grant Maddox.jpg">><</done>> <</if>> <<done>><<LocationEvent 'Tess Carter' 'Tess_Checker' "transition" "Media//Characters//QuestChars//UFG//Tess Carter.jpg">><</done>> <<done>><<LocationEvent 'Clay Harper' 'Clay_Checker' "transition" "Media//Characters//QuestChars//UFG//Clay Harper.jpg">><</done>> <<done>><<LocationEvent 'Marcus Bell' 'Marcus_Checker' "transition" "Media//Characters//QuestChars//UFG//Marcus Bell_M.jpg">><</done>> <</timed>> <</nobr>>
<<nobr>> <<SaveLocation>> <<EachLoc>> <<SetBackground "Media/Locations/City/RedLightDistrict/Red_Light_District.png">> <<timed 0.2s>> <div class="centre-text">Red Light District</div> <div class="grid-row-twice"> <fieldset> <legend>Navigation</legend> <div class="btn-container"> <div class="btn"><<button "Photo Studio" "PhotoStudio">><</button>></div> <div class="btn"><<button "Porn studio" "PornStudio">><</button>></div> </div> <div class="btn padding-top"><<Travel "Leave" "Campus" "padding-top">></div> </fieldset> <fieldset> <legend>Activity</legend> <div class="btn-container"> <<EachActions>> <<if $dateTime.hours < 18>> <div class="btn"><<button "Wait until evening" "RedLightDistrict">> <<set _tempTime = {minutes: 0, hours: 17}>> <<SetTime _tempTime>> <<SpendTime 60>> <</button>></div> <</if>> </div> </fieldset> </div> <<PeopleAround>> <</timed>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _aliceIcon = "Media\\Characters\\QuestChars\\Alice\\Alice.png">> <<DrawImg _aliceIcon>> <<ChatMessage 'You step into Sarah\'s room, but she isn\'t there. Instead Alice—your friend\'s sister\'s friend—lounges on the couch, dark hair cascading over her shoulders. A black T‑shirt hugs her firm breasts, nipples faintly imprinting the fabric. She doesn\'t even glance up as you approach, yet you already know you won\'t back down.'>> <<switch $player.gender()>> <<case "Male">> <div class="btn padding-top"><<button "Dominant path" "AliceQuest1_Start_Male_Dom">><<run $player.characterEvents.registerEvent($player.info.id, "AliceQuest1", 1)>><</button>></div> <div class="btn padding-top"><<button "Submissive path" "AliceQuest1_Start_Male_Sub">><<run $player.characterEvents.registerEvent($player.info.id, "AliceQuest1", 1)>><</button>></div> <<case "Female">> <div class="btn padding-top"><<button "Dominant path" "AliceQuest1_Start_Female_Dom">><<run $player.characterEvents.registerEvent($player.info.id, "AliceQuest1", 1)>><</button>></div> <div class="btn padding-top"><<button "Submissive path" "AliceQuest1_Start_Female_Sub">><<run $player.characterEvents.registerEvent($player.info.id, "AliceQuest1", 1)>><</button>></div> <<case "Shemale">> <div class="btn padding-top"><<button "Dominant path" "AliceQuest1_Start_Trans_Dom">><<run $player.characterEvents.registerEvent($player.info.id, "AliceQuest1", 1)>><</button>></div> <div class="btn padding-top"><<button "Submissive path" "AliceQuest1_Start_Trans_Sub">><<run $player.characterEvents.registerEvent($player.info.id, "AliceQuest1", 1)>><</button>></div> <</switch>> <div class="btn padding-top"><<button "Leave" $player.info.currentLocation>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _aliceIcon = "Media\\Characters\\QuestChars\\Alice\\Alice.png">> <<DrawImage _aliceIcon>> <<ChatWithoutNPC 'Alice' _aliceIcon 'Hey, I\'m Sarah\'s friend… well, her brother\'s, actually *— you say, voice confident with a hint of mockery.*'>> <<ChatMessage 'Alice finally looks up, lips curling into a smug smirk. She sets her phone aside, crosses one leg over the other, and leans forward—clearly ready to put you in your place.'>> <<ChatWithoutNPC 'Alice' _aliceIcon 'Seriously? That\'s all you\'ve got? I almost told you to fuck off, but… *She squints, studying you.* Tell me, you like being in charge, don\'t you?'>> <<Chat $player '*Warmth spreads between your legs at the challenge; you hold her gaze and step closer.* Yeah, I do. What about you? Wanna try submitting to me for a change?'>> <<ChatMessage 'Alice freezes, brows shooting up; she clearly didn\'t expect that.'>> <<ChatWithoutNPC 'Alice' _aliceIcon 'Me? Submit? Are you fucking kidding?'>> <<Chat $player '*You close the distance, faces nearly touching, and murmur firmly:* Not kidding. Come on, Alice, I can see you\'re curious. Try it—I promise you\'ll like it.'>> <<ChatMessage 'She swallows; a faint flush tints her cheeks, dominance faltering.'>> <<ChatWithoutNPC 'Alice' _aliceIcon 'Fine… but if I don\'t like it, you\'ll regret it.'>> <<ChatMessage 'Grinning, you seize her wrist, yank her upright, and spin her so her back presses to your chest. She gasps but doesn\'t resist.'>> <<Chat $player 'Take off your jeans. You\'re mine now.'>> <<ChatMessage 'Hands trembling, she unbuttons her jeans and slides them, along with black lace panties, to her knees—baring a firm, faintly pink ass. You caress the smooth skin; your own pussy dampens with anticipation.'>> <<Chat $player 'Bend over.'>> <<ChatMessage 'Slowly she obeys, bracing on the couch. Between her parted thighs her pussy already glistens. You step back to admire, then deliver a sharp smack. *Slap!* The sound echoes; Alice yelps, and wetness beads along her slit. A second, harder strike leaves a red print; your fingers graze slick lips, making her tremble.'>> <<Video "Media\\Characters\\QuestChars\\Alice\\sex\\spanking.mp4">> <<Chat $player 'You like it, don\'t you?'>> <<ChatWithoutNPC 'Alice' _aliceIcon 'I… don\'t know, *she breathes, voice shaking with lust.*'>> <<ChatMessage 'You spank her again—then again—each blow drawing louder moans. Droplets trail down her thigh; her legs wobble. After a ringing smack she convulses, moans rising to a scream as orgasm rips through her: pussy clenching, heat squirting, ass glowing red.'>> <<ChatMessage 'Alice collapses onto the couch, panting, face awash with shock and pleasure. You stand over her, chest heaving, cunt throbbing with need.'>> <<Chat $player 'So, Alice, how\'d you like being my little slut?'>> <<ChatMessage 'Still catching her breath, she looks up—eyes bright, cheeks flushed.'>> <<ChatWithoutNPC 'Alice' _aliceIcon 'Maybe… yeah. But don\'t think I\'m giving up.'>> <<ChatMessage 'You laugh softly, knowing this is only the beginning.'>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _aliceIcon = "Media\\Characters\\QuestChars\\Alice\\Alice.png">> <<DrawImage _aliceIcon>> <<ChatMessage 'You step into Sarah\'s room, but she isn\'t there. Instead Alice—your friend\'s sister\'s friend—lounges on the couch, dark hair spilling over her shoulders. A black T‑shirt clings to her firm breasts, nipples faintly pressing through the fabric. She doesn\'t even glance up as you approach, yet you know you won\'t back down.'>> <<Chat $player 'Hey, I\'m Sarah\'s friend… well, her brother\'s, actually *— you start, voice confident with a hint of mockery.*'>> <<ChatMessage 'Alice looks up, lips curling into a smug smirk. She sets her phone aside, crosses her legs, and leans forward—clearly ready to put you in your place.'>> <<ChatWithoutNPC 'Alice' _aliceIcon 'Seriously? That\'s all you\'ve got? I almost told you to fuck off, but… *She pauses, squinting.* Tell me, you like being in charge, don\'t you?'>> <<Chat $player '*Your cock stiffens at the challenge.* Yeah, I do. What about you? Wanna try submitting to me for a change?'>> <<ChatMessage 'Alice freezes, brows shooting up.'>> <<ChatWithoutNPC 'Alice' _aliceIcon 'Me? Submit? Are you fucking kidding?'>> <<Chat $player '*You lean in, faces almost touching, and murmur firmly:* Not kidding. Come on, Alice, I can see you\'re curious. Try it—I promise you\'ll like it.'>> <<ChatMessage 'She swallows; a faint flush colors her cheeks.'>> <<ChatWithoutNPC 'Alice' _aliceIcon 'Fine… but if I don\'t like it, you\'ll regret it.'>> <<ChatMessage 'Grinning, you seize her wrist, yank her up, spin her so her back presses to your chest. She gasps but doesn\'t resist; heat radiates through the thin fabric between you.'>> <<Chat $player 'Take off your jeans. You\'re mine now.'>> <<ChatMessage 'Hands trembling, she unbuttons her jeans and slides them—along with black lace panties—to her knees, baring a smooth, faintly pink ass. Your palm glides over her skin; she tenses under your touch.'>> <<Chat $player 'Bend over.'>> <<ChatMessage 'Slowly she obeys, bracing on the couch. Between parted thighs her pussy glistens, already wet despite her doubts. You step back, admire the view, then deliver a sharp smack—*slap!*—echoing through the room. Alice yelps; wetness beads along her slit. A second, harder strike leaves a red print.'>> <<Video "Media\\Characters\\QuestChars\\Alice\\sex\\spanking.mp4">> <<Chat $player 'You like it, don\'t you?'>> <<ChatWithoutNPC 'Alice' _aliceIcon 'I… don\'t know, *she breathes, voice quivering with lust.*'>> <<ChatMessage 'You spank her again and again; each blow elicits louder moans. Droplets trail down her thigh, legs beginning to buckle. After another ringing smack she shudders violently, moans rising to a scream as orgasm tears through her—pussy clenching, wet heat squirting, ass glowing red.'>> <<ChatMessage 'Alice collapses onto the couch, panting, face a blend of shock and pleasure. You stand over her, smirking, cock rock‑hard from the sight of her submission.'>> <<Chat $player 'So, Alice, how\'d you like being my little slut?'>> <<ChatMessage 'She looks up, still catching her breath.'>> <<ChatWithoutNPC 'Alice' _aliceIcon 'Maybe… yeah. But don\'t think I\'m giving up.'>> <<ChatMessage 'You laugh softly, knowing this is only the beginning.'>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _aliceIcon = "Media\\Characters\\QuestChars\\Alice\\Alice.png">> <<DrawImage _aliceIcon>> <<ChatMessage 'You step into Sarah\'s room, but she isn\'t there. Instead Alice—your friend\'s sister\'s friend—lounges on the couch, dark hair cascading over her shoulders. A black T‑shirt clings to her firm breasts, nipples faintly pressing through the fabric. She doesn\'t even glance up as you approach, yet your cock hardens beneath your skirt at the thought of what comes next.'>> <<Chat $player 'Hey, I\'m Sarah\'s friend… well, her brother\'s, actually *— you say, voice confident with a hint of mockery.*'>> <<ChatMessage 'Alice looks up, lips curling into a smug smirk. She sets her phone aside, crosses her legs, and leans forward—clearly ready to put you in your place.'>> <<ChatWithoutNPC 'Alice' _aliceIcon 'Seriously? That\'s all you\'ve got? I almost told you to fuck off, but… *She squints at you.* Tell me, you like being in charge, don\'t you?'>> <<Chat $player '*Your cock throbs at the challenge as you step closer.* Yeah, I do. What about you? Wanna try submitting to me for a change?'>> <<ChatMessage 'Alice freezes, brows shooting up.'>> <<ChatWithoutNPC 'Alice' _aliceIcon 'Me? Submit? Are you fucking kidding?'>> <<Chat $player '*Leaning in until your faces nearly touch, you murmur:* Not kidding. Come on, Alice, I can see you\'re curious. Try it—I promise you\'ll like it.'>> <<ChatMessage 'She swallows; a faint flush tints her cheeks.'>> <<ChatWithoutNPC 'Alice' _aliceIcon 'Fine… but if I don\'t like it, you\'ll regret it.'>> <<ChatMessage 'Grinning, you seize her wrist, yank her from the couch, and spin her so her back presses to your chest. She gasps but doesn\'t resist; your cock, rock‑hard, strains against your panties.'>> <<Chat $player 'Take off your jeans. You\'re mine now.'>> <<ChatMessage 'Hands trembling, she unbuttons her jeans and slides them—along with black lace panties—to her knees, baring a firm, faintly pink ass. Your palm glides over her skin; your cock pulses, lifting the hem of your skirt.'>> <<Chat $player 'Bend over.'>> <<ChatMessage 'Slowly she obeys, bracing on the couch. Between parted thighs her pussy glistens. You step back to admire, then deliver a sharp smack—*slap!*—echoing through the room. Alice yelps; wetness beads along her slit. A second, harder strike leaves a red print as your fingers graze slick lips, drawing a moan.'>> <<Video "Media\\Characters\\QuestChars\\Alice\\sex\\spanking.mp4">> <<Chat $player 'You like it, don\'t you?'>> <<ChatWithoutNPC 'Alice' _aliceIcon 'I… don\'t know, *she breathes, voice shaking with lust.*'>> <<ChatMessage 'You spank her again—then again—each blow louder than the last. Droplets trail her thigh; your cock juts hot and hard beneath the skirt. After a ringing smack she convulses, moans ripping into a scream as orgasm floods her—pussy clenching, heat squirting, ass glowing red.'>> <<ChatMessage 'Alice collapses onto the couch, panting, face a mix of shock and pleasure. You stand over her, smirking, cock still protruding and glistening with precum.'>> <<Chat $player 'So, Alice, how\'d you like being my little slut?'>> <<ChatMessage 'She looks up through heavy breaths.'>> <<ChatWithoutNPC 'Alice' _aliceIcon 'Maybe… yeah. But don\'t think I\'m giving up.'>> <<ChatMessage 'You laugh softly, knowing this is only the beginning.'>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _aliceIcon = "Media\\Characters\\QuestChars\\Alice\\Alice.png">> <<DrawImage _aliceIcon>> <<ChatMessage 'You step into Sarah\'s room, but she isn\'t there. Instead Alice—your friend\'s sister\'s friend—lies sprawled on the couch, sharp gaze and commanding posture quickening your pulse. Dark hair flows over her shoulders, and a black T‑shirt clings to her firm breasts, nipples faintly visible through the fabric. She doesn\'t glance up as you approach, yet your body already reacts to her vibe.'>> <<Chat $player 'Hey, I\'m Sarah\'s friend… well, her brother\'s, really *— you say, trying to mask the slight tremor in your voice.*'>> <<ChatMessage 'Alice finally looks up, lips twisting into a disdainful—yet undeniably sexy—smirk. She sets her phone aside, slowly crosses her legs (giving you a fleeting glimpse of tight‑jean‑wrapped thighs), and leans forward, eyes stripping you bare.'>> <<ChatWithoutNPC 'Alice' _aliceIcon 'Seriously? That\'s all you can muster? I almost told you to fuck off, but… *She narrows her green eyes.* Tell me, do you like it when someone like me dominates you?'>> <<ChatMessage 'Heat pools between your legs at her words; her challenge only turns you on more.'>> <<Chat $player 'Yeah, I do. *You whisper, voice thick with desire.*'>> <<ChatMessage 'Alice laughs—a low, throaty sound that sends shivers down your spine. Rising, she closes the distance; her sharp, musky scent makes you dizzy. Her hand presses to your chest, fingers gripping your blouse lightly… then shoves you back.'>> <<ChatWithoutNPC 'Alice' _aliceIcon 'On your knees, slut.'>> <<ChatMessage 'You drop instantly, staring up at her; your pussy already throbs with excitement. Alice looms above, hands on hips, almost godlike.'>> <<ChatWithoutNPC 'Alice' _aliceIcon 'Wanna lick my pussy? Prove you\'re worth it first—tell me how pathetic you are, right now.'>> <<Chat $player '*Heat consumes you; panties soaked, you lower your head and rasp:* I\'m pathetic… I\'ll do anything you want, Alice.'>> <<ChatMessage 'Eyes flashing with lust, she unbuttons her jeans, sliding them and black lace panties down. Her pussy—pink, swollen, glistening—greets you beneath a neat triangle of dark hair. She sinks onto the couch, legs spread wide.'>> <<ChatWithoutNPC 'Alice' _aliceIcon 'Crawl to me *— she pats her thigh.* Lick me until I cum all over your face.'>> <<ChatMessage 'Completely under her spell, you crawl forward, inner thighs rubbing, wetness trickling downward. Between her legs you inhale her sweet‑tangy scent and press your lips to slick flesh. Your tongue parts her folds, tasting heat and juice. Alice moans, hips twitching; she grabs your hair, pulling you closer.'>> <<Video "Media\\Characters\\QuestChars\\Alice\\sex\\lick.mp4">> <<ChatWithoutNPC 'Alice' _aliceIcon 'Deeper.'>> <<ChatMessage 'Obedient, you bury your tongue inside her, then suck her swelling clit. Flow gathers, coating your chin. Her moans rise; hips grind against your face, smearing wetness over your skin.'>> <<ChatWithoutNPC 'Alice' _aliceIcon 'Yes—lick me like the slut you are!'>> <<ChatMessage 'Her grip in your hair hurts, but you keep pace until her thighs quake and her pussy clenches. With a scream she orgasms, hot juices flooding your mouth as she presses your head tighter.'>> <<ChatMessage 'When she finally releases you, you fall back gasping—cheeks slick, chest heaving, pussy burning with unmet need. Alice wipes her thighs with her shirt\'s hem, pulls panties and jeans up, then regards you with a lazy, satisfied smirk.'>> <<ChatWithoutNPC 'Alice' _aliceIcon 'Not bad for a first go. Maybe I\'ll fuck your face again—if you\'re good.'>> <<ChatMessage 'You remain on your knees, drenched in her scent and taste—wholly surrendered to her will.'>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _aliceIcon = "Media\\Characters\\QuestChars\\Alice\\Alice.png">> <<DrawImage _aliceIcon>> <<ChatMessage 'You step into Sarah\'s room, but she isn\'t there. Instead Alice—your friend\'s sister\'s friend—lies sprawled on the couch, sharp gaze and commanding posture drying your mouth. Long dark hair drapes her shoulders, and a black T‑shirt hugs firm breasts, nipples faint beneath the fabric. She doesn\'t even glance up, yet your heart already pounds.'>> <<Chat $player 'Hey, I\'m Sarah\'s friend… well, her brother\'s, really *— you say, trying to hide the tremor in your voice.*'>> <<ChatMessage 'Alice looks up, lips twisting into a disdainful—yet damn‑sexy—smirk. She sets her phone aside, slowly crosses her legs, and leans forward, eyes stripping you bare.'>> <<ChatWithoutNPC 'Alice' _aliceIcon 'Seriously? That\'s all you can muster? I almost told you to fuck off, but… *She narrows green eyes.* Tell me, do you like it when someone like me dominates you?'>> <<ChatMessage 'Heat flares; your cock stiffens at her words.'>> <<Chat $player 'Yeah, I do.'>> <<ChatMessage 'A low, throaty laugh rolls from Alice, shivering down your spine. She stands, closes the distance, musky scent dizzying. Fingers grip your shirt—then shove you back.'>> <<ChatWithoutNPC 'Alice' _aliceIcon 'On your knees, slut.'>> <<ChatMessage 'You drop instantly; your cock throbs as you stare up. Alice looms, hands on hips.'>> <<ChatWithoutNPC 'Alice' _aliceIcon 'Wanna lick my pussy? Prove you\'re worth it first—tell me how pathetic you are, right now.'>> <<Chat $player 'I\'m pathetic… I\'ll do anything you want, Alice.'>> <<ChatMessage 'Her smirk widens; lust flashes in her eyes. She unbuttons jeans, sliding them and black lace panties down, baring a pink, glistening pussy beneath a neat triangle of dark hair. Sinking onto the couch, she spreads wide.'>> <<ChatWithoutNPC 'Alice' _aliceIcon 'Crawl to me, *— she pats her thigh—* and lick me until I cum all over your face.'>> <<ChatMessage 'Completely enthralled, you crawl forward; your cock rubs your pants. Between her thighs you inhale sweet‑tangy arousal and press lips to slick flesh. Tongue parts her folds; Alice moans, hips twitch, and she fists your hair.'>> <<Video "Media\\Characters\\QuestChars\\Alice\\sex\\lick_male.mp4">> <<ChatWithoutNPC 'Alice' _aliceIcon 'Deeper.'>> <<ChatMessage 'You bury your tongue, suck her swelling clit; wetness coats your chin. Her hips grind harder, smearing juice across your face.'>> <<ChatWithoutNPC 'Alice' _aliceIcon 'Yes, lick me like the slut you are.'>> <<ChatMessage 'You work faster until her thighs quake; pussy clenches around your tongue. With a scream she climaxes, hot wave flooding your mouth while she holds you tight. When she finally releases, you fall back—gasping, cock aching. She wipes glistening thighs, pulls panties and jeans up, then tosses a lazy, satisfied smirk.'>> <<ChatWithoutNPC 'Alice' _aliceIcon 'Not bad for a first go. Maybe I\'ll fuck your face again—if you\'re good.'>> <<ChatMessage 'You remain on your knees, drenched in her scent and taste, utterly surrendered to her will.'>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _aliceIcon = "Media\\Characters\\QuestChars\\Alice\\Alice.png">> <<DrawImage _aliceIcon>> <<ChatMessage 'You step into Sarah’s room, but she isn’t there. Instead Alice—your friend’s sister’s friend—lies sprawled on the couch, sharp gaze and commanding posture sending your pulse racing. Dark hair flows over her shoulders, and a black T‑shirt hugs firm breasts, nipples faint beneath the fabric. Your cock already stirs beneath your skirt in response to her aura.'>> <<Chat $player 'Hey, I\'m Sarah’s friend… well, her brother’s, really *— you say, trying to mask the tremor in your voice.*'>> <<ChatMessage 'Alice looks up, lips twisting into a disdainful—yet undeniably sexy—smirk. She sets her phone aside, slowly crosses her legs, and leans forward, eyes stripping you bare.'>> <<ChatWithoutNPC 'Alice' _aliceIcon 'Seriously? That’s all you can muster? I almost told you to fuck off, but… *She narrows her green eyes.* Tell me, do you like it when someone like me dominates you?'>> <<Chat $player '*A jolt of heat surges; your cock hardens fully.* Yeah, I do.'>> <<ChatMessage 'A low, throaty laugh rolls from Alice, shivering down your spine. She rises and closes the distance—musk sharp and dizzying—then grips your blouse and shoves you back.'>> <<ChatWithoutNPC 'Alice' _aliceIcon 'On your knees, slut.'>> <<ChatMessage 'You drop instantly; your cock throbs, straining the skirt. Alice looms godlike, hands on hips.'>> <<ChatWithoutNPC 'Alice' _aliceIcon 'Wanna lick my pussy? Prove you’re worth it first—tell me how pathetic you are, right now.'>> <<Chat $player '*Heat floods you; precum stains your panties.* I’m pathetic… I’ll do anything you want, Alice.'>> <<ChatMessage 'Smirking, she unbuttons her jeans and slides them, along with black lace panties, to mid‑thigh—revealing a pink, glistening pussy beneath a neat triangle of dark hair. She reclines on the couch, legs spread wide.'>> <<ChatWithoutNPC 'Alice' _aliceIcon 'Crawl to me *— she pats her thigh—* and lick me until I cum all over your face.'>> <<ChatMessage 'Under her spell, you crawl forward; your cock swings heavy and hot. Inhaling her sweet‑tangy arousal, you press lips to slick folds and part them with your tongue. Alice moans, hips twitching, fingers knotting in your hair.'>> <<Video "Media\\Characters\\QuestChars\\Alice\\sex\\lick.mp4">> <<ChatWithoutNPC 'Alice' _aliceIcon 'Deeper.'>> <<ChatMessage 'You bury your tongue, then suck her swelling clit; juice coats your chin while her hips grind against your face.'>> <<ChatWithoutNPC 'Alice' _aliceIcon 'Yes, lick me like the slut you are!'>> <<ChatMessage 'You quicken the pace until her thighs quake and pussy clenches. With a scream she erupts, hot waves flooding your mouth as she holds you tight. At last she releases you; you fall back gasping, cock jutting from beneath the skirt, slick with precum.'>> <<ChatMessage 'Alice wipes her thighs with her shirt’s edge, pulls panties and jeans up, and tosses a lazy, satisfied smirk.'>> <<ChatWithoutNPC 'Alice' _aliceIcon 'Not bad for a first go. Maybe I’ll fuck your face again—if you’re good.'>> <<ChatMessage 'You remain on your knees, drenched in her scent and taste, cock still pulsing with unmet desire—utterly surrendered to her will.'>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _aliceIcon = "Media\\Characters\\QuestChars\\Alice\\Alice.png">> <<DrawImg _aliceIcon>> <<ChatWithoutNPC 'Alice' _aliceIcon 'Ah, it\'s you again. You did well last time; how about continuing?'>> <<Chat $player 'What do you mean?'>> <<ChatWithoutNPC 'Alice' _aliceIcon 'Last time was just child\'s play; I see you\'re capable of more.'>> <<ChatWithoutNPC 'Alice' _aliceIcon 'You can train your pets. I recently acquired an apartment and set it up for training my bitches. Here, take the key if you want to train someone there. But it\'s not free; each session will cost you $200, since I spent money on the apartment and equipment.'>> <<if $player.characterEvents.isEventRegistered($player.info.id, "CanTrainNPC") == false>> <<run $player.characterEvents.registerEvent($player.info.id, "CanTrainNPC", 1)>> <</if>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _aliceIcon = "Media\\Characters\\QuestChars\\Alice\\Alice.png">> <<DrawImage _aliceIcon>> <<if $player.characterEvents.isEventRegistered($player.info.id, "AliceQuest1") == false>> <<goto "AliceQuest1_Start">> <<elseif $player.characterEvents.isEventRegistered($player.info.id, "CanTrainNPC") == false>> <<goto "AliceQuest2_Start">> <</if>> <div class="btn padding-top"><<button "Leave" $player.info.currentLocation>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $canShowStatsBtn = false>> <<set $gameSettings.allowSaves = false>> <<run $player.characterEvents.registerEvent($player.info.id, "AmandaQuest1", 1)>> <<ChatMessage 'Amanda was a sharp, confident woman with a commanding presence and a figure that turned heads. You\'d always found her intriguing—her sly smile and the way her pencil skirts hugged her curves didn\'t help. On a whim, you decided to pop in and say hi.'>> <<Chat $interactionNpc 'Well, look who it is. *She purrs, leaning back in her chair, her eyes glinting with amusement.* To what do I owe this visit, troublemaker?'>> <<Chat $player 'Just passing by. *You grin, leaning against the doorframe.* Thought I\'d see how the corporate queen is holding up.'>> <<Chat $interactionNpc 'Flatterer. You\'re lucky I\'m in a good mood. *Her laugh is a low, throaty sound that sends a shiver down your spine; a flicker of frustration creases her brow.* Actually, you might be a lifesaver. I forgot some critical documents at home—contracts for a deal we\'re closing tomorrow. I can\'t leave the office right now. Could you be a dear and grab them for me?'>> <<Chat $player 'Sure thing, Amanda. Where are they?'>> <<Chat $interactionNpc 'In my bedroom. Hurry back, and I\'ll owe you one.'>> <<ChatMessage 'You\'re heading home to pick up Amanda\'s necessary documents. You head out, the errand feeling like a small adventure. Her perfume still lingers in the bedroom. In the top drawer you find the documents—along with a silky black thong tucked away like a secret. Shaking your head with a smirk, you grab the papers and hurry back.'>> <<ChatMessage 'The office corridors are quiet now, most employees gone for the day. Near Amanda\'s door you pass Mr. Grayson\'s office; it stands slightly ajar, and a low, guttural moan stops you in your tracks. Curiosity wins. Heart pounding, you nudge the door just enough to peek inside.'>> <<ChatMessage 'Mr. Grayson—silver‑fox and CEO—lounges in his leather chair, pants pooled at his ankles. Between his spread thighs kneels a young intern, glossy red lips wrapped around his thick, veiny cock. Wet, rhythmic slurps fill the room, blending with his ragged breaths.'>> <<ChatWithoutNPC 'Mr. Grayson' 'Media\\Characters\\QuestChars\\Other\\Mr. Grayson.png' 'Fuck, you\'re good at this.'>> <<Video "Media\\Characters\\QuestChars\\Amanda\\Quest\\1\\blowjob.mp4">> <<ChatMessage 'The intern takes him deeper, cheeks hollowing with each eager pull. Grayson tangles his fingers in her ponytail, guiding her pace, hips twitching.'>> <<ChatWithoutNPC 'Mr. Grayson' 'Media\\Characters\\QuestChars\\Other\\Mr. Grayson.png' 'I\'m close.'>> <<ChatMessage 'With a guttural moan he spills down her throat; she swallows every drop, licking the last strand of cum from his glistening tip before smirking up at him. You back away, pulse racing, and head straight to Amanda.'>> <<ChatMessage 'She looks up from her computer as you enter.'>> <<Chat $interactionNpc 'My hero returns. *She teases, plucking the documents from your hand.* You\'re a lifesaver.'>> <<Chat $player 'No problem. Anything else you need?'>> <<Chat $interactionNpc 'Not for now. *She leans forward, cleavage just visible, eyes locking on yours.* But stick around, and I might find something for you to do.'>> <<ChatMessage 'You leave with a grin, replaying the day in your mind—Amanda\'s knowing smile, the silky thong in her drawer, and the filthy secret you witnessed in Grayson\'s office. One hell of a detour.'>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <</button>></div> <</nobr>>
<<nobr>> <<if $player.characterEvents.isEventRegistered($player.info.id, "AmandaQuest1") == false>> <<goto "Amanda_Quest1_Start">> <<else>> <<if $player.characterEvents.isEventRegistered($player.info.id, "AmandaQuest1") == true && $player.characterEvents.isEventRegistered($player.info.id, "AmandaPicnicEvent") == false && $playercars && $playercars.length > 0>> <<goto "Amanda_Picnic_Event">> <</if>> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _victorIcon = "Media\\Characters\\QuestChars\\Bar\\VictorBarker.jpeg">> <<DrawImage _victorIcon>> <<ChatMessage 'The bustling city streets shine beneath the neon glow of the local bar. The smell of cheap beer fills the air as you walk in. All eyes stop and examine you as you enter. One man in particular sits alone at a corner table. He looks up, flashes a sly smile, and motions you over.'>> <<ChatWithoutNPC "Victor" _victorIcon 'Mind joining me? *he asks*'>> <<ChatMessage 'Something about him makes you cautious, but curiosity wins out. As you take a seat he extends a hand.'>> <<ChatWithoutNPC "Victor" _victorIcon 'Victor Barker. And who might you be? *he asks with that same sly grin*'>> <<Chat $player 'I\'m… $player.info.firstName'>> <<ChatMessage 'An uneasy feeling flickers inside you, but you push it aside.'>> <<ChatWithoutNPC "Victor" _victorIcon 'Well I\'m… $player.info.firstName, care to play a little Black Jack with me? Let\'s make this interesting—how about we play for $5{,}000? *he suggests, skillfully shuffling the deck between his hands; he senses your hesitation*'>> <<ChatWithoutNPC "Victor" _victorIcon 'No no, I\'m not asking you to put up any money. I just want you to stake something else. If you lose, all you have to do is take this little pill. *He pulls out a small vial with a pink‑coloured pill.*'>> <<Chat $player 'What does it do? *you ask, raising an eyebrow*'>> <<ChatWithoutNPC "Victor" _victorIcon 'It… enhances your experience—makes you see and feel things in a whole new way. If you lose, it\'ll transform you, just for a little while of course. *He winks as he deals the cards.*'>> <div class="btn padding-top"><<button "Accept (Feminization)" "VictorBarker_Quest_1_Accept">><</button>></div> <div class="btn padding-top"><<button "Refuse" $player.info.currentLocation>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _victorIcon = "Media\\Characters\\QuestChars\\Bar\\VictorBarker.jpeg">> <<DrawImage _victorIcon>> <<run $player.characterEvents.registerEvent($player.info.id, "victorBarker_quest_01", 1)>> <<Chat $player '*You look at the pill skeptically, but curiosity gets the better of you.* Alright, dealer\'s choice. Let\'s do this.'>> <<ChatMessage 'The gentle hum of jazz drifts lazily through the dimly lit bar, mingling with clinks of glass and murmured conversation. At a secluded corner table you and Victor sit opposite each other, a worn deck of cards resting comfortably in his skilled hands. He shuffles with practiced ease, the cards fluttering into neat piles, then deals two apiece across the polished oak.'>> <<ChatMessage 'You glance down—Jack ♥ and Four ♣. Victor watches, eyes sparkling with amusement.'>> <<ChatWithoutNPC "Victor" _victorIcon 'Feeling lucky tonight? *he teases, voice smooth and relaxed*'>> <<Chat $player 'Luck has nothing to do with it. *You tap the table lightly.* Hit me.'>> <<ChatMessage 'Victor slides another card your way. Eight ♦—total twenty‑two. You frown, realizing the bust.'>> <<ChatWithoutNPC "Victor" _victorIcon 'Bust. *He smiles, amused.* You know, bravery doesn\'t always pay off.'>> <<ChatWithoutNPC "Victor" _victorIcon 'Ah‑ah‑ah—no cheating now, Kyle. We had a deal. *He slides the pill across, his hand lingering on yours, tracing your fingers.*'>> <<Chat $player 'What happens now? *you ask, eyeing the vial*'>> <<ChatWithoutNPC "Victor" _victorIcon 'Pop that in and let\'s see. *His mouth‑watering grin makes your whole body tingle; with a deep breath you decide to take it.*'>> <<run _changePill = GetNewItem("gender_change_pills_female", 1)>> <<run $player.useItem(_changePill, $player)>> <<ChatMessage 'The pill melts effortlessly on your tongue. At first nothing feels unusual—then dizziness. Your head lightens, thoughts scattering. Vision blurs. You look down: hands shrink, sleeves hang loose, pants baggy. Your voice rises a register. Every sensation sharpens—fabric against skin, the bar’s cool air, Victor’s hungry stare.'>> <<ChatMessage 'Victor stands, now towering over you. He takes your smaller hand and lifts you gently to unsteady feet.'>> <<ChatWithoutNPC "Victor" _victorIcon 'Come now, *he says softly, guiding you to the back of the bar where a doorway hides behind a curtain.*'>> <div class="btn padding-top"><<button "Follow him" "VictorBarker_Quest_1_Follow">><</button>></div> <div class="btn padding-top"><<button "Run away" $player.info.currentLocation>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _victorIcon = "Media\\Characters\\QuestChars\\Bar\\VictorBarker.jpeg">> <<DrawImage _victorIcon>> <<ChatMessage 'He leads you upstairs; each step is awkward in your clumsy new body. Every brush of cloth, every footfall is electric. Breasts—new, perky—press against your shirt. In a private room he clicks the lock behind you.'>> <<ChatMessage 'He turns, eyes dark with lust. Heat blooms through your soft, delicate form. His gaze alone feels like a touch; moisture gathers between your thighs.'>> <<ChatWithoutNPC "Victor" _victorIcon 'I\'m going to fuck you so good, baby… ahhh yeah… *he growls, advancing*'>> <<ChatMessage 'His lips crash onto yours, tongue invading. Hands roam—squeezing breasts, guiding you to the bed. Clothes vanish; cool air hardens your nipples. Victor grabs your hips, pulling you onto his hard cock while kissing down your neck—biting, licking—drawing gasps and moans.'>> <<ChatWithoutNPC "Victor" _victorIcon 'You\'re mine now, baby. All mine. My little slut. Going to fuck this tight little pussy, make you scream.'>> <<ChatMessage 'He bends you over the bed, knee spreading your legs. A firm thrust fills you, stretching you wide.'>> <<Video "Media\\Characters\\QuestChars\\Bar\\sex\\1.mp4">> <<ChatMessage 'Victor\'s hips pump, driving deep. Each slap of flesh shocks you with pleasure. Hands pinch nipples, grope ass—then *Slap!* across your cheek, making you yelp and clench.'>> <<ChatWithoutNPC "Victor" _victorIcon 'Bad girl… you\'re going to learn to take daddy\'s cock so good—gonna train this pussy up nice and tight.'>> <<ChatMessage 'He pounds harder, faster; the bed creaks. With a final thrust he empties himself inside, groaning loudly.'>> <<ChatWithoutNPC "Victor" _victorIcon 'Ahhh yeahhh… take it all, baby—every last drop! *He pulls out, pats your ass.* Clean up; shower’s through that door. We\'re not done yet, baby.'>> <<ChatMessage 'Warmth pools inside you as you wobble to the bathroom. The plush carpet tickles bare feet; breasts bounce with each step. Under the shower, hot spray caresses hypersensitive skin; you replay Victor\'s words—*my little slut*—and catch yourself smiling.'>> <<ChatMessage 'Clean and dazed, you study the mirror: a petite young woman with bright eyes and smooth curves. After exploring a moment, you slip into a tight dress Victor left—the hem flirting with your thighs, fabric straining over breasts.'>> <<ChatMessage 'Victor waits downstairs, eyes devouring you.'>> <<ChatWithoutNPC "Victor" _victorIcon 'Mmm, you clean up nicely, baby. Come here.'>> <<ChatMessage 'He pulls you close, hand low on your back, fingers grazing your ass.'>> <<ChatWithoutNPC "Victor" _victorIcon 'I want you to do something for me. I have a friend who\'s eager to join the fun. Want to meet him? *He squeezes your ass*'>> <<Chat $player 'I think that would be lovely,'>> <div class="btn padding-top"><<button "Follow him" "VictorBarker_Quest_1_Friend">><</button>></div> <div class="btn padding-top"><<button "Run away" $player.info.currentLocation>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _victorIcon = "Media\\Characters\\QuestChars\\Bar\\VictorBarker.jpeg">> <<set _jasonIcon = "Media\\Characters\\QuestChars\\Bar\\Jason.jpeg">> <<ChatMessage 'Victor kisses you hard, then guides you to his car. During the drive his hand slides up your thigh, teasing your soaked panties. You squirm; he chuckles.'>> <<ChatMessage 'At a roadside motel he leads you into a room of dark wood and leather. A man sits waiting; his eyes widen at the sight of you.'>> <<DrawImage _jasonIcon>> <<ChatWithoutNPC "Jason" _jasonIcon 'Well, well. Victor, you always find the best sluts, *he chuckles.*'>> <<ChatMessage 'Victor tightens his grip around your waist.'>> <<ChatWithoutNPC "Victor" _victorIcon 'Ahh, she\'s special—really something else.'>> <<ChatMessage 'The stranger rises—tall, muscular, a bulge already forming.'>> <<ChatWithoutNPC "Jason" _jasonIcon 'Name\'s Jason. I\'ve been waiting to play with you, *he says, stroking your cheek.*'>> <<ChatMessage 'Instinctively you kiss him; he chuckles, guiding you to the bed where you bounce on the mattress.'>> <<ChatWithoutNPC "Jason" _jasonIcon 'Strip, *Jason orders softly.*'>> <<ChatMessage 'You slide the dress off; cool air pebbles your nipples. Jason licks his lips, bends to suck a breast while fingers plunge into your slick heat, curling against a spot that makes you see stars.'>> <<Chat $player 'Ahh! Ohhh!'>> <<Video "Media\\Characters\\QuestChars\\Bar\\sex\\2.mp4">> <<ChatMessage 'He pumps you while sucking, the world blurring into raw pleasure. When he pulls away you whimper.'>> <<ChatWithoutNPC "Jason" _jasonIcon 'Don\'t worry, baby—*he grins*—I\'m far from done.'>> <<ChatMessage 'Jason strips; his thick cock stands hard. He strokes it while watching your face.'>> <<ChatWithoutNPC "Jason" _jasonIcon 'You want this inside you?' >> <<ChatMessage 'Your mind is foggy, body screaming yes. He crawls up, kisses you, explores every curve.'>> <<ChatWithoutNPC "Jason" _jasonIcon 'I\'m going to fuck you so good.'>> <<ChatMessage 'He guides the tip along your folds, then pushes in, stretching you deliciously.'>> <<ChatMessage 'Jason pounds deeper, faster; skin slaps echo. Your legs wrap around him, pulling him in.'>> <<ChatWithoutNPC "Jason" _jasonIcon 'You like that, slut? Like daddy\'s big cock? *he growls, rhythm faltering as he nears climax*'>> <<Chat $player 'I do! Ohhh fuck!'>> <<ChatMessage 'With a final erratic thrust he floods you with heat, groaning while cum spills inside then drips as he withdraws.'>> <<ChatWithoutNPC "Jason" _jasonIcon 'Thanks for the good time, slut.'>> <<ChatMessage 'He slaps your ass and leaves with Victor. Alone, you lie in a haze until your body begins to change—breasts shrinking, hips narrowing. Moments later you are yourself again: toned, familiar. Exhausted, confused, but remembering every blissful moment, you smile to yourself—maybe next time you\'ll be ready.'>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><</button>></div> <</nobr>>
<<nobr>> <<switch $interactionNpc.info.questInfo.questCharID >> <<case 0>> <<include "CheckEthanQuests">> <<case 2>> <<include "CheckSarahQuests">> <<case 3>> <<include "CheckAmandaQuests">> <<case 4>> <<include "CheckDamianQuests">> <<case 6>> <<include "CheckSketchyGuyQuests">> <<case 10>> <<include "CheckSuccubusQuest">> <</switch>> <</nobr>>
<<nobr>> <<if getQuestState("damian_contract") == "active" && getIncompleteTasksCount("damian_contract") == 1>> <<goto "CompleteContract_Damian">> <<elseif getQuestState("damian_quest3") == "active" && $player.characterEvents.isEventRegistered($player.info.id, "NightClubElevatorAccess") == false && getTaskState("damian_quest3", "Ask the club owner about the elevator") != 'completed'>> <<goto "DamianQuest3_Start">> <<elseif getQuestState("damian_quest3") == "active" && getTaskState("damian_quest3", "Earn 50 nightclub reputation points") != 'completed' && $player.info.reputation.nightclub.value >= 50>> <<goto "DamianQuest3_GetAccess">> <<elseif getQuestState("damian_quest3") == "completed" && getQuestState("damian_quest4") == undefined>> <<goto "Damian_Quest4_Start">> <<elseif getQuestState("damian_quest4") == "active" && getTaskState("damian_quest3", "Return to Damian") != 'completed'>> <<goto "Damian_Quest4_Start_Finish">> <<elseif $player.info.reputation.nightclub.value >= 70 && getQuestState("meet_mad_dog") == undefined>> <<goto "MadDog_Quest1_Start_VIP">> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "CreateDamianTarget">> <<ChatMessage 'Damian slides a small data pad across the table, his smirk never wavering.'>> <<Chat $interactionNpc 'Your target is _etheriant.info.firstName _etheriant.info.secondName. They’ve been causing problems, and someone wants them gone.'>> <<ChatMessage 'He taps the screen, pulling up an image of a rough-looking individual, their details flickering across the display.'>> <<Chat $interactionNpc 'They’re somewhere in Skid Row. A real cesspit, even by this city\'s standards. Shouldn’t be too hard to find if you know where to look.'>> <<ChatMessage 'He leans forward slightly, lowering his voice.'>> <<Chat $interactionNpc 'Make it clean. Make it quiet. And don’t come back until the job’s done.'>> <<set _targetName = _etheriant.info.firstName + " " + _etheriant.info.secondName + " must be eliminated.">> <<if getQuestState("damian_contract") == undefined>> <<run _questList = [ { id: "damian_contract", title: "Etheriant (Repeatable)", description: "Eliminate the target", state: "active", questType: "side", tasks: [ { description: _targetName, completed: false }, { description: "Report to Damian", completed: false } ], } ]>> <<CreateQuest _questList true>> <<else>> <<set _newTasks = [ { description: _targetName, completed: false}, { description: "Report to Damian", completed: false}, ]>> <<run replaceQuestTasks("damian_contract", _newTasks)>> <<set _quests = [getQuestById("damian_contract")]>> <<run activateQuest("damian_contract")>> <<CreateQuestNotification _quests>> <</if>> <<run $player.characterEvents.registerEvent($player.info.id, "GetDamianContract", 1)>> <div class="padding-top"> <div class="btn"><<button "Continue" $player.info.currentLocation>><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "CharactersData">> <<run _etheriant = CreateCharacter({ isPlayer: false, characterWork: "Etheriant", SexRole: "Active", dominance: 100, sexualPreference: "Bi", }, true)>> <<run $player.characterEvents.registerEvent(_etheriant.info.id, "knows you", 1)>> <<unset $maleNames $femaleNames $surnames>> <<run RelocateCharacters()>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $interactionNpc 'Back so soon? That’s either a good thing or a bad thing.'>> <<ChatMessage 'You place an item—proof of the completed contract—on the table. Damian eyes it for a moment before nodding approvingly.'>> <<Chat $interactionNpc 'Looks like you did the job right. I knew you had potential.'>> <<ChatMessage 'He slides a sleek metal case across the table. As you open it, you see neatly stacked bills—your reward.'>> <<Chat $interactionNpc 'As promised. Good work. Keep this up, and you’ll go far in this business.'>> <<ChatMessage 'He leans forward, resting his elbows on the table.'>> <<Chat $interactionNpc 'Now tell me… are you ready for another job?'>> <<run completeTaskByQuestID("damian_contract", "Report to Damian")>> <<run $player.characterEvents.unregisterEvent($player.info.id, "GetDamianContract")>> <<set $player.money += 2000>> <<run $player.info.reputation.nightclub.increase(3)>> <div class="padding-top"> <div class="btn"><<button "Continue" "QuestCharInteraction">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $player 'Hey Damian, I noticed an elevator back there. What\'s that all about?'>> <<Chat $interactionNpc 'Ah, that\'s the elevator for our special guests. If you wanna get access, you\'ll have to make a name for yourself around here first. Come back when you\'re popular enough. (Nightclub reputation of 50 or more required.)'>> <<run completeTaskByQuestID("damian_quest3", "Ask the club owner about the elevator")>> <<run addTaskToQuest("damian_quest3", { description: "Earn 50 nightclub reputation points", completed: false, })>> <<if $player.info.reputation.nightclub.value >= 50>> <<run completeTaskByQuestID("damian_quest3", "Earn 50 nightclub reputation points")>> <div class="btn padding-top"><<button "I already have enough of a reputation" "DamianQuest3_GetAccess">><</button>></div> <<else>> <div class="btn padding-top"><<button "Continue" "NC_VIP_Lounge">> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <</button>></div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $interactionNpc 'Nice job! You\'ve gotten pretty popular around here. Here\'s your access card—now you can head down to the club\'s lower level. Enjoy yourself!'>> <<run $player.characterEvents.registerEvent($player.info.id, "NightClubElevatorAccess", 1)>> <<if getTaskState("damian_quest3", "Earn 50 nightclub reputation points") != 'completed'>> <<run completeTaskByQuestID("damian_quest3", "Earn 50 nightclub reputation points")>> <</if>> <<run addTaskToQuest("damian_quest3", { description: "Go down to the lower level and meet the first-floor manager", completed: false, })>> <div class="btn padding-top"><<button "Continue" "NC_VIP_Lounge">><<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $interactionNpc '*His voice was low, heavy, like the bass thumping through the club\'s walls* You showed up right on time. There\'s a creature in the city that needs to be taken out. Fast. Quiet. An etheriant succubus. Don\'t expect fairy tales about winged demons with tails—this is a human, but her mind\'s been consumed by etherium. She\'s gone insane. Seduces people, breaks their will, turns them into mindless puppets. Some very powerful people handed me a contract to eliminate her. And I\'m assigning it to you.'>> <<Chat $interactionNpc 'Find her. Eliminate her. *tapping his fingers on the table* And don\'t let your guard down. Her power\'s in the etherium. She gets into your head, controls your mind. Give her a chance, and you\'ll end up another one of her dogs.'>> <<include "Damian_Quest4_CreateQuest">> <<include "DamianQuest4_CreateSuccubus">> <div class="btn padding-top"><<button "Continue" "NC_VIP_Lounge">><<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $interactionNpc 'You... *narrowed his eyes, a hint of surprise in his voice* You became an etheriant. But you\'re not a husk. You control it. That\'s... rare.'>> <<ChatMessage 'You briefly explained what happened: the fight, the victory, the ether now living inside you.'>> <<ChatMessage 'Damian listened without interrupting, his fingers still on the table.'>> <<Chat $interactionNpc 'The ether\'s yours now. You can use it. Control people, make them your servants. But you\'re not strong enough yet. For now, to break someone\'s will, you\'ll need to weaken them in a fight. Only then will the ether work.'>> <<ChatMessage 'You nodded. The new power coursed through your veins.'>> /* Next step */ <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>> <<LeaveInteractionSettings>> <<if getTaskState("damian_quest4", "Return to Damian") != 'completed'>> <<run completeTaskByQuestID("damian_quest4", "Return to Damian")>> <</if>> <<if $player.characterEvents.isEventRegistered($player.info.id, "CanTakeServants") == false>> <<run $player.characterEvents.registerEvent($player.info.id, "CanTakeServants", 1)>> <</if>> <</button>></div> <</nobr>>
<<nobr>> <<include "CharactersData">> <<run CreateCharacter({ isPlayer: false, isQuestCharacter: true, questCharID: 10, currentQuestID: 0, currentCharImg: "Media\\Characters\\QuestChars\\Other\\SuccubusEthereant.jpg", currentCharState: "Succubus", characterWork: "Succubus", SexRole: "Active", dominance: 50, gender: "Female", fat: 40, firstName: "Succubus", secondName: "Ethereant", strength: 7, vitality: 7, endurance: 7, dexterity: 7, defense: 7, sexualPreference: "Bi", clothesPreference: "women", skin: "White", age: 34, }, true)>> <<unset $maleNames $femaleNames $surnames>> <<run RelocateCharacters()>> <</nobr>>
<<nobr>> <<run _questList = [ { id: "damian_quest4", title: "Succubus Hunt", description: "Damian gave me a contract to eliminate a succubus that's been spotted in Skid Row.", state: "active", questType: "side", tasks: [ { description: "Find and eliminate the succubus", completed: false } ], } ]>> <<CreateQuest _questList true>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _battleSetControls = {attack: true, seduce: true, items: true, actions: true}>> <div class="btn padding-top"><<button "Fight">><<StartFight $player $interactionNpc _battleSetControls "CheckSuccubusQuest_win" "HuntForSuccubus_Lose">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatMessage 'You won. She gasped, twitched, and collapsed to her knees.'>> <<ChatMessage 'Then something unexpected happened. Ether poured out of her body—not smoke, not light, but something alive, pulsing. The stream hit you, flooding into you through your mouth, eyes, skin. You fell, choking, feeling the alien force fill you. But instead of breaking your mind, the ether... submitted. It became part of you.'>> <<run addTaskToQuest("damian_quest4", { description: "Return to Damian", completed: false, })>> <<if getTaskState("damian_quest4", "Find and eliminate the succubus") != 'completed'>> <<run completeTaskByQuestID("damian_quest4", "Find and eliminate the succubus")>> <</if>> <<DeleteCharacter $interactionNpc>> <<run RelocateCharacters()>> <div class="btn padding-top"><<button "Leave" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatMessage 'The succubus approached, her steps light, almost weightless. She leaned over you, her eyes gleaming with triumph.'>> <<Chat $interactionNpc 'Mine *she whispered, reaching out*'>> <<ChatMessage 'Ether flowed toward you, wrapping around your mind, but... nothing happened. Her smile faltered.'>> <<Chat $interactionNpc 'Interesting *she murmured, leaning closer* You don\'t break. You\'re... special.'>> <<ChatMessage 'Her breath smelled sweet and rotten.'>> <<Chat $interactionNpc 'I\'ve found rare prey *she said, her voice almost tender* We\'ll meet again. And I\'ll figure out what makes you tick.'>> <<ChatMessage 'With that, she melted into the shadows, leaving you lying in the dust—alive, but battered. You knew: this wasn\'t the end. She\'d be back. And next time, she\'d be ready.'>> <div class="btn padding-top"><<button "Leave" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<LockSettings>> <<set _raynaImg = 'Media//Characters//QuestChars//Detective//Detective.png'>> <<DrawImage _raynaImg>> <<ChatWithoutNPC 'Rayna' _raynaImg 'You the one Dog sent? Hope he didn\'t sell me twice.'>> <div class="btn padding-top"><<button 'I\'m here for BioGenesis intel. I\'m in.' 'Rayna_Voss_Quest1_Introduce'>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _raynaImg = 'Media//Characters//QuestChars//Detective//Detective.png'>> <<DrawImage _raynaImg>> <<ChatWithoutNPC 'Rayna' _raynaImg 'Before I leak anything—you prove you won\'t leak me. There\'s a site. Basement. SkidRow. Bring me the doc packet and we talk grown-up.'>> <<ChatWithoutNPC 'Rayna' _raynaImg 'Oh—and my source says security\'s light tonight. Shouldn\'t be many guards lurking around that basement.'>> <<run addTaskToQuest("rayna_voss_quest1", { description: "After dark, infiltrate the BioGenesis basement in Skid Row", completed: false, })>> <<run addTaskToQuest("rayna_voss_quest1", { description: "Retrieve the documents from the Skid Row basement", completed: false, })>> <<run completeTaskByQuestID("rayna_voss_quest1", "Track down Detective Rayna Voss in the city park")>> <div class="btn padding-top"><<button "Leave" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _raynaImg = 'Media//Characters//QuestChars//Detective//Detective.png'>> <<DrawImage _raynaImg>> <<ChatWithoutNPC 'Rayna' _raynaImg 'Still waiting on those documents. Don\'t drag your feet.'>> <div class="btn padding-top"><<button "Leave" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if ($dateTime.hours >= 22 || $dateTime.hours <= 4) == false>> <<ChatMessage 'It’s not time yet. You need to come between 10:00 p.m. and 4:00 a.m.'>> <div class="btn padding-top"><<button "Leave" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <<else>> <<LockSettings>> <<set _guard = 'Media//Characters//QuestChars//Other//Security.png'>> <<DrawImage _guard>> <<ChatWithoutNPC 'Guard' _guard 'Basement\'s closed. Beat it.'>> <div class="btn padding-top"><<button 'Fight' 'Rayna_Voss_Quest1_GuardFight'>><</button>></div> <<if $player.gender() == 'Female' || $player.gender() == 'Shemale'>> <div class="btn padding-top"><<button 'Offer a blowjob' 'Rayna_Voss_Quest1_GuardFight_Blowjob'>><</button>></div> <<else>> <div class="btn non-interacting padding-top" id='bj-offer-guard'><<button "Offer a blowjob">><</button>></div> <<done>> <<done>> <<run addHoverTooltip('bj-offer-guard', 'Requirement: Player gender = Female or Shemale.')>> <</done>> <</done>> <</if>> <<if $player.money >= 1000>> <div class="btn padding-top"><<button 'Bribe ($1000)' 'Rayna_Voss_Quest1_GuardFight_Bribe'>><</button>></div> <<else>> <div class="btn non-interacting padding-top"><<button "Bribe ($1000)">><</button>></div> <</if>> <div class="btn padding-top"><<button 'Leave' $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _battleSetControls = {attack: true, seduce: false, items: true, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls 'Rayna_Voss_Quest1_GuardFight_Win' 'Rayna_Voss_Quest1_GuardFight_Lose'>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatMessage 'You knock the guard out cold, leaving him sprawled on the ground.'>> <div class="btn padding-top"><<button "Continue" "BG_Basement_Corridor">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatMessage 'The guard overpowers you and tosses you into the alley.'>> <div class="btn padding-top"><<button "Back" "SR_SkidRow">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _guard = 'Media//Characters//QuestChars//Other//Security.png'>> <<run _pic = "Media//Characters//QuestChars//Other//Security//securityBJ.mp4">> <<Video _pic>> <<ChatMessage 'You drop to your knees in the grimy alley, the cold pavement biting into your skin. The guard looms over you, his belt clinking as you tug down his zipper with unsteady hands. His cock’s already half-hard, thick and heavy as you wrap your lips around it. He groans, rough fingers tangling in your hair, guiding you deeper. The taste of him—salty, musky—fills your mouth as you work him, tongue swirling, cheeks hollowing with each slow, deliberate suck. His hips buck, impatient, and you gag slightly, eyes watering, but you keep going, the wet sounds loud in the quiet night. When he finishes, it’s with a guttural grunt, spilling hot and bitter down your throat. You swallow hard, the burn lingering as you wipe your lips with the back of your hand, smirking up at him. '>> <<ChatWithoutNPC 'Guard' _guard 'Fuck, that was good. Hurry up—get inside before someone sees.'>> <div class="btn padding-top"><<button "Slip inside" "BG_Basement_Corridor">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _guard = 'Media//Characters//QuestChars//Other//Security.png'>> <<set $player.money -= 1000>> <<ChatMessage 'You hand over the cash. The guard counts it and pockets the bills.'>> <<ChatWithoutNPC 'Guard' _guard 'Fine. Go on in.'>> <div class="btn padding-top"><<button "Enter" "BG_Basement_Corridor">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatMessage 'You step into the dim hallway of the BioGenesis basement. The air reeks of disinfectant.'>> <<if $player.characterEvents.isEventRegistered($player.info.id, "ReleaseBGirl") == false>> <div class="btn padding-top"><<button "Check the chamber" "BG_Basement_Chamber">><</button>></div> <</if>> <div class="btn padding-top"><<button "Main room" "BG_Basement_Main">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if $player.characterEvents.isEventRegistered($player.info.id, "ReleaseBGirl")>> <<ChatMessage 'The bed is empty now—whoever was here is long gone.'>> <<else>> <<set _girlImg = 'Media//Characters//QuestChars//Detective//Quest1//Woman_sleep.jpg'>> <<DrawImg _girlImg>> <<ChatMessage 'Inside the chamber, a girl lies on a medical bed, an IV filled with a red solution feeding her arm.'>> <<ChatMessage 'You hesitate—if you wake her up, it might cause a scene, and Rayna won\'t like it.'>> <div class="btn padding-top"><<button "Remove the IV" "BG_Basement_GirlReleased">><</button>></div> <</if>> <div class="btn padding-top"><<button "Leave" "BG_Basement_Corridor">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _girlImg = 'Media//Characters//QuestChars//Detective//Quest1//Woman_wake.jpg'>> <<DrawImg _girlImg>> <<ChatMessage 'You slide the needle out. Her eyes snap open—pupils bright red.'>> <<set _girlImg2 = 'Media//Characters//QuestChars//Detective//Quest1//Woman_angry.jpg'>> <<DrawImg _girlImg2>> <<ChatWithoutNPC 'Girl' _girlImg 'What the hell did you do?!'>> <<ChatMessage 'She curses you out and bolts from the room.'>> <<run $player.characterEvents.registerEvent($player.info.id, "ReleaseBGirl", 1)>> <div class="btn padding-top"><<button "Back" "BG_Basement_Corridor">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatMessage 'This must be the main office. A cluttered desk sits against the far wall.'>> <div class="btn padding-top"><<button "Search the desk" "BG_Basement_Documents">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatMessage 'You find a folder of BioGenesis documents—exactly what Rayna wanted.'>> <<run completeTaskByQuestID("rayna_voss_quest1", "After dark, infiltrate the BioGenesis basement in Skid Row")>> <<run completeTaskByQuestID("rayna_voss_quest1", "Retrieve the documents from the Skid Row basement")>> <<run addTaskToQuest("rayna_voss_quest1", { description: "Give the documents to Rayna", completed: false })>> <div class="btn padding-top"><<button "Exit" "SR_SkidRow">><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _raynaImg = 'Media//Characters//QuestChars//Detective//Detective.png'>> <<DrawImage _raynaImg>> <<if $player.characterEvents.isEventRegistered($player.info.id, "ReleaseBGirl")>> <<ChatWithoutNPC 'Rayna' _raynaImg 'You stirred up trouble. BioGenesis will have the whole neighborhood hunting for that girl.'>> <<ChatWithoutNPC 'Rayna' _raynaImg 'Still, you got the papers. Nice work. I\'ll call once I dig through them.'>> <<else>> <<ChatWithoutNPC 'Rayna' _raynaImg 'Clean job. I haven\'t seen such capable help in ages.'>> <<ChatWithoutNPC 'Rayna' _raynaImg 'I\'ll ring you when I pull intel from these.'>> <</if>> <<run completeTaskByQuestID("rayna_voss_quest1", "Give the documents to Rayna")>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<if getQuestState("ethan_quest_01") == undefined>> <<goto "Ethan_Quest_01_Start">> <<elseif getQuestState("ethan_quest_01") == "active" && $player.inventory.hasItem("NovaGear X")>> <<goto "Ethan_Quest_01_End">> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatMessage 'You step into Ethan’s room. He’s sitting on his bed, staring at his phone. Scattered around the room are old gaming magazines, and on his laptop screen, there’s an article about the latest gaming console.'>> <<Chat $interactionNpc 'Have you heard? The NovaGear X just dropped… and it looks insane! The graphics, the load times—it’s like playing in the future'>> <<ChatMessage 'Ethan sighs heavily and puts his phone down.'>> <<Chat $player 'You want one, huh?'>> <<Chat $interactionNpc 'Of course I do… But where am I gonna get that kind of money? My old Quantum Edge 5 still works—kinda…'>> <<ChatMessage 'You can tell he’s trying to act like it’s no big deal, but his voice gives him away. You both have been gaming together for years—pulling all-nighters, strategizing, competing. And now, for the first time, he’s stuck on the sidelines.'>> <<ChatMessage 'You take a step forward, leaning against his desk, where a pile of old game cases sits.'>> <<Chat $player 'You know what? I’ll buy it.'>> <<ChatMessage 'Ethan’s head snaps up, his eyes wide with disbelief'>> <<Chat $interactionNpc 'Wh-what?! You’re serious?!'>> <<Chat $player ' Why not? We’ve always played together. What does it matter who buys it? What matters is that we get to have fun like we always do.'>> <<ChatMessage 'For a moment, the room falls silent. Ethan looks at you like he’s trying to process what you just said. Then, suddenly, he jumps up from the bed and stares at you'>> <<Chat $interactionNpc 'Dude… You are the best friend ever, you know that?'>> <<ChatMessage 'His excitement is contagious. He grabs you by the shoulders and shakes you slightly, his energy through the roof.'>> <<Chat $interactionNpc 'We’re gonna have legendary game nights! We’re beating everything we can get our hands on! Man, this is gonna be insane!'>> <<ChatMessage 'He immediately grabs his laptop, typing furiously as he searches for where to buy the console. He’s rambling now, throwing out plans for weeks of non-stop gaming.'>> <<Chat $player 'You didn’t even ask when I’m getting it.'>> <<Chat $interactionNpc 'Does it matter?! The fact that we’re getting one is all I need to know!'>> <<if $player.inventory.hasItem("NovaGear X")>> <<set _hasConsole = true>> <<else>> <<set _hasConsole = false>> <</if>> <<run _questList = [ { id: "ethan_quest_01", title: "Buy a Game Console (NovaGear X)", description: "You've decided to buy a new game console so you can play with Ethan.", state: "active", questType: "side", tasks: [ { description: "Purchase a game console", completed: _hasConsole }, { description: "Give the console to Ethan", completed: false } ], } ]>> <<CreateQuest _questList true>> <div class="padding-top"> <div class="btn"><<button "Leave" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<run completeTaskByQuestID("ethan_quest_01", "Give the console to Ethan")>> <<run $player.inventory.removeItem("NovaGear X", 1)>> <<ChatMessage 'Ethan is sitting on his bed, scrolling through reviews and watching gameplay footage. He doesn’t even notice you at first.'>> <<Chat $interactionNpc 'Man, the ray tracing on this thing is insane… It looks unreal…'>> <<ChatMessage 'Ethan (without looking up)'>> <<ChatMessage 'You quietly walk up and place the box on his bed.'>> <<Chat $player 'I think you should see it in person instead of just watching videos'>> <<ChatMessage '(Ethan lowers his phone and slowly looks down at the box. For a few seconds, he just blinks, like his brain refuses to process what he’s seeing.'>> <<Chat $interactionNpc 'Wait… Is this… No way…'>> <<ChatMessage 'He suddenly jumps up from the bed, grabs the box, flips it over, checks the logo, the seals. His eyes go wide, and his breath catches'>> <<Chat $interactionNpc 'IS THIS FOR REAL?!'>> <<ChatMessage 'He tugs at your sleeve, then lets go just as quickly, like he’s afraid he might somehow damage the box.'>> <<Chat $interactionNpc ' No, no, no… You actually—? You BOUGHT IT?!'>> <<ChatMessage 'You nod. A second later, Ethan completely loses it. He lets out a loud, excited yell, jumps on the bed, nearly falls off, and hugs the box like it’s the most valuable thing in the world.)'>> <<Chat $interactionNpc 'WHAT?! DUDE, YOU’RE THE BEST PERSON ALIVE!!!'>> <<ChatMessage 'He’s pacing the room, then suddenly grabs your shoulders and shakes you.'>> <<Chat $interactionNpc 'We are setting this up RIGHT NOW! No, scratch that—IMMEDIATELY! Oh my god, I can’t believe this is happening!'>> <<ChatMessage 'He rushes to his desk, clearing space in a frenzy—old magazines and game cases flying everywhere. He grabs a knife, carefully slicing through the packaging tape like he’s performing some sacred ritual. His hands are shaking with excitement.'>> <<Chat $interactionNpc 'Dude… I don’t even know what to say… Man… Just… Thank you. Seriously. Thank you.'>> <<Chat $interactionNpc 'Is there anything I can do to thank you?'>> <<set _relUpgrd = {friendship: 10}>> <<SetRelations $player $interactionNpc _relUpgrd>> <<if $player.gender() == "Male">> <div class="padding-top"> <div class="btn"><<button "Ask for a kiss (Gay)" "Ethan_Quest_01_End_kiss_MM">><</button>></div> </div> <<else>> <div class="padding-top"> <div class="btn"><<button "Ask for a kiss" "Ethan_Quest_01_End_kiss_FM">><</button>></div> </div> <</if>> <div class="padding-top"> <div class="btn"><<button "Ask him to put on women's clothing." "Ethan_Quest_01_End_Sissy">><</button>></div> </div> <div class="padding-top"> <div class="btn"><<button "I don't need anything in return" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $player 'Well, Ethan, there is something you could do for me in return. But it\'s a bit…unconventional.'>> <<ChatMessage 'Ethan\'s expression shifts from gratitude to curiosity, a hint of apprehension in his eyes. He swallows nervously, his voice a mixture of intrigue and hesitation'>> <<Chat $interactionNpc 'I… I owe you big time, $player.info.firstName. I mean, this console must have cost a fortune. Whatever it is, I\'ll consider it. What do you need?'>> <<Chat $player 'It\'s not something I need, per se. It\'s more of a want. And it\'s entirely up to you, Ethan. But… I\'ve always thought you were quite attractive. I\'d like… a kiss'>> <<ChatMessage 'The room grows quiet as Ethan\'s cheeks flush a deep shade of crimson. He seems taken aback, his eyes wide with surprise.'>> <<ChatMessage 'Ethan blinks rapidly, his gaze darting around the room as if searching for an escape from the sudden tension. He takes a deep breath, his hands fidgeting with the plastic wrapping of the game console. Time seems to stand still as you wait for his response, the silence hanging heavy in the air.'>> <<Chat $interactionNpc 'I… I\'ve never… I mean, I\'m not… wow, $player.info.firstName, I don\'t even know what to say. This is a lot to take in.'>> <<Chat $player 'Take all the time you need, Ethan. Like I said, it\'s completely your choice. I don\'t want you to feel pressured or uncomfortable. You owe me nothing but friendship.'>> <<ChatMessage 'Ethan\'s eyes meet yours, and for a moment, you see a flicker of resolve. He sets the game console down carefully on the coffee table, his movements deliberate.'>> <<Chat $interactionNpc 'You\'re right. I do choose my friends, and I choose you, $player.info.firstName. I trust you. And… and I guess, in a way, this could be my way of saying thank you, couldn\'t it?'>> <<ChatMessage 'He steps closer, his body language a mix of nervousness and a newfound determination. You can almost hear the pounding of his heart as he leans in, closing his eyes at the last moment.'>> <!-- Видео поцелуя --> <<set $interaction = "Kiss">> <<Interaction $player $interactionNpc>> <<ChatMessage 'The kiss is tentative, awkward, and brief, but it holds a sincere gratitude that words alone could never convey. As Ethan pulls away, he lets out a soft chuckle, rubbing the back of his neck in a mix of embarrassmen.'>> <<Chat $interactionNpc 'Wow, that was… different. But you know what? I meant it. Thank you, $player.info.firstName, for everything. The console, the friendship… and for, well, this moment'>> <<ChatMessage 'You offer a reassuring smile, appreciating the courage it took for Ethan to follow through with the gesture.'>> <<Chat $player 'No need to thank me again, Ethan. Let\'s just chalk this up to one of those unique memories we\'ll laugh about someday, alright?'>> <<ChatMessage 'Ethan nods, a genuine smile spreading across his face, the earlier tension now evaporating.'>> <<Chat $interactionNpc 'Definitely. Now, how about we set up this beast and you can show me how it\'s done?'>> <<ChatMessage 'The two of you spend the next few hours immersed in the world of video games, the earlier awkwardness replaced by the camaraderie of pixelated battles and victorious cheers.'>> <!-- Видео игры в приставку --> <<ChatMessage 'As the evening draws to a close, Ethan walks you to the door, his arm slung casually over your shoulders in a friendly embrace.'>> <<Chat $interactionNpc 'I\'m serious, $player.info.firstName. You\'ve been there for me through thick and thin. This console, the kiss… they\'re just things. It\'s the thought behind them that counts. I\'m here for you, man. Anytime, anywhere.'>> <<ChatMessage 'With a final wave, you step out into the night, the sounds of digital adventure fading behind you as you walk away with a smile, knowing that some friendships transcend the ordinary and enter the realm of the extraordinary'>> <<SpendTime 120>> <<ChatMessage 'Ethan\'s gay points <strong>increased</strong>'>> <<run $interactionNpc.characterEvents.registerEvent($interactionNpc.info.id, "Gay Points", 1)>> <<set _relUpgrd = {love: 10}>> <<SetRelations $player $interactionNpc _relUpgrd>> <div class="padding-top"> <div class="btn"><<button "Leave" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatMessage 'Your heart flutters a bit at his sincerity, and an impish grin tugs at the corners of your mouth. You step closer, the air between you charged with a playful tension.'>> <<Chat $player 'Well, there is one way you could show your appreciation.'>> <<ChatMessage 'Ethan\'s eyebrows raise in a silent question. There\'s a hint of hesitation in his eyes, but the curiosity is stronger.'>> <<Chat $interactionNpc 'What did you have in mind?'>> <<ChatMessage 'Your eyes lock with his, and you can see the blush creeping up his cheeks. In the quiet of his room, you take one more step, closing the distance between you both.'>> <<Chat $player 'A kiss would be a nice start, don\'t you think?'>> <<ChatMessage 'The words hang in the air, and for a moment, there\'s only the sound of his rapid breathing. Ethan swallows hard, his gaze flickering between your eyes and your lips'>> <<ChatMessage 'For the longest moment, silence stretched between you. A single heartbeat pounding in your ears as Ethan contemplated your request. His gaze flickered from your eyes, to your lips, and back again, each pass bringing a deeper shade of crimson to his cheeks.'>> <<Chat $interactionNpc '$player.info.firstName, are you sure about this?'>> <<ChatMessage 'His voice was a breathy whisper, tinged with both excitement and nervousness.'>> <<Chat $interactionNpc 'I mean, I want to but… Maybe it\'s a bit much?'>> <<ChatMessage 'His words were tentative, but his body language screamed otherwise. Hands twitched at his sides, fingers curling and uncurling in a ceaseless drumming of anxious energy. At the base of his throat, a pulse point stuttered, throbbed, pounded beneath delicate skin.'>> <<ChatMessage 'You reached out, fingers drifting like phantom whispers across his neck to cup his jaw with a feather-light touch.'>> <<Chat $player 'Oh Ethan.'>> <<ChatMessage 'The breathy murmur of his name vibrated against heated flesh.'>> <<Chat $player 'I know what I want.'>> <<ChatMessage 'Slowly, tortuously, you tilted his face down to meet yours. The press of lips to tender, virgin skin was the barest there and yet, Ethan gasped like you\'d branded him with a lover\'s fire.'>> <!-- Видео поцелуя --> <<set $interaction = "Kiss">> <<Interaction $player $interactionNpc>> <<ChatMessage 'Through half-lidded eyes, you watched Ethan melt into your caress, the tension bleeding from his spine in heady doses to leave him pliant and aching. Each rasp of breath stirred trembles across slackened lips, the tiniest gnat\'s wing of contact against such uncharted territory.'>> <<ChatMessage 'Ethan\'s lips tremble beneath your feather-light caress, the barest whisper of contact sending shivers racing down his spine. The heat of your breath against his skin makes him shudder, a low, needy sound caught in his throat.'>> <<Chat $interactionNpc 'Y-yes, okay.'>> <<ChatMessage 'He stutters, his hips shifting forward in a subtle, unconscious gesture of desperation'>> <<ChatMessage 'You swept Ethan\'s lips into a deep, passionate kiss. Your tongue danced along the seam of his mouth, coaxing it open in a tender invitation. As the taste of him filled your senses, you lost yourself in the feeling of his lips moving against your own, pliant and eager in a way that made your head spin.'>> <<ChatMessage 'Ethan\'s hands found purchase at your waist, fingers digging into the soft flesh in a gesture of desperation. He pulled you closer, molding your body against his own until not an inch of space remained between your curves. The heat of him, the hardness, was a clear delineation of his desire tempered only by shyness.'>> <<ChatMessage 'You pulled away far too quickly, Ethan\'s lips pillowy soft and rosy from your onslaught.'>> <<Chat $player 'So good.'>> <<ChatMessage 'You pressed a lingering kiss to his flushed cheek before releasing him with a playful smirk'>> <<ChatMessage 'You sauntered out of his room, leaving Ethan a breathless, blushing mess in your wake.'>> <<run $interactionNpc.characterEvents.registerEvent($interactionNpc.info.id, "Love with FP Points", 1)>> <<set _relUpgrd = {love: 10}>> <<SetRelations $player $interactionNpc _relUpgrd>> <div class="padding-top"> <div class="btn"><<button "Leave" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatMessage 'You look at Ethan with a gentle smile, trying not to make him feel uncomfortable'>> <<Chat $player 'I want you to do something for me, and I know it might seem a little…unusual,'>>\ <<ChatMessage 'your voice soft and measured'>> <<Chat $player 'But as a thank you for the console, I was wondering if you could…dress up in something a bit different. I have a certain idea in mind, and I think it would be really interesting to see you in it.'>> <<ChatMessage 'You pause for a moment, letting Ethan process what you\'re asking.'>> <<Chat $player 'I was thinking maybe you could wear some of your sister Sophia\'s clothes. I\'ve seen her wear some really cute outfits, and I think you might…pull it off surprisingly well'>> <<ChatMessage 'You continue, trying to phrase it in a way that won\'t make Ethan feel too self-conscious.'>> <<ChatMessage 'Ethan looks at you nervously, clearly hesitant.'>> <<Chat $interactionNpc 'I…I don\'t know'>> <<ChatMessage ' He says, fidgeting slightly'>> <<Chat $interactionNpc 'That\'s really not my thing. And besides, Sophia would kill me if she found out I was wearing her clothes.'>> <<ChatMessage 'You can see the uncertainty in Ethan\'s eyes, but you also sense a spark of curiosity. You press on, trying to reassure him.'>> <<Chat $player 'I promise it\'ll be okay, Ethan. And it\'s just between us. No one else needs to know. Plus, I think it could be…kind of fun. And who knows, you might discover a new side of yourself'>> <<ChatMessage 'You say, trying to make it sound as appealing and non-threatening as possible.'>> <<ChatMessage 'Ethan looks away, his cheeks flushing slightly.'>> <<Chat $interactionNpc 'I…I don\'t know'>> <<ChatMessage 'He repeats, his voice barely above a whisper.'>> <<Chat $interactionNpc 'But if I do this, you have to promise not to laugh.'>> <<ChatMessage 'You nod, trying to look as serious and understanding as possible.'>> <<Chat $player 'I promise, Ethan. I won\'t laugh. I just want to see you try something new, and I think this could be a really interesting experience for both of us.'>> <<ChatMessage 'After a moment, Ethan nods slowly, still looking a bit uncertain.'>> <<Chat $interactionNpc 'Okay…I\'ll do it. But you have to promise not to tease me, and you have to help me pick out something to wear. I have no idea what I\'m doing.'>> <<ChatMessage 'You smile, trying to put Ethan at ease.'>> <<Chat $player 'Don\'t worry, I\'ll help you every step of the way. Let\'s go take a look at Sophia\'s closet and see what we can find,'>> <<ChatMessage 'You say, trying to sound as enthusiastic and supportive as possible. Ethan nods, still looking a bit nervous, and follows you to Sophia\'s room.'>> <<ChatMessage 'As you browse through Sophia\'s closet, Ethan can\'t help but feel a bit overwhelmed. There are so many clothes, shoes, and accessories to choose from, and he has no idea what would look good on him. You, on the other hand, seem to have a clear idea of what you\'re looking for.'>> <<Chat $player 'Ah, how about this?'>> <<ChatMessage 'you say, holding up a denim skirt.'>> <<Chat $player 'I think this would be a great starting point. It\'s cute, it\'s casual, and it\'s definitely something that would…change up your look a bit.'>> <<ChatMessage 'Ethan looks at the skirt, his eyes widening slightly as he takes in the sight of it.'>> <<Chat $interactionNpc 'I…I don\'t know,that\'s really not my style.'>> <<ChatMessage 'He says, his voice uncertain.'>> <<ChatMessage 'You smile, trying to reassure him.'>> <<Chat $player 'That\'s exactly why I think you should try it, Ethan. It\'s not every day you get to experiment with a new look, and I think this could be a really fun experience for you. Plus, I think you\'d be surprised at how…feminine you could look in the right clothes.'>> <<ChatMessage 'Ethan looks at you, his eyes searching for reassurance. You can see the uncertainty in his gaze, but you also sense a spark of curiosity. After a moment, he nods slowly, taking the skirt from you.'>> <<Chat $interactionNpc 'Okay…I\'ll try it,'>> <<ChatMessage 'As Ethan changes into the skirt, you can\'t help but notice how…different he looks. The denim hugs his curves in all the right places, and the way it falls just above his knees makes his legs look…longer, somehow. You can see the blush rising to his cheeks as he realizes how…feminine he must look, and you can\'t help but feel a spark of excitement at the sight of him.'>> <img class='img' src='Media\\Characters\\QuestChars\\Ethan\\Story\\Sissy.png' /> <<Chat $player 'Wow, Ethan, you look…really great. I had no idea you could pull off a skirt like that.'>> <<ChatMessage 'Ethan looks at you, his eyes flashing with embarrassment.'>> <<Chat $interactionNpc 'Shut up. It\'s just a skirt, okay? Don\'t make a big deal out of it..'>> <<Chat $player 'I\'m not making fun of you, Ethan. I\'m just…impressed. You look really cute in that skirt.'>> <<ChatMessage 'After a while, Ethan put his clothes back on and left the room, the denim skirt and blouse laid neatly on the bed, a silent testament to the unexpected turn of events. As he walked out, you couldn\'t help but notice the faintest hint of a smile playing on his lips, a subtle suggestion that despite his initial hesitation, he had found the experience of dressing up as a girl to be… intriguing.'>> <<ChatMessage 'You watched him leave, a thoughtful expression on your face. It was clear that Ethan had been interested in the idea, perhaps more than he was willing to admit. The way he had looked at himself in the mirror, the tentative way he had touched the fabric of the skirt, it all spoke to a curiosity that went beyond mere politeness.'>> <<ChatMessage 'As the door closed behind him, you couldn\'t help but wonder what had gone through his mind as he was dressing up. Had he felt a thrill of excitement at the unfamiliar sensation of wearing a skirt? Had he caught a glimpse of himself in the mirror and seen a stranger staring back, a person he hadn\'t known existed?'>> <<ChatMessage 'The questions swirled in your mind, but one thing was certain - Ethan had been interested. And that interest had been palpable, a spark that had flickered to life in the brief moment he had spent dressed as a girl.'>> <<ChatMessage 'You smiled to yourself, a plan beginning to form in your mind. It seemed that Ethan might be more open to exploring his feminine side than he had initially let on. And you were more than happy to encourage him, to see where this newfound curiosity might lead.'>> <<run $interactionNpc.characterEvents.registerEvent($interactionNpc.info.id, "Sissy Points", 1)>> <<set _relUpgrd = {love: 10}>> <<SetRelations $player $interactionNpc _relUpgrd>> <<ChatMessage 'Ethan\'s sissy points <strong>increased</strong>'>> <div class="padding-top"> <div class="btn"><<button "Leave" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _lanaIcon = "Media\\Characters\\QuestChars\\Other\\Lana.jpg">> <<DrawImg _lanaIcon>> <<LockSettings>> <<ChatMessage "You’re purchasing the most expensive car in the dealership—a sleek, luxurious supercar that costs a fortune. Behind the counter is Lana Monroe, an attractive middle-aged woman with a curvy figure, dressed in a form-fitting business suit that accentuates her curves. As she processes the paperwork, she leans in closer, her sweet perfume enveloping you. Once the deal is finalized, she flashes a playful smile.">> <<ChatWithoutNPC 'Lana' _lanaIcon 'Wow, you sure know how to pick the good stuff. Someone like you deserves only the best. Care to celebrate the purchase? I\'m off in an hour.'>> <div class="btn padding-top"><<button "Sure, that sounds tempting." "LanaQuest1_Accept">><<run $player.characterEvents.registerEvent($player.info.id, "LanaQuest1", 1)>><</button>></div> <div class="btn padding-top"><<button "I am busy today." $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _lanaIcon = "Media\\Characters\\QuestChars\\Other\\Lana.jpg">> <<DrawImg _lanaIcon>> <<Chat $player 'Sure, that sounds tempting.'>> <<ChatWithoutNPC 'Lana' _lanaIcon '*giggles, cheeks slightly flushing* Then let\'s meet at the exit. I\'m Lana, by the way.'>> <<ChatWithoutNPC 'Lana' _lanaIcon 'Great idea! I love Italian food. Shall we take your new ride?'>> <div class="btn padding-top"><<button "Go to the restaurant" "LanaQuest1_Restaurant">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/Downtown/Restaurant.jpg">> <<set _lanaIcon = "Media\\Characters\\QuestChars\\Other\\Lana.jpg">> <<DrawImg _lanaIcon>> <<ChatMessage "At the restaurant, Lana orders wine and pasta, chatting about her job and life. She mentions she’s divorced and complains about the monotony of her routine. The atmosphere heats up: she brushes your hand, her foot grazing yours under the table.">> <<ChatWithoutNPC 'Lana' _lanaIcon 'You seem so interesting. Tell me about yourself.'>> <<ChatMessage "The bill comes to $500.">> <<ChatWithoutNPC 'Lana' _lanaIcon 'You\'re a total charmer. Want to continue the evening at my place? My house is empty.'>> <<if $player.money >= 500>> <div class="btn padding-top"><<button "Pay $500" "LanaQuest1_House">><<set $player.money -= 500>><</button>></div> <<else>> <div class="btn non-interacting"><<button "Pay $500">><</button>></div> <</if>> <div class="btn padding-top"><<button "Don't pay" "LanaQuest1_NoPay">><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/Downtown/Restaurant.jpg">> <<ChatMessage "You decide not to pay. Lana frowns slightly but remains polite. She politely says goodbye and leaves.">> <div class="btn padding-top"><<button "Leave" $player.info.currentLocation>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/Other/Lana/lana_bedroom.jpg">> <<set _lanaIcon = "Media\\Characters\\QuestChars\\Other\\Lana.jpg">> <<DrawImg _lanaIcon>> <<ChatMessage "You arrive at her home. Lana dims the lights, pours wine, and leads you to the bedroom. Her large breasts spill out of her bra, nipples already hard with arousal.">> <<ChatWithoutNPC 'Lana' _lanaIcon 'It\'s been so long since I felt desired.'>> <<switch $player.gender()>> <<case "Male">> <<include "LanaQuest1_Sex_Male">> <<case "Shemale">> <<include "LanaQuest1_Sex_Male">> <<case "Female">> <<include "LanaQuest1_Sex_Female">> <</switch>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/Other/Lana/lana_bedroom.jpg">> <<ChatMessage "Lana pushes you onto the bed and kneels.">> <<ChatWithoutNPC 'Lana' _lanaIcon 'Let me thank you for tonight.'>> <<ChatMessage "She unzips your pants and takes your cock in her mouth. Her lips wrap tightly around you, her tongue swirling over the tip as she sucks deeply, gagging slightly, saliva dripping down her chin.">> <<Video "Media\\Sex\\Quest\\Lana\\Male\\blowjob.mp4">> <<ChatWithoutNPC 'Lana' _lanaIcon 'Mmm, you taste so good… fuck my mouth.'>> <<ChatMessage "She picks up the pace until you finish in her throat. She swallows everything, licking her lips.">> <<ChatMessage "Then she lies back, spreading her legs to reveal her wet pussy.">> <<ChatWithoutNPC 'Lana' _lanaIcon 'Enter me… I want to feel you inside.'>> <<ChatMessage "You slide into her in missionary, her legs wrapping around your waist as she scratches your back.">> <<Video "Media\\Sex\\Quest\\Lana\\Male\\vaginal.mp4">> <<ChatWithoutNPC 'Lana' _lanaIcon 'Yes, deeper! Fuck me! God, your cock is so big!'>> <<ChatMessage "Her breasts bounce with each thrust, her pussy clenching as she orgasms, screaming, and you release inside her, cum dripping down her thighs.">> <<include "LanaQuest1_AfterSex">> <</nobr>>
<<nobr>> <<ChatMessage "Lana pulls you onto the bed and settles between your legs.">> <<ChatWithoutNPC 'Lana' _lanaIcon 'I want to taste you first.'>> <<Video "Media\\Sex\\Quest\\Lana\\Female\\Lick.mp4">> <<ChatMessage "Her tongue teases your clit, sucking gently while her fingers slide inside, making you tremble with pleasure.">> <<ChatWithoutNPC 'Lana' _lanaIcon 'You\'re so wet.'>> <<ChatMessage "She speeds up until you climax, gripping her hair.">> <<ChatMessage "Then Lana straps you with a dildo, lubes it up, and gets into doggy style.">> <<ChatWithoutNPC 'Lana' _lanaIcon 'Fuck me like a slut!'>> <<Video "Media\\Sex\\Quest\\Lana\\Female\\strap.mp4">> <<ChatMessage "You thrust into her, the strap-on stretching her as she rubs her clit, her juices soaking the sheets.">> <<ChatWithoutNPC 'Lana' _lanaIcon 'Yes, like that, fuck me! I\'m coming!'>> <<ChatMessage "Her body shakes in orgasm.">> <<include "LanaQuest1_AfterSex">> <</nobr>>
<<nobr>> <<ChatMessage "After sex, you fall asleep in each other’s arms, her sweaty, satisfied body pressed against yours.">> <div class="btn padding-top"><<button "Continue" "LanaQuest1_Morning">><</button>></div> <</nobr>>
<<nobr>> <<SetBackground "Media/Locations/Other/Lana/lana_bedroom.jpg">> <<set _lanaSonIcon = "Media\\Characters\\QuestChars\\Other\\LanaSon.jpg">> <<set _lanaIcon = "Media\\Characters\\QuestChars\\Other\\Lana.jpg">> <<ChatMessage "You wake to noises in the hallway. Lana bolts upright, eyes wide. She quickly covers you with a blanket, hiding you completely, and throws on a robe, slightly open to reveal traces of the night.">> <<ChatWithoutNPC 'Lana' _lanaIcon 'Shit, it\'s my son! He wasn\'t supposed to be back this early!'>> <<ChatMessage "The door opens, and her 18-year-old son—a tall guy with messy hair—walks in.">> <<ChatWithoutNPC 'Lana\'s son' _lanaSonIcon 'Mom, I\'m home! The party sucked.'>> <<ChatWithoutNPC 'Lana' _lanaIcon '*forces a nervous smile, voice shaky* Oh, hi, sweetie! You\'re early… Um, Mom was just… sleeping. How\'s everything?'>> <<ChatMessage "Her son frowns, scanning the room: crumpled sheets, the lingering smell of sex.">> <<ChatWithoutNPC 'Lana\'s son' _lanaSonIcon 'Mom, whose car is parked outside? And why does it smell… weird?'>> <<ChatWithoutNPC 'Lana' _lanaIcon 'It\'s… a friend who stopped by, but they\'re gone now. Nothing to worry about! Go grab breakfast, I\'ll be down soon.'>> <<ChatMessage "He gives a suspicious look but nods and leaves. The door closes.">> <<ChatWithoutNPC 'Lana\'s son' _lanaSonIcon 'Okay, but this is weird…'>> <<ChatMessage "Lana exhales, pulling back the blanket. She gives you a quick kiss, helps you dress, and escorts you out.">> <<ChatWithoutNPC 'Lana' _lanaIcon 'Phew, that was close. He didn\'t see anything, but he\'s suspicious. I\'ll explain to him… somehow. Let\'s get you out quietly—through the back door.'>> <<ChatWithoutNPC 'Lana' _lanaIcon 'That was unforgettable. Call me?'>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _madDogImg = "Media//Characters//QuestChars//MadDog//MadDog.jpg">> <<ChatMessage 'Just as you lie down, your phone buzzes on the nightstand.'>> <<DrawImg _madDogImg>> <<ChatWithoutNPC 'Mad Dog' _madDogImg 'Listen up. You did good work with that debt. If you want to hit BioGenesis harder, talk to a detective named Rayna Voss. She hangs around the park by the dead fountain after six.'>> <<ChatWithoutNPC 'Mad Dog' _madDogImg 'I told her you\'d reach out. Don\'t keep her waiting.'>> <<run _questList = [ { id: "rayna_voss_quest1", title: "Detective", description: "I’ve got a new lead on BioGenesis—a hard‑nosed private investigator who’s been digging into the corporation for years. I need to track her down and squeeze out every bit of information I can.", state: "active", questType: "side", tasks: [ { description: "Track down Detective Rayna Voss in the city park", completed: false } ], } ]>> <<CreateQuest _questList true>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<LockSettings>> <<include "GetCharactersMadDog_Quest1">> <<ChatMessage 'You\'re sitting in the VIP lounge of a nightclub, across from Damian. As always, he looks like he just stepped out of an expensive boutique: stylish suit, piercing gaze, cigar in hand. You\'ve hung out with him before, so the atmosphere between you is more businesslike than tense.'>> <<Chat $player 'Hey, Damian. Listen, I need to dig up more about Biogenesis. You\'re in the know about all the moves in this city, so tell me where to start digging.'>> <<Chat _damian '*smiles, exhaling smoke* Biogenesis, huh? You don\'t discuss topics like that on every corner. But you\'re lucky, I know a guy who might help you out. Mad Dog, the gang leader in Skid Row. He sits in an abandoned warehouse like a king on a throne of rust. If you can make a deal with him, he might throw you something useful.'>> <<Chat $player 'Sounds good. I\'ll go talk to this Mad Dog. Thanks, Damian.'>> <<run _questList = [ { id: "meet_mad_dog", title: "New Connections", description: "Meet up with Mad Dog at the warehouse in Skid Row", state: "active", questType: "side", tasks: [ { description: "Meet Mad Dog", completed: false } ], } ]>> <<CreateQuest _questList true>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<LockSettings>> <<include "GetCharactersMadDog_Quest1">> <<include "SetQuest_MadDog_Quest_1">> <<run completeTaskByQuestID("meet_mad_dog", "Meet Mad Dog")>> <<ChatMessage 'At the entrance stands a huge bandit, covered in scars, with a face like his mom dropped him into a meat grinder.'>> <<ChatWithoutNPC 'Gangster' _gangsterImg 'Hey, you! You\'re fucked if you don\'t fuck off right now!'>> <<Chat $player 'Easy, bro. I\'m from Damian. I need Mad Dog.'>> <<ChatWithoutNPC 'Gangster' _gangsterImg '*squints but steps back* From Damian, you say? Alright, go inside. But if you\'re lying, consider your ass done.'>> <<ChatMessage 'You walk past him and enter the warehouse. In the center sits Mad Dog — a huge guy, covered in tattoos like a walking painting. His people around him stare at you like fresh meat.'>> <<Chat $player 'Hey, Mad Dog. I\'m from Damian. I need info on Biogenesis.'>> <<ChatWithoutNPC 'Mad Dog' _madDogImg '*smirks* From Damian, huh? Listen up, I don\'t abandon my own, and you\'re nobody to me. Want info? Become one of us. Only insiders get the perks.'>> <<Chat $player 'How do I join the gang? I\'m ready to join.'>> <<if $randomDebtor.gender() == "Male">> <<ChatWithoutNPC 'Mad Dog' _madDogImg '*smiles, showing a gold tooth* Now we\'re talking! I need someone who can collect debts from deadbeats. There\'s this asshole, $randomDebtor.info.firstName $randomDebtor.info.secondName, who owes us big time. If you can get the debt from him, you\'re in. Fail, and my boys will fuck you up so bad you won\'t be able to sit. Deal?'>> <<else>> <<ChatWithoutNPC 'Mad Dog' _madDogImg '*smiles, showing a gold tooth* Now we\'re talking! I need someone who can collect debts from deadbeats. There\'s this asshole, $randomDebtor.info.firstName $randomDebtor.info.secondName, who owes us big time. If you can get the debt from her you\'re in. Fail, and my boys will fuck you up so bad you won\'t be able to sit. Deal?'>> <</if>> <<Chat $player 'Deal.'>> <<ChatWithoutNPC 'Mad Dog' _madDogImg 'Two days, got it? You\'re fucked if you screw up.'>> <<ChatMessage 'You nod and leave the warehouse, ready for the next step. Mad Dog is clearly not joking, but this is your chance to get closer to Biogenesis.'>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<set _damian = $Characters.filter((character) => character.info.questInfo.questCharID == 4)[0]>> <<set _madDogImg = "Media//Characters//QuestChars//MadDog//MadDog.jpg">> <<set _gangsterImg = "Media//Characters//QuestChars//MadDog//Gangster.jpg">> <</nobr>>
<<nobr>> <<set _pool to $Characters.filter(ch => ch.info.characterWork === "None")>> <<set _index to random(0, _pool.length - 1)>> <<set $randomDebtor to _pool.length ? _pool[_index] : null>> <<set _taskText = "Get the debt from " + $randomDebtor.info.firstName + " " + $randomDebtor.info.secondName + ".">> <<if $randomDebtor.gender() == "Male">> <<run _questList = [ { id: "mad_dog_quest1", title: "Gang Initiation", description: "I need to track down the debtor and make him pay up", state: "active", questType: "side", tasks: [ { description: _taskText, completed: false } ], } ]>> <<else>> <<run _questList = [ { id: "mad_dog_quest1", title: "Gang Initiation", description: "I need to track down the debtor and make her pay up", state: "active", questType: "side", tasks: [ { description: _taskText, completed: false }, { description: "Return to Mad Dog", completed: false } ], } ]>> <</if>> <<set $debtTaskName = _taskText>> <<set $debtorID = $randomDebtor.info.id>> <<set $daysToCompleteDebt = 5>> <<set $debtAmount = Random (500, 5000)>> <<CreateQuest _questList true>> <<run $player.characterEvents.registerEvent($randomDebtor.info.id, "knows you", 1)>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _MarySimmons = "Media\\Characters\\QuestChars\\Main\\College\\MarySimmons.jpg">> <<set _BernardFoster = "Media\\Characters\\QuestChars\\Main\\College\\BernardFoster.jpg">> <<ChatMessage 'You walk into the spacious college auditorium, your heart pounding with a mix of excitement and anxiety. Large windows let in the bright morning light, illuminating rows of desks where students are already seated. Some are chatting, others are scrolling through their phones, and a few are nervously fidgeting with their pens. You make your way to an empty seat in the middle of the room, drop your backpack on the floor, and sit down, looking around. The hum of voices fills the space, but it abruptly stops as the door swings open with a bang.'>> <<ChatMessage 'A young woman, about thirty years old, strides confidently to the lectern, places her bag on the table, and surveys the auditorium with a warm but slightly appraising gaze.'>> <<DrawImg _MarySimmons>> <<ChatWithoutNPC 'Mary Simmons' _MarySimmons 'Welcome, students *her voice friendly but with a hint of authority* My name is Mary Simmons. Congratulations on your admission to our college. I teach biology and chemistry—the most important subjects in our institution. And yes, you can forget about slacking off—these sciences aren’t for the faint-hearted.'>> <<ChatMessage 'She smiles slightly, and a couple of students chuckle nervously. You pull out your notebook, feeling the tension in the air ease a bit.'>> <<ChatWithoutNPC 'Mary Simmons' _MarySimmons 'This year, we won’t just be memorizing the basics. You’re in for some real brain-benders—biotechnology, genetic engineering, all that futuristic stuff that’s shaping the world. Our college partners with BioGenesis, and if you’re not a total slacker, you’ll have a shot at interning there. But I’ll warn you: the competition here is like a cage of starving dogs.'>> <<ChatMessage 'Just as she finishes, the door slams again. All heads turn. A tall, athletic man in his fifties, with graying temples and a face that looks like it was chiseled from stone, enters. He’s wearing an expensive dark suit with a college badge gleaming on his lapel. Beside him is a stern-faced middle-aged woman clutching a thick folder of documents as if it were her weapon. The man stops at the lectern, turns to the students, and silently stares everyone down. The silence becomes so thick you can almost hear someone sweating.'>> <<DrawImg _BernardFoster>> <<ChatWithoutNPC 'Bernard Foster' _BernardFoster 'I am the president of this college *his voice deep, with a slight British accent that sends chills down your spine* My name is Bernard Foster. I decided to welcome you personally because you are fresh blood, and I want to see who will survive here.'>> <<ChatMessage 'He pauses, and you feel his words sink into your mind like lead.'>> <<ChatWithoutNPC 'Bernard Foster' _BernardFoster 'Some of you will graduate from our college and get a ticket to BioGenesis. But most *he scans the auditorium* will be kicked out to hell. We only need the best of the best. You will be tearing each other apart for grades because those who screw up will be sent home. This isn’t kindergarten; it’s a meat grinder. Thank you for your attention.'>> <<ChatMessage 'He nods to Mary, turns, and leaves, with the woman and her folder silently following like a shadow. The door closes, and the auditorium erupts in whispers.'>> <<ChatMessage '“Is he serious? They’ll expel us?” hisses a girl to your left, tugging at her braids.'>> <<ChatMessage '“I heard they kicked out half the class last year,” replies a guy behind you, panic in his voice.'>> <<ChatMessage '“Damn, I didn’t sign up for this,” mutters someone else, almost in tears.'>> <<ChatWithoutNPC 'Mary Simmons' _MarySimmons 'Calm down, you bunch of worrywarts *she says, rolling her eyes* President Foster wasn’t joking, but that’s no reason to whine. If you work hard and don’t act like idiots, you’ll be fine. Now, open your notebooks—we’re starting the lesson. Today, we’ll cover the basics of cell biology, and I want you to at least pretend you give a damn.'>> <<ChatMessage 'You open your notebook, grab your pen, but Foster’s words are still swirling in your head. Competition. Expulsions. BioGenesis. This isn’t just school—it’s war. And you, damn it, are going to win.'>> <div class="btn padding-top"><<button "Continue" "AttendClass">> <<run completeTaskByQuestID("main_quest1_college", "Attend your first college class")>> <</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "Create_nightclub_bouncer">> <<set $canShowStatsBtn = false>> <<set $gameSettings.allowSaves = false>> <<ChatMessage 'You approach the entrance to the VIP section, where a large, broad-shouldered bouncer blocks your path. His expression is a mix of suspicion and irritation as he crosses his arms.'>> <<Chat $interactionNpc 'Hold it right there. VIP access only. And you’re not on the list.'>> <div class="padding-top"> <<if $player.attributes.speech.value >= 3>> <div class="btn"><<button "Convince the bouncer that you have access (speech: 3)" $player.info.currentLocation>><</button>></div> <<else>> <div class="btn non-interacting" id="convince_bouncer"><<button "Convince the bouncer that you have access (speech: 3)">><</button>></div> <<done>> <<run addHoverTooltip('convince_bouncer', 'Insufficient skill level: speech')>> <</done>> <</if>> </div> <div class="padding-top"> <<if $player.money >= 2000>> <div class="btn"><<button "Bribe the bouncer ($2000)" "Bouncer_FinishFight_NC">> <<set $player.money -= 2000>> <</button>></div> <<else>> <div class="btn non-interacting" id="bribe_bouncer"><<button "Bribe the bouncer ($2000)">><</button>></div> <<done>> <<run addHoverTooltip('bribe_bouncer', 'Not enough money ($2000)')>> <</done>> <</if>> </div> <div class="padding-top"> <div class="btn"><<button "Attack the bouncer">> <<set _battleSetControls = {attack: true, seduce: false, items: true, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls "Bouncer_FinishFight_NC" "Bouncer_FinishFight_NC_Loose">> <</button>></div> </div> <div class="padding-top"> <div class="btn"><<button "Leave" $player.info.currentLocation>> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <<include "Delete_nightclub_bouncer">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "CharactersData">> <<run _bouncer = CreateCharacter({ isPlayer: false, isQuestCharacter: true, questCharID: 5, currentQuestID: 0, currentCharImg: "Media\\Characters\\QuestChars\\Other\\nightclub_bouncer.jpeg", currentCharState: "Bouncer", characterWork: "Bouncer", SexRole: "Active", dominance: 100, gender: "Male", fat: 40, strength: 4, vitality: 3, endurance: 5, dexterity: 4, defense: 4, sexualPreference: "Bi", clothesPreference: "men", skin: "White", age: 28, }, true)>> <<set $indexNPC = $Characters.indexOf(_bouncer)>> <<set $interactionNpc = $Characters[$indexNPC]>> <<unset $maleNames $femaleNames $surnames>> <</nobr>>
<<nobr>> <<DeleteCharacter $interactionNpc>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "Delete_nightclub_bouncer">> <<include "DamienFirstMeet">> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $interactionNpc 'Get out of here'>> <<include "Delete_nightclub_bouncer">> <div class="padding-top"> <div class="btn"><<button "Leave" $player.info.currentLocation>> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "CharactersData">> <<run _damian = CreateCharacter({ isPlayer: false, isQuestCharacter: true, questCharID: 4, currentQuestID: 0, currentCharImg: "Media\\Characters\\QuestChars\\Damian King\\0.jpeg", currentCharState: "Nightclub owner", characterWork: "Nightclub owner", SexRole: "Active", dominance: 100, gender: "Male", fat: 40, firstName: "Damian", secondName: "King", strength: 9, vitality: 9, endurance: 9, dexterity: 9, defense: 9, sexualPreference: "Bi", clothesPreference: "men", skin: "White", age: 34, }, true)>> <<set $indexNPC = $Characters.indexOf(_damian)>> <<set $interactionNpc = $Characters[$indexNPC]>> <<unset $maleNames $femaleNames $surnames>> <<run RandomRelocateCharacter($indexNPC, "NC_VIP_Lounge")>> <<run RelocateCharacters()>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatMessage 'He looks at the money, then at you. With a smirk, he pockets the cash and steps aside.'>> <<Chat $interactionNpc 'You saw nothing. Move along.'>> <<set $player.money -= 2000>> <<include "Delete_nightclub_bouncer">> <div class="padding-top"> <div class="btn"><<button "Continue" "DamienFirstMeet">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatMessage 'The bouncer hesitates, glances at a list, and eventually nods.'>> <<Chat $interactionNpc 'Fine. Just don’t cause trouble.'>> <<include "Delete_nightclub_bouncer">> <div class="padding-top"> <div class="btn"><<button "Continue" "DamienFirstMeet">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "CreateDamian_NC">> <<run $player.characterEvents.registerEvent($player.info.id, "MeetDamian", 1)>> <<Chat $interactionNpc 'Who are you? I don\'t recall giving you permission to wander around this part of the club.'>> <<ChatMessage 'He slowly looks you over, narrowing his eyes in assessment before smirking.'>> <<Chat $interactionNpc 'But since you\'re here, it means you somehow slipped past my guard. Now that’s interesting. Maybe you\'re not entirely useless.'>> <<ChatMessage 'He pauses, leaning back into the plush velvet chair, interlocking his fingers in front of him.'>> <<run $player.characterEvents.registerEvent($interactionNpc.info.id, "knows you", 1)>> <<Chat $interactionNpc 'I’m Damian. This club is my territory. But here, you can find more than just entertainment… there\'s also work.'>> <<Chat $player 'Work? For whom?'>> <<ChatMessage 'Damian: chuckles, pulls a cigar from his pocket, and lights it, exhaling a thick cloud of smoke.'>> <<Chat $interactionNpc 'For hunters.'>> <<Chat $player 'Hunters?'>> <<Chat $interactionNpc 'Yeah. See, there\'s this corporation—BioGenesis. Those bastards rake in billions from biotechnology, but they have their darker dealings, too. Their serums flood the streets, giving people the ability to interact with Etherium.'>> <<Chat $player 'Etherium?'>> <<ChatMessage 'Damian: nods, taking a slow drag before exhaling another trail of smoke.'>> <<Chat $interactionNpc 'Pure energy. Manipulate it, and you alter reality. Those who gain this ability through the serum are called Etheriants.'>> <<ChatMessage 'He falls silent for a moment, watching your reaction before continuing.'>> <<Chat $interactionNpc 'But Controlling Etherium isn’t so simple. To use it on someone, an Etheriant first needs to weaken their target—break them, corner them. Only then can they truly bend reality to their will.'>> <<Chat $interactionNpc 'The more Etherium an Etheriant absorbs, the greater their abilities become. But most of them use it for chaos, twisting people into their playthings, slaves, puppets.'>> <<Chat $interactionNpc 'But here’s the catch—an Etheriant’s ability to absorb Etherium depends on their intelligence. The smarter they are, the more energy they can take in without losing themselves. Those with keen minds can wield Etherium for long periods without suffering consequences. But the fools… they eventually devolve into mindless beasts.'>> <<Chat $interactionNpc 'Yet, there are exceptions. Etheriants with exceptionally high intelligence can absorb Etherium without harming themselves, fully bending it to their will. They’re rare, but the most dangerous. Their minds remain sharp and calculating, even as they attain power beyond human comprehension.'>> <<Chat $interactionNpc 'But take too much, and you’re no longer human. Madness, mutations, loss of control. There aren’t many like that, but even one can unleash absolute chaos.'>> <<Chat $interactionNpc 'And then there’s the instability. Etherium doesn’t just change the target—it changes the Etheriant, too. No one knows what effect it will have next. Sometimes, it grants unimaginable power. Other times… pure horror.'>> <<Chat $interactionNpc 'Its effects aren’t immediate. It seeps in, rewriting the body and mind. Some don’t even realize they’ve changed until it’s far too late.'>> <<ChatMessage 'He exhales another stream of smoke, a smirk playing on his lips.'>> <<Chat $interactionNpc 'But there’s a way to counter it. I have a treatment that can neutralize Etherium’s effects. If you ever get exposed, come to me. Of course, it won’t be free. But then again, what’s your life worth to you?'>> <<Chat $player 'Where did you get this treatment?'>> <<ChatMessage 'Damian: smirks, tapping his fingers on the glass table.'>> <<Chat $interactionNpc 'I have people everywhere. Even inside BioGenesis.'>> <<ChatMessage 'His gaze sharpens, his voice dropping to a near whisper.'>> <<Chat $interactionNpc 'But let’s get down to business. I’m offering you a job—contracts to eliminate Etheriants. Good pay, useful connections. You could make a name for yourself as a hunter… or end up as one of their victims. The choice is yours.'>> <<Chat $interactionNpc 'One more thing. Every contract you complete boosts your reputation among hunters. If you want to be the best, now’s the time to start.'>> <div class="padding-top"> <div class="btn"><<button "Leave" "NC_VIP_Lounge">> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<LockSettings>> <<set _Robert = $Characters.filter((character) => character.info.questInfo.questCharID == 1)[0]>> <<set _Amanda = $Characters.filter((character) => character.info.questInfo.questCharID == 3)[0]>> <<set _robAmPic = "Media//Quest//Robert//Events//0//Robert_Amanda.jpg">> <<ChatMessage 'As you pass by Robert and Amanda\'s bedroom, you hear their voices through the slightly open door. They\'re sitting on the bed, and the conversation sounds tense but with a hint of warmth.'>> <<DrawImg _robAmPic>> <<Chat _Robert '*sighs* I don’t get it, Amanda. I really wanted everything to work out, but in the end—nothing. It’s like my body let me down.'>> <<Chat _Amanda '*softly* Robert, don’t blame yourself like that. It happens, you know. A lot of guys go through this, and it’s not your fault.'>> <<Chat _Robert 'Yeah, but it’s damn embarrassing. I feel kind of inadequate. I wanted to make you happy, and in the end, I couldn’t even do that.'>> <<Chat _Amanda 'Hey, you make me happy in other ways, not just in bed. Sex isn’t everything, really. Let’s try again later, without rushing. Maybe you just need to relax.'>> <<Chat _Robert 'I get it, but it still pisses me off. It’s like I let you down.'>> <<Chat _Amanda 'You didn’t let me down. I love you, and we’ll get through this together. I’m with you, you hear?'>> <<Chat _Robert 'Thanks, Amanda. You’re really great for being so supportive. I just want to fix this somehow.'>> <<Chat _Amanda 'Maybe we should see a doctor? There might be some ways we don’t know about.'>> <<Chat _Robert 'Yeah, probably. I just don’t want to think that I’m broken or something.'>> <<Chat _Amanda 'You’re not broken, Robert. You’re a person, my beloved person. And I accept you as you are.'>> <<ChatMessage 'Their voices quiet down, and you hear them hugging softly. Deciding not to disturb their moment, you walk away.'>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "RobertQuest1_GetCharacters">> <<ChatMessage 'Robert approaches you in the living room.'>> <<Chat _Robert '*rubbing the back of his neck and avoiding eye contact* Hey, I’ve got a weird favor to ask. I know you’re acquainted with Mad Dog, that gang leader. I heard he’s tied to BioGenesis and deals their experimental serums on the black market. Could you ask him for something to help with… well, my impotence? I want to feel young again, strong, like a real alpha male. Will you do this for me? I’ll owe you big time.'>> <<Chat $player '*You nodded* Alright, Robert. I’ll handle it.'>> <<Chat _Robert '*He let out a relieved sigh.* Thanks. You can usually find him at the abandoned warehouse on the edge of the slums. And, uh… don’t tell anyone, okay?'>> <<run _questList = [ { id: "robert_quest_1", title: "Serum for Robert", description: "Robert has asked you to find a serum to treat sexual impotence. Mad Dog can help me with that.", state: "active", questType: "side", tasks: [ { description: "Get the serum", completed: false }, { description: "Give Robert the serum.", completed: false } ], } ]>> <<CreateQuest _questList true>> <div class="btn padding-top"><<button "Leave" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "RobertQuest1_GetCharacters">> <<ChatMessage 'The door creaked open, and Amanda burst into the room, her heels clicking sharply against the wooden floor. She froze in the doorway, her bag slipping from her hands and thudding to the ground. Before her sat Robbie—a long-legged blonde with ample breasts, draped in a pink dress that clung like a second skin. Robbie giggled, playing with her glossy hair, her bright red nails glinting under the lamplight.'>> <<Chat _Amanda '*her voice cracking with disbelief* Robert?! Oh my God, is that you?!'>> <<ChatMessage 'Robbie sprang up, wobbling slightly on sky-high heels, and fluttered her doll-like eyelashes.'>> <<Chat _Robert 'Oh, hey, sweetie! *squealed, swaying her hips and giving her round bottom a playful smack* It’s me, Robbie! Aren’t I just a sexy little thing?'>> <<ChatMessage 'Amanda stepped forward, her face white as chalk. She reached out with a trembling hand and touched Robbie’s shoulder, as if testing whether this was a hallucination. Her fingers tightened, her breath quickening.'>> <<Chat _Amanda 'What the hell, Robert? *whispered, her voice quaking with fury and despair* You were my husband! And now… now you’re *this*? What did you do to yourself?!'>> <<Chat _Robert '*tilted her head, her full lips pouting* Well, I took this cute little thing, and bam! *giggled, spinning around, her dress hiking up to flash lacy panties* Now I’m such a hottie! You like it, right?'>> <<ChatMessage 'Amanda turned away, clapping a hand over her mouth to choke back a scream. A tear slid down her cheek, smearing her mascara into a dark streak. She loved Robert—his deep voice, his strong hands, his sharp mind. And now, this giggling doll stood in his place, reeking of vanilla perfume and bubblegum.'>> <<Chat _Amanda 'Do you even realize what you’ve done? *murmured, her voice breaking* I don’t recognize you… This is too much, Robbie. Too much!'>> <<ChatMessage 'Robbie let out a little whimper, scampered over, and threw her arms around Amanda, pressing her soft curves against her. Her long hair brushed Amanda’s face, the sweet scent of her perfume overwhelming.'>> <<Chat _Robert 'Don’t cry, honey! *chirped, gazing up with wide blue eyes* I still love you! And I’m, like, so fun now—we can hang out together!'>> <<ChatMessage 'Amanda swallowed hard, her throat tight, and looked at Robbie. Her heart was shattering, but she couldn’t deny her feelings. Slowly, she returned the embrace, Robbie’s warmth piercing through her pain.'>> <<Chat _Amanda 'I love you *choked out, her voice raw with tears* Even like this… a silly, airheaded doll. I still love you, Robert. But, damn it, it hurts.'>> <<ChatMessage 'Robbie beamed, oblivious to the sorrow in Amanda’s words, and squeezed her tighter.'>> <<Chat _Robert 'Yay! We’ll be besties! *squealed, planting a sticky, gloss-smeared kiss on Amanda’s cheek*'>> <<ChatMessage 'Amanda forced a weak smile, brushing away tears with the back of her hand. She gripped Robbie’s hand hard, her nails digging into her palm. They stood there in the middle of the room—Amanda, lost in confusion, and Robbie, humming carelessly to herself. The love endured, but everything else had changed forever.'>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "RobertQuest1_GetCharacters">> <<set _Robert.info.questInfo.currentCharImg = "Media//Characters//QuestChars//Robert//face//2.png">> <<run completeTaskByQuestID("robert_quest_1", "Give Robert the serum.")>> <</nobr>>
<<nobr>> <<include "RobertQuest1_GetCharacters">> <<set _Robert.info.questInfo.currentCharImg = "Media//Characters//QuestChars//Robert//face//3.png">> <<run completeTaskByQuestID("robert_quest_1", "Give Robert the serum.")>> <</nobr>>
<<nobr>> <<set _Robert = $Characters.filter((character) => character.info.questInfo.questCharID == 1)[0]>> <<set _Amanda = $Characters.filter((character) => character.info.questInfo.questCharID == 3)[0]>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "RobertQuest1_GetCharacters">> <<include "ChangeRobertToAlpha">> <<ChatMessage 'You chose "Mask" and returned home. Robert was waiting in the living room, fidgeting nervously with his hands. You handed him the bottle without a word. He popped it open, swallowed the pill, and went still.'>> <<ChatMessage 'A minute later, his body started shaking. Muscles swelled with power, his shirt splitting at the seams as his chest and biceps ballooned. Wrinkles faded, his hair turned dark, and a hungry gleam lit up his eyes. Standing in front of you was a 25-year-old Robert—tall, ripped, with a bulge in his pants that screamed trouble.'>> <<Chat _Robert 'Goddamn, girl *he breathed, tearing off what was left of his clothes* You’ve brought me back to life!'>> <<ChatMessage 'His bare torso gleamed with sweat, his thick, pulsing cock standing rigid. He stepped toward you with a grin.'>> <<Chat _Robert 'I want to thank you. You’re cool with that, right?'>> <div class="btn padding-top"><<button "Agree" "Robert_Request_1_Female_Option1_Mask_Agree">><</button>></div> <div class="btn padding-top"><<button "Reject" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "RobertQuest1_GetCharacters">> <<ChatMessage 'You nodded, your pussy already wet. Robert grabbed your waist, slammed you against the wall, and ripped your skirt off. His hands were rough, his moves bold. He hooked your thighs, lifted you up, and thrust into you hard. You gasped as his massive cock stretched your pussy wide. His hips smacked against yours as he fucked you, growling with raw pleasure.'>> <<run _pic = "Media\\Quest\\Robert\\Quests\\1\\robert_f_Player.mp4">> <<Video _pic>> <<Chat _Robert 'Fuck, you’re so tight *he snarled, speeding up* I’m gonna cum right inside you!'>> <<ChatMessage 'Minutes later, he roared, and you felt his hot cum flood your pussy. You came right after, trembling from the force of it. Robert pulled out, set you down, and gave your ass a sharp slap.'>> <<Chat _Robert 'That was fucking unreal, girl.'>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "RobertQuest1_GetCharacters">> <<include "ChangeRobertToBimbo">> <<ChatMessage 'You picked "Bimbo"—just to see what’d happen. Back home, you gave Robert the bottle. He took the pill without a second thought, trusting you completely.'>> <<ChatMessage 'His body started to change. His shoulders shrank, his waist pinched in, and his chest swelled into perky D-cup breasts. His hair grew long and platinum blonde, spilling down to his hips, while his face turned doll-like—plump lips, big eyes, and a goofy smile. Now, there was Robbie—a leggy bimbo with an ass made for spanking.'>> <<run _pic = "Media\\Quest\\Robert\\Quests\\1\\robert_licks.mp4">> <<Video _pic>> <<Chat _Robert 'Ooh, hehe *giggled, twirling a lock of hair* I’m, like, so hot! You want me, don’t you?'>> <<ChatMessage 'You stared, your pussy throbbing. Robbie dropped to her knees, fumbled your blouse open, and latched onto your nipples, sucking eagerly. You moaned, grabbed her hair, and yanked her down between your legs.'>> <<Chat $player 'Lick me, slut *you ordered*'>> <<ChatMessage 'Robbie dove in, her tongue sloppy but desperate as it worked your pussy. You guided her until you came, drenching her face with your juices.'>> <div class="btn padding-top"><<button "See Amanda\'s reaction" "Robert_Request_1_Finale_Amanda_Bimbo">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "RobertQuest1_GetCharacters">> <<include "ChangeRobertToAlpha">> <<ChatMessage 'You chose "Mask" and returned home. Robert was waiting for you in the living room, nervously fidgeting with his hands. You silently handed him the bottle. He opened it, swallowed the pill, and froze.'>> <<ChatMessage 'A minute later, his body started trembling. Muscles bulged with power, his shirt ripping at the seams as his chest and biceps swelled. Wrinkles smoothed out, his hair darkened, and a predatory glint sparked in his eyes. Standing before you was 25-year-old Robert—tall, muscular, with a bulge in his pants that promised action.'>> <<Chat _Robert 'God, buddy *he exhaled, tearing off the remains of his clothes* You’ve made me feel alive again!'>> <<ChatMessage 'His bare torso glistened with sweat, his thick, throbbing cock standing rock-hard. He stepped toward you, grinning.'>> <<Chat _Robert 'I want to thank you. You don’t mind, do you?'>> <div class="btn padding-top"><<button "Agree" "Robert_Request_1_Male_Option1_Mask_Agree">><</button>></div> <div class="btn padding-top"><<button "Reject" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "RobertQuest1_GetCharacters">> <<ChatMessage 'You nodded, feeling your own erection grow. Robert grabbed your hips, pinned you against the wall, and ripped off your pants. His hands were rough, his movements sure. He turned you around, spat on his palm, and lubed up his shaft. You gasped as he entered you—slowly but forcefully, stretching you to your limits. His hips slapped against yours as he thrust, growling with pleasure.'>> <<run _pic = "Media\\Quest\\Robert\\Quests\\1\\anal_robert_gay.mp4">> <<Video _pic>> <<Chat _Robert 'Fuck, you’re so tight *he grunted, picking up speed* I’m gonna cum right inside you!'>> <<ChatMessage 'Minutes later, he roared, and you felt hot cum flood into you. You climaxed right after, shaking from the intensity. Robert pulled out, slapped your ass, and laughed.'>> <<Chat _Robert 'That was fucking incredible, buddy.'>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "RobertQuest1_GetCharacters">> <<ChatMessage 'You chose "Bimbo"—purely out of curiosity. Back home, you handed the bottle to Robert. He took the pill without hesitation, trusting you completely.'>> <<ChatMessage 'His body began to shift. His shoulders narrowed, his waist cinched, and his chest blossomed into perky D-cup breasts. His hair stretched down to his waist, turning platinum blonde, and his face morphed into something doll-like—plump lips, big eyes, and a vacant smile. Before you stood Robbie—a sexy bimbo with long legs and an ass begging for a spank.'>> <<Chat _Robert 'Ooh, hehe *giggled, twirling a strand of hair* I’m, like, so hot! You want me, right?'>> <<ChatMessage 'You stared, your cock straining against your pants. She dropped to her knees, unzipped your fly, and wrapped her lips around your shaft. Her tongue was clumsy but eager, slurping and drooling as she sucked. You grabbed her hair and pushed deeper, making her gag.'>> <<run _pic = "Media\\Quest\\Robert\\Quests\\1\\robert_blowjob_transform.mp4">> <<Video _pic>> <<Chat _Robert 'Fuck me, baby *she moaned, getting on all fours*'>> <<ChatMessage 'You entered her from behind—her pussy was wet and tight, gripping you like a vice. You pounded her, spanking her ass as she squealed.'>> <<run _pic = "Media\\Quest\\Robert\\Quests\\1\\robert_fuck_transform.mp4">> <<Video _pic>> <<Chat _Robert 'Oh yeah, harder, I’m such a slut!'>> <<ChatMessage 'After cumming across her back, you watched her giggle, smearing the cum over her curves.'>> <div class="btn padding-top"><<button "Continue" "Robert_Request_1_Finale_Amanda_Bimbo">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "RobertQuest1_GetCharacters">> <<ChatMessage 'You chose "Mask" and returned home. Robert was waiting in the living room, nervously twisting his fingers. You handed him the bottle without a word. He opened it, swallowed the pill, and went still.'>> <<ChatMessage 'A minute later, his body shook. Muscles bulged with power, his shirt ripping at the seams as his chest and biceps swelled. Wrinkles smoothed out, his hair darkened, and a predatory glint sparked in his eyes. Before you stood a 25-year-old Robert—tall, muscular, with a cock that, judging by the bulge in his pants, was ready to go.'>> <<Chat _Robert 'God, girl *he exhaled, tearing off the shreds of his clothes* You’ve made me alive again!'>> <<ChatMessage 'His bare torso glistened with sweat, his thick, throbbing cock standing hard. He stepped toward you, grinning.'>> <<Chat _Robert 'I want to thank you. You’re okay with that, right?'>> <div class="btn padding-top"><<button "Agree" "Robert_Request_1_Shemale_Option1_Mask_Agree">><</button>></div> <div class="btn padding-top"><<button "Reject" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "RobertQuest1_GetCharacters">> <<ChatMessage 'You nodded, feeling your own cock stiffen under your skirt. Robert grabbed your waist, pinned you against the wall, and ripped your clothes off. His eyes widened when he saw your cock, but his grin only grew.'>> <<Chat _Robert 'Oh, so you’re not just a girl *growled, wrapping his big hand around your shaft* This is even better.'>> <<ChatMessage 'He turned you to face the wall, spat on his palm, and slicked up his cock. You gasped as he entered you—slow but forceful, stretching your ass to its limit. His hips slammed against yours as he fucked you, growling with pleasure.'>> <<run _pic = "Media\\Quest\\Robert\\Quests\\1\\robert_fuck.mp4">> <<Video _pic>> <<Chat _Robert 'Fuck, you’re so tight *snarled, picking up speed* I’m gonna cum right inside you!'>> <<ChatMessage 'A few minutes later, he roared, and you felt hot cum flood your ass. Your own cock pulsed, and you came, splattering the wall with your load. Robert pulled out, slapped your ass, and laughed.'>> <<Chat _Robert 'That was fucking amazing, baby.'>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "RobertQuest1_GetCharacters">> <<ChatMessage 'You went with "Bimbo"—purely out of curiosity. Back home, you gave Robert the bottle. He took the pill without hesitation, trusting you completely.'>> <<ChatMessage 'His body started shifting. His shoulders narrowed, his waist cinched, and his chest bloomed into perky D-cup breasts. His hair stretched down to his hips, turning platinum blonde, and his face became doll-like—plump lips, big eyes, and a silly smile. Now, there was Robbie—a sexy bimbo with long legs and an ass begging for a spanking.'>> <<Chat _Robert 'Ooh, hehe *giggled, twirling a strand of hair* I’m, like, so hot! You want me, right?'>> <<run _pic = "Media\\Quest\\Robert\\Quests\\1\\robert_blowhob_trans.mp4">> <<Video _pic>> <<ChatMessage 'You watched her, your cock hardening. Robbie dropped to her knees, lifted your skirt, and wrapped her lips around your shaft. Her tongue was clumsy but eager, slurping and drooling as she sucked. You grabbed her hair and pushed deeper, making her gag.'>> <<run _pic = "Media\\Quest\\Robert\\Quests\\1\\robert_fuck_trans.mp4">> <<Video _pic>> <<Chat _Robert 'Fuck me, sweetie *she moaned, getting on all fours*'>> <<ChatMessage 'You entered her from behind—her pussy was wet and tight, gripping your cock like a vise. You pounded her, spanking her ass as she squealed.'>> <<Chat _Robert 'Oh yes, deeper, I’m such a slut!'>> <<ChatMessage 'After cumming inside her, you pulled out and watched her giggle, smearing the cum over her curves.'>> <div class="btn padding-top"><<button "See Amanda\'s reaction" "Robert_Request_1_Finale_Amanda_Bimbo">><</button>></div> <</nobr>>
<<nobr>> <<if getQuestState("sarah_quest_01") == undefined>> <<goto "Sarah_Quest_01_Start">> <<elseif getQuestState("sarah_quest_01") == "active" && $player.characterEvents.isEventRegistered($player.info.id, "Concert ticket") == true>> <<goto "Sarah_Quest_01_End">> <<elseif getQuestState("sarah_quest_2") == undefined && getQuestState("sarah_quest_01") == "completed">> <<goto "SarahQuest2_Start_Male">> <<elseif getQuestState("sarah_quest_2") == "active" && getTaskState("sarah_quest_2", "Find a girl who’s willing to help") == 'completed'>> <<goto "SarahQuest2_Male_FriendHelp_Finish">> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $canShowStatsBtn = false>> <<set $gameSettings.allowSaves = false>> <<run _questList = [ { id: "sarah_quest_01", title: "Purchase Concert Tickets", description: "You’ve decided to look for tickets to the band’s concert that Sarah is eager to attend.", state: "active", questType: "side", tasks: [ { description: "Find concert tickets", completed: _hasConsole }, { description: "Hand Over the Tickets to Sarah", completed: false } ], } ]>> <<CreateQuest _questList true>> <<ChatMessage 'You’re walking down the hall toward Sarah room when a loud bang erupts from inside, followed by a torrent of curses. Curious as hell, you knock on her door. It flies open so fast it nearly rips off the hinges. Sarah stands there, red hair a wild mess, eyes blazing with fury.'>> <<Chat $interactionNpc 'This is fucking bullshit!'>> <<ChatMessage 'She yells, chucking her phone onto the bed.'>> <<Chat $interactionNpc 'Tickets to my favorite band’s show? Gone! My dream’s fucking dead!'>> <<ChatMessage 'She’s pacing like a caged animal, arms flailing, face turning redder by the second. You can see she’s gutted, and something in you snaps into gear.'>> <<Chat $player 'Sarah, chill'>> <<ChatMessage 'you say, keeping your voice steady but firm.'>> <<Chat $player 'I’ll fix this. Give me a couple days.'>> <<ChatMessage 'She glares at you, chest heaving, skepticism written all over her face, but she nods anyway.'>> <<Chat $interactionNpc 'Go for it if you want. I’ve checked everywhere—there’s jack shit left'>> <<ChatMessage 'You suddenly remember a sketchy guy from Skid Row who deals in all kinds of crap. Maybe he’s got those tickets stashed somewhere.'>> <<include "CharactersData">> <<run _sketchyGuy = CreateCharacter({ isPlayer: false, isQuestCharacter: true, questCharID: 6, currentQuestID: 0, currentCharImg: "Media\\Characters\\QuestChars\\Other\\SketchyGuy\\SketchyGuy.jpeg", currentCharState: "Sketchy Guy", characterWork: "Sketchy Guy", SexRole: "Active", dominance: 100, gender: "Male", fat: 40, strength: 4, vitality: 3, endurance: 5, dexterity: 4, defense: 4, sexualPreference: "Bi", clothesPreference: "men", skin: "White", age: 23, }, true)>> <<set $indexOfSketchyGuy = $Characters.indexOf(_sketchyGuy)>> <<run RandomRelocateCharacter($indexOfSketchyGuy, "SR_SkidRow")>> <<run RelocateCharacters()>> <<unset $maleNames $femaleNames $surnames>> <div class="padding-top"> <div class="btn"><<button "Leave" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<run completeTaskByQuestID("sarah_quest_01", "Hand Over the Tickets to Sarah")>> <<ChatMessage 'You’re back home and knock on Sarah’s door again. She opens it, still scowling, towel wrapped around her wet hair like she just stepped out of the shower.'>> <<Chat $interactionNpc 'What now?'>> <<ChatMessage 'She grumbles, rubbing at her hair.'>> <<Chat $player 'Here'>> <<ChatMessage 'You say, handing her the tickets'>> <<Chat $player 'Two for the show. Wanna go together?'>> <<ChatMessage 'Her eyes go wide as saucers. She snatches the tickets, staring at them like they’re gold.'>> <<Chat $interactionNpc 'No fucking way! How’d you pull this off?'>> <<ChatMessage 'She shouts, a grin breaking through the gloom'>> <<Chat $interactionNpc 'You’re a goddamn genius!'>> <<ChatMessage 'She lunges at you, wrapping you in a tight hug. Her chest presses against yours, and you catch a whiff of her sweet vanilla perfume. It’s intoxicating.'>> <<Chat $interactionNpc 'Thank you—you’re the best! Hell yeah, I’m going with you!'>> <<ChatMessage 'She says, pulling back but still beaming.'>> <<ChatMessage 'You smirk, heart pounding from how close she was.'>> <div class="padding-top"> <div class="btn"><<button "Continue" "Sarah_Quest_01_End_02">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/City/RedLightDistrict/Night Club/NC_DanceFloor.jpg">> <<ChatMessage 'Concert night. You and Sarah are outside the club, swallowed by a sea of hyped-up fans. The air’s thick with chatter, sweat, and vape smoke. Sarah’s a knockout—black dress hugging every curve, heels making her legs look endless. You try not to stare, but fuck, it’s tough.'>> <<Chat $interactionNpc 'This is gonna be fucking epic!'>> <<ChatMessage 'She screams, bouncing with excitement and grabbing your hand'>> <<Chat $interactionNpc 'You saved my night, you badass!'>> <<Chat $interactionNpc 'I wanted to hear ‘em too'>> <<ChatMessage 'you say with a sly grin, though really, you just couldn’t pass up a night with her.'>> <<ChatMessage 'Inside, it’s pure madness. The music hits like a sledgehammer, bass rattling the floor, strobe lights stabbing your eyes. The crowd’s screaming, jumping, losing it. Sarah dives right in, dancing like she’s possessed—spinning, hair flying, dress riding up just enough to flash her thighs. She catches you looking, winks, and sways closer.'>> <<Chat $interactionNpc 'Let’s get drinks!” she yells over the noise.'>> <div class="padding-top"> <div class="btn"><<button "Continue" "Sarah_Quest_01_End_03">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/City/RedLightDistrict/Night Club/NC_Bar.jpg">> <<ChatMessage 'You fight your way to the bar. Sarah’s slamming shots, laughing her ass off, spilling half of them on the counter. She tugs your sleeve, daring you to keep up. An hour later, she’s trashed—eyes glassy, movements sloppy, words slurring.'>> <<Chat $interactionNpc 'Best fucking concert ever!'>> <<if $player.gender() == "Female">> <<ChatMessage 'she bellows, throwing her arms around your neck. Her warm breath hits your ear, her chest pressed tight against you. A spark ignites between your legs'>> <<else>> <<ChatMessage 'She hollers, throwing her arms around your neck. Her hot breath tickles your ear, her chest mashed against you again. Your dick’s waking up, and there’s no hiding it.'>> <</if>> <<Chat $player 'You good, Sarah?'>> <<ChatMessage 'You ask, knowing damn well she’s not'>> <<Chat $interactionNpc 'Fucking amazing!'>> <<ChatMessage 'She cackles.'>> <<Chat $interactionNpc 'But I’m done—let’s bounce.'>> <div class="padding-top"> <div class="btn"><<button "Continue" "Sarah_Quest_01_End_04">><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/Neighborhood/OakStreet/PlayerHome/LivingRoom.jpg">> <<ChatMessage 'You steady her as you head out. The cool night air sobers her up a bit, but she’s still stumbling, clinging to you like a lifeline.'>> <<ChatMessage 'Back home, Sarah staggers to her bedroom door, giggling like a kid.'>> <<Chat $interactionNpc 'Come in for a sec?'>> <<ChatMessage 'She slurs, peering up at you with bleary, playful eyes.'>> <div class="btn padding-top"><<button "Yeah, sure">> <<run $player.characterEvents.registerEvent($player.info.id, "Sarah-Allow", 1)>> <<if $player.gender() == "Male">> <<goto "Sarah_Quest_01_End_Male">> <<elseif $player.gender() == "Female">> <<goto "Sarah_Quest_01_End_Female">> <<elseif $player.gender() == "Shemale">> <<goto "Sarah_Quest_01_End_Trans">> <</if>> <</button>></div> <div class="btn padding-top"><<button "I'd rather head to my room" "Sarah_Quest_01_End_Male_Reject">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $player 'Sorry, Sarah, but I think I’ve had a bit too much to drink—I’d better head to my room.'>> <<Chat $interactionNpc 'Ugh, what a wimp'>> <div class="padding-top"> <div class="btn"><<button "Leave" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/Neighborhood/OakStreet/PlayerHome/Sarah_Bedroom.jpg">> <<ChatMessage 'Inside, she flops onto the bed and yanks you down next to her. She scoots close, her thigh brushing yours, heat radiating off her.'>> <<Chat $interactionNpc 'Listen'>> <<ChatMessage 'She says, voice low and raspy'>> <<Chat $interactionNpc 'you’re sexy as fuck tonight. All sweet and shit—gives me chills.'>> <<ChatMessage 'You grin, heat creeping up your neck.'>> <<Chat $player 'You’re pretty hot yourself, Sarah'>> <<ChatMessage 'She lunges, kissing you hard—messy, desperate, tongue shoving into your mouth, hands clawing at your chest. You grab her waist, kissing back, and feel her fingers fumbling with your belt.'>> <<Chat $interactionNpc 'Gonna thank you proper'>> <<ChatMessage 'She whispers, breaking away for a split second. She unzips your pants and wraps her hand around your cock.'>> <<Video "Media\\Characters\\QuestChars\\Sarah\\Quests\\0\\MF\\0.mp4">> <<Chat $player 'Oh, fuck, Sarah…'>> <<ChatMessage 'You groan as she starts stroking, slow at first.'>> <<ChatMessage 'Her grip tightens, eyes locked on yours, pace picking up. You’re moaning, head tipping back as she works you with sharp, sure strokes.'>> <<Chat $interactionNpc 'Like that, huh?'>> <<ChatMessage 'She rasps, smirking.'>> <<ChatMessage 'You can’t even talk—just grunt as the pressure builds. She senses it, leans in, mouth open. You lose it, coming hard, shooting into her mouth while she stares you down. Pleasure crashes over you, and she wipes her lips with the back of her hand.'>> <<Video "Media\\Characters\\QuestChars\\Sarah\\Quests\\0\\MF\\1.mp4">> <<Chat $interactionNpc 'There ya go, hero'>> <<Video "Media\\Characters\\QuestChars\\Sarah\\Quests\\0\\MF\\2.mp4">> <<ChatMessage 'She mumbles, smiling sleepily before collapsing back. Her eyes flutter shut, and she’s out cold, still in that tight dress.'>> <<ChatMessage 'You sit there, catching your breath, then drape a blanket over her. She doesn’t budge. You stand, fix your pants, and slip out, muttering to yourself, “What the fuck just happened?”'>> <div class="padding-top"> <div class="btn"><<button "Leave" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/Neighborhood/OakStreet/PlayerHome/Sarah_Bedroom.jpg">> <<ChatMessage 'She flops onto the bed and drags you down next to her. She slides closer, her thigh brushing yours, warmth pouring off her.'>> <<Chat $interactionNpc 'Listen'>> <<ChatMessage 'She says, voice low and raspy'>> <<Chat $interactionNpc 'you’re sexy as fuck tonight. All sweet and shit—gives me chills.'>> <<ChatMessage 'You grin, heat creeping up your neck.'>> <<Chat $player 'You’re pretty hot yourself, Sarah'>> <<ChatMessage 'She lunges at you, kissing you hard—sloppy, urgent, her tongue pushing into your mouth, hands clawing at your shirt. You grab her waist, kissing back just as fierce, and feel her tugging at your pants.'>> <<Chat $interactionNpc 'Gonna thank you right'>> <<ChatMessage 'She whispers, pulling back for a heartbeat'>> <<Chat $interactionNpc 'Wait, let’s hit the bathroom—it’s quieter'>> <<Chat $player 'Alright'>> <<ChatMessage 'You reply, voice trembling with anticipation'>> <<ChatMessage 'In the bathroom, Sarah locks the door and spins toward you with a wicked grin.'>> <<Chat $interactionNpc 'I wanna show you how grateful I am'>> <<ChatMessage 'She says, nudging you against the sink.'>> <<ChatMessage 'She sinks to her knees, hands on your thighs, staring up at you with raw hunger.'>> <<Chat $player 'Sarah, you sure?'>> <<ChatMessage 'You ask, even though your body’s already screaming yes'>> <<Chat $interactionNpc 'Damn right'>> <<ChatMessage 'She says, no hesitation.'>> <<ChatMessage 'She eases your pants and underwear down, baring you completely. Nerves and excitement crash together as her warm breath grazes your skin. Then she dives in—her tongue moving over you, bold and sure, hitting every spot just right. You gasp, clutching the sink for balance as pleasure surges through you.'>> <<Chat $interactionNpc 'Like that, huh?'>> <<ChatMessage 'She purrs between licks, eyes locked on yours.'>> <<ChatMessage 'You nod, speechless, as the feeling intensifies. She speeds up, driving you wild, and you feel the edge closing in. Then it hits—an orgasm tears through you, your body shaking as Sarah keeps going until you’re totally wrecked. She stands, wipes her mouth with a smirk, and looks pleased with herself.'>> <<Chat $interactionNpc 'There, now we’re square'>> <<ChatMessage 'She says, tossing you a playful grin'>> <<ChatMessage 'You’re still gasping, floored.'>> <<Chat $player 'That was… unreal'>> <<Video "Media\\Characters\\QuestChars\\Sarah\\Quests\\0\\FF\\0.mp4">> <<ChatMessage 'You finally choke out.'>> <<ChatMessage 'Sarah laughs softly and helps you fix your clothes.'>> <<Chat $interactionNpc 'Glad you liked it. Let’s crash'>> <<ChatMessage 'You stumble back to her room. She collapses onto the bed, already half-gone. You toss a blanket over her and sit there for a sec, reeling from it all. As you head out, you mutter, “What the fuck just happened?” but there’s a grin on your face. This night’s burned into your memory forever.'>> <div class="padding-top"> <div class="btn"><<button "Leave" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/Neighborhood/OakStreet/PlayerHome/Sarah_Bedroom.jpg">> <<ChatMessage 'She flops onto the bed and drags you down next to her. She slides closer, her thigh brushing yours, warmth pouring off her.'>> <<Chat $interactionNpc 'Listen'>> <<ChatMessage 'She says, voice low and raspy'>> <<Chat $interactionNpc 'you’re sexy as fuck tonight. All sweet and shit—gives me chills.'>> <<ChatMessage 'You grin, heat creeping up your neck.'>> <<Chat $player 'You’re pretty hot yourself, Sarah'>> <<ChatMessage 'She lunges at you, kissing you hard—sloppy, urgent, her tongue pushing into your mouth, hands clawing at your shirt. You grab her waist, kissing back just as fierce, and feel her tugging at your pants.'>> <<Chat $interactionNpc 'Gonna thank you right. Lie down'>> <<ChatMessage 'She says, a mix of command and tease in her tone.'>> <<ChatMessage 'You do, settling back on the bed, heart pounding with anticipation. Sarah slides between your legs, her fingers quick on your pants’ button.'>> <<ChatMessage 'She tugs them down with your underwear, and for a second, you feel exposed—but her eyes are all want and admiration, easing your nerves.'>> <<Video "Media\\Characters\\QuestChars\\Sarah\\Quests\\0\\FT\\0.mp4">> <<ChatMessage 'Her hand wraps around your cock, soft at first, then firmer. You moan, head dropping back onto the pillow. She leans in, warm breath teasing your skin before her mouth takes you in. It’s electric, a jolt shooting through you. Sarah’s good—tongue swirling, lips just right. You groan, hands gripping the sheets. She glances up, eyes locked on yours, a wicked spark in them as she keeps going. It builds fast, every move pushing you closer. Your breath’s ragged, muscles tightening.'>> <<Chat $player 'Sarah, I’m gonna…'>> <<ChatMessage 'You gasp, but she doesn’t stop—she speeds up.'>> <<ChatMessage 'The orgasm hits like a tidal wave, your body arching as you come in her mouth. She takes it all, eyes still on you, unflinching. When it fades, she pulls back, wipes her mouth with a smirk, and looks damn proud.'>> <<Chat $interactionNpc 'There, now we’re square'>> <<ChatMessage 'She says with a wink.'>> <<ChatMessage 'You’re still panting, grinning like an idiot'>> <<Chat $player 'That was… unreal.'>> <<ChatMessage 'Sarah laughs, climbs up next to you, and snuggles in.'>> <<Chat $interactionNpc 'Glad you liked it. Now let’s crash'>> <<ChatMessage 'She mumbles, smiling sleepily before collapsing back. Her eyes flutter shut, and she’s out cold, still in that tight dress.'>> <<ChatMessage 'You sit there, catching your breath, then drape a blanket over her. She doesn’t budge. You stand, fix your pants, and slip out, muttering to yourself, “What the fuck just happened?”'>> <div class="padding-top"> <div class="btn"><<button "Leave" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "Sarah_Quest2_CreateQuest">> <<run _changePill = GetNewItem("gender_change_pills_female", 1)>> <<run $player.useItem(_changePill, $player)>> <<ChatMessage 'You stare into Sarah\'s pleading eyes; her scent—sweet vanilla—makes your head spin.'>> <<Chat $player 'Okay. *You take the pill from her trembling hand.* I’ll do it for you.'>> <<ChatMessage 'Sarah\'s face lights with gratitude.'>> <<Chat $interactionNpc 'Thank you. You have no idea what this means to me.'>> <<ChatMessage 'You swallow the pill. A tingling rush courses through you: skin softens, muscles smooth, chest swells, hips flare, hair cascades in waves. In minutes a breathtaking female version of you stands before Sarah.'>> <<Chat $interactionNpc 'My God… you look stunning.'>> <<ChatMessage 'You turn to a mirror: full lips, long lashes, breasts straining your shirt.'>> <<Chat $player 'Hope this works.'>> <<ChatMessage 'Sarah rummages through her closet and hands you a short, tight black dress, lace lingerie, and heels.'>> <<Chat $interactionNpc 'This’ll boost your confidence.'>> <<ChatMessage 'Silk panties glide over new curves; the dress hugs every line. Excitement thrums as you head for the park.'>> <div class="btn padding-top"><<button "Park" "SarahQuest2_Fem_Park">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/City/Park/Park.jpg">> <<set _garyIcon = "Media\\Characters\\QuestChars\\Sarah\\Quests\\1\\Gary.png">> <<ChatMessage 'Evening air is cool; Gary sits alone on a bench.'>> <<DrawImage _garyIcon>> <<Chat $player 'Hey. *You cross your legs so the hem rides high.* I’m $player.info.firstName.'>> <<ChatWithoutNPC "Gary" _garyIcon 'Hey, $player.info.firstName. I’m Gary. What’s a gorgeous girl like you doing out here alone?'>> <<Chat $player '*Leaning closer, perfume drifting.* Just walking. You?'>> <<ChatWithoutNPC "Gary" _garyIcon 'Same. Wanna keep me company?'>> <<ChatMessage 'Flirtation flows: laughs, touches, glimpses of cleavage. Gary moves closer, breath grazing your neck.'>> <<ChatWithoutNPC "Gary" _garyIcon 'You’re fucking sexy, $player.info.firstName.'>> <<Chat $player 'Thanks, Gary. *Your skin prickles under his hand creeping higher.*'>> <<ChatWithoutNPC "Gary" _garyIcon 'My place? Wine… something cozier.'>> <<Chat $player 'Sure.'>> <div class="btn padding-top"><<button "Gary’s apartment" "SarahQuest2_Fem_Gary_apartment">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/City/SkidRow/Motel/Room.jpg">> <<set _garyIcon = "Media\\Characters\\QuestChars\\Sarah\\Quests\\1\\Gary.png">> <<ChatMessage '--- --- Warm wood and wine. He pours drinks yet immediately pulls you close.'>> <<ChatWithoutNPC "Gary" _garyIcon 'You’re so hot.'>> <<ChatMessage 'Lips trail your neck; nipples harden; wetness grows. He lifts you onto his lap.'>> <<Chat $player '*Kissing back, voice husky.* I want you.'>> <<ChatMessage 'He strips the dress, unclasping your bra; lips close around a nipple while fingers slide into your soaked core.'>> <<ChatWithoutNPC "Gary" _garyIcon 'Fuck, you’re so wet.'>> <<Chat $player 'Do whatever you want with me.'>> <<ChatMessage 'Predatory grin. He tears off your panties, carries you to the bedroom, tosses you onto the bed, and undresses.'>> <<ChatMessage 'His thick cock presses at your entrance; you spread wider.'>> <<ChatWithoutNPC "Gary" _garyIcon 'You sure?'>> <<Chat $player 'I’m all yours.'>> <<ChatMessage 'He pushes in slowly, stretching you deliciously, then thrusts deep and rhythmic.'>> <<Video "Media\\Characters\\QuestChars\\Sarah\\Quests\\1\\sex\\Fuck_fem.mp4">> <<Chat $player 'Faster!'>> <<ChatMessage 'He pounds harder; bed creaks; pleasure spirals.'>> <<ChatWithoutNPC "Gary" _garyIcon 'I’m gonna cum—cum with me, $player.info.firstName.'>> <<ChatMessage 'Orgasm crashes through you; body clenches, screams fill the room as he spills hot inside.'>> <div class="btn padding-top"><<button "Sarah’s room" "SarahQuest_2_SarahRoom">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/Neighborhood/OakStreet/PlayerHome/Sarah_Bedroom.jpg">> <<if getTaskState("sarah_quest_2", "Help Sarah") != 'completed'>> <<run completeTaskByQuestID("sarah_quest_2", "Help Sarah")>> <</if>> <<ChatMessage 'Still female, you return and sit beside Sarah.'>> <<Chat $player 'Sarah, I found everything. Gary… he seduced me, and we…'>> <<Chat $interactionNpc 'Tell me every detail.'>> <<ChatMessage 'You recount the flirting, the apartment, the fuck. Sarah listens, face pale, eyes blazing.'>> <<Chat $interactionNpc 'He\'s a bastard. But you were brave. Let me thank you.'>> <<ChatMessage 'She unbuttons your blouse; you lie back, trembling.'>> <<ChatMessage 'Sarah kisses down your body, tongue circling your clit, fingers plunging deep until you buck and climax, crying out.'>> <<Video "Media\\Characters\\QuestChars\\Sarah\\Quests\\1\\sex\\lick.mp4">> <<Chat $interactionNpc 'Thank you—you were amazing.'>> <<Chat $player 'You’re the amazing one, Sarah.'>> <<ChatMessage 'She smiles, adjusts her clothes, and slips out. Alone, the pill’s effect fades: breasts recede, hips narrow, cock returns. You lie on the bed—your old body restored, mind forever changed by the night.'>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "Sarah_Quest2_CreateQuest">> <<ChatMessage 'You smirked, pushing her hand with the pill away.'>> <<Chat $player 'I don’t need that shit, Sarah. I’m hot as fuck already. I’ll take him down my way—man to man. He won’t resist.'>> <<ChatMessage 'Your cock twitched in your pants at the thought of what you’d do to Gary.'>> <<ChatMessage 'Sarah broke into a wicked grin, her eyes lighting up.'>> <<Chat $interactionNpc 'Oh, you dirty boy. Prove he’s a dog. *She purred, licking her lips.*'>> <<ChatMessage 'She rummaged through her closet and tossed you a tight black t-shirt and jeans that hugged every muscle and your bulge.'>> <<ChatMessage 'As you changed, you felt the fabric stretch over your biceps and abs, the jeans gripping your cock, already hard with anticipation. You looked in the mirror and grinned—you looked like walking sex, ready to wreck everything in your path. You were ready.'>> <div class="btn padding-top"><<button "Park" "Sarah_Quest_2_Gay_Park">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/City/Park/Park.jpg">> <<set _garyIcon = "Media\\Characters\\QuestChars\\Sarah\\Quests\\1\\Gary.png">> <<ChatMessage 'The park was quiet, the evening air thick with lust. You spotted Gary on a bench—tall, dark-haired, with stubble you wanted to rub your face against. You adjusted your jeans, emphasizing your bulge, and strode toward him with predatory confidence.'>> <<Chat $player 'Hey *you growled, sitting beside him and spreading your legs so he’d notice your hard-on* I’m $player.info.firstName.'>> <<ChatWithoutNPC "Gary" _garyIcon 'Hey, $player.info.firstName. I’m Gary *his eyes raked over you like you were a piece of meat, his voice low, laced with lust* What’s a stud like you doing out here alone?'>> <<Chat $player 'Looking for someone to play with. You? *you smirked, leaning closer so he could breathe in your musky scent, your hand brushing the bench, grazing his thigh, teasing*'>> <<ChatWithoutNPC "Gary" _garyIcon 'Same *he said, his eyes devouring you* Wanna fuck around?'>> <<ChatMessage 'You started chatting, turning on all your charm. You chuckled at his jokes, slapped his shoulder, leaned in so he could feel your heat. Gary took the bait. Soon, he slid closer, his hot breath burning your neck.'>> <<ChatWithoutNPC "Gary" _garyIcon 'You’re fucking hot, $player.info.firstName *he growled, his hand landing on your thigh and creeping up, squeezing your cock through your jeans*'>> <<Chat $player 'Thanks, Gary *you moaned, voice husky with lust* You’re not bad yourself.'>> <<ChatMessage 'He grinned, his fingers roughly kneading you through the fabric.'>> <<ChatWithoutNPC "Gary" _garyIcon 'Come to my place. I’ve got wine and a bed where I’ll fuck you proper. *he grinned, his fingers still kneading*'>> <<Chat $player 'Lead the way *you breathed, letting him grab your hand*'>> <div class="btn padding-top"><<button "Gary’s apartment" "SarahQuest_2_Gay_Gary_apartment">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/City/SkidRow/Motel/Room.jpg">> <<set _garyIcon = "Media\\Characters\\QuestChars\\Sarah\\Quests\\1\\Gary.png">> <<ChatMessage 'His apartment reeked of sex and wine. He poured glasses, but the second you hit the couch, his hand clamped onto your ass, yanking you close. You felt his fingers dig into your flesh, promising a rough fuck.'>> <<ChatWithoutNPC "Gary" _garyIcon 'You’re so fucking hard *he snarled, biting your neck, leaving wet marks, his teeth sinking deeper*'>> <<ChatMessage 'You groaned, your cock straining against your jeans. He jerked you onto him, and you straddled him, feeling his bulge through his pants. His hands slid under your shirt, gripping your muscles, his lips crashing into yours with animal hunger. You kissed back, tongue diving in, your cock grinding against his crotch.'>> <<ChatWithoutNPC "Gary" _garyIcon 'I wanna fuck you *he growled, ripping your shirt over your head*'>> <<ChatMessage 'You were left in jeans, chest heaving, and he latched onto your nipples, biting and sucking until you roared with pleasure.'>> <<ChatMessage 'His hand dipped down, unzipping your jeans, and wrapped around your rock-hard cock, squeezing it rough.'>> <<ChatWithoutNPC "Gary" _garyIcon 'Shit, you’re ready for me *he snarled, jerking you off as you squirmed*'>> <<Chat $player 'Take me, Gary *you moaned, locking eyes with his, full of primal hunger* Fuck me hard.'>> <<ChatMessage 'He grinned, shoved you onto the couch, and yanked off your jeans, exposing your cock and ass.'>> <<ChatWithoutNPC "Gary" _garyIcon 'You’re my slut *he growled, grabbing lube and slicking his fingers*'>> <<ChatMessage 'He shoved one finger in, then two, stretching you rough as you screamed from the mix of pain and pleasure.'>> <<Chat $player 'Please… deeper *you howled, your cock leaking precum*'>> <<ChatMessage 'He jerked you with one hand, pounding your ass with his fingers until you begged.'>> <<Chat $player 'Fuck me already! *you begged, writhing under him*'>> <<ChatMessage 'Gary pulled his fingers out, lubed his cock, and pressed it against your hole. He slammed in with one thrust, filling you to the brim. You yelled, feeling him tear you open, and he started pounding, hard and deep, his hand stroking your cock in time.'>> <<Video "Media\\Characters\\QuestChars\\Sarah\\Quests\\1\\sex\\gay_fuck.mp4">> <<ChatWithoutNPC "Gary" _garyIcon 'You’re so fucking tight, bitch *he roared, slamming in to the hilt*'>> <<Chat $player 'Harder! *you shouted, clawing the couch*'>> <<ChatMessage 'He sped up, drilling you like a machine. Your cock throbbed in his grip, your ass burning from his force.'>> <<ChatWithoutNPC "Gary" _garyIcon 'I’m cumming! *he snarled, face twisting* Cum, you slut!'>> <<ChatMessage 'You exploded—orgasm hit like lightning, your cock shooting cum, soaking his hand and the couch, your ass clenching around him. Gary roared, thrusting one last time, and you felt him unload inside you, hot spurts filling you up.'>> <<ChatMessage 'You collapsed, sweaty and shaking.'>> <<ChatWithoutNPC "Gary" _garyIcon 'You’re fucking unreal *he rasped, pulling you close, nipping your ear*'>> <div class="btn padding-top"><<button "Sarah’s room" "SarahQuest_2_SarahRoom_Back">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<run completeTaskByQuestID("sarah_quest_2", "Help Sarah")>> <<SetBackground "Media/Locations/Neighborhood/OakStreet/PlayerHome/Sarah_Bedroom.jpg">> <<if getTaskState("sarah_quest_2", "Help Sarah") != 'completed'>> <<run completeTaskByQuestID("sarah_quest_2", "Help Sarah")>> <</if>> <<ChatMessage 'You returned to Sarah, body still burning with lust. She sat on the bed, eyes gleaming. You flopped beside her, feeling your cock harden again from the memories.'>> <<Chat $player 'Sarah, I found out *you groaned* Gary’s a dog. He fucked me like a whore.'>> <<ChatMessage 'Sarah gripped your shoulder, her gaze sharp.'>> <<Chat $interactionNpc 'Tell me. Everything. *she demanded, her face blazing with rage*'>> <<ChatMessage 'You spilled it all: how he groped you, how he pounded you, how you came under him. Sarah listened, her face blazing with rage.'>> <<Chat $interactionNpc 'Bastard *she hissed* But you… you’re my dirty boy. Thanks for showing his true colors.'>> <<Chat $player 'I wanted the truth for you *you smirked, feeling her hand on your shoulder*'>> <<ChatMessage 'She looked at you, her gaze softening.'>> <<Chat $interactionNpc 'You were brave. I’m grateful. That’s all I needed to know. *she said, adjusting her nightie*'>> <<ChatMessage 'Sarah stood and left, leaving you alone. You lay there, body trembling from the experience, thoughts of Gary taking you making you even filthier. This night changed you forever.'>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "Sarah_Quest2_CreateQuest">> <<Chat $player 'Okay *you finally said* I’ll do it for you.'>> <<ChatMessage 'Sarah smiled, her face lighting up with gratitude.'>> <<Chat $interactionNpc 'Thank you. You have no idea what this means to me.'>> <<ChatMessage 'She rummaged through her closet and pulled out a black dress—short, tight, with a deep neckline that hugged every curve of your body. Then she handed you a pair of high heels and lace lingerie.'>> <<Chat $interactionNpc 'This’ll make you feel more confident *she said with a wink*'>> <<ChatMessage 'As you changed, you felt the silk panties glide over your smooth skin, the bra cupping your breasts with a pleasant snugness. The dress fit perfectly, accentuating your figure, and when you caught your reflection in the mirror, a rush of excitement surged through you. You were ready.'>> <div class="btn padding-top"><<button "Park" "SarahQuest_2_Female_Park">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/City/Park/Park.jpg">> <<set _garyIcon = "Media\\Characters\\QuestChars\\Sarah\\Quests\\1\\Gary.png">> <<ChatMessage 'The park was quiet, the evening air cool. You spotted Gary on a bench—tall, dark-haired, with a light stubble that made him damn attractive. You adjusted your dress, took a deep breath, and walked toward him, swaying your hips.'>> <<Chat $player 'Hey *you said, sitting beside him and crossing your legs so the hem of the dress rode up slightly, revealing your thigh* I’m Kayla.'>> <<ChatWithoutNPC "Gary" _garyIcon 'Hey, Kayla. I’m Gary *his gaze slowly traveling over your body, his voice low with a husky edge* What’s a gorgeous girl like you doing out here alone?'>> <<Chat $player 'Just taking a walk. You? *you smiled, leaning in just enough for him to catch the subtle scent of your perfume, your finger tracing the edge of the bench, brushing his hand as if by accident*'>> <<ChatWithoutNPC "Gary" _garyIcon 'Same *he said, his eyes fixed on you* Wanna keep me company?'>> <<ChatMessage 'You started chatting, turning on all your charm. You laughed at his jokes, lightly touched his shoulder, leaned in so the neckline of your dress teased a glimpse of your cleavage. Gary was hooked. After a while, he slid closer, his breath grazing your neck.'>> <<ChatWithoutNPC "Gary" _garyIcon 'You’re fucking sexy, Kayla *he whispered, his hand settling on your knee and creeping upward*'>> <<Chat $player 'Thanks, Gary *you replied, your voice growing slightly husky* You’re not bad yourself.'>> <<ChatMessage 'He grinned, his fingers slipping under the hem of your dress, grazing the inside of your thigh.'>> <<ChatWithoutNPC "Gary" _garyIcon 'How about we go to my place? I’ve got wine, and it’ll be… cozier.'>> <<Chat $player 'Sure *you nodded, standing and letting him take your hand*'>> <div class="btn padding-top"><<button "Gary’s apartment" "SarahQuest_2_Female_Gary_apartment">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/City/SkidRow/Motel/Room.jpg">> <<set _garyIcon = "Media\\Characters\\QuestChars\\Sarah\\Quests\\1\\Gary.png">> <<ChatMessage 'Gary’s apartment was warm, smelling of wood and wine. He poured two glasses, and you sat on the couch. His hand immediately found your waist, pulling you closer. You felt his fingers glide down your back, dipping lower to the curves the dress hugged so temptingly.'>> <<ChatWithoutNPC "Gary" _garyIcon 'You’re so hot *he murmured, leaning into your neck, his lips brushing your skin, leaving a wet trail, then nipping lightly*'>> <<ChatMessage 'You moaned softly, your body reacting against your will—nipples hardening under the fabric, a growing wetness between your legs. Gary pulled you onto his lap, and you straddled him, feeling his hardness through his jeans. His hands slipped under your dress, gripping your ass, his lips finding yours. The kiss was deep, hungry, his tongue exploring you, and you matched his passion, pressing yourself against him.'>> <<ChatWithoutNPC "Gary" _garyIcon 'I want you *he breathed, breaking away from your lips and tugging the dress over your head*'>> <<ChatMessage 'You were left in lace lingerie, your chest rising with quick breaths. Gary ran his hands over your body, squeezing your breasts through the bra before unclasping it, setting them free. His lips closed around your nipple, and you arched, waves of pleasure rippling through you. Your fingers tangled in his hair as he teased you, moving from one nipple to the other. You felt his hand slide down, under the waistband of your panties, his fingers finding your wet core.'>> <<ChatWithoutNPC "Gary" _garyIcon 'Fuck, you’re so wet *he whispered, slipping one finger inside you, then a second*'>> <<ChatMessage 'You moaned louder, your hips rocking in time with his movements. It was too good, too intense, and you nearly forgot why you were there. But then Sarah’s face flashed in your mind. You froze for a split second, yet instead of pulling away, your desire flared hotter.'>> <<Chat $player 'I want this, Gary. Do whatever you want with me. *you looked into his eyes, your voice trembling with lust*'>> <<ChatWithoutNPC "Gary" _garyIcon 'You sure? *he asked, though his fingers kept moving inside you, stretching you, making your body quake*'>> <<Chat $player 'Yes *you gasped, closing your eyes and surrendering to the sensation* I’m all yours.'>> <<ChatMessage 'Those words unleashed him. He yanked off your panties, leaving you bare, and stood, lifting you into his arms. You wrapped your legs around him, feeling his hardness press against your thigh. He carried you to the bedroom, tossing you onto the bed with a soft thud, and stripped himself down. You watched, eyes gleaming with anticipation. When he shed the last of his clothes, you saw his erect cock—long, thick, the tip swollen. Your mouth parted in awe and want. Gary joined you on the bed, his hands roaming your body again, lips kissing your neck, chest, stomach.'>> <<ChatWithoutNPC "Gary" _garyIcon 'You’re so beautiful *he whispered, sliding lower*'>> <<ChatMessage 'His tongue flicked over your clit, and you cried out, your body arching. He licked you there, circling with slow, teasing strokes, then speeding up, his fingers plunging deeper. You moaned, hands clutching the sheets, thighs trembling.'>> <<Chat $player 'Gary… oh God… *you whispered, the pleasure building*'>> <<ChatMessage 'But he stopped, rising to kiss you, sharing your taste.'>> <<ChatWithoutNPC "Gary" _garyIcon 'Not yet *he said, voice rough with desire* I want you to cum with me inside you.'>> <<ChatMessage 'He positioned himself over you, his cock pressing against your slick entrance. You spread your legs wider, inviting him in. Gary entered you slowly, teasingly, letting you feel every inch. You gasped as he stretched you, filling you completely, a mix of slight pain and sharp pleasure.'>> <<Video "Media\\Characters\\QuestChars\\Sarah\\Quests\\1\\sex\\Fuck_fem.mp4">> <<ChatWithoutNPC "Gary" _garyIcon 'You’re so tight *he groaned, starting to move*'>> <<ChatMessage 'His thrusts were deep, rhythmic, hitting your limit each time. You clung to his back, nails digging into his skin, leaving red marks, your hips rising to meet him.'>> <<Chat $player 'Faster *you breathed, your voice a hoarse whisper*'>> <<ChatMessage 'Gary obeyed, picking up the pace, his thrusts turning sharp, almost feral. The bed creaked beneath you, your bodies slapping together, your moans escalating into cries.'>> <<ChatWithoutNPC "Gary" _garyIcon 'I’m gonna cum *he rasped, his face contorted with strain* Cum with me, Kayla.'>> <<ChatMessage 'That pushed you over the edge. An orgasm crashed through you—powerful, all-consuming. Your body clenched around him, pulsing, and you screamed, arching beneath him. Gary let out a low, primal groan, his cock twitching as he spilled inside you, hot and thick. You collapsed on the bed, panting, bodies slick with sweat.'>> <<ChatWithoutNPC "Gary" _garyIcon 'You were incredible *he whispered, pulling you close, kissing your forehead, still shaky*'>> <div class="btn padding-top"><<button "Sarah’s room" "SarahQuest_2_Female_SarahRoom_Back">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<run completeTaskByQuestID("sarah_quest_2", "Help Sarah")>> <<SetBackground "Media/Locations/Neighborhood/OakStreet/PlayerHome/Sarah_Bedroom.jpg">> <<ChatMessage 'You returned to Sarah, heart racing from everything you’d experienced. Entering her room, you saw her sitting on the bed, lost in thought. You sat beside her, your body still buzzing.'>> <<Chat $player 'Sarah, I… I found out everything *you began, your voice trembling with emotion* Gary… he’s definitely cheating. He seduced me, and we…'>> <<ChatMessage 'Sarah’s eyes snapped up, sharp and piercing. She placed a hand on your shoulder, cutting you off.'>> <<Chat $interactionNpc 'Tell me everything. Every detail. *she said, her voice firm but laced with hidden pain*'>> <<ChatMessage 'You nodded and started recounting it all. You described how Gary flirted with you in the park, lured you to his place, how his hands roamed your body, how you fucked. You spared no detail—the heated touches, the moans, the rhythm of your bodies. Sarah listened silently, her face paling, eyes burning with anger.'>> <<Chat $interactionNpc 'He’s a bastard *she whispered at last, clenching her fists* But you… you did this for me. I’m grateful.'>> <<ChatMessage 'You gave a weak smile, relieved by her words.'>> <<Chat $player 'I just wanted you to know the truth, Sarah. You deserve better.'>> <<ChatMessage 'Sarah looked at you, her gaze softening. She slid closer, her hand resting on your thigh, sending a shiver through you.'>> <<Chat $interactionNpc 'You were so brave *she said quietly* I want to thank you. Let me show you how much I appreciate your help.'>> <<ChatMessage 'You froze, your breath quickening. You glanced at your hands, a strange excitement stirring.'>> <<Chat $player 'Sarah, are you sure? *you asked, feeling the heat of her body seep into yours*'>> <<Chat $interactionNpc 'Yes *she smiled, her fingers slowly unbuttoning your blouse* I want you to feel my gratitude.'>> <<ChatMessage 'You didn’t resist. You let Sarah peel off your clothes and lay back on the bed. Your body, bare and vulnerable, trembled with anticipation. Sarah leaned over you, her lips brushing your neck, leaving hot kisses. She moved lower, caressing your breasts, nipping lightly at your nipples, making you moan softly. Sarah continued downward, her tongue tracing your stomach until it reached your wet core. You parted your legs, giving in to her touch. She started with gentle licks, circling your clit, speeding up then slowing down, teasing and arousing. Then she added her fingers, slipping inside, moving in sync with her tongue. Your moans grew louder, your hips bucking against her instinctively. You felt the waves of pleasure building, your body responding to every touch.'>> <<Video "Media\\Characters\\QuestChars\\Sarah\\Quests\\1\\sex\\lick.mp4">> <<Chat $player 'Sarah… this is incredible *you whispered, your voice quaking with bliss*'>> <<ChatMessage 'Sarah just smiled, not breaking her rhythm. She quickened her pace, her tongue insistent, fingers delving deeper. You felt yourself nearing the edge, your body tensing, and then you came. A surge of ecstasy washed over you, your body shuddering as you cried out, your juices coating her fingers and dripping down your thighs. Sarah rose, kissing you softly, sharing your taste.'>> <<Chat $interactionNpc 'Thank you. You were amazing *she said, her voice warm*'>> <<ChatMessage 'Still trembling from the high, you smiled.'>> <<Chat $player 'You’re the amazing one, Sarah. I’ll never forget this.'>> <<ChatMessage 'Sarah stood, adjusting her clothes, and looked at you with gratitude. Then she left the room, closing the door behind her. You stayed on the bed, your body still buzzing with pleasure. You felt drained yet fulfilled. Taking a deep breath, you lay there, reflecting on how this night had changed you forever.'>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "Sarah_Quest2_CreateQuest">> <<Chat $player 'Of course you replied without hesitation, feeling your body already responding to her closeness What’s the idea?'>> <<ChatMessage 'Seeing her like this set you on fire, and you were ready to do anything to satisfy her craving.'>> <<Chat $interactionNpc 'Sarah leaned closer, her breath scorching your skin, her voice a velvety whisper You could go to the park where Gary hangs out and… seduce him. Make him slip up. I want him to fuck you, and we’ll find out what he’s really like.'>> <<ChatMessage 'You gave a sly smile, feeling heat pool in your lower belly.'>> <<Chat $player 'You serious? you breathed, your gaze flicking to her lips'>> <<ChatMessage 'Your heart pounded, and your cock started swelling under your skirt from anticipation.'>> <<Chat $interactionNpc 'Yes Sarah nodded, scooting so close her knee pressed against your thigh, sending a jolt of desire through you Please, you’re my only hope. My dirty little spy.'>> <<ChatMessage 'You drowned in her pleading eyes, her sweet vanilla-and-sex scent making your head spin.'>> <<Chat $player 'Okay you whispered, your voice dropping with arousal I’ll do it for you. And maybe even enjoy it.'>> <<ChatMessage 'Sarah broke into a wicked grin, her face lighting up with lustful gratitude.'>> <<Chat $interactionNpc 'Oh, you won’t regret it.'>> <<ChatMessage 'She rummaged through her closet and pulled out a black dress—so short it barely hid your assets, tight, with a neckline that bared your hormone-crafted chest. Then she tossed you stilettos and lace lingerie that teased more than it covered.'>> <<Chat $interactionNpc 'Wear this so he wants you the second he sees you she purred, winking'>> <<ChatMessage 'As you changed, you felt the silk panties hug your cock, already hard from the thoughts of what was coming. The bra squeezed your chest, nipples stiffening under the fabric, and the dress clung to your curves, promising debauchery. You looked in the mirror and barely held back a moan—you looked like walking sex. You were ready.'>> <div class="btn padding-top"><<button "Park" "Sarah_Quest_2_Shemale_Park">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/City/Park/Park.jpg">> <<set _garyIcon = "Media\\Characters\\QuestChars\\Sarah\\Quests\\1\\Gary.png">> <<ChatMessage 'The park was quiet, the evening air thick with lust. You spotted Gary on a bench—tall, dark-haired, with stubble you wanted to lick. You adjusted your dress, emphasizing your figure, and sauntered toward him, hips swaying like a whore on the prowl.'>> <<Chat $player 'Hey *you purred, sitting beside him and crossing your legs so the dress hiked up, exposing your smooth thighs* I’m Kayla.'>> <<ChatWithoutNPC "Gary" _garyIcon 'Hey, Kayla. I’m Gary *his gaze raking over you like a starving beast eyeing prey, his voice low, laced with lust* What’s a hot bitch like you doing out here alone?'>> <<Chat $player 'Looking for some fun. You? *you smiled, leaning closer so he could breathe in your scent—perfume mixed with desire, your fingers brushing the bench, grazing his hand, teasing*'>> <<ChatWithoutNPC "Gary" _garyIcon 'Same *he said, his eyes devouring you* Wanna fuck around?'>> <<ChatMessage 'You started chatting, turning on all your charm. You giggled at his jokes, touched his shoulder, leaned in so he could peek down your neckline at your tits. Gary took the bait. Soon, he slid closer, his hot breath burning your neck.'>> <<ChatWithoutNPC "Gary" _garyIcon 'You’re fucking sexy, Kayla *he growled, his hand landing on your knee and creeping up, roughly gripping your thigh*'>> <<Chat $player 'Thanks, Gary *you moaned, voice husky with lust* You’re hot too.'>> <<ChatMessage 'He grinned, his fingers slipping under your dress, teasing your skin.'>> <<ChatWithoutNPC "Gary" _garyIcon 'Come to my place. I’ve got wine and a bed where I’ll fuck you good.'>> <<Chat $player 'Lead the way *you breathed, letting him grab your hand*'>> <div class="btn padding-top"><<button "Gary’s apartment" "SarahQuest_2_Shemale_Gary_apartment">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/City/SkidRow/Motel/Room.jpg">> <<set _garyIcon = "Media\\Characters\\QuestChars\\Sarah\\Quests\\1\\Gary.png">> <<ChatMessage 'His apartment reeked of sex and wine. He poured glasses, but the second you hit the couch, his hand clamped around your waist, yanking you close. You felt his fingers dig into your skin, sliding down to your ass, which the dress hugged like a glove.'>> <<ChatWithoutNPC "Gary" _garyIcon 'You’re such a slut *he snarled, biting your neck, leaving wet marks, his teeth sinking deeper*'>> <<ChatMessage 'You moaned, your cock throbbing, nipples poking through the fabric. He jerked you onto him, and you straddled him, feeling his bulge through his jeans. His hands slid under your dress, gripping your ass, his lips crashing into yours with animal hunger. You kissed back, tongue diving in, pressing your whole body against him, your cock grinding against his thigh.'>> <<ChatWithoutNPC "Gary" _garyIcon 'I wanna fuck you *he growled, ripping the dress over your head*'>> <<ChatMessage 'You were left in lace, tits bouncing, cock bulging from your panties. Gary squeezed your breasts, tore off the bra, freeing them, and latched onto a nipple, biting and sucking until you howled with pleasure. His hand dipped down, ripping off your panties, and wrapped around your hard cock, squeezing it rough.'>> <<ChatWithoutNPC "Gary" _garyIcon 'Fuck, you’re wet with want *he snarled, jerking you off as you squirmed*'>> <<ChatMessage 'You forgot about Sarah, lost in lust.'>> <<Chat $player 'Take me, Gary *you moaned, locking eyes with his, full of primal hunger* Fuck me hard.'>> <<ChatMessage 'He grinned, scooped you up, your legs wrapping around his waist, and you felt his cock, ready to burst through his jeans. He threw you on the bed like prey and stripped himself bare. His dick was huge, thick, the tip swollen, and you licked your lips, craving it. Gary crashed onto you, his hands spreading your cheeks.'>> <<ChatWithoutNPC "Gary" _garyIcon 'You’re my whore *he growled, grabbing lube and slicking his fingers*'>> <<ChatMessage 'He shoved one finger in, then two, stretching you rough as you screamed from the mix of pain and pleasure.'>> <<Chat $player 'Please… deeper *you wailed, your cock leaking precum*'>> <<ChatMessage 'He jerked you with one hand, pounding your ass with his fingers until you begged.'>> <<Chat $player 'Fuck me already! *you begged, writhing under him*'>> <<ChatMessage 'Gary pulled his fingers out, lubed his cock, and pressed it against your hole. He slammed in with one thrust, filling you to the brim. You screamed, feeling him tear you open, and he started pounding, hard and deep, his hand stroking your cock in time.'>> <<Video "Media\\Characters\\QuestChars\\Sarah\\Quests\\1\\sex\\sahra_shemale_anal.mp4">> <<ChatWithoutNPC "Gary" _garyIcon 'You’re so fucking tight, bitch *he roared, slamming in to the hilt*'>> <<Chat $player 'Harder! *you yelled, clawing his back*'>> <<ChatMessage 'He sped up, drilling you like an animal. Your cock pulsed in his grip, your ass burning from his force.'>> <<ChatWithoutNPC "Gary" _garyIcon 'I’m cumming! *he snarled, face twisting* Cum, you slut!'>> <<ChatMessage 'You exploded—orgasm hit like lightning, your cock shooting cum, soaking his hand and your thighs, your ass clenching around him. Gary roared, thrusting one last time, and you felt him unload inside you, hot spurts filling you up. You collapsed, sweaty and trembling.'>> <<ChatWithoutNPC "Gary" _garyIcon 'You’re fucking unreal *he rasped, pulling you close, nipping your ear*'>> <div class="btn padding-top"><<button "Sarah’s room" "SarahQuest_2_Shemale_SarahRoom_Back">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<run completeTaskByQuestID("sarah_quest_2", "Help Sarah")>> <<SetBackground "Media/Locations/Neighborhood/OakStreet/PlayerHome/Sarah_Bedroom.jpg">> <<ChatMessage 'You returned to Sarah, body still ablaze with lust. She sat on the bed, eyes gleaming. You flopped beside her, feeling your cock harden again.'>> <<Chat $player 'Sarah, I found out *you moaned* Gary’s a dog. He fucked me like a whore.'>> <<ChatMessage 'Sarah gripped your shoulder, her gaze predatory.'>> <<Chat $interactionNpc 'Tell me. Everything. *she demanded, her face burning with rage and desire*'>> <<ChatMessage 'You spilled it all: how he groped you, how he pounded you, how you came under him. Sarah listened, her face burning with rage and desire.'>> <<Chat $interactionNpc 'Bastard *she hissed* But you… you’re my dirty girl. Thank you.'>> <<ChatMessage 'You smiled, feeling her hand on your thigh.'>> <<Chat $player 'I wanted the truth for you *you said, feeling her hand on your thigh*'>> <<ChatMessage 'She leaned in, her lips nearly brushing yours.'>> <<Chat $interactionNpc 'You were brave. I wanna thank you. Hard.'>> <<ChatMessage 'You moaned, your cock standing tall.'>> <<Chat $player 'Sarah… let’s do it.'>> <<ChatMessage 'She ripped off your blouse, tossed it aside, and shoved you onto the bed. You lay back, naked, cock jutting up, and she pounced, her eyes locked on your throbbing shaft. Without a word, she grabbed your hips, pulling you to the edge of the bed, and dropped to her knees between your legs.'>> <<ChatMessage 'Her breath was hot against your skin as she leaned in, her tongue flicking out to tease the tip of your cock. You gasped, your body jerking at the sudden sensation. Sarah smirked, her lips parting as she took you into her mouth, slow at first, savoring the taste of your arousal.'>> <<Video "Media\\Characters\\QuestChars\\Sarah\\Quests\\1\\sex\\Sahra_blowjob_trans.mp4">> <<ChatMessage 'She sucked you deep, her mouth warm and wet, her tongue swirling around your length as she bobbed her head. Her hands gripped your thighs, nails digging into your flesh, adding a sharp edge to the pleasure. You moaned, your hips bucking instinctively, thrusting deeper into her throat.'>> <<Chat $player 'Sarah… fuck, that feels so good *you groaned, your voice thick with lust*'>> <<ChatMessage 'She hummed around your cock, the vibration sending shivers through you. Her pace quickened, her lips tightening as she sucked harder, her tongue flicking against the sensitive underside. You could feel the pressure building, your balls tightening as she worked you closer to the edge.'>> <<ChatMessage 'Her eyes met yours, dark with desire, as she took you even deeper, her throat constricting around your cock. You couldn’t hold back any longer. With a guttural moan, you came, your cock pulsing as you shot your load into her mouth. Sarah swallowed every drop, her tongue lapping at you until you were spent.'>> <<ChatMessage 'She pulled back, licking her lips, a satisfied smirk on her face.'>> <<Chat $interactionNpc 'You’re my slut *she purred, standing up and wiping her mouth*'>> <<ChatMessage 'You lay there, trembling, your body still buzzing from the intensity of your orgasm, thinking this night made you even filthier.'>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "Sarah_Quest2_CreateQuest">> <<run addTaskToQuest("sarah_quest_2", { description: "Find a girl who’s willing to help", completed: false, })>> <<Chat $player 'I don\'t need this shit, Sarah. I\'m not going to change myself. But I have someone better — I\'ll try to convince one of my friends to help with this. She\'s a hot bitch, and Gary won\'t resist her. She\'ll fuck the truth out of him for you. *you smirked, pushing her hand with the pill away*'>> <<Chat $interactionNpc 'Oh, you cunning bastard. Let your slut prove he\'s a dog. *she broke into a wicked smile, her eyes lighting up*'>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $player 'I need some help—can you pitch in? I have to check up on my friend’s boyfriend.'>> <<set _friendship = $player.getRelationship($interactionNpc.info.id).metrics._friendship>> <<if _friendship.value >= 80>> <<Chat $interactionNpc 'Sure, honey—anything for you.'>> <<ChatMessage 'You wait for $interactionNpc.info.firstName for a while, and when she comes back you get proof that Sarah’s boyfriend is cheating on her.'>> <<run completeTaskByQuestID("sarah_quest_2", "Find a girl who’s willing to help")>> <<run addTaskToQuest("sarah_quest_2", { description: "Show Sarah the dirt on her boyfriend.", completed: false, })>> <<else>> <<Chat $interactionNpc 'No, I’m not up for that right now. Find someone else. *Friendship isn\'t high enough (80)*'>> <</if>> <div class="btn padding-top"><<button "Continue" "CharacterInteractions">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if getTaskState("sarah_quest_2", "Help Sarah") != 'completed'>> <<run completeTaskByQuestID("sarah_quest_2", "Help Sarah")>> <</if>> <<if getTaskState("sarah_quest_2", "Show Sarah the dirt on her boyfriend.") != 'completed'>> <<run completeTaskByQuestID("sarah_quest_2", "Show Sarah the dirt on her boyfriend.")>> <</if>> <<ChatMessage 'You showed the pictures to Sarah. She was sitting on the bed, her eyes burning with anger and lust.'>> <<Chat $player 'He fucked her like a whore. *you said, your cock hardening from the memories of the plan*'>> <<Chat $interactionNpc 'Bastard. But you… you\'re a genius. Thanks for exposing him. *she clenched her fists*'>> <<ChatMessage 'She got on her knees in front of you, her eyes shining with wicked gratitude.'>> <<Chat $interactionNpc 'Let me thank you properly.'>> <<Chat $player 'Suck, Sarah. *you smirked, unbuttoning your pants, your cock springing free, hard and ready*'>> <<ChatMessage 'She licked her lips, her mouth closing around your head, hot and wet. She swallowed you deep, her tongue swirling around the shaft, her hands squeezing your balls. You groaned, grabbing her hair, and started fucking her mouth, thrusting your cock down her throat. She gagged but sucked greedily, her drool dripping down her chin.'>> <<Video "Media\\Characters\\QuestChars\\Sarah\\Quests\\1\\sex\\blowjob_01.mp4">> <<Chat $player 'Damn, you\'re a slut. *you growled, feeling the orgasm approaching*'>> <<ChatMessage 'She sped up, her lips tightening around you until you exploded, shooting cum down her throat. She swallowed it all, licking you clean.'>> <<Chat $interactionNpc 'You\'re fucking awesome. *she rasped, standing up, wiping her mouth, her nightgown hiked up, revealing wet panties*'>> <<ChatMessage 'She left the room, leaving you with trembling legs and thoughts of how this night made you even more depraved.'>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<run _questList = [ { id: "sarah_quest_2", title: "Help Sarah", description: "Sarah asked you to help check up on her boyfriend.", state: "active", questType: "side", tasks: [ { description: "Help Sarah", completed: false } ], } ]>> <<CreateQuest _questList true>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatMessage 'You quietly knock on Sarah’s door, finding it ajar. Inside, Sarah sits on the bed, long dark hair tousled, eyes glistening with tears. A short silk nightie clings to every curve, sheer enough to tease every line of her body.'>> <<ChatMessage 'When she sees you, she looks up, vulnerable yet achingly sexy.'>> <<Chat $interactionNpc 'Come in, *— her voice trembles, low and raspy, as if holding back a moan.* I think Gary\'s cheating on me. I need… I need to know.'>> <<ChatMessage 'You close the door with a soft click and sit beside her, heat radiating through the thin fabric.'>> <<Chat $player 'Why do you think that? *— your voice deepens, promising dirty comfort.*'>> <<ChatMessage 'Sarah sniffles, wiping tears and exposing a delicate neck begging to be kissed.'>> <<Chat $interactionNpc 'He\'s secretive—sneaks out at night, won\'t say where. Yesterday I saw texts on his phone—from some slut. Filthy stuff… too filthy. *Her wet eyes flash with desperate determination.* I have an idea. Will you help me?'>> <<if $player.gender() == "Male">> <<Chat $player 'Of course. *Your cock stirs from her nearness.* What\'s the idea?'>> <<else>> <<Chat $player 'Of course. What\'s the idea?'>> <</if>> <<if $player.gender() == "Male">> <<ChatMessage 'Leaning closer, her breath scorches your skin.'>> <<Chat $interactionNpc 'I want you to seduce Gary—make him slip. But there\'s one thing… *She produces a shiny pill.* This will turn you into a girl so you can fuck him like a slut and get the truth.'>> <div class="btn padding-top"><<button "Accept" "SarahQuest2_Male_Accept">><</button>></div> <div class="btn padding-top"><<button "Accept (Gay)" "Sarah_Quest_2_Gay">><</button>></div> <div class="btn padding-top"><<button "Ask a girl you know to help" "SarahQuest2_Male_FriendHelp">><</button>></div> <<elseif $player.gender() == "Female">> <<Chat $interactionNpc '*she leaned in a little closer, her voice dropping to a near-whisper* You could go to the park where Gary hangs out and… seduce him. That way, we’ll know if he’s cheating on me.'>> <<ChatMessage 'You gave a small smile, feeling a flicker of intrigue ignite inside you.'>> <<Chat $player 'Are you serious? *you asked, locking eyes with her*'>> <<ChatMessage 'Your heart beat faster, a mix of surprise and a subtle thrill.'>> <<Chat $interactionNpc 'Yes *she nodded, scooting even closer* Please, you’re my only shot.'>> <<ChatMessage 'Her knee brushed your leg, sending a faint shiver through you. You looked into her pleading eyes, her closeness and scent—sweet, with a hint of vanilla—making your head spin.'>> <div class="btn padding-top"><<button "Accept" "SarahQuest_2_Female">><</button>></div> <<else>> <<Chat $interactionNpc '*she leaned in a little closer, her voice dropping to a near-whisper* You could go to the park where Gary hangs out and… seduce him. That way, we’ll know if he’s cheating on me.'>> <<ChatMessage 'You gave a small smile, feeling a flicker of intrigue ignite inside you.'>> <<Chat $player 'Are you serious? *you asked, locking eyes with her*'>> <<ChatMessage 'Your heart beat faster, a mix of surprise and a subtle thrill.'>> <<Chat $interactionNpc 'Yes *she nodded, scooting even closer* Please, you’re my only shot.'>> <<ChatMessage 'Her knee brushed your leg, sending a faint shiver through you. You looked into her pleading eyes, her closeness and scent—sweet, with a hint of vanilla—making your head spin.'>> <div class="btn padding-top"><<button "Accept" "SarahQuest_2_Shemale">><</button>></div> <</if>> <div class="btn padding-top"><<button "Leave" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<if getQuestState("sarah_quest_01") == "active" && $player.characterEvents.isEventRegistered($player.info.id, "Concert ticket") != true>> <<if $player.characterEvents.isEventRegistered($player.info.id, "LooseToSketchyGuy") == false>> <<goto "SketchyGuy_Quest_01_Start_Male">> <<else>> <<goto "SketchyGuy_Quest_01_AnotherVisitAfterLose">> <</if>> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<Chat $interactionNpc 'Yo, what do you want?'>> <<Chat $player 'Do you have tickets to the band\'s upcoming concert at the nightclub?'>> <<Chat $interactionNpc 'If you want the tickets, it’s $2000, or you can do me a favor.'>> <<if $player.gender() == "Male">> <<Chat $interactionNpc 'I’m into girls, you know.'>> <div class="btn non-interacting"><<button "Give Blowjob">><</button>></div> <<else>> <div class="btn padding-top"><<button "Give Blowjob" "SketchyGuy_Quest_01_Start_Male_GiveBlowjob">><</button>></div> <</if>> <<if $player.money >= 2000>> <div class="btn padding-top"><<button "Buy Tickets ($2000)" "SketchyGuy_Quest_01_Start_Male_ByTickets">><</button>></div> <<else>> <div class="btn non-interacting"><<button "Buy Tickets ($2000)">><</button>></div> <</if>> <<set _battleSetControls = {attack: true, seduce: false, items: true, actions: true}>> <div class="btn padding-top"><<button "Fight">><<StartFight $player $interactionNpc _battleSetControls "SketchyGuy_Quest_01_Start_Male_FightWin" "SketchyGuy_Quest_01_Start_Male_FightLose">><</button>></div> <div class="btn padding-top"><<button "Leave" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $player.money -= 2000>> <<Chat $interactionNpc 'Here are your tickets'>> <<include "SketchyGuy_Quest_01_GetTicket">> <div class="btn padding-top"><<button "Leave" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $interactionNpc 'Alright, now do me that favor.'>> <<ChatMessage 'You get on your knees and give Jack a blowjob, after which he cums in your mouth.'>> <<Video "Media\\Characters\\QuestChars\\Other\\SketchyGuy\\Blowjob.mp4">> <<Chat $interactionNpc 'Here are your tickets'>> <<include "SketchyGuy_Quest_01_GetTicket">> <div class="btn padding-top"><<button "Leave" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatMessage 'You roughed up the smuggler and snatched the tickets.'>> <<include "SketchyGuy_Quest_01_GetTicket">> <div class="btn padding-top"><<button "Leave" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if $player.gender() != "Female">> <<Chat $interactionNpc 'You asked for it'>> <<ChatMessage '$interactionNpc.info.firstName says, pulling pills from his pocket and forcing you to swallow them, after which you transform into a girl.'>> <<run _changePill = GetNewItem("gender_change_pills_female", 1)>> <<run $player.useItem(_changePill, $player)>> <</if>> <<if $player.characterEvents.isEventRegistered($player.info.id, "LooseToSketchyGuy") == false>> <<run $player.characterEvents.registerEvent($player.info.id, "LooseToSketchyGuy", 1)>> <</if>> <<Video "Media\\Characters\\QuestChars\\Other\\SketchyGuy\\Vaginal.mp4">> <<Chat $interactionNpc '$interactionNpc.info.firstName bends you over and starts fucking you, and after a while, he cums inside you. Then $interactionNpc.info.firstName leaves you lying on the floor, with his cum leaking out of your pussy.'>> <div class="btn padding-top"><<button "Leave" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $interactionNpc 'Back for more, asshole?'>> <<set _battleSetControls = {attack: true, seduce: false, items: true, actions: true}>> <div class="btn padding-top"><<button "Fight">><<StartFight $player $interactionNpc _battleSetControls "SketchyGuy_Quest_01_Start_Male_FightWin" "SketchyGuy_Quest_01_Start_Male_FightLose">><</button>></div> <div class="btn padding-top"><<button "Leave" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<run completeTaskByQuestID("sarah_quest_01", "Find concert tickets")>> <<run $player.characterEvents.registerEvent($player.info.id, "Concert ticket", 1)>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $canShowStatsBtn = false>> <<set $gameSettings.allowSaves = false>> <<run $player.characterEvents.registerEvent($player.info.id, "ClayQuest1", 1)>> <<if $clayFightWon == true>> <<ChatMessage 'After your win, Clay struggles to his feet.'>> <<Chat $interactionNpc 'Damn, you fight good—you kicked my ass. But don\'t get cocky; next time, I\'ll be ready.'>> <<Chat $player 'Next time, I\'ll kick your ass again.'>> <<Chat $interactionNpc 'Keep dreaming. Alright, I\'m hitting the shower. Wanna join or wait?'>> <<else>> <<ChatMessage 'After your loss, you struggle to your feet, rubbing your bruises.'>> <<Chat $interactionNpc 'Ha, you held your own, but I told you—don\'t underestimate me. Next time, try not to zone out, okay? I almost felt bad.'>> <<Chat $player 'Next time, I\'ll put you down, no doubt.'>> <<Chat $interactionNpc 'Whoa, spirit\'s still fired up? Cool. Alright, I\'m hitting the shower. Wanna join or wait?'>> <</if>> <div class="btn padding-top"><<button "Yeah, why not." "Clay_Quest1_ShowerYes">><</button>></div> <div class="btn padding-top"><<button "Nah, I'll wait." "Clay_Quest1_ShowerNo">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ChatMessage 'You head into the locker room with Clay.'>> <<Chat $player 'Tell me about yourself'>> <<Chat $interactionNpc 'Been in this shit since I was a kid. My old man made me steal—stores, houses. I was his little shadow, thought it was normal.'>> <<ChatMessage 'You strip down and step inside.'>> <<ChatMessage 'You strip down and hit the shower with Clay.'>> <<Chat $interactionNpc 'You\'ve got a nice body; looks like you train a lot.'>> <<Chat $player 'Yeah, I\'m aiming to be the champ in street fights.'>> <<Chat $interactionNpc 'You\'re a real dreamer, huh? You got any idea what kinda monsters are waiting at the tournament?'>> <div class="btn padding-top"><<button "Joke." "Clay_Quest1_Joke">><</button>></div> <div class="btn padding-top"><<button "Flirt." "Clay_Quest1_Flirt">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <div class="btn padding-top"><<button "Continue" "Underground_Fight_Gym">> <<if $player.characterEvents.isEventRegistered($player.info.id, "GetClayApproval") == false>> <<run $player.characterEvents.registerEvent($player.info.id, "GetClayApproval", 1)>> <<set $ApprovalReceived += 1>> <<DeleteCharacter $interactionNpc>> <</if>> <<set $ClayStoryProgress = 1>> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if $clayFightWon == true>> <<Chat $player 'Ha, monsters? I thought you were the big bad of the gym. But if I become champ, I\'ll make you my personal towel—wiping my back after every win.'>> <<Chat $interactionNpc '*Laughs, splashing water* Whoa, cocky bastard! Alright, jokes aside, don\'t slack off. I\'ve seen guys like you break on the first tournament. Dry off and let\'s go. Next time—bar after training. We\'ll see who kicks whose ass there.'>> <<ChatMessage 'You step out of the shower, get dressed.'>> <<else>> <<Chat $player 'Monsters? After you laid me out today, I think you\'re the final boss. But if I become champ, I\'ll make you my personal towel—wiping my back after every win.'>> <<Chat $interactionNpc '*Laughs, splashing water* "Whoa, still joking after a loss? Alright, jokes aside—seriously, don\'t slack off. I\'ve seen guys like you break on the first tournament. Dry off and let\'s go. Next time—bar after training. We\'ll see who kicks whose ass there."'>> <</if>> <div class="btn padding-top"><<button "Continue" "Underground_Fight_Gym">> <<if $player.characterEvents.isEventRegistered($player.info.id, "GetClayApproval") == false>> <<run $player.characterEvents.registerEvent($player.info.id, "GetClayApproval", 1)>> <<set $ApprovalReceived += 1>> <<DeleteCharacter $interactionNpc>> <</if>> <<set $ClayStoryProgress = 1>> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if $clayFightWon == true>> <<Chat $player 'Monsters? Showering with you already feels like stepping into a beast\'s lair, all steamy and dangerous. After kicking your ass... maybe I deserve a hot reward to celebrate?'>> <<Chat $interactionNpc '*Grins wickedly, stepping in close, water dripping from his messy hair and down his ripped chest* A reward, huh? After you owned me out there... fuck yeah, that\'s only fair. Let me handle that throbbing tension for you—gonna make you feel real good.'>> <<if $player.gender() == 'Male' || $player.gender() == 'Shemale'>> <<Video "Media\\Sex\\Quest\\FightClub\\Clay\\Quest1\\handjob_m.mp4">> <<ChatMessage 'Clay drops to his knees with a hungry look, his rough hand gliding over your slick skin, fingers wrapping tight around your hardening cock, stroking with confident, teasing squeezes. Water cascades over you both, hot and relentless, drowning out your low groans as his grip pumps slow and deliberate, his breath scorching against your thigh. His hand speeds up, slick and urgent, bodies pressing together in the steam, your hips bucking into his fist until the orgasm hits like a knockout punch, waves of cum spilling out and washing away under the spray.'>> <<elseif $player.gender() == 'Female'>> <<Video "Media\\Sex\\Quest\\FightClub\\Clay\\Quest1\\fing_f.mp4">> <<ChatMessage 'Clay presses you against the tiled wall with a predatory gleam, his strong hand sliding between your thighs, fingers dipping into your slick folds, rubbing your swollen clit with firm, circling pressure. Water pounds down hot and heavy, muffling your gasps as he strokes you teasingly slow at first, his breath ragged and hot against your neck. His fingers dive deeper, pumping and curling inside your wet pussy while his thumb grinds your clit, bodies grinding close in the mist, your legs shaking until the orgasm crashes over you like a tidal wave, your juices mixing with the shower spray.'>> <</if>> <<Chat $interactionNpc 'Whew, that... was fuckin\' intense and hot as hell. You\'re a beast—not just in the ring. Next time—bar after training. We can keep this... conversation going.'>> <<else>> <<if $player.gender() == 'Male'>> <<Video "Media\\Sex\\Quest\\FightClub\\Clay\\Quest1\\handjob_m.mp4">> <<else>> <<Video "Media\\Sex\\Quest\\FightClub\\Clay\\Quest1\\handjob_f_s.mp4">> <</if>> <<Chat $player 'Monsters? After you owned me in the ring, it feels like I\'m trapped in a beast\'s lair, all wet and wild. Maybe after your win... you deserve a dirty reward? Let me take care of that bulging tension for you.'>> <<Chat $interactionNpc '*Grins wickedly, stepping in close, water dripping from his messy hair and down his ripped chest* A reward, huh? After pinning you down... hell yeah, that\'s fair. Show me what a loser\'s got—make it count.'>> <<ChatMessage 'You drop to your knees with eager heat, your hand sliding over his taut skin, fingers curling firm around his thick, pulsing cock, stroking with bold, teasing twists. Water pounds down, steamy and loud, muffling his deep grunts as you pump him slow and rhythmic, your breath hot and ragged near his hip.'>> <<ChatMessage 'Your hand flies faster, slick and demanding, bodies grinding close in the haze, his thrusts meeting your grip until the orgasm explodes like a finisher, hot spurts of cum erupting and swirling away in the drain.'>> <<Chat $interactionNpc 'Whew, that... was fuckin\' intense and hot as hell. You\'re a beast—not just in the ring. Next time—bar after training. We can keep this... conversation going.'>> <</if>> <div class="btn padding-top"><<button "Continue" "Underground_Fight_Gym">> <<if $player.characterEvents.isEventRegistered($player.info.id, "GetClayApproval") == false>> <<run $player.characterEvents.registerEvent($player.info.id, "GetClayApproval", 1)>> <<set $ApprovalReceived += 1>> <<DeleteCharacter $interactionNpc>> <</if>> <<set $ClayStoryProgress = 1>> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _clayHarper = "Media//Characters//QuestChars//UFG//Clay Harper.jpg">> <<SetBackground "Media/Locations/City/EntertainmentDistrict/Bar.jpg">> <<ChatMessage "Noisy bar near the training gym. Clay invites you after workout—just to chill. The place is smoky, music blasting, folks crowding the bar. You grab a table, Clay orders a couple beers. Conversation flows easy.">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "Glad you showed up. Beer after training—best damn medicine. Cheers to health, or to not ending up in the slammer like my old man.">> <<Chat $player "Tell me about that time. You mentioned your dad...">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "Yeah, when I hit my teens, they finally locked him up. Big heist—cops caught him red-handed. Left me alone, no cash. What’s a kid gonna do? Kept doing what I knew: stealing, picking locks. Only way not to starve. Heart pounding like a drum every time, thinking: \"This is my life now, no way out.\" But the streets teach quick—you or them. What about you? What drives you into these fights?">> <div class="btn padding-top"><<button "\"Adrenaline\". Life ain't sweet, gotta survive." "Clay_Quest2_BarThugs">><</button>></div> <div class="btn padding-top"><<button "\"Proving myself\". Life ain't sweet, gotta survive." "Clay_Quest2_BarThugs">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _clayHarper = "Media//Characters//QuestChars//UFG//Clay Harper.jpg">> <<set _thug2 = "Media//Characters//QuestChars//UFG//thug2.jpg">> <<include "CharactersData">> <<ChatMessage "Two drunk thugs stomp up to your table, one shoves Clay's shoulder, the other grins in your face.">> <<run _thug1 = CreateCharacter({isPlayer:false, characterWork: "Drunk thug 1", gender:"Male", sexualPreference:"Bi", clothesPreference:"men", firstName:"Thug 1", lastName:"", skin:'White', age:30, defense:3, agility:2, strength:4, isQuestCharacter:true, questCharID:14, currentQuestID:0, currentCharImg:"Media//Characters//QuestChars//UFG//thug1.jpg"}, true)>> <<unset $maleNames $femaleNames $surnames>> <<set $indexNPC = $Characters.indexOf(_thug1)>> <<set $interactionNpc = $Characters[$indexNPC]>> <<run $player.characterEvents.registerEvent(_thug1.info.id, "knows you", 1)>> <<ChatWithoutNPC 'Thug 1' _thug1.getPhotoImage() "Hey, assholes, this is our spot. Beat it before we break you.">> <<ChatWithoutNPC 'Thug 2' _thug2 "Yeah, or we'll smear you on the wall.">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "*Standing up* Shut your trap, idiot. We're not looking for trouble, but if you want it—bring it.">> <div class="btn padding-top"><<button "Fight" >> <<set _battleSetControls = {attack: true, seduce: false, items: false, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls 'Clay_Quest2_FirstWin' 'Clay_Quest2_FirstLose'>> <</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<DeleteCharacter $interactionNpc>> <<set _clayHarper = "Media//Characters//QuestChars//UFG//Clay Harper.jpg">> <<ChatMessage "Your opponent floors you, but Clay finishes his quick and switches to yours, elbowing him out cold. Bar goes quiet, thugs down, bartender yelling to get out.">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "*Extending a hand, helping you up* Shit, you okay? Those bastards ain't worth your time. I laid 'em out—for both of us.">> <div class="btn padding-top"><<button "Thank him." "Clay_Quest2_FirstLose_Thank">><</button>></div> <div class="btn padding-top"><<button "Flirt." "Clay_Quest2_FirstLose_Flirt">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _clayHarper = "Media//Characters//QuestChars//UFG//Clay Harper.jpg">> <<Chat $player "Thanks, Clay. You saved the day.">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "No sweat. Streets taught me: one for all. Let's grab another round and bail.">> <div class="btn padding-top"><<button "Continue" "Underground_Fight_Gym">> <<set $ClayStoryProgress = 2>> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _clayHarper = "Media//Characters//QuestChars//UFG//Clay Harper.jpg">> <<Chat $player "Whoa, you're like a damn superhero. After that... I wanna thank you for real. Maybe the bathroom, before the bar snaps out of it?">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "*Grinning wide, eyes lighting up with heat* Thank me? Sounds tempting as hell. Follow my lead, don't lag.">> <<ChatMessage "Door locked, Clay pins you against the wall, his breath heavy from the fight, body radiating raw power and sweat. You drop to your knees, fumbling with his zipper, feeling his cock twitch and harden under your touch from the adrenaline surge.">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "*Whispering hoarsely, gripping your hair* Yeah... just like that. Deeper.">> <<if $player.gender() == 'Male'>> <<Video "Media\\Sex\\Quest\\FightClub\\Clay\\Quest2\\blowjob_m.mp4">> <<else>> <<Video "Media\\Sex\\Quest\\FightClub\\Clay\\Quest2\\blowjob_f_s.mp4">> <</if>> <<ChatMessage "Blowjob in the cramped stall, his thick shaft sliding past your lips as you bob rhythmically, tongue swirling around the head while your hands stroke his balls and squeeze his ass, pulling him deeper. His moans echo off the tiles, hips thrusting with building urgency, the risk of getting caught spiking the thrill like electricity—sweat mixing with saliva until he unloads with a guttural groan, hot spurts filling your mouth as you swallow greedily, your eyes locked on his in wicked satisfaction.">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "Whew, you... you're dangerous.">> <div class="btn padding-top"><<button "Continue" "Underground_Fight_Gym">> <<set $ClayStoryProgress = 2>> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<DeleteCharacter $interactionNpc>> <<set _clayHarper = "Media//Characters//QuestChars//UFG//Clay Harper.jpg">> <<ChatMessage "You drop your opponent, but Clay takes a hit and goes down. Your guy's out, but Clay's thug jumps you. Now it's one-on-one with him.">> <<include "CharactersData">> <<run _thug2 = CreateCharacter({isPlayer:false, characterWork:"Drunk thug 2", gender:"Male", sexualPreference:"Bi", clothesPreference:"men", firstName:"Thug 2", lastName:"", skin:'White', age:30, defense:3, agility:2, strength:4, isQuestCharacter:true, questCharID:15, currentQuestID:0, currentCharImg:""}, true)>> <<unset $maleNames $femaleNames $surnames>> <<set $indexNPC = $Characters.indexOf(_thug2)>> <<set $interactionNpc = $Characters[$indexNPC]>> <div class="btn padding-top"><<button "Fight" >> <<set _battleSetControls = {attack: true, seduce: false, items: false, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls 'Clay_Quest2_SecondWin' 'Clay_Quest2_SecondLose'>> <</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<DeleteCharacter $interactionNpc>> <<set _clayHarper = "Media//Characters//QuestChars//UFG//Clay Harper.jpg">> <<ChatMessage "You knock him out, help Clay up. Bar claps, but bartender kicks you out.">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "*Rubbing his jaw* Damn, you covered my ass. Those pricks almost broke me. You're a machine.">> <div class="btn padding-top"><<button "Joke." "Clay_Quest2_SecondWin_Joke">><</button>></div> <div class="btn padding-top"><<button "Flirt." "Clay_Quest2_SecondWin_Flirt">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _clayHarper = "Media//Characters//QuestChars//UFG//Clay Harper.jpg">> <<Chat $player "Ha, don't zone out next time. You owe me a beer for saving your butt.">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "*Laughs* Deal. Streets teach: sometimes you lean on others. Let's drink and dip.">> <div class="btn padding-top"><<button "Continue" "Underground_Fight_Gym">> <<set $ClayStoryProgress = 2>> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _clayHarper = "Media//Characters//QuestChars//UFG//Clay Harper.jpg">> <<Chat $player "After that win... I need to unwind. Bathroom? You owe me... a favor.">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "*Eyes darkening with lust* A favor? After you bailed me out... yeah, that's fair play. Come on, I'll show you what I can do.">> <<ChatMessage "Door bolted, Clay drops to his knees, hands roaming your thighs hungrily, yanking down your pants with eager tugs.">> <<if $player.gender() == 'Male'>> <<Video "Media\\Sex\\Quest\\FightClub\\Clay\\Quest2\\blowjob_m.mp4">> <<elseif $player.gender() == 'Shemale'>> <<Video "Media\\Sex\\Quest\\FightClub\\Clay\\Quest2\\blowjob_s.mp4">> <<else>> <<Video "Media\\Sex\\Quest\\FightClub\\Clay\\Quest2\\lick_m.mp4">> <</if>> <<if $player.gender() == 'Male' || $player.gender() == 'Shemale'>> <<ChatWithoutNPC 'Clay Harper' _clayHarper "*Whispering raggedly* Fuck... so hard for me. Hold on.">> <<ChatMessage "Blowjob in the tight stall, his lips stretching around your throbbing shaft as he bobs with sloppy enthusiasm, hand pumping the base while his free fingers tease your balls and trace your inner thighs. Your moans mix with the bar noise outside, hips bucking into his eager throat, the forbidden vibe amping the heat until you explode down his throat, him swallowing every drop with a satisfied hum, his tongue lingering to milk you dry.">> <<elseif $player.gender() == 'Female'>> <<ChatWithoutNPC 'Clay Harper' _clayHarper "*Whispering raggedly* So wet already... grind on me.">> <<ChatMessage "Cunnilingus in the tight stall, his tongue thrusting into your dripping folds, swirling around your swollen clit with hungry laps while fingers plunge inside, curling to hit your spots and spreading you wider. Your moans mix with the bar noise outside, hips grinding against his stubbled jaw, the rush of secrecy fueling the fire until you cum hard, juices flooding his mouth as he laps it all up greedily, his hands gripping your ass to hold you steady through the shudders.">> <</if>> <<ChatWithoutNPC 'Clay Harper' _clayHarper "Mmm, tasty. You get me going.">> <div class="btn padding-top"><<button "Continue" "Underground_Fight_Gym">> <<set $ClayStoryProgress = 2>> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<DeleteCharacter $interactionNpc>> <<set _clayHarper = "Media//Characters//QuestChars//UFG//Clay Harper.jpg">> <<ChatMessage "The second thug slaps you and bolts, spotting the bartender calling cops. Clay gets up, you both laugh it off, brushing dirt away.">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "Ha, those cowards ran! You tried, that's what counts. Streets are a gamble—sometimes you lose, but you live.">> <<Chat $player "*Laughing* Next time, bring backup.">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "For sure. Cheers to a draw and let's bounce.">> <div class="btn padding-top"><<button "Continue" "Underground_Fight_Gym">> <<set $ClayStoryProgress = 2>> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _clayHarper = "Media//Characters//QuestChars//UFG//Clay Harper.jpg">> <<run $player.characterEvents.registerEvent($player.info.id, "ClayQuest3", 1)>> <<ChatMessage "You approach Clay in the bustling gym. He’s wiping sweat from his brow, muscles taut from a recent workout. His eyes flicker with a distant thought, but a sly grin spreads when he notices you.">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "Hey, good to see you. I’ve got a wild idea—sneak into that locked pool across the street tonight. Just us, the water, and the quiet. It’s risky, but the thrill’s worth it. You in, or you chickening out?">> <<Chat $player "Count me in. Sounds like a rush.">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "Hell yeah. Let’s do this.">> <div class="btn padding-top"><<button "Continue" "Clay_Quest3_Pool">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _clayHarper = "Media//Characters//QuestChars//UFG//Clay Harper.jpg">> <<SetBackground "Media/Locations/Other/UFG/pool.jpg">> <<ChatMessage "You and Clay scale a chain-link fence, your movements quick and silent. The cool night air brushes your skin as you both strip down to minimal clothing, leaving piles of clothes by the edge. You dive in, the water crisp and enveloping. Your bodies catch the moonlight, glimmering with each stroke. You swim close, whispering to avoid detection, laughter soft but charged with excitement.">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "Damn, this is perfect. No crowds—just our own private ocean. And you… you’re looking way too good under that moonlight. This adrenaline’s got me wired, you feeling it?">> <<ChatMessage "Suddenly, a harsh flashlight beam cuts through the darkness. A guard storms toward the pool, his face red with anger, baton raised threateningly.">> <<set _guard = "Media//Characters//QuestChars//UFG//pool_guard.jpg">> <<ChatWithoutNPC 'Guard' _guard "Hey! What the hell are you doing here? This is private property! I’m calling the cops—or I’ll handle you myself!">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "*whispering, eyes darting to you* Shit. What’s the move? You take him, or let me handle it?">> <div class="btn padding-top"><<button "Take on the guard yourself." "Clay_Quest3_Option1_Fight">><</button>></div> <div class="btn padding-top"><<button "Let Clay handle it." "Clay_Quest3_Option2">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _clayHarper = "Media//Characters//QuestChars//UFG//Clay Harper.jpg">> <<ChatMessage "You leap from the pool, water streaming off your body in glistening trails. The tiles are slick underfoot, each step a risk as you charge the guard. The fight is chaotic, your movements fueled by adrenaline.">> <<include "CharactersData">> <<run _guardCharacter = CreateCharacter({isPlayer:false, characterWork:"Pool guard", gender:"Male", sexualPreference:"Bi", clothesPreference:"men", firstName:"Guard", lastName:"", skin:'White', age:30, defense:4, agility:2, strength:4, isQuestCharacter:true, questCharID:16, currentQuestID:0, currentCharImg:"Media//Characters//QuestChars//UFG//pool_guard.jpg"}, true)>> <<unset $maleNames $femaleNames $surnames>> <<set $indexNPC = $Characters.indexOf(_guardCharacter)>> <<set $interactionNpc = $Characters[$indexNPC]>> <<set _battleSetControls = {attack: true, seduce: false, items: false, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls 'Clay_Quest3_Option1_Win' 'Clay_Quest3_Option1_Lose'>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<DeleteCharacter $interactionNpc>> <<set _clayHarper = "Media//Characters//QuestChars//UFG//Clay Harper.jpg">> <<ChatMessage "The guard crumples to the ground, muttering curses. He scrambles to his feet and flees, shouting about backup. Clay climbs out of the pool, his wet skin catching the moonlight, eyes wide with admiration and a spark of something hotter.">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "Holy shit, you dropped him! Like a damn pro. My heart’s pounding after that, and you… you’re looking like trouble. You as amped up as I am?">> <div class="btn padding-top"><<button "Joke it off." "Clay_Quest3_Option1_Win_Joke">><</button>></div> <div class="btn padding-top"><<button "Flirt." "Clay_Quest3_Option1_Win_Flirt">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _clayHarper = "Media//Characters//QuestChars//UFG//Clay Harper.jpg">> <<Chat $player "Next time, I’m bringing a towel—fighting in wet underwear isn’t my vibe. Let’s get outta here before they bring an army.">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "*laughing, shaking his head* Hero in skivvies, huh? Alright, let’s bolt. That was epic.">> <div class="btn padding-top"><<button "Continue" "Underground_Fight_Gym">> <<set $ClayStoryProgress = 3>> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _clayHarper = "Media//Characters//QuestChars//UFG//Clay Harper.jpg">> <<Chat $player "That win’s got my blood racing. Wanna celebrate… in the storage room? I can tell you’re ready.">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "*breath catching, a slow grin spreading* Celebrate? With you? Fuck, I’m in. Let’s move before that guard gets his shit together.">> <<ChatMessage "The door clicks shut, sealing you in. The air is thick with the scent of chlorine and damp heat. You push Clay against the rough concrete wall, his skin slick and warm under your hands.">> <<if $player.gender() == 'Male'>> <<Video "Media\\Sex\\Quest\\FightClub\\Clay\\Quest3\\sex_m.mp4">> <<elseif $player.gender() == 'Shemale'>> <<Video "Media\\Sex\\Quest\\FightClub\\Clay\\Quest3\\anal_s.mp4">> <<else>> <<Video "Media\\Sex\\Quest\\FightClub\\Clay\\Quest3\\sex_f.mp4">> <</if>> <<if $player.gender() == 'Male' || $player.gender() == 'Shemale'>> <<ChatMessage "Your fingers dig into his hips, pulling him close. You guide yourself into him, slow and deliberate, feeling his body tense then yield. His low groan vibrates through you, a mix of pleasure and surrender. Your rhythm builds, each thrust steady, his moans growing louder in the tight space.">> <<elseif $player.gender() == 'Female'>> <<ChatMessage "Clay’s hands trace your curves, lingering on your waist before pulling you closer. He enters you with a firm, hungry thrust, his movements blending urgency with care. The slick slide of your bodies heightens every sensation, his breath hot against your neck as he drives deeper.">> <</if>> <<ChatWithoutNPC 'Clay Harper' _clayHarper "*voice rough, whispering* Fuck… take me deeper/feel me inside you. You’re setting me on fire… don’t stop.">> <<ChatMessage "Your bodies moving in sync, slick with pool water and sweat. The cramped room amplifies every sound—his ragged breaths, your soft gasps, the faint slap of skin. His hands grip you tightly, grounding you as the tension builds. The climax crashes over you both, a shared wave of release that leaves you trembling, pressed close, hearts pounding.">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "*panting, a soft laugh* Shit… that was unreal. You’re gonna ruin me, and I’m not even mad about it.">> <div class="btn padding-top"><<button "Continue" "Underground_Fight_Gym">> <<set $ClayStoryProgress = 3>> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<DeleteCharacter $interactionNpc>> <<set _clayHarper = "Media//Characters//QuestChars//UFG//Clay Harper.jpg">> <<ChatMessage "The guard shoves you back, pain flaring as you hit the slick tiles. Before he can strike again, Clay vaults from the pool, water sluicing off his frame. He lands a sharp jab to the guard’s jaw, sending him sprawling. The guard flees, and Clay pulls you to your feet, his touch steady but his eyes burning with adrenaline.">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "You okay? I handled him. Fighting bare-assed isn’t my usual, but damn, I’m still buzzing. You feeling that rush too?">> <div class="btn padding-top"><<button "Joke it off." "Clay_Quest3_Option1_Lose_Joke">><</button>></div> <div class="btn padding-top"><<button "Flirt." "Clay_Quest3_Option1_Lose_Flirt">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _clayHarper = "Media//Characters//QuestChars//UFG//Clay Harper.jpg">> <<Chat $player "Next time, I’m wearing armor under my swimsuit. Let’s move before we’re busted.">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "*grinning* Armor? You’re already a beast. Let’s roll.">> <div class="btn padding-top"><<button "Continue" "Underground_Fight_Gym">> <<set $ClayStoryProgress = 3>> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _clayHarper = "Media//Characters//QuestChars//UFG//Clay Harper.jpg">> <<Chat $player "You saved my ass… I wanna thank you properly. Storage room? I’m all yours.">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "*eyes smoldering, a predatory edge to his grin* Thank me? Oh, I’m not saying no to that. Get over here.">> <<ChatMessage "Clay backs you against the rough concrete wall, his hands firm on your shoulders, his body radiating dominance. Your skin, still slick from the pool, presses against his as he closes the distance, his gaze intense.">> <<if $player.gender() == 'Male'>> <<Video "Media\\Sex\\Quest\\FightClub\\Clay\\Quest3\\sex_m.mp4">> <<elseif $player.gender() == 'Shemale'>> <<Video "Media\\Sex\\Quest\\FightClub\\Clay\\Quest3\\sex_s.mp4">> <<else>> <<Video "Media\\Sex\\Quest\\FightClub\\Clay\\Quest3\\sex_f.mp4">> <</if>> <<if $player.gender() == 'Male' || $player.gender() == 'Shemale'>> <<ChatMessage "Clay’s hands grip your hips, his touch commanding yet careful. He guides himself into you with a slow, deliberate thrust, drawing a sharp gasp from your lips. His movements are steady, each push deep and controlled, his breath hot against your ear as he leans in, overwhelming your senses.">> <<elseif $player.gender() == 'Female'>> <<ChatMessage "Clay’s fingers trace your curves, lingering on your waist before pulling you flush against him. He enters you with a firm, hungry thrust, his rhythm blending urgency with tenderness. The slickness of your bodies amplifies every sensation, his lips grazing your neck as he drives deeper.">> <</if>> <<ChatWithoutNPC 'Clay Harper' _clayHarper "*voice low, growling* Feel me… you’re mine right now. You’re driving me fucking wild.">> <<ChatMessage "Your bodies intertwined, slick with water and sweat. The cramped room traps every sound—his low groans, your sharp gasps, the rhythmic creak of the wall behind you. His hands anchor you, one sliding to your hip, the other tangling in your hair as he pushes you both toward the edge. The climax hits hard, a mutual surge that leaves you gasping, clinging to him in the afterglow, your bodies pressed close, hearts racing.">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "*breathless, smirking softly* Fuck… you’re my new weakness. Don’t think I’m letting you go easy after that.">> <div class="btn padding-top"><<button "Continue" "Underground_Fight_Gym">> <<set $ClayStoryProgress = 3>> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _clayHarper = "Media//Characters//QuestChars//UFG//Clay Harper.jpg">> <<ChatMessage "Clay surges from the pool, muscles flexing under the moonlight. He moves with brutal precision, taking down the guard with a series of swift strikes. The guard bolts into the night. Clay helps you out of the pool, his grin cocky but warm, water dripping from his frame.">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "Done and dusted. Knew I could take him—old habits die hard. But damn, my body’s screaming for more action. Yours too?">> <div class="btn padding-top"><<button "Joke it off." "Clay_Quest3_Option2_Joke">><</button>></div> <div class="btn padding-top"><<button "Flirt." "Clay_Quest3_Option2_Flirt">><</button>></div> <<if $player.characterEvents.isEventRegistered($player.info.id, "GetClayApproval") == false>> <<run $player.characterEvents.registerEvent($player.info.id, "GetClayApproval", 1)>> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _clayHarper = "Media//Characters//QuestChars//UFG//Clay Harper.jpg">> <<Chat $player "Next time, I’m wearing armor under my swimsuit. Let’s move before we’re busted.">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "*grinning* Armor? You’re already a beast. Let’s roll.">> <div class="btn padding-top"><<button "Continue" "Underground_Fight_Gym">> <<set $ClayStoryProgress = 3>> <<set $ApprovalReceived += 1>> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _clayHarper = "Media//Characters//QuestChars//UFG//Clay Harper.jpg">> <<Chat $player "You saved my ass… I wanna thank you properly. Storage room? I’m all yours.">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "*eyes smoldering, a predatory edge to his grin* Thank me? Oh, I’m not saying no to that. Get over here.">> <<ChatMessage "Clay backs you against the rough concrete wall, his hands firm on your shoulders, his body radiating dominance. Your skin, still slick from the pool, presses against his as he closes the distance, his gaze intense.">> <<if $player.gender() == 'Male' || $player.gender() == 'Shemale'>> <<ChatMessage "Clay’s hands grip your hips, his touch commanding yet careful. He guides himself into you with a slow, deliberate thrust, drawing a sharp gasp from your lips. His movements are steady, each push deep and controlled, his breath hot against your ear as he leans in, overwhelming your senses.">> <<elseif $player.gender() == 'Female'>> <<ChatMessage "Clay’s fingers trace your curves, lingering on your waist before pulling you flush against him. He enters you with a firm, hungry thrust, his rhythm blending urgency with tenderness. The slickness of your bodies amplifies every sensation, his lips grazing your neck as he drives deeper.">> <</if>> <<ChatWithoutNPC 'Clay Harper' _clayHarper "*voice low, growling* Feel me… you’re mine right now. You’re driving me fucking wild.">> <<ChatMessage "Your bodies intertwined, slick with water and sweat. The cramped room traps every sound—his low groans, your sharp gasps, the rhythmic creak of the wall behind you. His hands anchor you, one sliding to your hip, the other tangling in your hair as he pushes you both toward the edge. The climax hits hard, a mutual surge that leaves you gasping, clinging to him in the afterglow, your bodies pressed close, hearts racing.">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "*breathless, smirking softly* Fuck… you’re my new weakness. Don’t think I’m letting you go easy after that.">> <div class="btn padding-top"><<button "Continue" "Underground_Fight_Gym">> <<set $ClayStoryProgress = 3>> <<set $ApprovalReceived += 1>> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _clayHarper = "Media//Characters//QuestChars//UFG//Clay Harper.jpg">> <<DrawImg _clayHarper>> <<set _dexAtMax = $player.attributes.dexterity.value >= $player.attributes.dexterity.max>> <<if $player.characterEvents.isEventRegistered($player.info.id, "GetTessApproval") == false>> <<ChatWithoutNPC 'Clay Harper' _clayHarper 'Get permission from Tess first, then come on back.'>> <<elseif $ClayStoryProgress == 0>> <<ChatWithoutNPC 'Clay Harper' _clayHarper 'Hey, wanna fight?'>> <div class="btn padding-top"><<button "Yes, I'm ready" "ClayStartQuestFight">><</button>></div> <<elseif $ClayStoryProgress == 1>> <<goto "Clay_Quest2_Start">> <<elseif $ClayStoryProgress == 2>> <<goto "Clay_Quest3_Start">> <<else>> <<if _dexAtMax>> <<ChatWithoutNPC 'Clay Harper' _clayHarper 'Your dexterity\'s already maxed out.'>> <div class="btn padding-top non-interacting"><<button "Dexterity (MAX)">><</button>></div> <<else>> <<ChatWithoutNPC 'Clay Harper' _clayHarper 'Want to get quicker? I can train your dexterity for $250.'>> <div class="btn padding-top"><<button "Train my dexterity ($250)" "Clay_TrainDexterity">><</button>></div> <</if>> <</if>> <div class="btn padding-top"><<button "Leave" "Underground_Fight_Gym">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _clayHarper = "Media//Characters//QuestChars//UFG//Clay Harper.jpg">> <<if $player.money < 250>> <<ChatWithoutNPC 'Clay Harper' _clayHarper 'You need $250 to train.'>> <div class="btn padding-top"><<button "Back" "Clay_Checker">><</button>></div> <<else>> <<set $player.money -= 250>> <<SpendEnergy $player 20>> <<SpendTimeWithoutUpdate 30>> <<set _gain = Random(10,20) + $player.attributes.intelligence.value>> <<SetCharProgression $player 'dexterity' _gain true>> <<ChatWithoutNPC 'Clay Harper' _clayHarper 'Nice, you\'re getting faster.'>> <div class="btn padding-top"><<button "Back" "Clay_Checker">><</button>></div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "CharactersData">> <<run _clayCharacter = CreateCharacter({ isPlayer: false, characterWork: "Quest", gender: "Male", sexualPreference: "Bi", clothesPreference: "men", firstName: "Clay", lastName: "Harper", skin: 'White', age: 30, defense: 2, agility: 4, strength: 2, isQuestCharacter: true, questCharID: 13, currentQuestID: 0, currentCharImg: "Media\\Characters\\QuestChars\\UFG\\Clay Harper.jpg", }, true)>> <<unset $maleNames $femaleNames $surnames>> <<run $player.characterEvents.registerEvent(_clayCharacter.info.id, "knows you", 1)>> <<set $indexNPC = $Characters.indexOf(_clayCharacter)>> <<set $interactionNpc = $Characters[$indexNPC]>> <<set _battleSetControls = {attack: true, seduce: false, items: false, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls 'ClayQuestFightWin' 'ClayQuestFightLose'>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $clayFightWon = true>> <div class="btn padding-top"><<button "Continue" "Clay_Quest1">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $clayFightWon = false>> <div class="btn padding-top"><<button "Continue" "Clay_Quest1">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $canShowStatsBtn = false>> <<set $gameSettings.allowSaves = false>> <<SetBackground "Media/Locations/City/SkidRow/Warehouse/Warehouse_Basement.jpg">> <<if $grantTournamentFighters == null>> <<set $grantTournamentFighters = [ {name: "Razor", desc: "a lean fighter with lightning-fast strikes", defense: 7, agility: 10, strength: 8, dexterity: 9, vitality: 7}, {name: "Bull", desc: "a massive bruiser who shrugs off hits", defense: 10, agility: 6, strength: 11, dexterity: 6, vitality: 10}, {name: "Shade", desc: "a cunning trickster known for dirty moves", defense: 8, agility: 8, strength: 9, dexterity: 10, vitality: 8} ]>> <</if>> <<if $grantTournamentProgress == null>> <<set $grantTournamentProgress = 0>> <</if>> <<set _grantMaddox = "Media//Characters//QuestChars//UFG//Grant Maddox.jpg">> <<if $grantTournamentCompleted>> <<ChatWithoutNPC 'Grant Maddox' _grantMaddox "You've already won the tournament." >> <div class="btn padding-top"><<button "Back" "Underground_Fight_Gym">><</button>></div> <<else>> <<set _nextOpp = $grantTournamentFighters[$grantTournamentProgress]>> <<set _grantText = "The fighters are ready and the crowd's waiting. Your next opponent is " + _nextOpp.name + ", " + _nextOpp.desc + "." >> <<ChatWithoutNPC 'Grant Maddox' _grantMaddox _grantText>> <div class="btn padding-top"><<button "Start Fight" "Grant_Tournament_Fight">><</button>></div> <div class="btn padding-top"><<button "Back" "Underground_Fight_Gym">><</button>></div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $canShowStatsBtn = false>> <<set $gameSettings.allowSaves = false>> <<include "CharactersData">> <<set _fighters = $grantTournamentFighters>> <<set _opp = _fighters[$grantTournamentProgress]>> <<set _grantMaddox = "Media//Characters//QuestChars//UFG//Grant Maddox.jpg">> <<set _grantText = "Your next opponent is " + _opp.name + ", " + _opp.desc + ".">> <<ChatWithoutNPC 'Grant Maddox' _grantMaddox _grantText>> <<run _tournamentOpponent = CreateCharacter({ isPlayer: false, characterWork: "Tournament Fighter", gender: "Male", sexualPreference: "Bi", clothesPreference: "men", skin: 'White', age: 28, defense: _opp.defense, agility: _opp.agility, strength: _opp.strength, dexterity: _opp.dexterity, vitality: _opp.vitality, isQuestCharacter: true, questCharID: 20, currentQuestID: 0, currentCharImg: "Media\\Characters\\QuestChars\\Other\\Unknown.jpg", firstName: _opp.name, }, true)>> <<unset $maleNames $femaleNames $surnames>> <<set $indexNPC = $Characters.indexOf(_tournamentOpponent)>> <<set $interactionNpc = $Characters[$indexNPC]>> <<set _battleSetControls = {attack: true, seduce: false, items: false, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls 'Grant_Tournament_Win' 'Grant_Tournament_Lose'>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<DeleteCharacter $interactionNpc>> <<set _grantMaddox = "Media//Characters//QuestChars//UFG//Grant Maddox.jpg">> <<set _fighters = $grantTournamentFighters>> <<if $grantTournamentProgress < _fighters.length - 1>> <<set $grantTournamentProgress += 1>> <<ChatWithoutNPC 'Grant Maddox' _grantMaddox "Nice work. Take a breather before the next fight." >> <div class="btn padding-top"><<button "Next Fight" "Grant_Tournament_Start">> <<set $canShowStatsBtn = false>> <<set $gameSettings.allowSaves = false>> <</button>></div> <div class="btn padding-top"><<button "Take a Break" "Underground_Fight_Gym">> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <</button>></div> <<else>> <<ChatWithoutNPC 'Grant Maddox' _grantMaddox "Congratulations, champ. Here's your prize money." >> <<set $player.money += 20000>> <<set $grantTournamentCompleted = true>> <<set $grantTournamentProgress = 0>> <div class="btn padding-top"><<button "Continue" "Underground_Fight_Gym">> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <</button>></div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<DeleteCharacter $interactionNpc>> <<set _grantMaddox = "Media//Characters//QuestChars//UFG//Grant Maddox.jpg">> <<set $grantTournamentProgress = 0>> <<ChatWithoutNPC 'Grant Maddox' _grantMaddox "Tough break. Come back when you're ready for another shot." >> <div class="btn padding-top"><<button "Continue" "Underground_Fight_Gym">> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _grantMaddox = "Media//Characters//QuestChars//UFG//Grant Maddox.jpg">> <<DrawImg _grantMaddox>> <<if $grantTournamentCompleted>> <<ChatWithoutNPC 'Grant Maddox' _grantMaddox 'You already claimed the prize. The tournament\'s over.'>> <div class="btn padding-top"><<button "Continue" "Underground_Fight_Gym">><</button>></div> <<else>> <<if $ApprovalReceived < 3>> <<ChatWithoutNPC 'Grant Maddox' _grantMaddox 'You haven\'t gotten approval from my fighters yet?'>> <div class="btn padding-top"><<button "Continue" "Underground_Fight_Gym">><</button>></div> <<else>> <<ChatWithoutNPC 'Grant Maddox' _grantMaddox 'Awesome, you\'ve got the green light from all my fighters. Ready for the tournament?'>> <<set $getApproval = true>> <<if $grantTournamentProgress > 0>> <div class="btn padding-top"><<button "Continue Tournament" "Grant_Tournament_Start">><</button>></div> <<else>> <div class="btn padding-top"><<button "Start Tournament" "Grant_Tournament_Start">><</button>></div> <</if>> <div class="btn padding-top"><<button "Maybe later" "Underground_Fight_Gym">><</button>></div> <</if>> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _grantMaddox = "Media//Characters//QuestChars//UFG//Grant Maddox.jpg">> <<run $player.characterEvents.registerEvent($player.info.id, "GrantMeet", 1)>> <<ChatWithoutNPC 'Grant Maddox' _grantMaddox 'Hey man, this your first time here? Name\'s Grant Maddox. I\'m the hand-to-hand combat coach. I also train fighters for a big tournament with a $20,000 prize. To sign up, you\'ll need approval from my three top fighters: Tess, Clay, and Marcus. Tess got beat by her own dad since she was a kid, so she\'s tough as nails—she can take the pain and dish it right back. Clay used to be a thief, so he\'s quick and agile as hell. Marcus is a massive brute; he\'s not the most nimble, but the guy\'s got raw power to spare. Anyway, they can help you train if you need it, but it\'ll cost you.'>> <<set $ApprovalReceived = 0>> <<set $getApproval = false>> <<set $tessStoryProgress = 0>> <<set $ClayStoryProgress = 0>> <<set $MarcusStoryProgress = 0>> <div class="btn padding-top"><<button "Continue" "Underground_Fight_Gym">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $canShowStatsBtn = false>> <<set $gameSettings.allowSaves = false>> <<run $player.characterEvents.registerEvent($player.info.id, "MarcusQuest1", 1)>> <<if $player.characterEvents.isEventRegistered($player.info.id, "MarcusFem") == false>> <<set _marcusBell = "Media//Characters//QuestChars//UFG//Marcus Bell_M.jpg">> <<else>> <<set _marcusBell = "Media//Characters//QuestChars//UFG//Marcus Bell_F.jpg">> <</if>> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "Damn, that was one hell of a fight. You had me dripping sweat out there.">> <<ChatMessage "Marcus grins, wiping his brow with the back of his hand.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "Listen, my family’s throwing a dinner tonight—mom, dad, a couple of relatives. It’s always weird going alone. Wanna tag along? Good food, some talk… and I won’t have to explain these bruises by myself.">> <<Chat $player 'Alright, I’m game. What’s with the weird vibe? Tell me on the way.'>> <<ChatMessage "You start walking together, Marcus’s stride relaxed but purposeful.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "It’s not far. Family dinners are like stepping into a cage match without gear. They’re good folks, just… life’s been rough on them.">> <div class="btn padding-top"><<button "Continue" "Marcus_Quest1_Dinner">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if $player.characterEvents.isEventRegistered($player.info.id, "MarcusFem") == false>> <<set _marcusBell = "Media//Characters//QuestChars//UFG//Marcus Bell_M.jpg">> <<else>> <<set _marcusBell = "Media//Characters//QuestChars//UFG//Marcus Bell_F.jpg">> <</if>> <<set _marcusMother = "Media//Characters//QuestChars//UFG//Marcus_Mom.jpg">> <<set _marcusFather = "Media//Characters//QuestChars//UFG//Marcus_Dad.jpg">> <<set _marcusAunt = "Media//Characters//QuestChars//UFG//marcus_aunt.jpg">> <<SetBackground "Media/Locations/Other/UFG/Marcus_Parents_H_LR.jpg">> <<ChatMessage "Marcus’s parents’ house is small but warm, the air thick with the comforting smell of home-cooked food. His mother swings the door open, her face lighting up as she pulls Marcus into a tight hug. His father gives a quick nod from the living room, where an uncle and aunt are already seated at the dining table.">> <<ChatWithoutNPC "Marcus’s Mother" _marcusMother "Marcus, you brought someone! Who’s this lovely person?">> <<ChatMessage "She beams, gesturing for you to come inside.">> <<ChatWithoutNPC "Marcus’s Mother" _marcusMother "Come in, dinner’s ready—roast, salad, all the good stuff you love.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "This is my gym buddy. *Says your name, clapping a hand on your shoulder.* Don’t mind the bruises—we’ve been trading “friendly” hits.">> <<ChatMessage "Marcus chuckles, guiding you toward the table.">> <<ChatWithoutNPC "Marcus’s Father" _marcusFather "A fighter, eh?">> <<ChatMessage "He leans forward in his chair, sizing you up with a grin.">> <<ChatWithoutNPC "Marcus’s Father" _marcusFather "Sit down, tell us about the gym. Grant still cracking the whip?">> <<ChatMessage "The table hums with easy chatter—talk of work, neighbors, and old family stories. Marcus’s father tosses out a dry joke about his past job, while his mother peppers you with questions about your training. The conversation shifts to Marcus’s sister.">> <<ChatWithoutNPC 'Aunt' _marcusAunt "How’s Tiffany doing? It’s been forever since we heard from her. Still in the city?">> <<ChatMessage "She leans in, her tone curious but gentle.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "Yeah, Tiff’s out there living her life.">> <<ChatMessage "Marcus’s jaw tightens slightly, but he forces a smile.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "Working at a café, chasing her dreams. She’s good, just… doing her own thing.">> <<ChatWithoutNPC 'Mother' _marcusMother "I hope she calls soon. We miss her.">> <<ChatMessage "Her voice softens, her eyes lingering on Marcus.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "She will, Mom.">> <<ChatMessage "He shifts in his seat, quickly steering the conversation elsewhere.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "Hey, remember when Dad spent weeks wrestling that old car into shape?">> <<ChatMessage "The table erupts in laughter, the mood lightening as stories flow.">> <<ChatMessage "The dinner wraps up with warmth and shared jokes, though Marcus sidesteps any deeper talk about his sister. After dessert, he leads you to his old bedroom—a cramped space with fight posters plastered on the walls and trophies lined up on a shelf.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "Whew, we made it through. Thanks for coming—you kept it from being a total drag.">> <<ChatMessage "He leans against the doorframe, his eyes catching yours with a playful glint.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "So, what’s the plan? You sticking around, or calling it a night?">> <div class="btn padding-top"><<button "Say Goodbye" "Marcus_Quest1_Goodbye">><</button>></div> <div class="btn padding-top"><<button "Flirt" "Marcus_Quest1_Flirt">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if $player.characterEvents.isEventRegistered($player.info.id, "MarcusFem") == false>> <<set _marcusBell = "Media//Characters//QuestChars//UFG//Marcus Bell_M.jpg">> <<else>> <<set _marcusBell = "Media//Characters//QuestChars//UFG//Marcus Bell_F.jpg">> <</if>> <<SetBackground "Media/Locations/Other/UFG/Marcus_Parents_H_LR.jpg">> <<Chat $player 'That was awesome, but I’m wiped. Thanks for the invite—your mom’s food is next-level.'>> <<ChatMessage "You give him a quick nod, heading toward the door.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "Ha, I’ll tell her you said that.">> <<ChatMessage "He flashes a warm grin, walking you out.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "Catch you at the gym. Tonight was… solid.">> <div class="btn padding-top"><<button "Continue" "Underground_Fight_Gym">> <<if $player.characterEvents.isEventRegistered($player.info.id, "GetMarcusApproval") == false>> <<run $player.characterEvents.registerEvent($player.info.id, "GetMarcusApproval", 1)>> <<set $ApprovalReceived += 1>> <<DeleteCharacter $interactionNpc>> <<set $MarcusStoryProgress = 1>> <</if>> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/Other/UFG/Marcus_Parents_H_Bedroom.jpg">> <<if $player.characterEvents.isEventRegistered($player.info.id, "MarcusFem") == false>> <<set _marcusBell = "Media//Characters//QuestChars//UFG//Marcus Bell_M.jpg">> <<else>> <<set _marcusBell = "Media//Characters//QuestChars//UFG//Marcus Bell_F.jpg">> <</if>> <<Chat $player 'Dinner was great, but I’m not done with you yet. You’re still buzzing from that fight… wanna take the edge off together?'>> <<ChatMessage "You step closer, your voice low and teasing, eyes locked on his.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "Oh, you’re coming in hot, huh?">> <<ChatMessage "Marcus steps toward you, closing the distance, his body radiating heat.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "Adrenaline’s still kicking from the ring. Depends on who came out on top today.">> <<ChatMessage "He tilts his head, his gaze intense, a daring smirk playing on his lips.">> <<if $player.gender() == 'Male' || $player.gender() == 'Shemale'>> <<if $marcusFightWon == true>> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "You had me down earlier… now it’s my turn to take charge.">> <<ChatMessage "He guides you to the bed, his hand brushing your shoulder, firm and deliberate.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "Sit. Let my hands do the work—slow at first, tight where it counts.">> <<Video "Media\\Sex\\Quest\\FightClub\\Marcus\\Quest1\\handjob_m_b.mp4">> <<ChatMessage "His fingers trail down, wrapping around your cock, his touch confident and unhurried.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "Feel that? I’m picking up the pace… but keep it quiet, yeah? No need to wake the house.">> <<ChatMessage "His breath is hot against your neck, his grip steady and precise, teasing every sensitive inch.">> <<ChatMessage "Marcus’s hand moves with skill, building the tension with each stroke. Your body tightens, release hitting with a low, stifled groan.">> <<ChatMessage "He smirks, wiping his hand on his shirt, his eyes still locked on yours.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "Shit, you’re something else. That was… fucking electric.">> <<ChatMessage "He leans back, chest rising and falling, a satisfied glint in his eyes.">> <<else>> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "You went down in the ring… now you’re mine to please.">> <<ChatMessage "He sits on the bed, guiding your hand to his bulge with a rough, teasing grin.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "Wrap your hand around me—slow, firm. Yeah, like that… now faster.">> <<if $player.gender() == 'Male'>> <<Video "Media\\Sex\\Quest\\FightClub\\Marcus\\Quest1\\handjob_m_w.mp4">> <<else>> <<Video "Media\\Sex\\Quest\\FightClub\\Marcus\\Quest1\\handjob_f.mp4">> <</if>> <<ChatMessage "His voice drops to a husky whisper, his body tensing under your touch.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "Keep it quiet, but don’t hold back.">> <<ChatMessage "His hand rests on your arm, urging you on as his breath hitches.">> <<ChatMessage "Your fingers work him, his muscles flexing with each stroke. His muffled groans fill the air as he finishes, gripping your arm tightly.">> <<ChatMessage "His eyes burn with gratitude as he catches his breath.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "Damn… you’re lethal in and out of the ring.">> <<ChatMessage "He leans back, a lazy smile spreading across his face.">> <</if>> <<elseif $player.gender() == 'Female'>> <<if $marcusFightWon == true>> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "You took me out today… guess I owe you one.">> <<ChatMessage "He steps closer, his hand grazing your thigh as he guides you to the bed.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "Lie back. My fingers know their way—slow circles, right where you’re craving it.">> <<ChatMessage "His touch teases your clit, firm and deliberate, his eyes never leaving yours.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "Feel that heat? Shh, keep it down… just let it hit you.">> <<ChatMessage "His breath brushes your ear, his fingers moving with precise, unrelenting rhythm.">> <<ChatMessage "Marcus’s fingers work with expertise, building the tension until your body arches, climax hitting with a soft, suppressed whimper.">> <<Video "Media\\Sex\\Quest\\FightClub\\Marcus\\Quest1\\fing_f.mp4">> <<ChatMessage "He pulls back, grinning, his eyes still hungry.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "Hell, you’re gonna be the death of me. That was pure fire.">> <<ChatMessage "He leans back, his voice low and warm, a spark still in his gaze.">> <<else>> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "I had you on the mat earlier… now you get to even the score.">> <<ChatMessage "He sits close, guiding your hand to his cock with a sly, teasing smirk.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "Stroke me—slow, tight. Yeah, just like that… now faster.">> <<ChatMessage "His voice is a rough whisper, his body tensing as you move.">> <<Video "Media\\Sex\\Quest\\FightClub\\Marcus\\Quest1\\handjob_f.mp4">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "Keep it quiet, but don’t let up.">> <<ChatMessage "His hand grips yours lightly, his breath growing ragged.">> <<ChatMessage "Your hand finds a rhythm, his body responding with every stroke. His stifled groans spill out as he finishes, his hand tightening on yours, eyes full of appreciation.">> <<ChatMessage "He exhales, a grin breaking through.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "You’re trouble, you know that? Fucking unreal.">> <<ChatMessage "He leans back, catching his breath, his gaze still locked on you.">> <</if>> <</if>> <div class="btn padding-top"><<button "Continue" "Underground_Fight_Gym">> <<if $player.characterEvents.isEventRegistered($player.info.id, "GetMarcusApproval") == false>> <<run $player.characterEvents.registerEvent($player.info.id, "GetMarcusApproval", 1)>> <<set $ApprovalReceived += 1>> <<DeleteCharacter $interactionNpc>> <<set $MarcusStoryProgress = 1>> <</if>> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $canShowStatsBtn = false>> <<set $gameSettings.allowSaves = false>> <<run $player.characterEvents.registerEvent($player.info.id, "MarcusQuest2", 1)>> <<set _marcusBell = "Media//Characters//QuestChars//UFG//Marcus Bell_M.jpg">> <<ChatMessage "You’re in an old gym, reeking of sweat and metal. Barbells clank, and someone’s pounding a punching bag in the corner. Marcus stands against the wal. His eyes are filled with guilt and determination. This is the moment of truth. You approach him.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "Hey, good to see you. Listen, remember at dinner when I said Tiffany “ran away”? That’s bullshit. She didn’t run—she was kidnapped. By a gang. They’re forcing her to work as a prostitute in their brothel to cover my debts. *He clenches his fists tighter, voice shaking.* When I was 20, I got mixed up in street dealing for a gang—thought I’d make some cash, help the family. But the cops busted me on a big deal, seized all the goods, and I did two years in prison. When I got out, I had nothing to pay them back with. The gang said, “Debt’s on interest,” and took Tiffany—she was 18 then. They forced her to... damn it, service clients like a whore. I tried to get her back, but they beat me half to death. She’s still there, in their den. Please, help: sneak into the brothel as a client, look around. Here’s her photo. *He shows you a picture of a sweet girl with dark hair and sad eyes.* Talk to her, tell her: “Marcus is still fighting to get you out. Hold on.”">> <div class="btn padding-top"><<button "Sure, I'll help." "Marcus_Quest2_ResponseHelp">><</button>></div> <div class="btn padding-top"><<button "Risky, but for your sister." "Marcus_Quest2_ResponseRisky">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _marcusBell = "Media//Characters//QuestChars//UFG//Marcus Bell_M.jpg">> <<Chat $player 'Sure, I’ll help.'>> <<Chat $player 'Alright, give me the address. Why’s the gang so brutal?'>> <<ChatWithoutNPC 'Marcus Bell' _marcusBell 'They don’t forgive debts. Be careful—the brothel’s on the outskirts, security’s tight. Come back and tell me everything. Thanks, you’re giving me hope.'>> <div class="btn padding-top"><<button "Continue" "Marcus_Quest2_Brothel_Start">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _marcusBell = "Media//Characters//QuestChars//UFG//Marcus Bell_M.jpg">> <<Chat $player 'Risky, but for your sister.'>> <<Chat $player 'Alright, give me the address. Why’s the gang so brutal?'>> <<ChatWithoutNPC 'Marcus Bell' _marcusBell 'They don’t forgive debts. Be careful—the brothel’s on the outskirts, security’s tight. Come back and tell me everything. Thanks, you’re giving me hope.'>> <div class="btn padding-top"><<button "Continue" "Marcus_Quest2_Brothel_Start">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/Other/UFG/gang_House.jpg">> <<ChatMessage "You arrive at a dark building on the city’s edge. Neon lights flicker above the entrance, a sign reading “Red Silk.” The air is thick with cigarette smoke and cheap perfume. At the door stands a guard—a hulking brute with tattoos, a scar across his eyebrow, and a cold stare.">> <<set _gangGuard = "Media//Characters//QuestChars//UFG//gang3.jpg">> <<ChatWithoutNPC 'Guard' _gangGuard 'What do you want? Client? Show me the cash, and get in. No funny business.'>> <<Chat $player 'I’m a client, looking for some fun. *You flash the money and walk inside.*'>> <div class="btn padding-top"><<button "Continue" "Marcus_Quest2_Brothel_Inside">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/Other/UFG/gang_house_interier.jpg">> <<ChatMessage "Inside, dim lights cast shadows. Women in skimpy outfits lounge near the bar, clients drinking and laughing. Curtains hide rooms where moans and muffled voices spill out. You scan the place, keeping Tiffany’s photo in mind. You find her room—the door’s slightly open. Inside, a man looms over Tiffany." >> <<set _gangClient = "Media//Characters//QuestChars//UFG//gang2.jpg">> <<ChatWithoutNPC 'Client' _gangClient 'Get on your knees, bitch! Do anal, or I’ll kill you!'>> <<set _tiffanyImg = "Media//Characters//QuestChars//UFG//Tiffany.jpg">> <<ChatWithoutNPC 'Tiffany' _tiffanyImg 'No, please, don’t... it hurts, I don’t want to!'>> <div class="btn padding-top"><<button "Intervene." "Marcus_Quest2_Intervene">><</button>></div> <div class="btn padding-top"><<button "Do nothing." "Marcus_Quest2_DoNothing">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/Other/UFG/gang_house_tiffany_room.jpg">> <<ChatMessage "You burst into the room, shoving the client.">> <<Chat $player 'Back off, you bastard!'>> <<ChatMessage "He’s a big guy with bloodshot eyes and swings at you.">> <<include "CharactersData">> <<run _abusiveClient = CreateCharacter({ isPlayer: false, characterWork: "Client", gender: "Male", sexualPreference: "Bi", clothesPreference: "men", firstName: "Client", lastName: "", skin: 'Black', age: 30, defense: 5, agility: 5, strength: 5, isQuestCharacter: true, questCharID: 18, currentQuestID: 0, currentCharImg: "Media\\Characters\\QuestChars\\UFG\\gang2.jpg", }, true)>> <<unset $maleNames $femaleNames $surnames>> <<run $player.characterEvents.registerEvent(_abusiveClient.info.id, "knows you", 1)>> <<set $indexNPC = $Characters.indexOf(_abusiveClient)>> <<set $interactionNpc = $Characters[$indexNPC]>> <<set _battleSetControls = {attack: true, seduce: false, items: false, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls 'Marcus_Quest2_Intervene_Win' 'Marcus_Quest2_Intervene_Lose'>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/Other/UFG/gang_house_tiffany_room.jpg">> <<ChatMessage "The client collapses, groaning, clutching his jaw. A gang member storms in, gun in hand: “What the hell’s going on? Who’s making noise?”">> <<Chat $player 'This jerk was roughing up your girl—beating her, trying to kill her. I stepped in to save her.'>> <<set _gangMember = "Media//Characters//QuestChars//UFG//gang3.jpg">> <<ChatWithoutNPC 'Gang Member' _gangMember '*Looks at the client, then Tiffany.* Yeah, I see. Good job, client. Your reward: a free session with Tiffany. She’s fresh, don’t miss out. *He smirks and leaves.*'>> <<ChatMessage "Tiffany looks at you with gratitude, but her eyes are heavy with exhaustion. She sits on the edge of a worn mattress, her skimpy dress barely covering the bruises on her body." >> <<Chat $player 'Marcus is fighting for you, hold on.'>> <<ChatMessage "She nods, tears streaming down her face." >> <div class="btn padding-top"><<button "Accept." "Marcus_Quest2_Intervene_Win_Accept">><</button>></div> <div class="btn padding-top"><<button "Decline." "Marcus_Quest2_Intervene_Win_Decline">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _tiffanyImg = "Media//Characters//QuestChars//UFG//Tiffany.jpg">> <<SetBackground "Media/Locations/Other/UFG/gang_house_tiffany_room.jpg">> <<if $player.gender() == 'Male' || $player.gender() == 'Shemale'>> <<ChatMessage "The gang member leaves, the door slamming shut. Tiffany’s breathing is shaky." >> <<ChatWithoutNPC 'Tiffany' _tiffanyImg 'Thank you... for stepping in.'>> <<ChatMessage "She slowly drops to her knees, her trembling fingers undoing your belt." >> <<ChatWithoutNPC 'Tiffany' _tiffanyImg 'I have to... it’s my job.'>> <<ChatMessage "Her eyes meet yours, almost pleading for forgiveness. You nod, and she leans closer." >> <<Video "Media\\Sex\\Quest\\FightClub\\Marcus\\Quest2\\Blowjob_m_s.mp4">> <<ChatMessage "Her lips touch you, warm and wet, wrapping around you softly but firmly. She moves slowly, deeply, making soft, muffled sounds. Her hands rest on your thighs, gripping lightly as she works her tongue, speeding up, then slowing down. Tears roll down her cheeks, mixing with the moisture on her lips. The tension builds, her movements grow more urgent, and an orgasm hits you fast, a powerful wave. You finish in her mouth; she swallows, not pulling away, but her shoulders tremble. She wipes her lips with the back of her hand, looking away.">> <<ChatWithoutNPC 'Tiffany' _tiffanyImg 'Thank you... for not letting him break me.'>> <<ChatMessage "You fasten your belt, feeling guilt and relief. She adjusts her dress, and you leave, hearing another client being called as you go." >> <<elseif $player.gender() == 'Female'>> <<ChatMessage "The gang member leaves, shutting the door. Tiffany’s eyes glisten with tears, but there’s gratitude in them." >> <<ChatWithoutNPC 'Tiffany' _tiffanyImg 'Thank you... for saving me.'>> <<Chat $player 'He’s fighting for you, hold on.'>> <<ChatMessage "She nods, wiping a tear, and reaches for your hand." >> <<ChatWithoutNPC 'Tiffany' _tiffanyImg 'You’re not like them.'>> <<ChatMessage "Her fingers tremble against your skin." >> <<ChatMessage "She pulls you toward the mattress, her hands sliding over your hips, gentle but practiced." >> <<ChatWithoutNPC 'Tiffany' _tiffanyImg 'I want this to be different.'>> <<ChatMessage "You nod. Her fingers unfasten your clothes, slow and careful, and she lowers herself, kissing your stomach, moving down to your core. Her breath is hot, and you feel the tension rising." >> <<Video "Media\\Sex\\Quest\\FightClub\\Marcus\\Quest2\\lick_f.mp4">> <<ChatMessage "Tiffany starts slowly, her tongue gently exploring, finding a rhythm. She makes soft moans, as if trying to lose herself in the moment. Her movements grow bolder, her tongue circling, pressing, quickening, and waves of pleasure build. Her hands grip your thighs, holding you as she dives deeper, driving you to the edge." >> <<ChatWithoutNPC 'Tiffany' _tiffanyImg 'You saved me... thank you.'>> <<ChatMessage "She resumes, faster now, and an orgasm crashes over you, sharp and intense. Tiffany slows, easing you down as you catch your breath." >> <<ChatMessage "She rises, wiping her lips, and gives you a tired smile." >> <<ChatWithoutNPC 'Tiffany' _tiffanyImg 'I won’t forget what you did.'>> <<ChatMessage "She fixes her dress. You fasten your clothes, feeling a mix of guilt, relief, and closeness. You leave, hearing another client called behind you." >> <</if>> <<set $marcusQ2Outcome = "InterveneWin">> <div class="btn padding-top"><<button "Continue" "Marcus_Quest2_End">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/Other/UFG/gang_house_tiffany_room.jpg">> <<Chat $player 'No, thanks. Just glad I could help.'>> <<ChatWithoutNPC 'Gang Member' _gangMember 'Suit yourself. Get out.'>> <<ChatMessage "You leave the room, relieved but heavy with the knowledge that Tiffany’s still trapped in this hell. The cold wind hits your face outside, but you know you did what you could.">> <<set $marcusQ2Outcome = "InterveneWin">> <div class="btn padding-top"><<button "Continue" "Marcus_Quest2_End">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/Other/UFG/gang_house_tiffany_room.jpg">> <<ChatMessage "The client lands a punch, and you hit the floor, pain shooting through your ribs. Gang members burst in: “What’s this fight about?” They beat the client and toss him out, then turn to you: “You with him? Get out!” You’re thrown onto the street, bruised and feeling like you failed.">> <<set $marcusQ2Outcome = "InterveneLose">> <div class="btn padding-top"><<button "Continue" "Marcus_Quest2_End">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/Other/UFG/gang_house_tiffany_room.jpg">> <<ChatMessage "You stand by the door, listening to Tiffany’s cries. Her sobs cut deep, but you stay still. Gang members barge in: “What’s the noise?” They beat the client and throw him out, then glare at you: “You just stood there? His buddy? Get out!” You’re tossed onto the street, left with a sense of powerlessness.">> <<set $marcusQ2Outcome = "DoNothing">> <div class="btn padding-top"><<button "Continue" "Marcus_Quest2_End">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/City/SkidRow/Warehouse/Warehouse_Basement.jpg">> <<set _marcusBell = "Media//Characters//QuestChars//UFG//Marcus Bell_M.jpg">> <<SetBackground>> <<if $marcusQ2Outcome == 'InterveneWin'>> <<Chat $player 'I found Tiffany. She’s alive but suffering. I passed on your message; she’s holding on.'>> <<elseif $marcusQ2Outcome == 'InterveneLose'>> <<Chat $player 'I saw Tiffany, but I couldn’t talk to her. A client was beating her, I tried to step in, but they threw me out. She’s there, alive.'>> <<elseif $marcusQ2Outcome == 'DoNothing'>> <<Chat $player 'I saw Tiffany but couldn’t get close. A client was hurting her, the gang stepped in. She’s alive but suffering.'>> <</if>> <<ChatWithoutNPC 'Marcus Bell' _marcusBell 'Damn... thanks for trying. At least I know she’s alive. Those bastards... I’ll get her out, I swear. You took a risk—that means a lot. *He grips your shoulder, eyes burning with resolve.* I’ll find a way. If I need you, I know who to call.'>> <div class="btn padding-top"><<button "Continue" "Underground_Fight_Gym">> <<set $MarcusStoryProgress = 2>> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $canShowStatsBtn = false>> <<set $gameSettings.allowSaves = false>> <<run $player.characterEvents.registerEvent($player.info.id, "MarcusQuest3", 1)>> <<if $player.characterEvents.isEventRegistered($player.info.id, "MarcusFem") == false>> <<set _marcusBell = "Media//Characters//QuestChars//UFG//Marcus Bell_M.jpg">> <<else>> <<set _marcusBell = "Media//Characters//QuestChars//UFG//Marcus Bell_F.jpg">> <</if>> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "Damn, good to see you. I scraped together some cash—fights from the other night, plus side gigs. Went to buy Tiffany out this morning, but those bastards jacked up the debt again: \"Interest spiked, man.\" They’re not letting her go, the pricks. Enough’s enough—time to hit their hideout. I got Clay and Tess on board. You in? Together, we’ll tear ‘em apart.">> <div class="btn padding-top"><<button "Hell yeah, I’m in" "Marcus_Quest3_Agree">><</button>></div> <div class="btn padding-top"><<button "For your sister—count me in" "Marcus_Quest3_Agree">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if $player.characterEvents.isEventRegistered($player.info.id, "MarcusFem") == false>> <<set _marcusBell = "Media//Characters//QuestChars//UFG//Marcus Bell_M.jpg">> <<else>> <<set _marcusBell = "Media//Characters//QuestChars//UFG//Marcus Bell_F.jpg">> <</if>> <<Chat $player 'Alright, let’s go. What happened after the kidnapping?'>> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "Come on, the brothel’s on the outskirts. After prison, I got out—pissed off, broken. The gang already had Tiffany, forced her to… work for them. I tried to get her back—barged in, but they surrounded me, beat me bloody, nearly killed me. They said, \"Debt’s on interest, she’s ours forever.\" I barely got out. Then I met Grant—he saw me in the gym, half-dead. Trained me for fights: \"Earn it clean, kid, and save her.\" I grinded, saved up, got stronger. Now’s our shot. With you, Clay, and Tess… we’ll get her out.">> <<Chat $player 'You’ve changed. We’ll do this.'>> <div class="btn padding-top"><<button "Continue" "Marcus_Quest3_Brothel">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/Other/UFG/gang_House.jpg">> <<set _marcusBell = "Media//Characters//QuestChars//UFG//Marcus Bell_M.jpg">> <<set _clayHarper = "Media//Characters//QuestChars//UFG//Clay Harper.jpg">> <<set _tessCarter = "Media//Characters//QuestChars//UFG//Tess Carter.jpg">> <<ChatMessage "At the brothel—a dark building, guards at the door. Clay and Tess wait, all in dark clothes, faces grim. Marcus lays out the plan.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "Alright, listen up: you and Clay go in hard through the front, distract the guards. Tess and I hit the back through a window, strike from behind, grab Tiffany. Ready?">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "Hell yeah, let’s wreck these assholes.">> <<ChatWithoutNPC 'Tess Carter' _tessCarter "For my sister—anything.">> <div class="btn padding-top"><<button "Continue" "Marcus_Quest3_Front">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/Other/UFG/gang_house_interier.jpg">> <<set _clayHarper = "Media//Characters//QuestChars//UFG//Clay Harper.jpg">> <<ChatMessage "Marcus and Tess slip around the building, entering through a window. You and Clay bust through the front door—inside, a group of thugs *3-4 big guys* spot you, grabbing weapons.">> <<set _thug1 = "Media//Characters//QuestChars//UFG//gang3.jpg">> <<ChatWithoutNPC 'Thug 1' _thug1 "Who the hell are you? Get out, or we’ll rip you apart!">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "This is for Tiffany, you bastards!">> <<include "CharactersData">> <<run _frontThug = CreateCharacter({isPlayer:false, characterWork:"Thug", gender:"Male", sexualPreference:"Bi", clothesPreference:"men", firstName:"Thug", lastName:"", skin:'White', age:30, defense:5, agility:5, strength:5, isQuestCharacter:true, questCharID:19, currentQuestID:0, currentCharImg:"Media\\Characters\\QuestChars\\UFG\\gang3.jpg"}, true)>> <<unset $maleNames $femaleNames $surnames>> <<set $indexNPC = $Characters.indexOf(_frontThug)>> <<set $interactionNpc = $Characters[$indexNPC]>> <<set _battleSetControls = {attack: true, seduce: false, items: false, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls 'Marcus_Quest3_Front_Win' 'Marcus_Quest3_Front_Lose'>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<DeleteCharacter $interactionNpc>> <<set _clayHarper = "Media//Characters//QuestChars//UFG//Clay Harper.jpg">> <<ChatMessage "The thug’s down, you help Clay finish the others.">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "Nice work! Split up—I’m heading upstairs, you go to Tiffany’s room.">> <div class="btn padding-top"><<button "Continue" "Marcus_Quest3_Corridor">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<DeleteCharacter $interactionNpc>> <<set _clayHarper = "Media//Characters//QuestChars//UFG//Clay Harper.jpg">> <<ChatMessage "The thug floors you, but Clay jumps in, knocking him out with a punch to the jaw.">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "Yo, get up! No time to lie around. You good? These guys are tough, but we’re tougher. Split up—I’m going upstairs, you find Tiffany.">> <div class="btn padding-top"><<button "Continue" "Marcus_Quest3_Corridor">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/Other/UFG/gang_house_interier.jpg">> <<set _marcusBell = "Media//Characters//QuestChars//UFG//Marcus Bell_M.jpg">> <<set _thug2 = "Media//Characters//QuestChars//UFG//gang3.jpg">> <<ChatMessage "Clay heads upstairs, you move down the corridor toward Tiffany’s room. You hear a commotion: thugs have pinned Marcus to the wall.">> <<ChatWithoutNPC 'Thug with syringe' _thug2 "Hold him! Inject this crap—turn him into a chick like his sister!">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "Let me go, you bastards! This is for Tiffany!">> <<ChatWithoutNPC 'Thug with syringe' _thug2 "This’ll make you a girl in seconds—experimental drug, ha!">> <div class="btn padding-top"><<button "Wait and don’t attack" "Marcus_Quest3_Wait">><</button>></div> <div class="btn padding-top"><<button "Jump in" "Marcus_Quest3_JumpIn_Fight">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _marcusBellF = "Media//Characters//QuestChars//UFG//Marcus Bell_F.jpg">> <<run $player.characterEvents.registerEvent($player.info.id, "MarcusFem", 1)>> <<ChatMessage "The thugs inject Marcus with the drug. He screams, his body changing: muscles fade, breasts swell, his voice turns soft and feminine, hair cascades in long waves. Now Marcus is a woman, shaken but alive, her eyes a mix of fear and determination. Clay and Tess approach from behind *they’ve freed Tiffany from the back*.">> <<set _clayHarper = "Media//Characters//QuestChars//UFG//Clay Harper.jpg">> <<set _tessCarter = "Media//Characters//QuestChars//UFG//Tess Carter.jpg">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "What the… Marcus?!">> <<ChatWithoutNPC 'Tess Carter' _tessCarter "Let’s hit the room—help them!">> <div class="btn padding-top"><<button "Continue" "Marcus_Quest3_Wait_Fight">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/Other/UFG/gang_house_tiffany_room.jpg">> <<include "CharactersData">> <<run _waitThug = CreateCharacter({isPlayer:false, characterWork:"Thug", gender:"Male", sexualPreference:"Bi", clothesPreference:"men", firstName:"Thug", lastName:"", skin:'White', age:30, defense:5, agility:5, strength:5, isQuestCharacter:true, questCharID:20, currentQuestID:0, currentCharImg:"Media\\Characters\\QuestChars\\UFG\\gang3.jpg"}, true)>> <<unset $maleNames $femaleNames $surnames>> <<set $indexNPC = $Characters.indexOf(_waitThug)>> <<set $interactionNpc = $Characters[$indexNPC]>> <<set _battleSetControls = {attack: true, seduce: false, items: false, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls 'Marcus_Quest3_Wait_Fight_Win' 'Marcus_Quest3_Wait_Fight_Lose'>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<DeleteCharacter $interactionNpc>> <<set _tiffanyImg = "Media//Characters//QuestChars//UFG//Tiffany.jpg">> <<set _marcusBellF = "Media//Characters//QuestChars//UFG//Marcus Bell_F.jpg">> <<ChatMessage "The thugs are down, Tiffany’s free, and she hugs Marcus *now in female form*.">> <<ChatWithoutNPC 'Tiffany' _tiffanyImg "Brother… what did they do to you?">> <<ChatWithoutNPC 'Marcus Bell' _marcusBellF "Damn… I’m… a woman? But… Tiffany’s safe, that’s what matters. Thank you all. Let’s get outta here.">> <div class="btn padding-top"><<button "Continue" "Marcus_Quest3_Wait_MarcusPlace">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<DeleteCharacter $interactionNpc>> <<set _tiffanyImg = "Media//Characters//QuestChars//UFG//Tiffany.jpg">> <<set _clayHarper = "Media//Characters//QuestChars//UFG//Clay Harper.jpg">> <<set _tessCarter = "Media//Characters//QuestChars//UFG//Tess Carter.jpg">> <<ChatMessage "You’re knocked down, but Tess and Clay cover you, taking out the rest. The thugs are down, Tiffany’s free, and she hugs Marcus *now in female form*.">> <<ChatWithoutNPC 'Tiffany' _tiffanyImg "Brother… what did they do to you?">> <<ChatWithoutNPC 'Marcus Bell' _marcusBellF "Damn… I’m… a woman? But… Tiffany’s safe, that’s what matters. Thank you all. Let’s get outta here.">> <div class="btn padding-top"><<button "Continue" "Marcus_Quest3_Wait_MarcusPlace">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _marcusBellF = "Media//Characters//QuestChars//UFG//Marcus Bell_F.jpg">> <<ChatMessage "Silence fills the house, curtains sway in a light breeze, the air tinged with the sweet musk of her new perfume. Marcus *female* invites you inside, her new body—slender, with rounded hips and full breasts—radiating allure. She steps closer, her eyes gleaming with curiosity and desire.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBellF "After everything… Grant saved me, training changed me. Now this body… I feel so alive. I want you, I want you to take me. Undress me, make me yours…">> <<if $player.gender() == 'Male'>> <<ChatMessage "The room glows with dim lamplight, the bed creaking under your weight. Marcus unbuttons her blouse, revealing perky breasts, her nipples hard. She pushes you back onto the bed, straddling your hips, her wet folds hovering teasingly above your throbbing cock.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBellF "Take me… I need you inside me.">> <<Video "Media\\Sex\\Quest\\FightClub\\Marcus\\Quest3\\sex_f_w.mp4">> <<ChatMessage "You shed your clothes, your cock throbbing, as she lowers herself onto you slowly, savoring the stretch. Her moans are a symphony of desire, her hands pressing against your chest as she begins to ride you deeper.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBellF "Harder… fill me up!">> <<ChatMessage "Her movements quicken, bouncing with increasing intensity, her nails raking your chest, and an orgasm crashes over you both, her cries blending with your groan.">> <<elseif $player.gender() == 'Shemale'>> <<ChatMessage "Marcus’s gaze burns with hunger as she pulls you toward the bed. Her body—curvy, with soft hips and full breasts—beckons.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBellF "I want you… take me.">> <<Video "Media\\Sex\\Quest\\FightClub\\Marcus\\Quest3\\sex_f_s.mp4">> <<ChatMessage "She turns around, getting on all fours, her ass raised invitingly to reveal her slick, inviting pussy. Your cock is hard, and you enter her from behind, her tightness gripping you. Her moans grow louder, her body arching back against you.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBellF "Oh, damn, deeper… yes!">> <<ChatMessage "Your thrusts intensify, her breasts swaying beneath her, her hands clutching the sheets. The orgasm hits like a tidal wave, her cry echoing as you both shudder in ecstasy.">> <<elseif $player.gender() == 'Female'>> <<ChatMessage "The room hums with warmth, Marcus pulling you into a hungry kiss, her lips soft and urgent. She strips off her clothes, revealing smooth skin, firm breasts, and a glistening slit between her thighs.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBellF "I want you… touch me.">> <<Video "Media\\Sex\\Quest\\FightClub\\Marcus\\Quest3\\69.mp4">> <<ChatMessage "She lies back on the bed. You slide your fingers along her body, teasing her nipples, then dipping lower to stroke her clit in slow, deliberate circles.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBellF "Yes, like that… don’t stop!">> <<ChatMessage "Your lips explore her neck, her breasts, as your fingers work her, her body trembling. She climaxes with a shuddering cry, her pleasure sparking your own as you melt into each other.">> <</if>> <<ChatWithoutNPC 'Marcus Bell' _marcusBellF "Whew… that was… so damn hot. Now I’ll save Tiffany for real.">> <<ChatMessage "Marcus’s backstory revealed, quest completed with his transformation and intimate moment.">> <div class="btn padding-top"><<button "Continue" "Underground_Fight_Gym">><<set $MarcusStoryProgress = 3>><<set $canShowStatsBtn = true>><<set $gameSettings.allowSaves = true>> <</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/Other/UFG/gang_house_tiffany_room.jpg">> <<include "CharactersData">> <<run _jumpThug = CreateCharacter({isPlayer:false, characterWork:"Thug", gender:"Male", sexualPreference:"Bi", clothesPreference:"men", firstName:"Thug", lastName:"", skin:'White', age:30, defense:5, agility:5, strength:5, isQuestCharacter:true, questCharID:21, currentQuestID:0, currentCharImg:"Media\\Characters\\QuestChars\\UFG\\gang3.jpg"}, true)>> <<unset $maleNames $femaleNames $surnames>> <<set $indexNPC = $Characters.indexOf(_jumpThug)>> <<set $interactionNpc = $Characters[$indexNPC]>> <<set _battleSetControls = {attack: true, seduce: false, items: false, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls 'Marcus_Quest3_JumpIn_Win' 'Marcus_Quest3_JumpIn_Lose'>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<DeleteCharacter $interactionNpc>> <<set _marcusBell = "Media//Characters//QuestChars//UFG//Marcus Bell_M.jpg">> <<set _clayHarper = "Media//Characters//QuestChars//UFG//Clay Harper.jpg">> <<set _tessCarter = "Media//Characters//QuestChars//UFG//Tess Carter.jpg">> <<set _tiffanyImg = "Media//Characters//QuestChars//UFG//Tiffany.jpg">> <<ChatMessage "The thugs are down, Marcus is free, no one’s transformed. Tess and Clay arrive with Tiffany, finishing off any stragglers.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "You saved me! After the gang’s beating, Grant’s training… you’re a hero. Tiffany’s free. Thank you all—family’s safe.">> <<ChatWithoutNPC 'Tiffany' _tiffanyImg "Brother… you’re all incredible.">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "Job’s done.">> <<ChatWithoutNPC 'Tess Carter' _tessCarter "I’m proud of us.">> <<ChatMessage "Marcus’s backstory revealed, quest completed without transformations or intimate moments.">> <div class="btn padding-top"><<button "Continue" "Underground_Fight_Gym">><<set $MarcusStoryProgress = 3>><<set $canShowStatsBtn = true>><<set $gameSettings.allowSaves = true>> <</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<DeleteCharacter $interactionNpc>> <<if $player.gender() == 'Male'>> <<goto "Marcus_Quest3_JumpIn_Lose_Male">> <<elseif $player.gender() == 'Shemale'>> <<goto "Marcus_Quest3_JumpIn_Lose_Trans">> <<elseif $player.gender() == 'Female'>> <<goto "Marcus_Quest3_JumpIn_Lose_Female">> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<run $player.characterEvents.registerEvent($player.info.id, "PlayerFem", 1)>> <<set _marcusBell = "Media//Characters//QuestChars//UFG//Marcus Bell_M.jpg">> <<set _tessCarter = "Media//Characters//QuestChars//UFG//Tess Carter.jpg">> <<set _clayHarper = "Media//Characters//QuestChars//UFG//Clay Harper.jpg">> <<set _tiffanyImg = "Media//Characters//QuestChars//UFG//Tiffany.jpg">> <<ChatMessage "The thugs overpower you, injecting the drug: your body transforms—breasts swell, hips round out, your voice turns soft and feminine. Shock hits, but Tess and Clay *with Tiffany* arrive, finishing off the thugs.">> <<run $player.body.face.value = 6>> <<run $player.body.penisSize.value = 0>> <<run $player.body.vaginaSize.value = 1>> <<run $player.body.breastSize.value = 4>> <<run $player.body.buttSize.value = 4>> <<run $player.info.clothesPreference = "women">> <<run $player.AddCloth(true)>> <<ChatWithoutNPC 'Tess Carter' _tessCarter "You… turned into a woman?">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "Hang in there! We took ‘em out.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "Damn, thank you… you risked everything. Tiffany’s free. Come to my place—let’s celebrate.">> <div class="btn padding-top"><<button "Continue" "Marcus_Quest3_JumpIn_MarcusPlace_Male">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _marcusBell = "Media//Characters//QuestChars//UFG//Marcus Bell_M.jpg">> <<ChatMessage "His apartment smells of whiskey and leather, dim light casting shadows. Marcus eyes your new body—slender, with enticing curves—and his gaze ignites.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "After Grant, the fights… I’ve changed. And you… damn, you’re gorgeous now. Lie down, baby, I’m gonna make you feel good.">> <<ChatMessage "Marcus pulls you to the bed, his hands tearing off your clothes, exposing your new breasts and wet folds. He looms over you, his cock hard, eyes blazing.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "You’re mine.">> <<Video "Media\\Sex\\Quest\\FightClub\\Marcus\\Quest3\\sex_f_b.mp4">> <<ChatMessage "He enters you slowly, teasingly. His thrusts deepen, rhythmic, your moans filling the room.">> <<Chat $player "Oh, Marcus… deeper… fill me!">> <<ChatMessage "His hands pin your wrists, the bed creaking as he drives into you. The orgasm crashes over you, your cries blending with his hoarse groan.">> <<ChatMessage "Marcus’s backstory revealed, quest completed with your transformation and intimate moment.">> <div class="btn padding-top"><<button "Continue" "Underground_Fight_Gym">><<set $MarcusStoryProgress = 3>><<set $canShowStatsBtn = true>><<set $gameSettings.allowSaves = true>> <</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _marcusBell = "Media//Characters//QuestChars//UFG//Marcus Bell_M.jpg">> <<set _tessCarter = "Media//Characters//QuestChars//UFG//Tess Carter.jpg">> <<set _clayHarper = "Media//Characters//QuestChars//UFG//Clay Harper.jpg">> <<set _tiffanyImg = "Media//Characters//QuestChars//UFG//Tiffany.jpg">> <<ChatMessage "The thugs overpower you but don’t inject the drug, seeing your unique body. Instead, they beat you harder, but Tess and Clay *with Tiffany* arrive, finishing them off.">> <<ChatWithoutNPC 'Tess Carter' _tessCarter "You okay? Those bastards…">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "Hang in there! We got ‘em.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "Damn, thank you… you risked it all. Tiffany’s free. Come to my place—let’s celebrate.">> <div class="btn padding-top"><<button "Continue" "Marcus_Quest3_JumpIn_MarcusPlace_Trans">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _marcusBell = "Media//Characters//QuestChars//UFG//Marcus Bell_M.jpg">> <<ChatMessage "His apartment is a warm haven, smelling of whiskey and leather. Marcus steps closer, his eyes tracing your body with admiration.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "After Grant, the fights… I’ve changed. And you… damn, you’re hot. Lie down, I wanna take you.">> <<ChatMessage "Marcus pushes you onto the bed, his hands ripping off your clothes. He looms over you, his cock hard, ready.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "You’re mine.">> <<Video "Media\\Sex\\Quest\\FightClub\\Marcus\\Quest3\\sex_s_b.mp4">> <<ChatMessage "He enters you slowly, stretching you with deliberate care. His thrusts grow stronger, your moans echoing.">> <<Chat $player "Oh, damn, deeper… finish in me!">> <<ChatMessage "His hands grip your hips, the bed shaking as he pounds into you. The orgasm hits hard, his cry blending with yours as you both collapse in a sweaty, blissful haze.">> <<ChatMessage "Marcus’s backstory revealed, quest completed without your transformation, with intimate moment.">> <div class="btn padding-top"><<button "Continue" "Underground_Fight_Gym">><<set $MarcusStoryProgress = 3>><<set $canShowStatsBtn = true>><<set $gameSettings.allowSaves = true>> <</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _marcusBell = "Media//Characters//QuestChars//UFG//Marcus Bell_M.jpg">> <<set _tessCarter = "Media//Characters//QuestChars//UFG//Tess Carter.jpg">> <<set _clayHarper = "Media//Characters//QuestChars//UFG//Clay Harper.jpg">> <<set _tiffanyImg = "Media//Characters//QuestChars//UFG//Tiffany.jpg">> <<ChatMessage "The thugs overpower you but don’t inject the drug, as you’re already a woman. Instead, they beat you harder, but Tess and Clay *with Tiffany* arrive, finishing them off.">> <<ChatWithoutNPC 'Tess Carter' _tessCarter "You okay? Those bastards…">> <<ChatWithoutNPC 'Clay Harper' _clayHarper "Hang in there! We got ‘em.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "Damn, thank you… you risked everything. Tiffany’s free. Come to my place—let’s celebrate.">> <div class="btn padding-top"><<button "Continue" "Marcus_Quest3_JumpIn_MarcusPlace_Female">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _marcusBell = "Media//Characters//QuestChars//UFG//Marcus Bell_M.jpg">> <<ChatMessage "His apartment glows with warmth, lamplight casting a soft hue. Marcus looks at you with hunger, his hands reaching for you.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "After Grant, the fights… I’ve changed. And you… damn, you’re hot. Lie down, baby, I want you.">> <<ChatMessage "Marcus pulls you to the bed, his fingers stripping your clothes, exposing your skin. He hovers over you, his cock hard, eyes burning with desire.">> <<ChatWithoutNPC 'Marcus Bell' _marcusBell "You’re mine.">> <<Video "Media\\Sex\\Quest\\FightClub\\Marcus\\Quest3\\sex_f_b.mp4">> <<ChatMessage "He slides into you slowly, teasingly. His thrusts deepen, rhythmic, your moans filling the air.">> <<Chat $player "Marcus… deeper… finish in me!">> <<ChatMessage "His hands grip your wrists, the bed creaking as he drives into you. The orgasm surges, your cries blending with his rough groan.">> <<ChatMessage "Marcus’s backstory revealed, quest completed without your transformation, with intimate moment.">> <div class="btn padding-top"><<button "Continue" "Underground_Fight_Gym">><<set $MarcusStoryProgress = 3>><<set $canShowStatsBtn = true>><<set $gameSettings.allowSaves = true>> <</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if $player.characterEvents.isEventRegistered($player.info.id, "MarcusFem") == false>> <<set _marcusBell = "Media//Characters//QuestChars//UFG//Marcus Bell_M.jpg">> <<else>> <<set _marcusBell = "Media//Characters//QuestChars//UFG//Marcus Bell_F.jpg">> <</if>> <<DrawImg _marcusBell>> <<set _strAtMax = $player.attributes.strength.value >= $player.attributes.strength.max>> <<if $player.characterEvents.isEventRegistered($player.info.id, "GetClayApproval") == false>> <<ChatWithoutNPC 'Marcus Bell' _marcusBell 'Get permission from Clay first, then come on back.'>> <<elseif $MarcusStoryProgress == 0>> <<ChatWithoutNPC 'Marcus Bell' _marcusBell 'Hey, wanna fight?'>> <div class="btn padding-top"><<button "Yes, I'm ready" "MarcusStartQuestFight">><</button>></div> <<elseif $MarcusStoryProgress == 1>> <<goto "Marcus_Quest2_Start">> <<elseif $MarcusStoryProgress == 2>> <<goto "Marcus_Quest3_Start">> <<else>> <<if _strAtMax>> <<ChatWithoutNPC 'Marcus Bell' _marcusBell 'You\'re as strong as you\'re gonna get with me.'>> <div class="btn padding-top non-interacting"><<button "Strength (MAX)">><</button>></div> <<else>> <<ChatWithoutNPC 'Marcus Bell' _marcusBell 'Need to bulk up? I can train your strength for $250.'>> <div class="btn padding-top"><<button "Train my strength ($250)" "Marcus_TrainStrength">><</button>></div> <</if>> <</if>> <div class="btn padding-top"><<button "Continue" "Underground_Fight_Gym">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if $player.characterEvents.isEventRegistered($player.info.id, "MarcusFem") == false>> <<set _marcusBell = "Media//Characters//QuestChars//UFG//Marcus Bell_M.jpg">> <<else>> <<set _marcusBell = "Media//Characters//QuestChars//UFG//Marcus Bell_F.jpg">> <</if>> <<if $player.money < 250>> <<ChatWithoutNPC 'Marcus Bell' _marcusBell 'You need $250 to train.'>> <div class="btn padding-top"><<button "Back" "Marcus_Checker">><</button>></div> <<else>> <<set $player.money -= 250>> <<SpendEnergy $player 20>> <<SpendTimeWithoutUpdate 30>> <<set _gain = Random(10,20) + $player.attributes.intelligence.value>> <<SetCharProgression $player 'strength' _gain true>> <<ChatWithoutNPC 'Marcus Bell' _marcusBell 'Feel that power building? Keep at it.'>> <div class="btn padding-top"><<button "Back" "Marcus_Checker">><</button>></div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "CharactersData">> <<run _marcusCharacter = CreateCharacter({ isPlayer: false, characterWork: "Quest", gender: "Male", sexualPreference: "Bi", clothesPreference: "men", firstName: "Marcus", lastName: "Bell", skin: 'White', age: 30, defense: 5, agility: 2, strength: 6, isQuestCharacter: true, questCharID: 17, currentQuestID: 0, currentCharImg: "Media\\Characters\\QuestChars\\UFG\\Marcus Bell_M.jpg", }, true)>> <<unset $maleNames $femaleNames $surnames>> <<run $player.characterEvents.registerEvent(_marcusCharacter.info.id, "knows you", 1)>> <<set $indexNPC = $Characters.indexOf(_marcusCharacter)>> <<set $interactionNpc = $Characters[$indexNPC]>> <<set _battleSetControls = {attack: true, seduce: false, items: false, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls 'MarcusQuestFightWin' 'MarcusQuestFightLose'>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $marcusFightWon = true>> <div class="btn padding-top"><<button "Continue" "Marcus_Quest1">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $marcusFightWon = false>> <div class="btn padding-top"><<button "Continue" "Marcus_Quest1">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $canShowStatsBtn = false>> <<set $gameSettings.allowSaves = false>> <<run $player.characterEvents.registerEvent($player.info.id, "TessQuest1", 1)>> <<Chat $interactionNpc 'Phew, good fight. You really made me work up a sweat. Listen, tonight I\'m cleaning up here— that\'s my rent to Grant for letting me crash in the gym. Without this, I\'d still be out on the streets. Wanna help? It\'ll go faster with two of us, and… we can chat.'>> <<Chat $player 'Alright, I\'ll come by tonight. Why do you live here anyway? Sounds like you\'ve got your own story.'>> <<Chat $interactionNpc 'Story? I\'ll spill it tonight while we clean. I don\'t like chatting on an empty stomach… or in the ring. See you after sunset.'>> <<ChatMessage 'Evening: The gym\'s empty, just the dim light from the lamps and the smell of cleaning supplies. Tess is already there, bucket and mop in hand. You join in, starting to scrub the floors and wipe down the mats. The conversation flows naturally as you work side by side.'>> <<Chat $interactionNpc 'Thanks for showing up. Without help, this drags on forever. You know, my family was a total mess. Dad was an alcoholic, beat the crap out of Mom and me all the time. From when I was a kid, I got used to bruises—he\'d get wasted and flip out on us over any little thing. Mom kept saying it would pass, but it never did. I learned to hide, but inside, I was boiling with rage and fear.'>> <<Chat $player 'Sounds rough. How\'d you deal with it?'>> <<Chat $interactionNpc 'Survived however I could. School during the day, hiding under the bed at night. But enough of the downer stuff—let\'s hustle with these mats. You\'re holding up pretty well after our fight.'>> <<ChatMessage 'You both reach for the same rag, and Tess slips on the wet floor, falling right onto you. Your bodies press together—her chest against yours, breaths mingling, eyes locking up close. The vibe heats up from the accidental contact.'>> <<Chat $interactionNpc '(Blushing, but not pulling away right away) Oops, damn… sorry. The floor\'s slippery as hell. You okay?'>> <<Chat $player 'Falling on me—is that a new cleaning technique? After that… my body\'s buzzing. Maybe we relieve some tension?'>> <div class="btn padding-top"><<button "Joke" "Tess_Quest1_Joke">><</button>></div> <div class="btn padding-top"><<button "Flirt" "Tess_Quest1_Flirt">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $player 'Ha, if you fall on everyone like that, the gym\'ll be spotless in five minutes. Get up, or Grant\'ll think we\'re slacking off.'>> <<Chat $interactionNpc '(Laughs, standing up) You\'re right, we\'re a couple of lazies. Alright, let\'s wrap this up and head out. Thanks for the help—and for listening to my story.'>> <div class="btn padding-top"><<button "Continue" "Underground_Fight_Gym">> <<if $player.characterEvents.isEventRegistered($player.info.id, "GetTessApproval") == false>> <<run $player.characterEvents.registerEvent($player.info.id, "GetTessApproval", 1)>> <<set $ApprovalReceived += 1>> <<DeleteCharacter $interactionNpc>> <</if>> <<set $tessStoryProgress = 1>> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Chat $interactionNpc '(Breath quickening, not pulling away) Tension? After the fight and this… yeah, it\'s through the roof. But it depends on who won in the ring.'>> <<if $tessFightWon == true>> <<Chat $interactionNpc 'You took me down during the day… now it\'s my turn to take care of you. Sit on the mat… let me handle that with my hand.'>> <<if $player.gender() == 'Male' || $player.gender() == 'Shemale'>> <<Video "Media\\Sex\\Quest\\FightClub\\Tess\\Quest1\\blowjob_m_s.mp4">> <<ChatMessage 'The dim overhead lights cast flickering shadows across the sweat-slicked gym mats as Tess straddles your lap, her calloused fighter\'s hands already working their way beneath the waistband of your shorts. The scent of bleach and lemon cleaner mixes with the musky aroma of your combined exertion from earlier, creating an intoxicating atmosphere thick with sexual tension.'>> <<ChatMessage 'Her breath comes in quick, shallow bursts against your neck as she frees your rapidly hardening cock, her fingers wrapping around the thick base with practiced ease despite the roughness of her knuckles. "Fuck… knew you\'d be packing," she murmurs, thumb swiping across the leaking tip to gather precum before spreading it down your length in slow, deliberate strokes.'>> <<ChatMessage 'She responds by tightening her grip, using her free hand to pin your thigh to the mat as she leans closer, her sports bra barely containing the swell of her breasts as they brush against your chest.'>> <<ChatMessage '"Gotta stay still for me, champ," she teases, her tongue darting out to wet her lips as she adjusts her rhythm, twisting her wrist on the upstroke in a way that makes your balls tighten. The sound of skin sliding against slick flesh echoes slightly in the empty gym, punctuated by her occasional soft grunts and the distant dripping of a leaky shower head down the hall.'>> <<ChatMessage 'Tess\'s tempo increases relentlessly, her fist pistoning along your throbbing length with the same disciplined rhythm she uses in the ring - controlled violence disguised as grace. Her breathing grows ragged as she watches your abdomen tense, her dark eyes drinking in every twitch and shudder running through your body.'>> <<ChatMessage '"That\'s it… fucking take it," she growls through clenched teeth, her thumb now circling the swollen crown with bruising pressure, smearing sticky strands of precum across the sensitive slit. The muscles in her forearm flex visibly as she applies just enough friction to border on pain, her other hand suddenly grabbing a handful of your hair to yank your head back against the mat.'>> <<ChatMessage 'Your climax hits like a sucker punch to the gut - a white-hot detonation that has ropes of thick cum erupting in pulsing waves across Tess\'s scarred knuckles and toned stomach. She doesn\'t let up for a second, milking every last drop from you with ruthless efficiency, her grip tightening as she wrings out aftershocks that leave your thighs trembling.'>> <<Chat $interactionNpc 'Not bad workout.'>> <<elseif $player.gender() == 'Female'>> <<Video "Media\\Sex\\Quest\\FightClub\\Tess\\Quest1\\fing_f.mp4">> <<ChatMessage 'Tess finally releases her vise-like hold only when you\'re completely spent, lazily tracing patterns in the cooling mess on her abdomen with two fingers before bringing them to her mouth. "Tastes like victory," she purrs, licking her lips with deliberate slowness as she rises to her feet, leaving you sprawled and breathless on the still-damp mat.'>> <<ChatMessage 'The humid air of the empty gym locker room hangs thick with the scent of sweat, disinfectant, and something far muskier—an undeniable arousal lingering between you and Tess as she pins you down against the wrestling mat. Her calloused fingers, hardened from years of street fighting and survival, trace teasing circles along your inner thigh, her breath hot against your neck as she leans in closer. The flickering fluorescent light above casts erratic shadows across her toned torso, still glistening from the earlier sparring session. Her tank top clings to her damp skin, the fabric stretched taut over the swell of her firm breasts with each ragged inhale.'>> <<ChatMessage '"Fuck… you really did a number on me today," she murmurs, her free hand sliding up to palm her own nipple through the thin material, "but fair\'s fair. Winner takes all." Her knee presses firmly between your legs, applying just enough pressure to make you arch into her touch as her fingertips finally brush against your soaked panties. The damp fabric clings obscenely to your folds, and she lets out a low chuckle at how easily your body betrays your hunger for her.'>> <<ChatMessage 'With deliberate slowness, she hooks her thumbs into the waistband of your shorts and peels them down your thighs, the sound of elastic snapping against skin echoing in the tiled room. Her nostrils flare as the heady scent of your arousal hits her—a mix of salt and sweet that makes her tongue dart out to wet her lips. "Christ, you\'re already dripping,"'>> <<ChatMessage 'Tess growls, dragging her middle finger through your slick folds with agonizing precision, collecting your essence before bringing it to her mouth. She sucks the digit clean with a filthy, exaggerated pop of her lips, amber eyes darkening as she tastes you. "Mmm… fucking addictive." Her voice drops to a husky whisper as she replaces her finger with two, spreading your glistening lips apart to expose your swollen clit to the humid air.'>> <<ChatMessage 'The first slow circle she traces around that sensitive bud wrings a gasp from your throat—her callouses catching deliciously against your tender flesh. She watches your face intently, drinking in every twitch of your brows, every bitten lip as she teases you with featherlight strokes just shy of where you need her most. "Look at you," she pants, rolling her hips unconsciously against the mat beneath her, "all worked up from just my fingers. Bet you came imagining this when you pinned me earlier, huh?"'>> <<ChatMessage 'Without warning, she curls those skilled fingers deep inside you, the heel of her palm grinding against your clit as she pistons into your tightening core. The squelch of your arousal is obscenely loud in the empty locker room, mixing with the slap of skin on skin as she fucks you harder, faster—her own thighs squeezing together at the sounds you\'re making. A sheen of sweat breaks out across her collarbones as she fights to keep her rhythm steady, her biceps flexing with each punishing thrust.'>> <<ChatMessage '"That\'s it—fucking take it," Tess snarls, her breath coming in ragged bursts as she scissors her fingers inside you, stretching your walls with every brutal snap of her wrist. The muscles in her forearm cord with tension, veins standing out against her sun-kissed skin as she drives you relentlessly toward the edge. Her thumb finds your clit again, rubbing tight, frantic circles that send electric jolts straight to your trembling thighs.'>> <<ChatMessage 'She leans down suddenly, capturing your moan with a searing kiss—all teeth and dominance—as her tongue mirrors the filthy motions of her fingers. You can taste yourself on her lips, bitter and intoxicating, as she swallows every broken whimper you offer. The bench beneath you creaks dangerously with the force of her thrusts, the metal legs scraping against tile in time with your escalating gasps.'>> <<ChatMessage 'Tess doesn\'t let up for a second—her fingers crook just right, hitting that spongy spot inside you with military precision as her thumb grinds mercilessly against your pulsating clit. The orgasm crashes into you like a freight train, your back bowing off the mat as a scream tears from your throat. She drinks it in greedily, watching your eyelids flutter wildly, your nails carving half-moons into her shoulders as you gush around her relentless fingers.'>> <<ChatMessage '"Fuck yes, look at you," she rasps, riding out your convulsions with slow, deep pumps—milking every last spasm from your oversensitive cunt. "So fucking pretty when you come…" Her own hips jerk involuntarily against your thigh, her denim-clad pussy leaving a dark streak of her arousal on your skin. She\'s achingly hard, her neglected clit throbbing in time with your aftershocks, but she makes no move to relieve herself—too focused on lapping up your juices as they drip down her knuckles.'>> <<Chat $interactionNpc 'Not bad workout.'>> <</if>> <<else>> <<ChatMessage 'The damp, humid air of the gym hangs thick with the scent of sweat, bleach, and something far more primal as Tess pins you beneath her, her toned thighs straddling your waist with practiced ease. Her breath comes in short, heated bursts against your neck—a mix of exertion from the earlier fight and the sudden, undeniable electricity between you. The dim overhead lights cast flickering shadows across her flushed face, emphasizing the predatory gleam in her dark eyes as she leans down, lips brushing the shell of your ear.'>> <<Chat $interactionNpc 'You lost to me today… fair and square. That means you owe me.'>> <<ChatMessage 'Her voice is a low purr, laced with challenge and something darker—something hungry. One calloused hand slides down your torso, fingers tracing the divots of your abs before slipping lower, past the waistband of your shorts with deliberate slowness. Her other hand grips your wrist, guiding it toward the soaked fabric between her legs.'>> <<if $player.gender() == 'Female' || $player.gender() == 'Shemale'>> <<Video "Media\\Sex\\Quest\\FightClub\\Tess\\Quest1\\fing_f.mp4">> <<else>> <<Video "Media\\Sex\\Quest\\FightClub\\Tess\\Quest1\\fing_M.mp4">> <</if>> <<ChatMessage 'Beneath your fingertips, the heat radiating from Tess\'s cunt is immediate, even through her leggings. The material clings obscenely to her folds, already damp with more than just sweat. She grinds down against your palm with a throaty chuckle, "Feel that? All day, thinking about our fight… about you. Now fix it."'>> <<ChatMessage 'Her command leaves no room for refusal. Every shift of her hips, every ragged exhale against your skin is a demand—an unspoken threat wrapped in velvet. The gym fades around you; the squeak of sneakers on wet tile, the distant hum of the fridge in the breakroom—none of it matters now.'>> <<ChatMessage 'Tess arches her back with a sharp inhale as your fingers find the slick seam of her leggings, peeling the drenched fabric aside to expose her swollen, glistening pussy. The scent of her arousal floods your senses—musky, sweet, and utterly intoxicating. Her inner thighs tremble against your hips, betraying the tension coiling tight in her core despite her dominant facade.'>> <<ChatMessage '"Fucking—yes," she hisses, nails biting into your shoulder as you drag a fingertip along her dripping slit. The pad of your thumb circles her clit in slow, teasing strokes, drawing out a broken gasp from her throat. Her hips jerk forward, desperate for more friction, but she forces herself still, grinding her teeth. "Don\'t… don\'t you dare rush this. You\'re mine tonight—every last fucking inch of you."'>> <<ChatMessage 'Her words drip with venomous desire, but her body tells another story—the way her cunt pulses around nothing, how her breath hitches when you slide two fingers inside without warning. The walls of her pussy clamp down greedily, sucking you deeper as she lets out a guttural moan. Sweat beads at her temples, her dark hair sticking to her skin as she rides your hand with increasing urgency.'>> <<Chat $interactionNpc 'Not bad workout.'>> <</if>> <div class="btn padding-top"><<button "Continue" "Underground_Fight_Gym">> <<if $player.characterEvents.isEventRegistered($player.info.id, "GetTessApproval") == false>> <<run $player.characterEvents.registerEvent($player.info.id, "GetTessApproval", 1)>> <<set $ApprovalReceived += 1>> <</if>> <<set $tessStoryProgress = 1>> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <<DeleteCharacter $interactionNpc>> <</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground>> <<set $canShowStatsBtn = false>> <<set $gameSettings.allowSaves = false>> <<include "CharactersData">> <<set _tessCarter = "Media//Characters//QuestChars//UFG//Tess Carter.jpg">> <<run $player.characterEvents.registerEvent($player.info.id, "TessQuest2", 1)>> <<ChatMessage "You approach Tess, who's just finished her workout, wiping sweat off with a towel. Her eyes light up with a spark when she sees you, but a fleeting shadow of old pain lingers in them.">> <<ChatWithoutNPC 'Tess Carter' _tessCarter "Hey, good to see you. After workouts, I usually head to the park nearby—it's quiet, helps me unwind and get back to normal. Wanna come with? It'll be nice to walk and talk without all the gym noise.">> <<Chat $player "Alright, let's go. You seem like someone who loves spots like that. Why does the park help?">> <<ChatWithoutNPC 'Tess Carter' _tessCarter "It reminds me of freedom—no walls, no pressure. Come on, I'll tell you on the way. You know, my dad... he didn't just beat us. When I turned 16, I decided to fight back. One time he got wasted again and went after Mom—I stepped between them, yelling, \"Enough!\" But he... damn, he beat me so bad I could barely breathe. Bruises, cracked rib. Ever since, if I see someone like him, terror paralyzes me—my body freezes up like in a nightmare. The cops? They showed up, but wouldn't arrest him: \"Family matter.\" Mom was too scared to press charges, kept saying, \"Don't make it worse.\" I felt trapped, helpless.">> <<Chat $player "That's awful. You're brave for sharing. How'd you get out of it?">> <<ChatWithoutNPC 'Tess Carter' _tessCarter "Survived however I could. But the park... here I breathe easy, forget the fear. With you around—it's even better.">> <div class="btn padding-top"><<button "Continue" "Tess_Quest2_Park">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _tessCarter = "Media//Characters//QuestChars//UFG//Tess Carter.jpg">> <<SetBackground "Media/Locations/City/Park/Park.jpg">> <<ChatMessage "The park buzzes with life under the afternoon sun—lush green paths winding between trees, benches scattered like invitations, birds chirping melodies overhead. You're strolling side by side, Tess's posture loosening up, her steps lighter, but suddenly she stiffens like a coiled spring. A guy struts up—her ex-boyfriend, Dan, sporting a cocky, aggressive smirk. He's clearly buzzed, his eyes burning with ugly spite.">> <<run _dan = CreateCharacter({ isPlayer: false, characterWork: "Tess's ex", gender: "Male", sexualPreference: "Bi", clothesPreference: "men", firstName: "Dan", lastName: "", skin: 'White', age: 30, defense: 3, agility: 2, strength: 5, isQuestCharacter: true, questCharID: 13, currentQuestID: 0, currentCharImg: "Media\\Characters\\QuestChars\\UFG\\Tess_Ex_BF.jpg", }, true)>> <<set $indexNPC = $Characters.indexOf(_dan)>> <<set $interactionNpc = $Characters[$indexNPC]>> <<run $player.characterEvents.registerEvent(_dan.info.id, "knows you", 1)>> <<Chat _dan "Tess? Who's this freak with you? You slumming it again?">> <<if $player.gender() == 'Male'>> <<Chat _dan "Hey, asshole, get lost before I bash your face in. She's mine!">> <<else>> <<Chat _dan "Tess, still such a whore? Who you fucking now?">> <</if>> <<ChatWithoutNPC 'Tess Carter' _tessCarter "*haking visibly, but clenching her fists to steady herself* Back off, Dan. We're done, just leave.">> <<Chat _dan "*Looming closer with a nasty snarl* Shut your mouth, bitch. I decide when I go.">> <div class="btn padding-top"><<button "Fight" >> <<set _battleSetControls = {attack: true, seduce: false, items: false, actions: true}>> <<StartFight $player _dan _battleSetControls 'Tess_Quest2_Win' 'Tess_Quest2_Lose'>> <</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<DeleteCharacter $interactionNpc>> <<set _tessCarter = "Media//Characters//QuestChars//UFG//Tess Carter.jpg">> <<ChatMessage "The ex crumples to the ground with a pathetic thud, spitting curses as he scrambles back, clutching his busted jaw before bolting like a coward. Tess rushes over, her eyes wide and alive with a mix of gratitude and raw adrenaline pumping through her veins. She dabs at the blood on your face with a handkerchief, her trembling fingers lingering, brushing tenderly across your cheek and lips like a spark igniting dry tinder.">> <<ChatWithoutNPC 'Tess Carter' _tessCarter "Damn, you straight-up demolished him... thanks for having my back like that. That asshole's cut from the same cloth as my dad—I keep drawing in the worst. But you? You make me feel unbreakable. And holy shit, after that rush... my whole body's on fire. Wanna duck into those bushes over there, away from prying eyes? Let me show you how grateful I really am—make you explode.">> <div class="btn padding-top"><<button "Play it off as a joke." "Tess_Quest2_Win_Joke">><</button>></div> <div class="btn padding-top"><<button "Agree." "Tess_Quest2_Win_Agree">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _tessCarter = "Media//Characters//QuestChars//UFG//Tess Carter.jpg">> <<Chat $player "Ha, thanks? Coffee next time'll do. Otherwise, people might think we're filming a movie here.">> <<ChatWithoutNPC 'Tess Carter' _tessCarter "*Laughs, her cheeks flushing pink* Alright, coffee it is. You're a total hero. Let's bounce before he slinks back.">> <div class="btn padding-top"><<button "Continue" "Park">><</button>></div> <<set $tessStoryProgress = 2>> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _tessCarter = "Media//Characters//QuestChars//UFG//Tess Carter.jpg">> <<Chat $player "Thank me? Sounds tempting. Lead the way.">> <<ChatMessage "Tess grins wickedly, grabbing your hand and yanking you into the dense bushes, her breath coming in hot, excited bursts against your skin.">> <<ChatWithoutNPC 'Tess Carter' _tessCarter "Fuck, it's so secluded here... strip down and get comfy. I'm gonna worship you with my mouth and hands—slow at first, then deep and filthy, making every inch of you pulse with need. Can you feel how soaked I am just thinking about it?">> <<ChatMessage "She drops low, her voice turning into a husky whisper laced with pure lust as she starts pleasuring you.">> <<ChatWithoutNPC 'Tess Carter' _tessCarter "Mmm, you're throbbing so hard for me... let it build, then unleash—cum hard, quietly, feed me every last drop of your hot, sticky ecstasy...">> <<if $player.gender() == 'Male'>> <<Video "Media\\Sex\\Quest\\FightClub\\Tess\\Quest2\\blowjob_m_s.mp4">> <<ChatMessage "Tess lunges forward hungrily, her hot mouth engulfing your thick cock in one slick slide—sucking with greedy pulls, her tongue dancing wild circles around the shaft, throat contracting as she takes you balls-deep without mercy.">> <<ChatWithoutNPC 'Tess Carter' _tessCarter "Feel that throb? Your veins popping, balls churning out pre-cum like crazy? Ram my skull if you want—own this throat. You're driving me wild, making my pussy drip... blast it down my gullet, drown me in your hot seed like the cum-slut I crave to be for you...">> <<ChatMessage "Bushes sway with the rhythm, her slurps and gags mixing with rustling leaves, vibrations shooting straight to your core. The orgasm slams into you like a freight train, pumping thick ropes of cum that she devours greedily, her eyes locked on yours, wild and satisfied, as she licks her lips clean of your essence.">> <<ChatWithoutNPC 'Tess Carter' _tessCarter "Mmm, goddamn... that hit different. You're my savior, you stud.">> <<elseif $player.gender() == 'Female'>> <<Video "Media\\Sex\\Quest\\FightClub\\Tess\\Quest2\\lick_f.mp4">> <<ChatMessage "Tess shoves you back against rough bark, diving between your thighs with feral hunger—her tongue spearing into your drenched pussy, lapping up your essence while sucking your clit like it's her lifeline, fingers pistoning deep to hammer your sweet spots.">> <<ChatWithoutNPC 'Tess Carter' _tessCarter "Your walls gripping me, juices flooding my face like a storm? Buck wild, smear it all over me—make me your bitch. You're so fucking wet for me... gush for me, drown my tongue in your sweet nectar, let me taste every quiver...">> <<ChatMessage "Foliage whispers secrets as her tongue lashes your core, your body arching in electric spasms, muffled cries piercing the air. Climax roars through you, squirting waves she laps up hungrily, her face glistening as she grins up at you, fingers still teasing your oversensitive folds.">> <<ChatWithoutNPC 'Tess Carter' _tessCarter "Mmm, fuck... that was pure fire. You're my savior, babe.">> <<else>> <<ChatMessage "Tess kneels with reverent heat, her lips wrapping your gorgeous cock in a warm, affirming embrace—stroking tenderly while sucking with building intensity, tongue exploring every sensitive ridge to make you feel seen and craved.">> <<ChatWithoutNPC 'Tess Carter' _tessCarter "Pulsing so strong, pre-cum tasting like heaven on my lips? Guide me, let me honor you fully—take what you need. You're making me ache with desire... release into me, let me cherish your cum like the gift it is, swallowing every pulse...">> <<ChatMessage "Bushes hide your shared passion, her mouth moving with loving fervor on your shaft, moans blending with nature's hum. Orgasm surges like a wave, spilling into her as she swallows with care, eyes shining with deep connection and desire, her hand gently stroking you through the aftershocks.">> <<ChatWithoutNPC 'Tess Carter' _tessCarter "Mmm, that was... electric and real. You're my savior, gorgeous.">> <</if>> <div class="btn padding-top"><<button "Continue" "Park">><</button>></div> <<set $tessStoryProgress = 2>> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<DeleteCharacter $interactionNpc>> <<set _tessCarter = "Media//Characters//QuestChars//UFG//Tess Carter.jpg">> <<run $player.characterEvents.registerEvent($player.info.id, "TessQuest2Lose", 1)>> <<ChatMessage "The ex slams you into the grass with brutal force, pinning you down, but fate intervenes—a cop strolling the park path catches the chaos. The ex spots the uniform, panics like a rat, and flees into the trees, hurling curses over his shoulder. The cop jogs over, badge flashing, but Tess steps in quick.">> <<ChatWithoutNPC 'Tess Carter' _tessCarter "It was self-defense—he's already gone.">> <<ChatMessage "The cop nods, satisfied, and moves on. Tess hauls you up with surprising strength, splashing fountain water over your cuts, her hands gentle and reassuring as they trace your arms.">> <<ChatWithoutNPC 'Tess Carter' _tessCarter "You alright? That dickhead... after what Dad put me through, I figured everyone was poison, but you jumped in anyway. Thanks for trying to shield me. The adrenaline's still raging through me, huh? Wanna... blow off some steam? Let your touch melt it away.">> <div class="btn padding-top"><<button "Joke about it." "Tess_Quest2_Lose_Joke">><</button>></div> <div class="btn padding-top"><<button "Offer oral." "Tess_Quest2_Lose_OfferOral">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _tessCarter = "Media//Characters//QuestChars//UFG//Tess Carter.jpg">> <<Chat $player "Blow it off? Only if it means ice cream. Next time, I'll bring pepper spray.">> <<ChatWithoutNPC 'Tess Carter' _tessCarter "*Laughs, shaking her head* Ice cream it is. You're a champ, win or lose. C'mon, park's got sunnier vibes waiting.">> <div class="btn padding-top"><<button "Continue" "Park">><</button>></div> <<set $tessStoryProgress = 2>> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _tessCarter = "Media//Characters//QuestChars//UFG//Tess Carter.jpg">> <<Chat $player "After that... I wanna thank you. In the bushes? My mouth on you—I'll make you cum hard.">> <<ChatMessage "Tess blushes fiercely, her body leaning into yours as she nods, eyes darkening with want, and leads you into the thick undergrowth.">> <<ChatWithoutNPC 'Tess Carter' _tessCarter "Thanking me? Shit, yes... get down there. Your lips and tongue on my pussy—dive deep, suck and swirl like you mean it. Oh fuck, just like that... you're making me throb so hard, build it up—I'm gonna cum all over you...">> <<ChatMessage "You kneel eagerly, face buried between her thighs—tongue plunging into her slick heat, lapping hungrily at her folds while sucking her swollen clit, fingers teasing and probing to amp the fire.">> <<if $player.gender() == 'Female' || $player.gender() == 'Shemale'>> <<Video "Media\\Sex\\Quest\\FightClub\\Tess\\Quest2\\lick_f.mp4">> <<else>> <<Video "Media\\Sex\\Quest\\FightClub\\Tess\\Quest2\\lick_m.mp4">> <</if>> <<ChatWithoutNPC 'Tess Carter' _tessCarter "Feel me dripping, clenching around your mouth? Harder, own this cunt—you're driving me insane with lust... yes, right there—explode with me, soak my face in your juices, let me grind until I'm spent...">> <<ChatMessage "Bushes cloak your frenzy, your tongue working her relentlessly as her hips grind, stifled moans cutting through the leaves. She shatters in orgasmic bliss, body quaking and gushing waves of her arousal over your chin and lips, then drags you up for a messy, flavor-shared embrace, her fingers digging into your skin.">> <<ChatWithoutNPC 'Tess Carter' _tessCarter "Fuck... you're a miracle worker. This seals us tight.">> <div class="btn padding-top"><<button "Continue" "Park">><</button>></div> <<set $tessStoryProgress = 2>> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _tessCarter = "Media//Characters//QuestChars//UFG//Tess Carter.jpg">> <<set $canShowStatsBtn = false>> <<set $gameSettings.allowSaves = false>> <<ChatWithoutNPC 'Tess Carter' _tessCarter "Hey, you... I'm tired of being scared. Every day, this terror chokes me—from my dad, from the memories. I want to end it. Help me teach him a lesson, once and for all. Let's go to his house before he gets totally wasted. You in? Without you... I might break.">> <<Chat $player "Alright, let's go. Tell me how you got out of that hell.">> <<ChatWithoutNPC 'Tess Carter' _tessCarter "On the way. Let's move while it's still light. When I was 16, after that beating... I couldn't take it anymore. I ran away from home—just packed my stuff and left in the middle of the night. Wandered the city for weeks: slept in parks, ate out of dumpsters, starved. It was terrifying, but better than home. I ran into Grant—he saw me outside the gym, dirty and broken. Let me crash there if I'd clean up. Mop at night, train during the day. I work out to get strong, to beat my dad and save my mom. She's still there, in that mess. With you... I feel like I can do it.">> <<Chat $player "You're strong. We'll make this happen.">> <div class="btn padding-top"><<button "Continue" "Tess_Quest3_Dads_House_Start">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/Other/UFG/Tess_House.jpg">> <<set _tessCarter = "Media//Characters//QuestChars//UFG//Tess Carter.jpg">> <<set _tessDad = "Media//Characters//QuestChars//UFG//Tess_Father.jpg">> <<set $canShowStatsBtn = false>> <<set $gameSettings.allowSaves = false>> <<ChatMessage "Tess's father's house—run-down, in a rough neighborhood. You knock on the door. Footsteps inside, the door swings open: Tess's dad, drunk, bottle in hand, eyes cloudy with rage. He sees Tess and growls.">> <<ChatWithoutNPC 'Tess\'s father' _tessDad "Tess? You little bitch, back already? After running off and leaving me with your worthless mother? I'll teach you some respect—like old times!">> <<ChatWithoutNPC 'Tess Carter' _tessCarter "*Freezing up, voice shaking* Dad... enough. We came here to...">> <<ChatWithoutNPC 'Tess\'s father' _tessDad "*Raising his fist* Shut up! And who the hell are you? Get out, or I'll smash you both!">> <<ChatMessage "Tess goes into a stupor—the paralyzing fear locks her in place, standing like a statue. You decide to step in.">> <<run _tessDadChar = CreateCharacter({ isPlayer: false, characterWork: "Tess's Dad", gender: "Male", sexualPreference: "Bi", clothesPreference: "men", firstName: "", lastName: "", skin: 'White', age: 50, defense: 5, agility: 2, strength: 6, isQuestCharacter: true, questCharID: 14, currentQuestID: 0, currentCharImg: _tessDad, }, true)>> <<set $indexNPC = $Characters.indexOf(_tessDadChar)>> <<set $interactionNpc = $Characters[$indexNPC]>> <<run $player.characterEvents.registerEvent($interactionNpc.info.id, "knows you", 1)>> <div class="btn padding-top"><<button "Fight">> <<set _battleSetControls = {attack: true, seduce: false, items: false, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls 'Tess_Quest3_Dads_House_Win' 'Tess_Quest3_Dads_House_Lose'>> <</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/Other/UFG/Tess_House.jpg">> <<DeleteCharacter $interactionNpc>> <<set _tessCarter = "Media//Characters//QuestChars//UFG//Tess Carter.jpg">> <<set $tessDadFightWon = true>> <<ChatMessage "Tess\'s dad hits the ground, groaning on the dirt, muttering threats but not getting up. Tess snaps out of her stupor, eyes full of tears and relief. She grabs your hand.">> <<ChatWithoutNPC 'Tess Carter' _tessCarter "You... you did it. He's down, and I'm... alive. Let's get out of here, back to the gym! Mom... I'll get her later, when he's sobered up.">> <div class="btn padding-top"><<button "Continue" "Tess_Quest3_Final_Start">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/Other/UFG/Tess_House.jpg">> <<DeleteCharacter $interactionNpc>> <<set _tessCarter = "Media//Characters//QuestChars//UFG//Tess Carter.jpg">> <<set $tessDadFightWon = false>> <<ChatMessage "Tess\'s dad slams you to the ground, but Tess breaks out of her stupor—rage overriding the fear. She lunges at him, pummeling with fists and kicks, knocking him out cold. He lies there groaning as she helps you up, brushing off the dirt.">> <<ChatWithoutNPC 'Tess Carter' _tessCarter "You... tried. Thanks for standing up for me. That gave me the strength. He's down—for the first time, I beat him. Let's haul ass back to the gym before he comes to.">> <div class="btn padding-top"><<button "Continue" "Tess_Quest3_Final_Start">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SetBackground "Media/Locations/City/SkidRow/Warehouse/Locker_Room.jpg">> <<set _tessCarter = "Media//Characters//QuestChars//UFG//Tess Carter.jpg">> <<set $canShowStatsBtn = false>> <<set $gameSettings.allowSaves = false>> <<if $tessDadFightWon == true>> <<ChatMessage "You bolt back to the training gym, empty and quiet at night. In the locker room: dim lights, the smell of sweat and adrenaline. Tess presses against you, breathing heavy.">> <<ChatWithoutNPC 'Tess Carter' _tessCarter "Thanks... you saved me. After everything—the escape, the wandering, Grant—I thought the fear was forever. But with you... I want you. Take off your clothes, fuck me. Deep, hard... oh yeah.">> <<ChatMessage "In the locker room, on a bench or the floor. Her body arches against yours, sweat-slick skin sliding together as the adrenaline fuels raw, urgent passion. Moans echo softly off the lockers, her nails raking your back in ecstasy.">> <<ChatWithoutNPC 'Tess Carter' _tessCarter "*Gasping during* Cum inside me... you're my strength now.">> <<if $player.gender() == 'Male'>> <<Video "Media\\Sex\\Quest\\FightClub\\Tess\\Quest3\\vaginal_m.mp4">> <<elseif $player.gender() == 'Shemale'>> <<Video "Media\\Sex\\Quest\\FightClub\\Tess\\Quest3\\vaginal_s.mp4">> <<else>> <<Video "Media\\Sex\\Quest\\FightClub\\Tess\\Quest3\\69.mp4">> <</if>> <<if $player.gender() == 'Male' || $player.gender() == 'Shemale'>> <<ChatMessage "You thrust into her tight, wet pussy, pounding deep and relentless, her legs wrapping around you as she moans louder with each stroke, her walls clenching around your cock. She scratches your back, urging you faster, her tits bouncing with the rhythm until you both explode in shuddering orgasms, your hot load filling her.">> <<elseif $player.gender() == 'Female'>> <<ChatMessage "Fingers plunging deep into each other's dripping cunts, tongues lashing clits and folds in a frenzy, bodies grinding together in scissoring heat. She licks you voraciously while you finger-fuck her, building to mutual climaxes where you both squirt and tremble, juices mixing in shared release.">> <</if>> <<ChatWithoutNPC 'Tess Carter' _tessCarter "*Breathless after* Whew... that was... liberating. Now I'll get Mom out of that house, take care of her. We'll start over, her and me. You're part of this—thanks.">> <<else>> <<ChatMessage "You head back to the training gym. Tess sits you down on a mat, checking your bruises, her voice full of gratitude but no romance.">> <<ChatWithoutNPC 'Tess Carter' _tessCarter "You risked it all for me... after the escape, the wandering, Grant—I've been training for this. Now I'll help Mom: get her out when he's passed out. I'll take care of her, like she couldn't for me. You're a friend, but... I need some time alone. See you at the gym.">> <</if>> <div class="btn padding-top"><<button "Continue" "Underground_Fight_Gym">> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>> <<set $tessStoryProgress = 3>> <<set $ApprovalReceived += 1>> <</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _tessCarter = "Media//Characters//QuestChars//UFG//Tess Carter.jpg">> <<DrawImg _tessCarter>> <<set _dexAtMax = $player.attributes.dexterity.value >= $player.attributes.dexterity.max>> <<if $tessStoryProgress == 0>> <<ChatWithoutNPC 'Tess Carter' _tessCarter 'Hey, wanna fight?'>> <div class="btn padding-top"><<button "Yes, I'm ready" "TessStartQuestFight">><</button>></div> <<if _dexAtMax>> <div class="btn padding-top non-interacting"><<button "Agility (MAX)">><</button>></div> <<else>> <div class="btn padding-top"><<button "Train my agility ($250)" "Tess_TrainAgility">><</button>></div> <</if>> <<elseif $tessStoryProgress == 1>> <<goto "Tess_Quest2_Start">> <<elseif $tessStoryProgress == 2>> <<goto "Tess_Quest3_Start">> <<else>> <<if _dexAtMax>> <<ChatWithoutNPC 'Tess Carter' _tessCarter 'Looks like you\'re already at peak agility.'>> <div class="btn padding-top non-interacting"><<button "Agility (MAX)">><</button>></div> <<else>> <<ChatWithoutNPC 'Tess Carter' _tessCarter 'Need to keep sharp? I can train your agility for $250.'>> <div class="btn padding-top"><<button "Train my agility ($250)" "Tess_TrainAgility">><</button>></div> <</if>> <</if>> <div class="btn padding-top"><<button "Leave" "Underground_Fight_Gym">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _tessCarter = "Media//Characters//QuestChars//UFG//Tess Carter.jpg">> <<if $player.money < 250>> <<ChatWithoutNPC 'Tess Carter' _tessCarter 'Come back when you have $250.'>> <div class="btn padding-top"><<button "Back" "Tess_Checker">><</button>></div> <<else>> <<set $player.money -= 250>> <<SpendEnergy $player 20>> <<SpendTimeWithoutUpdate 30>> <<set _gain = Random(10,20) + $player.attributes.intelligence.value>> <<SetCharProgression $player 'dexterity' _gain true>> <<ChatWithoutNPC 'Tess Carter' _tessCarter 'Nice hustle. You\'re getting faster.'>> <div class="btn padding-top"><<button "Back" "Tess_Checker">><</button>></div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "CharactersData">> <<run _tessCharacter = CreateCharacter({ isPlayer: false, characterWork: "Quest", gender: "Female", sexualPreference: "Bi", clothesPreference: "women", firstName: "Tess", lastName: "Carter", skin: 'White', age: 30, defense: 4, agility: 2, strength: 2, isQuestCharacter: true, questCharID: 12, currentQuestID: 0, currentCharImg: "Media\\Characters\\QuestChars\\UFG\\Tess Carter.jpg", }, true)>> <<unset $maleNames $femaleNames $surnames>> <<run $player.characterEvents.registerEvent(_tessCharacter.info.id, "knows you", 1)>> <<set $indexNPC = $Characters.indexOf(_tessCharacter)>> <<set $interactionNpc = $Characters[$indexNPC]>> <<set _battleSetControls = {attack: true, seduce: false, items: false, actions: true}>> <<StartFight $player $interactionNpc _battleSetControls 'TessQuestFightWin' 'TessQuestFightLose'>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $tessFightWon = true>> <div class="btn padding-top"><<button "Continue" "Tess_Quest1">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $tessFightWon = false>> <div class="btn padding-top"><<button "Continue" "Tess_Quest1">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateStatBars">> <<SetBackground>> <div id="rpg-quest-ui"> <div class="rpg-quest-header"> <h2>Quest Journal</h2> <div class="rpg-quest-filters"> <!-- Фильтры по типу (Main / Side) --> <button onclick="renderQuests('main')">Main (<<print getQuestCountByType("main")>>)</button> <button onclick="renderQuests('side')">Side (<<print getQuestCountByType("side")>>)</button> <button onclick="renderQuests('completed')">Completed (<<print getQuestCountByType("completed")>>)</button> </div> </div> <div id="quest-log"></div> </div> <div class="padding-top"> <<BackButton "<<set $canShowStatsBtn = true>>">> </div> <</nobr>>
<<nobr>> <div class="centre-text">Customize NPC Generation</div> <fieldset> <legend>Generate Number</legend> <div class="parent"> <div> Students <input type="number" id="students-count" value="50" min="50" max="150" onchange="OnInputLimit('students-count')"/> Max 150</div> <div> Citizens <input type="number" id="citizens-count" value="50" min="50" max="150" onchange="OnInputLimit('citizens-count')"/> Max 150</div> </div> </fieldset> <div class="grid-row-twice" style = "grid-template-columns: 1fr 1fr 1fr;"> <fieldset> <legend>Gender ratio</legend> <div class="parent"> <div class="slider-group horizontal-container" data-group="1"> <input type="range" id="men-slider" class="slider" data-slider="1" data-group="1" value="33" min="0" max="100" oninput="updateSliders(1, this.value, this.dataset.group)"> <p>Men: <span class="value" data-value="1" data-group="1">33</span>%</p> </div> <div class="slider-group horizontal-container" data-group="1"> <input type="range" id="women-slider" class="slider" data-slider="2" data-group="1" value="33" min="0" max="100" oninput="updateSliders(2, this.value, this.dataset.group)"> <p>Women: <span class="value" data-value="2" data-group="1">33</span>%</p> </div> <div class="slider-group horizontal-container" data-group="1"> <input type="range" id="trans-slider" class="slider" data-slider="3" data-group="1" value="34" min="0" max="100" oninput="updateSliders(3, this.value, this.dataset.group)"> <p>Trans: <span class="value" data-value="3" data-group="1">34</span>%</p> </div> </div> </fieldset> <fieldset> <legend>Race ratio</legend> <div class="parent"> <div class="slider-group horizontal-container" data-group="2"> <input type="range" id="white-slider" class="slider" data-slider="1" data-group="2" value="33" min="0" max="100" oninput="updateSliders(1, this.value, this.dataset.group)"> <p>White: <span class="value" data-value="1" data-group="2">33</span>%</p> </div> <div class="slider-group horizontal-container" data-group="2"> <input type="range" id="black-slider" class="slider" data-slider="2" data-group="2" value="33" min="0" max="100" oninput="updateSliders(2, this.value, this.dataset.group)"> <p>Black: <span class="value" data-value="2" data-group="2">33</span>%</p> </div> <div class="slider-group horizontal-container" data-group="2"> <input type="range" id="asian-slider" class="slider" data-slider="3" data-group="2" value="34" min="0" max="100" oninput="updateSliders(3, this.value, this.dataset.group)"> <p>Asian: <span class="value" data-value="3" data-group="2">34</span>%</p> </div> </div> </fieldset> <fieldset> <legend>Sexual Preference</legend> <div class="parent"> <div class="slider-group horizontal-container" data-group="3"> <input type="range" id="straight-slider" class="slider" data-slider="1" data-group="3" value="33" min="0" max="100" oninput="updateSliders(1, this.value, this.dataset.group)"> <p>Straight: <span class="value" data-value="1" data-group="3">33</span>%</p> </div> <div class="slider-group horizontal-container" data-group="3"> <input type="range" id="bi-slider" class="slider" data-slider="2" data-group="3" value="33" min="0" max="100" oninput="updateSliders(2, this.value, this.dataset.group)"> <p>Bi: <span class="value" data-value="2" data-group="3">33</span>%</p> </div> <div class="slider-group horizontal-container" data-group="3"> <input type="range" id="homo-slider" class="slider" data-slider="3" data-group="3" value="34" min="0" max="100" oninput="updateSliders(3, this.value, this.dataset.group)"> <p>Gay/les: <span class="value" data-value="3" data-group="3">34</span>%</p> </div> </div> </fieldset> </div> <div class="grid-row-twice" style = "grid-template-columns: 1fr; display: flex; justify-content: center;"> <fieldset> <legend>Aggression settings</legend> <label> <input type="checkbox" id="default-settings" checked> Default settings </label> <div class="parent"> <div class="slider-group horizontal-container" data-group="4"> <input style="background-color: #ccc; cursor: not-allowed; opacity: 0.6;" type="range" id="aggressiveapear-slider" class="slider" data-slider="1" data-group="4" value="33" min="0" max="100" oninput="updateSliders(1, this.value, this.dataset.group)"> <p>Chance of aggressive NPCs appearing: <span class="value" data-value="1" data-group="4">33</span>%</p> </div> </div> <div class="parent"> <div class="slider-group horizontal-container" data-group="5"> <input style="background-color: #ccc; cursor: not-allowed; opacity: 0.6;" type="range" id="aggressivechance-slider" class="slider" data-slider="1" data-group="5" value="33" min="0" max="100" oninput="updateSliders(1, this.value, this.dataset.group)"> <p>Chance of attacking the player: <span class="value" data-value="1" data-group="5">33</span>%</p> </div> </div> </fieldset> </div> <div class="padding-top text-center"><span>Attention: The NPC generator does not affect your neighbor, the merchants, or quest NPCs.</span></div> <div class="padding-top"> <div class="btn"><<button "Next" "PlayerCreate">> <<run $gameSettings.defaultAggression = document.getElementById("default-settings").checked>> <<run $gameSettings.aggressiveAppearNum = document.getElementById("aggressiveapear-slider").value>> <<run $gameSettings.aggressiveChance = document.getElementById("aggressivechance-slider").value>> <<run $generateNumber.students = document.getElementById("students-count").value>> <<run $generateNumber.citizens = document.getElementById("citizens-count").value>> <<run _genderValues = ["Male", "Female", "Trans"]>> <<run _genderDistribution = {Male: 0, Female: 0, Trans: 0}>> <<run _genderDistribution.Male = document.getElementById("men-slider").value>> <<run _genderDistribution.Female = document.getElementById("women-slider").value>> <<run _genderDistribution.Trans = document.getElementById("trans-slider").value>> <<run $studentGenderArray = generateArray(Math.ceil(($generateNumber.students / 2) + 1), _genderValues, _genderDistribution)>> <<run $citizensGenderArray = generateArray($generateNumber.citizens, _genderValues, _genderDistribution)>> <<run _skinValues = ["White", "Black", "Asian"]>> <<run _skinDistribution = {White: 0, Black: 0, Asian: 0}>> <<run _skinDistribution.White = document.getElementById("white-slider").value>> <<run _skinDistribution.Black = document.getElementById("black-slider").value>> <<run _skinDistribution.Asian = document.getElementById("asian-slider").value>> <<run $studetsSkinsArray = generateArray($generateNumber.students, _skinValues, _skinDistribution)>> <<run $citizensSkinArray = generateArray($generateNumber.citizens, _skinValues, _skinDistribution)>> <<run _sexualOrientationValues = ["Straight", "Bi", "Homo"]>> <<run _sexualOrientationDistribution = {Straight: 0, Homo: 0, Bi: 0}>> <<run _sexualOrientationDistribution.Straight = document.getElementById("straight-slider").value>> <<run _sexualOrientationDistribution.Bi = document.getElementById("bi-slider").value>> <<run _sexualOrientationDistribution.Homo = document.getElementById("homo-slider").value>> <<run $studentSexPrefArray = generateArray($generateNumber.students, _sexualOrientationValues, _sexualOrientationDistribution)>> <<run $citizensSexPrefArray = generateArray($generateNumber.citizens, _sexualOrientationValues, _sexualOrientationDistribution)>> <</button>></div> </div> <<done>> <<script>> const defaultSettingsCheckbox = document.getElementById("default-settings"); const aggressive_appear_slider = document.getElementById("aggressiveapear-slider"); const aggressive_chance_attack_slider = document.getElementById("aggressivechance-slider"); defaultSettingsCheckbox.addEventListener("change", () => { aggressive_appear_slider.disabled = defaultSettingsCheckbox.checked; aggressive_chance_attack_slider.disabled = defaultSettingsCheckbox.checked; if (defaultSettingsCheckbox.checked == true){ aggressive_appear_slider.setAttribute("style", "background-color: #ccc; cursor: not-allowed; opacity: 0.6;"); aggressive_chance_attack_slider.setAttribute("style", "background-color: #ccc; cursor: not-allowed; opacity: 0.6;"); }else{ aggressive_appear_slider.removeAttribute("style"); aggressive_chance_attack_slider.removeAttribute("style"); } }); <</script>> <</done>> <</nobr>>
<<nobr>> <div class="centre-text">Student ID</div> <fieldset> <legend>Name</legend> <div class="creator-grid"> <div class="input-container"> <div class="text-field text-field_floating-2"> <input type="text" id="firstName" name="firstName" value="First Name"> <label class="text-field__label" for="email">First Name</label> </div> </div> <div class="btn button-container"> <<button "🎲">> <<script>> if (State.variables.gender == "Male") { var randomIndex = Math.floor( Math.random() * State.variables.maleNames.length ); var randomName = State.variables.maleNames[randomIndex]; $("#firstName").val(randomName); } else{ var randomIndex = Math.floor( Math.random() * State.variables.femaleNames.length ); var randomName = State.variables.femaleNames[randomIndex]; $("#firstName").val(randomName); } <</script>> <</button>> </div> <div class="input-container"> <div class="text-field text-field_floating-2"> <input type="text" id="secondName" name="firstName" value="Second Name"> <label class="text-field__label" for="email">Second Name</label> </div> </div> <div class="btn button-container"> <<button "🎲">> <<script>> var randomIndex = Math.floor( Math.random() * State.variables.surnames.length ); var randomName = State.variables.surnames[randomIndex]; $("#secondName").val(randomName); <</script>> <</button>> </div> </div> </fieldset> <<set _skins = ["White", "Black", "Asian"]>> <<set _genders = ["Male", "Female", "Trans"]>> <fieldset> <legend>Info</legend> <<listbox "$gender">> <<optionsfrom _genders>> <</listbox>> <<listbox "$skin">> <<optionsfrom _skins>> <</listbox>> </fieldset> <<script>> $(document).one(":passagerender", function (event) { $(event.content).find("#listbox-skin").on("change", function (event) { SetPic(); }); $(event.content).find("#listbox-gender").on("change", function (event) { SetPic(); }); }); <</script>> <fieldset> <legend>Face</legend> <<if $gender == "Male">> <<set _genderPick = "Male">> <<set _genderFace = 0>> <<else>> <<set _genderPick = "Female">> <<set _genderFace = 5>> <</if>> <<if $gameSettings.feminizationStages == true>> <<set _characterIcon = "Media\\Characters\\" + $skin + "\\Face\\" + $playerFaceType + "\\" + _genderFace + ".jpeg">> <<else>> <<set _characterIcon = "Media\\Characters\\" + $skin + "\\Face\\" + _genderPick + "\\" + $playerFaceType + ".jpg">> <</if>> <div class="centered-container"> <div class="btn"> <<button "<<<<<">> <<if $playerFaceType > 19>> <<set $playerFaceType = 0>> <<else>> <<set $playerFaceType++>> <</if>> <<run SetPic()>> <</button >> </div> <div> <img class="character-avatar" id="charico" @src="_characterIcon" alt="Avatar"> </div> <div class="btn"> <<button ">>>>>">> <<if $playerFaceType < 1>> <<set $playerFaceType = 9>> <<else>> <<set $playerFaceType-->> <</if>> <<run SetPic()>> <</button >> </div> </div> </fieldset> <fieldset> <legend>Game settings</legend> <div class="child-activity-form"> <div class="option"> <<checkbox "$gameSettings.feminizationStages" false true autocheck>> Feminization Stages </div> <div class="option"> <<checkbox "$gameSettings.contentFilter.NPC_Activity" false true autocheck>> NPC activity </div> </div> </fieldset> <fieldset> <legend>Content Filter</legend> <div class="child-activity-form"> Content Filter (Content is available if active): <div class="option"> <<checkbox "$gameSettings.contentFilter.PlayerFeminization" false true autocheck>> Forced Player Feminization </div> <hr> <div class="option"> <<checkbox "$gameSettings.contentFilter.maleXmale" false true autocheck>> Male & Male </div> <div class="option"> <<checkbox "$gameSettings.contentFilter.maleXfemale" false true autocheck>> Male & Female </div> <div class="option"> <<checkbox "$gameSettings.contentFilter.maleXshemale" false true autocheck>> Male & Trans </div> <div class="option"> <<checkbox "$gameSettings.contentFilter.femaleXfemale" false true autocheck>> Female & Female </div> <div class="option"> <<checkbox "$gameSettings.contentFilter.femaleXshemale" false true autocheck>> Female & Trans </div> <div class="option"> <<checkbox "$gameSettings.contentFilter.shemaleXshemale" false true autocheck>> Trans & Trans </div> </div> </fieldset> <div class="padding-top"> <div class="btn"><<button "Start ➤" "backstory_1">><<include "ApplyPlayerCreateSettings">><</button>></div> </div> <div class="padding-top"> <div class="btn"><<button "Skip Intro">> <<include "ApplyPlayerCreateSettings">> <<SetSaveBtn true>> <<goto $player.info.currentLocation>> <</button>></div> </div> <</nobr>>
<<nobr>> <<run $AllClothes = new Wardrobe()>> <<run $AllClothes.registerClothes()>> <<set $Residents = []>> <<set $Characters = []>> <<run $player = CreateCharacter({ skin: $skin, gender: $gender, firstName: document.getElementById("firstName").value, secondName: document.getElementById("secondName").value, face: $genderPick, faceType: $playerFaceType, age: 18, isPlayer: true, penisSize: (($gender == "Female") ? 0 : 5), vaginaSize: (($gender == "Female") ? 30 : 0), face: (($gender == "Male") ? 0.0 : 5.0), teeth: 2, breastSize: (($gender == "Male") ? 0 : 1), buttSize: (($gender == "Male") ? 0 : 1), fat: 40, clothesPreference: (($gender == "Male") ? "men" : "women"), SexRole: "Active", money: 100, lockpick: 0, sexStamina: 3, dominance: 0, hacker: 0, guns: 0, meleeWeapons: 0, speech: 0, performer: 0, intelligence: 0, corruption: 0, strength: 0, vitality: 0, endurance: 0, dexterity: 0, defense: 0, lust: 0, }, false)>> <<include "CharactersCreate">> <<run $dateTime = new DateTime({ year: 2025, month: 9, day: 3, hours: 7, minutes: 5, })>> <<set $showPlayerStat = 1>> <<set $currentRoom = $Residents[0]>> <<run RelocateCharacters()>> <<set $player.info.currentLocation = "Player_Bedroom_PHome">> <<set $canShowStatsBtn = false>> <<unset $gender, $genderPick, $playerFaceType, _skins, _genders>> <<run $player.AddCloth()>> <<run $Characters[0].AddCloth(true)>> <<unset $maleNames $femaleNames $surnames>> <</nobr>>
<<nobr>> <div class="player-stats-view-container"> <table class="player-stats-view-table"> <thead> <tr class="player-stats-view-tr"> <th class="player-stats-view-th">Name</th> <th class="player-stats-view-th">Progress to Next Level</th> <th class="player-stats-view-th">Level</th> </tr> </thead> <tbody> <tr class="player-stats-view-tr"> <td class="player-stats-view-td">Disinhibition</td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" style="width: 10%" ></div> </div> </td> <td class="player-stats-view-td">1</td> </tr> <tr class="player-stats-view-tr"> <td class="player-stats-view-td"> <span class="player-stats-view-tooltip" data-tooltip="Your knowledge, if not experience, of sexual acts, kinks, and so on." > Sexual Knowledge </span> </td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" style="width: 50%" ></div> </div> </td> <td class="player-stats-view-td">2</td> </tr> <tr class="player-stats-view-tr"> <td class="player-stats-view-td">Exhibitionism</td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" style="width: 0%"></div> </div> </td> <td class="player-stats-view-td">0</td> </tr> <tr class="player-stats-view-tr"> <td class="player-stats-view-td">Voyeurism</td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" style="width: 0%"></div> </div> </td> <td class="player-stats-view-td">0</td> </tr> <tr class="player-stats-view-tr"> <td class="player-stats-view-td">Assertiveness</td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" style="width: 0%"></div> </div> </td> <td class="player-stats-view-td">0</td> </tr> <tr class="player-stats-view-tr"> <td class="player-stats-view-td">Compliance</td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" style="width: 0%"></div> </div> </td> <td class="player-stats-view-td">0</td> </tr> <tr class="player-stats-view-tr"> <td class="player-stats-view-td">Hand</td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" style="width: 20%" ></div> </div> </td> <td class="player-stats-view-td">2</td> </tr> <tr class="player-stats-view-tr"> <td class="player-stats-view-td">Oral</td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" style="width: 0%"></div> </div> </td> <td class="player-stats-view-td">0</td> </tr> <tr class="player-stats-view-tr"> <td class="player-stats-view-td">Vaginal</td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" style="width: 0%"></div> </div> </td> <td class="player-stats-view-td">0</td> </tr> <tr class="player-stats-view-tr"> <td class="player-stats-view-td">Penetrative</td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" style="width: 0%"></div> </div> </td> <td class="player-stats-view-td">0</td> </tr> <tr class="player-stats-view-tr"> <td class="player-stats-view-td">Anal</td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" style="width: 0%"></div> </div> </td> <td class="player-stats-view-td">0</td> </tr> <tr class="player-stats-view-tr"> <td class="player-stats-view-td">Studying</td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" style="width: 0%"></div> </div> </td> <td class="player-stats-view-td">0</td> </tr> </tbody> </table> </div> <</nobr>>
<<nobr>> <div class="chat-container" style="padding-top: 5px; padding-bottom: 5px;"> <p>$interactionNpc.info.firstName $interactionNpc.info.secondName. $interactionNpc.info.age.value-year-old <<print $interactionNpc.gender()>>. With a <<if $interactionNpc.clothes.hasClothingType(1) == false && $interactionNpc.clothes.hasClothingType(2) == false>> __<<link $interactionNpc.getBreastText()>> <<script>> Dialog.setup(SugarCube.State.variables.interactionNpc.getBreastText()); Dialog.wiki(SugarCube.State.variables.interactionNpc.getBreastImage()); Dialog.open(); <</script>> <</link>>__ <<else>> <span style="color: #fff;"><<print $interactionNpc.getBreastText()>></span> under clothing <</if>> and <<if $interactionNpc.clothes.hasClothingType(0) == false && $interactionNpc.clothes.hasClothingType(3) == false>> __<<link $interactionNpc.getButtText()>> <<run Dialog.setup(SugarCube.State.variables.interactionNpc.getButtText())>> <<run Dialog.wiki(SugarCube.State.variables.interactionNpc.getAssImage())>> <<run Dialog.open()>> <</link>>__ <<else>> <span style="color: #fff;"><<print $interactionNpc.getButtText()>></span> under clothing. <</if>> <<if $interactionNpc.clothes.clothingItems.size > 0>> <<set _isHasCloth = false>> <br><<print $interactionNpc.pronoun()>> is wearing: <<for _i = 0; _i <= 8; _i++>> <<capture _i>> <<if $interactionNpc.clothes.hasClothingType(_i)>> <<if (_i == 0 && $interactionNpc.clothes.hasClothingType(3)) || (_i == 1 && $interactionNpc.clothes.hasClothingType(2))>> <<continue>> <</if>> <<if _isHasCloth == true>> , <</if>> <<set _isHasCloth = true>> __<<link $interactionNpc.clothes.getFirstClothingItemByType(_i).name>> <<run Dialog.setup($interactionNpc.clothes.getFirstClothingItemByType(_i).name)>> <<run Dialog.wiki($interactionNpc.clothes.getFirstClothingItemByType(_i).getImg())>> <<run Dialog.open();>> <</link>>__ <<capture _i>> <<if _canTakeClothOff == true>> __<<link " (take off)" "TakeOff_clothes">> <<set $clothID = _i>> <</link>>__ <</if>> <</capture>> <</if>> <</capture>> <</for>> <</if>> <<if $interactionNpc.clothes.hasClothingType(0) == false && $interactionNpc.clothes.hasClothingType(3) == false>> <<if $interactionNpc.genitalia() == "Penis">> . <<print $interactionNpc.pronoun()>> have a <<print Math.trunc($interactionNpc.body.penisSize.value)>>-centimeter penis. <<else>> . <<print $interactionNpc.pronoun()>> have a vagina. <</if>> <</if>> </p> </div> <</nobr>>
<<nobr>> <<EachLoc>> <fieldset> <legend>Stats</legend> <div id="characterCustomization"> <h2>Free Points: <span id="freePoints">10</span></h2> <div id="attributes"> <div class="attribute"> <button class="decrease">-</button> <label>Dominance:</label> <span class="attributeValue" id="dominance" data-max="100" data-min="0" data-step="1">20</span> <button class="increase">+</button> </div> <div class="text-center"><span>Body</span></div> <<if $player.gender() != "Male">> <div class="attribute"> <button class="decrease">-</button> <label>Breast Size:</label> <span class="attributeValue" id="breast-size" data-max="6" data-min="0" data-step="1">1</span> <button class="increase">+</button> </div> <div class="attribute"> <button class="decrease">-</button> <label>Butt Size:</label> <span class="attributeValue" id="butt-size" data-max="6" data-min="0" data-step="1">1</span> <button class="increase">+</button> </div> <</if>> <<if $player.gender() != "Female">> <div class="attribute"> <button class="decrease">-</button> <label>Penis Size:</label> <span class="attributeValue" id="penis-size" data-max="30" data-min="5" data-step="1">5</span> <button class="increase">+</button> </div> <</if>> <div class="text-center"><span>Other</span></div> <div class="attribute"> <button class="decrease">-</button> <label>Money:</label> <span class="attributeValue" id="money" data-max="10000000" data-min="0" data-step="100">100</span> <button class="increase">+</button> </div> </div> </div> </fieldset> <<done>> <<script>> var freePointsElement = document.getElementById("freePoints"); let freePoints = parseInt(freePointsElement.textContent || "0"); document.querySelectorAll(".increase").forEach(button => { button.addEventListener("click", () => { var attributeValueElement = button.closest('.attribute').querySelector('.attributeValue'); var currentVal = parseInt(attributeValueElement.textContent); var maxVal = parseInt(attributeValueElement.getAttribute('data-max') || "0"); var step = parseInt(attributeValueElement.getAttribute('data-step') || "0"); if (currentVal + step <= maxVal && freePoints >= 1) { attributeValueElement.textContent = currentVal + step; freePoints -= 1; freePointsElement.textContent = freePoints; } }); }); document.querySelectorAll(".decrease").forEach(button => { button.addEventListener("click", () => { var attributeValueElement = button.closest('.attribute').querySelector('.attributeValue'); var currentVal = parseInt(attributeValueElement.textContent); var minVal = parseInt(attributeValueElement.getAttribute('data-min') || "0"); var step = parseInt(attributeValueElement.getAttribute('data-step') || "0"); if (currentVal - step >= minVal) { attributeValueElement.textContent = currentVal - step; freePoints += 1; freePointsElement.textContent = freePoints; } }); }); <</script>> <</done>> <div class="padding-top"> <div class="btn"><<button "Start ➤" "backstory_1">><<include "ApplyStartSettings">><</button>></div> </div> <div class="padding-top"> <div class="btn"><<button "Skip Intro" $player.info.currentLocation>> <<include "ApplyStartSettings">> <<SetSaveBtn true>> <</button>></div> </div> <</nobr>>
<<nobr>> <<run _CharacterCustomization = { moneyElement: 0, fightingSkills: 0, dominance: 0, breastSize: 0, buttSize: 0, penisSize: 0, photoModel: 0, pornActor: 0, }>> <<run _CharacterCustomization.moneyElement = parseInt(document.getElementById('money').textContent, 10)>> <<run _CharacterCustomization.dominance = parseInt(document.getElementById('dominance').textContent, 10)>> <<if $player.gender() != "Male">> <<run _CharacterCustomization.breastSize = parseInt(document.getElementById('breast-size').textContent, 10)>> <<run _CharacterCustomization.buttSize = parseInt(document.getElementById('butt-size').textContent, 10)>> <</if>> <<if $player.gender() != "Female">> <<run _CharacterCustomization.penisSize = parseInt(document.getElementById('penis-size').textContent, 10)>> <</if>> <<run $player.money = _CharacterCustomization.moneyElement>> <<run $player.attributes.dominance.value = _CharacterCustomization.dominance>> <<if $player.gender() != "Male">> <<run $player.body.breastSize.value = _CharacterCustomization.breastSize>> <<run $player.body.buttSize.value = _CharacterCustomization.buttSize>> <</if>> <<if $player.gender() != "Female">> <<run $player.body.penisSize.value = _CharacterCustomization.penisSize>> <</if>> <<run $player.info.reputation.photoModel.value = 0>> <<run $player.info.reputation.pornActer.value = 0>> <</nobr>>
<<nobr>> <<if getQuestState("main_quest1_college") == undefined>> <<run _questList = [ { id: "main_quest1_college", title: "First day", description: "You've been accepted into college — now it's time to attend your very first class.", state: "active", questType: "main", tasks: [ { description: "Attend your first college class", completed: false } ], } ]>> <<CreateQuest _questList true>> <</if>> <</nobr>>
<<nobr>> <<run Config.history.maxStates = 1>> <<set $gender = "Male">> <<set $skin = "White">> <<set $genderPick = 0>> <<set $playerFaceType = 0>> <<set $characterID = 0>> <<set $skillpoints = 1>> <<include "CharactersData">> <<include "Widgets">> <<include "Fight_Widgets">> <<include "SexWidgets">> <<include "CharactersWidgets">> <<include "ActionWidgets">> <<include "Events">> <<include "AggressiveEvent">> <<include "PimpBrothelEvents_Pimp">> <<set $generateNumber = { students: 50, citizens: 50, }>> <<set $gameSettings = { version: "0.0.21", difficulty: "Easy", contentFilter: {PlayerFeminization: true, NPC_Activity: true, maleXmale: true, maleXfemale: true, maleXshemale: true, femaleXfemale: true, femaleXshemale: true, shemaleXshemale: true}, allowSaves: false, fadeBackground: true, defaultAggression: true, aggressiveAppearNum: 0, aggressiveChance: 0, feminizationStages: true, NpcCanImproveSkills: true, battleMode: "Standard", newInteractionSystem: true, }>> <<set $PData = { bankBalance: 0, }>> <<set $playerBrothel = { owned: false, name: "Brothel", rooms: 1, maxRooms: 10, clientRooms: 0, prostitutes: [], workerAssignments: {}, upgrades: { advertising: false, security: false, bar: false, vipZone: false, lighting: false, furniture: false, trainingRoom: false, dungeon: false, spa: false, medical: false, relaxation: false, masterRoom: false }, dailyEarnings: 0, uncollectedEarnings: 0, totalEarnings: 0, pendingWeeklyEarnings: 0, weeklyEarnings: 0, lastPayDay: 0, reputation: 0, level: 1, maxReputation: 100, visitedToday: false, skillPoints: 0, perks: { seeStats: false, profitBonus: 0, energySaving: 0, securityDiscount: false, feminizationAttempts: false, haggle: false, biweeklyPay: false, playerProfitBonus: 0, relaxationSpeed: 0, surgeryDiscount: false }, prisoners: [], dungeonCells: 1, debtWorkers: [] }>> <<set $playerFollowers = []>> <<set $NpcInteractions = []>> <<set $travelMode = "walk">> <<set $Locations = { "DormRoom": [], "DormCorridor": [], "CollegeHall": [], "Auditorium": [], "WomensRestroom": [], "MensRestroom": [], "Campus": [], "Mall": [], "GiftShop": [], "Pharmacy": [], "Grocery": [], "FitnessClub": [], "Park": [], "ParkRestrooms": [], "Clinic": [], "ClothingStore": [], "RedLightDistrict": [], "SexShop": [], "PornStudio": [], "PhotoStudio": [], "Villa": [], "VillaBedroom": [], "BrothelCorridor_Pimp": [], "FeminizationRoom_Pimp": [], "PimpRoom_Pimp": [], "BrothelHall_Pimp": [], "EntertainmentDistrict": [], "Bar": [], "ResidentialArea": [], "LivingRoom_Apartments": [], "Bedroom_Apartments": [], "Player_Bedroom_PHome": [], "Ethan_Bedroom_PHome": [], "Sarah_Bedroom_PHome": [], "Amanda_Bedroom_PHome": [], "Bathroom_PHome": [], "Living_Room_PHome": [], "Kitchen_PHome": [], "Basement_PHome": [], "Oak_Street": [], "ElectronicsStore": [], "Library": [], "Business_District": [], "BC_Reception": [], "BC_Open_Workspace": [], "BC_Amanda_Office": [], "BC_CEO_Office": [], "BC_Restroom": [], "SR_SkidRow": [], "SR_Warehouse": [], "SR_Shop": [], "SR_Motel": [], "SC_StripClub": [], "SC_Bar": [], "NC_DanceFloor": [], "NC_Bar": [], "NC_VIP_Lounge": [], "NC_Restroom": [], "SR_Motel_Room": [], "Bank": [], "Downtown": [], "CarDealership": [], "PoliceStation": [], "HoldingCell": [], "PoliceRoom": [], "Underground_Fight_Gym": [], "UFG_Locker_Room": [], "UFG_Shower_Room": [], "Diner": [], "PlayerBrothel_Main": [], "PlayerBrothel_Office": [], "PlayerBrothel_Rooms": [], }>> /*<<run setCharactersNew()>>*/ <<run SetRelationCheckMethods()>> <h1 style="text-align: center;">Viceburg v$gameSettings.version</h1> <h1 style="text-align: center; color: red;">Disclaimer!</h1> <<ChatMessage '<p>This game may contain content of an adult nature. If you are easily offended or are not yet of legal age in your country, please exit now. The game within are intended for adults only and may include scenes of sexual content, suggestive pictures, or graphic violence. Reader discretion is advised.</p>'>> <div class="padding-top"> <div class="btn"> <<button "I'm of legal age in my country 🔞 ➤" "Customize_NPC_Generation">> <<run UpdateSaveAllow()>><</button>> </div> </div> <</nobr>>
<<nobr>> <<run Save.onLoad.add(OnLoad)>> <<run Save.onSave.add(OnSave)>> <<if $showPlayerStat == 1>> <<set _characterIcon = $player.getPhotoImage()>> <a><img class="leftside-avatar-pic" @src="_characterIcon" alt="Avatar" id="player-icon"></a> <div class="leftside-char-name" id="player-name">$player.info.firstName $player.info.secondName</div> <div id="player-money"></div> <fieldset> <legend>Time</legend> <div class="time-display"> <div id="current-date"></div> <div id="current-time"></div> <div id="current-day-of-week"></div> </div> </fieldset> <<if $player.characterEvents.isEventRegistered($player.info.id, "InfectedByEfirium") == true>> <p style="color: red">You're infected with Etherium.</p> <</if>> <<if $playerlock == true>> <p style="color: red">You're locked in a chastity cage.</p> <</if>> <</if>> <<if $player != undefined>> <<if getQuestState("mad_dog_quest1") == "active" && getTaskState("mad_dog_quest1", $debtTaskName) != 'completed'>> /* <<if $daysToCompleteDebt > 0>> <p style="font-size: 12px;">Days Left to Collect: $daysToCompleteDebt</p> <<else>> <p style="font-size: 12px;">Days Left to Collect: 0</p> <</if>> */ <p style="font-size: 12px;">Debtor's Current Location: <<print getCharacterByID($debtorID).info.currentLocation>></p> <</if>> <div class="leftbar-menu-resources"> <div class="leftbar-menu-attributes"> <div class="leftbar-menu-column"> <div class="leftbar-menu-attribute"> <span class="leftbar-menu-attribute-name">Health</span> <div class="leftbar-menu-progress-bar"> <div class="leftbar-menu-progress-fill" id="health-bar"></div> </div> </div> <div class="leftbar-menu-attribute"> <span class="leftbar-menu-attribute-name">Energy</span> <div class="leftbar-menu-progress-bar"> <div class="leftbar-menu-progress-fill" id="energy-bar"></div> </div> </div> <div class="leftbar-menu-attribute"> <span class="leftbar-menu-attribute-name">Drunkenness</span> <div class="leftbar-menu-progress-bar"> <div class="leftbar-menu-progress-fill" id="drunkenness-bar"></div> </div> </div> </div> <div class="leftbar-menu-column"> <div class="leftbar-menu-attribute"> <span class="leftbar-menu-attribute-name">Horny</span> <div class="leftbar-menu-progress-bar"> <div class="leftbar-menu-progress-fill" id="horny-bar"></div> </div> </div> <div class="leftbar-menu-attribute"> <span class="leftbar-menu-attribute-name">Sex Stamina</span> <div class="leftbar-menu-progress-bar"> <div class="leftbar-menu-progress-fill" id="sex-stamina-bar"></div> </div> </div> </div> </div> </div> <<if $canShowStatsBtn == true>> <div class="player-stats-view-btn-container"> <div class="player-stats-view-btn"><<button "Quests" "Quests">><<set $canShowStatsBtn = false>><</button>></div> <div class="player-stats-view-btn" id="skills-panel-btn"><<button "Stats">> <<run Dialog.setup("Info")>> <<run Dialog.wiki('<<CharacterStatsView $player true>>')>> <<run Dialog.open();>> <</button>></div> <div class="player-stats-view-btn"><<button "Inventory" "Inventory">><<set $canShowStatsBtn = false>><<set $filterType = "All">><</button>></div> <div class="player-stats-view-btn"><<button "Cheats">><<ShowCheats $player>><</button>></div> <<if $player.characterEvents.isEventRegistered($player.info.id, "Is a pimp's whore") == false>> <div class="player-stats-view-btn"><<button "Phone" "Phone">><<set $canShowStatsBtn = false>><</button>></div> <</if>> </div> <</if>> <div class="padding-top"> <fieldset class="padding-top"> <legend>Movement</legend> <<if $player.money < 10 && $travelMode == 'bus'>> <<set $travelMode = 'walk'>> <</if>> <div class="btn-container"> <div class="btn" id="walk-btn"></div> <div class="btn" id="bus-btn"></div> <div class="btn" id="car-btn"></div> </div> <<done>> <<include "Update_Travel_Mode_Buttons">> <</done>> </fieldset> </div> <</if>> <</nobr>>
<<nobr>> <a href="https://www.patreon.com/Viceburg/" target="_blank"> Patreon <img src="Media/Other/patreon.png" alt="Patreon" width="16" height="16"> </a> <<if $canShowStatsBtn == true>> [[Options]] <</if>> <</nobr>>
<<nobr>> <<set $canShowStatsBtn = false>> <<set $gameSettings.allowSaves = false>> <<include "UpdateAll">> <<set _percent = calculateValueFromPercentage(500, 5)>> /* <<run console.log(_percent)>> */ <fieldset> <legend>Content Filter</legend> <div class="child-activity-form"> <div class="option"> <<checkbox "$gameSettings.contentFilter.PlayerFeminization" false true autocheck>> Forced Player Feminization </div> <div class="option"> <<checkbox "$gameSettings.contentFilter.NPC_Activity" false true autocheck>> NPC activity </div> <div class="option"> <<checkbox "$gameSettings.contentFilter.maleXmale" false true autocheck>> Male & Male </div> <div class="option"> <<checkbox "$gameSettings.contentFilter.maleXfemale" false true autocheck>> Male & Female </div> <div class="option"> <<checkbox "$gameSettings.contentFilter.maleXshemale" false true autocheck>> Male & Trans </div> <div class="option"> <<checkbox "$gameSettings.contentFilter.femaleXfemale" false true autocheck>> Female & Female </div> <div class="option"> <<checkbox "$gameSettings.contentFilter.femaleXshemale" false true autocheck>> Female & Trans </div> <div class="option"> <<checkbox "$gameSettings.contentFilter.shemaleXshemale" false true autocheck>> Trans & Trans </div> </div> </fieldset> <fieldset> <legend>Other</legend> <div class="child-activity-form"> <div class="option"> <<checkbox "$gameSettings.newInteractionSystem" false true autocheck>> New interaction system (Under development) </div> /* <div class="option"> <<checkbox "$gameSettings.feminizationStages" false true autocheck>> Feminization Stages </div> */ <div class="option"> <<checkbox "$gameSettings.NpcCanImproveSkills" false true autocheck>> NPC can improve their skills </div> </div> </fieldset> <div class="padding-top"> <<BackButton "<<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>>">> </div> <</nobr>> /* :: StoryInterface <!-- Фиксированный фоновый слой --> <div id="bg" style="position:fixed;inset:0;z-index:-1"> <img id="bg-img" src="" style="width:100%;height:100%;object-fit:cover; filter:brightness(.2);transition:opacity .6s"> </div> <!-- Обязательный контейнер, куда SugarCube будет рендерить все пассажи --> <div id="passages"></div> */
<<nobr>> <<if $player.money < 10 && $travelMode == 'bus'>> <<set $travelMode = 'walk'>> <</if>> <<if $travelMode == 'walk'>> <<replace "#walk-btn">><div id="walk-btn" class="btn non-interacting"><<button '<img src="Media/Other/walk.jpg" alt="Walk" width="32" height="32">'>><</button>></div><</replace>> <<else>> <<replace "#walk-btn">><div id="walk-btn" class="btn"><<button '<img src="Media/Other/walk.jpg" alt="Walk" width="32" height="32">'>><<set $travelMode = 'walk'>><<include "Update_Travel_Mode_Buttons">><</button>></div><</replace>> <</if>> <<run addHoverTooltip('walk-btn', 'Travel time: 30 min. Cost: $0.')>> <<if $player.money >= 10>> <<if $travelMode == 'bus'>> <<replace "#bus-btn">><div id="bus-btn" class="btn non-interacting"><<button '<img src="Media/Other/bus.jpg" alt="Bus" width="32" height="32">'>><</button>></div><</replace>> <<else>> <<replace "#bus-btn">><div id="bus-btn" class="btn"><<button '<img src="Media/Other/bus.jpg" alt="Bus" width="32" height="32">'>><<set $travelMode = 'bus'>><<include "Update_Travel_Mode_Buttons">><</button>></div><</replace>> <</if>> <<else>> <<replace "#bus-btn">><div id="bus-btn" class="btn non-interacting"><<button '<img src="Media/Other/bus.jpg" alt="Bus" width="32" height="32">'>><</button>></div><</replace>> <</if>> <<run addHoverTooltip('bus-btn', 'Travel time: 10 min. Cost: $10.')>> <<if $playercars && $playercars.length>> <<if $travelMode == 'car'>> <<replace "#car-btn">><div id="car-btn" class="btn non-interacting"><<button '<img src="Media/Other/car.jpg" alt="Car" width="32" height="32">'>><</button>></div><</replace>> <<else>> <<replace "#car-btn">><div id="car-btn" class="btn"><<button '<img src="Media/Other/car.jpg" alt="Car" width="32" height="32">'>><<set $travelMode = 'car'>><<include "Update_Travel_Mode_Buttons">><</button>></div><</replace>> <</if>> <<run addHoverTooltip('car-btn', 'Travel time: 5 min. Cost: $0.')>> <<else>> <<if $travelMode == 'car'>> <<set $travelMode = 'walk'>> <</if>> <<replace "#car-btn">><div id="car-btn" class="btn non-interacting"><<button '<img src="Media/Other/car.jpg" alt="Car" width="32" height="32">'>><</button>></div><</replace>> <<run addHoverTooltip('car-btn', 'Requires a car.')>> <</if>> <</nobr>>
<<nobr>> <<EachLoc>> <<SetBackground "Media/Story/Intro/NightCity.jpg">> <<set _fatherIcon = "Media\\Characters\\QuestChars\\Parents\\" + $skin + "\\face\\1.png">> <<set _motherIcon = "Media\\Characters\\QuestChars\\Parents\\" + $skin + "\\face\\2.png">> <<ChatMessage 'The night in Viceburg was always something special. The city glowed with thousands of lights, but none of them brought warmth. They masked the darkness of the streets and the secrets best left unknown. This was the city where you lived—just an ordinary child, destined to face horrors hidden behind the facade of progress.'>> <<ChatMessage "You (8 years old) sit on the windowsill in your room, looking at the city. Behind the door, you hear your parents' voices.">> <<ChatWithoutNPC "Mother" _motherIcon "We can't stay silent any longer.">> <<ChatWithoutNPC "Father" _fatherIcon "If we do this, they'll find us. They're already close.">> <<ChatWithoutNPC "Father" _fatherIcon "But maybe we still have a chance...">> <<ChatMessage "You didn’t understand what they were talking about, but the fear in their voices made you tense up. That night, you couldn’t sleep.">> <div class="padding-top"> <div class="btn"><<button "Continue" "backstory_2">><</button>></div> </div> <</nobr>>
<<nobr>> <<EachLoc>> <<SetBackground "Media/Locations/Neighborhood/OakStreet/PlayerHome/player_House.jpg">> <<set _ethanIcon = "Media\\Characters\\QuestChars\\Ethan\\face\\1.png">> <<set _sarahIcon = "Media\\Characters\\QuestChars\\Sarah\\face\\1.png">> <<set _amandaIcon = "Media\\Characters\\QuestChars\\Amanda\\face\\1.png">> <<set _robertIcon = "Media\\Characters\\QuestChars\\Robert\\face\\1.png">> <<ChatMessage "After your parents' disappearance, the Ashford family took you in. Robert and Amanda had been friends with your parents, and despite the tragic situation, they gladly welcomed you into their home.">> <<ChatMessage 'You stand at the entrance, with Ethan beside you—a boy with messy brown hair and a wide grin'>> <<DrawImg _ethanIcon>> <<ChatWithoutNPC "Ethan" _ethanIcon "Welcome home!">> <<ChatMessage 'Ethan said, clapping you on the shoulder'>> <<ChatWithoutNPC 'Ethan' _ethanIcon 'You\'re one of us now!'>> <<ChatMessage 'Sarah, Ethan\'s older sister, frowns slightly'>> <<DrawImg _sarahIcon>> <<ChatWithoutNPC 'Sarah' _sarahIcon 'I hope you’re not too noisy'>> <<ChatMessage 'Sarah muttered, crossing her arms'>> <<ChatMessage 'You tried to smile, but inside, you felt empty. Your parents were gone. Only questions and a deep, gnawing fear remained'>> <div class="padding-top"> <div class="btn"><<button "Continue" "backstory_3">><</button>></div> </div> <</nobr>>
<<nobr>> <<EachLoc>> <<SetBackground "Media/Story/Intro/abandoned.jpg">> <<ChatMessage 'Years passed, and you gradually got used to your new life. Ethan became your best friend, and Sarah… well, over time, she started to warm up to you too.'>> <<ChatMessage 'Life in Viceburg was never boring. You often got into trouble—exploring abandoned districts, sneaking into old BioGenesis labs, hoping to find anything that could explain your parents\' disappearance.'>> <<ChatMessage 'But no answers ever came. Only more questions'>> <div class="padding-top"> <div class="btn"><<button "Continue" "backstory_Final">><</button>></div> </div> <</nobr>>
<<nobr>> <<EachLoc>> <<SetBackground "Media/Story/Intro/Night.jpg">> <<ChatMessage 'Ten years had passed, and you still hadn’t found the truth. BioGenesis kept growing, swallowing everything in its path. You felt like something was coming—something big. Something that would change your life forever.'>> <<Chat $player 'Tomorrow marks ten years since they vanished. Maybe it\'s finally time to find out the truth.'>> <<ChatMessage 'you said to yourself'>> <<ChatMessage 'Recently, you and Ethan managed to enroll in a college closely tied to BioGenesis. Perhaps there, you can finally find some answers'>> <div class="padding-top"> <div class="btn"><<button "Continue" $player.info.currentLocation>> <<SetSaveBtn true>> <<set $gameSettings.allowSaves = true>> <<set $canShowStatsBtn = false>> <<set $isPlayer = true>> <<unset $questType $skin>> <</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <div class="page-container-attributes"> <div class="main-container-attributes"> <div class="skill-container-attributes"> <h1 class="title-attributes">Skill Upgrade</h1> <div class="free-points-attributes"> Free Points: <span id="free-points-attributes">$skillpoints</span> </div> <div class="skills-attributes"> <div class="skill-attributes" data-description="Your overall intellectual capacity. It increases the amount of experience points you gain." > <span class="skill-name-attributes">Intelligence</span> <div class="decrease-attributes hidden-attributes">-</div> <span class="skill-level-attributes" id="intelligence">$player.attributes.intelligence.value</span> <div class="increase-attributes">+</div> </div> <div class="skill-attributes" data-description="This skill indicates your moral flexibility. It enables you to engage in certain immoral or provocative actions." > <span class="skill-name-attributes">Corruption</span> <div class="decrease-attributes hidden-attributes">-</div> <span class="skill-level-attributes" id="corruption">$player.attributes.corruption.value</span> <div class="increase-attributes">+</div> </div> <div class="skill-attributes" data-description="This skill measures your physical power, increasing the damage you deal in unarmed combat." > <span class="skill-name-attributes">Strength</span> <div class="decrease-attributes hidden-attributes">-</div> <span class="skill-level-attributes" id="strength">$player.attributes.strength.value</span> <div class="increase-attributes">+</div> </div> <div class="skill-attributes" data-description="Increases your max health point." > <span class="skill-name-attributes">Vitality</span> <div class="decrease-attributes hidden-attributes">-</div> <span class="skill-level-attributes" id="vitality">$player.attributes.vitality.value</span> <div class="increase-attributes">+</div> </div> <div <div class="skill-attributes" data-description="Boosts your stamina, allowing you to perform physical activities for longer periods without fatigue." > <span class="skill-name-attributes">Endurance</span> <div class="decrease-attributes hidden-attributes">-</div> <span class="skill-level-attributes" id="endurance">$player.attributes.endurance.value</span> <div class="increase-attributes">+</div> </div> <div class="skill-attributes" data-description="Determines your agility, improving your chances of dodging attacks." > <span class="skill-name-attributes">Dexterity</span> <div class="decrease-attributes hidden-attributes">-</div> <span class="skill-level-attributes" id="dexterity">$player.attributes.dexterity.value</span> <div class="increase-attributes">+</div> </div> <div class="skill-attributes" data-description="This skill reduces the amount of damage you take, allowing you to withstand more pain." > <span class="skill-name-attributes">Pain Threshold</span> <div class="decrease-attributes hidden-attributes">-</div> <span class="skill-level-attributes" id="defense">$player.attributes.defense.value</span> <div class="increase-attributes">+</div> </div> <div class="skill-attributes" data-description="This skill enhances your ability to persuade others and engage in dialogue. It increases your success in persuasion and helps you build relationships more quickly." > <span class="skill-name-attributes">Speech</span> <div class="decrease-attributes hidden-attributes">-</div> <span class="skill-level-attributes" id="speech">$player.attributes.speech.value</span> <div class="increase-attributes">+</div> </div> <div class="skill-attributes" data-description="Your ability to pick locks. As this skill improves, you’ll be able to unlock more sophisticated locks. Each level boosts your chances of success." > <span class="skill-name-attributes">Lockpick</span> <div class="decrease-attributes hidden-attributes">-</div> <span class="skill-level-attributes" id="lockpick">$player.attributes.lockpick.value</span> <div class="increase-attributes inactive-attributes">+</div> </div> <div class="skill-attributes" data-description="Your expertise in hacking computers and electronic security systems." > <span class="skill-name-attributes">Hacker</span> <div class="decrease-attributes hidden-attributes">-</div> <span class="skill-level-attributes" id="hacker">$player.attributes.hacker.value</span> <div class="increase-attributes inactive-attributes">+</div> </div> <div class="skill-attributes" data-description="This skill determines your effectiveness with firearms, enhancing the damage you deal with guns." > <span class="skill-name-attributes">Guns</span> <div class="decrease-attributes hidden-attributes">-</div> <span class="skill-level-attributes" id="guns">$player.attributes.guns.value</span> <div class="increase-attributes inactive-attributes">+</div> </div> <div class="skill-attributes" data-description="This skill governs your proficiency with melee weapons, boosting the damage you deal in close combat." > <span class="skill-name-attributes">Melee Weapons</span> <div class="decrease-attributes hidden-attributes">-</div> <span class="skill-level-attributes" id="meleeWeapons">$player.attributes.meleeWeapons.value</span> <div class="increase-attributes inactive-attributes">+</div> </div> <div class="skill-attributes" data-description="This skill reflects your talent in performing arts (Dancing, Playing Musical Instruments, Singing)." > <span class="skill-name-attributes">Performer</span> <div class="decrease-attributes hidden-attributes">-</div> <span class="skill-level-attributes" id="performer">$player.attributes.performer.value</span> <div class="increase-attributes inactive-attributes">+</div> </div> </div> <div class="confirm-button-attributes"><<button "Confirm" $player.info.currentLocation>><<include "ConfirmAttributes">><<include "ApplyingAttributes">><<SetSaveBtn true>><</button>></div> </div> <div class="info-panel-attributes"> <h2>Skill Information</h2> <p id="skill-description-attributes"> Select a skill to see its description. </p> </div> </div> </div> <<done>> <<run $attributesPanel = new AttributesPanel()>> <</done>> <</nobr>>
<<nobr>> <<run $player.attributes.lockpick.value = parseInt(document.getElementById('lockpick').textContent, 10)>> <<run $player.attributes.guns.value = parseInt(document.getElementById('guns').textContent, 10)>> <<run $player.attributes.meleeWeapons.value = parseInt(document.getElementById('meleeWeapons').textContent, 10)>> <<run $player.attributes.speech.value = parseInt(document.getElementById('speech').textContent, 10)>> <<run $player.attributes.performer.value = parseInt(document.getElementById('performer').textContent, 10)>> <<run $player.attributes.intelligence.value = parseInt(document.getElementById('intelligence').textContent, 10)>> <<run $player.attributes.corruption.value = parseInt(document.getElementById('corruption').textContent, 10)>> <<run $player.attributes.strength.value = parseInt(document.getElementById('strength').textContent, 10)>> <<run $player.attributes.vitality.value = parseInt(document.getElementById('vitality').textContent, 10)>> <<run $player.attributes.endurance.value = parseInt(document.getElementById('endurance').textContent, 10)>> <<run $player.attributes.dexterity.value = parseInt(document.getElementById('dexterity').textContent, 10)>> <<run $player.attributes.defense.value = parseInt(document.getElementById('defense').textContent, 10)>> <<run $skillpoints = parseInt(document.getElementById('free-points-attributes').textContent, 10)>> <</nobr>>
<<nobr>> <<set $player.status.health._max = 100 + ($player.attributes.vitality.value * 10)>> <<set $player.status.energy._max = 100 + ($player.attributes.endurance.value * 10)>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if $isPlayer == true>> <<ShowNpcIcon $player>> <<include "PlayerAppearance">> <<set _char = $player>> <<else>> <<ShowNpcIcon $interactionNpc>> <<set _canTakeClothOff = false>> <div class="btn padding-top"><<button "Stats">> <<run Dialog.setup("Info")>> <<run Dialog.wiki('<<CharacterStatsView $interactionNpc true>>')>> <<run Dialog.open();>> <</button>></div> <<set _char = $interactionNpc>> <</if>> <<run _dominane = _char.attributes.dominance>> <<run _lust = _char.attributes.lust>> <<run _face = _char.body.face>> <<run _breast = _char.body.breastSize>> <<run _ass = _char.body.buttSize>> <<run _fat = _char.body.fat>> <<run _photoModelRep = $player.info.reputation.photoModel>> <<run _PornActerRep = $player.info.reputation.pornActer>> <<if $isPlayer == false>> <fieldset> <legend>Relationships</legend> <div class="progress-bars-container-narrow"> <<ShowRelationsBar $player $interactionNpc "Both">> </div> </fieldset> <</if>> <fieldset> <legend>Stats</legend> <div class="progress-bars-container-narrow"> <div class="progress-container-narrow"> <div class="progress-title">Dominance</div> <div class="progress-bar-narrow" id="progress-dominance"> <div class="progress" id="dominance-id"></div> </div> <div class="progress-value" id="dominance-id-text"></div> </div> <div class="progress-container-narrow"> <div class="progress-title">Lust</div> <div class="progress-bar-narrow" id="progress-lust"> <div class="progress" id="lust-id"></div> </div> <div class="progress-value" id="lust-id-text"></div> </div> </div> <<if $isPlayer == true>> <<set _skipTest = "Skipping classes: " + $player.characterEvents.getOrRegisterEvent($player.info.id, "SkippedClass", 0)>> <p style="text-align: center;">_skipTest</p> <</if>> </fieldset> <fieldset> <legend>Body</legend> <div class="progress-bars-container-narrow"> <div class="progress-container-narrow"> <div class="progress-title">Face femininity</div> <div class="progress-bar-narrow" id="progress-feminity"> <div class="progress" id="face-id"></div> </div> <div class="progress-value" id="face-id-text"></div> </div> <div class="progress-container-narrow"> <div class="progress-title">Breast size</div> <div class="progress-bar-narrow" id="progress-feminity"> <div class="progress" id="breast-id"></div> </div> <div class="progress-value" id="breast-id-text"></div> </div> <div class="progress-container-narrow"> <div class="progress-title">Ass size</div> <div class="progress-bar-narrow" id="progress-feminity"> <div class="progress" id="ass-id"></div> </div> <div class="progress-value" id="ass-id-text"></div> </div> <div class="progress-container-narrow"> <div class="progress-title">Weight</div> <div class="progress-bar-narrow" id="progress-feminity"> <div class="progress" id="fat-id"></div> </div> <div class="progress-value" id="fat-id-text"></div> </div> </div> </fieldset> <<if $isPlayer == true>> <fieldset> <legend>Reputation</legend> <div class="progress-bars-container-narrow"> <div class="progress-container-narrow"> <div class="progress-title">Photo model</div> <div class="progress-bar-narrow" id="progress-PhotoModelRep"> <div class="progress" id="PhotoModelRep-id"></div> </div> <div class="progress-value" id="PhotoModelRep-id-text"></div> </div> <div class="progress-container-narrow"> <div class="progress-title">Porn actor</div> <div class="progress-bar-narrow" id="progress-PornActorRep"> <div class="progress" id="PornActorRep-id"></div> </div> <div class="progress-value" id="PornActorRep-id-text"></div> </div> </div> </fieldset> <</if>> <<if $fromPhone == true>> <div class="btn" style="margin: 10px;"><<button "Back" "Phone">><<unset $fromPhone>><</button>></div> <<elseif $fromInteractions == true>> <div class="btn" style="margin: 10px;"><<button "Back" "CharacterInteractions">><<unset $fromInteractions $isPlayer>><</button>></div> <<else>> <div class="btn" style="margin: 10px;"><<button "Back" $player.info.currentLocation>><<unset $interactionNpc $indexNPC>> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>><</button>></div> <</if>> <<if $isPlayer == true>> <div class="padding-up"> <<linkreplace "All Characters">> <<set _chars = []>> <<for _i = 0; _i < $Characters.length; _i++>> <<run _chars.push(_i)>> <</for>> <<DisplayCharacters _chars>> <</linkreplace>> </div> <</if>> <<done>> <<run UpdateProgressBar("dominance-id", _dominane.value, _dominane.max)>> <<run DisplayText("dominance-id-text", Math.trunc(_dominane.value) + "/" + _dominane.max)>> <<run UpdateProgressBar("lust-id", _lust.value, _lust.max)>> <<run DisplayText("lust-id-text", Math.trunc(_lust.value) + "/" + _lust.max)>> <<run UpdateProgressBar("face-id", _face.value, _face.max)>> <<run DisplayText("face-id-text", Math.trunc(_face.value) + "/" + _face.max)>> <<run UpdateProgressBar("breast-id", _breast.value, _breast.max)>> <<run DisplayText("breast-id-text", Math.trunc(_breast.value) + "/" + _breast.max)>> <<run UpdateProgressBar("ass-id", _ass.value, _ass.max)>> <<run DisplayText("ass-id-text", Math.trunc(_ass.value) + "/" + _ass.max)>> <<run UpdateProgressBar("fat-id", _fat.value, _fat.max)>> <<run DisplayText("fat-id-text", Math.trunc(_fat.value) + "/" + _fat.max)>> <<if $isPlayer == true>> <<run UpdateProgressBar("PhotoModelRep-id", _photoModelRep.value, _photoModelRep.max)>> <<run DisplayText("PhotoModelRep-id-text", Math.trunc(_photoModelRep.value) + "/" + _photoModelRep.max)>> <<run UpdateProgressBar("PornActorRep-id", _PornActerRep.value, _PornActerRep.max)>> <<run DisplayText("PornActorRep-id-text", Math.trunc(_PornActerRep.value) + "/" + _PornActerRep.max)>> <</if>> <</done>> <</nobr>>
<<nobr>> <div class="chat-container"> <p>$player.info.firstName $player.info.secondName. $player.info.age.value-year-old <<print $player.gender()>>. With a <<if $player.clothes.hasClothingType(1) == false && $player.clothes.hasClothingType(2) == false>> __<<link $player.getBreastText()>> <<script>> Dialog.setup(SugarCube.State.variables.player.getBreastText()); Dialog.wiki(SugarCube.State.variables.player.getBreastImage()); Dialog.open(); <</script>> <</link>>__ <<else>> <span style="color: #fff;"><<print $player.getBreastText()>></span> under clothing <</if>> and <<if $player.clothes.hasClothingType(0) == false && $player.clothes.hasClothingType(3) == false>> __<<link $player.getButtText()>> <<script>> Dialog.setup(SugarCube.State.variables.player.getButtText()); Dialog.wiki(SugarCube.State.variables.player.getAssImage()); Dialog.open(); <</script>> <</link>>__ <<else>> <span style="color: #fff;"><<print $player.getButtText()>></span> under clothing. <</if>> <<if $player.clothes.clothingItems.size > 0>> <<set _isHasCloth = false>> <br><<print $player.pronoun()>> is wearing: <<for _i = 0; _i <= 8; _i++>> <<capture _i>> <<if $player.clothes.hasClothingType(_i)>> <<if (_i == 0 && $player.clothes.hasClothingType(3)) || (_i == 1 && $player.clothes.hasClothingType(2))>> <<continue>> <</if>> <<if _isHasCloth == true>> , <</if>> <<set _isHasCloth = true>> __<<link $player.clothes.getFirstClothingItemByType(_i).name>> <<run Dialog.setup($player.clothes.getFirstClothingItemByType(_i).name)>> <<run Dialog.wiki($player.clothes.getFirstClothingItemByType(_i).getImg())>> <<run Dialog.open();>> <</link>>__ <<capture _i>> __<<link " (take off)" $player.info.currentLocation>> <<run $player.takeOffClothing($player.clothes.getFirstClothingItemByType(_i))>> <</link>>__ <</capture>> <</if>> <</capture>> <</for>> <</if>> <<if $player.clothes.hasClothingType(0) == false && $player.clothes.hasClothingType(3) == false>> <<if $player.genitalia() == "Penis">> . You have a <<print Math.trunc($player.body.penisSize.value)>>-centimeter penis. <<else>> . You have a vagina. <</if>> <</if>> </p> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "PlayerAppearance">> <<if $isPlayerStats == true>> <<DisplayCharStats $player>> <<else>> <<DisplayCharStats $interactionNpc>> <</if>> <div class="padding-top"> <div class="btn" style="margin: 10px;"><<button "Back" $player.info.currentLocation>><<unset $interactionNpc $indexNPC>> <<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>><</button>></div> </div> <div class="padding-top"> <<if $isPlayer == true>> <div class="padding-up"> <<linkreplace "All Characters">> <<set _chars = []>> <<for _i = 0; _i < $Characters.length; _i++>> <<run _chars.push(_i)>> <</for>> <<DisplayCharacters _chars>> <</linkreplace>> </div> <</if>> </div> <</nobr>>
<<nobr>> <<if $busFarePending>> <<set $player.money -= 10>> <<set $busFarePending = false>> <</if>> <<LeaveInteractionSettings>> <<goto $busNextLocation>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<LeaveInteractionSettings>> /* <<if !$testVar>> <<set $testVar = 0>> <</if>> */ <<set _event = Random(1,5)>> /* <<set $testVar += 1>> <<set _event = $testVar>> */ <<switch _event>> <<case 1>> <<include "Bus_Event_CrowdTouch">> <<case 2>> <<include "Bus_Event_Seatmate">> <<case 3>> <<include "Bus_Event_Conductor">> <<case 4>> <<include "Bus_Event_Rush">> <<case 5>> <<include "Bus_Event_Private">> <</switch>> /* <<if $testVar > 5>> <<set $testVar = 0>> <</if>> */ <</nobr>>
<<nobr>> <<set $npcType = Random(1,2)>> <<if $npcType == 1>> <<set $npc = {name:'Stranger', gender:'Male', photo:'Media\\Characters\\QuestChars\\Other\\Unknown.jpg', type:'dominant'}>> <<else>> <<set $npc = {name:'Stranger', gender:'Male', photo:'Media\\Characters\\QuestChars\\Other\\Unknown.jpg', type:'submissive'}>> <</if>> <<ChatMessage 'The bus is absolutely packed, bodies grinding together with every bump and turn. Sweat and cologne mix in the air as strangers press against you from all sides. Suddenly, you feel a deliberate hand sliding along your hip, fingers tracing the curve of your ass through your clothes, squeezing firmly as if testing your reaction.'>> <<set _msg = ($npc.type == 'dominant' ? 'Fuck, this crowd is perfect... Your ass feels incredible pressed against me. I could fuck you right here and no one would notice.' : 'God, the way you\'re pressed against me... I can feel every curve of your body. Please don’t move away—I’m getting so hard just feeling you.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <div class="btn padding-top"> <div class="btn padding-top"><<button "Pull away sharply" "Bus_CrowdTouch_PullAway">><</button>></div> </div> <div class="btn padding-top"> <div class="btn padding-top"><<button "Ignore and endure" "Bus_CrowdTouch_Ignore">><</button>></div> </div> <div class="btn padding-top"> <<if $player.attributes.corruption.value >= 2>> <div class="btn padding-top"><<button "Press back teasingly" "Bus_CrowdTouch_Press">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='press-back'><<button "Press back teasingly">><</button>></div> <<done>> <<run addHoverTooltip('press-back', 'Requires corruption level 2 or higher')>> <</done>> <</if>> </div> <div class="btn padding-top"> <<if $player.attributes.corruption.value >= 4>> <div class="btn padding-top"><<button "Guide hand to your crotch">> <<goto "Bus_CrowdTouch_Guide">> <</button>></div> <<else>> <div class="btn padding-top non-interacting" id='guide-hand'><<button "Guide hand to your crotch">><</button>></div> <<done>> <<run addHoverTooltip('guide-hand', 'Requires corruption level 4 or higher')>> <</done>> <</if>> </div> <</nobr>>
<<nobr>> <<Chat $player 'Hey, back off! Keep your fucking hands to yourself, you pervert.'>> <<set _msg = ($npc.type == 'dominant' ? 'Tch, you\'re no fun... But I can tell your body wants it. That ass was practically begging for my touch.' : 'Sorry, I didn’t mean to—please, don’t be mad. I just couldn’t help myself feeling your curves.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(1,3)>> <<SetCharProgression $player "dominance" _randomValueChange true>> <div class="btn padding-top"><<button "Continue" "Bus_GoToNextLocation">><</button>></div> <</nobr>>
<<nobr>> <<ChatMessage 'You pretend not to notice his wandering hands, letting the ride continue in tense silence. His fingers continue exploring, growing bolder with each passing minute, while you try to focus on anything but the heat building between your legs.'>> <div class="btn padding-top"><<button "Continue" "Bus_GoToNextLocation">><</button>></div> <</nobr>>
<<nobr>> <<Chat $player 'The crowd\'s tight... might as well enjoy it. *You press your ass back firmly against his hand, grinding slowly.*'>> <<set _msg = ($npc.type == 'dominant' ? 'That\'s the spirit... Let me feel more of you. Fuck, your ass is perfect—I want to grab it harder.' : 'Oh, you\'re pressing back? That\'s so hot—keep grinding against me like that. I can feel you getting wet through your clothes.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(1,3)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <div class="btn padding-top"><<button "Continue" "Bus_GoToNextLocation">><</button>></div> <div class="btn padding-top"> <<if $player.attributes.corruption.value >= 5>> <div class="btn padding-top"><<button "Let him fuck you" "Bus_CrowdTouch_Fuck">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='fuck-crowd'><<button "Let him fuck you">><</button>></div> <<done>> <<run addHoverTooltip('fuck-crowd', 'Requires corruption level 5 or higher')>> <</done>> <</if>> </div> <</nobr>>
<<nobr>> <<ChatMessage 'You guide his hand deeper, the bus’s motion hiding your secret touches as fingers slip under your clothes. His fingers find your most sensitive spots, rubbing and teasing while the crowded bus rocks around you. The thrill of almost getting caught makes every touch electric.'>> <<set _randomValueChange = Random(3,7)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <div class="btn padding-top"><<button "Continue" "Bus_GoToNextLocation">><</button>></div> <</nobr>>
<<nobr>> <<Chat $player 'You think you can just touch me? Turn around—I’m taking what I want now. *You reach back and grab his bulging cock through his pants, squeezing firmly.*'>> <<set _msg = ($npc.type == 'dominant' ? 'Bold... I like it. Show me what you’ve got—stroke it right here in front of everyone.' : 'Oh, wow... Take it, I’m yours. Please don’t stop—I’m so hard for you.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(1,3)>> <<SetCharProgression $player "dominance" _randomValueChange true>> <div class="btn padding-top"><<button "Continue" "Bus_GoToNextLocation">><</button>></div> <</nobr>>
<<nobr>> <<set $npcType = Random(1,2)>> <<if $npcType == 1>> <<set $npc = {name:'Dominant seatmate', gender:'Male', photo:'Media\\Characters\\QuestChars\\Other\\Unknown.jpg', type:'dominant'}>> <<else>> <<set $npc = {name:'Submissive seatmate', gender:'Male', photo:'Media\\Characters\\QuestChars\\Other\\Unknown.jpg', type:'submissive'}>> <</if>> <<ChatMessage 'You sit next to an attractive man on the bus. As the ride progresses, he leans in closer, his leg brushing against yours with deliberate pressure. His masculine scent fills your senses as he shifts, his thigh pressing warmly against your own, the contact sending sparks through your body.'>> <<set _msg = ($npc.type == 'dominant' ? 'Long ride ahead... Mind if I get comfortable? Your thigh feels nice against mine. So soft and warm—I could rub against you all day.' : 'This seat’s a bit cramped... Hope you don’t mind me being so close. Your leg feels amazing pressed against me.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <div class="btn padding-top"> <div class="btn padding-top"><<button "Move away politely" "Bus_Seatmate_MoveAway">><</button>></div> </div> <div class="btn padding-top"> <div class="btn padding-top"><<button "Chat casually" "Bus_Seatmate_Chat">><</button>></div> </div> <div class="btn padding-top"> <<if $player.attributes.corruption.value >= 2>> <div class="btn padding-top"><<button "Flirt boldly" "Bus_Seatmate_Flirt">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='flirt-seat'><<button "Flirt boldly">><</button>></div> <<done>> <<run addHoverTooltip('flirt-seat', 'Requires corruption level 2 or higher')>> <</done>> <</if>> </div> <div class="btn padding-top"> <<if $player.attributes.corruption.value >= 3>> <div class="btn padding-top"><<button "Slide hand up his thigh" "Bus_Seatmate_Touch">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='touch-seat'><<button "Slide hand up his thigh">><</button>></div> <<done>> <<run addHoverTooltip('touch-seat', 'Requires corruption level 3 or higher')>> <</done>> <</if>> </div> <div class="btn padding-top"> <<if $player.attributes.dominance.value >= 2>> <div class="btn padding-top"><<button "Take control of the situation" "Bus_Seatmate_Dominate">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='dominate-seat'><<button "Take control of the situation">><</button>></div> <<done>> <<run addHoverTooltip('dominate-seat', 'Requires dominance level 2 or higher')>> <</done>> <</if>> </div> <</nobr>>
<<nobr>> <<Chat $player 'Excuse me, I need more space. Could you scoot over a bit?'>> <<set _msg = ($npc.type == 'dominant' ? 'Suit yourself... But you’re missing out on what could’ve been a very interesting ride.' : 'Oh, sorry... Didn’t mean to crowd you. I was just enjoying the warmth of your body.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <div class="btn padding-top"><<button "Continue" "Bus_GoToNextLocation">><</button>></div> <</nobr>>
<<nobr>> <<Chat $player 'Yeah, these buses are always packed. Where are you headed? The traffic’s terrible today.'>> <<set _msg = ($npc.type == 'dominant' ? 'Doesn’t matter where I’m going... I’m interested in you. You look like you could use some excitement on this boring ride.' : 'Just downtown... You? Though honestly, talking to you is making this ride much more enjoyable.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <div class="btn padding-top"><<button "Continue" "Bus_GoToNextLocation">><</button>></div> <</nobr>>
<<nobr>> <<Chat $player 'Getting comfortable, huh? I don’t mind... Your leg feels nice rubbing against mine. So strong and firm.'>> <<set _msg = ($npc.type == 'dominant' ? 'Good... Let’s see how far we can take this. Rub your thigh against me harder—I want to feel you.' : 'Oh, really? That’s... exciting. Your touch is making me so hard.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(1,3)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <div class="btn padding-top"><<button "Continue" "Bus_GoToNextLocation">><</button>></div> <</nobr>>
<<nobr>> <<Chat $player 'The ride’s long... *You place your hand on his thigh, slowly sliding it upward under his clothes.*'>> <<set _msg = ($npc.type == 'dominant' ? 'Mmm, bold... Keep going. Slide those fingers higher—I want to feel you touch my cock.' : 'Oh... That feels so good. Your hand is warm... please don’t stop.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(3,7)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <div class="btn padding-top"><<button "Continue" "Bus_GoToNextLocation">><</button>></div> <div class="btn padding-top"> <<if $player.attributes.corruption.value >= 5>> <div class="btn padding-top"><<button "Let him fuck you" "Bus_Seatmate_Fuck">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='fuck-seat'><<button "Let him fuck you">><</button>></div> <<done>> <<run addHoverTooltip('fuck-seat', 'Requires corruption level 5 or higher')>> <</done>> <</if>> </div> <</nobr>>
<<nobr>> <<if $player.gender == 'female'>> <<ChatMessage 'You shift closer on the seat, pulling your pants down just enough under the cover of your jacket. The seatmate, sensing your invitation, slides his fingers away and positions himself discreetly. He uses his cock to penetrate your wet pussy, thrusting rhythmically as the bus’s vibrations mask the motion. The risk of other passengers noticing makes your body pulse with heat, your breaths shallow to stay quiet.'>> <<else>> <<ChatMessage 'You lean closer, subtly undoing your pants as you invite him to take it further. He slips his hand under your clothes, then positions himself to press his cock into your ass, sliding it in with careful, deliberate thrusts. The seat’s confines and the bus’s hum keep your secret, the thrill of exposure making you clench around him with every move.'>> <</if>> <<set _msg = ($npc.type == 'dominant' ? 'You love this, don’t you? Taking it right here where anyone could see. I’m gonna make you cum so hard you’ll never forget this ride.' : 'God, this is wild... You feel so good. I can’t believe we’re doing this right here.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(5,10)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <div class="btn padding-top"><<button "Continue" "Bus_GoToNextLocation">><</button>></div> <</nobr>>
<<nobr>> <<Chat $player 'You’re in my space now. Let’s make this ride interesting. *You grab his hand and place it between your legs.*'>> <<set _msg = ($npc.type == 'dominant' ? 'Challenge accepted... Show me what you’ve got. I’ll make you cum before we reach the next stop.' : 'Oh, yes... Take control. I’m yours—do whatever you want to me.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(1,3)>> <<SetCharProgression $player "dominance" _randomValueChange true>> <div class="btn padding-top"><<button "Continue" "Bus_GoToNextLocation">><</button>></div> <</nobr>>
<<nobr>> <<ChatMessage 'The bus conductor approaches for your fare, but his eyes linger a bit too long on your body, a sly smile playing on his lips. He leans in close as he asks for payment, his uniform straining against his form, the scent of his cologne mixing with the bus’s stale air.'>> <<set $npcType = Random(1,2)>> <<if $npcType == 1>> <<set $npc = {name:'Conductor', gender:'Male', photo:'Media\\Characters\\QuestChars\\Other\\Unknown.jpg', type:'dominant'}>> <<else>> <<set $npc = {name:'Conductor', gender:'Male', photo:'Media\\Characters\\QuestChars\\Other\\Unknown.jpg', type:'submissive'}>> <</if>> <<set _msg = ($npc.type == 'dominant' ? 'Fare’s due... unless you’ve got something better to offer? I’ve seen the way you’ve been looking at me—maybe we can work out a private arrangement.' : 'Um, fare please... Or maybe we can work something out? You look like someone who knows how to have fun.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <div class="btn padding-top"><<button "Pay fare normally" "Bus_Conductor_Pay">><</button>></div> <div class="btn padding-top"> <<if $player.attributes.corruption.value >= 2 && $player.gender != "Male">> <div class="btn padding-top"><<button "Flash for free ride" "Bus_Conductor_Flash">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='flash-cond'><<button "Flash for free ride">><</button>></div> <<done>> <<run addHoverTooltip('flash-cond', 'Requires corruption level 2 or higher')>> <</done>> <</if>> </div> <div class="btn padding-top"> <<if $player.attributes.corruption.value >= 3>> <div class="btn padding-top"><<button "Offer sexual service" "Bus_Conductor_Offer">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='offer-cond'><<button "Offer sexual service">><</button>></div> <<done>> <<run addHoverTooltip('offer-cond', 'Requires corruption level 3 or higher')>> <</done>> <</if>> </div> <</nobr>>
<<nobr>> <<Chat $player 'Here’s the fare. Keep the change if you want.'>> <<set _msg = ($npc.type == 'dominant' ? 'Thanks... But you could’ve made it more fun. Next time, maybe offer me something more interesting than money.' : 'Thanks... Have a good ride. Though I wouldn’t mind if you wanted to chat more.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <div class="btn padding-top"><<button "Continue" "Bus_GoToNextLocation">><</button>></div> <</nobr>>
<<nobr>> <<Chat $player 'How about this instead? *You discreetly lift your shirt, flashing your bare breasts at him for a tantalizing moment.*'>> <<set _msg = ($npc.type == 'dominant' ? 'Fuck, that’s hot... Those tits are perfect. Ride’s on me—show me more and I’ll make it worth your while.' : 'Oh, wow... That’s... incredible. You’re making me so hard right now. Free ride for you.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(3,7)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <<set $busFarePending = false>> <div class="btn padding-top"><<button "Continue" "Bus_GoToNextLocation">><</button>></div> <</nobr>>
<<nobr>> <<Chat $player 'I’ve got something better... *You lean in and whisper.* How about I suck your cock in the back of the bus? Or maybe you want to fuck me right here?'>> <<set _msg = ($npc.type == 'dominant' ? 'Hell yes... Let’s go to the back. I’m going to fuck you so hard you’ll be dripping cum the whole ride.' : 'Really? Okay, if you insist... I’ve never done this on the job before, but you’re too tempting to resist.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(5,10)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <div class="btn padding-top"> <div class="btn padding-top"><<button "Suck him off in the back" "Bus_Conductor_Suck">><</button>></div> </div> <div class="btn padding-top"> <<if $player.attributes.corruption.value >= 5>> <div class="btn padding-top"><<button "Let him fuck you" "Bus_Conductor_Fuck">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='fuck-cond'><<button "Let him fuck you">><</button>></div> <<done>> <<run addHoverTooltip('fuck-cond', 'Requires corruption level 5 or higher')>> <</done>> <</if>> </div> <div class="btn padding-top"><<button "Change your mind" "Bus_GoToNextLocation">><</button>></div> <</nobr>>
<<nobr>> <<ChatMessage 'You lead the conductor to the back of the bus, where the seats are mostly empty. Kneeling discreetly, you undo his pants and take his hard cock into your mouth, sucking eagerly as he stifles moans. The bus’s hum masks the sounds, and the risk of getting caught only heightens your arousal.'>> <<set _msg = ($npc.type == 'dominant' ? 'Fuck, your mouth is perfect... Suck it harder, slut. I want to cum down your throat.' : 'Oh god, your lips feel so good... Keep going, please, I’m so close.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(5,10)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <<set $busFarePending = false>> <div class="btn padding-top"><<button "Continue" "Bus_GoToNextLocation">><</button>></div> <</nobr>>
<<nobr>> <<if $player.gender == 'female'>> <<ChatMessage 'You guide the conductor to a secluded corner of the bus, your back against the window as he pulls your pants down just enough. His cock slides into your wet pussy, thrusting hard and fast while the bus’s motion disguises your movements. The danger of being seen makes your body tremble, your moans muffled against his shoulder.'>> <<else>> <<ChatMessage 'In a hidden nook at the back of the bus, you turn and brace against the seat as he undoes your pants. His cock presses into your ass, sliding in with a slow, burning stretch. Each thrust is careful but deep, the thrill of the forbidden act making you grip the seat tightly to stay quiet.'>> <</if>> <<set _msg = ($npc.type == 'dominant' ? 'You’re mine now... Taking my cock like this on my bus? I’m gonna fill you up and send you back to your seat dripping.' : 'This is insane... You feel so fucking good. I can’t believe we’re doing this right here.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(5,10)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <<set $busFarePending = false>> <div class="btn padding-top"><<button "Continue" "Bus_GoToNextLocation">><</button>></div> <</nobr>>
<<nobr>> <<Chat $player 'I’m not paying. Let me ride for free, or else.'>> <<set _msg = ($npc.type == 'dominant' ? 'Tch, fine... But don’t push it.' : 'Okay, okay... Free ride.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(1,3)>> <<SetCharProgression $player "dominance" _randomValueChange true>> <<set $busFarePending = false>> <div class="btn padding-top"><<button "Continue" "Bus_GoToNextLocation">><</button>></div> <</nobr>>
<<nobr>> <<set $npcType = Random(1,2)>> <<set $npcGender = Random(1,2)>> <<if $npcType == 1>> <<if $npcGender == 1>> <<set $npc = {name:'Stranger', gender:'Male', photo:'Media\\Characters\\QuestChars\\Other\\Unknown.jpg', type:'dominant'}>> <<else>> <<set $npc = {name:'Stranger', gender:'Female', photo:'Media\\Characters\\QuestChars\\Other\\Unknown.jpg', type:'dominant'}>> <</if>> <<else>> <<if $npcGender == 1>> <<set $npc = {name:'Stranger', gender:'Male', photo:'Media\\Characters\\QuestChars\\Other\\Unknown.jpg', type:'submissive'}>> <<else>> <<set $npc = {name:'Stranger', gender:'Female', photo:'Media\\Characters\\QuestChars\\Other\\Unknown.jpg', type:'submissive'}>> <</if>> <</if>> <<set _msg = 'The bus is absolutely packed today, people shoving and pressing from all sides. It’s a chaotic ride, but the close quarters offer... opportunities. Amid the crowd, you notice ' + ($npc.gender == 'Male' ? 'a man' : 'a woman') + ' standing close, their body brushing against yours with every sway of the bus.'>> <<ChatMessage _msg>> <<set _randomValueChange = Random(1,3)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <div class="btn padding-top"><<button "Continue" "Bus_GoToNextLocation">><</button>></div> <div class="btn padding-top"> <<if $player.attributes.corruption.value >= 3>> <div class="btn padding-top"><<button "Touch their butt" "Bus_Rush_Touch">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='touch-rush'><<button "Touch their butt">><</button>></div> <<done>> <<run addHoverTooltip('touch-rush', 'Requires corruption level 3 or higher')>> <</done>> <</if>> </div> <</nobr>>
<<nobr>> <<set _msg = 'This crowd’s tight... *You subtly slide your hand down, brushing against ' + ($npc.gender == 'Male' ? 'his' : 'her') + ' butt, giving it a light squeeze as the bus sways.*'>> <<Chat $player _msg>> <<set _resistChance = Random(1,3)>> <<if _resistChance == 1>> <<goto "Bus_Rush_Touch_Resist">> <<else>> <<if $npc.gender == 'Male'>> <<set _msg = ($npc.type == 'dominant' ? 'Well, aren’t you bold? Keep that hand there—I like it. Maybe I’ll return the favor.' : 'Oh! Your hand... it feels good. Don’t stop, please, I’m already getting hard.')>> <<else>> <<set _msg = ($npc.type == 'dominant' ? 'Naughty move... You like my ass, huh? Keep going, and I might let you feel more.' : 'Oh my... Your hand feels so daring. Please, keep touching me—I’m getting so turned on.')>> <</if>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(3,7)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <div class="btn padding-top"><<button "Continue" "Bus_GoToNextLocation">><</button>></div> <<if $npc.gender == 'Male'>> <div class="btn padding-top"> <<if $player.attributes.corruption.value >= 4>> <div class="btn padding-top"><<button "Slide hand to his crotch" "Bus_Rush_Touch_Male">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='touch-male-crotch'><<button "Slide hand to his crotch">><</button>></div> <<done>> <<run addHoverTooltip('touch-male-crotch', 'Requires corruption level 4 or higher')>> <</done>> <</if>> </div> <<else>> <div class="btn padding-top"> <<if $player.attributes.corruption.value >= 4>> <div class="btn padding-top"><<button "Slide hand under her skirt" "Bus_Rush_Touch_Female">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='touch-female-skirt'><<button "Slide hand under her skirt">><</button>></div> <<done>> <<run addHoverTooltip('touch-female-skirt', 'Requires corruption level 4 or higher')>> <</done>> <</if>> </div> <</if>> <</if>> <</nobr>>
<<nobr>> <<if $npc.gender == 'Male'>> <<ChatMessage 'The man stiffens, pulling away slightly as he glares at you.'>> <<set _msg = 'Hey, what do you think you’re doing? Keep your hands to yourself.'>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<else>> <<ChatMessage 'The woman tenses, stepping back as she shoots you a sharp look.'>> <<set _msg = 'Excuse me, don’t touch me like that.'>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <</if>> <<if $player.attributes.dominance.value >= 3>> <div class="btn padding-top"><<button "Push past their resistance" "Bus_Rush_Touch_Resist_Continue">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='resist-push'><<button "Push past their resistance">><</button>></div> <<done>> <<run addHoverTooltip('resist-push', 'Requires dominance level 3 or higher')>> <</done>> <</if>> <div class="btn padding-top"><<button "Back off" "Bus_GoToNextLocation">><</button>></div> <</nobr>>
<<nobr>> <<set _msg = ($npc.gender == 'Male' ? 'Relax, you’ll like this... *You press closer, hand lingering on his butt, your confidence unwavering.*' : 'Come on, don’t be shy... *You keep your hand on her, a bold smirk on your face as you hold her gaze.*')>> <<Chat $player _msg>> <<if $npc.gender == 'Male'>> <<set _msg = ($npc.type == 'dominant' ? 'Tch, you’re persistent... Fine, let’s see how far you dare to go.' : 'Okay, okay... Your confidence is... kind of hot. Keep going.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(3,7)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <<SetCharProgression $player "dominance" _randomValueChange true>> <div class="btn padding-top"><<button "Continue" "Bus_GoToNextLocation">><</button>></div> <<if $player.attributes.corruption.value >= 4>> <div class="btn padding-top"><<button "Slide hand to his crotch" "Bus_Rush_Touch_Male">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='touch-male-crotch'><<button "Slide hand to his crotch">><</button>></div> <<done>> <<run addHoverTooltip('touch-male-crotch', 'Requires corruption level 4 or higher')>> <</done>> <</if>> <<else>> <<set _msg = ($npc.type == 'dominant' ? 'You’ve got nerve... Alright, I’ll play along. Touch me more, let’s make this fun.' : 'Wow, you’re bold... Okay, I’m in. Keep touching me, please.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(3,7)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <<SetCharProgression $player "dominance" _randomValueChange true>> <div class="btn padding-top"><<button "Continue" "Bus_GoToNextLocation">><</button>></div> <<if $player.attributes.corruption.value >= 4>> <div class="btn padding-top"><<button "Slide hand under her skirt" "Bus_Rush_Touch_Female">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='touch-female-skirt'><<button "Slide hand under her skirt">><</button>></div> <<done>> <<run addHoverTooltip('touch-female-skirt', 'Requires corruption level 4 or higher')>> <</done>> <</if>> <</if>> <</nobr>>
<<nobr>> <<Chat $player 'Let’s see how you like this... *Your hand slides further, brushing against his crotch, feeling his hardness through his pants.*'>> <<set _msg = ($npc.type == 'dominant' ? 'Fuck, you’re getting me hard. Keep stroking, and I might just take you right here.' : 'Oh god, your touch... I’m so hard for you. Please, keep going.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(3,7)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <div class="btn padding-top"><<button "Continue" "Bus_GoToNextLocation">><</button>></div> <</nobr>>
<<nobr>> <<Chat $player 'This is too tempting... *Your hand slips under her skirt, fingers grazing her inner thighs, feeling the heat of her skin.*'>> <<set _msg = ($npc.type == 'dominant' ? 'Mmm, you’re daring. Keep going—touch me where I’m wet, and I’ll make this ride unforgettable.' : 'Oh, your fingers... they’re so close. Please, touch me more—I’m already so wet.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(3,7)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <div class="btn padding-top"><<button "Continue" "Bus_GoToNextLocation">><</button>></div> <</nobr>>
<<nobr>> <<set $npcType = Random(1,2)>> <<if $npcType == 1>> <<set $npc = {name:'Mysterious stranger', gender:'Male', photo:'Media\\Characters\\QuestChars\\Other\\Unknown.jpg', type:'dominant'}>> <<else>> <<set $npc = {name:'Mysterious stranger', gender:'Male', photo:'Media\\Characters\\QuestChars\\Other\\Unknown.jpg', type:'submissive'}>> <</if>> <<ChatMessage 'The bus empties out, leaving you mostly alone with a mysterious man who slides into the seat next to you, whispering an intriguing proposition.'>> <<goto "Bus_Private_Proposition">> <</nobr>>
<<nobr>> <<ChatMessage 'The bus is nearly empty, the hum of the engine filling the quiet as the man leans closer, his breath hot against your ear. His voice is low, dripping with intent, and his eyes lock onto yours with a hunger that makes your pulse race.'>> <<set _msg = ($npc.type == 'dominant' ? 'Nobody’s watching, sweetheart. How about you slide out of those pants and let me fuck you right here? I’ll make you scream so loud the driver’ll hear it.' : 'God, it’s just us now... I’ve been watching you all ride. Can I touch you? Please, I’m so fucking hard just sitting next to you.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <div class="btn padding-top"> <div class="btn padding-top"><<button "Decline politely" "Bus_Private_Decline">><</button>></div> </div> <div class="btn padding-top"> <<if $player.attributes.corruption.value >= 2>> <div class="btn padding-top"><<button "Tease him with a touch" "Bus_Private_Tease">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='tease-private'><<button "Tease him with a touch">><</button>></div> <<done>> <<run addHoverTooltip('tease-private', 'Requires corruption level 2 or higher')>> <</done>> <</if>> </div> <div class="btn padding-top"> <<if $player.attributes.corruption.value >= 4>> <div class="btn padding-top"><<button "Invite him to fuck you" "Bus_Private_Fuck">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='fuck-private'><<button "Invite him to fuck you">><</button>></div> <<done>> <<run addHoverTooltip('fuck-private', 'Requires corruption level 4 or higher')>> <</done>> <</if>> </div> <div class="btn padding-top"> <<if $player.attributes.dominance.value >= 3>> <div class="btn padding-top"><<button "Take control and make him beg" "Bus_Private_Dominate">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='dominate-private'><<button "Take control and make him beg">><</button>></div> <<done>> <<run addHoverTooltip('dominate-private', 'Requires dominance level 3 or higher')>> <</done>> <</if>> </div> <</nobr>>
<<nobr>> <<Chat $player 'Thanks, but I’m not interested. Let’s just enjoy the ride, okay?'>> <<set _msg = ($npc.type == 'dominant' ? 'Tch, your loss. That body’s begging for it, but I’ll wait—you’ll come around.' : 'Oh, okay... Sorry if I came on too strong. You’re just so damn hot.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(1,3)>> <<SetCharProgression $player "dominance" _randomValueChange true>> <div class="btn padding-top"><<button "Continue" "Bus_GoToNextLocation">><</button>></div> <</nobr>>
<<nobr>> <<Chat $player 'Oh, you’re bold... *You slide your hand onto his thigh, fingers grazing dangerously close to his crotch, teasing his obvious bulge.*'>> <<set _msg = ($npc.type == 'dominant' ? 'Fuck, you’re playing with fire. Keep that up, and I’ll have you bent over this seat in seconds.' : 'Oh god, your touch... It’s driving me crazy. Please, don’t stop—I’m so fucking hard for you.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(3,7)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <div class="btn padding-top"><<button "Continue" "Bus_GoToNextLocation">><</button>></div> <</nobr>>
<<nobr>> <<if $player.gender == 'female'>> <<Chat $player 'Let’s make this ride unforgettable... *You slide your pants down just enough, inviting him closer.*'>> <<ChatMessage 'He wastes no time, his hands rough as he pulls you close, his hard cock pressing against your wet pussy. The empty bus gives you just enough cover as he thrusts deep, each movement rocking you against the seat, the thrill of the forbidden making your body shudder with every stroke.'>> <<else>> <<Chat $player 'Fuck it, let’s do this... *You undo your zipper, turning slightly to give him access.*'>> <<ChatMessage 'He grips your hips, his cock sliding into your ass with a slow, burning intensity. The quiet bus amplifies every sensation, his thrusts deep and deliberate as you brace against the seat, biting your lip to keep from moaning too loud.'>> <</if>> <<set _msg = ($npc.type == 'dominant' ? 'Fuck, you’re so tight... You love taking my cock like a slut, don’t you? I’m gonna fill you up right here.' : 'God, this is fucking wild... You feel so good, I can’t hold back much longer.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(5,10)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <div class="btn padding-top"><<button "Continue" "Bus_GoToNextLocation">><</button>></div> <</nobr>>
<<nobr>> <<Chat $player 'You don’t get to make the rules here... *You grab his wrist and guide his hand to your crotch, smirking.* Beg for it, or you get nothing.'>> <<set _msg = ($npc.type == 'dominant' ? 'Oh, you’re feisty... Fine, I’ll play your game. Please, let me touch you—I’m fucking dying to feel you.' : 'Oh, fuck... Please, I’ll do anything. I need you so bad, just tell me what to do.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(3,7)>> <<SetCharProgression $player "dominance" _randomValueChange true>> <div class="btn padding-top"><<button "Continue" "Bus_GoToNextLocation">><</button>></div> <</nobr>>
<<nobr>> <<if $player.gender == 'female'>> <<ChatMessage 'You subtly shift your stance, spreading your legs slightly to invite the stranger’s advances. The crowd’s chaos hides your movements as he presses closer, his hard cock grinding against your ass through your clothes. With a quick tug, your pants are loosened just enough, and you feel him slide inside you, his thrusts deep and urgent, masked by the bus’s swaying. The thrill of being fucked in public sends shivers through you, your pussy clenching around him as he groans softly into your ear.'>> <<else>> <<ChatMessage 'You press back, signaling your consent, and feel the stranger’s hand deftly undo your zipper. His cock, already hard, presses against your ass before sliding inside, the tight heat overwhelming as he fucks you discreetly. The crowd’s obliviousness heightens the intensity, each thrust pushing you closer to the edge while you bite your lip to stay silent.'>> <</if>> <<set _msg = ($npc.type == 'dominant' ? 'Fuck, you’re so tight... Taking my cock like this in public? You’re a filthy slut, and I’m gonna fill you up right here.' : 'God, you feel so good... I can’t believe we’re doing this with everyone around. I’m so close already.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(5,10)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <div class="btn padding-top"><<button "Continue" "Bus_GoToNextLocation">><</button>></div> <</nobr>>
<<nobr>> <<if getQuestState("ethan_quest_01") == "active" && $player.inventory.hasItem("NovaGear X") && getTaskState("ethan_quest_01", "Purchase a game console")>> <<run completeTaskByQuestID("ethan_quest_01", "Purchase a game console")>> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $gameSettings.allowSaves = false>> <<set $canShowStatsBtn = false>> <div class="btn-container padding-top"> <<if $player.money >= 250 && $player.attributes.speech.value < $player.attributes.speech.max && $player.status.energy.value >= 10>> <div class="btn"><<button "Oratory Lessons ($250)" "PC_Lessons">><<set $trainingType = "speech">><</button>></div> <<else>> <div class="btn non-interacting"><<button "Oratory Lessons ($250)">><</button>></div> <</if>> <<if $player.money >= 250 && $player.attributes.dominance.value < $player.attributes.dominance.max && $player.status.energy.value >= 10>> <div class="btn"><<button "Ego Training ($250)" "PC_Lessons">><<set $trainingType = "dominance">><</button>></div> <<else>> <div class="btn non-interacting"><<button "Ego Training ($250)">><</button>></div> <</if>> <<if $player.characterEvents.isEventRegistered($player.info.id, "GetFreelanceJob") == false && $player.dailyEvents.isEventRegistered($player.info.id, "RefuseFreelanceJob") == false>> <<if $player.attributes.intelligence.value > 0>> <div class="btn"><<button "Freelance Job" "PC_AcceptFreelanceJob">><</button>></div> <<else>> <div class="btn non-interacting" id="freelance-btn"><<button "Freelance Job">><</button>></div> <<done>> <<run addHoverTooltip('freelance-btn', 'Intelligence Level Too Low')>> <</done>> <</if>> <<elseif $player.dailyEvents.isEventRegistered($player.info.id, "RefuseFreelanceJob") == true>> <div class="btn non-interacting" id="freelance-btn"><<button "Freelance Job">><</button>></div> <<done>> <<run addHoverTooltip('freelance-btn', 'You\'ve already looked at today\'s assignments.')>> <</done>> <<elseif $player.status.energy.value >= 15>> <div class="btn"><<button 'Resume Work ($freelanceJob.progress/100)' "PC_ResumeWork">><</button>></div> <<else>> <div class="btn non-interacting" id="freelance-btn"><<button "Resume Work ($freelanceJob.progress/100)">><</button>></div> <<done>> <<run addHoverTooltip('freelance-btn', 'You\'re too tired')>> <</done>> <</if>> <div class="btn"><<button "Watch porn" "PC_WatchPorn_ChooseType">><</button>></div> </div> <div class="btn padding-top"><<button "Back" $player.info.currentLocation>> <<set $gameSettings.allowSaves = true>> <<set $canShowStatsBtn = true>> <</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $player.money -= 250>> <<SpendEnergy $player 10>> <<SpendTimeWithoutUpdate 30>> <<set _randomIncrease = Random(5, 20) + $player.attributes.intelligence.value>> <<SetCharProgression $player $trainingType _randomIncrease true>> <div class="btn padding-top"><<button "Continue" "ComputerSystem">><<unset $trainingType>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $freelanceJob = {salary: 0, progress: 0}>> <<ChatMessage 'The higher your intelligence, the more money you can be offered for a job. You can only view one assignment per day.'>> <<switch $player.attributes.intelligence.value>> <<case 1>> <<set $freelanceJob.salary = Random(100, 180)>> <<case 2>> <<set $freelanceJob.salary = Random(180, 350)>> <<case 3>> <<set $freelanceJob.salary = Random(350, 500)>> <<case 4>> <<set $freelanceJob.salary = Random(500, 700)>> <<case 5>> <<set $freelanceJob.salary = Random(700, 900)>> <<case 6>> <<set $freelanceJob.salary = Random(900, 1200)>> <<case 7>> <<set $freelanceJob.salary = Random(1200, 1800)>> <<case 8>> <<set $freelanceJob.salary = Random(1800, 3000)>> <<case 9>> <<set $freelanceJob.salary = Random(3000, 5000)>> <<case 10>> <<set $freelanceJob.salary = Random(5000, 10000)>> <</switch>> <<set _msgSalary = 'You\'ll have a $' + $freelanceJob.salary + ' job offer'>> <<ChatMessage _msgSalary>> <div class="btn padding-top"><<button "Accept" "ComputerSystem">><<run $player.characterEvents.registerEvent($player.info.id, "GetFreelanceJob", 1)>><</button>></div> <div class="btn padding-top"><<button "Refuse" "ComputerSystem">><<run $player.dailyEvents.registerEvent($player.info.id, "RefuseFreelanceJob", 1)>><<unset $freelanceJob>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<SpendEnergy $player 15>> <<SpendTimeWithoutUpdate 120>> <<set $freelanceJob.progress += Random(5,20)>> <<if $freelanceJob.progress >= 100>> <<set _msgSalary = 'Job Completed: You earned $' + $freelanceJob.salary>> <<ChatMessage _msgSalary>> <<set $player.money += $freelanceJob.salary>> <<run $player.characterEvents.unregisterEvent($player.info.id,'GetFreelanceJob')>> <div class="btn padding-top"><<button "Continue" "ComputerSystem">><<unset $freelanceJob>><</button>></div> <<else>> <<ChatMessage 'You work for several hours. But the work isn\'t done yet.'>> <div class="btn padding-top"><<button "Continue" "ComputerSystem">><</button>></div> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <div class="btn-container padding-top"> <div class="btn"><<button "Male on Female" "PC_WatchPorn">><<set $pornType = "MoF">><</button>></div> <div class="btn"><<button "Male on Male" "PC_WatchPorn">><<set $pornType = "MoM">><</button>></div> <div class="btn"><<button "Male on Trans" "PC_WatchPorn">><<set $pornType = "MoT">><</button>></div> <div class="btn"><<button "Female on Male" "PC_WatchPorn">><<set $pornType = "FoM">><</button>></div> <div class="btn"><<button "Female on Female" "PC_WatchPorn">><<set $pornType = "FoF">><</button>></div> <div class="btn"><<button "Female on Trans" "PC_WatchPorn">><<set $pornType = "FoT">><</button>></div> <div class="btn"><<button "Trans on Male" "PC_WatchPorn">><<set $pornType = "ToM">><</button>></div> <div class="btn"><<button "Trans on Female" "PC_WatchPorn">><<set $pornType = "ToF">><</button>></div> <div class="btn"><<button "Trans on Trans" "PC_WatchPorn">><<set $pornType = "ToT">><</button>></div> </div> <div class="btn padding-top"><<button "Back" "ComputerSystem">><<unset $pornType>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set $player.status.horny.increase(15)>> <<switch $pornType>> <<case "MoF">> <<set _dom = "Male">> <<set _sub = "Female">> <<case "MoM">> <<set _dom = "Male">> <<set _sub = "Male">> <<case "MoT">> <<set _dom = "Male">> <<set _sub = "Shemale">> <<case "FoF">> <<set _dom = "Female">> <<set _sub = "Female">> <<case "FoM">> <<set _dom = "Female">> <<set _sub = "Male">> <<case "FoT">> <<set _dom = "Female">> <<set _sub = "Shemale">> <<case "ToF">> <<set _dom = "Shemale">> <<set _sub = "Female">> <<case "ToM">> <<set _dom = "Shemale">> <<set _sub = "Male">> <<case "ToT">> <<set _dom = "Shemale">> <<set _sub = "Shemale">> <</switch>> <<if $pornType == "MoF" || $pornType == "FoF" || $pornType == "ToF">> <<set _poseType = ['vag', 'anal', 'oral'].random()>> <<else>> <<set _poseType = ['anal', 'oral'].random()>> <</if>> <<switch _poseType>> <<case "vag">> <<SetVagPick _dom _sub>> <<case "anal">> <<SetAnalPick _dom _sub>> <<case "oral">> <<SetOralPick _dom _sub>> <</switch>> /* <<run console.log(_pick, $pornType, _poseType)>> */ <<Video _pick>> <div class="btn padding-top"><<button "Continue" "ComputerSystem">><<unset $pornType>><</button>></div> <</nobr>>
<<nobr>> <<set $canShowStatsBtn = false>> <<set $gameSettings.allowSaves = false>> <<include "UpdateAll">> <div class="faq-container"> <div class="faq"> <div class="faq-question">Question: Are there any restrictions?</div> <div class="faq-answer">Answer: Yes, you are required to attend college on weekdays. Missing more than three classes will result in expulsion.</div> </div> <div class="faq"> <div class="faq-question">Question: How can I earn money in this game?</div> <div class="faq-answer">Answer: You can work at the grocer's store. Speak with the shopkeeper and ask for a job.</div> </div> <div class="faq"> <div class="faq-question">Question: How can I make an NPC do something?</div> <div class="faq-answer">Answer: Reduce their dominance level by instilling submission, insulting them, or defeating them in a fight.</div> </div> <div class="faq"> <div class="faq-question">Question: Why do I always lose in fights?</div> <div class="faq-answer">Answer: Visit a fitness center and train with a fitness coach and a martial arts instructor.</div> </div> <div class="faq"> <div class="faq-question">Question: Is it possible to join factions in this version of the game?</div> <div class="faq-answer">Answer: No, it's not possible in this version of the game.</div> </div> <div class="faq"> <div class="faq-question">Question: Where can I purchase various items?</div> <div class="faq-answer">Answer: All items are sold by vendors at the shopping center.</div> </div> </div> <<done>> <<run faqToggle()>> <</done>> <<BackButton "<<set $canShowStatsBtn = true>> <<set $gameSettings.allowSaves = true>>">> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<include "CheckBattleState">> <<timed 0.2s>> <div class="fight-container"> <div class="column player"> <<BattleCharacterColumn $player>> </div> <<include "BattleLogPanel">> <div class="column enemy"> <<BattleCharacterColumn $interactionNpc>> </div> </div> <<done>> <<run updateFightBars($player)>> <<run updateFightBars($interactionNpc)>> <<run attachTooltips()>> <</done>> <</timed>> <</nobr>>
<<nobr>> <div class="battle-log"> <div class="log-content" id="logContent"> <p id="logtext"></p> </div> <div class="battle-controls" id="battle-control"> <<include "MovesControlButtons">> </div> <div class="moves-container" id="display-moves"> <<if $battleSetControls.attack == true>> <<DisplayMoves "Attack">> <<elseif $battleSetControls.seduce == true>> <<DisplayMoves "Seduce">> <<elseif $battleSetControls.items == true>> <<DisplayMoves "Items">> <<else>> <<DisplayMoves "Actions">> <</if>> </div> </div> <</nobr>>
<<nobr>> <<if $battleType == "SexFight" && $endOfSexBattle == true && $battleType == "SexFight" && $currentMove != "SexActive" && $currentMove != "SexPassive" && $exitSexScene>> <<set $currentMove = 'Actions'>> <<set $battleSetControls.attack = false>> <<set $battleSetControls.items = false>> <<set $battleSetControls.seduce = false>> <<set $playerIsDefense = false>> <</if>> <<if $player.status.health.value == $player.status.health.min>> <<set $playerLose = true>> <<FinishFight>> <<elseif $interactionNpc.status.health.value == $interactionNpc.status.health.min>> <<set $playerLose = false>> <<FinishFight>> <</if>> <<if $battleType == "SexFight" && $isFinishBattle == true>> <<if $finishFightStatus == "Player">> <<set $playerLose = true>> <<elseif $finishFightStatus == "Npc">> <<set $playerLose = false>> <</if>> <<set $isFinishBattle = false>> <<FinishFight>> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if $playerLose == true>> <<set _randPlayer = Random(-1, -10)>> <<SetCharProgression $player 'dominance' _randPlayer true>> <<set _rand = Random(1, 10)>> <<SetCharProgression $interactionNpc 'dominance' _rand false>> <<SpendEnergy $player 1000>> <<if $player.gender != "Female" && Random(0,100) > 70>> <<set $playerlock = true>> <<ChatMessage 'The victor stands over you, a smug grin spreading across their face as they pull out a gleaming metal chastity cage.'>> <<Chat $interactionNpc 'Pathetic. You call that a fight? Your sorry dick doesn’t deserve to be free after that performance. *They snap the chastity cage around your cock, locking it tight with a click.*'>> <<ChatMessage 'Damian can help you remove the chastity cage.'>> <</if>> <<else>> <<run $player.getRelationship($interactionNpc.info.id).metrics._fear.increase(Random(3, 10, true))>> <<set _rand = Random(1, 10)>> <<SetCharProgression $player 'dominance' _rand true>> <<set _rand = Random(1, 10) * -1>> <<SetCharProgression $interactionNpc 'dominance' _rand false>> /* <<set $player.skills.battleSkill.increase(Random(1, 3, true))>> */ <<if $isTournament != true>> <<run RandomRelocateCharacter($indexNPC)>> <</if>> <</if>> <<unset $playerTurn $battleChatMessage $attacker $defender $battleSetControls $battleSystem $currentMove _moves $exitSexScene $sexPose $playerTryToAttempt $playerIsDefense $enemyRestoreBattle $quickHealBotUsed>> <<if ($interactionNpc.info.questInfo.isQuestCharacter == true || $finishLock != undefined) && $playerLose == false>> <<goto $finishLock>> <<elseif $finishLockLoose != undefined && $playerLose == true>> <<goto $finishLockLoose>> <<elseif $interactionNpc.info.characterWork == "Pimp">> <<set $LoseBattle = $playerLose>> <div style="margin-top: 10px;"> <div class="btn"><<button "Continue" "EndOfBattle_Pimp">><<unset $interactionNpc $fightPhrasesNpcWon $fightPhrasesPlayerWon>> <</button>></div> </div> <<elseif $interactionNpc.info.characterTraits.includes("Aggressive") && $playerLose == true >> <div style="margin-top: 10px;"> <div class="btn"><<button "Continue" "AggrisiveWin">><<set $surrenderFight = false>><</button>></div> </div> <<elseif $isTournament == true>> <div style="margin-top: 10px;"> <<unset $isTournament>> <<if $finishLock != undefined>> <<set _lock = $finishLock>> <div class="padding-top"> <div class="btn"><<button "Continue" $finishLock>> <<unset $finishLock $interactionNpc $fightPhrasesNpcWon $fightPhrasesPlayerWon>><</button>></div> </div> <<else>> <<BackButton "<<set $canShowStatsBtn = true>> <<unset $interactionNpc $fightPhrasesNpcWon $fightPhrasesPlayerWon>> <<set $gameSettings.allowSaves = true>>">> <</if>> <<elseif $playerLose == false>> <<unset $interactionNpc $fightPhrasesNpcWon $fightPhrasesPlayerWon>> <<goto "FightFinish">> <<else>> <div style="margin-top: 10px;"> <<if $finishLock != undefined>> <<set _lock = $finishLock>> <div class="padding-top"> <div class="btn"><<button "Continue" $finishLock>> <<unset $finishLock $interactionNpc $fightPhrasesNpcWon $fightPhrasesPlayerWon>><</button>></div> </div> <<else>> <<BackButton "<<set $canShowStatsBtn = true>> <<unset $interactionNpc $fightPhrasesNpcWon $fightPhrasesPlayerWon>> <<set $gameSettings.allowSaves = true>>">> <</if>> </div> <</if>> <<unset $playerLose>> <</nobr>>
<<nobr>> <<widget "StartFight">> <<HideLeftPanel true>> <<set $finishFightStatus = "None">> <<set $activeCharacter = undefined>> <<set $passiveCharacter = undefined>> <<set $endOfSexBattle = false>> <<set $isReceiving = true>> <<set $isFinishBattle = false>> <<set $playerTurn = true>> <<set $battleChatMessage = "">> <<set $attacker = _args[0]>> <<set $defender = _args[1]>> <<set $battleSetControls = _args[2]>> <<set $finishLock = _args[3]>> <<set $finishLockLoose = _args[4]>> <<if _args[5] != undefined>> <<set $battleType = _args[5]>> <<run $currentMove = "Seduce">> <<else>> <<set $battleType = "Fight">> <<run $currentMove = "Attack">> <</if>> <<set $playerIsDefense = false>> <<set $playerTryToAttempt = false>> <<set $exitSexScene = false>> <<set $enemyRestoreBattle = false>> <<set $sexPose = "">> <<set $quickHealBotUsed = 0>> <<run UIBar.stow()>> <<run $battleSystem = new BattleSystem()>> <<if $battleType != "SexFight" && $gameSettings.battleMode != "SexBattle">> <<goto "ChooseBattleType">> <<else>> <<set $battleType = "SexFight">> <<set $battleSetControls.attack = false>> <<set $battleSetControls.items = false>> <<set $battleSetControls.seduce = true>> <<run $currentMove = "Seduce">> <<goto "StartFight">> <</if>> <</widget>> <<widget "FinishFight">> <<HideLeftPanel false>> <<run $interactionNpc.status.health.value = $interactionNpc.status.health.max>> <<run $interactionNpc.status.energy.value = $interactionNpc.status.energy.max>> <<if $player.status.health.value == $player.status.health.min>> <<run $player.status.health.increase(1)>> <</if>> <<run UIBar.unstow()>> <<if $autobattleMode != true>> <<RemoveBattleTooltips>> <<replace "#display-moves">><</replace>> <<replace "#battle-control">><</replace>> <<unset $autobattleMode>> <</if>> <<goto "EndOfBattle">> <</widget>> <<widget "RemoveBattleTooltips">> <<script>> var element = document.getElementById("global-tooltip"); if (element) { element.remove(); } <</script>> <</widget>> <<widget "BattleControlButton">> <<if $currentMove == _args[0]>> <div class="battle-control selected battle-control-selected"><<button _args[0]>><</button>></div> <<else>> <<if _args[1] == false>> <div class="battle-control"><<button _args[0]>> <<set $currentMove = _args[0]>> <<replace "#display-moves">><<DisplayMoves $currentMove>><</replace>> <<replace "#battle-control">><<include "MovesControlButtons">><</replace>> <<run attachTooltips()>> <</button>></div> <<else>> <div class="battle-control non-interacting"><<button _args[0]>><</button>></div> <</if>> <</if>> <</widget>> <<widget "BattleCharacterColumn">> <img @src="_args[0].getPhotoImage()" alt="Photo" class="battle-icon"/> <h3><<print '_args[0].info.firstName _args[0].info.secondName'>></h3> <p style="text-align:center;"><<print geBattletCharacterPosition(_args[0])>><p> <div class="bars"> <<if _args[0].info.isPlayer>> <<set _character = "player">> <<else>> <<set _character = "enemy">> <</if>> <<BattleBar _character "health">> <<BattleBar _character "energy">> <<BattleBar _character "lust">> </div> <div class="stats"> <p>Vitality: <span><<print _args[0].attributes.vitality.value>></span></p> <p>Strength: <span><<print _args[0].attributes.strength.value>></span></p> <p>Pain threshold: <span><<print _args[0].attributes.defense.value>></span></p> <p>Dexterity: <span><<print _args[0].attributes.dexterity.value>></span></p> </div> <</widget>> <<widget "BattleBar">> <<set _barHtml = '<div class="fill ' + _args[1] + '" id="' + _args[0] + '-' + _args[1] + '"></div>'>> <div class="bar"> _barHtml </div> <</widget>> <<widget "DisplayMoves">> <<RemoveBattleTooltips>> <<run _moves = $battleSystem.getMovesByClass(_args[0], $player)>> <<if _moves.length > 0>> <<for _move range _moves>> /*<<run _damageDone = GetDamageValue(_move, $player, $interactionNpc)>>*/ <<run _damageDone = _move.damage>> <<if $currentMove == "Actions">> <<set _btnName = '<div class="fight-move" data-tooltip="' + _move.description + '"><div class="move-name">_move.name</div><hr><div class="move-cost">Energy Cost: _move.energyCost</div></div>'>> <<elseif $currentMove == "Seduce" || $currentMove == "SexActive" || $currentMove == "SexPassive">> <<set _btnName = '<div class="fight-move" data-tooltip="' + _move.description + '"><div class="move-name">_move.name</div><hr><div class="move-cost">Energy Cost: _move.energyCost</div></div>'>> <<elseif $currentMove == "Items">> <<if _move.name == "Small QuickHeal" || _move.name == "Medium QuickHeal" || _move.name == "Big QuickHeal" || _move.name == "Energy drink">> <<set _btnName = '<div class="fight-move" data-tooltip="' + _move.description + '"><div class="move-name">_move.name</div><hr><div class="move-damage">Heals: _damageDone</div></div>'>> <</if>> <<else>> <<set _btnName = '<div class="fight-move" data-tooltip="' + _move.description + '"><div class="move-name">_move.name</div><hr><div class="move-damage">Damage: _damageDone</div><div class="move-cost">Energy Cost: _move.energyCost</div></div>'>> <</if>> <<capture _move _btnName>> <<include "CheckMoveRequirements">> <<if _isMeet == false>> <div class="btn-fight non-interacting"><<button _btnName >><</button>></div> <<else>> <div class="btn-fight"><<button _btnName >> <<set $exitSexScene = false>> <<run _enemyTryAttempt = (Random(0,1) == 1)>> <<run _move.execute($player, $interactionNpc, _enemyTryAttempt)>> <<include "CheckBattleState">> <<if $playerIsDefense && $currentMove != "SexActive" && $currentMove != "SexPassive" && $exitSexScene == false>> <<include "CalculateEnemyMove">> <<append "#logtext" t8n>>$battleChatMessage<</append>> <<set $battleChatMessage = "">> <<run updateFightBars($player)>> <<run updateFightBars($interactionNpc)>> <<include "CheckBattleState">> <<replace "#display-moves">><<DisplayMoves $currentMove>><</replace>> <<run attachTooltips()>> <<if $currentMove != "SexActive" && $currentMove != "SexPassive">> <<replace "#battle-control">><<include "MovesControlButtons">><</replace>> <<else>> <<replace "#battle-control">><</replace>> <</if>> <<else>> <<append "#logtext" t8n>>$battleChatMessage<</append>> <<set $battleChatMessage = "">> <<run updateFightBars($player)>> <<run updateFightBars($interactionNpc)>> <<replace "#battle-control">><</replace>> <<include "CheckBattleState">> <<if $currentMove != "SexActive" && $currentMove != "SexPassive" && $exitSexScene>> <<replace "#battle-control">><<include "MovesControlButtons">><</replace>> <</if>> <<if $currentMove != "SexActive" && $currentMove != "SexPassive" && $exitSexScene == false && ($endOfSexBattle == false || $battleType != "SexFight")>> <<replace "#display-moves">><<DisplayMoves "Defense">><</replace>> <<else>> <<replace "#display-moves">><<DisplayMoves $currentMove>><</replace>> <</if>> <<run attachTooltips()>> <</if>> <<script>> var logContent = document.getElementById('logContent'); logContent.scrollTop = logContent.scrollHeight; const observer = new MutationObserver(() => { logContent.scrollTop = logContent.scrollHeight; }); observer.observe(logContent, { childList: true }); <</script>> <<if $currentMove != "SexActive" && $currentMove != "SexPassive" && $exitSexScene == false>> <<set $playerIsDefense = !$playerIsDefense>> <</if>> <</button>></div> <</if>> <</capture>> <</for>> <</if>> <</widget>> <<widget "CheckSexOrientation">> <<set _mainChar = _args[0]>> <<set _secondChar = _args[1]>> <<if _mainChar.info.sexualPreference == "Bi">> <<set _result = true>> <<elseif _mainChar.info.sexualPreference == "Manly" && _secondChar.gender() == "Male">> <<set _result = true>> <<elseif _mainChar.info.sexualPreference == "Feminine" && _secondChar.gender() == "Female">> <<set _result = true>> <<else>> <<set _result = false>> <</if>> <</widget>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <div class="padding-top"> <div class="btn"><<button "Fight" "StartFight">><</button>></div> </div> <div class="padding-top"> <div class="btn"><<button "Auto-Fight">> <<run _result = autoBattle($player, $interactionNpc)>> <<set $autobattleMode = true>> <<include "CheckBattleState">> <</button>></div> </div> <</nobr>>
<<nobr>> <<done>> <<script>> var divs = document.getElementsByClassName('moves-container'); for (var i = 0; i < divs.length; i++) { divs[i].style.display = 'none'; } <</script>> <<switch $currentMove >> <<case "Attack">> <<set $moveId = "attack-moves">> <<case "Seduce">> <<set $moveId = "seduce-moves">> <<case "Items">> <<set $moveId = "items-moves">> <<case "Actions">> <<set $moveId = "actions-moves">> <</switch>> <<run document.getElementById($moveId).style.display = 'flex'>> <</done>> <</nobr>>
<<nobr>> <<if $battleSetControls == undefined>> <<BattleControlButton "Attack">> <<BattleControlButton "Seduce">> <<BattleControlButton "Items">> <<BattleControlButton "Actions">> <<else>> <<if $battleSetControls.attack == true>> <<BattleControlButton "Attack" false>> <<else>> <<BattleControlButton "Attack" true>> <</if>> <<if $battleSetControls.seduce == true>> <<BattleControlButton "Seduce" false>> <<else>> <<BattleControlButton "Seduce" true>> <</if>> <<if $battleSetControls.items == true>> <<BattleControlButton "Items" false>> <<else>> <<BattleControlButton "Items" true>> <</if>> <<if $battleSetControls.actions == true>> <<BattleControlButton "Actions" false>> <<else>> <<BattleControlButton "Actions" true>> <</if>> <</if>> <</nobr>>
<<nobr>> <<if $player.status.energy.value < _move.energyCost>> <<set _isMeet = false>> <<else>> <<set _isMeet = true>> <</if>> <</nobr>>
<<nobr>> <<if $interactionNpc.status.energy.value >= 80>> <<set $enemyRestoreBattle = false>> <</if>> <<CheckSexOrientation $interactionNpc $player>> <<run _enemyMovetypeRand = Random(0, 100)>> <<set _itemHealMove = $battleSystem.getCharHealMove($interactionNpc)>> <<set _itemEnergyMove = $battleSystem.getCharEnergyMove($interactionNpc)>> <<if $interactionNpc.status.health.value < 50 && _itemHealMove != undefined && $quickHealBotUsed < 3 && $battleSetControls.items == true>> <<set _moveEnemy = _itemHealMove>> <<set $quickHealBotUsed += 1>> /* <<run console.log("Heals", $quickHealBotUsed)>> */ <<elseif $interactionNpc.status.energy.value < 50 && _itemEnergyMove != undefined && $battleSetControls.items == true>> <<set _moveEnemy = _itemEnergyMove>> <<elseif $enemyRestoreBattle || ($interactionNpc.status.energy.value < 20 && _itemEnergyMove == undefined)>> <<set _moveEnemy = $battleSystem.getCharWaitMove()>> <<set $enemyRestoreBattle = true>> <<elseif _enemyMovetypeRand >= 60 && $battleSetControls.seduce == true && _result == true>> <<run _movesEnemy = $battleSystem.getMovesByClass("Seduce", $interactionNpc)>> <<run _moveEnemy = _movesEnemy[Math.floor(Math.random() * _movesEnemy.length)]>> <<elseif $battleSetControls.attack == true>> <<run _movesEnemy = $battleSystem.getMovesByClass("Attack", $interactionNpc)>> <<run _moveEnemy = _movesEnemy[Math.floor(Math.random() * _movesEnemy.length)]>> <<else>> <<set _moveEnemy = $battleSystem.getCharWaitMove()>> <</if>> <<run _moveEnemy.execute($interactionNpc, $player, $playerTryToAttempt)>> <</nobr>>
<<nobr>> <<include "UpdateStatBars">> <<SetBackground>> <<set _curLoc = passage()>> <<include "Filter">> <<if $player.inventory.items.size > 0>> <div class="item-shop-container"> <<for _item range $player.inventory.items>> <<if _item.quantity <= 0>> <<continue>> <</if>> <<if $filterType != "All">> <<if _item.type != _item.getItemTypeByString($filterType)>> <<continue>> <</if>> <</if>> <<capture _item>> <div class="shop-item"> __<<link '<h3 class="item-title"><<print _item.name>></h3>'>> <<run Dialog.setup(_item.name)>> <<run Dialog.wiki(_item.getImg())>> <<run Dialog.open();>> <</link>>__ <hr> <p class="item-quantity">Quantity: <<print _item.quantity>></p> /* <p class="item-price">Price: <<print _item.price>>$</p> */ <p class="item-price">Weight: <<print _item.weight>></p> <div class="btn-row"> <div style="flex-grow: 1; flex-basis: 0; margin: 0 5px;" class="btn"> <<if _item.type == _item.getItemTypeByString("Clothing")>> <<button "Put on" "Inventory">> <<run $player.useItem(_item, $player)>> <<run $player.inventory.removeItem(_item.name, 1)>> <</button>> <<elseif _item.type != _item.getItemTypeByString("Gift") && _item.type != _item.getItemTypeByString("SexToy")>> <<button "Use" "Inventory">> <<run $player.useItem(_item, $player)>> <<run $player.inventory.removeItem(_item.name, 1)>> <</button>> <</if>> </div> <div style="flex-grow: 1; flex-basis: 0; margin: 0 5px;" class="btn"> <<button "Throw it" "Inventory">> <<run $player.inventory.removeItem(_item.name, 1)>> <</button>> </div> </div> </div> <</capture>> <</for>> </div> <</if>> <div class="padding-top"> <<BackButton "<<unset $filterType>> <<set $canShowStatsBtn = true>>">> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <div class="phone"> <div class="header"> <div class="back-button btn"><<button "Back" $player.info.currentLocation>><<set $gameSettings.allowSaves = true>><<set $canShowStatsBtn = true>><</button>></div> <div class="header-title">Contacts</div> </div> <div class="contacts"> <<for _i = 0; _i < $Characters.length; _i++>> <<set _character = $Characters[_i]>> <<if $player.characterEvents.isEventRegistered(_character.info.id, "Have a phone number") == false>> <<continue>> <</if>> <<capture _character>> <div class="contact"> <div class="contact-info"> <<set _characterIcon = _character.getPhotoImage()>> <<set _icon = '<img class=\'avatar-list\' style="width: 40px; height: 40px;" @src="_characterIcon" alt="Avatar">'>> <div class="contact-image">_icon</div> <<set _charName = _character.info.firstName + " " + _character.info.secondName>> <div class="contact-name">_charName</div> </div> <div class="contact-buttons"> <<set _infoPic = '<img style="width: 25px; height: auto;" src="Media/Other/information.png" alt="I">'>> <<set _callPic = '<img style="width: 25px; height: auto;" src="Media/Other/call.png" alt="C">'>> /* <div class="square-button"><<button _infoPic "DrawCharacterStats">> <<set $indexNPC = $Characters.indexOf(_character)>> <<set $interactionNpc = $Characters[$indexNPC]>> <<set $fromPhone = true>> <<set $isPlayer = false>> <</button>></div> */ <div class="square-button"><<button _callPic "CallToCharacter">> <<set $indexNPC = $Characters.indexOf(_character)>> <<set $interactionNpc = $Characters[$indexNPC]>> <</button>></div> </div> </div> <</capture>> <</for>> </div> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<ShowNpcIcon $interactionNpc>> <<Chat $interactionNpc $genderReactionText>> <div class="padding-top"> <div class="btn"><<button "Continue" "CharacterInteractions">><<unset $genderReactionText>><</button>></div> </div> <</nobr>>
<<nobr>> <<include "UpdateStatBars">> <<SetBackground>> <<include "UpdateAll">> <<include "CheckQuestShopItems">> <<run $shopInventory = new Inventory(100)>> <<if $itemType == "Clothing">> <<run $shopInventory.addRandomClothesToInventory(50)>> <<else>> <<run $shopInventory.getItemByType($itemType, 1)>> <</if>> <<if $shopInventory.items.size > 0>> <div class="item-shop-container"> <<for _item range $shopInventory.items>> <<set _finalCost = _item.price>> <<capture _item _finalCost>> <div class="shop-item"> __<<link '<h3 class="item-title"><<print _item.name>></h3>'>> <<run Dialog.setup(_item.name)>> <<run Dialog.wiki(_item.getImg())>> <<run Dialog.open();>> <</link>>__ <hr> <p class="item-price">Price: <<print _finalCost>>$</p> <p class="item-price">Weight: <<print _item.weight>></p> <div class="btn"> <<button "🛒 Buy" "Shop">> <<if $player.money < _item.price>> <<run alert("Not enough money")>> <<else>> <<set $player.money -= _finalCost>> <<run $player.inventory.addItem(_item.copy(1))>> <</if>> <</button>> </div> </div> <</capture>> <</for>> </div> <</if>> <div class="padding-top"> <<BackButton "<<set $canShowStatsBtn = true>> <<unset $shopInventory>> <<set $gameSettings.allowSaves = true>> <<unset $itemType>>">> </div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _tempNPC = { name: "Temp NPC", gender: "Male", photo: "images/characters/temp_npc.png", data: [], }>> <</nobr>>
<<nobr>> <<LeaveInteractionSettings>> <<goto $walkNextLocation>> <</nobr>>
<<nobr>> <<include "UpdateAll">> /* <<if !$walkeventtemp>> <<set $walkeventtemp = 1>> <</if>> */ <<set _event = Random(1,4)>> /* <<set _event = $walkeventtemp>> */ <<switch _event>> <<case 1>> <<include "Walk_Event_Catcall">> <<case 2>> <<include "Walk_Event_AlleyEncounter">> <<case 3>> <<include "Walk_Event_LostWallet">> <<case 4>> <<include "Walk_Event_FlirtyStranger">> <</switch>> /* <<set $walkeventtemp += 1>> <<if $walkeventtemp > 4>> <<set $walkeventtemp = 1>> <</if>> */ <</nobr>>
<<nobr>> <<set $npcType = Random(1,2)>> <<if $npcType == 1>> <<set $npc = {name:'Catcaller', gender:'Male', photo:'Media/Characters/QuestChars/Other/Unknown.jpg', type:'dominant'}>> <<else>> <<set $npc = {name:'Nervous catcaller', gender:'Male', photo:'Media/Characters/QuestChars/Other/Unknown.jpg', type:'submissive'}>> <</if>> <<ChatMessage 'As you move along the crowded street, someone in a doorway gives a sharp whistle. "Hey—wow. You look incredible. Come say hi!"'>> <<set _msg = ($npc.type == 'dominant' ? 'Don\'t be shy. You like being noticed, right? Give me a smile.' : 'Sorry if that was forward. Could we talk? Maybe swap numbers?')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<if $player.gender() == 'Female'>> <<Chat $player 'Seriously? Eyes to yourself.'>> <<set _msg = ($npc.type == 'dominant' ? 'Feisty. I like confidence.' : 'Okay, okay—no offense meant.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Back off. I\'m not your toy.'>> <<set _msg = ($npc.type == 'dominant' ? 'Relax, I\'m just talking.' : 'Got it. I\'m leaving.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<elseif $player.gender() == 'Male'>> <<Chat $player 'What\'s your problem? Knock it off.'>> <<set _msg = ($npc.type == 'dominant' ? 'Tough guy, huh? Keep walking.' : 'My mistake, man.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Last warning.'>> <<set _msg = ($npc.type == 'dominant' ? 'Or what? Make me.' : 'I\'m gone—no drama.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<else>> <<Chat $player 'Not okay. You don\'t talk to people like that.'>> <<set _msg = ($npc.type == 'dominant' ? 'You\'re gorgeous. Come closer.' : 'Wow—sorry. You\'re stunning. Can I make it up to you with a drink?')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Start with respect.'>> <<set _msg = ($npc.type == 'dominant' ? 'Respect, huh? I can work with that.' : 'Understood. I\'ll back off.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <</if>> <div class="btn padding-top"> <div class="btn padding-top"><<button "Ignore and keep walking" "Walk_GoToNextLocation">><</button>></div> </div> <div class="btn padding-top"> <div class="btn padding-top"><<button "Tell him off" "Walk_Catcall_TellOff">><</button>></div> </div> <div class="btn padding-top"> <<if $player.attributes.corruption.value >= 2>> <div class="btn padding-top"><<button "Flirt back" "Walk_Catcall_Flirt">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='catcall-flirt'><<button "Flirt back">><</button>></div> <<done>> <<run addHoverTooltip('catcall-flirt', 'Requires corruption level 2 or higher')>> <</done>> <</if>> </div> <div class="btn padding-top"> <<if $player.attributes.dominance.value >= 2>> <div class="btn padding-top"><<button "Dominate him" "Walk_Catcall_Dominate">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='catcall-dom'><<button "Dominate him">><</button>></div> <<done>> <<run addHoverTooltip('catcall-dom', 'Requires dominance level 2 or higher')>> <</done>> <</if>> </div> <</nobr>>
<<nobr>> <<if $player.gender() == 'Female'>> <<Chat $player 'Zip it and learn some manners.'>> <<set _msg = ($npc.type == 'dominant' ? 'Overrated? Please. You\'re not that special.' : 'I\'m sorry—really. I was out of line.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Walk away. Now.'>> <<set _msg = ($npc.type == 'dominant' ? 'We\'ll see each other again.' : 'I\'m going. Sorry!')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Good choice.'>> <<set _msg = ($npc.type == 'dominant' ? 'You\'re a handful.' : 'Take care.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<elseif $player.gender() == 'Male'>> <<Chat $player 'Cut it out. I\'m not here for games.'>> <<set _msg = ($npc.type == 'dominant' ? 'Not into it? Your loss.' : 'My bad. Won\'t happen again.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Move along.'>> <<set _msg = ($npc.type == 'dominant' ? 'Fine. For now.' : 'Already gone!')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Keep it that way.'>> <<set _msg = ($npc.type == 'dominant' ? 'You\'re fun when you\'re angry.' : 'Understood.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<else>> <<Chat $player 'That\'s not how you talk to anyone. Fix it.'>> <<set _msg = ($npc.type == 'dominant' ? 'Hard to focus when you look like that.' : 'You\'re right. Sorry.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Apology accepted. Don\'t repeat it.'>> <<set _msg = ($npc.type == 'dominant' ? 'Maybe you\'ll miss the attention.' : 'Never again.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'We\'re done.'>> <<set _msg = ($npc.type == 'dominant' ? 'For now.' : 'Got it.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <</if>> <<set _randomValueChange = Random(1,3)>> <<SetCharProgression $player "dominance" _randomValueChange true>> <div class="btn padding-top"><<button "Continue" "Walk_GoToNextLocation">><</button>></div> <</nobr>>
<<nobr>> <<if $player.gender() == 'Female'>> <<Chat $player 'Like what you see? Then say something worth my time.'>> <<set _msg = ($npc.type == 'dominant' ? 'I\'m up for the chase. Prove you can keep up.' : 'Wow, bold. I\'d love to get to know you.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Don\'t just stand there. Make a move.'>> <<set _msg = ($npc.type == 'dominant' ? 'Somewhere private. Now.' : 'There\'s a quiet spot nearby.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Don\'t waste it.'>> <<set _msg = ($npc.type == 'dominant' ? 'You\'re going to remember me.' : 'I won\'t. Promise.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<elseif $player.gender() == 'Male'>> <<Chat $player 'Think you can keep up? Let\'s see.'>> <<set _msg = ($npc.type == 'dominant' ? 'Oh, I can. Let\'s get close.' : 'Really? I\'m in!')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Show me your best.'>> <<set _msg = ($npc.type == 'dominant' ? 'I\'ll make it personal.' : 'How about a drink first?')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Prove it.'>> <<set _msg = ($npc.type == 'dominant' ? 'I intend to.' : 'You won\'t regret it.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<else>> <<Chat $player 'Caught your eye? I\'m more than a pretty face.'>> <<set _msg = ($npc.type == 'dominant' ? 'I\'m curious. Let\'s find out more.' : 'You\'re unreal. Can we keep this going?')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Words are cheap. Show me.'>> <<set _msg = ($npc.type == 'dominant' ? 'Skip the small talk.' : 'There\'s a quiet corner nearby.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'I don\'t wait.'>> <<set _msg = ($npc.type == 'dominant' ? 'Then follow me.' : 'Right behind you.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <</if>> <<set _randomValueChange = Random(1,3)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <div class="btn padding-top"><<button "Continue walking" "Walk_GoToNextLocation">><</button>></div> <</nobr>>
<<nobr>> <<if $player.gender() == 'Female'>> <<Chat $player 'You think a whistle impresses me? Kneel and apologize.'>> <<set _msg = ($npc.type == 'dominant' ? 'You\'ve got fire. Maybe I\'ll play along.' : 'I\'m sorry! I went too far.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Good. Now disappear.'>> <<set _msg = ($npc.type == 'dominant' ? 'You\'re unforgettable.' : 'Yes, ma\'am. I\'m gone.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Eyes down.'>> <<set _msg = ($npc.type == 'dominant' ? 'We\'ll see next time.' : 'Not looking back.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<elseif $player.gender() == 'Male'>> <<Chat $player 'Catcalling me? Kneel and say you\'re sorry.'>> <<set _msg = ($npc.type == 'dominant' ? 'Bold. Maybe I\'ll kneel—maybe not.' : 'Sorry, okay? I messed up.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Mean it.'>> <<set _msg = ($npc.type == 'dominant' ? 'You win this round.' : 'I mean it. Sorry.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Now go.'>> <<set _msg = ($npc.type == 'dominant' ? 'I\'m not done with you.' : 'I\'m leaving.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<else>> <<Chat $player 'That tone? Try respect. Kneel.'>> <<set _msg = ($npc.type == 'dominant' ? 'You\'re different. I like it.' : 'I\'m sorry. Please don\'t be mad.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Quiet. Back off.'>> <<set _msg = ($npc.type == 'dominant' ? 'For now.' : 'I\'m going.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Don\'t try me again.'>> <<set _msg = ($npc.type == 'dominant' ? 'Round two will be interesting.' : 'Understood.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <</if>> <<set _randomValueChange = Random(1,3)>> <<SetCharProgression $player "dominance" _randomValueChange true>> <div class="btn padding-top"><<button "Continue walking" "Walk_GoToNextLocation">><</button>></div> <</nobr>>
<<nobr>> <<ChatMessage 'You spot a scuffed leather wallet half-buried by an overfilled trash can. People rush past without noticing.'>> <<if $player.gender() == 'Female'>> <<Chat $player 'Someone\'s wallet. I\'ll check for an ID and try to return it.'>> <<ChatMessage 'The street hums around you. A small dilemma tugs at your thoughts.'>> <<elseif $player.gender() == 'Male'>> <<Chat $player 'Huh. A wallet. Let\'s see whose it is.'>> <<ChatMessage 'Crowds stream by. No one else seems to have seen it.'>> <<else>> <<Chat $player 'A wallet, huh? Maybe there\'s an ID.'>> <<ChatMessage 'People rush around you, blind to the find.'>> <</if>> <div class="btn padding-top"> <div class="btn padding-top"><<button "Pick it up" "Walk_Wallet_PickUp">><</button>></div> </div> <div class="btn padding-top"> <div class="btn padding-top"><<button "Leave it" "Walk_GoToNextLocation">><</button>></div> </div> <div class="btn padding-top"> <<if $player.attributes.corruption.value >= 3>> <div class="btn padding-top"><<button "Check for cash and cards" "Walk_Wallet_Steal">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='wallet-steal'><<button "Check for cash and cards">><</button>></div> <<done>> <<run addHoverTooltip('wallet-steal', 'Requires corruption level 3 or higher')>> <</done>> <</if>> </div> <div class="btn padding-top"> <<if $player.attributes.dominance.value >= 2>> <div class="btn padding-top"><<button "Look for the owner" "Walk_Wallet_LookOwner">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='wallet-owner'><<button "Look for the owner">><</button>></div> <<done>> <<run addHoverTooltip('wallet-owner', 'Requires dominance level 2 or higher')>> <</done>> <</if>> </div> <</nobr>>
<<nobr>> <<ChatMessage 'You pick up the wallet and flip it open. It\'s empty—just a few receipts and an expired metro card. Looks like someone beat you to it.'>> <<if $player.gender() == 'Female'>> <<Chat $player 'Nothing to return. I\'ll leave it where it was.'>> <<ChatMessage 'You set the wallet back down and step away.'>> <<elseif $player.gender() == 'Male'>> <<Chat $player 'Empty. Figures.'>> <<ChatMessage 'You place the wallet back and move on.'>> <<else>> <<Chat $player 'No cash, no cards. Just scraps.'>> <<ChatMessage 'You drop it where you found it and continue.'>> <</if>> <div class="btn padding-top"><<button "Continue" "Walk_GoToNextLocation">><</button>></div> <</nobr>>
<<nobr>> <<ChatMessage 'You search the lining and find a hidden pocket with cash and a credit card. You pocket the bills and leave the wallet by the trash.'>> <<if $player.gender() == 'Female'>> <<Chat $player 'Jackpot. Tonight just got easier.'>> <<ChatMessage 'You tuck the cash away and merge back into the flow of people.'>> <<elseif $player.gender() == 'Male'>> <<Chat $player 'Found money is still money.'>> <<ChatMessage 'You slip the bills into your pocket and keep moving.'>> <<else>> <<Chat $player 'Guess luck\'s on my side.'>> <<ChatMessage 'You pocket the cash and fade into the crowd.'>> <</if>> <<set _randomValueChange = Random(2,5)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <div class="btn padding-top"><<button "Continue" "Walk_GoToNextLocation">><</button>></div> <</nobr>>
<<nobr>> <<ChatMessage 'You find an ID inside. Looking up, you spot someone nearby patting their pockets in a panic.'>> <<if $player.gender() == 'Female'>> <<Chat $player 'Hey, is this yours? I found it by the trash can.'>> <<ChatMessage 'They turn, relief washing over their face as they take the wallet.'>> <<set _msg = 'Thank you! I thought I was in serious trouble.'>> <<ChatWithoutNPC 'Stranger' 'Media/Characters/QuestChars/Other/Unknown.jpg' _msg>> <<Chat $player 'No problem. Keep a closer eye on it.'>> <<elseif $player.gender() == 'Male'>> <<Chat $player 'Yo, this yours? Found it on the ground.'>> <<ChatMessage 'They spin around, grateful as they take it back.'>> <<set _msg = 'You\'re a lifesaver. Thanks!'>> <<ChatWithoutNPC 'Stranger' 'Media/Characters/QuestChars/Other/Unknown.jpg' _msg>> <<Chat $player 'Glad it made it back to you.'>> <<else>> <<Chat $player 'This yours? It was by the trash.'>> <<ChatMessage 'They turn, visibly relieved, and accept the wallet.'>> <<set _msg = 'Thank you so much. I didn\'t even notice it was gone.'>> <<ChatWithoutNPC 'Stranger' 'Media/Characters/QuestChars/Other/Unknown.jpg' _msg>> <<Chat $player 'Stay safe out here.'>> <</if>> <<set _randomValueChange = Random(1,3)>> <<SetCharProgression $player "dominance" _randomValueChange true>> <div class="btn padding-top"><<button "Continue" "Walk_GoToNextLocation">><</button>></div> <</nobr>>
<<nobr>> <<set $npcType = Random(1,2)>> <<if $npcType == 1>> <<set $npc = {name:'Thug', gender:'Male', photo:'Media/Characters/QuestChars/Other/Unknown.jpg', type:'dominant'}>> <<else>> <<set $npc = {name:'Shady drifter', gender:'Male', photo:'Media/Characters/QuestChars/Other/Unknown.jpg', type:'submissive'}>> <</if>> <<ChatMessage 'You slip into a dim alley as a shortcut. A figure steps from the shadows, blocking your path with a self-satisfied grin.'>> <<set _msg = ($npc.type == 'dominant' ? 'Nice night. Stay a while—we could have some fun.' : 'Hey, easy. You look amazing… want some company?')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<if $player.gender() == 'Female'>> <<Chat $player 'Move. I\'m not interested.'>> <<set _msg = ($npc.type == 'dominant' ? 'Not even curious? Shame.' : 'Right, sorry. I\'ll step aside.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Good. I\'m going through.'>> <<set _msg = ($npc.type == 'dominant' ? 'We\'ll meet again.' : 'All clear.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<elseif $player.gender() == 'Male'>> <<Chat $player 'Out of the way.'>> <<set _msg = ($npc.type == 'dominant' ? 'Relax. I\'m just testing your nerve.' : 'Chill, man. I\'m not looking for trouble.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Don\'t test me.'>> <<set _msg = ($npc.type == 'dominant' ? 'Maybe later.' : 'Got it.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<else>> <<Chat $player 'Step aside. Not buying whatever you\'re selling.'>> <<set _msg = ($npc.type == 'dominant' ? 'With a look like that? Hard to resist.' : 'Sorry—didn\'t mean to crowd you.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'You don\'t run this alley.'>> <<set _msg = ($npc.type == 'dominant' ? 'Tonight I do.' : 'Understood. I\'m moving.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <</if>> <div class="btn padding-top"> <div class="btn padding-top"><<button "Push past him" "Walk_Alley_PushPast">><</button>></div> </div> <div class="btn padding-top"> <div class="btn padding-top"><<button "Flirt or tease" "Walk_Alley_Flirt">><</button>></div> </div> <div class="btn padding-top"> <<if $player.attributes.corruption.value >= 4>> <div class="btn padding-top"><<button "Let him grope you" "Walk_Alley_Grope">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='alley-grope'><<button "Let him grope you">><</button>></div> <<done>> <<run addHoverTooltip('alley-grope', 'Requires corruption level 4 or higher')>> <</done>> <</if>> </div> <div class="btn padding-top"> <<if $player.attributes.dominance.value >= 3>> <div class="btn padding-top"><<button "Dominate him" "Walk_Alley_Dominate">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='alley-dom'><<button "Dominate him">><</button>></div> <<done>> <<run addHoverTooltip('alley-dom', 'Requires dominance level 3 or higher')>> <</done>> <</if>> </div> <</nobr>>
<<nobr>> <<if $player.gender() == 'Female'>> <<Chat $player 'Move. I\'ve got places to be.'>> <<set _msg = ($npc.type == 'dominant' ? 'No fun. Maybe next time.' : 'My bad—go ahead.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Keep walking.'>> <<set _msg = ($npc.type == 'dominant' ? 'We\'re not done.' : 'Already gone.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Don\'t follow.'>> <<set _msg = ($npc.type == 'dominant' ? 'Tempting.' : 'Wouldn\'t dare.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<elseif $player.gender() == 'Male'>> <<Chat $player 'Step aside.'>> <<set _msg = ($npc.type == 'dominant' ? 'I like a challenge.' : 'No beef here.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Good choice.'>> <<set _msg = ($npc.type == 'dominant' ? 'This isn\'t over.' : 'We\'re cool.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Don\'t try me.'>> <<set _msg = ($npc.type == 'dominant' ? 'Round two, later.' : 'Noted.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<else>> <<Chat $player 'Clear out. Now.'>> <<set _msg = ($npc.type == 'dominant' ? 'That edge is… interesting.' : 'Yes. Moving.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Do not follow.'>> <<set _msg = ($npc.type == 'dominant' ? 'No promises.' : 'I\'m out.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Try it and regret it.'>> <<set _msg = ($npc.type == 'dominant' ? 'We\'ll see.' : 'I\'m gone.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <</if>> <<set _randomValueChange = Random(1,3)>> <<SetCharProgression $player "dominance" _randomValueChange true>> <div class="btn padding-top"><<button "Continue walking" "Walk_GoToNextLocation">><</button>></div> <</nobr>>
<<nobr>> <<if $player.gender() == 'Female'>> <<Chat $player 'Like what you see? Catch me if you can.'>> <<set _msg = ($npc.type == 'dominant' ? 'I will. And you\'ll want more.' : 'You\'re a tease—in the best way. Somewhere private?')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Then keep up.'>> <<set _msg = ($npc.type == 'dominant' ? 'Lead the way.' : 'I\'m right behind you.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Don\'t fall behind.'>> <<set _msg = ($npc.type == 'dominant' ? 'Front row for the show.' : 'Wouldn\'t miss it.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<elseif $player.gender() == 'Male'>> <<Chat $player 'Think you can handle me? Prove it.'>> <<set _msg = ($npc.type == 'dominant' ? 'I\'ll do more than that.' : 'Down if you are!')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Let\'s see your moves.'>> <<set _msg = ($npc.type == 'dominant' ? 'Up close and personal.' : 'Drink first? Then we\'ll see.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Impress me.'>> <<set _msg = ($npc.type == 'dominant' ? 'Watch closely.' : 'I\'m trying here!')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<else>> <<Chat $player 'Wanna play? Then show some courage.'>> <<set _msg = ($npc.type == 'dominant' ? 'Oh, I\'ve got plenty.' : 'You\'re gorgeous. I\'m in.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Then move.'>> <<set _msg = ($npc.type == 'dominant' ? 'Right here, right now.' : 'Lead on.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Don\'t waste my time.'>> <<set _msg = ($npc.type == 'dominant' ? 'This will be unforgettable.' : 'Hurrying!')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <</if>> <<set _randomValueChange = Random(2,4)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <div class="btn padding-top"><<button "Continue walking" "Walk_GoToNextLocation">><</button>></div> <</nobr>>
<<nobr>> <<if $player.gender() == 'Female'>> <<ChatMessage 'You let him pin you against the gritty alley wall, his hands roaming with brazen hunger. His fingers tease under your clothes, tracing your curves with a possessive heat that makes your pulse race. The shadows amplify the thrill of being caught.'>> <<set _msg = ($npc.type == 'dominant' ? 'Fuck, you\'re begging for it, aren\'t you? Say it, and I\'ll take you apart right here.' : 'Your body’s unreal… I’m shaking just touching you like this.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Don’t stop—make me feel every filthy second.'>> <<set _msg = ($npc.type == 'dominant' ? 'I’ll have you screaming my name.' : 'You’re driving me wild—I’ll give you everything.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Harder. I want to burn for you.'>> <<set _msg = ($npc.type == 'dominant' ? 'Greedy slut. You’ll get it.' : 'Anything you want, I’m yours.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<elseif $player.gender() == 'Male'>> <<ChatMessage 'You let him press you against the cold wall, his grip tight and demanding. His hands slide under your shirt, fingers digging into your skin, the raw thrill of the dark alley making your cock throb with need.'>> <<set _msg = ($npc.type == 'dominant' ? 'Already hard for me? I’m going to own you.' : 'Fuck, you feel so good… didn’t think you’d let me this close.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Keep going—touch me everywhere.'>> <<set _msg = ($npc.type == 'dominant' ? 'I’ll mark every inch of you.' : 'I’m all over you, can’t get enough.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Make me fucking lose it.'>> <<set _msg = ($npc.type == 'dominant' ? 'You’ll be begging for my cock.' : 'I’m giving you everything I’ve got.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<else>> <<ChatMessage 'He pins you against the rough wall, his hands exploring with a desperate edge. Fingers slip beneath your clothes, igniting your skin with every bold caress. The alley’s darkness makes every touch feel forbidden and electric.'>> <<set _msg = ($npc.type == 'dominant' ? 'I want to fuck every inch of you.' : 'You’re perfection—I’m losing it just touching you.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Then take me. Make me yours, right now.'>> <<set _msg = ($npc.type == 'dominant' ? 'You’re mine to ruin.' : 'This is unreal—I’ll do anything you want.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Don’t hold back. I want it all.'>> <<set _msg = ($npc.type == 'dominant' ? 'You’ll feel me for days.' : 'I’m giving you every fucking thing.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <</if>> <<set _randomValueChange = Random(4,8)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <div class="btn padding-top"><<button "Continue walking" "Walk_GoToNextLocation">><</button>></div> <<if $player.attributes.corruption.value >= 5>> <div class="btn padding-top"><<button "Let him take it further" "Walk_Alley_Fuck">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='alley-fuck'><<button "Let him take it further">><</button>></div> <<done>> <<run addHoverTooltip('alley-fuck', 'Requires corruption level 5 or higher')>> <</done>> <</if>> <</nobr>>
<<nobr>> <<if $player.gender() == 'Female'>> <<ChatMessage 'You pull him closer, hiking your skirt to bare your thighs. His hands grip your hips, and he thrusts into you with raw need, your slick heat clenching around him. The alley’s shadows hide your moans, but the risk of discovery makes you wetter.'>> <<set _msg = ($npc.type == 'dominant' ? 'So fucking tight… you’re mine, and this dirty alley knows it.' : 'You’re so wet for me… I can’t believe I’m fucking you here.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Harder—fuck me until I can’t think.'>> <<set _msg = ($npc.type == 'dominant' ? 'Scream my name, you needy slut.' : 'I’m trying—your pussy’s driving me insane.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Don’t stop—make me come all over you.'>> <<set _msg = ($npc.type == 'dominant' ? 'You’ll come when I let you.' : 'Fuck, I’m so close—come with me.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<elseif $player.gender() == 'Male'>> <<ChatMessage 'You guide him closer, unzipping just enough to free yourself. He presses into you, his cock sliding deep, each thrust a jolt of pleasure through the dark alley. The danger of being seen makes you harder.'>> <<set _msg = ($npc.type == 'dominant' ? 'Take my cock—you’re loving this, aren’t you?' : 'You’re so tight… this is fucking unreal.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Fuck me deeper—don’t hold back.'>> <<set _msg = ($npc.type == 'dominant' ? 'I’ll make you beg for every inch.' : 'I’m giving you everything—fuck.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Make me come—now.'>> <<set _msg = ($npc.type == 'dominant' ? 'You’ll come when I say.' : 'I’m so close—let’s do this.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<else>> <<ChatMessage 'You draw him into the shadows, shedding just enough to feel him. He thrusts into you, filling you completely, each movement a pulse of raw desire. The alley’s hush makes your shared gasps louder, the risk igniting your core.'>> <<set _msg = ($npc.type == 'dominant' ? 'I’m going to fuck you senseless—right here.' : 'You feel like a dream… I’m lost in you.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Fuck me until I’m shaking.'>> <<set _msg = ($npc.type == 'dominant' ? 'You’ll be mine in every way.' : 'I’m giving you all of me—fuck.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Don’t stop—make me come undone.'>> <<set _msg = ($npc.type == 'dominant' ? 'You’ll come when I’m done with you.' : 'I’m there—come with me.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <</if>> <<set _randomValueChange = Random(5,10)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <div class="btn padding-top"><<button "Continue walking" "Walk_GoToNextLocation">><</button>></div> <</nobr>>
<<nobr>> <<if $player.gender() == 'Female'>> <<Chat $player 'Blocking my way? Kneel and apologize.'>> <<set _msg = ($npc.type == 'dominant' ? 'You\'re a spark plug. Maybe I\'ll kneel.' : 'I\'m sorry! Please, don\'t be mad.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Know your place. Back to the shadows.'>> <<set _msg = ($npc.type == 'dominant' ? 'I\'ll be dreaming of you.' : 'Yes, ma\'am. I\'m out.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Don\'t look back.'>> <<set _msg = ($npc.type == 'dominant' ? 'We\'ll clash again.' : 'Not looking.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<elseif $player.gender() == 'Male'>> <<Chat $player 'Trying to scare me? Beg for mercy.'>> <<set _msg = ($npc.type == 'dominant' ? 'Let\'s see who bends first.' : 'Alright! I\'m sorry.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Mean it.'>> <<set _msg = ($npc.type == 'dominant' ? 'Fine. You win—for now.' : 'I mean it. Sorry, man.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Scram.'>> <<set _msg = ($npc.type == 'dominant' ? 'I\'d pay to see you really angry.' : 'I\'m out.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<else>> <<Chat $player 'You picked the wrong person. Kneel.'>> <<set _msg = ($npc.type == 'dominant' ? 'Submitting to you could be fun.' : 'I messed up. I\'m sorry!')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Ask for forgiveness.'>> <<set _msg = ($npc.type == 'dominant' ? 'I\'d rather test your limits.' : 'Please—forgive me.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Leave before I change my mind.'>> <<set _msg = ($npc.type == 'dominant' ? 'We\'re not finished.' : 'I\'m gone. Promise.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <</if>> <<set _randomValueChange = Random(3,6)>> <<SetCharProgression $player "dominance" _randomValueChange true>> <div class="btn padding-top"><<button "Continue walking" "Walk_GoToNextLocation">><</button>></div> <</nobr>>
<<nobr>> <<set $npcType = Random(1,2)>> <<if $npcType == 1>> <<set $npc = {name:'Flirty guy', gender:'Male', photo:'Media/Characters/QuestChars/Other/Unknown.jpg', type:'dominant'}>> <<else>> <<set $npc = {name:'Flirty stranger', gender:'Male', photo:'Media/Characters/QuestChars/Other/Unknown.jpg', type:'submissive'}>> <</if>> <<ChatMessage 'A well-dressed guy strolls up with easy confidence. "Well, hello. You\'re stunning. I bet you\'d look even better on my arm."'>> <<set _msg = ($npc.type == 'dominant' ? 'Come with me—I\'ll give you a night you won\'t forget.' : 'You seem fun. Want to grab a drink or take a walk?')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<if $player.gender() == 'Female'>> <<Chat $player 'Smooth line. What kind of night are we talking about?'>> <<set _msg = ($npc.type == 'dominant' ? 'The kind that leaves you smiling by sunrise.' : 'Whatever you\'re in the mood for.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Big promises. Can you back them up?'>> <<set _msg = ($npc.type == 'dominant' ? 'Easily.' : 'I\'ll do my best—you deserve it.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<elseif $player.gender() == 'Male'>> <<Chat $player 'A sidekick, huh? Why would I need one?'>> <<set _msg = ($npc.type == 'dominant' ? 'Call it a hunch. You look like a good time.' : 'You just seem like a cool guy.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'What\'s the plan then?'>> <<set _msg = ($npc.type == 'dominant' ? 'Less talk, more action.' : 'No plan—just good company.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<else>> <<Chat $player 'Company, huh? What\'s on your mind, charmer?'>> <<set _msg = ($npc.type == 'dominant' ? 'Something bold. You look like you can keep up.' : 'Maybe a walk, maybe something more if you\'re into it.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Bold is fine. Your next move?'>> <<set _msg = ($npc.type == 'dominant' ? 'You and me. Somewhere quiet.' : 'Your call—what do you like?')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <</if>> <div class="btn padding-top"> <div class="btn padding-top"><<button "Smile and walk on" "Walk_GoToNextLocation">><</button>></div> </div> <div class="btn padding-top"> <div class="btn padding-top"><<button "Flirt back" "Walk_FlirtyStranger_Flirt">><</button>></div> </div> <div class="btn padding-top"> <<if $player.attributes.corruption.value >= 4>> <div class="btn padding-top"><<button "Invite him somewhere private" "Walk_FlirtyStranger_Private">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='flirty-private'><<button "Invite him somewhere private">><</button>></div> <<done>> <<run addHoverTooltip('flirty-private', 'Requires corruption level 4 or higher')>> <</done>> <</if>> </div> <div class="btn padding-top"> <<if $player.attributes.dominance.value >= 3>> <div class="btn padding-top"><<button "Dominate him" "Walk_FlirtyStranger_Dominate">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='flirty-dom'><<button "Dominate him">><</button>></div> <<done>> <<run addHoverTooltip('flirty-dom', 'Requires dominance level 3 or higher')>> <</done>> <</if>> </div> <</nobr>>
<<nobr>> <<if $player.gender() == 'Female'>> <<Chat $player 'Not bad. Maybe I\'ll bite—what\'s the plan?'>> <<set _msg = ($npc.type == 'dominant' ? 'Knew you would. I know a place that\'s all fun.' : 'Yes! I\'m glad I said hi.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Lead on—and make it worth my time.'>> <<set _msg = ($npc.type == 'dominant' ? 'You\'ll be hooked.' : 'There\'s a great spot nearby—you\'ll love it.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Don\'t disappoint.'>> <<set _msg = ($npc.type == 'dominant' ? 'I won\'t.' : 'I\'ll make it special.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<elseif $player.gender() == 'Male'>> <<Chat $player 'Not bad yourself. Let\'s see where this goes.'>> <<set _msg = ($npc.type == 'dominant' ? 'I\'ve got ideas better than talk.' : 'For real? I\'m down.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Alright. Your big idea?'>> <<set _msg = ($npc.type == 'dominant' ? 'Less talk, more action.' : 'Let\'s find a quiet spot to get cozy.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Impress me.'>> <<set _msg = ($npc.type == 'dominant' ? 'Watch me.' : 'I\'m trying!')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<else>> <<Chat $player 'Charming. I might play along.'>> <<set _msg = ($npc.type == 'dominant' ? 'Play? I\'ll make it unforgettable.' : 'You just made my night. Keep going?')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Show me you\'ve got game. What\'s next?'>> <<set _msg = ($npc.type == 'dominant' ? 'Somewhere wild.' : 'Maybe a drink—if you\'re in.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Don\'t stall.'>> <<set _msg = ($npc.type == 'dominant' ? 'It\'s on.' : 'Right away. You won\'t be disappointed.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <</if>> <<set _randomValueChange = Random(2,4)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <div class="btn padding-top"><<button "Continue walking" "Walk_GoToNextLocation">><</button>></div> <</nobr>>
<<nobr>> <<if $player.gender() == 'Female'>> <<ChatMessage 'You lead him into a shadowed alley, your bodies pressed close as you undo just enough to tempt. His lips crash against yours, hands sliding under your clothes to grip your bare skin, the thrill of being caught making you ache with need.'>> <<set _msg = ($npc.type == 'dominant' ? 'Fuck, you’re dripping for me already. I’m going to have you right here.' : 'Your body’s perfect… I’m losing it just kissing you.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Then take me—fuck me until I’m trembling.'>> <<set _msg = ($npc.type == 'dominant' ? 'Spread those legs wider, I’m not gentle.' : 'I’ll go slow—unless you want it rough.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Hurry—make me come before someone sees.'>> <<set _msg = ($npc.type == 'dominant' ? 'You’ll come screaming my name first.' : 'Fuck, you’re driving me wild—I’m so close.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<elseif $player.gender() == 'Male'>> <<ChatMessage 'You pull him into a dark corner, lips locking as you tug his shirt aside. His hands grip your cock through your pants, stroking with intent, the public risk making every touch burn hotter.'>> <<set _msg = ($npc.type == 'dominant' ? 'Hard already? I’m going to make you mine.' : 'You’re so fucking hot… I can’t believe you’re letting me do this.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Don’t stop—make me feel it all.'>> <<set _msg = ($npc.type == 'dominant' ? 'I’ll have you begging for my cock.' : 'I’m giving you everything—fuck.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Make me come—hard.'>> <<set _msg = ($npc.type == 'dominant' ? 'You’ll come when I’m ready.' : 'I’m so close—let’s finish together.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<else>> <<ChatMessage 'You guide him into a hidden nook, your bodies entwined as you shed layers. His kisses are hungry, hands mapping your body with desperate need, the alley’s secrecy making you pulse with desire.'>> <<set _msg = ($npc.type == 'dominant' ? 'You’re my fucking fantasy—spread for me.' : 'You’re unreal… I’m addicted to your body.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Then fuck me—make me yours.'>> <<set _msg = ($npc.type == 'dominant' ? 'I’ll ruin you in the best way.' : 'Tell me how you want it—I’m all in.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Don’t hold back—make me come.'>> <<set _msg = ($npc.type == 'dominant' ? 'You’ll come when I say, and you’ll love it.' : 'I’m giving you everything—fuck.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <</if>> <<set _randomValueChange = Random(4,8)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <div class="btn padding-top"><<button "Continue walking" "Walk_GoToNextLocation">><</button>></div> <</nobr>>
<<nobr>> <<if $player.gender() == 'Female'>> <<Chat $player 'Want me? Kneel and earn it.'>> <<set _msg = ($npc.type == 'dominant' ? 'You\'re trouble. I might kneel anyway.' : 'Anything for you—please.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Worship properly.'>> <<set _msg = ($npc.type == 'dominant' ? 'Careful. I bite back.' : 'I\'m yours. Say the word.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Louder.'>> <<set _msg = ($npc.type == 'dominant' ? 'We\'ll see who\'s on their knees first.' : 'Please. I want you.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<elseif $player.gender() == 'Male'>> <<Chat $player 'Flirting, huh? Kneel and earn my time.'>> <<set _msg = ($npc.type == 'dominant' ? 'Earn it? I\'ll show you who\'s in charge.' : 'Kneeling. Your move.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Beg for my attention.'>> <<set _msg = ($npc.type == 'dominant' ? 'Soon you\'ll be begging.' : 'Please—I want more of you.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Now leave before I change my mind.'>> <<set _msg = ($npc.type == 'dominant' ? 'I\'ll find you again.' : 'I\'m gone.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<else>> <<Chat $player 'Trying to charm me? You\'ll submit first.'>> <<set _msg = ($npc.type == 'dominant' ? 'Submitting to you could be fun.' : 'I\'m yours. Just say it.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'On your knees. Show respect.'>> <<set _msg = ($npc.type == 'dominant' ? 'I earn respect my way.' : 'You have it. I promise.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<Chat $player 'Leave—while I\'m gracious.'>> <<set _msg = ($npc.type == 'dominant' ? 'This isn\'t over.' : 'Leaving now.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <</if>> <<set _randomValueChange = Random(3,6)>> <<SetCharProgression $player "dominance" _randomValueChange true>> <div class="btn padding-top"><<button "Continue walking" "Walk_GoToNextLocation">><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _event = Random(1,4)>> <<switch _event>> <<case 1>> <<include "Bartender_Event_Drunk">> <<case 2>> <<include "Bartender_Event_Flirt">> <<case 3>> <<include "Bartender_Event_Group">> <<case 4>> <<include "Bartender_Event_Private">> <</switch>> <</nobr>>
<<nobr>> <<set $npcType = Random(1,2)>> <<if $npcType == 1>> <<set $npc = {name:'Dominant customer', gender:'Male', photo:'Media\\Characters\\QuestChars\\Other\\Unknown.jpg', type:'dominant'}>> <<else>> <<set $npc = {name:'Submissive customer', gender:'Male', photo:'Media\\Characters\\QuestChars\\Other\\Unknown.jpg', type:'submissive'}>> <</if>> <<ChatMessage 'A drunk customer stumbles up to the bar, his eyes glazed but hungry, leaning in too close as he slurs his order, his breath reeking of cheap booze.'>> <<set _msg = ($npc.type == 'dominant' ? 'Hey, gorgeous, pour me another... and maybe pour yourself into my lap while you\'re at it. I\'ll make it worth your while.' : 'Uh, bartender? Can I get a refill? And... if you\'re not busy, maybe we could... you know, hang out?')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <div class="btn padding-top"> <div class="btn padding-top"><<button "Refuse politely" "Bartender_Drunk_Refuse">><</button>></div> </div> <div class="btn padding-top"> <div class="btn padding-top"><<button "Flirt back" "Bartender_Drunk_Flirt">><</button>></div> </div> <div class="btn padding-top"> <<if $player.attributes.corruption.value >= 2>> <div class="btn padding-top"><<button "Let him touch" "Bartender_Drunk_Touch">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='let-touch-drunk'><<button "Let him touch">><</button>></div> <<done>> <<run addHoverTooltip('let-touch-drunk', 'Requires corruption level 2 or higher')>> <</done>> <</if>> </div> <div class="btn padding-top"> <<if $player.attributes.corruption.value >= 4>> <div class="btn padding-top"><<button "Go to private room">> <<goto "Bartender_Drunk_Private">> <</button>></div> <<else>> <div class="btn padding-top non-interacting" id='private-drunk'><<button "Go to private room">><</button>></div> <<done>> <<run addHoverTooltip('private-drunk', 'Requires corruption level 4 or higher')>> <</done>> <</if>> </div> <div class="btn padding-top"> <<if $player.attributes.dominance.value >= 2>> <div class="btn padding-top"><<button "Dominate him" "Bartender_Drunk_Dominate">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='dominate-drunk'><<button "Dominate him">><</button>></div> <<done>> <<run addHoverTooltip('dominate-drunk', 'Requires dominance level 2 or higher')>> <</done>> <</if>> </div> <</nobr>>
<<nobr>> <<Chat $player 'Sorry, buddy, I\'m cutting you off. You\'ve had enough, and I\'m not risking my job for your sloppy advances. Time to call it a night.'>> <<set _msg = ($npc.type == 'dominant' ? 'Tch, you\'re no fun... But I\'ll remember this, sweetheart. Next time, you\'ll be begging.' : 'Aw, come on... I was just having fun. Fine, I\'ll go, but you\'re missing out.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<SpendEnergy $player 5>> <<set $player.money -= 5>> <<ChatMessage 'You paid 5 to get rid of the drunk creep.'>> <<set _salary = Random(80,250)>> <<set $player.money += _salary>> <<set _salaryMSG = 'You got your daily salary of ' + _salary + ', keeping you afloat.'>> <<ChatMessage _salaryMSG>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<Chat $player 'Alright, one more drink... but only if you promise to behave. *You wink and lean in just enough to tease.*'>> <<set _msg = ($npc.type == 'dominant' ? 'Behave? Where\'s the fun in that? Keep teasing, and I\'ll show you how I really drink.' : 'I\'ll try... but your flirting is making it hard. Pour slow, let\'s chat.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(1,3)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <<SpendEnergy $player 5>> <<set $player.money += 15>> <<ChatMessage 'You scored 15 for that flirty pour.'>> <<set _salary = Random(80,250)>> <<set $player.money += _salary>> <<set _salaryMSG = 'You got your daily salary of ' + _salary + ', keeping you afloat.'>> <<ChatMessage _salaryMSG>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<Chat $player 'Fine, you can touch a little... but keep it discreet, or we\'re both in trouble. *You guide his hand to your waist.*'>> <<set _msg = ($npc.type == 'dominant' ? 'That\'s more like it. I\'ll take what I want, feel you shiver under my fingers.' : 'Oh, wow... I\'ll be gentle, but damn, you feel amazing.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(3,7)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <<SpendEnergy $player 10>> <<set $player.money += 25>> <<ChatMessage 'You pocketed 25 for letting him get handsy.'>> <<set _salary = Random(80,250)>> <<set $player.money += _salary>> <<set _salaryMSG = 'You got your daily salary of ' + _salary + ', keeping you afloat.'>> <<ChatMessage _salaryMSG>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<ChatMessage 'You slip into the back room with the drunk, the dim light hiding your tangled bodies as he takes you roughly against the wall, moans muffled by the thumping bass from the bar.'>> <<set _randomValueChange = Random(5,10)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <<SpendEnergy $player 20>> <<set $player.money += 40>> <<ChatMessage 'You raked in 40 for that wild backroom romp.'>> <<set _salary = Random(80,250)>> <<set $player.money += _salary>> <<set _salaryMSG = 'You got your daily salary of ' + _salary + ', keeping you afloat.'>> <<ChatMessage _salaryMSG>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<Chat $player 'Back off, you pathetic drunk. I\'m not your plaything—touch me again, and I\'ll have security throw you out on your ass.'>> <<set _msg = ($npc.type == 'dominant' ? 'Feisty, huh? I like that... but you\'ll break eventually.' : 'Sorry, I didn\'t mean to... I\'ll go, just don\'t be mad.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<SpendEnergy $player 5>> <<set _salary = Random(80,250)>> <<set $player.money += _salary>> <<set _salaryMSG = 'You got your daily salary of ' + _salary + ', keeping you afloat.'>> <<ChatMessage _salaryMSG>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<set $npcType = Random(1,2)>> <<if $npcType == 1>> <<set $npc = {name:'Dominant patron', gender:'Female', photo:'Media\\Characters\\QuestChars\\Other\\Unknown.jpg', type:'dominant'}>> <<else>> <<set $npc = {name:'Submissive patron', gender:'Female', photo:'Media\\Characters\\QuestChars\\Other\\Unknown.jpg', type:'submissive'}>> <</if>> <<ChatMessage 'A stunning patron slides onto a barstool, her gaze locking onto yours with a sultry smile, ordering a cocktail with a voice like velvet.'>> <<set _msg = ($npc.type == 'dominant' ? 'Make it strong, bartender. And if you\'re good, maybe I\'ll let you taste it off my lips.' : 'Something sweet, please... and if you\'re free later, maybe we could share a drink?')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <div class="btn padding-top"> <div class="btn padding-top"><<button "Keep it professional" "Bartender_Flirt_Professional">><</button>></div> </div> <div class="btn padding-top"> <div class="btn padding-top"><<button "Flirt back" "Bartender_Flirt_Back">><</button>></div> </div> <div class="btn padding-top"> <<if $player.attributes.corruption.value >= 2>> <div class="btn padding-top"><<button "Kiss her" "Bartender_Flirt_Kiss">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='kiss-flirt'><<button "Kiss her">><</button>></div> <<done>> <<run addHoverTooltip('kiss-flirt', 'Requires corruption level 2 or higher')>> <</done>> <</if>> </div> <div class="btn padding-top"> <<if $player.attributes.corruption.value >= 3>> <div class="btn padding-top"><<button "Offer more" "Bartender_Flirt_Offer">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='offer-flirt'><<button "Offer more">><</button>></div> <<done>> <<run addHoverTooltip('offer-flirt', 'Requires corruption level 3 or higher')>> <</done>> <</if>> </div> <div class="btn padding-top"> <<if $player.attributes.dominance.value >= 2>> <div class="btn padding-top"><<button "Turn the tables" "Bartender_Flirt_Dominate">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='dominate-flirt'><<button "Turn the tables">><</button>></div> <<done>> <<run addHoverTooltip('dominate-flirt', 'Requires dominance level 2 or higher')>> <</done>> <</if>> </div> <</nobr>>
<<nobr>> <<Chat $player 'Here\'s your drink, enjoy. Let me know if you need anything else.'>> <<set _msg = ($npc.type == 'dominant' ? 'Boring... but I\'ll be back when you loosen up.' : 'Thanks... maybe next time you\'ll join me?')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<SpendEnergy $player 5>> <<set _salary = Random(80,250)>> <<set $player.money += _salary>> <<set _salaryMSG = 'You got your daily salary of ' + _salary + ', keeping you afloat.'>> <<ChatMessage _salaryMSG>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<Chat $player 'Strong and sweet, just like you. *You mix the drink with a wink.*'>> <<set _msg = ($npc.type == 'dominant' ? 'Flattery will get you everywhere... keep it up.' : 'Oh, you\'re sweet too. Maybe we can chat more?')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(1,3)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <<SpendEnergy $player 5>> <<set $player.money += 20>> <<ChatMessage 'You earned 20 for that charming service.'>> <<set _salary = Random(80,250)>> <<set $player.money += _salary>> <<set _salaryMSG = 'You got your daily salary of ' + _salary + ', keeping you afloat.'>> <<ChatMessage _salaryMSG>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<Chat $player 'The drink\'s on me... if I can have a taste first. *You lean over the bar for a quick, heated kiss.*'>> <<set _msg = ($npc.type == 'dominant' ? 'Bold... I like it. Don\'t stop there.' : 'Mmm, sweet... can we do that again?')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(3,7)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <<SpendEnergy $player 10>> <<set $player.money += 30>> <<ChatMessage 'You scored 30 for that stolen kiss.'>> <<set _salary = Random(80,250)>> <<set $player.money += _salary>> <<set _salaryMSG = 'You got your daily salary of ' + _salary + ', keeping you afloat.'>> <<ChatMessage _salaryMSG>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<Chat $player 'Want something stronger? Like me... *You press close, offering more than just drinks.*'>> <<set _msg = ($npc.type == 'dominant' ? 'Yes, I do. Let\'s find somewhere private.' : 'Oh, wow... I\'m in, show me what you mean.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(5,10)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <<SpendEnergy $player 15>> <<set $player.money += 40>> <<ChatMessage 'You pocketed 40 for offering yourself.'>> <<set _salary = Random(80,250)>> <<set $player.money += _salary>> <<set _salaryMSG = 'You got your daily salary of ' + _salary + ', keeping you afloat.'>> <<ChatMessage _salaryMSG>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<Chat $player 'I\'m the one mixing drinks here, not you. Behave, or I\'ll cut you off.'>> <<set _msg = ($npc.type == 'dominant' ? 'Feisty bartender... I\'ll break you yet.' : 'Sorry, I didn\'t mean to overstep.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<SpendEnergy $player 5>> <<set _salary = Random(80,250)>> <<set $player.money += _salary>> <<set _salaryMSG = 'You got your daily salary of ' + _salary + ', keeping you afloat.'>> <<ChatMessage _salaryMSG>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<ChatMessage 'The club owner pulls you aside during a slow moment, his eyes roaming your body with that familiar hunger, suggesting ways to \'boost your tips\'.'>> <<set $npcType = Random(1,2)>> <<if $npcType == 1>> <<set $npc = {name:'Club Owner', gender:'Male', photo:'Media\\Characters\\QuestChars\\Other\\Unknown.jpg', type:'dominant'}>> <<else>> <<set $npc = {name:'Club Owner', gender:'Male', photo:'Media\\Characters\\QuestChars\\Other\\Unknown.jpg', type:'submissive'}>> <</if>> <<set _msg = ($npc.type == 'dominant' ? 'You\'re my best bartender... how about earning a bonus on your knees?' : 'You\'re doing great... if you\'re up for it, I could give you extra for some fun.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <div class="btn padding-top"> <div class="btn padding-top"><<button "Refuse" "Bartender_Boss_Refuse">><</button>></div> </div> <div class="btn padding-top"> <div class="btn padding-top"><<button "Flirt" "Bartender_Boss_Flirt">><</button>></div> </div> <div class="btn padding-top"> <<if $player.attributes.corruption.value >= 2>> <div class="btn padding-top"><<button "Handjob" "Bartender_Boss_Handjob">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='handjob-boss'><<button "Handjob">><</button>></div> <<done>> <<run addHoverTooltip('handjob-boss', 'Requires corruption level 2 or higher')>> <</done>> <</if>> </div> <div class="btn padding-top"> <<if $player.attributes.corruption.value >= 3 && $playerlock != true>> <div class="btn padding-top"><<button "Blowjob" "Bartender_Boss_Blowjob">><</button>></div> <<elseif $player.attributes.corruption.value >= 3 && $playerlock == true>> <div class="btn padding-top non-interacting" id='blowjob-boss'><<button "Blowjob">><</button>></div> <<done>> <<run addHoverTooltip('blowjob-boss', 'You are locked and cannot perform active sex')>> <</done>> <<else>> <div class="btn padding-top non-interacting" id='blowjob-boss'><<button "Blowjob">><</button>></div> <<done>> <<run addHoverTooltip('blowjob-boss', 'Requires corruption level 3 or higher')>> <</done>> <</if>> </div> <div class="btn padding-top"> <<if $player.attributes.corruption.value >= 4 && $playerlock != true>> <div class="btn padding-top"><<button "Sex">> <<goto "Bartender_Boss_Sex">> <</button>></div> <<elseif $player.attributes.corruption.value >= 4 && $playerlock == true>> <div class="btn padding-top non-interacting" id='sex-boss'><<button "Sex">><</button>></div> <<done>> <<run addHoverTooltip('sex-boss', 'You are locked and cannot perform active sex')>> <</done>> <<else>> <div class="btn padding-top non-interacting" id='sex-boss'><<button "Sex">><</button>></div> <<done>> <<run addHoverTooltip('sex-boss', 'Requires corruption level 4 or higher')>> <</done>> <</if>> </div> <div class="btn padding-top"> <<if $player.attributes.dominance.value >= 2>> <div class="btn padding-top"><<button "Dominate" "Bartender_Boss_Dominate">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='dominate-boss'><<button "Dominate">><</button>></div> <<done>> <<run addHoverTooltip('dominate-boss', 'Requires dominance level 2 or higher')>> <</done>> <</if>> </div> <</nobr>>
<<nobr>> <<Chat $player 'No way, boss. I\'m here to mix drinks, not mix with you. Keep your hands and offers to yourself.'>> <<set _msg = ($npc.type == 'dominant' ? 'You\'ll regret turning me down... but I\'ll wait.' : 'Alright, I get it... but the offer stands.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<SpendEnergy $player 10>> <<set $player.money -= 10>> <<ChatMessage 'You paid 10 for refusing the boss.'>> <<set _salary = Random(80,250)>> <<set $player.money += _salary>> <<set _salaryMSG = 'You got your daily salary of ' + _salary + ', keeping you afloat.'>> <<ChatMessage _salaryMSG>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<Chat $player 'A bonus, huh? Maybe if you buy me a drink first... *You smile coyly.*'>> <<set _msg = ($npc.type == 'dominant' ? 'Deal. But I expect more than flirting.' : 'Sure, let\'s have that drink... and see where it goes.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(1,3)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <<SpendEnergy $player 5>> <<set $player.money += 20>> <<ChatMessage 'You earned 20 for flirting with the boss.'>> <<set _salary = Random(80,250)>> <<set $player.money += _salary>> <<set _salaryMSG = 'You got your daily salary of ' + _salary + ', keeping you afloat.'>> <<ChatMessage _salaryMSG>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<Chat $player 'Alright, boss... *You slip your hand under the bar, stroking him discreetly.*'>> <<set _msg = ($npc.type == 'dominant' ? 'Good girl... faster, make me cum.' : 'Oh, fuck... that feels amazing.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(3,7)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <<SpendEnergy $player 10>> <<set $player.money += 35>> <<ChatMessage 'You scored 35 for that sneaky handjob.'>> <<set _salary = Random(80,250)>> <<set $player.money += _salary>> <<set _salaryMSG = 'You got your daily salary of ' + _salary + ', keeping you afloat.'>> <<ChatMessage _salaryMSG>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<Chat $player 'Want me to take care of that? *You drop to your knees behind the bar.*'>> <<set _msg = ($npc.type == 'dominant' ? 'Yes, suck it deep... earn your bonus.' : 'God, yes... be gentle at first.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(3,7)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <<SpendEnergy $player 15>> <<set $player.money += 45>> <<ChatMessage 'You pocketed 45 for the blowjob.'>> <<set _salary = Random(80,250)>> <<set $player.money += _salary>> <<set _salaryMSG = 'You got your daily salary of ' + _salary + ', keeping you afloat.'>> <<ChatMessage _salaryMSG>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<ChatMessage 'You and the boss sneak into the storage room, bodies slamming together in a frenzy of lust, the club\'s music drowning out your cries.'>> <<set _randomValueChange = Random(5,10)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <<SpendEnergy $player 20>> <<set $player.money += 60>> <<ChatMessage 'You raked in 60 for fucking the boss.'>> <<set _salary = Random(80,250)>> <<set $player.money += _salary>> <<set _salaryMSG = 'You got your daily salary of ' + _salary + ', keeping you afloat.'>> <<ChatMessage _salaryMSG>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<Chat $player 'Listen, boss, I\'m not your whore. Keep your sleazy offers to yourself, or I\'ll quit and tell everyone what you\'re like.'>> <<set _msg = ($npc.type == 'dominant' ? 'You\'ve got guts... but I own this place.' : 'Fine, I won\'t push... but don\'t say I didn\'t offer.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<SpendEnergy $player 10>> <<set _salary = Random(80,250)>> <<set $player.money += _salary>> <<set _salaryMSG = 'You got your daily salary of ' + _salary + ', keeping you afloat.'>> <<ChatMessage _salaryMSG>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<ChatMessage 'A group of rowdy patrons surrounds the bar, shouting orders and eyeing you hungrily, the air thick with the crowd\'s collective desire.'>> <<set _inc = Random(30,70)>> <<SpendEnergy $player 15>> <<set $player.money += _inc>> <<ChatMessage 'You handled the rush like a pro, earning ' + _inc + ' in tips.'>> <<set _salary = Random(80,250)>> <<set $player.money += _salary>> <<set _salaryMSG = 'You got your daily salary of ' + _salary + ', keeping you afloat.'>> <<ChatMessage _salaryMSG>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<ChatMessage 'It\'s a quiet night, and you find yourself alone with a mysterious stranger who slips you a note with a private invitation.'>> <<set _salary = Random(80,250)>> <<set $player.money += _salary>> <<set _salaryMSG = 'You got your daily salary of ' + _salary + ', keeping you afloat.'>> <<ChatMessage _salaryMSG>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _event = Random(1,5)>> <<switch _event>> <<case 1>> <<include "Diner_Event_Grope">> <<case 2>> <<include "Diner_Event_Boss">> <<case 3>> <<include "Diner_Event_Spill">> <<case 4>> <<include "Diner_Event_Rush">> <<case 5>> <<include "Diner_Event_Busy">> <</switch>> <</nobr>>
<<nobr>> <<set $npcType = Random(1,2)>> <<if $npcType == 1>> <<set $npc = {name:'Customer', gender:'Male', photo:'Media\\Characters\\QuestChars\\Other\\Unknown.jpg', type:'dominant'}>> <<else>> <<set $npc = {name:'Customer', gender:'Male', photo:'Media\\Characters\\QuestChars\\Other\\Unknown.jpg', type:'submissive'}>> <</if>> <<ChatMessage 'A brazen customer leans over the greasy diner counter, his eyes glinting with raw hunger as his calloused hand slides across your waist, fingers digging into your hips with a boldness that makes your skin crawl and your heart race.'>> <<set _msg = ($npc.type == 'dominant' ? 'Fuck, look at you... That tight little body’s begging for my hands. I’m gonna take what I want, feel you squirm under my grip.' : 'Shit, I’m sorry if this is too much... Your curves are just too damn tempting, I can’t keep my hands off your hot skin.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <div class="btn padding-top"> <div class="btn padding-top"><<button "Push away" "Diner_Grope_PushAway">><</button>></div> </div> <div class="btn padding-top"> <div class="btn padding-top"><<button "Tease back" "Diner_Grope_Tease">><</button>></div> </div> <div class="btn padding-top"> <<if $player.attributes.corruption.value >= 2>> <div class="btn padding-top"><<button "Let him touch a bit" "Diner_Grope_Partial">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='let-touch'><<button "Let him touch a bit">><</button>></div> <<done>> <<run addHoverTooltip('let-touch', 'Requires corruption level 2 or higher')>> <</done>> <</if>> </div> <div class="btn padding-top"> <<if $player.attributes.corruption.value >= 4>> <div class="btn padding-top"><<button "Give in">> <<goto "Diner_Grope_GiveIn">> <</button>></div> <<else>> <div class="btn padding-top non-interacting" id='give-in'><<button "Give in">><</button>></div> <<done>> <<run addHoverTooltip('give-in', 'Requires corruption level 4 or higher')>> <</done>> <</if>> </div> <div class="btn padding-top"> <<if $player.attributes.dominance.value >= 2>> <div class="btn padding-top"><<button "Dominate him" "Diner_Grope_Dominate">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='dominate'><<button "Dominate him">><</button>></div> <<done>> <<run addHoverTooltip('dominate', 'Requires dominance level 2 or higher')>> <</done>> <</if>> </div> <</nobr>>
<<nobr>> <<Chat $player 'Get your fucking hands off me, you sleazy bastard! Touch me again, and I’ll scream this place down until security drags your sorry ass out to the curb. Keep your filthy paws to yourself, you disgusting creep!'>> <<set _msg = ($npc.type == 'dominant' ? 'Tch, you’ll regret this, you little tease... I can see your body wants it, even if your mouth says no.' : 'Shit, I’m sorry! I didn’t mean to—fuck, you’re just so goddamn irresistible.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<SpendEnergy $player 10>> <<set $player.money -= 10>> <<ChatMessage 'You paid 10 for shoving that creep away, worth every penny.'>> <<set _salary = Random(70,200)>> <<set $player.money += _salary>> <<set _salaryMSG = 'You got your daily salary of ' + _salary + '.'>> <<ChatMessage _salaryMSG>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<Chat $player 'Oh, you think you can just grab me like that? Maybe I’ll let your hands linger for a sec, but don’t get cocky—I’m still in charge here. *You tease him with a subtle sway of your hips.*'>> <<set _msg = ($npc.type == 'dominant' ? 'Fuck yeah, that’s the spirit... Keep teasing, and I might just take more.' : 'Oh, shit, you’re teasing me? That’s hot, keep it playful, I’m begging you.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(1,3)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <<SpendEnergy $player 5>> <<set $player.money += 10>> <<ChatMessage 'You pocketed 10 for playing along with that flirty tease.'>> <<set _salary = Random(70,200)>> <<set $player.money += _salary>> <<set _salaryMSG = 'You got your daily salary of ' + _salary + '.'>> <<ChatMessage _salaryMSG>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<Chat $player 'Alright, fine, you can touch a little... Feel my curves under your fingers, but don’t push it, or I’ll shut this down faster than you can blink. My skin’s hot, but I’m not your playground.'>> <<set _msg = ($npc.type == 'dominant' ? 'That’s more like it, you little tease... I’ll keep it light, but fuck, you’re driving me wild.' : 'Oh, thank you... I’ll be gentle, just let me feel your warmth for a second.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(3,7)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <<SpendEnergy $player 10>> <<set $player.money += 20>> <<ChatMessage 'You scored 20 for letting his hands wander a bit.'>> <<set _salary = Random(70,200)>> <<set $player.money += _salary>> <<set _salaryMSG = 'You got your daily salary of ' + _salary + '.'>> <<ChatMessage _salaryMSG>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<Chat $player 'Fuck it, keep going... Your hands are lighting me up, and I can’t fucking stand how good it feels. Explore every inch and make me melt right here at this damn counter. *I drown in the dirty thrill.*'>> <<set _msg = ($npc.type == 'dominant' ? 'That’s right, you’re mine now... I’m gonna make you fucking burn for me.' : 'Holy shit, you’re giving in? I’ll take it slow, but fuck, I want every piece of you.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(5,10)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <<SpendEnergy $player 15>> <<set $player.money += 30>> <<ChatMessage 'You raked in 30 for surrendering to the heat.'>> <<set _salary = Random(70,200)>> <<set $player.money += _salary>> <<set _salaryMSG = 'You got your daily salary of ' + _salary + '.'>> <<ChatMessage _salaryMSG>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<Chat $player 'You think you can just touch me? Back the fuck off, you pathetic creep, or I’ll have you thrown out faster than you can blink. I’m not your toy—try that again, and you’ll regret it.'>> <<set _msg = ($npc.type == 'dominant' ? 'Tch, you’ve got some balls... But your body’s screaming for me, don’t lie.' : 'Fuck, I’m sorry! I didn’t mean to—you’re just too damn tempting.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<SpendEnergy $player 10>> <<set _salary = Random(70,200)>> <<set $player.money += _salary>> <<set _salaryMSG = 'You got your daily salary of ' + _salary + '.'>> <<ChatMessage _salaryMSG>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<ChatMessage 'The boss struts up, his eyes raking over your body like he’s undressing you right there in the diner, the air thick with his unspoken intentions.'>> <<set $npcType = Random(1,2)>> <<if $npcType == 1>> <<set $npc = {name:'Boss', gender:'Male', photo:'Media\\Characters\\QuestChars\\Other\\Unknown.jpg', type:'dominant'}>> <<else>> <<set $npc = {name:'Boss', gender:'Male', photo:'Media\\Characters\\QuestChars\\Other\\Unknown.jpg', type:'submissive'}>> <</if>> <<set _msg = ($npc.type == 'dominant' ? 'You’re killing it today, sweetheart. How about you earn a fat bonus on your knees?' : 'You’re doing great, kid... If you’re up for it, I could slip you a bonus for some extra fun.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <div class="btn padding-top"> <div class="btn padding-top"><<button "Refuse" "Diner_Boss_Refuse">><</button>></div> </div> <div class="btn padding-top"> <div class="btn padding-top"><<button "Flirt lightly" "Diner_Boss_Flirt">><</button>></div> </div> <div class="btn padding-top"> <<if $player.attributes.corruption.value >= 2>> <div class="btn padding-top"><<button "Jerk him off" "Diner_Boss_JerkOff">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='jerk-off'><<button "Jerk him off">><</button>></div> <<done>> <<run addHoverTooltip('jerk-off', 'Requires corruption level 2 or higher')>> <</done>> <</if>> </div> <div class="btn padding-top"> <<if $player.attributes.corruption.value >= 3>> <div class="btn padding-top"><<button "Give blowjob" "Diner_Boss_Blowjob">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='blowjob'><<button "Give blowjob">><</button>></div> <<done>> <<run addHoverTooltip('blowjob', 'Requires corruption level 3 or higher')>> <</done>> <</if>> </div> <div class="btn padding-top"> <<if $player.attributes.corruption.value >= 4>> <div class="btn padding-top"><<button "Agree to sex">> <<goto "Diner_Boss_Agree">> <</button>></div> <<else>> <div class="btn padding-top non-interacting" id='agree-sex'><<button "Agree to sex">><</button>></div> <<done>> <<run addHoverTooltip('agree-sex', 'Requires corruption level 4 or higher')>> <</done>> <</if>> </div> <div class="btn padding-top"> <<if $player.attributes.dominance.value >= 2>> <div class="btn padding-top"><<button "Refuse firmly" "Diner_Boss_Dominate">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='refuse-dom'><<button "Refuse firmly">><</button>></div> <<done>> <<run addHoverTooltip('refuse-dom', 'Requires dominance level 2 or higher')>> <</done>> <</if>> </div> <</nobr>>
<<nobr>> <<Chat $player 'No fucking way, boss. I’m here to serve food, not your ego. Keep your sleazy offers to yourself, or I’ll report your ass for crossing every line in the damn employee handbook.'>> <<set _msg = ($npc.type == 'dominant' ? 'You’ve got some nerve, huh? Fine, but I see that spark in your eyes—you’ll come around.' : 'Alright, alright, I get it... But if you change your mind, I’m here.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<SpendEnergy $player 10>> <<set $player.money -= 10>> <<ChatMessage 'You paid 10 for telling the boss to fuck off.'>> <<set _salary = Random(70,200)>> <<set $player.money += _salary>> <<set _salaryMSG = 'You got your daily salary of ' + _salary + '.'>> <<ChatMessage _salaryMSG>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<Chat $player 'A bonus, huh? Maybe if you sweet-talk me right, boss—let’s see how much charm you’ve got. *You wink and give a playful sway.*'>> <<set _msg = ($npc.type == 'dominant' ? 'Oh, you’re playing my game now? Keep that up, and we’ll have some real fun.' : 'Shit, you’re flirting? That’s cute—let’s see how far you’ll take it.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(1,3)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <<SpendEnergy $player 5>> <<set $player.money += 15>> <<ChatMessage 'You snagged 15 for that flirty little dance.'>> <<set _salary = Random(70,200)>> <<set $player.money += _salary>> <<set _salaryMSG = 'You got your daily salary of ' + _salary + '.'>> <<ChatMessage _salaryMSG>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<Chat $player 'Alright, boss, you want a piece of me? *You wrap your hand around him, stroking slow and hard until he’s begging for release.*'>> <<set _msg = ($npc.type == 'dominant' ? 'Fuck yeah, that’s it. Work me good, and I’ll make it worth your while.' : 'Oh, shit, your hand... Keep going, I’m fucking melting here.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(3,7)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <<SpendEnergy $player 10>> <<set $player.money += 30>> <<ChatMessage 'You scored 30 for jerking him off like a pro.'>> <<set _salary = Random(70,200)>> <<set $player.money += _salary>> <<set _salaryMSG = 'You got your daily salary of ' + _salary + '.'>> <<ChatMessage _salaryMSG>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<Chat $player 'You want a real treat, boss? *You take him into your mouth, lips and tongue working him over until he’s trembling, savoring every second.*'>> <<set _msg = ($npc.type == 'dominant' ? 'Fuck, yes, suck me deep. You’re gonna earn every cent of this.' : 'Oh, god, your mouth... Be gentle, but don’t you dare stop.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(3,7)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <<SpendEnergy $player 15>> <<set $player.money += 40>> <<ChatMessage 'You pocketed 40 for that mind-blowing blowjob.'>> <<set _salary = Random(70,200)>> <<set $player.money += _salary>> <<set _salaryMSG = 'You got your daily salary of ' + _salary + '.'>> <<ChatMessage _salaryMSG>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<ChatMessage 'You slip into the back room with the boss, the air heavy with lust as you both tear into each other, moans and gasps echoing off the walls in a wild, sweaty tangle of bodies.'>> <<set _randomValueChange = Random(5,10)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <<SpendEnergy $player 20>> <<set $player.money += 50>> <<ChatMessage 'You scored 50 for fucking the boss in the heat of the moment.'>> <<set _salary = Random(70,200)>> <<set $player.money += _salary>> <<set _salaryMSG = 'You got your daily salary of ' + _salary + '.'>> <<ChatMessage _salaryMSG>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<Chat $player 'Listen up, boss, I’m not your fucking plaything. Keep your hands and your dirty offers to yourself, or I’ll make sure everyone knows what a sleaze you are.'>> <<set _msg = ($npc.type == 'dominant' ? 'You’ve got some guts, huh? Fine, but I know you want it deep down.' : 'Alright, I get it... But if you ever want to play, I’m here.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<SpendEnergy $player 10>> <<set _salary = Random(70,200)>> <<set $player.money += _salary>> <<set _salaryMSG = 'You got your daily salary of ' + _salary + '.'>> <<ChatMessage _salaryMSG>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<set $npcType = Random(1,2)>> <<if $npcType == 1>> <<set $npc = {name:'Customer', gender:'Male', photo:'Media\\Characters\\QuestChars\\Other\\Unknown.jpg', type:'dominant'}>> <<else>> <<set $npc = {name:'Customer', gender:'Male', photo:'Media\\Characters\\QuestChars\\Other\\Unknown.jpg', type:'submissive'}>> <</if>> <<ChatMessage 'You fumble a steaming plate of food, and it splashes right into a customer’s lap, the hot mess soaking their pants as they jump up, eyes wide with shock and a hint of something else.'>> <<set _msg = ($npc.type == 'dominant' ? 'What the fuck, you clumsy bitch?! You’re gonna make this right, maybe with those pretty hands of yours.' : 'Oh, shit, that’s hot! No big deal, but damn, your hands look like they could fix this.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <div class="btn padding-top"><<button "Apologize">> <<goto "Diner_Spill_Apologize">> <</button>></div> <div class="btn padding-top"> <div class="btn padding-top"><<button "Wipe it off playfully" "Diner_Spill_Wipe">><</button>></div> </div> <div class="btn padding-top"> <<if $player.attributes.corruption.value >= 2>> <div class="btn padding-top"><<button "Kiss him" "Diner_Spill_Kiss">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='kiss'><<button "Kiss him">><</button>></div> <<done>> <<run addHoverTooltip('kiss', 'Requires corruption level 2 or higher')>> <</done>> <</if>> </div> <div class="btn padding-top"> <<if $player.attributes.corruption.value >= 3>> <div class="btn padding-top"><<button "Offer body compensation" "Diner_Spill_Offer">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='offer'><<button "Offer body compensation">><</button>></div> <<done>> <<run addHoverTooltip('offer', 'Requires corruption level 3 or higher')>> <</done>> <</if>> </div> <div class="btn padding-top"> <<if $player.attributes.dominance.value >= 2>> <div class="btn padding-top"><<button "Refuse compensation" "Diner_Spill_Dominate">><</button>></div> <<else>> <div class="btn padding-top non-interacting" id='refuse-comp'><<button "Refuse compensation">><</button>></div> <<done>> <<run addHoverTooltip('refuse-comp', 'Requires dominance level 2 or higher')>> <</done>> <</if>> </div> <</nobr>>
<<nobr>> <<Chat $player 'Oh my god, I’m so fucking sorry! I didn’t mean to dump that hot soup all over you. *You grab a towel to clean the mess before it stains or burns.*'>> <<set $player.money -= 50>> <<ChatMessage 'You shelled out 50 for that clumsy spill.'>> <<SpendEnergy $player 10>> <<set _salary = Random(70,200)>> <<set $player.money += _salary>> <<set _salaryMSG = 'You got your daily salary of ' + _salary + '.'>> <<ChatMessage _salaryMSG>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<Chat $player 'Whoops, my bad! Let me clean that up. *Your hands linger, brushing over his thighs as you wipe, feeling the heat through the soaked fabric.*'>> <<set _msg = ($npc.type == 'dominant' ? 'Yeah, clean it good, sweetheart. Make those hands work for me.' : 'Oh, fuck, your hands... Take your time, that feels nice.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(1,3)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <<SpendEnergy $player 5>> <<set $player.money += 10>> <<ChatMessage 'You scored 10 for that playful wipe-down.'>> <<set _salary = Random(70,200)>> <<set $player.money += _salary>> <<set _salaryMSG = 'You got your daily salary of ' + _salary + '.'>> <<ChatMessage _salaryMSG>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<Chat $player 'Let me make this right... Come here. *You press your lips to his in a hot, messy kiss, tongues tangling in a wild, reckless moment.*'>> <<set _msg = ($npc.type == 'dominant' ? 'A kiss, huh? Better make it fucking good, or I’ll want more.' : 'Oh, shit, a kiss? Come here, that’s so fucking sweet.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(3,7)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <<SpendEnergy $player 10>> <<set $player.money += 20>> <<ChatMessage 'You pocketed 20 for that steamy kiss.'>> <<set _salary = Random(70,200)>> <<set $player.money += _salary>> <<set _salaryMSG = 'You got your daily salary of ' + _salary + '.'>> <<ChatMessage _salaryMSG>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<Chat $player 'Fuck, I messed up... How about I make it up to you? *You press your body against his, letting him feel every curve as compensation.*'>> <<set _msg = ($npc.type == 'dominant' ? 'Damn right, you owe me. Come here, I’m gonna feel every fucking inch of you.' : 'Oh, shit, you’re offering that? I’m in—let me touch you back.')>> <<ChatWithoutNPC $npc.name $npc.photo _msg>> <<set _randomValueChange = Random(5,10)>> <<SetCharProgression $player "corruption" _randomValueChange true>> <<SpendEnergy $player 15>> <<set $player.money += 30>> <<ChatMessage 'You scored 30 for offering your body as compensation.'>> <<set _salary = Random(70,200)>> <<set $player.money += _salary>> <<set _salaryMSG = 'You got your daily salary of ' + _salary + '.'>> <<ChatMessage _salaryMSG>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<Chat $player 'Yeah, I fucked up, but don’t think you’re getting anything out of me. Wipe it off yourself, or I’ll make sure everyone knows you’re trying to pull some shady shit.'>> <<SpendEnergy $player 10>> <<set _salary = Random(70,200)>> <<set $player.money += _salary>> <<set _salaryMSG = 'You got your daily salary of ' + _salary + '.'>> <<ChatMessage _salaryMSG>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<ChatMessage 'The diner’s a fucking madhouse today! Customers are pouring in, orders piling up like a goddamn avalanche. You’re hustling your ass off, sweat dripping, but the tips are rolling in hot.'>> <<set _inc = Random (50, 100)>> <<SpendEnergy $player 20>> <<set $player.money += 50>> <<ChatMessage 'You raked in 50 extra for surviving that insane rush.'>> <<set _salary = Random(70,200)>> <<set $player.money += _salary>> <<set _salaryMSG = 'You got your daily salary of ' + _salary + '.'>> <<ChatMessage _salaryMSG>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<ChatMessage 'You’re fucking beat today, every step dragging like you’re wading through molasses. The diner’s buzzing, orders stacking up, and your body’s screaming for a break in this relentless chaos.'>> <<SpendEnergy $player 10>> <<set _salary = Random(70,200)>> <<set $player.money += _salary>> <<set _salaryMSG = 'You got your daily salary of ' + _salary + '.'>> <<ChatMessage _salaryMSG>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> <</nobr>>
<<nobr>> <<include "UpdateAll">> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<set _tempNPC = { name: "Woman", gender: "Female", photo: "Media\\Characters\\QuestChars\\Other\\female_unknown.jpg", data: [], }>> <<ChatWithoutNPC _tempNPC.name _tempNPC.photo 'Um… excuse me?'>> <</nobr>>
<<nobr>> <<widget "Sleep">> <<set _posLock = _args[0]>> <<if $player.info.currentLocation == "Player_Bedroom_PHome" && getQuestState("mad_dog_quest1") == "completed" && getQuestState("rayna_voss_quest1") == undefined>> <<goto "MadDog_Call_RaynaQuest">> <<else>> <<set $player.status.energy.value = $player.status.energy.max>> <<set $player.status.health.value = $player.status.health.max>> <<set $player.status.alcoholIntoxication.value = $player.status.alcoholIntoxication.min>> <<if $dateTime.hours <= 6>> <<set _tempTime = {minutes: 0, hours: 6}>> <<SetTime _tempTime>> <<SpendTime 60>> <<else>> <<SpendDay>> <</if>> <<set $playerFollowers = []>> <<if _posLock != undefined>> <<goto _posLock>> <<else>> <<goto $player.info.currentLocation>> <</if>> <</if>> <</widget>> <<widget "Relax">> <<if $player.status.energy.value < $player.status.energy.max>> <<run $player.status.energy.increase(random(1, 5))>> <<set $player.status.alcoholIntoxication.decrease (Random(1,2))>> <<SpendTimeWithoutUpdate 5>> <<goto $player.info.currentLocation>> <</if>> <</widget>> <<widget "Wait">> <<run $player.status.energy.increase(Random(1, 5, true))>> <<SpendTimeWithoutUpdate 15>> <<set $player.status.alcoholIntoxication.decrease (Random(1,2))>> <<goto $player.info.currentLocation>> <</widget>> <<widget "SleepButton">> <div class="btn"><<button "Sleep">><<Sleep>><</button>></div> <<if $player.status.potency.value > 0 && $playerlock != true>> <div class="btn"><<button "Jerk off" "Jerk_off">><<set $gameSettings.allowSaves = false>> <<set $canShowStatsBtn = false>><<set $rejectJoinYou = false>><<set $jerkType = "Jerk Off">><</button>></div> <<if $player.inventory.hasItem("Dildo") == true>> <div class="btn"><<button "Dildo Play" "DildoType">><<set $gameSettings.allowSaves = false>> <<set $canShowStatsBtn = false>><<set $rejectJoinYou = false>><<set $jerkType = "Dildo">><</button>></div> <</if>> <</if>> <</widget>> <</nobr>>
<<nobr>> <<widget "UpdateNPCVar">> <<set $interactionNpc = $Characters[$indexNPC]>> <</widget>> <</nobr>>
<<nobr>> /*Anal */ <<widget "SetAnalPick">> <<set _domGender = _args[0]>> <<set _subGender = _args[1]>> <<if _domGender == "Male" && _subGender == "Shemale">> <<set _pick = GetSexPick("Anal", _domGender, _subGender, 100)>> <<elseif _domGender == "Male" && _subGender == "Male">> <<set _pick = GetSexPick("Anal", _domGender, _subGender, 22)>> <<elseif _domGender == "Male" && _subGender == "Female">> <<set _pick = GetSexPick("Anal", _domGender, _subGender, 50)>> <<elseif _domGender == "Female" && _subGender == "Female">> <<set _pick = GetSexPick("Anal", _domGender, _subGender, 4)>> <<elseif _domGender == "Female" && _subGender == "Male">> <<set _pick = GetSexPick("Anal", _domGender, _subGender, 39)>> <<elseif _domGender == "Female" && _subGender == "Shemale">> <<set _pick = GetSexPick("Anal", _domGender, _subGender, 4)>> <<elseif _domGender == "Shemale" && _subGender == "Female">> <<set _pick = GetSexPick("Anal", _domGender, _subGender, 5)>> <<elseif _domGender == "Shemale" && _subGender == "Male">> <<set _pick = GetSexPick("Anal", _domGender, _subGender, 45)>> <<elseif _domGender == "Shemale" && _subGender == "Shemale">> <<set _pick = GetSexPick("Anal", _domGender, _subGender, 22)>> <</if>> <</widget>> <<widget "SetAnalCumInPick">> <<set _domGender = _args[0]>> <<set _subGender = _args[1]>> <<if _domGender == "Male" && _subGender == "Shemale">> <<set _pick = GetSexPick("Anal", _domGender, _subGender, 13, "Cum/In/")>> <<elseif _domGender == "Male" && _subGender == "Male">> <<set _pick = GetSexPick("Anal", _domGender, _subGender, 4, "Cum/In/")>> <<elseif _domGender == "Male" && _subGender == "Female">> <<set _pick = GetSexPick("Anal", _domGender, _subGender, 16, "Cum/In/")>> <<elseif _domGender == "Shemale" && _subGender == "Female">> <<set _pick = GetSexPick("Anal", _domGender, _subGender, 4, "Cum/In/")>> <<elseif _domGender == "Shemale" && _subGender == "Male">> <<set _pick = GetSexPick("Anal", _domGender, _subGender, 1, "Cum/In/")>> <<elseif _domGender == "Shemale" && _subGender == "Shemale">> <<set _pick = GetSexPick("Anal", _domGender, _subGender, 0, "Cum/In/")>> <</if>> <</widget>> <<widget "SetAnalCumOutPick">> <<set _domGender = _args[0]>> <<set _subGender = _args[1]>> <<if _domGender == "Male" && _subGender == "Shemale">> <<set _pick = GetSexPick("Anal", _domGender, _subGender, 11, "Cum/Out/")>> <<elseif _domGender == "Male" && _subGender == "Male">> <<set _pick = GetSexPick("Anal", _domGender, _subGender, 4, "Cum/Out/")>> <<elseif _domGender == "Male" && _subGender == "Female">> <<set _pick = GetSexPick("Anal", _domGender, _subGender, 9, "Cum/Out/")>> <<elseif _domGender == "Shemale" && _subGender == "Female">> <<set _pick = GetSexPick("Vag", _domGender, _subGender, 0, "Cum/Out/")>> <<elseif _domGender == "Shemale" && _subGender == "Male">> <<set _pick = GetSexPick("Anal", _domGender, _subGender, 1, "Cum/Out/")>> <<elseif _domGender == "Shemale" && _subGender == "Shemale">> <<set _pick = GetSexPick("Anal", _domGender, _subGender, 0, "Cum/Out/")>> <</if>> <</widget>> <<widget "SetAnalPartnerCumPick">> <<set _domGender = _args[0]>> <<set _subGender = _args[1]>> <<if _domGender == "Male" && _subGender == "Shemale">> <<set _pick = GetSexPick("Anal", _domGender, _subGender, 9, "partner_cum/")>> <<elseif _domGender == "Male" && _subGender == "Male">> <<set _pick = GetSexPick("Anal", _domGender, _subGender, 4, "partner_cum/")>> <<elseif _domGender == "Female" && _subGender == "Male">> <<set _pick = GetSexPick("Anal", _domGender, _subGender, 7, "partner_cum/")>> <<elseif _domGender == "Female" && _subGender == "Shemale">> <<set _pick = GetSexPick("Anal", _domGender, _subGender, 3, "partner_cum/")>> <<elseif _domGender == "Shemale" && _subGender == "Male">> <<set _pick = GetSexPick("Anal", _domGender, _subGender, 1, "partner_cum/")>> <<elseif _domGender == "Shemale" && _subGender == "Shemale">> <<set _pick = GetSexPick("Anal", _domGender, _subGender, 0, "partner_cum/")>> <</if>> <</widget>> /*Oral */ <<widget "SetOralPick">> <<set _domGender = _args[0]>> <<set _subGender = _args[1]>> <<if _domGender == "Male" && _subGender == "Shemale">> <<set _pick = GetSexPick("Oral", _domGender, _subGender, 45)>> <<elseif _domGender == "Male" && _subGender == "Male">> <<set _pick = GetSexPick("Oral", _domGender, _subGender, 21)>> <<elseif _domGender == "Male" && _subGender == "Female">> <<set _pick = GetSexPick("Oral", _domGender, _subGender, 19)>> <<elseif _domGender == "Female" && _subGender == "Female">> <<set _pick = GetSexPick("Oral", _domGender, _subGender, 13)>> <<elseif _domGender == "Female" && _subGender == "Male">> <<set _pick = GetSexPick("Oral", _domGender, _subGender, 12)>> <<elseif _domGender == "Female" && _subGender == "Shemale">> <<set _pick = GetSexPick("Oral", _domGender, _domGender, 13)>> <<elseif _domGender == "Shemale" && _subGender == "Female">> <<set _pick = GetSexPick("Oral", _domGender, _subGender, 9)>> <<elseif _domGender == "Shemale" && _subGender == "Male">> <<set _pick = GetSexPick("Oral", _domGender, _subGender, 19)>> <<elseif _domGender == "Shemale" && _subGender == "Shemale">> <<set _pick = GetSexPick("Oral", _domGender, _subGender, 12)>> <</if>> <</widget>> <<widget "SetOralCumInPick">> <<set _domGender = _args[0]>> <<set _subGender = _args[1]>> <<if _domGender == "Male" && _subGender == "Shemale">> <<set _pick = GetSexPick("Oral", _domGender, _subGender, 6, "Cum/In/")>> <<elseif _domGender == "Male" && _subGender == "Male">> <<set _pick = GetSexPick("Oral", _domGender, _subGender, 3, "Cum/In/")>> <<elseif _domGender == "Male" && _subGender == "Female">> <<set _pick = GetSexPick("Oral", _domGender, _subGender, 29, "Cum/In/")>> <<elseif _domGender == "Female" && _subGender == "Female">> <<set _pick = GetSexPick("Oral", _domGender, _subGender, 3, "Cum/")>> <<elseif _domGender == "Female" && _subGender == "Shemale">> <<set _pick = GetSexPick("Oral", _domGender, "Female", 3, "Cum/")>> <<elseif _domGender == "Female" && _subGender == "Male">> <<set _pick = GetSexPick("Oral", _domGender, _subGender, 4, "Cum/")>> <<elseif _domGender == "Shemale" && _subGender == "Female">> <<set _pick = GetSexPick("Oral", _domGender, _subGender, 1, "Cum/In/")>> <<elseif _domGender == "Shemale" && _subGender == "Male">> <<set _pick = GetSexPick("Oral", _domGender, _subGender, 0, "Cum/In/")>> <<elseif _domGender == "Shemale" && _subGender == "Shemale">> <<set _pick = GetSexPick("Oral", _domGender, _subGender, 0, "Cum/In/")>> <</if>> <</widget>> <<widget "SetOralCumOutPick">> <<set _domGender = _args[0]>> <<set _subGender = _args[1]>> <<if _domGender == "Male" && _subGender == "Shemale">> <<set _pick = GetSexPick("Oral", _domGender, _subGender, 8, "Cum/Out/")>> <<elseif _domGender == "Male" && _subGender == "Male">> <<set _pick = GetSexPick("Oral", _domGender, _subGender, 6, "Cum/Out/")>> <<elseif _domGender == "Male" && _subGender == "Female">> <<set _pick = GetSexPick("Oral", _domGender, _subGender, 18, "Cum/Out/")>> <<elseif _domGender == "Shemale" && _subGender == "Female">> <<set _pick = GetSexPick("Oral", _domGender, _subGender, 3, "Cum/Out/")>> <<elseif _domGender == "Shemale" && _subGender == "Male">> <<set _pick = GetSexPick("Oral", _domGender, _subGender, 0, "Cum/Out/")>> <<elseif _domGender == "Shemale" && _subGender == "Shemale">> <<set _pick = GetSexPick("Oral", _domGender, _subGender, 2, "Cum/Out/")>> <</if>> <</widget>> <<widget "SetFacefuckPick">> <<set _domGender = _args[0]>> <<set _subGender = _args[1]>> <<if _domGender == "Male" && _subGender == "Shemale">> <<set _pick = GetSexPick("Oral", _domGender, "Female", 9, "Facefuck/")>> <<elseif _domGender == "Male" && _subGender == "Male">> <<set _pick = GetSexPick("Oral", _domGender, _subGender, 5, "Facefuck/")>> <<elseif _domGender == "Male" && _subGender == "Female">> <<set _pick = GetSexPick("Oral", _domGender, _subGender, 4, "Facefuck/")>> <<elseif _domGender == "Female" && _subGender == "Female">> <<set _pick = GetSexPick("Oral", _domGender, _subGender, 1, "Strap/Facefuck/")>> <<elseif _domGender == "Female" && _subGender == "Male">> <<set _pick = GetSexPick("Oral", _domGender, _subGender, 1, "Strap/Facefuck/")>> <<elseif _domGender == "Female" && _subGender == "Shemale">> <<set _pick = GetSexPick("Oral", _domGender, "Female", 1, "Strap/Facefuck/")>> <<elseif _domGender == "Shemale" && _subGender == "Female">> <<set _pick = GetSexPick("Oral", _domGender, _subGender, 3, "Facefuck/")>> <<elseif _domGender == "Shemale" && _subGender == "Male">> <<set _pick = GetSexPick("Oral", _domGender, _subGender, 0, "Facefuck/")>> <<elseif _domGender == "Shemale" && _subGender == "Shemale">> <<set _pick = GetSexPick("Oral", _domGender, "Female", 3, "Facefuck/")>> <</if>> <</widget>> <<widget "SetStrapFacePick">> <<set _domGender = _args[0]>> <<set _subGender = _args[1]>> <<if _domGender == "Female" && _subGender == "Female">> <<set _pick = GetSexPick("Oral", _domGender, _subGender, 11, "Strap/")>> <<elseif _domGender == "Female" && _subGender == "Male">> <<set _pick = GetSexPick("Oral", _domGender, _subGender, 4, "Strap/")>> <<elseif _domGender == "Female" && _subGender == "Shemale">> <<set _pick = GetSexPick("Oral", _domGender, "Female", 11, "Strap/")>> <</if>> <</widget>> /*Vaginal */ <<widget "SetVagPick">> <<set _domGender = _args[0]>> <<set _subGender = _args[1]>> <<if _domGender == "Male" && _subGender == "Female">> <<set _pick = GetSexPick("Vag", _domGender, _subGender, 51)>> <<elseif _domGender == "Female" && _subGender == "Female">> <<set _pick = GetSexPick("Vag", _domGender, _subGender, 29)>> <<elseif _domGender == "Shemale" && _subGender == "Female">> <<set _pick = GetSexPick("Vag", _domGender, _subGender, 29)>> <</if>> <</widget>> <<widget "SetVagCumInPick">> <<set _domGender = _args[0]>> <<set _subGender = _args[1]>> <<if _domGender == "Male" && _subGender == "Female">> <<set _pick = GetSexPick("Vag", _domGender, _subGender, 4, "Cum/In/")>> <<elseif _domGender == "Shemale" && _subGender == "Female">> <<set _pick = GetSexPick("Vag", _domGender, _subGender, 1, "Cum/In/")>> <</if>> <</widget>> <<widget "SetVagCumOutPick">> <<set _domGender = _args[0]>> <<set _subGender = _args[1]>> <<if _domGender == "Male" && _subGender == "Female">> <<set _pick = GetSexPick("Vag", _domGender, _subGender, 8, "Cum/Out/")>> <<elseif _domGender == "Shemale" && _subGender == "Female">> <<set _pick = GetSexPick("Vag", _domGender, _subGender, 0, "Cum/Out/")>> <</if>> <</widget>> <<widget "SetVagPartnerCumPick">> <<set _domGender = _args[0]>> <<set _subGender = _args[1]>> <<if _domGender == "Male" && _subGender == "Female">> <<set _pick = GetSexPick("Vag", _domGender, _subGender, 1, "partner_cum/")>> <<elseif _domGender == "Shemale" && _subGender == "Female">> <<set _pick = GetSexPick("Vag", _domGender, _subGender, 0, "partner_cum/")>> <<elseif _domGender == "Female" && _subGender == "Female">> <<set _pick = GetSexPick("Vag", _domGender, _subGender, 0, "partner_cum/")>> <</if>> <</widget>> /* Titfuck */ <<widget "SetTitfuckPic">> <<set _domGender = _args[0]>> <<set _subGender = _args[1]>> <<if _subGender == "Shemale" || _subGender == "Male">> <<set _subGender = "Female">> <</if>> <<if _domGender == "Male" && _subGender == "Female">> <<set _pick = GetSexPick("Titfuck", _domGender, _subGender, 5)>> <</if>> <</widget>> <<widget "SetTitfucCumkPic">> <<set _domGender = _args[0]>> <<set _subGender = _args[1]>> <<if _subGender == "Shemale" || _subGender == "Male">> <<set _subGender = "Female">> <</if>> <<if _domGender == "Male" && _subGender == "Female">> <<set _pick = GetSexPick("Titfuck", _domGender, _subGender, 3, "Cum/")>> <</if>> <</widget>> /*Other */ <<widget "Interaction">> <<set _dom = _args[0]>> <<set _sub = _args[1]>> <<set _domGender = _dom.gender()>> <<set _subGender = _sub.gender()>> <<if _domGender == "Shemale">> <<set _domGender = "Female">> <</if>> <<if _subGender == "Shemale">> <<set _subGender = "Female">> <</if>> <<if $interaction == "Kiss" && (_domGender != "Male" && _subGender == "Male")>> <<set _subGender = "Female">> <<set _domGender = "Male">> <</if>> <<run _pic = "Media\\Interactions\\" + $interaction + "\\" + _subGender + "\\" + _domGender + "\\0.webm">> <<if (($interaction == "Touch Ass" || $interaction == "Touch boobs") && _subGender == "Male") == false>> <<Video _pic>> <</if>> <</widget>> <<widget "SetGloryHolePic">> <<set _charGender = _args[0]>> <<set _pick = GetSexPick("GloryHole", _charGender, 1)>> <<if _charGender == "Male" && _subGender == "Female">> <<set _pick = GetSexPick("Vag", _domGender, _subGender, 1, "partner_cum/")>> <<elseif _domGender == "Shemale" && _subGender == "Female">> <<set _pick = GetSexPick("Vag", _domGender, _subGender, 0, "partner_cum/")>> <<elseif _domGender == "Female" && _subGender == "Female">> <<set _pick = GetSexPick("Vag", _domGender, _subGender, 0, "partner_cum/")>> <</if>> <</widget>> <</nobr>>
<<nobr>> <<widget "Chat">> <<set _char = _args[0]>> <<set _jobTitle = (_char.info.characterWork == "None" ? "Citizen" : _char.info.characterWork)>> <<if $player.characterEvents.isEventRegistered(_char.info.id, "knows you") == false && _char.info.characterWork != "external" && _char.info.isPlayer == false>> <<set _gender = _char.gender()>> <<switch _gender>> <<case "Female">> <<if _char.getAgeText() == "Young">> <<set _gender = "girl">> <<else>> <<set _gender = "woman">> <</if>> <<case "Male">> <<set _gender = "man">> <<case "Shemale">> <<if _char.getAgeText() == "Young">> <<set _gender = "shemale">> <<else>> <<set _gender = "shemale">> <</if>> <</switch>> <<set _charName = _char.getFatText() + " " + (_char.info.skin.toLowerCase()) + " " + _gender + " (" + _jobTitle + ")">> <<elseif _char.info.isPlayer == true>> <<set _charName = 'You'>> <<elseif _char.info.characterWork == "external">> <<set _charName = '_char.info.firstName'>> <<else>> <<set _charName = '_char.info.firstName (_jobTitle)'>> <</if>> <<set _icon = _char.getPhotoImage()>> <<set _text = _args[1]>> <!-- Заменяем фрагменты вида *Text* на span с классом darkAction --> <<set _text = _text.replace(/\*(.*?)\*/g, "<span class='darkAction'>$1</span>")>> <div class="chat-container"> <div class="chat-message"> <img class="avatar" @src="_icon" alt="Avatar"> <div class="message-content"> <span class="name">_charName</span> <p class="text">_text</p> </div> </div> </div> <</widget>> <<widget "ChatWithoutNPC">> <<set _charName = _args[0]>> <<set _charIcon = _args[1]>> <<set _text = _args[2]>> <<set _text = _text.replace(/\*(.*?)\*/g, "<span class='darkAction'>$1</span>")>> <div class="chat-container"> <div class="chat-message"> <img class="avatar" @src="_charIcon" alt="Avatar"> <div class="message-content"> <span class="name">_charName</span> <p class="text">_text</p> </div> </div> </div> <</widget>> <<widget "Chat-Phone">> <<set _char = _args[0]>> <<set _text = _args[1]>> <<set _isPhoneText = _args[2]>> <<set _icon = _char.getPhotoImage()>> <<if _char.info.isPlayer == true>> <<set _msgType = "message sent">> <<else>> <<set _msgType = "message received">> <</if>> <div class="chat-messages"> <div @class="_msgType"> <div class="message-info"> <img @src="_icon" alt="Icon" class="icon"/> <<if _char.info.isPlayer == true>> <span class="name">You</span> <<else>> <span class="name"><<print '_char.info.firstName _char.info.secondName'>></span> <</if>> </div> <span class="message-content">_text</span> <<if _isPhoneText == true>> <span class="message-time">10:31 AM</span> <</if>> </div> </div> <</widget>> <<widget "ChatMessage">> <<set _text = $args[0]>> <<set _text = _text.replace(/\*(.*?)\*/g, "<span class='darkAction'>$1</span>")>> <div class="chat-container"> <p class="text">_text</p> </div> <</widget>> <<widget "ChatMessage-Phone">> <div class="message info"> <span class="message-content">_args[0]</span> </div> <</widget>> <<widget "DisplayCharacters">> <<set _displayCharacters = [...($args[0] ?? _args?.[0] ?? [])]>> <<set _interactionPairs = []>> <<if $NpcInteractions>> <<for _ti = 0; _ti < $NpcInteractions.length; _ti++>> <<set _int = $NpcInteractions[_ti]>> <<set _id1 = $Characters.findIndex(c => c.info.id == _int.npc1)>> <<set _id2 = $Characters.findIndex(c => c.info.id == _int.npc2)>> <<if _displayCharacters.includes(_id1) && _displayCharacters.includes(_id2)>> <<run _interactionPairs.push({npc1:_id1, npc2:_id2, type:_int.type})>> <<run _displayCharacters.splice(_displayCharacters.indexOf(_id1),1)>> <<run _displayCharacters.splice(_displayCharacters.indexOf(_id2),1)>> <</if>> <</for>> <</if>> <div style="padding-top: 15px;" class="characters-grid" id="character-grid"> <<for _tp = 0; _tp < _interactionPairs.length; _tp++>> <<set _c1 = $Characters[_interactionPairs[_tp].npc1]>> <<set _c2 = $Characters[_interactionPairs[_tp].npc2]>> <<set _type = _interactionPairs[_tp].type>> <<set _icon1 = _c1.getPhotoImage()>> <<set _icon2 = _c2.getPhotoImage()>> <<set _verbMap = { talk: 'are talking', hug: 'are hugging', kiss: 'are kissing', sex: 'are having sex', argue: 'are arguing', fight: 'are fighting' }>> <<set _verb = _verbMap[_type]>> <<set _label = "<img class='avatar-list' @src='_icon1' alt='Avatar'><img class='avatar-list' @src='_icon2' alt='Avatar'><p>" + _c1.info.firstName + " and " + _c2.info.firstName + " " + _verb + ".</p>">> <<capture _c1 _c2>> <div class="btn btn--tw-link"> <<button _label "ChooseTalkNPC">> <<set $talkPairNPC1 = _c1>> <<set $talkPairNPC2 = _c2>> <<set $talkPairIndexNPC1 = $Characters.indexOf(_c1)>> <<set $talkPairIndexNPC2 = $Characters.indexOf(_c2)>> <</button>> </div> <</capture>> <</for>> <<for _i = 0; _i < _displayCharacters.length; _i++>> <<set _characterId = _displayCharacters[_i]>> <<set _character = $Characters[_characterId]>> <<set _friendship = $player.getRelationship(_character.info.id).metrics.friendship>> <<set _love = $player.getRelationship(_character.info.id).metrics.love>> <<if _character.info.questInfo.isQuestCharacter == true>> <<set _charColor = "#DAA520">> <<elseif _love > 75 && _love < 90>> <<set _charColor = "#F8BBD0">> <<elseif _love >= 90>> <<set _charColor = "#EC407A">> <<elseif _friendship <= -100>> <<set _charColor = "#FF0000">> <<elseif _friendship > -100 && _friendship < -75>> <<set _charColor = "#FF3333">> <<elseif _friendship >= -75 && _friendship < -50>> <<set _charColor = "#FF6666">> <<elseif _friendship >= -50 && _friendship < -25>> <<set _charColor = "#FF9966">> <<elseif _friendship >= -25 && _friendship < 0>> <<set _charColor = "#FFCC66">> <<elseif _friendship >= 0 && _friendship < 25>> <<set _charColor = "#FFFFFF">> <<elseif _friendship >= 25 && _friendship < 50>> <<set _charColor = "#99FF66">> <<elseif _friendship >= 50 && _friendship < 75>> <<set _charColor = "#66FF66">> <<elseif _friendship >= 75 && _friendship < 100>> <<set _charColor = "#33FF33">> <<elseif _friendship >= 100>> <<set _charColor = "#00FF00">> <</if>> <<capture _character>> <<set _knowsYou = $player.characterEvents.isEventRegistered(_character.info.id, "knows you")>> <<if _character.characterEvents.isEventRegistered(_character.info.id, "Is Head Girl") == true>> <<set _jobTitle = "Head Girl">> <<else>> <<set _jobTitle = (_character.info.characterWork == "None" ? "Citizen" : _character.info.characterWork)>> <</if>> <<if _character.info.questInfo.isQuestCharacter == true>> <<set _jobTitle = _character.info.questInfo.currentCharState>> <<set _clickMOveLoc = "QuestCharInteraction">> <<else>> <<set _clickMOveLoc = "Checkknowns">> <</if>> <<set _characterIcon = _character.getPhotoImage()>> <<if $playerFollowers.includes(_character.info.id)>> <<set _followStatus = " <br>(Follow you)">> <<else>> <<set _followStatus = " ">> <</if>> <<if _knowsYou == true>> <<set _name = _character.info.firstName + " " + _character.info.secondName + " (" + _jobTitle + ")" + _followStatus >> <<else>> <<set _gender = _character.gender()>> <<switch _gender>> <<case "Female">> <<if _character.getAgeText() == "Young">> <<set _gender = "girl">> <<else>> <<set _gender = "woman">> <</if>> <<case "Male">> <<set _gender = "man">> <<case "Shemale">> <<if _character.getAgeText() == "Young">> <<set _gender = "shemale">> <<else>> <<set _gender = "shemale">> <</if>> <</switch>> <<set _name = _character.getFatText() + " " + (_character.info.skin.toLowerCase()) + " " + _gender + " (" + _jobTitle + ")">> <</if>> <<if _character.info.questInfo.isQuestCharacter == true>> /* <<set _name += " ⭐">> */ <</if>> <<set _fullName = "<img style='border-color: " + _charColor + "' class='avatar-list' @src='_characterIcon' alt='Avatar'><p style='color: " + _charColor + "'>_name</p>">> <div class="btn btn--tw-link"> <<button _fullName _clickMOveLoc>> <<set $indexNPC = $Characters.indexOf(_character)>> <<set $interactionNpc = $Characters[$indexNPC]>> <<if $interactionNpc.clothes.isNude(($interactionNpc.gender() == "Male")) == true>> <<run $interactionNpc.wearMaximumClothing()>> <<run $interactionNpc.AddCloth(false, true)>> <</if>> <</button>> </div> <</capture>> <</for>> </div> <</widget>> <<widget "SaveLocation">> <<run $player.info.currentLocation = passage()>> <</widget>> <<widget "SetBackground">> <<run updateBackground($args[0] ?? $backgroundCache, false)>> <<if $args[0]>> <<set $backgroundCache = $args[0]>> <</if>> <</widget>> <<widget "ShowNpcIcon">> <<set _npcInteract = $args[0]>> <<set _characterIcon = _npcInteract.getPhotoImage()>> <img class="chat-image" @src="_characterIcon" alt="Avatar"> <</widget>> <<widget "DrawImage">> <<set _image = $args[0]>> <<set _width = $args[1]>> <<set _height = $args[2]>> <<set _style = "width: " + _width + "px; height: " + _height + "px;">> <<if _width != undefined && _height != undefined>> <img class="chat-image" @style="_style" @src="_image" alt="Avatar"> <<else>> <img class="chat-image" @src="_image" alt="Avatar"> <</if>> <</widget>> <<widget "DrawImg">> <<set _image = $args[0]>> <img class="chat-image" @src="_image" alt="Avatar"> <</widget>> <<widget "SpendEnergy">> <<set _char = $args[0]>> <<set _energySpend = $args[1]>> <<run _char.status.energy.decrease(_energySpend)>> <</widget>> <<widget "BackButton">> <div class="btn"><<button "Leave" $player.info.currentLocation>> <<if $args[0]>> $args[0] <</if>> <</button>></div> <</widget>> <<widget "EachLoc">> <<run UpdateSaveAllow()>> <<include "TimeStats">> <<include "UpdateStatBars">> <<include "UpdateEndings">> <<include "RelocateFollowers">> <<set _rollChanceAggressive = false>> <<if $gameSettings.defaultAggression == true>> <<set _rollChanceAggressive = rollChance(5)>> <<else>> <<set _rollChanceAggressive = rollChance($gameSettings.aggressiveChance)>> <</if>> <<if $gameSettings.contentFilter.NPC_Activity == true && _rollChanceAggressive>> <<AggressiveEvent>> <<elseif $gameSettings.contentFilter.NPC_Activity == true && Random(0,100) > 89 >> <<if $player.characterEvents.isEventRegistered($player.info.id, "Is a pimp's whore")>> <<PimpBrothelEvents>> <<else>> <<LocationEvents>> <</if>> <</if>> <</widget>> <<widget "EachActions">> <div class="btn"><<button "Wait">><<Wait>><</button>></div> <</widget>> <<widget "SpendTime">> <<set _spendMinutes = $args[0]>> <<run (function() { try { var dt = SugarCube.State.variables.dateTime; var minutesToAdd = SugarCube.State.temporary.spendMinutes || 0; var year = (dt && typeof dt._year === 'number') ? dt._year : ((dt && typeof dt.year === 'number') ? dt.year : 2025); var month = (dt && typeof dt._month === 'number') ? dt._month : ((dt && typeof dt.month === 'number') ? dt.month : 9); var oldDay = (dt && typeof dt._day === 'number') ? dt._day : ((dt && typeof dt.day === 'number') ? dt.day : 1); var day = oldDay; var hours = (dt && typeof dt._hours === 'number') ? dt._hours : ((dt && typeof dt.hours === 'number') ? dt.hours : 7); var minutes = (dt && typeof dt._minutes === 'number') ? dt._minutes : ((dt && typeof dt.minutes === 'number') ? dt.minutes : 0); var totalMinutes = hours * 60 + minutes + minutesToAdd; while (totalMinutes < 0) { day--; totalMinutes += 24 * 60; } while (totalMinutes >= 24 * 60) { day++; totalMinutes -= 24 * 60; } hours = Math.floor(totalMinutes / 60); minutes = totalMinutes % 60; var newDt = new window.DateTime({ year: year, month: month, day: day, hours: hours, minutes: minutes }); SugarCube.State.variables.dateTime = newDt; /* Call CharactersRefresh if day changed */ if (day !== oldDay && typeof CharactersRefresh === 'function') { CharactersRefresh(); } if (typeof RelocateCharacters === 'function') { RelocateCharacters(); } } catch (e) { console.error('SpendTime error:', e); } })()>> <</widget>> <<widget "SpendTimeWithoutUpdate">> <<set _spendMinutes = $args[0]>> <<run (function() { try { var dt = SugarCube.State.variables.dateTime; var minutesToAdd = SugarCube.State.temporary.spendMinutes || 0; var year = (dt && typeof dt._year === 'number') ? dt._year : ((dt && typeof dt.year === 'number') ? dt.year : 2025); var month = (dt && typeof dt._month === 'number') ? dt._month : ((dt && typeof dt.month === 'number') ? dt.month : 9); var day = (dt && typeof dt._day === 'number') ? dt._day : ((dt && typeof dt.day === 'number') ? dt.day : 1); var hours = (dt && typeof dt._hours === 'number') ? dt._hours : ((dt && typeof dt.hours === 'number') ? dt.hours : 7); var minutes = (dt && typeof dt._minutes === 'number') ? dt._minutes : ((dt && typeof dt.minutes === 'number') ? dt.minutes : 0); var totalMinutes = hours * 60 + minutes + minutesToAdd; while (totalMinutes < 0) { day--; totalMinutes += 24 * 60; } while (totalMinutes >= 24 * 60) { day++; totalMinutes -= 24 * 60; } hours = Math.floor(totalMinutes / 60); minutes = totalMinutes % 60; var newDt = new window.DateTime({ year: year, month: month, day: day, hours: hours, minutes: minutes }); SugarCube.State.variables.dateTime = newDt; } catch (e) { console.error('SpendTimeWithoutUpdate error:', e); } })()>> <</widget>> <<widget "Travel">> <<capture _dest>> <<set _label = _args[0]>> <<set _dest = _args[1]>> <<set _cls = _args[2]>> <div class="btn btn--tw-link<<if _cls>> _cls<</if>>"><<button _label>> <<if $travelMode == 'bus'>> <<if $player.money >= 10>> <<SpendTime 10>> <<set _chance = 25>> <<if ($dateTime.hours >= 7 && $dateTime.hours <= 9) || ($dateTime.hours >= 17 && $dateTime.hours <= 19)>> <<set _chance += 25>> <</if>> <<if Random(1,100) <= _chance>> <<set $busFarePending = true>> <<set $busNextLocation = _dest>> <<goto "BusEvents">> <<else>> <<set $player.money -= 10>> <<set $busFarePending = false>> <<goto _dest>> <</if>> <<else>> <<set $travelMode = 'walk'>> <<SpendTime 30>> <<goto _dest>> <</if>> <<elseif $travelMode == 'car'>> <<if $player.carGasDay != $dateTime.day>> <<if $player.money >= 12>> <<set $player.money -= 12>> <<set $player.carGasDay = $dateTime.day>> <<else>> <<run alert("Not enough money for gas. Traveling on foot.")>> <<set $travelMode = 'walk'>> <</if>> <</if>> <<if $travelMode == 'car'>> <<SpendTime 5>> <<goto _dest>> <<else>> <<SpendTime 30>> <<goto _dest>> <</if>> <<else>> <<SpendTime 30>> <<set _chance = 20>> <<if Random(1,100) <= _chance>> <<set $walkNextLocation = _dest>> <<goto "WalkEvents">> <<else>> <<goto _dest>> <</if>> <</if>> <</button>></div> <</capture>> <</widget>> <<widget "SetTime">> <<run (function() { try { var dt = SugarCube.State.variables.dateTime; var targetMinutes = SugarCube.State.temporary.args[0].minutes || 0; var targetHours = SugarCube.State.temporary.args[0].hours || 0; var year = (dt && typeof dt._year === 'number') ? dt._year : ((dt && typeof dt.year === 'number') ? dt.year : 2025); var month = (dt && typeof dt._month === 'number') ? dt._month : ((dt && typeof dt.month === 'number') ? dt.month : 9); var day = (dt && typeof dt._day === 'number') ? dt._day : ((dt && typeof dt.day === 'number') ? dt.day : 1); var newDt = new window.DateTime({ year: year, month: month, day: day, hours: targetHours, minutes: targetMinutes }); SugarCube.State.variables.dateTime = newDt; } catch (e) { console.error('SetTime error:', e); } })()>> <</widget>> <<widget "SpendDay">> <<run (function() { try { var dt = SugarCube.State.variables.dateTime; var year = (dt && typeof dt._year === 'number') ? dt._year : ((dt && typeof dt.year === 'number') ? dt.year : 2025); var month = (dt && typeof dt._month === 'number') ? dt._month : ((dt && typeof dt.month === 'number') ? dt.month : 9); var day = (dt && typeof dt._day === 'number') ? dt._day : ((dt && typeof dt.day === 'number') ? dt.day : 1); /* Advance day by 1 */ day++; /* Handle month overflow */ var daysInMonth = new Date(year, month, 0).getDate(); while (day > daysInMonth) { day -= daysInMonth; month++; if (month > 12) { month = 1; year++; } daysInMonth = new Date(year, month, 0).getDate(); } /* Create new DateTime at 7:00 AM */ var newDt = new window.DateTime({ year: year, month: month, day: day, hours: 7, minutes: 0 }); SugarCube.State.variables.dateTime = newDt; /* Call daily refresh */ if (typeof CharactersRefresh === 'function') { CharactersRefresh(); } if (typeof RelocateCharacters === 'function') { RelocateCharacters(); } } catch (e) { console.error('SpendDay error:', e); } })()>> <</widget>> <<widget "PeopleAround">> <div class="padding-up"> <<set _loca = $Locations[passage()] || []>> <<DisplayCharacters _loca>> </div> <</widget>> <<widget "TalkAbout">> <<set _char1 = $args[0]>> <<set _char2 = $args[1]>> <<set _varName = $args[2]>> <<set _eventName = $args[3]>> <<set _btnName = "About " + _varName>> <<set _pref = $interactionNpc.info.preferences.talk[_varName].value>> <<set _know = $interactionNpc.info.preferences.knowPrefs[_varName]>> <<set _buttonStyle = ''>> <<if _know == true>> <<switch _pref>> <<case 1>> <<set _buttonStyle = 'box-shadow: inset 0 0 0 10px #D0605E; border-radius: 15px;'>> <<case 2>> <<set _buttonStyle = 'box-shadow: inset 0 0 0 10px #D1A55F; border-radius: 15px;'>> <<case 3>> <<set _buttonStyle = 'box-shadow: inset 0 0 0 10px #A7C957; border-radius: 15px;'>> <<case 4>> <<set _buttonStyle = 'box-shadow: inset 0 0 0 10px #6DBE45; border-radius: 15px;'>> <</switch>> <</if>> <<capture _eventName _varName _char1 _char2 _buttonStyle>> <<if _char1.dailyEvents.isEventRegistered(_char2.info.id, _eventName) == false>> <div class="btn" @style='_buttonStyle'><<button _btnName "TalkAbout">> <<set $askAbout = _varName>> <<run _char1.dailyEvents.registerEvent(_char2.info.id, _eventName, 1)>> <<run $interactionNpc.info.preferences.knowPrefs[_varName] = true>> <</button>></div> <<else>> <div class="btn non-interacting" @style='_buttonStyle'><<button _btnName "TalkAbout">> <<set $askAbout = _varName>> <</button>></div> <</if>> <</capture>> <</widget>> <<widget "Video">> <div id="video-container"> <video controls autoplay loop muted> <source @src="_args[0]" type="video/mp4"> </video> </div> <</widget>> <<widget "ShowRelationsBar">> <<set _char1 = _args[0]>> <<set _char2 = _args[1]>> <<set _show = _args[2]>> /*Friend Love Fear Both */ <<set _friendship = _char1.getRelationship(_char2.info.id).metrics._friendship>> <<set _love = _char1.getRelationship(_char2.info.id).metrics._love>> <<set _fear = _char1.getRelationship(_char2.info.id).metrics._fear>> <div class="progress-bars-container-narrow"> <<if _show == "Friend" || _show == "Both">> <div class="progress-container-narrow"> <div class="progress-title">Friendship</div> <div class="progress-bar-narrow" id="progress1"> <div class="progress" id="friendship-id"></div> </div> <div class="progress-value" id="friendship-id-text">10/100</div> </div> <</if>> <<if _show == "Love" || _show == "Both">> <div class="progress-container-narrow"> <div class="progress-title">Love</div> <div class="progress-bar-narrow" id="progress2"> <div class="progress" id="love-id"></div> </div> <div class="progress-value" id="love-id-text">50/100</div> </div> <</if>> <<if _show == "Fear" || _show == "Both">> <div class="progress-container-narrow"> <div class="progress-title" id="fear-bar">Fear</div> <div class="progress-bar-narrow" id="progress3"> <div class="progress" id="fear-id"></div> </div> <div class="progress-value" id="fear-id-text">0/100</div> </div> <</if>> </div> <<done>> <<if _show == "Friend" || _show == "Both">> <<run UpdateProgressBar("friendship-id", _friendship.value, _friendship.max)>> <<run DisplayText("friendship-id-text", Math.trunc(_friendship.value) + "/" + _friendship.max)>> <</if>> <<if _show == "Love" || _show == "Both">> <<run UpdateProgressBar("love-id", _love.value, _love.max)>> <<run DisplayText("love-id-text", Math.trunc(_love.value) + "/" + _love.max)>> <</if>> <<if _show == "Fear" || _show == "Both">> <<run UpdateProgressBar("fear-id", _fear.value, _fear.max)>> <<run DisplayText("fear-id-text", Math.trunc(_fear.value) + "/" + _fear.max)>> <</if>> <</done>> <</widget>> <<widget "SetSaveBtn">> <<set $canShowStatsBtn = _args[0]>> <<set $gameSettings.allowSaves = _args[0]>> <</widget>> <<widget "HideLeftPanel">> <<set $shouldHideBar = _args[0]>> <<script>> $(document).one(":passagerender", function() { if (State.variables.shouldHideBar) { $('#ui-bar').hide(); } else{ $('#ui-bar').show(); } }); <</script>> <</widget>> <<widget "DeleteCharacter">> <<set _char = _args[0]>> <<run _char = $Characters.find(element => element.info.id === _char.info.id);>> <<set _indexToRemove = $Characters.indexOf(_char)>> <<run $Characters.splice(_indexToRemove, 1)>> <</widget>> <<widget "ResetInterractionNpc">> <<set _newChar = _args[0]>> <<set $interactionNpc = _newChar>> <<set $indexNPC = $Characters.indexOf(_newChar)>> <</widget>> <<widget "IncreaseFriendship">> <<set _char1 = $args[0]>> <<set _char2 = $args[1]>> <<set _value = $args[2]>> <<if _value > 0>> <<set _value += _char1.attributes.speech.value>> <</if>> <<set _relations = {friendship: _value}>> <<set _char2.setRelationship(_char1.info.id, _relations)>> <<set _char1.setRelationship(_char2.info.id, _relations)>> <<run _textValue = Math.abs(_value)>> <<if _value > 0>> <<ChatMessage 'Friendship increased by _textValue'>> <<else>> <<ChatMessage 'Friendship has been reduced by _textValue'>> <</if>> <</widget>> <<widget "IncreaseLove">> <<set _char1 = $args[0]>> <<set _char2 = $args[1]>> <<set _value = $args[2]>> <<set _relations = {love: _value}>> <<set _char2.setRelationship(_char1.info.id, _relations)>> <<set _char1.setRelationship(_char2.info.id, _relations)>> <<run _textValue = Math.abs(_value)>> <<if _value > 0>> <<ChatMessage 'Love increased by _textValue'>> <<else>> <<ChatMessage 'Love has been reduced by _textValue'>> <</if>> <</widget>> <<widget "CheckDatingProposal">> <<set _player = $args[0]>> <<set _npc = $args[1]>> <<set _desired = relationCheck(_player, _npc, false)>> <<set _current = _player.getRelationship(_npc.info.id).relation>> <<set _tag = "DatingProposal">> <<if _current != _desired && _current != "dating" && _current != "soulmate" && (_desired === "dating" || _desired === "soulmate") && Relations[_desired].type == "love">> <<if _player.dailyEvents.isEventRegistered(_npc.info.id, _tag) == false>> <<run _player.dailyEvents.registerEvent(_npc.info.id, _tag, 1)>> <<if Random(0,100) < 50>> <<set $pendingDatingRelation = _desired>> <<goto "DatingProposal">> <</if>> <</if>> <<else>> <<run relationCheck(_player, _npc, true)>> <</if>> <</widget>> <<widget "IncreaseSex">> <<set _char1 = $args[0]>> <<set _char2 = $args[1]>> <<set _value = $args[2]>> <<set _relations = {sex: _value}>> <<set _char2.setRelationship(_char1.info.id, _relations)>> <<set _char1.setRelationship(_char2.info.id, _relations)>> <<run _textValue = Math.abs(_value)>> <<if _value > 0>> <<ChatMessage 'Sex increased by _textValue'>> <<else>> <<ChatMessage 'Sex has been reduced by _textValue'>> <</if>> <</widget>> <<widget "IncreaseFear">> <<set _char1 = $args[0]>> <<set _char2 = $args[1]>> <<set _value = $args[2]>> <<set _relations = {fear: _value}>> <<set _char2.setRelationship(_char1.info.id, _value)>> <<set _char1.setRelationship(_char2.info.id, _value)>> <<run _textValue = Math.abs(_value)>> <<if _value > 0>> <<ChatMessage 'Fear increased by _textValue'>> <<else>> <<ChatMessage 'Fear has been reduced by _textValue'>> <</if>> <</widget>> <<widget "SetRelations">> <<set _char1 = $args[0]>> <<set _char2 = $args[1]>> <<set _relations = $args[2]>> <<if _relations.friendship > 0 && _relations.friendship > 0>> <<run _relations.friendship += (_char1.attractive() / 10)>> <</if>> <<if _relations.love > 0 && _relations.love > 0>> <<run _relations.love += (_char1.attractive() / 10)>> <</if>> <<set _char2.setRelationship(_char1.info.id, _relations)>> <<set _char1.setRelationship(_char2.info.id, _relations)>> <</widget>> <<widget "SetMood">> /* <<set _char = $args[0]>> <<set _value = $args[1]>> <<if _value >= 0>> <<run _char.behavior.mood.increase(_value)>> <<ChatMessage '_char.info.firstName\'s mood was improved by _value.'>> <<else>> <<run _value = Math.abs(_value)>> <<run _char.behavior.mood.decrease(_value)>> <<ChatMessage '_char.info.firstName\'s mood has been reduced by _value.'>> <</if>> */ <</widget>> <<widget "ChanceButton">> /* $args[0] - button name $args[1] - passage mark $args[2] - actor $args[3] - reciver $args[4] - need value $args[5] - fatigue mark $args[6] - change values */ <<set _chanceButtonName = $args[0]>> <<set _passageMark = $args[1]>> <<set _chanceActor = $args[2]>> <<set _chanceReciver = $args[3]>> <<set _chanceNeedValue = $args[4]>> <<set _fatigueMark = $args[5]>> <<set _changeValues = $args[6]>> <<run _jsonString = _chanceNeedValue.replace(/(\w+):/g, '"$1":')>> <<run _chanceNeedValue = JSON.parse(_jsonString)>> <<set _checkSexPref = _chanceNeedValue.CheckSexPref>> <<set _chance = GetSuccessChance(_chanceActor, _chanceReciver, _chanceNeedValue, _fatigueMark)>> <<include "CheckActivityPercent">> <<if _checkSexPref == true>> <<if _chanceReciver.checkSexPref(_chanceActor) == false>> <<run _chance = Math.round(subtractPercentage(_chance, 90))>> <</if>> <</if>> <<if _chanceReciver.attributes.submission.value > 0>> <<run _chance *= (1 + 0.025 * _chanceReciver.attributes.submission.value)>> <<run _chance = Math.round(_chance)>> <</if>> <<if _chance > 100>> <<run _chance = 100>> <</if>> <<if _chance < 0>> <<run _chance = 0>> <</if>> <<capture _chance _passageMark _changeValues>> <div class="btn"><<button '_chanceButtonName [_chance\%]' _passageMark>><<set $chance = _chance>> _changeValues<</button>></div> <</capture>> <</widget>> <<widget "CheckChance">> <<set _SuccessPassage = _args[0]>> <<set _FailedPassage = _args[1]>> <<set _DoubleFailedPassage = _args[2]>> <<set _BackPassage = _args[3]>> <<set _eventName = _args[4]>> <<set _additionalData = _args[5]>> <<set _rejectEventName = "Reject " + _eventName>> <<capture _eventName _rejectEventName>> <<run _jsonString = _additionalData.replace(/(\w+):/g, '"$1":')>> <<run _additionalData = JSON.parse(_jsonString)>> <<if rollChance($chance) && $chance != 0>> <<include _SuccessPassage>> <<run $interactionNpc.dailyEvents.unregisterEvent($player.info.id, _rejectEventName)>> <<run $interactionNpc.dailyEvents.registerEvent($player.info.id, _eventName, 1)>> <<else>> <<if $interactionNpc.dailyEvents.getOrRegisterEvent($player.info.id, _rejectEventName, 0) >= 1>> <<include _DoubleFailedPassage>> <<run $interactionNpc.dailyEvents.registerEvent($player.info.id, "Resentment", 1)>> <<if _additionalData.createTwiceBackButton == true>> <div class="padding-top"> <div class="btn"><<button "Back" _BackPassage>><</button>></div> </div> <</if>> <<else>> <<include _FailedPassage>> <<if _additionalData.createBackButton == true>> <div class="padding-top"> <div class="btn"><<button "Back" _BackPassage>><</button>></div> </div> <</if>> <</if>> <<run $interactionNpc.dailyEvents.registerEvent($player.info.id, _rejectEventName, 1)>> <</if>> <</capture>> <<unset $chance>> <</widget>> <<widget "CheatUpdateStatsValue">> <<set _stat = _args[0]>> <<set _value = _args[1]>> <<set _updatePassageName = _args[2]>> <<capture _stat _value _updatePassageName>> <<if _value > 0>> <<run _stat.increase(_value)>> <<else>> <<run _stat.decrease(Math.abs(_value))>> <</if>> <<if _updatePassageName>> <<include _updatePassageName>> <</if>> <</capture>> <</widget>> <<widget "StatsCheatButton">> <<set _text = _args[0]>> <<set _paramName = _args[1]>> <<set _twoButtons = _args[2]>> <<set _idInc = _paramName + "-increase-btn">> <<set _id2Inc = _paramName + "-increase-btn2">> <<set _idDec = _paramName + "-decrease-btn">> <<set _id2Dec = _paramName + "-decrease-btn2">> <<set _idValueText = _paramName + "-value_txt">> <div class="row-stat-visual"> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual"><<print _text>></div> <div class="surgery-container" style="justify-content: space-between;"> <div style="display: flex; flex-direction: row; gap: 10px;"> <<if _twoButtons>> <div class="surgery-item" @id="_id2Dec"></div> <</if>> <div class="surgery-item" @id="_idDec"></div> </div> <div class="stat-visual-stat-visual" style="width: 65px;" @id="_idValueText"></div> <div style="display: flex; flex-direction: row; gap: 10px;"> <div class="surgery-item" @id="_idInc"></div> <<if _twoButtons>> <div class="surgery-item" @id="_id2Inc"></div> <</if>> </div> </div> </div> </div> <</widget>> <<widget "CheatsButtonUpdate">> <<set _paramName = _args[0]>> <<set _stat = _args[1]>> <<set _updatePassageName = _args[2]>> <<set _twoButtons = _args[3]>> <<set _value1 = _args[4]>> <<set _value2 = _args[5]>> <<capture _stat _value1 _value2 _paramName _updatePassageName>> <<set _idInc = "#" + _paramName + "-increase-btn">> <<set _idDec = "#" + _paramName + "-decrease-btn">> <<set _negativeValue1 = _value1 * -1>> <<if _twoButtons>> <<set _id2Inc = "#" + _paramName + "-increase-btn2">> <<set _id2Dec = "#" + _paramName + "-decrease-btn2">> <<set _negativeValue2 = _value2 * -1>> <</if>> <<capture _negativeValue2 _negativeValue1>> <<if Math.trunc(_stat.value) != _stat.max>> <<if _twoButtons>> <<replace _id2Inc>><div class="btn" style="width: 45px;"><<button " +_value2 ">><<CheatUpdateStatsValue _stat _value2 _updatePassageName>><</button>></div><</replace>> <</if>> <<replace _idInc>><div class="btn" style="width: 45px;"><<button " +_value1 ">><<CheatUpdateStatsValue _stat _value1 _updatePassageName>><</button>></div><</replace>> <<else>> <<if _twoButtons>> <<replace _id2Inc>><div class="btn non-interacting" style="width: 45px;"><<button " +_value2 ">><</button>></div><</replace>> <</if>> <<replace _idInc>><div class="btn non-interacting" style="width: 45px;"><<button " +_value1 ">><</button>></div><</replace>> <</if>> <<if Math.trunc(_stat.value) != _stat.min>> <<if _twoButtons>> <<replace _id2Dec>><div class="btn" style="width: 45px;"><<button " _negativeValue2 ">><<CheatUpdateStatsValue _stat _negativeValue2 _updatePassageName>><</button>></div><</replace>> <</if>> <<replace _idDec>><div class="btn" style="width: 45px;"><<button " _negativeValue1 ">><<CheatUpdateStatsValue _stat _negativeValue1 _updatePassageName>><</button>></div><</replace>> <<else>> <<if _twoButtons>> <<replace _id2Dec>><div class="btn non-interacting" style="width: 45px;"><<button " _negativeValue2 ">><</button>></div><</replace>> <</if>> <<replace _idDec>><div class="btn non-interacting" style="width: 45px;"><<button " _negativeValue1 ">><</button>></div><</replace>> <</if>> <</capture>> <</capture>> <</widget>> <<widget "DisplayCharStats">> <<set _char = _args[0]>> <<run _face = _char.body.face>> <<run _breast = _char.body.breastSize>> <<run _ass = _char.body.buttSize>> <<run _fat = _char.body.fat>> /*Stats */ <<run _attributes = _char.attributes>> <<run _lockpick = _attributes.lockpick>> <<run _hacker = _attributes.hacker>> <<run _guns = _attributes.guns>> <<run _meleeWeapons = _attributes.meleeWeapons>> <<run _speech = _attributes.speech>> <<run _performer = _attributes.performer>> <<run _intelligence = _attributes.intelligence>> <<run _corruption = _attributes.corruption>> <<run _strength = _attributes.strength>> <<run _vitality = _attributes.vitality>> <<run _endurance = _attributes.endurance>> <<run _dexterity = _attributes.dexterity>> <<run _defense = _attributes.defense>> /* Reputation */ <<run _photoModel = _char.info.reputation.photoModel>> <<run _pornActor = _char.info.reputation.pornActer>> <<run _nightclub = _char.info.reputation.nightclub>> /* Body */ <<run _fat = _char.body.fat>> <div class="padding-top"> <div class="container-stat-visual"> <p style="text-align: center;">Body</p> <div class="row-stat-visual"> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Femininity</div> <div class="stat-visual-stat-visual"><<print Math.trunc(_face.value)>>/_face.max</div> </div> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Breast</div> <div class="stat-visual-stat-visual"><<print Math.trunc(_breast.value)>>/_breast.max</div> </div> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Butt</div> <div class="stat-visual-stat-visual"><<print Math.trunc(_ass.value)>>/_ass.max</div> </div> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Weight</div> <div class="stat-visual-stat-visual"><<print Math.trunc(_fat.value)>>/_fat.max</div> </div> </div> </div> </div> <div class="padding-top"> <div class="container-stat-visual"> <p style="text-align: center;">Stats</p> <div class="row-stat-visual"> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Lockpick</div> <div class="stat-visual-stat-visual">_lockpick.value/_lockpick.max</div> </div> </div> <div class="row-stat-visual"> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Guns</div> <div class="stat-visual-stat-visual">_guns.value/_guns.max</div> </div> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Melee Weapons</div> <div class="stat-visual-stat-visual">_meleeWeapons.value/_meleeWeapons.max</div> </div> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Speech</div> <div class="stat-visual-stat-visual">_speech.value/_speech.max</div> </div> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Performer</div> <div class="stat-visual-stat-visual">_performer.value/_performer.max</div> </div> </div> <div class="row-stat-visual"> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Intelligence</div> <div class="stat-visual-stat-visual">_intelligence.value/_intelligence.max</div> </div> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Corruption</div> <div class="stat-visual-stat-visual">_corruption.value/_corruption.max</div> </div> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Strength</div> <div class="stat-visual-stat-visual">_strength.value/_strength.max</div> </div> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Vitality</div> <div class="stat-visual-stat-visual">_vitality.value/_vitality.max</div> </div> </div> <div class="row-stat-visual"> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Endurance</div> <div class="stat-visual-stat-visual">_endurance.value/_endurance.max</div> </div> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Dexterity</div> <div class="stat-visual-stat-visual">_dexterity.value/_dexterity.max</div> </div> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Pain Threshold</div> <div class="stat-visual-stat-visual">_defense.value/_defense.max</div> </div> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Hacker</div> <div class="stat-visual-stat-visual">_hacker.value/_hacker.max</div> </div> </div> </div> </div> <<if _char.info.isPlayer == true>> <div class="padding-top"> <div class="container-stat-visual"> <p style="text-align: center;">Reputation</p> <div class="row-stat-visual"> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Photo Model</div> <div class="stat-visual-stat-visual"><<print Math.trunc(_photoModel.value)>>/_photoModel.max</div> </div> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Porn Actor</div> <div class="stat-visual-stat-visual"><<print Math.trunc(_pornActor.value)>>/_pornActor.max</div> </div> <div class="stat-card-stat-visual"> <div class="stat-title-stat-visual">Nightclub</div> <div class="stat-visual-stat-visual"><<print Math.trunc(_nightclub.value)>>/_nightclub.max</div> </div> </div> </div> </div> <</if>> <</widget>> <<widget "ShowSurgery">> <<set $surgeryChar = _args[0]>> <<set $characterFaceType = new LimitedInt($surgeryChar.body.faceType.value, $surgeryChar.body.faceType.max, $surgeryChar.body.faceType.min)>> <<goto "PlasticSurgery_Job">> <</widget>> <<widget "ShowCheats">> <<include "InputCheatPassword">> <<set $cheatsChar = _args[0]>> <<set $characterFaceType = new LimitedInt($cheatsChar.body.faceType.value, $cheatsChar.body.faceType.max, $cheatsChar.body.faceType.min)>> <</widget>> <<widget "CreateQuest">> <<set _quests = _args[0]>> <<set _drawPanel = _args[1]>> <<for _questItem range _quests>> <<run addQuest(_questItem)>> <</for>> <<if _drawPanel>> <<CreateQuestNotification _quests>> <</if>> <</widget>> <<widget "CreateQuestNotification">> <<set _quests = _args[0]>> <<run createQuestNotificationPanel(_quests)>> <</widget>> <<widget "OpenShop">> <<set $itemType = _args[0]>> <<goto "Shop">> <</widget>> <<widget "TrainForExp">> <<set $attribute = _args[0]>> <<set _gainExp = 1 + $attribute.value>> <<SpendTime 20>> <<if $player.level.value != $player.level.max>> <<run $player.exp.increase(_gainExp)>> <<ChatMessage 'You gain _gainExp exp.'>> <<if $player.exp.value == $player.exp.max>> <<if $player.level.value != $player.level.max>> <<run $player.exp.value = 0>> <</if>> <<if $player.exp.max < 200>> <<run $player.exp._max += 5>> <</if>> <<run $player.level.increase(1)>> <<set $skillpoints += 1>> <<ChatMessage 'New level! You gain 1 skill point.'>> <</if>> <<else>> <<ChatMessage 'You have reached the maximum level.'>> <</if>> <</widget>> <<widget "LeaveInteractionSettings">> <<unset $interactionNpc $indexNPC>> <<set $gameSettings.allowSaves = true>> <<set $canShowStatsBtn = true>> <</widget>> <<widget "LockSettings">> <<set $gameSettings.allowSaves = false>> <<set $canShowStatsBtn = false>> <</widget>> <<widget "WorkBtn">> <<if $player.status.energy.value >= 25>> <div class="btn" id="work-btn"><<button "Work" "FinalJob">><</button>></div> <<else>> <div class="btn non-interacting" id="work-btn"><<button "Work" "FinalJob">><</button>></div> <</if>> <<done>> <<run addHoverTooltip('work-btn', 'cost: 25 energy.')>> <</done>> <</widget>> <<widget "CharacterStatsView">> <<set _characterForView = _args[0]>> <<set _canTakeOffClothes = _args[1]>> <div class="player-stats-view-btn-group"> <div class="player-stats-view-btn"><<button "Info">><<replace "#player-stats-view-content">><<DrawCharacterView _characterForView _canTakeOffClothes>><</replace>><</button>></div> <div class="player-stats-view-btn"><<button "Stats">><<replace "#player-stats-view-content">><<DrawCharacterStats _characterForView _canTakeOffClothes>><</replace>><</button>></div> <div class="player-stats-view-btn non-interacting"><<button "Sexual Experience">><<replace "#player-stats-view-content">><<include "PlayerStatsView_SexExp">><</replace>><</button>></div> <<if _characterForView.info.isPlayer == true>> <div class="player-stats-view-btn"><<button "Reputation">><<replace "#player-stats-view-content">><<DrawCharacterReputation _characterForView>><</replace>><</button>></div> <<else>> /* <div class="player-stats-view-btn"><<button "Relationships">><<replace "#player-stats-view-content">><<DrawCharacterRelations _characterForView>><</replace>><</button>></div> */ <</if>> </div> <br> <div id="player-stats-view-content"> <<DrawCharacterView _args[0] _args[1]>> </div> <</widget>> <<widget "DrawCharacterRelations">> <<set _characterForView = _args[0]>> <div class="padding-top"></div> <div class="player-stats-view-container"> <table class="player-stats-view-table"> <thead> <tr class="player-stats-view-tr"> <th class="player-stats-view-th">Name</th> <th class="player-stats-view-th" style="width:60%;">Value</th> </tr> </thead> <tbody> <tr class="player-stats-view-tr"> <td class="player-stats-view-td">Friendship</td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" id="char-friendship-progress"></div> </div> </td> </tr> <tr class="player-stats-view-tr"> <td class="player-stats-view-td">Love</td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" id="char-love-progress"></div> </div> </td> </tr> <tr class="player-stats-view-tr"> <td class="player-stats-view-td">Fear</td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" id="char-fear-progress"></div> </div> </td> </tr> <tr class="player-stats-view-tr"> <td class="player-stats-view-td">Sex</td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" id="char-sex-progress"></div> </div> </td> </tr> <tr class="player-stats-view-tr"> <td class="player-stats-view-td">Anger</td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" id="char-anger-progress"></div> </div> </td> </tr> </tbody> </table> </div> <<done>> <<set _friendship = $player.getRelationship(_characterForView.info.id).metrics._friendship>> <<set _love = $player.getRelationship(_characterForView.info.id).metrics._love>> <<set _fear = $player.getRelationship(_characterForView.info.id).metrics._fear>> <<set _sex = $player.getRelationship(_characterForView.info.id).metrics._sex>> <<set _anger = $player.getRelationship(_characterForView.info.id).metrics._anger>> <<run UpdateProgressBar("char-friendship-progress", _friendship.value, _friendship.max)>> <<run UpdateProgressBar("char-love-progress", _love.value, _love.max)>> <<run UpdateProgressBar("char-fear-progress", _fear.value, _fear.max)>> <<run UpdateProgressBar("char-sex-progress", _sex.value, _sex.max)>> <<run UpdateProgressBar("char-fear-progress", _anger.value, _anger.max)>> <</done>> <</widget>> <<widget "DrawCharacterView">> <<set _characterForView = _args[0]>> <<set _canTakeOffClothes = _args[1]>> <<if _characterForView.info.isPlayer == true>> Your name is <span class="green-text">_characterForView.info.firstName _characterForView.info.secondName</span>. You are <span class="green-text">_characterForView.info.age.value</span> years old <span class="green-text"><<print _characterForView.gender()>></span>. <<else>> <<set _relation = _characterForView.getRelationship($player.info.id).relation>> <<set _relationColor = getRelationshipColor(_relation)>> <<set _relationMark = Relations[_relation]>> <span id="relationText"> Relationship: <span id="relationValue"><<print Capitalize(_relationMark.label)>></span> </span> <<done>> <<run $('#relationValue').css('color', _relationColor)>> <</done>> <br> <<print Capitalize(_characterForView.pronounHisHer())>> name is <span class="green-text">_characterForView.info.firstName _characterForView.info.secondName</span>. <<print _characterForView.pronoun()>> is <span class="green-text">_characterForView.info.age.value</span> years old <span class="green-text"><<print _characterForView.gender()>></span>. <</if>> <br> <<if _characterForView.info.isPlayer == true>> You have a <<else>> <<print _characterForView.pronoun()>> have a <</if>> <<if _characterForView.clothes.hasClothingType(1) == false && _characterForView.clothes.hasClothingType(2) == false>> __<<link _characterForView.getBreastText()>> <<run Dialog.setup(_characterForView.getBreastText())>> <<run Dialog.wiki(_characterForView.getBreastImage())>> <<run Dialog.open()>> <</link>>__ <<else>> <span style="color: #fff;"><<print _characterForView.getBreastText()>></span> <<if _characterForView.clothes.hasClothingType(0) == false && _characterForView.clothes.hasClothingType(3) == false>> <<if _characterForView.info.isPlayer == true>> under your clothes <<else>> under <<print _characterForView.pronounHisHer().toLowerCase()>> clothes <</if>> <</if>> <</if>> and <<if _characterForView.clothes.hasClothingType(0) == false && _characterForView.clothes.hasClothingType(3) == false>> __<<link _characterForView.getButtText()>> <<run Dialog.setup(_characterForView.getButtText())>> <<run Dialog.wiki(_characterForView.getAssImage())>> <<run Dialog.open()>> <</link>>__ <<else>> <span class="green-text"><<print _characterForView.getButtText()>></span> <<if _characterForView.info.isPlayer == true>> under your clothes <<else>> under <<print _characterForView.pronounHisHer().toLowerCase()>> clothes <</if>> <</if>> <<include "CharacterWearingDraw">> <<DrawCharacterBodyStats _characterForView _canTakeOffClothes>> <<if _characterForView.info.isPlayer == false>> <<DrawCharacterRelations _characterForView>> <</if>> <</widget>> <<widget "DrawCharacterBodyStats">> <<set _characterForView = _args[0]>> <<set _canTakeOffClothes = _args[1]>> <div class="padding-top"></div> <div class="player-stats-view-container"> <table class="player-stats-view-table"> <thead> <tr class="player-stats-view-tr"> <th class="player-stats-view-th">Name</th> <th class="player-stats-view-th" style="width:60%;">Value</th> </tr> </thead> <tbody> <tr class="player-stats-view-tr"> <td class="player-stats-view-td">Feminization</td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" id="char-feminization-progress"></div> </div> </td> </tr> <tr class="player-stats-view-tr"> <td class="player-stats-view-td">Breast size</td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" id="char-breast-progress"></div> </div> </td> </tr> <tr class="player-stats-view-tr"> <td class="player-stats-view-td"> Butt Size</td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" id="char-butt-progress"></div> </div> </td> </tr> <<if _characterForView.genitalia() == "Penis">> <tr class="player-stats-view-tr"> <td class="player-stats-view-td">Penis Size</td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" id="char-penis-progress"></div> </div> </td> </tr> <</if>> </tbody> </table> </div> <<done>> <<run UpdateProgressBar("char-feminization-progress", _characterForView.body.face.value, _characterForView.body.face.max)>> <<run UpdateProgressBar("char-breast-progress", _characterForView.body.breastSize.value, _characterForView.body.breastSize.max)>> <<run UpdateProgressBar("char-butt-progress", _characterForView.body.buttSize.value, _characterForView.body.buttSize.max)>> <<if _characterForView.genitalia() == "Penis">> <<run UpdateProgressBar("char-penis-progress", _characterForView.body.penisSize.value, _characterForView.body.penisSize.max)>> <</if>> <</done>> <</widget>> <<widget "DrawCharacterStats">> <div class="player-stats-view-container"> <table class="player-stats-view-table"> <thead> <tr class="player-stats-view-tr"> <th class="player-stats-view-th">Name</th> <th class="player-stats-view-th">Progress to Next Level</th> <th class="player-stats-view-th">Level</th> </tr> </thead> <tbody> <tr class="player-stats-view-tr"> <td class="player-stats-view-td"> <span class="player-stats-view-tooltip" data-tooltip="Determines the amount of damage you deal in combat."> Strength </span> </td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" id="char-strength-progress" ></div> </div> </td> <td class="player-stats-view-td" id="char-strength-value"></td> </tr> <tr class="player-stats-view-tr"> <td class="player-stats-view-td"> <span class="player-stats-view-tooltip" data-tooltip="Determines your maximum health points."> Vitality </span> </td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" id="char-vitality-progress" ></div> </div> </td> <td class="player-stats-view-td" id="char-vitality-value"></td> </tr> <tr class="player-stats-view-tr"> <td class="player-stats-view-td"> <span class="player-stats-view-tooltip" data-tooltip="Determines your maximum energy points."> Endurance </span> </td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" id="char-endurance-progress" ></div> </div> </td> <td class="player-stats-view-td" id="char-endurance-value"></td> </tr> <tr class="player-stats-view-tr"> <td class="player-stats-view-td"> <span class="player-stats-view-tooltip" data-tooltip="Increases your chance to dodge enemy attacks."> Dexterity </span> </td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" id="char-dexterity-progress" ></div> </div> </td> <td class="player-stats-view-td" id="char-dexterity-value"></td> </tr> <tr class="player-stats-view-tr"> <td class="player-stats-view-td"> <span class="player-stats-view-tooltip" data-tooltip="Reduces the amount of damage you take in combat."> Defense </span> </td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" id="char-defense-progress" ></div> </div> </td> <td class="player-stats-view-td" id="char-defense-value"></td> </tr> <tr class="player-stats-view-tr"> <td class="player-stats-view-td"> <span class="player-stats-view-tooltip" data-tooltip="(not yet implemented)"> Corruption </span> </td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" id="char-corruption-progress" ></div> </div> </td> <td class="player-stats-view-td" id="char-corruption-value"></td> </tr> <tr class="player-stats-view-tr"> <td class="player-stats-view-td"> <span class="player-stats-view-tooltip" data-tooltip="Influences your character's tendency to engage in sexual activities."> Lust </span> </td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" id="char-lust-progress" ></div> </div> </td> <td class="player-stats-view-td" id="char-lust-value"></td> </tr> <tr class="player-stats-view-tr"> <td class="player-stats-view-td"> <span class="player-stats-view-tooltip" data-tooltip="Determines how long your character can engage in sexual activities."> Sex Stamina </span> </td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" id="char-sexStamina-progress" ></div> </div> </td> <td class="player-stats-view-td" id="char-sexStamina-value"></td> </tr> <tr class="player-stats-view-tr"> <td class="player-stats-view-td"> <span class="player-stats-view-tooltip" data-tooltip="Determines your ability to influence others and affects your preferred position in sexual encounters."> Dominance </span> </td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" id="char-dominance-progress" ></div> </div> </td> <td class="player-stats-view-td" id="char-dominance-value"></td> </tr> <tr class="player-stats-view-tr"> <td class="player-stats-view-td"> <span class="player-stats-view-tooltip" data-tooltip="This parameter determines how suggestible an NPC is. Each submission level an NPC has increases the success chance of any action by 2.5%."> Submission </span> </td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" id="char-submission-progress" ></div> </div> </td> <td class="player-stats-view-td" id="char-submission-value"></td> </tr> <tr class="player-stats-view-tr"> <td class="player-stats-view-td"> <span class="player-stats-view-tooltip" data-tooltip="Increases the amount of experience points you gain."> Intelligence </span> </td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" id="char-intelligence-progress" ></div> </div> </td> <td class="player-stats-view-td" id="char-intelligence-value"></td> </tr> <tr class="player-stats-view-tr"> <td class="player-stats-view-td"> <span class="player-stats-view-tooltip" data-tooltip="Improves your success rate when interacting with non-player characters (NPCs)."> Speech </span> </td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" id="char-speech-progress" ></div> </div> </td> <td class="player-stats-view-td" id="char-speech-value"></td> </tr> /* <tr class="player-stats-view-tr"> <td class="player-stats-view-td"> <span class="player-stats-view-tooltip" data-tooltip="Description"> Performer </span> </td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" id="char-performer-progress" ></div> </div> </td> <td class="player-stats-view-td" id="char-performer-value">2</td> </tr> */ </tbody> </table> </div> <<done>> <<run UpdateProgressBar("char-strength-progress", _characterForView.progression.strength.value, _characterForView.progression.strength.max)>> <<run UpdateProgressBar("char-vitality-progress", _characterForView.progression.vitality.value, _characterForView.progression.vitality.max)>> <<run UpdateProgressBar("char-endurance-progress", _characterForView.progression.endurance.value, _characterForView.progression.endurance.max)>> <<run UpdateProgressBar("char-dexterity-progress", _characterForView.progression.dexterity.value, _characterForView.progression.dexterity.max)>> <<run UpdateProgressBar("char-defense-progress", _characterForView.progression.defense.value, _characterForView.progression.defense.max)>> <<run UpdateProgressBar("char-corruption-progress", _characterForView.progression.corruption.value, _characterForView.progression.corruption.max)>> <<run UpdateProgressBar("char-lust-progress", _characterForView.progression.lust.value, _characterForView.progression.lust.max)>> <<run UpdateProgressBar("char-sexStamina-progress", _characterForView.progression.sexStamina.value, _characterForView.progression.sexStamina.max)>> <<run UpdateProgressBar("char-dominance-progress", _characterForView.progression.dominance.value, _characterForView.progression.dominance.max)>> <<run UpdateProgressBar("char-submission-progress", _characterForView.progression.submission.value, _characterForView.progression.submission.max)>> <<run UpdateProgressBar("char-intelligence-progress", _characterForView.progression.intelligence.value, _characterForView.progression.intelligence.max)>> <<run UpdateProgressBar("char-speech-progress", _characterForView.progression.speech.value, _characterForView.progression.speech.max)>> <<run DisplayText("char-strength-value", _characterForView.attributes.strength.value)>> <<run DisplayText("char-vitality-value", _characterForView.attributes.vitality.value)>> <<run DisplayText("char-endurance-value", _characterForView.attributes.endurance.value)>> <<run DisplayText("char-dexterity-value", _characterForView.attributes.dexterity.value)>> <<run DisplayText("char-defense-value", _characterForView.attributes.defense.value)>> <<run DisplayText("char-corruption-value", _characterForView.attributes.corruption.value)>> <<run DisplayText("char-lust-value", _characterForView.attributes.lust.value)>> <<run DisplayText("char-sexStamina-value", _characterForView.attributes.sexStamina.value)>> <<run DisplayText("char-dominance-value", _characterForView.attributes.dominance.value)>> <<run DisplayText("char-submission-value", _characterForView.attributes.submission.value)>> <<run DisplayText("char-intelligence-value", _characterForView.attributes.intelligence.value)>> <<run DisplayText("char-speech-value", _characterForView.attributes.speech.value)>> <</done>> <</widget>> <<widget "DrawCharacterReputation">> <<set _characterForView = _args[0]>> <div class="padding-top"></div> <div class="player-stats-view-container"> <table class="player-stats-view-table"> <thead> <tr class="player-stats-view-tr"> <th class="player-stats-view-th">Name</th> <th class="player-stats-view-th" style="width:60%;">Value</th> </tr> </thead> <tbody> <tr class="player-stats-view-tr"> <td class="player-stats-view-td">Fashion Model</td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" id="char-fashion-progress"></div> </div> </td> </tr> <tr class="player-stats-view-tr"> <td class="player-stats-view-td">Porn actor</td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" id="char-porn-progress"></div> </div> </td> </tr> <tr class="player-stats-view-tr"> <td class="player-stats-view-td">Nightclub</td> <td class="player-stats-view-td"> <div class="player-stats-view-progress-bar"> <div class="player-stats-view-progress" id="char-nightclub-progress"></div> </div> </td> </tr> </tbody> </table> </div> <<done>> <<run UpdateProgressBar("char-fashion-progress", _characterForView.info.reputation.photoModel.value, _characterForView.info.reputation.photoModel.max)>> <<run UpdateProgressBar("char-porn-progress", _characterForView.info.reputation.pornActer.value, _characterForView.info.reputation.pornActer.max)>> <<run UpdateProgressBar("char-nightclub-progress", _characterForView.info.reputation.nightclub.value, _characterForView.info.reputation.nightclub.max)>> <</done>> <</widget>> <<widget "DominateTrainingShowVideo">> <<set _domGender = _args[0]>> <<set _subGender = _args[1]>> <<set _poseName = _args[2]>> <<set _unionGenderDom = _args[3]>> <<set _unionGenderSub = _args[4]>> <<set _NonSecondPartner = _args[5]>> <<if _unionGenderDom && (_domGender == "Female" || _domGender == "Shemale")>> <<set _domGender = "Female_Shemale">> <</if>> <<if _unionGenderSub && (_subGender == "Female" || _subGender == "Shemale")>> <<set _subGender = "Female_Shemale">> <</if>> <<if _NonSecondPartner == true>> <<set _videoLink = "Media\\Sex\\Training\\" + _poseName + "\\" + _subGender + "\\0.mp4">> <<else>> <<set _videoLink = "Media\\Sex\\Training\\" + _poseName + "\\" + _domGender + "\\" + _subGender + "\\0.mp4">> <</if>> <<Video _videoLink>> <</widget>> <<widget "SetCharProgression">> <<set _progressionChar = _args[0]>> <<set _progressionMetric = _args[1]>> <<set _progressionValue = _args[2]>> <<set _drawMessage = _args[3]>> <<run _capitalizeAttributeName = Capitalize(_progressionMetric)>> <<run _attributeBefore = _progressionChar.progression[_progressionMetric].value>> /* <<run console.log("Before", _progressionChar, _progressionMetric)>> */ <<set _attribute = _progressionChar.attributes[_progressionMetric]>> <<set _progression = _progressionChar.progression[_progressionMetric]>> <<if _progressionValue > 0>> <<if _drawMessage == true>> <<ChatMessage '_capitalizeAttributeName exp increased by _progressionValue'>> <</if>> <<include "Increase_XP_Attribute">> <<else>> <<set _progressionValue = Math.abs(_progressionValue)>> <<if _drawMessage == true>> <<ChatMessage '_capitalizeAttributeName exp decreased by _progressionValue'>> <</if>> <<include "Decrease_XP_Attribute">> <</if>> <<run _attributeAfter = _progressionChar.progression[_progressionMetric].value>> /* <<run console.log("Before:", _attributeBefore, "After", _attributeAfter, _progressionMetric)>> */ <<if _progressionMetric == "sexStamina">> <<set _progressionChar.status.potency._max = _progressionChar.attributes.sexStamina.value>> <</if>> <</widget>> <<widget "LocationEvent">> <<set _eventName = _args[0]>> <<set _targetLocation = _args[1]>> <<set _eventType = _args[2]>> <<set _eventIcon = _args[3]>> <<if _eventIcon != undefined>> <<set _fullName = "<img style='border-color: " + _charColor + "' class='avatar-list' @src='_eventIcon' alt='Avatar'><p style='color: " + _charColor + "'>_eventName</p>">> <<else>> <<set _fullName = "<p style='color: " + _charColor + "'>_eventName</p>">> <</if>> <<append "#character-grid">> <<set _eventId = "event-btn-" + _eventName>> <<set _eventSelector = "#" + _eventId>> <<capture _eventId _eventSelector _targetLocation _eventType>> <div class="btn btn--tw-link" @id='_eventId'> <<if _eventType == "transition">> <<button _fullName _targetLocation>><</button>> <<elseif _eventType == "include">> <<button _fullName>><<include _targetLocation>><<remove _eventSelector>><</button>> <</if>> </div> <</capture>> <</append>> <</widget>> <<widget "PoliceChecker">> <<set _playerIsNaked = $player.clothes.IndecentlyDressed($player.gender())>> <<set _LustCharacters = $Characters.filter(c => !c.info.isPlayer && c.attributes.lust.value >= 4 && c.info.currentLocation == $player.info.currentLocation)>> <<if _LustCharacters.length > 0 && _playerIsNaked && Random(0,100) > 60>> <<set $randomIndex = Random(0, _LustCharacters.length - 1)>> <<set $interactionNpc = _LustCharacters[$randomIndex]>> <<set $indexNPC = $Characters.indexOf($interactionNpc)>> <<LockSettings>> <<goto "NakedLust_Interaction">> <<elseif $playerInitFight > 0 && $dayFight != $dateTime.day>> <<goto "PoliceFightArrest">> <<elseif _playerIsNaked && $policeDayPass !== true>> <<goto "PoliceOfficerTalk_Naked">> <</if>> <</widget>> <<widget "RandomEvent">> <<set _location = _args[0]>> <<if rollChance(18)>> <<if _location == "Campus">> <<set $locationEventType = "Media\\Events\\Street\\LocEvents\\" + Random(0, 1) + ".mp4">> <<done>><<LocationEvent 'Event' 'LocationEventView' "transition" "Media\\Other\\Notice_Event.png">><</done>> <<elseif _location == "Park">> <<set $locationEventType = "Media\\Events\\Park\\LocEvents\\" + Random(0, 5) + ".mp4">> <<done>><<LocationEvent 'Event' 'LocationEventView' "transition" "Media\\Other\\Notice_Event.png">><</done>> <</if>> <</if>> <</widget>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<Video $locationEventType>> <<ChatMessage 'You notice something strange.'>> <div class="btn padding-top"><<button "Continue" $player.info.currentLocation>><<unset $locationEventType>><</button>></div> <</nobr>>
<<nobr>> <<set _clothItemsCount = 0>> <<set _canTakeClothOff = true>> <br> <<if _characterForView.clothes.clothingItems.size > 0>> <<set _isHasCloth = false>> <<if _characterForView.info.isPlayer == true>> You're wearing: <<else>> <<print _characterForView.pronoun()>> is wearing: <</if>> <<for _i = 0; _i <= 8; _i++>> <<capture _i>> <<if _characterForView.clothes.hasClothingType(_i)>> <<if (_i == 0 && _characterForView.clothes.hasClothingType(3)) || (_i == 1 && _characterForView.clothes.hasClothingType(2))>> <<continue>> <</if>> <<if _isHasCloth == true>> , <</if>> <<set _clothItemsCount += 1>> <<if _clothItemsCount == 3>> <br> <</if>> <<set _isHasCloth = true>> __<<link _characterForView.clothes.getFirstClothingItemByType(_i).name>> <<run Dialog.setup(_characterForView.clothes.getFirstClothingItemByType(_i).name)>> <<run Dialog.wiki(_characterForView.clothes.getFirstClothingItemByType(_i).getImg())>> <<run Dialog.open();>> <</link>>__ <<if _canTakeOffClothes>> <<capture _i>> <<if _characterForView.info.isPlayer == true>> __<<link " (take off)">> <<run _characterForView.takeOffClothing(_characterForView.clothes.getFirstClothingItemByType(_i))>> <<run Dialog.close()>> <<run Dialog.setup("Info")>> <<run Dialog.wiki('<<CharacterStatsView _characterForView _canTakeOffClothes>>')>> <<run Dialog.open();>> <</link>>__ <<else>> __<<link " (take off)" "TakeOff_clothes">> <<run Dialog.close()>> <<set $clothID = _i>> <</link>>__ <</if>> <</capture>> <</if>> <</if>> <</capture>> <</for>> <</if>> <</nobr>>
<<nobr>> <<set _levelIsIncrease = false>> <<set _xpGain = _progressionValue>> <<run while (_xpGain > 0 && (_attribute.value < _attribute.max || (_progressionMetric == "sexStamina" && _attribute.value < 10))) { let xpNeeded = _progression.max - _progression.value; let portion = Math.min(_xpGain, xpNeeded); _progression.increase(portion); _xpGain -= portion; if (_progression.value === _progression.max && _attribute.value < _attribute.max) { _attribute.increase(1); if (_attribute.value < _attribute.max){ _progression.value = 0; _progression._max += 20; } _levelIsIncrease = true; } } >> <<if _levelIsIncrease>> <<ChatMessage '_capitalizeAttributeName level increased'>> <</if>> <</nobr>>
<<nobr>> <<set _levelIsDecrease = false>> <<run _xpReduce = _progressionValue>> <<run while (_xpReduce > 0 && _attribute.value != _attribute.min) { if (_progression.value > 0) { let portion = Math.min(_xpReduce, _progression.value); _progression.decrease(portion); _xpReduce -= portion; } else { _attribute.decrease(1); _levelIsDecrease = true; _progression._max -= 20; if (_progression._max < 0) _progression._max = 0; _progression.value = _progression._max; } } if (_xpReduce > 0 && _attribute.value === _attribute.min) { _progression.value = 0; } >> <<if _levelIsDecrease>> <<ChatMessage '_capitalizeAttributeName level decreased'>> <</if>> <</nobr>>
<<nobr>> <<include "UpdateAll">> <<if $player.info.currentLocation == "Diner" && Random(1, 100) > 50>> <<goto "Diner_Events">> <<else>> <<set _incomeMoney = Random(70, 200)>> <<ChatMessage 'You received _incomeMoney \$'>> <<set $player.money += _incomeMoney>> <<SpendEnergy $player 20>> <<SpendTimeWithoutUpdate 30>> <div class="padding-top"> <div class="btn"><<button "Continue" $player.info.currentLocation>><<LeaveInteractionSettings>><</button>></div> </div> <</if>> <</nobr>>
<<nobr>> <<script>> Dialog.setup("Cheats"); Dialog.wiki(` <div class="cheat-wrapper"> <div class="cheat-form-container"> <div class="cheat-input-group"> <input id="passwordInput" type="text" class="cheat-input" placeholder=" " /> <label for="passwordInput" class="cheat-label-name">Enter access code</label> </div> <button onclick="DevEng(document.getElementById('passwordInput').value)" id="submitPassword" class="cheat-btn">Submit</button> <a href="https://www.patreon.com/c/Viceburg" target="_blank"> <img src="Media/Other/patreon-banner.png" alt="Patreon" class="patreon-logo" /> </a> </div> </div> `); Dialog.open(); <</script>> <</nobr>>
<<nobr>> <<switch _chanceButtonName>> <<case "Hug">> <<if _chanceReciver.behavior.preferences.hug == "negative">> <<run _chance = Math.round(subtractPercentage(_chance, 20))>> <<elseif _chanceReciver.behavior.preferences.hug == "positive">> <<run _chance = Math.round(increasePercentage(_chance, 20))>> <</if>> <<case "Flirt">> <<if _chanceReciver.behavior.preferences.flirt == "negative">> <<run _chance = Math.round(subtractPercentage(_chance, 20))>> <<elseif _chanceReciver.behavior.preferences.flirt == "positive">> <<run _chance = Math.round(increasePercentage(_chance, 20))>> <</if>> <<case "Dirty talk">> <<if _chanceReciver.behavior.preferences.dirtyTalk == "negative">> <<run _chance = Math.round(subtractPercentage(_chance, 20))>> <<elseif _chanceReciver.behavior.preferences.dirtyTalk == "positive">> <<run _chance = Math.round(increasePercentage(_chance, 20))>> <</if>> <</switch>> <</nobr>>