diff options
Diffstat (limited to 'nfsw/scenes.py')
-rw-r--r-- | nfsw/scenes.py | 33 |
1 files changed, 29 insertions, 4 deletions
diff --git a/nfsw/scenes.py b/nfsw/scenes.py index cf87228..0f9fe5d 100644 --- a/nfsw/scenes.py +++ b/nfsw/scenes.py @@ -390,6 +390,29 @@ def coitus(o): ]) + def fucked(): + if r.get('scene:coitus:fucked'): + return True + + return False + + + def fuck(q): + r.set('scene:coitus:fucked', 1) + + return rj('fuck-{}'.format(type)) + + + def mirror(q): + if not r.get('scene:coitus:fucked'): + return False + + if 'touch' in q and 'mirror' in q: + return True + + return False + + def p_done(q): # Mark scene done r.sadd('scenes:done', 'coitus') @@ -398,17 +421,19 @@ def coitus(o): r.set('scene', 'strayed') return '\n\n'.join([ - rj('fuck-{}'.format(type)), + rj('mirror'), strayed({'intro': 1}) ]) def p(q): - - if 'fuck' in q: + if mirror(q): return p_done(q) - if 'sex' in q or 'coitus' in q: + if not fucked() and 'fuck' in q: + return fuck(q) + + if not fucked() and ('sex' in q or 'coitus' in q): return colloquial() return gg() |