init offset = 10 default persistent.gallery_unlocked = False init 100 python: import functools def galscene_checkvar_unlocked(f): @functools.wraps(f) def wrapper(*args, **kwargs): if persistent.gallery_unlocked: return True else: return f(*args, **kwargs) return wrapper if not hasattr(GalScene.checkvar, "__wrapped__"): GalScene.checkvar = galscene_checkvar_unlocked(GalScene.checkvar) def moveto_unlocker(f): @functools.wraps(f) def wrapper(*args, **kwargs): if _in_replay: renpy.call("endreplay") #renpy.end_replay() return None else: return f(*args, **kwargs) return wrapper if not hasattr(moveto, "__wrapped__"): moveto = moveto_unlocker(moveto) def valid_variation_mod(f): @functools.wraps(f) def wrapper(*args, **kwargs): result = f(*args, **kwargs) if not _in_replay: if args[0].id not in persistent.sb_variations_seen_mod: persistent.sb_variations_seen_mod[args[0].id] = {} persistent.sb_variations_seen_mod[args[0].id][args[1]] = True return result return wrapper if not hasattr(SandboxScene.valid_variation, "__wrapped__"): SandboxScene.valid_variation = valid_variation_mod(SandboxScene.valid_variation) screen gallery_replay_detail(girl, toy=False): modal True default lxsize = 400 default lysize = 252 default lxspacing = 50 default lyspacing = 75 default completed = True default type_scene = "story" add "gallery_background" frame: padding (0, 0) xysize (1920, 131) background Frame("#000000") text _("ГАЛЕРЕЯ СЦЕН"): font gui.font_cooper_black color "ff2419" size 70 align (0.5, 0.5) vbox: xanchor 1.0 pos (1910, 10) button: style_prefix "check" if persistent.gallery_unlocked: # Unlocked text _("Разблокировано{#UNLOCKER}") style "check_button_text" else: # Locked text _("Заблокировано{#UNLOCKER}") style "check_button_text" selected not persistent.gallery_unlocked action ToggleField(persistent, "gallery_unlocked") vbox: style_prefix "radio" xsize None textbutton _("Story") action SetScreenVariable("type_scene", "story") textbutton _("Sandbox") action SetScreenVariable("type_scene", "sandbox") textbutton _("Показать полностью") action ToggleScreenVariable("completed") style_prefix "check" pos (20, 20) vpgrid: cols 4 xsize lxsize*4 + lxspacing*3 + 10 ysize lysize*2+ lyspacing*1 + 38*4 pos (80, 180) xspacing lxspacing yspacing lyspacing draggable True mousewheel True scrollbars "vertical" vscrollbar_xsize 10 vscrollbar_xoffset 60 vscrollbar_unscrollable "hide" for sce in [ sce for sce in gallery_scenes if girl in sce.girl and type_scene == "story" ] + [ sce for sce in [ gall_sb_scenes[sid] for sid in order_sb_scenes if type_scene == "sandbox" ] if girl in sce.girl ]: if completed or sce.completion() < 100: frame: style "empty" vbox: button: xysize (lxsize, lysize) idle_background Transform(sce.thumbnail, rotate=-1, anchor=(0.5, 0.5), pos=(0.53, 0.46), matrixcolor=SaturationMatrix(0.0)) hover_background Transform(sce.thumbnail, rotate=-1, anchor=(0.5, 0.5), pos=(0.53, 0.46)) insensitive_background Transform(sce.thumbnail, rotate=-1, anchor=(0.5, 0.5), pos=(0.53, 0.46), blur=25.0, matrixcolor=SaturationMatrix(0.0)) if sce.version == last_game_version_gallery: foreground Fixed(Frame("gal_replay_thumbnail_foreground"), Text(tra(_("Новое!")), size=30, outlines=[(2, "#000")], color="#e06666"), fit_first=True) else: foreground Frame("gal_replay_thumbnail_foreground") sensitive sce.completion() > 0 or persistent.gallery_unlocked tooltip sce.completion_tooltip() if toy: action [ Replay(sce.label, scope={ "current_replay" : sce, "replay_toy" : True }, locked=False), Hide(), Return("sex"), With(pixellate) ] else: action Replay(sce.label, scope={ "current_replay" : sce, "replay_toy" : False }, locked=False) if sce.completion() == 0: text "???" xalign 0.5 size 30 else: text tra(sce.title) xalign 0.5 size 30 text "[sce.completion()]%" xalign 0.5 size 30 $ tooltip = GetTooltip() if tooltip: nearrect: focus "tooltip" frame: padding (35, 35) xsize 500 yoffset -20 background Frame("frame_black_rounded_rectangle", 35, 35) xalign 0.5 text "[tooltip!it]" yoffset -7 size 35 xalign 0.5 textbutton _("Назад"): keysym "game_menu" padding (30, 10) align (0.5, 0.985) text_size 60 action Hide("gallery_replay_detail") screen replay_choose_variations(): modal True add "gallery_background" vbox: align (0.5, 0.5) spacing 10 text _("Вы разблокировали различные варианты этой сцены. Выберите один:{#UNLOCKER}") underline True null height 50 vbox: xalign 0.5 spacing 10 for var, name in current_replay.unlocked_mexclusive_variations(): textbutton _(name): action [ Function(current_replay.setup_stats, exclusive_variation=var), Return() ] screen gallery_specialrender_detail(girl_filter): modal True default lxsize = 400 default lysize = 252 default lxspacing = 50 default lyspacing = 75 add "gallery_background" frame: padding (0, 0) xysize (1920, 131) background "#000000" text _("Специальные рендеры") color "#ff2419" align (0.5, 0.6) size 90 font gui.font_cooper_black button: style_prefix "check" xanchor 1.0 pos (1910, 10) if persistent.gallery_unlocked: # Unlocked text _("Разблокировано{#UNLOCKER}") style "check_button_text" else: # Locked text _("Заблокировано{#UNLOCKER}") style "check_button_text" selected not persistent.gallery_unlocked action ToggleField(persistent, "gallery_unlocked") vpgrid: cols 4 xsize lxsize*4 + lxspacing*3 + 10 ysize lysize*2+ lyspacing*1 + 38*4 pos (80, 180) xspacing lxspacing yspacing lyspacing draggable True mousewheel True scrollbars "vertical" vscrollbar_xsize 10 vscrollbar_xoffset 60 vscrollbar_unscrollable "hide" for idx, sr in enumerate([ sr for sr in gallery_special_renders if sr.girl == girl_filter ], start=1): frame: style "empty" vbox: button: xysize (lxsize, lysize) idle_background Transform(sr.thumbnail, rotate=-1, anchor=(0.5, 0.5), pos=(0.53, 0.46), matrixcolor=SaturationMatrix(0.0)) hover_background Transform(sr.thumbnail, rotate=-1, anchor=(0.5, 0.5), pos=(0.53, 0.46)) insensitive_background Transform(sr.thumbnail, rotate=-1, anchor=(0.5, 0.5), pos=(0.53, 0.46), blur=25.0, matrixcolor=SaturationMatrix(0.0)) sensitive sr.image in persistent.special_renders_unlocked or persistent.gallery_unlocked if sr.version == last_game_version_gallery: foreground Fixed(Frame("gal_replay_thumbnail_foreground"), Text(tra(_("Новое!")), size=30, outlines=[(2, "#000")], color="#e06666"), fit_first=True) else: foreground Frame("gal_replay_thumbnail_foreground") if sr.type == "uhd": action Show("portrait", img=sr.image, exit="hide") else: action NullAction() text str(idx) xalign 0.5 size 30 textbutton _("Назад"): keysym "game_menu" padding (30, 10) anchor (0.5, 1.0) pos (0.5, 0.99) text_size 60 action Hide("gallery_specialrender_detail") screen gallery_memory: modal True default lxsize = 400 default lysize = 252 default lxspacing = 50 default lyspacing = 75 add "gallery_background" frame: padding (0, 0) xysize (1920, 131) background "#000000" text _("Галерея воспоминаний") color "#ff2419" align (0.5, 0.6) size 90 font gui.font_cooper_black button: style_prefix "check" xanchor 1.0 pos (1910, 10) if persistent.gallery_unlocked: # Unlocked text _("Разблокировано{#UNLOCKER}") style "check_button_text" else: # Locked text _("Заблокировано{#UNLOCKER}") style "check_button_text" selected not persistent.gallery_unlocked action ToggleField(persistent, "gallery_unlocked") vpgrid: cols 4 xsize lxsize*4 + lxspacing*3 + 10 ysize lysize*2+ lyspacing*1 + 38*4 pos (80, 180) xspacing lxspacing yspacing lyspacing draggable True mousewheel True scrollbars "vertical" vscrollbar_xsize 10 vscrollbar_xoffset 60 vscrollbar_unscrollable "hide" for idx, mem in enumerate(gallery_memories, start=1): frame: style "empty" vbox: button: xysize (lxsize, lysize) idle_background Transform(mem.thumbnail, rotate=-1, anchor=(0.5, 0.5), pos=(0.53, 0.46), matrixcolor=SaturationMatrix(0.0)) hover_background Transform(mem.thumbnail, rotate=-1, anchor=(0.5, 0.5), pos=(0.53, 0.46)) insensitive_background Transform(mem.thumbnail, rotate=-1, anchor=(0.5, 0.5), pos=(0.53, 0.46), blur=25.0, matrixcolor=SaturationMatrix(0.0)) sensitive mem.label in persistent.memories_unlocked or persistent.gallery_unlocked if mem.version == last_game_version_gallery: foreground Fixed(Frame("gal_replay_thumbnail_foreground"), Text(tra(_("Новое!")), size=30, outlines=[(2, "#000")], color="#e06666"), fit_first=True) else: foreground Frame("gal_replay_thumbnail_foreground") action Replay(mem.label, scope={ "current_replay" : mem, "replay_toy" : False }, locked=False) text str(idx) xalign 0.5 size 30 textbutton _("Назад"): keysym "game_menu" padding (30, 10) anchor (0.5, 1.0) pos (0.5, 0.99) text_size 60 action Hide("gallery_memory") translate english strings: old "Разблокировано{#UNLOCKER}" new "Unlocked" old "Заблокировано{#UNLOCKER}" new "Locked" old "Вы разблокировали различные варианты этой сцены. Выберите один:{#UNLOCKER}" new "You've unlocked different variations of this scene. Choose one:" label gallery_before_sandbox: call setup_replay from _setup_replay_gallery_before_sandbox if isinstance(current_replay, GallSbScene): if len(current_replay.unlocked_mexclusive_variations()) > 1: call screen replay_choose_variations_sandbox_mod() else: $ current_replay.setup_stats() return screen replay_choose_variations_sandbox_mod(): modal True add "gallery_background" vbox: align (0.5, 0.5) spacing 10 text _("Вы разблокировали различные варианты этой сцены. Выберите один:") underline True null height 50 vbox: xalign 0.5 spacing 10 for var, name in current_replay.unlocked_mexclusive_variations(): textbutton _(name): action [ Function(current_replay.setup_stats, exclusive_variation=var), Return() ] define gall_sb_scenes = {} define order_sb_scenes = [] default persistent.sb_variations_seen_mod = {} init python: def sandbox_scene_callback(label_name, jumpto): if _in_replay: if label_name in gall_sb_scenes: renpy.call("gallery_before_sandbox") config.label_callbacks.append(sandbox_scene_callback) def apply_value_mod(loc): unlockcdt, chara, attr, value = loc if attr == "loyalty": if all_persons[chara].loyalty < value: all_persons[chara].loyalty = value elif attr == "dom": if all_persons[chara]._dom[0] < value: all_persons[chara]._dom = [ value, value, value, value, value, value ] elif attr == "love": if all_persons[chara]._love[0] < value: all_persons[chara]._love = [ value, value, value, value, value, value ] elif attr == "record": all_persons[chara].record(value) elif attr == "max_star": if all_persons[chara].max_star < value: all_persons[chara].max_star = value elif attr in ("hands", "physical", "art"): xp = SKILLS[attr].ranks[value] if mc.skills[attr] < xp: mc.skills[attr] = xp elif attr == "pervert": if mc.pervert < value: mc.pervert = value class GallSbScene: def __init__(self, girl, id, title, thumbnail, variations=None, mexclusive_variations=None, addvalues=None): self.girl = girl self.id = id self.title = title self._thumbnail = thumbnail self.version = "0.000" if variations is None: self.variations = {} else: self.variations = variations if mexclusive_variations is None: self.mexclusive_variations = [] else: self.mexclusive_variations = mexclusive_variations if addvalues is None: self.addvalues = [] else: self.addvalues = addvalues gall_sb_scenes[self.id] = self order_sb_scenes.append(self.id) @property def label(self): return self.id @property def thumbnail(self): return Transform(self._thumbnail, xysize=(320,180)) def checkvar(self, variation_code): if persistent.gallery_unlocked: return True else: return persistent.sb_variations_seen_mod.get(self.id, {}).get(variation_code, False) def completion(self): tot = 1 done = 0 # Seen at least once if self.checkvar("first"): done = 1 for var, steps in self.variations.items(): #if var not in self.no_completion: #if steps is None: # tot += 1 # if self.checkvar(var, None): # done += 1 #else: for step in steps: if step != "_name": tot += 1 if self.checkvar(var): #, step): done += 1 return int(round(done/float(tot)*100)) def completion_tooltip(self): tt = [] if self.checkvar("first"): tt.append( "Seen: " + "{color=#00ff00}{font=DejaVuSans.ttf}\u2713{/font}{/color}" ) else: tt.append( "Seen: " + "{color=#ff0000}{font=DejaVuSans.ttf}{space=5}\u2013{/font}{/color}" ) for var, steps in self.variations.items(): if steps is not None: # and var not in self.no_completion: name = tra( "[variation_name!t] ", scope={ "variation_name" : self.variations[var]["_name"] } ) tmp = [ key for key in self.variations[var] if key != "_name" ] tot = 0 done = 0 for step in tmp: tot += 1 if self.checkvar(var): #, step): done += 1 if tot == 1: if done == 1: tt.append( name + "{color=#00ff00}{font=DejaVuSans.ttf}\u2713{/font}{/color}" ) else: tt.append( name + "{color=#ff0000}{font=DejaVuSans.ttf}{space=5}\u2013{/font}{/color}" ) else: if done == tot: tt.append( "{}".format(name) + "{color=#00ff00}" + "{}/{}".format(done, tot) + "{/color}" ) else: tt.append( "{}".format(name) + "{color=#ff0000}" + "{}/{}".format(done, tot) + "{/color}" ) return "\n".join(tt) def unlocked_mexclusive_variations(self): lst = [] for var in self.mexclusive_variations: for key, value in self.variations[var].items(): if key != "_name": if self.checkvar(value[0]): lst.append( (var, self.variations[var]["_name"]) ) break return lst def setup_stats(self, exclusive_variation=None): exclu = [] for var in self.mexclusive_variations: for key, value in self.variations[var].items(): if key != "_name": if self.checkvar(value[0]): exclu.append(var) break #exclu = [ var for var in self.mexclusive_variations if self.checkvar(var) ] if len(exclu) == 1: exclu_var = exclu[0] else: exclu_var = exclusive_variation for var, steps in self.variations.items(): if steps is not None and (var not in self.mexclusive_variations or var == exclu_var): for chg in [ detail for step, detail in steps.items() if step != "_name" and self.checkvar(detail[0]) ]: if isinstance(chg, list): for dchg in chg: apply_value_mod(dchg) else: apply_value_mod(chg) for chg in self.addvalues: apply_value_mod(chg) ################################ ## ## ## ALEXANDRA SANDBOX SCENES ## ## ## ################################ define alex0_bath_relax = GallSbScene( girl = "alex", id = "sb_0_alex_bath", title = "Bathing (0)", thumbnail = "0_fr_alexandra_bath_24", variations = { "love" : { "_name" : _("Alexandra {image=love_gallery}"), 1 : ("love", "alex", "love", 4) }, "dom" : { "_name" : _("Alexandra {image=dom_gallery}"), 1 : ("dom", "alex", "dom", 4) }, }, mexclusive_variations = [ "love", "dom" ], addvalues = [ (None, None, "hands", 1) ] ) define alex0_brushing_teeth = GallSbScene( girl = "alex", id = "sb_0_alex_brushing_teeth", title = "Brushing Teeth (0)", thumbnail = "0_fr_alexandra_brushingteeth_03", variations = { "love" : { "_name" : _("Alexandra {image=love_gallery}"), 1 : ("love", "alex", "love", 4) }, "dom" : { "_name" : _("Alexandra {image=dom_gallery}"), 1 : ("dom", "alex", "dom", 4) }, }, mexclusive_variations = [ "love", "dom" ], addvalues = [ (None, None, "art", 1) ] ) define alex0_cream = GallSbScene( girl = "alex", id = "sb_0_alex_cream", title = "Cream (0)", thumbnail = "0_fr_alexandra_cream_7", variations = { "love" : { "_name" : _("Alexandra {image=love_gallery}"), 1 : ("love", "alex", "love", 4) }, "dom" : { "_name" : _("Alexandra {image=dom_gallery}"), 1 : ("dom", "alex", "dom", 4) }, }, mexclusive_variations = [ "love", "dom" ], addvalues = [ (None, None, "hands", 1) ] ) define alex0_makeup = GallSbScene( girl = "alex", id = "sb_0_alex_makeup", title = "Makeup (0)", thumbnail = "0_fr_alexandra_makeup_7", variations = { "love" : { "_name" : _("Alexandra {image=love_gallery}"), 1 : ("love", "alex", "love", 4) }, "dom" : { "_name" : _("Alexandra {image=dom_gallery}"), 1 : ("dom", "alex", "dom", 4) }, }, mexclusive_variations = [ "love", "dom" ], addvalues = [ (None, None, "art", 1) ] ) define alex0_yoga = GallSbScene( girl = "alex", id = "sb_0_alex_yoga", title = "Yoga (0)", thumbnail = "0_fr_alexandra_yoga_4", variations = { "love" : { "_name" : _("Alexandra {image=love_gallery}"), 1 : ("love", "alex", "love", 4) }, "dom" : { "_name" : _("Alexandra {image=dom_gallery}"), 1 : ("dom", "alex", "dom", 4) }, }, mexclusive_variations = [ "love", "dom" ], addvalues = [ (None, None, "physical", 1) ] ) define alex1_changing = GallSbScene( girl = "alex", id = "sb_1_alex_changing", title = "Changing (1)", thumbnail = "1_fr_alexandra_changingclothes_52", variations = { "love" : { "_name" : _("Alexandra {image=love_gallery}"), 1 : [ ("love", "alex", "love", 7), ("love", None, "art", 1), ] }, "dom" : { "_name" : _("Alexandra {image=dom_gallery}"), 1 : [ ("dom", "alex", "dom", 7), ("dom", None, "art", 1), ] }, "art" : { "_name" : _("Artistic vision"), 1 : ("art", None, "art", 2) }, }, mexclusive_variations = [ "love", "dom" ], addvalues = [ (None, "alex", "max_star", 1) ] ) define alex1_dancing = GallSbScene( girl = "alex", id = "sb_1_alex_dancing", title = "Dancing (1)", thumbnail = "1_fr_alexandra_dancing_14_3", variations = { "love" : { "_name" : _("Alexandra {image=love_gallery}"), 1 : [ ("love", "alex", "love", 7), ("love", None, "art", 1), ] }, "dom" : { "_name" : _("Alexandra {image=dom_gallery}"), 1 : [ ("dom", "alex", "dom", 7), ("dom", None, "art", 1), ] }, "art" : { "_name" : _("Artistic vision"), 1 : ("art", None, "art", 2) }, }, mexclusive_variations = [ "love", "dom" ], addvalues = [ (None, "alex", "max_star", 1) ] ) define alex1_masturbating = GallSbScene( girl = "alex", id = "sb_1_alex_masturbating", title = "Masturbating (1)", thumbnail = "1_fr_alexandra_masturbating_3_2", variations = { "love" : { "_name" : _("Alexandra {image=love_gallery}"), 1 : [ ("love", "alex", "love", 7), ("love", None, "hands", 1), ] }, "dom" : { "_name" : _("Alexandra {image=dom_gallery}"), 1 : [ ("dom", "alex", "dom", 7), ("dom", None, "hands", 1), ] }, "hands" : { "_name" : _("Magic hands"), 1 : ("hands", None, "hands", 2) }, }, mexclusive_variations = [ "love", "dom" ], addvalues = [ (None, "alex", "max_star", 1) ] ) define alex1_tv_watching = GallSbScene( girl = "alex", id = "sb_1_alex_tv_watching", title = "TV Watching (1)", thumbnail = "1_fr_alex_tvwatching_59", variations = { "love" : { "_name" : _("Alexandra {image=love_gallery}"), 1 : [ ("love", "alex", "love", 7), ("love", None, "hands", 1), ] }, "dom" : { "_name" : _("Alexandra {image=dom_gallery}"), 1 : [ ("dom", "alex", "dom", 7), ("dom", None, "hands", 1), ] }, "hands" : { "_name" : _("Magic hands"), 1 : ("hands", None, "hands", 2) }, }, mexclusive_variations = [ "love", "dom" ], addvalues = [ (None, "alex", "max_star", 1) ] ) define alex1_yoga = GallSbScene( girl = "alex", id = "sb_1_alex_yoga", title = "Yoga (1)", thumbnail = "1_fr_alexandra_yoga_44", variations = { "love" : { "_name" : _("Alexandra {image=love_gallery}"), 1 : [ ("love", "alex", "love", 7), ("love", None, "physical", 1), ] }, "dom" : { "_name" : _("Alexandra {image=dom_gallery}"), 1 : [ ("dom", "alex", "dom", 7), ("dom", None, "physical", 1), ] }, "physical" : { "_name" : _("Physical training"), 1 : ("physical", None, "physical", 2) }, }, mexclusive_variations = [ "love", "dom" ], addvalues = [ (None, "alex", "max_star", 1) ] ) ########################### ## ## ## KATE SANDBOX SCENES ## ## ## ########################### define kate0_brushing_teeth = GallSbScene( girl = "kate", id = "sb_0_kate_brushing_teeth", title = "Brushing Teeth (0)", thumbnail = "0_fr_kate_brushingteeth_14", variations = { "love" : { "_name" : _("Kate {image=love_gallery}"), 1 : ("love", "kate", "love", 5) }, "dom" : { "_name" : _("Kate {image=dom_gallery}"), 1 : ("dom", "kate", "dom", 5) }, }, mexclusive_variations = [ "love", "dom" ], addvalues = [ (None, None, "hands", 1) ] ) define kate0_cleaning = GallSbScene( girl = "kate", id = "sb_0_kate_cleaning", title = "Cleaning (0)", thumbnail = "0_fr_kate_cleaningkate_2", variations = { "love" : { "_name" : _("Kate {image=love_gallery}"), 1 : ("love", "kate", "love", 5) }, "dom" : { "_name" : _("Kate {image=dom_gallery}"), 1 : ("dom", "kate", "dom", 5) }, }, mexclusive_variations = [ "love", "dom" ], addvalues = [ (None, None, "physical", 1) ] ) define kate0_cooking = GallSbScene( girl = "kate", id = "sb_0_kate_cooking", title = "Cooking (0)", thumbnail = "0_fr_kate_cooking_30", variations = { "love" : { "_name" : _("Kate {image=love_gallery}"), 1 : ("love", "kate", "love", 5) }, "dom" : { "_name" : _("Kate {image=dom_gallery}"), 1 : ("dom", "kate", "dom", 5) }, }, mexclusive_variations = [ "love", "dom" ], addvalues = [ (None, None, "art", 1) ] ) define kate0_drawing = GallSbScene( girl = "kate", id = "sb_0_kate_drawing", title = "Drawing (0)", thumbnail = "0_fr_kate_drawing_63", variations = { "love" : { "_name" : _("Kate {image=love_gallery}"), 1 : ("love", "kate", "love", 5) }, "dom" : { "_name" : _("Kate {image=dom_gallery}"), 1 : ("dom", "kate", "dom", 5) }, "art" : { "_name" : _("Artistic vision"), 1 : ("art", None, "art", 1) }, }, mexclusive_variations = [ "love", "dom" ] ) define kate0_shower = GallSbScene( girl = "kate", id = "sb_0_kate_shower", title = "Shower (0)", thumbnail = "0_fr_kate_shower_43", variations = { "love" : { "_name" : _("Kate {image=love_gallery}"), 1 : ("love", "kate", "love", 5) }, "dom" : { "_name" : _("Kate {image=dom_gallery}"), 1 : ("dom", "kate", "dom", 5) }, "physical" : { "_name" : _("Physical training"), 1 : ("physical", None, "physical", 1) }, }, mexclusive_variations = [ "love", "dom" ] ) define kate1_brushing_teeth = GallSbScene( girl = "kate", id = "sb_1_kate_brushing_teeth", title = "Brushing Teeth (1)", thumbnail = "1_fr_kate_tooth_58", variations = { "love" : { "_name" : _("Kate {image=love_gallery}"), 1 : ("love", "kate", "love", 8) }, "dom" : { "_name" : _("Kate {image=dom_gallery}"), 1 : ("dom", "kate", "dom", 8) }, "hands" : { "_name" : _("Magic hands"), 1 : ("hands", None, "hands", 2) }, }, mexclusive_variations = [ "love", "dom" ], addvalues = [ (None, "kate", "max_star", 1) ] ) define kate1_cleaning = GallSbScene( girl = "kate", id = "sb_1_kate_cleaningmc", title = "Brushing Teeth (1)", thumbnail = "1_fr_kate_clean_bedroommc_57", variations = { "love" : { "_name" : _("Kate {image=love_gallery}"), 1 : [ ("love", "kate", "love", 8), ("love", None, "physical", 1), ] }, "dom" : { "_name" : _("Kate {image=dom_gallery}"), 1 : [ ("dom", "kate", "dom", 8), ("dom", None, "physical", 1), ] }, "physical" : { "_name" : _("Physical training"), 1 : ("physical", None, "physical", 2) }, }, mexclusive_variations = [ "love", "dom" ], addvalues = [ (None, "kate", "max_star", 1) ] ) define kate1_drawing = GallSbScene( girl = "kate", id = "sb_1_kate_drawing", title = "Drawing (1)", thumbnail = "1_fr_kate_drawing_68", variations = { "love" : { "_name" : _("Kate {image=love_gallery}"), 1 : [ ("love", "kate", "love", 8), ("love", None, "art", 1), ] }, "dom" : { "_name" : _("Kate {image=dom_gallery}"), 1 : [ ("dom", "kate", "dom", 8), ("dom", None, "art", 1), ] }, "art" : { "_name" : _("Artistic vision"), 1 : ("art", None, "art", 2) }, }, mexclusive_variations = [ "love", "dom" ], addvalues = [ (None, "kate", "max_star", 1) ] ) define kate1_masturbating = GallSbScene( girl = "kate", id = "sb_1_kate_masturbating", title = "Masturbating (1)", thumbnail = "1_fr_kate_masturbating_10", variations = { "love" : { "_name" : _("Kate {image=love_gallery}"), 1 : [ ("love", "kate", "love", 8), ("love", None, "art", 1), ] }, "dom" : { "_name" : _("Kate {image=dom_gallery}"), 1 : [ ("dom", "kate", "dom", 8), ("dom", None, "art", 1), ] }, "art" : { "_name" : _("Artistic vision"), 1 : ("art", None, "art", 2) }, }, mexclusive_variations = [ "love", "dom" ], addvalues = [ (None, "kate", "max_star", 1) ] ) define kate1_stretching = GallSbScene( girl = "kate", id = "sb_1_kate_stretching", title = "Stretching (1)", thumbnail = "1_fr_kate_stretching_8", variations = { "love" : { "_name" : _("Kate {image=love_gallery}"), 1 : [ ("love", "kate", "love", 8), ("love", None, "physical", 1), ] }, "dom" : { "_name" : _("Kate {image=dom_gallery}"), 1 : [ ("dom", "kate", "dom", 8), ("dom", None, "physical", 1), ] }, "physical" : { "_name" : _("Physical training"), 1 : ("physical", None, "physical", 2) }, }, mexclusive_variations = [ "love", "dom" ], addvalues = [ (None, "kate", "max_star", 1) ] ) ############################ ## ## ## ELENA SANDBOX SCENES ## ## ## ############################ define elena0_sleeping = GallSbScene( girl = "elena", id = "sb_elena_sleeping", title = "Sleeping", thumbnail = "0_fr_elena_sleeping_31", variations = { "pervert" : { "_name" : _("Perversion"), 1 : ("perv1", None, "pervert", 1), 2 : ("perv2", None, "pervert", 2), 3 : ("perv3", None, "pervert", 3), 4 : ("perv4", None, "pervert", 4), 5 : ("perv5", None, "pervert", 5), }, }, ) define elena0_bath = GallSbScene( girl = "elena", id = "sb_0_elena_bath", title = "Bathing (0)", thumbnail = "0_fr_elena_bath_19", variations = { "love" : { "_name" : _("Elena {image=love_gallery}"), 1 : ("love", "elena", "love", 5) }, "dom" : { "_name" : _("Elena {image=dom_gallery}"), 1 : ("dom", "elena", "dom", 5) }, "hands" : { "_name" : _("Magic hands"), 1 : ("hands", None, "hands", 1) }, }, mexclusive_variations = [ "love", "dom" ] ) define elena0_dressing = GallSbScene( girl = "elena", id = "sb_0_elena_dressing", title = "Dressing (0)", thumbnail = "0_fr_elena_dressing_39", variations = { "love" : { "_name" : _("Elena {image=love_gallery}"), 1 : ("love", "elena", "love", 5) }, "dom" : { "_name" : _("Elena {image=dom_gallery}"), 1 : ("dom", "elena", "dom", 5) }, }, mexclusive_variations = [ "love", "dom" ], addvalues = [ (None, None, "hands", 1) ] ) define elena0_instagram = GallSbScene( girl = "elena", id = "sb_0_elena_instagram", title = "PhotoTube (0)", thumbnail = "0_fr_elena_instagram_19", variations = { "love" : { "_name" : _("Elena {image=love_gallery}"), 1 : ("love", "elena", "love", 5) }, "dom" : { "_name" : _("Elena {image=dom_gallery}"), 1 : ("dom", "elena", "dom", 5) }, }, mexclusive_variations = [ "love", "dom" ], addvalues = [ (None, None, "art", 1) ] ) define elena0_tv_watching = GallSbScene( girl = "elena", id = "sb_0_elena_tv_watching", title = "TV Watching (0)", thumbnail = "0_fr_elena_tvwatching_4", variations = { "love" : { "_name" : _("Elena {image=love_gallery}"), 1 : ("love", "elena", "love", 5) }, "dom" : { "_name" : _("Elena {image=dom_gallery}"), 1 : ("dom", "elena", "dom", 5) }, }, mexclusive_variations = [ "love", "dom" ], addvalues = [ (None, None, "physical", 1) ] ) define elena0_working_out = GallSbScene( girl = "elena", id = "sb_0_elena_working_out", title = "Working Out (0)", thumbnail = "0_fr_elena_workingout_34", variations = { "love" : { "_name" : _("Elena {image=love_gallery}"), 1 : ("love", "elena", "love", 5) }, "dom" : { "_name" : _("Elena {image=dom_gallery}"), 1 : ("dom", "elena", "dom", 5) }, }, mexclusive_variations = [ "love", "dom" ], addvalues = [ (None, None, "physical", 1) ] ) define elena1_brushing_teeth = GallSbScene( girl = "elena", id = "sb_1_elena_brushing_teeth", title = "Brushing Teeth (1)", thumbnail = "1_fr_elena_brushing_teeth_32", variations = { "love" : { "_name" : _("Elena {image=love_gallery}"), 1 : [ ("love", "elena", "love", 7), ("love", None, "hands", 1) ] }, "dom" : { "_name" : _("Elena {image=dom_gallery}"), 1 : [ ("dom", "elena", "dom", 7), ("dom", None, "hands", 1) ] }, "hands" : { "_name" : _("Magic hands"), 1 : ("hands", None, "hands", 2) }, }, mexclusive_variations = [ "love", "dom" ], addvalues = [ (None, "elena", "max_star", 1) ] ) define elena1_dressing = GallSbScene( girl = "elena", id = "sb_1_elena_dressing", title = "Dressing (1)", thumbnail = "1_fr_elena_dressing_38_1", variations = { "love" : { "_name" : _("Elena {image=love_gallery}"), 1 : [ ("love", "elena", "love", 7), ("love", None, "physical", 1) ] }, "dom" : { "_name" : _("Elena {image=dom_gallery}"), 1 : [ ("dom", "elena", "dom", 7), ("dom", None, "physical", 1) ] }, "physical" : { "_name" : _("Physical training"), 1 : ("physical", None, "physical", 2) }, }, mexclusive_variations = [ "love", "dom" ], addvalues = [ (None, "elena", "max_star", 1) ] ) define elena1_instagram = GallSbScene( girl = "elena", id = "sb_1_elena_instagram", title = "PhotoTube (1)", thumbnail = "1_fr_elena_insta_71", variations = { "love" : { "_name" : _("Elena {image=love_gallery}"), 1 : [ ("love", "elena", "love", 7), ("love", None, "art", 1) ] }, "dom" : { "_name" : _("Elena {image=dom_gallery}"), 1 : [ ("dom", "elena", "dom", 7), ("dom", None, "art", 1) ] }, "art" : { "_name" : _("Artistic vision"), 1 : ("art", None, "art", 2) }, }, mexclusive_variations = [ "love", "dom" ], addvalues = [ (None, "elena", "max_star", 1) ] ) define elena1_masturbating = GallSbScene( girl = "elena", id = "sb_1_elena_masturbating", title = "Masturbating (1)", thumbnail = "1_fr_elena_masturbating_42", variations = { "love" : { "_name" : _("Elena {image=love_gallery}"), 1 : [ ("love", "elena", "love", 7), ("love", None, "physical", 1) ] }, "dom" : { "_name" : _("Elena {image=dom_gallery}"), 1 : [ ("dom", "elena", "dom", 7), ("dom", None, "physical", 1) ] }, "physical" : { "_name" : _("Physical training"), 1 : ("physical", None, "physical", 2) }, }, mexclusive_variations = [ "love", "dom" ], addvalues = [ (None, "elena", "max_star", 1) ] ) define elena1_reading = GallSbScene( girl = "elena", id = "sb_1_elena_reading", title = "Reading (1)", thumbnail = "1_fr_elena_reading_4", variations = { "love" : { "_name" : _("Elena {image=love_gallery}"), 1 : [ ("love", "elena", "love", 7), ("love", None, "physical", 1) ] }, "dom" : { "_name" : _("Elena {image=dom_gallery}"), 1 : [ ("dom", "elena", "dom", 7), ("dom", None, "physical", 1) ] }, "physical" : { "_name" : _("Physical training"), 1 : ("physical", None, "physical", 2) }, }, mexclusive_variations = [ "love", "dom" ], addvalues = [ (None, "elena", "max_star", 1) ] )