Work Text:
“C’mon Soap,” Ghost says underneath him, the mask pulled up over his nose so Soap can see the tense line of his jaw and neck as he throws his head back against the covers.
“C’mon Johnny”, he repeats, more desperately, his voice almost cracking, a beautiful fucking sound.
Soap rubs himself harder against Ghost. He’s sitting heavily on top his ridiculously thick thighs, that are somehow both hard and soft beneath his straddled legs. He can feel Ghost’s stiff cock under him, can feel the damn outline of the thing through his own pants as he grinds back and forth faster.
Ghost’s gloved hands grab at Soap’s hips, gathering loose fabric and flesh alike until it hurts. Soap’s own breaths come a little faster.
“Gonna-“ Soap looks up at Ghost’s face when he pants out the word.
“Hmm?” Soap asks, watching his mouth fall open, the rough blond stubble on chin, the Glasgow scar pulled tight. He jerks his hips harder a few times, can feel his own cock barely brushing against Ghost’s at this angle. He ignores it, that’s not what this is about.
Ghost’s fingers clench down on his hips tightly, like Soap was a animal of prey and Ghost had caught him, never planning on letting go until he consumed him, except Ghost is the panting mess below him now, willingly at his mercy.
“What’s that, love?” Soap asks again, leaning his upper body down to get closer to Ghost’s heat. Except it doesn’t come out sweet or soft, Soap finds his voice is shot too, watching Simon come undone like this under him. He practically growls the words out. At least it seems to kick Ghost into gear enough to finish his sentence.
“Gonna make me cum in ma pants like a bloody teenager,” he grunts, the muscles in his neck standing out in further relief. Soap’s hand drifts to the lines there, the silvery while slashes decorating it, as if magnetized. Ghost is always magnetic, drawing him close when they’re training or just hanging out, always drawing his gaze, his attention.
“Soap-“ Ghost gasps his name unlike anytime he’s ever heard it. He’s sure this is his favourite version. He doesn’t tighten his hand, just rests it over Ghost’s exposed throat. His hips fuck onto him harder, growing impatient to watch him fully come undone. He straightens his back, using a hand on Ghost’s chest to push himself up more and bears all his weight down on Ghost’s cock.
“Johnny-“ Simon breathes through his nose heavily, his voice obviously going for calm but coming out far from it. “I’m close-“ Soap watches the words in his throat cut off as Soap applies a little more pressure to his neck, not nearly enough to cut any airflow, but enough for him to feel its presence.
“This okay, Simon?” Soap leans down close to ask again, their faces practically pressed together, even though they discussed it briefly before, he wants to be sure. Doesn’t want to give Ghost anything but pleasure right now.
“Fuck-“ Simon whines . Soap almost stops moving his hips at the sound, what he wouldn’t give to hear him say Soap’s name that way.
“Answer,” Soap says hoarsely against his throat, dragging his lips across the skin but not kissing, Ghost had said no kissing, and now wasn’t the time to find out if that extended to other parts of his body.
“Yeah- yeah Johnny, it’s good“ he breathes out, voice going tight again. Soap presses the sides of his neck a little tighter. Soap took to making Ghost come in his pants like he took to every task, with singleminded focus and determination.
A few more harsh thrusts and Ghost tenses below him even further, the muscles under his throat flexing as he holds his breath sharply while his fingers dig into Soap’s hips.
“That’s it,” Soap coaxes, the sound of fabric rubbing together loud in the otherwise absence of Ghost’s panting breaths.
Ghost lets out a quiet, strained “ah-“, then resumes breathing all at once, his chest heaving unsteadily as he jerks his head to the side, almost dislodging Soap’s hand as he gasps hard into the sheets.
“That’s it Simon,” Soap murmurs roughly, and shifts back a bit to get his free hand on Ghost’s cock, the loose standard issue pants around the obscene bulge already wet from precum and damp sweat. He rubs roughly at the fabric over his cock, feeling the way it pulses and jerks under his hand as he continues to come. Ghost’s breath catches again, and Soap makes sure to look back up in time as Simon lets out a strangled, “fucking-“ and jerks under him, unable to go very far with Soap pinning his hips.
Soap watches his face twist under the soft balaclava, his eyebrows pinched, pretty brown eyes screwed closed. He’s right braw, a fuckin beauty. An image Soap will never be able to get out of his head no matter how hard he could try.
“Good,” Soap murmurs, ignoring his own hard on. He feels Ghost shiver hard under him, just once.
“There ya go,” Soap says, not stoping his strokes, but slowing down as Ghost starts to breathe again. One of Ghost’s large hands unclenches from Soap’s pants as he raises it to cover his face.
“Good?” Soap asks, softer this time, sparing his gaze between his face and watching the cum spread into the fabric as he continues rubbing lightly, making it darker.
Ghost makes a muffled sound behind his hand, and Soap tries not to preen too much at how wrecked he sounds. He squeezes his spent cock once in reprimand, and watches Ghost wince lightly. Ghost moves his hand and seems to deflate all at once under Soap.
“Yea-“ he pauses to swallow, Soap gently removes his hand from where it was still resting on his throat when he realizes he can feel his throat working. He already misses the vibrations under his palm.
“Fuckin mint, Johhny” he says, deadpan, but the breathiness gives him away. Soap’s mouth splits into a cheeky grin, an odd sort of turned on giddiness lingers inside him.
“Good lad,” Soap says and pats Ghosts thigh, watching his chest rise and fall in a more steady rhythm than before. He lifts some of his weight off Ghost and onto his knees, when Ghost’s hand clenches reflexively on his hip, then quickly falls away to land on the bed, open palmed. Soap looks at it for a moment.
He looks back down at Ghost, from where he has a knee on either side of his hips, no longer touching. Soap is glad to see him looking at least more content than usual. He hopes he’ll be able to see Ghost fully relaxed someday, lounging and stretching like a pleased cat in a warm spot. He can picture it. He tries not to picture himself in that scene too. He fails, but doesn’t reprimand himself too much for it in the face of well, all this.
He aims a genuine smile down at Ghost when he realizes belatedly that Ghost is looking at him, and he lifts one leg off to stand on the floor. He doesn’t want Ghost to regret this, and he wants, needs, him to know Soap doesn’t. Definitely doesn’t. Shite, he could go with seeing Ghost like this every damn day, but that’s a dangerous thought. Although Soap has a knack for jumping head first into dangerous situations and coming out victoriously unscathed, he thinks this one would be his exception.
“Johnny.” Ghosts voice brings him back to the present, as it tends to do. He looks to where Ghost had sat up on the bed, no longer looking as sated and loose as before. He hates that he missed the chance to soak it all in, but can’t be anything other than pleased that Ghost let him see him like that for a time.
“Alright there?” Ghost says, almost normally. His deep voice is a touch softer, and the slight tilt on his chin marks his curiosity, or concern. Since when did Soap become so in tuned to Ghosts voice that he could tell the difference? He chides himself for being so weird about it. Ghost is his friend, hell, one of his best.
“Aye, got to see quite the show, Ghost.” Soap can’t help but tease. Ghost doesn’t quite roll his eyes, but it’s a near thing. He nods his chin to the obvious shape in Soap’s own pants, which has yet to go down. Clearly, Soap can’t be blamed, when faced with the past twenty minutes he’d spent with Ghost and the still obscene picture he makes in front of him, half laying on the rumpled sheets.
“Need a hand with that?” Ghost asks, with an eyebrow raised, clearly feeling more like his usual self. But this part isn’t something they’d discuss before, in the brief heated conversation they’d had before Ghost practically dragged Soap to his private room. Soap had offered. He’d offered to get Ghost off, not for Ghost to reciprocate. As much as he liked the idea, and as hard as it was to resist with Ghost asking, what he got from giving Ghost pleasure, from watching him pant underneath Soaps body, his hands, was far more than what he should ask or hope for already.
“Nah, I got it covered,” Soap replies easily. He’d damn near came when Ghost was gasping his name not even ten minutes ago. He doesn’t think it would take much at all to get him off, but he’s always been pretty decent at compartmentalizing. He doesn’t want to push Ghost farther than they’d agreed and risk ruining whatever happened here.
Thankfully, Ghost takes it in stride. “Want to hear a joke about construction?,” he says. Soap can feel the impending exasperation. He stays silent as they stare at each other, Ghost’s expression blank.
“I’m still workin on it,” Ghost says after a silent ten seconds, deadpan. Soap groans and turns on his heel.
“Awright ya bawbag, ya dinnae need to chase me out,” Soap says, but he can still feel himself grinning softly as he gets to the door.
“English, Johnny,” Ghost drawls from behind him as he makes to open the door. He feels himself growing flustered but turns around to look over his shoulder anyway.
“Let me translate. Ah wouldn’t mind doing this again,” Soap says, but he finds that’s were his courage ends for today.
He looks away and steps outside, softly closing the door behind him before hurrying back to his own room, and avoiding the rookies in the hall, wishing he didn’t forget his sweater on Ghost’s chair.
