Jump to content

Building Flirts, Part 1: NPC Initiated materials


cmorgan

Recommended Posts

NOTE: I am tossing these here, because I think I might be able to absorb them into the Friend Talk and Love Talk floating dialogs rather than interfering with a simple RandomNum() sequence that looks reasonably solid. So these started as flirts, but will probably become something else. Or be dropped completely.

 

/* Outdoors, At Night :: Global("c-aranstar","GLOBAL",1) */
IF ~~ c-aranstarflirt
 SAY ~[ARAN] (Aran stands beside you for a moment, looking up into the night sky. His hand gently brushes yours, fingertips lightly stroking your palm.)~
 = ~[ARAN] After a quiet moment, he clears his throat and moves away, settling his gear.)~
 IF ~~ THEN DO ~SetGlobal("c-aranstar","GLOBAL",1)~ EXIT
END

/* In A City :: Global("c-aranbar","GLOBAL",0)*/
IF ~~ c-arancityflirt
 SAY ~[ARAN] There's plenty o' privacy to be had around here, <CHARNAME>. I think it might be a right good idea for us to go get a drink, or somethin'. Just you an' me, see, to talk strategy an' such.~
 IF ~~ THEN REPLY ~[PC] Why Aran. Are you asking me on a date? I do not see any flower behind your ear. I thought that was the custom to announce you are interested.~ DO ~SetGlobal("c-aranbar","GLOBAL",1)~ GOTO c-aranbarsetup
 IF ~~ THEN REPLY ~[PC] I think whatever you have to discuss can be said right here, Aran. But you can go get a drink or a willing female on your own time.~ DO ~SetGlobal("c-aranbar","GLOBAL",1)~ EXIT
 IF ~~ THEN REPLY ~[PC] I might be pursuaded to have a drink with you. Perhaps I will see you later on. But there is a good deal to be done, so don't count on it - I might catch up with you sometime soon.~ DO ~SetGlobal("c-aranbar","GLOBAL",1)~ GOTO c-aranbarsetup
 IF ~~ THEN REPLY ~[PC] Aran... forget it.~ DO ~SetGlobal("c-aranbar","GLOBAL",1)~ EXIT
END

IF ~~ c-aranbarsetup
 SAY ~[ARAN] I don't have no flower handy. But I understand this is business first, an' we see what pops up, eh?~ 
 IF ~~ THEN EXIT
END

/* [color=red]Reminder to self - floater pickup-joint talk triggered on rest at an inn, Global("c-aranbar","GLOBAL",1) [/color] */

/* In a Dungeon :: Global("c-arandungeon","GLOBAL",0) */
IF ~~ c-arandungeonflirt
 SAY ~[ARAN] Hey, it's a mite cold in here. You want to share some body heat?~
 IF ~~ THEN REPLY ~[PC] Come over here, and I will warm your hands up. (You gently take his hot hands, chafing them as if they needed warming, playing with his fingers.)~ DO ~SetGlobal("c-arandungeon","GLOBAL",1) IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
 IF ~~ THEN REPLY ~[PC] No.~ DO ~SetGlobal("c-arandungeon","GLOBAL",1) IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
 IF ~~ THEN REPLY ~[PC] I am sure we can get a Burning Hands spell somewhere around here... no? Suit yourself.~ DO ~SetGlobal("c-arandungeon","GLOBAL",1) IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
