# nichNicholas !! Nicholas is registered as NPC A52 !! nichNTRelation: 0= Tanya and Nicholas are having an affair and PC doesnt know it, 1= PC found out, 2-9= reserved for them being together, 10= Tanya broke up, 11-19= reserved, 20= Nicholas broke up !! nichFlirtCounter !! nichFlirtLast !! nichSex: -1- permanentley disabled, 0- disabled, 10- enabled !! nichGentleclubE1: -1- eventchain permanently locked, 1 - Sveta is expected to attend Nicholas at nichGentleclubDay, 2 - Sveta was too late and got noticed about this, 10 - success !! nichGentleclubDayE1 !! nichGentleclubEnabled if $ARGS[0] = 'start' or $ARGS[0] = '': '
> src="images/characters/city/nicholas/01.jpg">
' $nichTemp = func('nichUtil','npcActivity','nicholas') if $nichTemp = 'sleep': 'Nicholas is sleeping. It would be a bad idea to wake him up now.' elseif $nichTemp = 'bathMorning' or $nichTemp = 'bathEvening' or $nichTemp = 'bathClub': 'Nicholas is currently brushing his teeth. It''s not the right time to talk to him now.' elseif $nichTemp = 'study': 'Nicholas is sitting at his computer doing his correspondence. When he is finished he might have time for you.' act 'Wait': minut += 5 gt 'nichNicholas','approach' end elseif $nichTemp = 'breakfast': 'Nicholas is currently enjoying his breakfast.' elseif $nichTemp = 'leaveWork' or $nichTemp = 'leaveShopping' or $nichTemp = 'leaveClub': 'Nicholas is putting on his shoes. Apparently he has no time to speak to you now.' !!elseif $nichTemp = 'work': !! 'Nicholas is most likely at work now.' elseif $nichTemp = 'returnWork': 'Nicholas just returned from work. You should give him some time before speaking to him.' elseif $nichTemp = 'returnShopping': 'Nicholas just returned from a shopping trip. You should give him some time before speaking to him.' elseif $nichTemp = 'living': 'Nicholas is sitting on the couch. You could approach him now.' act 'Approach': gt 'nichNicholas','approach' end elseif $nichTemp = 'dinner': 'Nicholas is eating dinner.' elseif $nichTemp = 'gala': !! TODO elseif $nichTemp = 'tanya': !! TODO elseif $nichTemp = 'returnClub': 'Nicholas just returned from his club. You should give him some time before speaking to him.' end act 'Back': gt $loc, 'return' end elseif $ARGS[0] = 'approach': '
> src="images/characters/city/nicholas/01.jpg">
' 'You wait for Nicholas to notice you, then you approach him and curtsy.' '"<<$pcs_nickname>>, what do you want?"' if nichEvaluationLast ! daystart: act 'Evaluation': cla if hour < 12: '"It''s not even noon. Are you sure you are done for today?"' act 'Yes': gt 'nichNicholas','evaluation' end act 'No': gt $loc, 'return' end else gt 'nichNicholas','evaluation' end end end nichGalaPresent = FUNC('nichUtil','isPresent','gala',$nichLoc) nichTanyPresent = FUNC('nichUtil','isPresent','tanya',$nichLoc) if nichSex < 10 and nichSex >= 0 and nichFlirtLast ! daystart: act 'Flirt': if nichGalaPresent = 1: 'It would be a big mistake to flirt with Nicholas while Gala is in the same room.' elseif nichTanyPresent = 1: 'You shouldn''t flirt with Nicholas while Tanya is in the same room.' else gt 'nichNicholas','flirt' end end elseif nichSex >= 10: act 'Seduce': if nichGalaPresent = 1: 'It would be a big mistake to seduce Nicholas while Gala is in the same room.' elseif nichTanyPresent = 1: 'You shouldn''t seduce Nicholas while Tanya is in the same room.' else gt 'nichNicholas','seduce' end end end !! if nichGentleclubEnabled = 1: !! act 'Club': !! cla !! '"Master Nicholas, I was wondering if you would like to go the club like you suggested."' !! '"Certainly. Lets go."' !! !! act 'Go to Club': !! gt 'nichClub' !! end !! end !! end act 'Back': gt $loc, 'return' end elseif $ARGS[0] = 'sex': if $ARGS[1] = '' or $ARGS[1] = 'start': gs 'boyStat', 'A52' '
> src="images/characters/city/nicholas/sex/undress.jpg">
' 'You slowly undress for Nicholas.' !! Nicholas will cum at 5 nichTemp = 1 elseif $ARGS[1] = 'bj': '
> src="images/characters/city/nicholas/sex/bj/bj'+rand(0,10)+'.jpg">
' gs 'arousal', 'bj', 1 nichTemp += 1 elseif $ARGS[1] = 'anal': '
> src="images/characters/city/nicholas/sex/anal/anal'+rand(0,7)+'.jpg">
' gs 'arousal', 'anal', 1 nichTemp += 1 end if nichTemp < 5: gs 'stat' if nichTemp = 4: 'Nicholas moans loudly. He seems to be about to cum.' end act 'Blowjob': gt 'nichNicholas','sex','bj' end act 'Anal': gt 'nichNicholas','sex','anal' end else if $ARGS[1] = 'bj': 'He groans loudly, and you feel his hard cock erupting in your mouth. You swallow it obediently, figuring that is what he wants you to do.' spafinloc = 12 elseif $ARGS[1] = 'anal': 'He groans loudly, spraying his seed deep inside your ass.' spafinloc = 3 end gs 'cum_manage' gs 'arousal', 'end' gs 'stat' act 'Leave': gt $loc, 'return' end end elseif $ARGS[0] = 'seduce': '
> src="images/characters/city/nicholas/sex/seduce.jpg">
' '"'+$npc_nickname['A52']+'? Is there anything I can do for you?"' 'You squeze your breast together, so that '+$npc_firstname['A52']+' has a good look at them.' '"I mean anything."' '"Actually there is something you could help me with." he says while unzipping his pants.' act 'Further': gt 'nichNicholas','sex' end elseif $ARGS[0] = 'flirt': nichFlirtLast = daystart '
> src="images/characters/city/nicholas/sex/flirt.jpg">
' if nichSex < 10: nichFlirtCounter += 1 if nichFlirtCounter = 1: '"Master Nicholas? I just wanted to tell you that I really like the suit you were wearing today."' '"Style is a way to say who you are without having to speak. Rachel Zoe said that. Successful people live by this motto."' 'Nicholas doesn''t seem to be in the mood right now. Maybe you should come back another time.' elseif nichFlirtCounter = 2: '"Master Nicholas? I just wanted to tell you that I really like the new perfume you were wearing today."' '"You are your greatest asset. Put your time, effort and money into training, grooming, and encouraging your greatest asset. Tom Hopkins said something very true there. You should take this advice seriously as well."' 'Nicholas doesn''t seem to be in the mood right now. Maybe you should come back another time.' elseif nichFlirtCounter >= 3: '"Master Nicholas? I just wanted to tell you that I really like the way your hair..."' if pcs_apprnc >= 120 or (nichNTRelation >= 10 and pcs_apprnc >= 80): '"Let me stop you right there. I know what you are up to."' 'He stands up and makes a step into your direction.' '"You are a very attractive young woman. And I would be lying if I said that I haven''t wondered how your skin feels."' 'He makes another step. He is less than one arm length away from you now. You can feel his breath on your skin as he speaks.' '"I know it should feel wrong. You are my maid. And I am a married man."' 'He gently touches your left shoulder and slowly runs his hand down your arm.' '"Yet it feels so right."' 'Just before his hand reaches your wrist he stops his movement.' '"Am I going too far? Did I get the signals wrong? Please tell me if you don''t want this too."' cla act 'I want this': nichSex = 10 '"Yes, Master Nicholas. I want this."' cla act 'Further': gt 'nichNicholas','sex' end end act 'This is going too far': nichSex = -1 '"I am sorry, master Nicholas. But I can''t do that."' 'He looks dissapointed.' '"I understand. Of course I have to ask you that you tell nobody about this incident."' '"Of course, Master Nicholas."' cla act 'Leave': gt $loc, 'return' end end exit else '"<<$pcs_nickname>>, I don''t think this would be appropriate. I suggest you get back to your work."' cla act 'Leave': gt $loc, 'return' end end end else gt 'nichNicholas','seduce' end act 'Back': gt $loc, 'return' end elseif $ARGS[0] = 'desc': '
> src="images/characters/city/nicholas/01.jpg">
' $nichTemp = func('nichUtil','npcActivity','nicholas') if $nichTemp = 'sleep': 'Usually Nicholas is sleeping at this time.' elseif $nichTemp = 'bathMorning': 'You assume that currently Nicholas is either in his bedroom or in the master bathroom.' elseif $nichTemp = 'study': 'At this time Nicholas can usually be found in his study.' elseif $nichTemp = 'breakfast': 'It''s the time Nicholas usually eats breakfast.' elseif $nichTemp = 'leaveWork': 'Nicholas is likely heading for work at the moment.' elseif $nichTemp = 'work': 'Nicholas is most likely at work now.' elseif $nichTemp = 'returnWork': 'Nicholas will return from work soon.' elseif $nichTemp = 'leaveShopping' or $nichTemp = 'shopping' or $nichTemp = 'returnShopping': 'Nicholas usually goes downtown around this time.' elseif $nichTemp = 'living': 'Nicholas seems to be in the living room.' elseif $nichTemp = 'bathEvening': 'Nicholas is likely heading for his bed now.' elseif $nichTemp = 'dinner': 'Nicholas usually eats dinner around this time.' elseif $nichTemp = 'gala': 'Nicholas seems to be in his bedroom.' elseif $nichTemp = 'tanya': 'You are sure that Nicholas is somewhere in the apartment but you don''t know where.' elseif $nichTemp = 'leaveClub' or $nichTemp = 'club' or $nichTemp = 'returnClub' or $nichTemp = 'bathClub': 'Usually Nicholas goes to his club around this time.' else 'You have no idea where Nicholas is at the moment.' end killvar '$nichTemp' act 'Back': gt $loc end elseif $ARGS[0] = 'evaluation': !! this function will not check whether PC already had an evaluation today !! calling this function with $ARGS[1] = 'silent' will clear all output in the end, use it for evaluating PC if she is not present for her evaluation nichTempEval = 0 !!Appearance if spdirty > 0 or (cumloc[6] = 1 or cumloc[7] = 1) or cumloc[11] = 1 or cumloc[1] = 1 or cumloc[2] = 1 or cumloc[4] = 1 or cumloc[5] = 1 or cumloc[6] = 1 or cumloc[7] = 1 or cumloc[14] = 1 or cumloc[12] = 1: 'Did you really think I won''t notice the cum on you? That''s beyond inappropriate.' nichTempEval -= 20 end if ShoHeels < 4: 'I understand that high heels are not a comfortable thing to wear. But your job isn''t about feeling comfortable and high heels are an essential part of your uniform.' nichTempEval -= 2 end if lashair ! 1 and pcs_pubes > 3 or pcs_leghair > 3: 'You need to take care of your body hair.' nichTempEval -= 2 end if pcs_hairbsh = 0: 'You didn''t brush your hair.' nichTempEval -= 2 end !! Breakfast if nichBreakfLast ! daystart: 'You didn''t show up for breakfast today. That leaves an exceptional bad impression.' nichTempEval -= 20 elseif nichBreakFQual = 4: 'You were late for breakfast today. That leaves a very bad impression.' nichTempEval -= 15 elseif nichBreakFQual = 3: 'The breakfast wasn''t even half-way done when we arrived. That leaves a bad impression.' nichTempEval -= 10 elseif nichBreakFQual = 2: 'The breakfast wasn''t completely done when we arrived. That leaves a bad impression.' nichTempEval -= 5 elseif nichBreakFQual = 1: if rand(1,10) = 0: 'The breakfast was acceptable.' nichTempEval += 1 end end !! Hallway if nichChoreState[0] = -1: 'I noticed that you applied a special polish in the hallway today. I like this show of extra effort.' nichTempEval += 3 nichChoreState[0] = 0 elseif nichChoreState[0] = 0: if rand(1,10) <= 2: 'You did a good job cleaning the hallway today.' nichTempEval += 1 end elseif nichChoreState[0] <= 5: if rand(1,10) <= 9: 'Did you notice the dirt in the hallway? I expect you to pay closer attention in the future.' nichTempEval -= 2 end elseif nichChoreState[0] <= 15: 'The hallway is in an unacceptable condition.' nichTempEval -= 10 else 'The hallway is in a catastrophic condition. You do realize that this is an apartment, not a barn?' nichTempEval -= 20 end !!Guest if nichChoreState[1] = -1: 'I took a look at the guest cloakroom. You did an exceptional job there.' nichTempEval += 3 nichChoreState[1] = 0 elseif nichChoreState[1] = 0: !! He wont comment or notice a clean guest bathroom elseif nichChoreState[1] <= 5: if rand(1,10) <= 5: 'Did you take a look into the guest cloakroom today? It needs some cleaning up.' nichTempEval -= 2 end elseif nichChoreState[1] <= 15: 'The guest cloakroom is dirty.' nichTempEval -= 10 else 'The guest cloakroom is very dirty.' nichTempEval -= 20 end !! Servant bedroom if nichChoreState[2] = 0: !! He wont comment a clean servant bedroom elseif nichChoreState[2] <= 5: if rand(1,10) <= 2: 'Your personal bedroom is a bit chaotic.' nichTempEval -= 1 end elseif nichChoreState[2] <= 15: if rand(1,10) <= 2: 'Your personal bedroom is very chaotic.' nichTempEval -= 3 end else if rand(1,10) <= 2: 'Your personal bedroom is extremely chaotic.' nichTempEval -= 5 end end !! Servant bathroom if nichChoreState[3] = 0: !! He wont comment a clean servant bathroom elseif nichChoreState[3] <= 5: if rand(1,10) <= 2: 'Your personal bathroom is a bit dirty.' nichTempEval -= 1 end elseif nichChoreState[3] <= 15: if rand(1,10) <= 2: 'Your personal bathroom is very dirty.' nichTempEval -= 3 end else if rand(1,10) <= 2: 'Your personal bathroom is extremely dirty.' nichTempEval -= 5 end end !! Laundry if nichChoreState[4] <= 15: !! He wont comment clean laundry elseif nichChoreState[4] <= 25: if rand(1,10) <= 8: 'I looked through my clothes today and found some of them missing. Are you late doing the laundry?' nichTempEval -= 3 end elseif nichChoreState[4] <= 35: 'You appear to be late doing the laundry. I''m missing several of my good shirts which should be cleaned up by now.' nichTempEval -= 10 else 'Today I was forced to wear one of my shirts which don''t fit me perfectly anymore. You being this late doing the laundry is not acceptable.' nichTempEval -= 20 end if nichChoreModLaundry1 >= 1: 'I heard that you ruined one of my shirts while doing the laundry.' nichTempEval -= 10 * nichChoreModLaundry1 killvar 'nichChoreModLaundry1' end if nichChoreModLaundry2 >= 1: 'I took a look at the clothes you washed today. They are flawless and smell exceptionally well.' nichTempEval += 3 * nichChoreModLaundry2 killvar 'nichChoreModLaundry2' end !! Tanya bedroom if nichChoreState[5] = 0: !! He wont comment a clean bedroom elseif nichChoreState[5] <= 5: 'I have taken a look at Tanyas room. It is a bit chaotic. Even though creating this chaos is her fault it''s your responsibility to clean it up.' nichTempEval -= 5 elseif nichChoreState[5] <= 15: 'I have taken a look at Tanyas room. It is very chaotic. Even though creating this chaos is her fault it''s your responsibility to clean it up.' nichTempEval -= 10 else 'I have taken a look at Tanyas room. It is extremely chaotic. Even though creating this chaos is her fault it''s your responsibility to clean it up.' nichTempEval -= 15 end !! Master bathroom if nichChoreState[6] = -1: 'You did an exceptional job cleaning the master bathroom. I really like the smell there. And you seem to have a talend of folding towels.' nichTempEval += 3 nichChoreState[6] = 0 elseif nichChoreState[6] = 0: if rand(1,10) <= 3: 'You did a good job cleaning up the master bathroom today.' nichTempEval += 1 end elseif nichChoreState[6] <= 5: 'The master bathroom is a little bit dirty. It doesn''t look like you cleaned it today. I expect it to be cleaned up perfectly in the future.' nichTempEval -= 5 elseif nichChoreState[6] <= 15: 'The master bathroom is in an unacceptable condition.' nichTempEval -= 10 else 'The master bathroom is in a catastrophic condition.' nichTempEval -= 20 end !! Master bedroom if nichChoreState[7] = 0: if rand(1,10) <= 3: 'You did a good job cleaning up the master bedroom today.' nichTempEval += 1 end elseif nichChoreState[7] <= 5: 'The master bedroom is a little bit dirty. It doesn''t look like you cleaned it today. I expect it to be cleaned up perfectly in the future.' nichTempEval -= 5 elseif nichChoreState[7] <= 15: 'The master bedroom is in an unacceptable condition.' nichTempEval -= 10 else 'The master bedroom is in a catastrophic condition.' nichTempEval -= 20 end !! Living room if nichChoreState[8] = -1: 'You did an exceptional job cleaning the living room.' nichTempEval += 3 nichChoreState[8] = 0 elseif nichChoreState[8] = 0: if rand(1,10) <= 3: 'You did a good job cleaning up the living room today.' nichTempEval += 1 end elseif nichChoreState[8] <= 5: 'The living room is a little bit dirty. It doesn''t look like you cleaned it today. I expect it to be cleaned up perfectly in the future.' nichTempEval -= 5 elseif nichChoreState[8] <= 15: 'The living room is in an unacceptable condition.' nichTempEval -= 10 else 'The living room is in a catastrophic condition.' nichTempEval -= 20 end !! Kitchen if nichChoreState[9] = -1: 'I really like what you did with the silverware today.' nichTempEval += 3 nichChoreState[9] = 0 elseif nichChoreState[9] = 0: if rand(1,10) <= 1: 'You did a good job cleaning up the kitchen today.' nichTempEval += 1 end elseif nichChoreState[9] <= 5: 'The kitchen is a little bit dirty. It doesn''t look like you cleaned it today. I expect it to be cleaned up perfectly in the future.' nichTempEval -= 5 elseif nichChoreState[9] <= 15: 'The kitchen is in an unacceptable condition.' nichTempEval -= 10 else 'The kitchen is in a catastrophic condition.' nichTempEval -= 20 end !!Study if nichChoreState[10] = 0: if rand(1,10) <= 2: 'You did a good job cleaning up the study today.' nichTempEval += 1 end elseif nichChoreState[10] <= 5: 'The study is a little bit dirty. It doesn''t look like you cleaned it today. I expect it to be cleaned up perfectly in the future.' nichTempEval -= 5 elseif nichChoreState[10] <= 15: 'The study is in an unacceptable condition.' nichTempEval -= 10 else 'The study is in a catastrophic condition.' nichTempEval -= 20 end !! Influence of other characters if nichEvalGala = 1: 'My wife told me that you were a good girl today.' nichTempEval += 1 killvar 'nichEvalGala' elseif nichEvalGala = 2: 'My wife told me that you were a very good girl today.' nichTempEval += 2 killvar 'nichEvalGala' end if nichGalaOpponent >= 10 and nichGalaOpponent < 20: 'My wife told me that you performed poorly today. She didn''t tell me what you did exactly but I will take it into account nevertheless.' 'It appears as if Gala wants to get rid of you by talking badly about your job performance.' nichTempEval -= 5 end !! Special events if nichGentleclubE1 > 0 and nichGentleclubE1 < 10 and nichGentleclubDayE1 < daystart: 'I asked you to attend me yesterday evening but you didn''t show up.' nichTempEval -= 10 killvar 'nichGentleclubE1' end *nl if nichTempEval > 5: if nichPerformance >= 80: 'Overall you did an outstanding job today and you are consistently performing to my satisfaction. Well done.' elseif nichPerformance < 20: 'Overall you did an outstanding job today. If you keep this up I''m willing to forget past shortcomings.' else 'Overall you did an outstanding job today. Well done.' end elseif nichTempEval >= 0: if nichPerformance >= 80: 'Overall you did your job well job today and you are consistently performing to my satisfaction. Well done.' elseif nichPerformance < 20: 'Overall you did your job well job today. If you keep this up I might be willing to forget past shortcomings.' else 'Overall you did your job well job today.' end elseif nichTempEval >= -5: if nichPerformance >= 80: 'Overall you didn''t quite meet my expectations today. Since you are usually performing well that''s not a big issue.' elseif nichPerformance < 20: 'Overall you didn''t quite meet my expectations today. I''m getting tired of getting disappointed by you.' else 'Overall you didn''t quite meet my expectations today. Your performance has to improve in the future.' end else 'Overall you didn''t meet my expectations at all today.' end if nichDebug = 1: 'DEBUG: nichTempEval = <>' end nichPerformance += nichTempEval killvar 'nichTempEval' nichPerformance = min(100,max(0,nichPerformance)) if $ARGS[1] = 'silent': *clr & cla !! note: the calling script has to make sure nichEvaluationLast is set to the right value else *nl if nichPerformance = 0: 'I had it with your laziness. Pack your stuff, you are fired!' *nl act 'Leave': gt 'nichUtil', 'fired' end else if nichPerformance <= 20: 'In total you are underperforming. If you keep working like this your remaining time here will be a very short one.' elseif nichPerformance <= 40: 'In total I am not satisfied by your performance. It has to improve if you want to keep your job.' elseif nichPerformance <= 60: 'In total you are doing a mediocre job. There reason for neither censure nor praise.' elseif nichPerformance <= 80: 'In total you are performing well, but there is still room for improvement.' else 'In total you are performing exceptionally well. I am glad I hired you.' end if nichWorkState = 0 and daystart >= nickHired + 7: 'In the past days you did your job well enough to pass your probation. You don''t need to worry about the legal work, I have it already sorted out for you.' 'From now on you don''t need to see me for daily performance evaluation anymore. Of course you can still ask me if you would like to have a detailed analysis of your work.' nichWorkState = 1 end 'That''s all for now. You are dismissed for today.' nichEvaluationLast = daystart act 'Leave': gt $loc end end end end --- nichNicholas ---------------------------------