IF ~~ THEN REPLY ~[PC] (You run your hands across Aran's shoulders, down his sides, and then to the center of his chest.) You have enough body heat all on your own, Aran. But if I need some, I will let you know.~ DO ~SetGlobal("c-arandungeon","GLOBAL",1) IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
END

 

Pushing Boundaries

We have the basics down for integrating additional materials now, without needless duplication. We don't even need a special .bcs block to do it - we can manipulate whether or not these flirts come into play through the dialog menu. The same block that fires for Heavy Flirts screens out all the other conditions we want - the only new one is has PC given Aran enough physical attention to make him think it might be OK to walk up to the leader of the party and try to touch her without her initiating the action. We add a conditioned pathway, adjusting the Heavy Flirts reply options:

 

IF ~Global("c-aranheavyflirt","GLOBAL",1)~ THEN BEGIN c-aranflirtswithpc1
 SAY ~(Aran moves to your side, glancing around at the surrounding area with a keen eye.)~
 IF ~Global("c-aransex","GLOBAL",0) RandomNum(2,1)~ THEN GOTO c-aranflirt2a
 IF ~Global("c-aransex","GLOBAL",0) RandomNum(2,2)~ THEN GOTO c-aranflirt2b
 IF ~Global("c-aransex","GLOBAL",1)~ THEN GOTO c-aranflirt2c
 IF ~HPPercentLT(Player1,50)~ THEN GOTO c-aranflirt2heal  
END 

/* Random Heavy Flirts A */  
IF ~~ c-aranflirt2a
 SAY ~[ARAN] (He settles his belt with one thumb.)~
 IF ~RandomNum(12,1)~ THEN GOTO c-aranflirt2hale
 IF ~RandomNum(12,2)~ THEN GOTO c-aranflirt2hearty
 IF ~RandomNum(12,3)~ THEN GOTO c-aranflirt2eyes
 IF ~RandomNum(12,4)~ THEN GOTO c-aranflirt2face
 IF ~RandomNum(12,5)~ THEN GOTO c-aranflirt2bust
 IF ~RandomNum(12,6)~ THEN GOTO c-aranflirt2legs
 IF ~RandomNum(12,7)~ THEN GOTO c-aranflirt2touch
 IF ~RandomNum(12,8)~ THEN GOTO c-aranflirt2joke
 IF ~RandomNum(12,9)~ THEN GOTO c-aranflirt2look
 IF ~RandomNum(12,10)~ THEN GOTO c-aranflirt2blush
 IF ~RandomNum(12,11)~ THEN GOTO c-aranflirt2writing
 IF ~RandomNum(12,12)~ THEN GOTO c-aranflirt2gift
END

/* Random Heavy Flirts B */
IF ~~ c-aranflirt2b
 SAY ~[ARAN] (He brushes his hair back from his forehead.)~
 IF ~RandomNum(10,1)~ THEN GOTO c-aranflirt2ink
 IF ~RandomNum(10,2)~ THEN GOTO c-aranflirt2tease1
 IF ~RandomNum(10,3)~ THEN GOTO c-aranflirt2tease2
 IF ~RandomNum(10,4)~ THEN GOTO c-aranflirt2tease3
 IF ~RandomNum(10,5)~ THEN GOTO c-aranflirt2tease4
 IF ~RandomNum(10,6)~ THEN GOTO c-aranflirt2tease5
 IF ~RandomNum(10,7)~ THEN GOTO c-aranflirt2tease6
 IF ~RandomNum(10,8)~ THEN GOTO c-aranflirt2tease7
 IF ~RandomNum(10,9)~ THEN GOTO c-aranflirt2race
 IF ~RandomNum(10,10)~ THEN GOTO c-aranflirt2gift
END

/* Random Heavy Flirts C with NPC Action */
IF ~~ c-aranflirt2b
 SAY ~[ARAN] (He grins, eyes locked on you.)~
 IF ~RandomNum(20,1)~ THEN GOTO c-aranbalanceflirt
 IF ~RandomNum(20,2)~ THEN GOTO c-aranpalmflirt
 IF ~RandomNum(20,3)~ THEN GOTO c-arantugflirt
 IF ~RandomNum(20,4)~ THEN GOTO c-araneyecandyflirt
 IF ~RandomNum(20,5)~ THEN GOTO c-aranshoulderflirt
 IF ~RandomNum(20,6)~ THEN GOTO c-aranflirt2tease4
 IF ~RandomNum(20,7)~ THEN GOTO c-aranhandholdflirt
 IF ~RandomNum(20,8)~ THEN GOTO c-aranflirt2tease5
 IF ~RandomNum(20,9)~ THEN GOTO c-aranracingflirt
 IF ~RandomNum(20,10)~ THEN GOTO c-aranflirt2tease6
 IF ~RandomNum(20,11)~ THEN GOTO c-aranclothesflirt
 IF ~RandomNum(20,12)~ THEN GOTO c-aranflirt2tease7
 IF ~RandomNum(20,13)~ THEN GOTO c-aranearflirt
 IF ~RandomNum(20,14)~ THEN GOTO c-aranflirt2race
 IF ~RandomNum(20,15)~ THEN GOTO c-aranleanflirt
 IF ~RandomNum(20,16)~ THEN GOTO c-aranflirt2gift
 IF ~RandomNum(20,17)~ THEN GOTO c-arannobleflirt
 IF ~RandomNum(20,18)~ THEN GOTO c-aranhugflirt
 IF ~RandomNum(20,19)~ THEN GOTO c-arankiss1flirt
 IF ~RandomNum(20,20)~ THEN GOTO c-aranflirt2poetry
END

 

And extend the the dialog states:

 

/* Aran-Initiated Physical Flirts */ 
IF ~~ c-aranbalanceflirt
 SAY ~[ARAN] (He loses his balance, his arm flying around your waist as he stumbles on a loose stone.)~
 IF ~~ THEN REPLY ~[PC] (You stabilize him briefly, then push him away with a warning glance.)~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
 IF ~~ THEN REPLY ~[PC] (You catch his hand against your side, holding him close for a moment.)~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
 IF ~~ THEN REPLY ~[PC] (You turn quickly, suddenly face to face, and hold him against you for a moment.)~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
END

IF ~~ c-aranpalmflirt
 SAY ~[ARAN] (A rough palm gently covers the back of your hand as Aran pulls you back against his chest)~
 IF ~~ THEN REPLY ~[PC] (You lean back into his arms, resting the back of your head on his shoulder)~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
 IF ~~ THEN REPLY ~[PC] (You move away quickly, glancing about for onlookers.) Aran, don't do that in public.~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
 IF ~~ THEN REPLY ~[PC] Is that all you have in mind, sellsword? A little feel?~ GOTO c-aranpalmfeel
 IF ~~ THEN REPLY ~[PC] (You turn in his arms, holding him to you fiercely. A crush of lips, warm and full of promise, and his fingers tighten on the small of your back.)~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
END

IF ~~ c-aranpalmfeel
 SAY ~[ARAN] (Aran's grin threatens to split his face, but he moves away.)~
 IF ~~ THEN DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
END

IF ~~ c-arantugflirt
 SAY ~[ARAN] (He pulls gently at your collar, edging it back into position. His hand slips behind your neck and squeezes briefly.)~
 IF ~~ THEN REPLY ~[PC] (You lean forward, catching him off guard, and kiss him lightly on the lips.)~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
 IF ~~ THEN REPLY ~[PC] (You smile briefly, then disengage his hand and move away.)~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
 IF ~~ THEN REPLY ~[PC] (You frown at Aran, and push his wrist away from your neck.)~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
END

IF ~~ c-araneyecandyflirt
 SAY ~[ARAN] (You catch his eyes measuring you, eyebrows raised, covering every aspect of your body.)~
 IF ~~ THEN REPLY ~[PC] (You pirouette quickly, giving him a full appreciation of your charms... and watch the blush rise on his neck with a mischievous smile.)~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
 IF ~~ THEN REPLY ~[PC] (You ignore him, pointedly looking in the other direction, but smile.)~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
 IF ~~ THEN REPLY ~[PC] (You ignore him completely.)~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
 IF ~~ THEN REPLY ~[PC] (Your eyes glitter frostily at him, and you step close whispering fiercely...) Keep your eyes on your work. I'm no barmaid, to be ogled.~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
END

IF ~~ c-aranshoulderflirt
SAY ~[ARAN] (Standing behind you, he gently and absentmindedly encircles your waist with his arms.)~
 IF ~~ THEN REPLY ~[PC] (You step gently on his instep, increasing the pressure until he realizes what he is doing and moves away with a muttered oath.)~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~EXIT
 IF ~~ THEN REPLY ~[PC] (You cross your arms over his encircling hands, leaning backwards into his embrace.)~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
 IF ~~ THEN REPLY ~[PC] (You turn in his embrace, tipping your head back to look at him before leaning your cheek against his.)~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
END

IF ~~ c-aranhandholdflirt
SAY ~[ARAN] (He gently and awkwardly pats your hand a moment, opening his palm as he moves along with you.)~
 IF ~~ THEN REPLY ~[PC] (You take his hand, nestling palm in palm, fingers intertwining.)~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
 IF ~~ THEN REPLY ~[PC] (You ignore him and move away.)~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
 IF ~~ THEN REPLY ~[PC] (You shake his hand firmly, smiling at him before moving away.)~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
END

IF ~~ c-aranracingflirt
 SAY ~[ARAN] (He leans close, and whispers in your ear) I can hear your heart racin' from way over there.~
 IF ~~ THEN REPLY ~[PC] If we were alone, you could feel it racing.~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
 IF ~~ THEN REPLY ~[PC] It certainly is not related to your presence, Aran.~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
 IF ~~ THEN REPLY ~[PC] (You glance around to make sure of privacy, and quickly cradle his hand to your chest.) You seem to have that effect on me.~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
 IF ~~ THEN REPLY ~[PC] Leave me alone, Aran.~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
END

IF ~~ c-aranclothesflirt
SAY ~[ARAN] (He takes you firmly by the hips, pulling you close.) I do think you are in need o' a kiss, <CHARNAME>.~
 IF ~~ THEN REPLY ~[PC] If we were sure we were completely alone, you could be right. But not now, when anyone could be watching.~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
 IF ~~ THEN REPLY ~[PC] Interesting. I, on the other hand, think you should kiss my ass. I have a donkey around here somewhere...~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
 IF ~~ THEN REPLY ~[PC] (Your eyes do the talking, your fingers do the walking, and the rest of the moment is a haze of warm lips matching warm lips, racing pulses, and disheveled hair.)~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
 IF ~~ THEN REPLY ~[PC] I need more than that, Aran.~ GOTO c-aranlustyflirt
END

IF ~~ c-aranlustyflirt
 SAY ~[ARAN] (Bright teeth nip and play at your neck, and your fingers curl up through his hair as you pull him to you. His fevered kisses rain onto your neck and collarbone, then lower - and lower - ~
 = ~[ARAN] and you spring apart before lust overcomes prudence.)~ 
 IF ~~ THEN DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
END

IF ~~ c-aranearflirt
 SAY ~[ARAN] (Grinning, he grabs your shoulder and pulls you close as if to whisper a private joke.)
= ~[ARAN] (Warm lips press suddenly, fiercely behind your ear, and he steps away quickly.)~
 IF ~~ THEN REPLY ~[PC] (You smile sweetly... and dump your waterskin over his head.)~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
 IF ~~ THEN REPLY ~[PC] (You scowl at him, and move away.)~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
 IF ~~ THEN REPLY ~[PC] (You shake your index finger at him, and then beckon him to move closer. When he does, you return his action with equal fervor.)~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
END

IF ~~ c-aranleanflirt
 SAY ~[ARAN] (Arm draped across your shoulders, he hugs you tightly, whispering as if to himself.) I'm not sure anyone's got th' right to be this happy just to be near you, girl.~
 IF ~~ THEN REPLY ~[PC] (You gently disengage his arm and move away.)~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
 IF ~~ THEN REPLY ~[PC] (You squeeze his hand, and whisper back.) I feel the same way.~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
 IF ~~ THEN REPLY ~[PC] (You squeeze his hand, and whisper back.) If you touch me in public again, you may not be near me for very long. And you most assuredly will not be happy.~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
END

IF ~~ c-arannobleflirt
 SAY ~[ARAN] (He holds your shoulders gently, looking into your face.) I may not be no noble, or even much more than a hired sword. But by Tyr's Eye, I am right glad to be *your* sword, so to speak.~
 IF ~~ THEN REPLY ~[PC] I appreciate the sentiment, Aran. Because I am going to use you however I see fit.~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
 IF ~~ THEN REPLY ~[PC] (You cup his cheek, and reward his speech with a gentle kiss.)~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
 IF ~~ THEN REPLY ~[PC] (You smile.) I am glad you are, too, Aran.~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
 IF ~~ THEN REPLY ~[PC] (You smile tightly.) Unfortunately, you seem to think that being my "sword" entitles you to touch me without my permission...~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
END

IF ~~ c-aranhugflirt
 SAY ~[ARAN] (He reaches out and grabs your waist, pulling you into a sudden dance move, ending with a deep dip.)~ 
 IF ~~ THEN REPLY ~[PC] (You laugh, and kiss him quickly and intensely, eyes sparkling.)~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
 IF ~~ THEN REPLY ~[PC] (You follow through the dip with an unexpected twist, sending him hurtling to the ground, pinning him beneath you.) A little rough-housing? Or combat training? Hmmm... perhaps more combat training is in order.~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
 IF ~~ THEN REPLY ~[PC] (You twist suddenly, sending him hurtling to the ground and pinning him beneath you. Your grip on his neck tightens warningly until he winces.) Cute. Perhaps you would like to try that move on our next enemy. It seems inefficient and wasteful, but if you really think it works, then I can't stop you from killing yourself.~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
END

IF ~~ c-arankiss1flirt
 SAY ~[ARAN] (There is no time to react - his kiss is rough, deep, and full of passion.)~
 IF ~~ THEN REPLY ~[PC] (Your arms fly about his neck, and your body melts into his embrace as you return the kiss.)~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
 IF ~~ THEN REPLY ~[PC] (You stand stunned, watching him move away.)~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
 IF ~~ THEN REPLY ~[PC] (You return his kiss fiercely, and catch his lower lip in your teeth, biting him until he stops and moves back.) Not bad, for a sellsword. With the right training, you could be a passable pleasure slave.~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
IF ~~ THEN REPLY ~[PC] (Your hand flies hard to his cheek, but in your anger you are not sure if it is your open palm or your fist. Either way, your message is very clear.)~ DO ~IncrementGlobal("c-aranflirt","GLOBAL",1) SetGlobal("c-aranheavyflirt","GLOBAL",0) RealSetGlobalTimer("c-aranflirttimer","GLOBAL",ARAN_FLIRT)~ EXIT
END

 

With some tweaking, this should more than handle the NPC initiated flirts for SoA, and many can be tweaked for ToB. The difference for ToB (since it is so short) will be that I am going to assume that a player is either romancing Aran, or not. The middle ground, multi-romance friendly stuff makes less sense there. We can have either a mature committed relationship, or almost none. If PC is bringing him in without declaring he is her suitor, then that is the clearest message to him possible that no matter what the deal is, he isn't going to ever be the *real* one-and-only. He can't pretend that eventually she might choose him and continue an affair or flirtation. So, to quote Project Runway, "You are either in, or you are out". (Yes, my wife watches it - and I'm perfectly fine with watching Heidi and commenting absentmindedly on the vagreties of fashion :) )

 

So, next along this development pathway is the Player-Initiated Dialog, because that is where the player gets to turn the tables. With the player initiating the action, we can open up a bit more. And we can borrow a huge coding adantage from the Flirtpack, because it sets a simple formula for allowing player choice of action. Plus, it is easier to write, because in most cases Aran gets to react, rather than initiate. Should be much quicker, and fun, too.

Link to comment
~[PC] (You pirouette quickly, giving him a full appreciation of your charms... and watch the blush rise on his neck with a mischievous smile.)~

 

~[ARAN] (He gently and awkwardly pats your hand a moment, opening his palm as he moves along with you.)~

 

~[PC] (You twist suddenly, sending him hurtling to the ground and pinning him beneath you. Your grip on his neck tightens warningly until he winces.)

 

~[PC] (You follow through the dip with an unexpected twist, sending him hurtling to the ground, pinned beneath you.)

 

*happy sigh* Yum.

Link to comment

RavenBlack, it has been since Nov 2008 - and I have not been able to come up with a nice replacement for that flirt that didn't catch your fancy.

 

How about these additions into dialog files, instead - I appreciate all your typo hunting. (Still working away on the mod, just not as much posting, as most of the coding stuff is bogstandard). Feedback requested for the following "easter eggs' for Heartwarder of Sune:

 

IF ~~~ a48
 SAY ~[ARAN] Anythin' else you want to clear up? Gotta know the folks you are fightin' along side, to be safe.~
 ++ ~[PC] Yes. I still don't quite get all the terms you just used. I want to ask about another one.~ + a57
 + ~Gender(Player1,MALE)~ + ~[PC] Do you always start conversations this way? I would think that you were more of the tall, dark, handsome, and silent type.~ + a58
 + ~Gender(Player1,FEMALE)~ + ~[PC] Do you always start conversations this way? I would think that you were more of the tall, dark, handsome, and silent type.~ + a59
 ++ ~[PC] No, I think I have the basics. I think we need to move on.~ EXIT
 ++ ~[PC] It seems like you talk a lot.~ + a61
 + ~Kit(Player1,NMSUNE)~ + ~[PC] We could get some things straight about what my being a Heartwarder of Sune means.~ + a983
END

IF ~~~ a983
 SAY ~[ARAN] I thought that meant you might decide on some alternate sleepin' arrangements, mayhap get right friendly, eh?~
 + ~!Kit("c-aran",NMSUNE)~ + ~[PC] (Sigh) Yes, yes... all of Sune's followers are very easy, just like every follower of Torm beats things with a mailed fist evenly on all sides, and all halflings steal... you have much to learn about Sune, Aran.~ + a984
 + ~!Kit("c-aran",NMSUNE)~ + ~[PC] Well good thing we can clear this up, then. Following Sune means I choose whom, when, where, and under what conditions. I do not pay for your services by sleeping with you.~ + a984
 + ~!Kit("c-aran",NMSUNE)~ + ~[PC] Perhaps. If it pleases me, and pleases Sune. Until then, keep to your job, and keep your hands to yourself.~ + a984
 + ~!Kit("c-aran",NMSUNE)~ + ~[PC] Ignorance like that will get you killed, sellsword.~ + a984
 + ~Kit("c-aran",NMSUNE)~ + ~[PC] (Sigh) Yes, yes... all of Sune's followers are very easy, just like every follower of Torm beats things with a mailed fist evenly on all sides, and all halflings steal... you have much to learn about Sune, Aran.~ + a985
 + ~Kit("c-aran",NMSUNE)~ + ~[PC] Well good thing we can clear this up, then. Following Sune means I choose whom, when, where, and under what conditions. I do not pay for your services by sleeping with you.~ + a985
 + ~Kit("c-aran",NMSUNE)~ + ~[PC] Perhaps. If it pleases me, and pleases Sune. Until then, keep to your job, and keep your hands to yourself.~ + a985
 + ~Kit("c-aran",NMSUNE)~ + ~[PC] Ignorance like that will get you killed, sellsword.~ + a985
END

IF ~~ a984
 SAY ~[ARAN] Right, sorry about that. Rough trade, not much in th' way o' education on Sune here. I do rightly apologise.~
 IF ~~ GOTO a48
END

IF ~~ a985
 SAY ~[ARAN] Now, you know I be jokin'! I would have naught in th' way o' spellcraft if I really meant any o' it. Sune grants where beauty be appreciated, not where ignorance an' lust be appreciated. Shar's Spit, I'm no Sensate.~
 IF ~~ GOTO a48
END

 

IF ~~ a91
 SAY ~[ARAN] Well, now that you mention it, the occasional inn is right fine, but I wasn't expectin' it to be a regular occurrence. About that dancin' girls part, that depends... are you offerin' to dance?~
 ++ ~[PC] Let's keep this professional, Aran.~ + a97
 ++ ~[PC] You couldn't keep up with me, boyo. I wouldn't want to give you a heart attack, or anything.~ + a98
 ++ ~[PC] You play a dangerous game, Whitehand. Did I somehow give you the idea that you could talk with me this way?~ + a97
 ++ ~[PC] No.~ + a97
 ++ ~[PC] Yes.~ + a98
 + ~Kit(Player1,NMSUNE)~ + ~[PC] We Heartwarders appreciate things of beauty, Aran. Though your language is far from beautiful, I can see a time where Sune might decide you need special attention...~ + a98
END

 

IF ~Global("c-aranfriendbg2","GLOBAL",13)~ THEN BEGIN a161
 SAY ~[ARAN] There be a mite o' difference between chasin' around Faerun in pursuit o' treasure, fame, an' such, an' chasin' around Faerun close on th' tail o' adversaries what can call on th' powers this 'Irenicus' bastard can.~
 ++ ~[PC] Are you in this for fame, fortune, and riches beyond your wildest imagination?~ DO ~SetGlobal("c-aranfriendbg2","GLOBAL",14) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a162
 + ~RandomNum(3,1)~ + ~[PC] You talk too much.~ DO ~SetGlobal("c-aranfriendbg2","GLOBAL",14) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + c-aranshutup16
 + ~RandomNum(3,2)~ + ~[PC] You talk too much.~ DO ~SetGlobal("c-aranfriendbg2","GLOBAL",14) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + c-aranshutup17
 + ~RandomNum(3,3)~ + ~[PC] You talk too much.~ DO ~SetGlobal("c-aranfriendbg2","GLOBAL",14) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + c-aranshutup18
 ++ ~[PC] Irenicus is a means to an end. To be more precise and borrow your quaint speech patterns, I means to end him.~ DO ~SetGlobal("c-aranfriendbg2","GLOBAL",14) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a163
 ++ ~[PC] I do not have much choice in the matter.~ DO ~SetGlobal("c-aranfriendbg2","GLOBAL",14) RealSetGlobalTimer("c-aranfriendtimer","GLOBAL",ARAN_FTT)~ + a164
 + ~Kit(Player1,NMSUNE)~ + ~[PC] Sune abhors ugliness. I think that in this case, my personal needs and my godesses' needs are one and the same.~ + a163 
END

 

IF ~~ a361
 SAY ~[ARAN] Well, m'lady <CHARNAME>, we done took sparrin' to a whole new level.~
 ++ ~[PC] Oh. Well, I am awake, I guess. And from the feel of things, so are you.~ + a367
 ++ ~[PC] Oh gods... get up. Fast. And get dressed. Where are my clothes? Quickly... hand me that, will you?~ + a368
 ++ ~[PC] Hmmmmm. Warm. Come back here.~ + a370
 ++ ~[PC] Levels. Sparring. (Sit bolt upright suddenly, clutching the blanket close to your chin) We made love.~ + a368
 + ~Kit(Player1,NMSUNE) !Kit("c-aran",NMSUNE)~ + ~[PC] I think that particular... prayer... was quite fervent.~ + a986
 + ~Kit(Player1,NMSUNE) Kit("c-aran",NMSUNE)~ + ~[PC] I think that particular... prayer... was quite fervent.~ + a987
END

IF ~~ a986
 SAY ~[ARAN] Aye, but... I'd be right disappointed if you were just thinkin' o' servin' your godess, an' not o' me.~
 ++ ~[PC] Hmmmmm. Too much talk. Warm. Come back here.~ + a370
 ++ ~[PC] I worship through creating things of beauty, not through lovemaking. But sometimes, lovemaking becomes much more than just physical interaction.~ + a380
 ++ ~[PC] I can have both, you know. And it seems my attentions have a very strong effect on you...~ + a380
 ++ ~[PC] ...and there goes the mood. You know, you can be a completely ignorant idiot. You think I was just doing a temple duty?~ + a380
END

IF ~~ a987
 SAY ~[ARAN] Aye, true enough. There be many ways to worship Sune, an' I do think this beast paintin', poetry, singin'... wait a minute. I think we done added almost all that in last night, too!~
 ++ ~[PC] I did not plan on this. This may... complicate things. Aran, promise me you will not talk about this with anyone, please?~ + a376
 ++ ~[PC] No time... we have to hurry. We had better get up and get dressed.~ + a380
 ++ ~[PC] I do not ordinarily worship in that way, Aran, but you are right. In fact, I think that we need... another try?~ + a370
 ++ ~[PC] Well, the singing was certainly not polished, and right now, my entire body aches from overexertion. For your penance, fix me breakfast? I could make it worth your while...~  + a378
 ++ ~[PC] My performance was exemplary, but you have a great deal to learn about pleasing a woman.~ + a372
END

IF ~~ a988
 SAY ~[ARAN] Cyric's Black Heart. I done messed it up again. Look, I didn't mean that th' way it sounded.~
 ++ ~[PC] I did not plan on this. This may... complicate things. Aran, promise me you will not talk about this with anyone, please?~ + a376
 ++ ~[PC] No time... we have to hurry. I should not need to explain myself or my faith to you. Obviously, you spent too much time on my exterior, and not enough learning who I really am. Get moving, right now!~ + a373
 ++ ~[PC] What is done is done. I did not explain my faith clearly enough to you. I do not regret last night, but we need to be discreet.~ + a376
 ++ ~[PC] On second thought, I think I overreacted. Perhaps I need to make it more clear to you about my passion. In fact, I think that we need... another try?~ + a370
 ++ ~[PC] Apology accepted. For your penance, fix me breakfast? I could make it worth your while...~  + a378
 ++ ~[PC] Well, in that case, I think I want to trace that tatoo again. Perhaps this time just with my fingers...~ + a382
END

 

IF ~~ a367
 SAY ~[ARAN] Cold hands, cold hands... easy there! We seem to have taken sparrin' to a whole new level.~
 ++ ~[PC] Oh gods... get up. Fast. And get dressed. Where are my clothes? Quickly.. hand me that, will you?~ + a368
 ++ ~[PC] I think it was several levels. I lost count.~ + a371
 ++ ~[PC] That, Aran, was not sparring. That was serious lovemaking. And I think with a little more practice, we may redefine the genre.~ + a371
 ++ ~[PC] Well, you tired me out. But I am quite disappointed. You need to be taught some things, Aran.~ + a372
 ++ ~[PC] It was nice enough for an evenings's entertainment. Tell anyone it happened, and I will destroy you.~ + a373
 + ~Kit(Player1,NMSUNE) !Kit("c-aran",NMSUNE)~ + ~[PC] I think that particular... prayer... was quite fervent.~ + a986
 + ~Kit(Player1,NMSUNE) Kit("c-aran",NMSUNE)~ + ~[PC] I think that particular... prayer... was quite fervent.~ + a987
END

Link to comment

'Tis OK :thumbsup: And I like the addition, especially the Sensate reference. Can the PC have a response to a non-Sunite Aran around those same lines? There's a difference between Sunite and Sharessin doctrine, after all. :hm:

 

And more typos!

 

+ ~Kit(Player1,NMSUNE)~ + ~[PC] Sune abhors ugliness. I think that in this case, my personal needs and my goddess' needs are one and the same.~ + a163 (that just sounds wrong to me, perhaps "my personal needs and those of my goddess" instead?)

 

IF ~~ a986

SAY ~[ARAN] Aye, but... I'd be right disappointed if you were just thinkin' o' servin' your goddess, an' not o' me.~

 

SAY ~[ARAN] Aye, true enough. There be many ways to worship Sune, an' I do think this beats paintin', poetry, singin'... wait a minute. I think we done added almost all that in last night, too!~

 

++ ~[PC] Well, in that case, I think I want to trace that tattoo again. Perhaps this time just with my fingers...~ + a382

Link to comment

Are you thinking in block a986, the

 

++ ~[PC] I worship through creating things of beauty, not through lovemaking. But sometimes, lovemaking becomes much more than just physical interaction.~ + a380

 

needs to have another option like

 

++ ~[PC] Sune grants gifts according to where beauty can be appreciated, not lust. I am no Sensate, here to sate carnal desires.~ + a380

 

or are you thinking that block a983 needs that line? Or something else? (and thanks!)

Link to comment

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...