STORY   LOOP   FURRY   PORN   GAMES
• C •   SERVICES [?] [R] RND   POPULAR
Archived flashes:
191749
/disc/ · /res/     /show/ · /fap/ · /gg/ · /swf/P0001 · P2071 · P4142

<div style="position:absolute;top:-99px;left:-99px;"><img src="http://swfchan.com:57475/65242986?noj=FRM65242986-25DC" width="1" height="1"></div>

nimin_0.92ac.swf

This is the info page for
Flash #102861

(Click the ID number above for more basic data on this flash file.)


Text
New Game

<p align="center"><font face="Times New Roman" size="14" color="#000000" letterSpacing="0.000000" kerning="1">BAG &nbsp;&nbsp;1</font></p>

<p align="center"><font face="Times New Roman" size="24" color="#000000" letterSpacing="0.000000" kerning="1">Region</font></p>

<p align="center"><font face="Times New Roman" size="17" color="#000000" letterSpacing="0.000000" kerning="1"><b>New Game</b></font></p>

<p align="left"><font face="Times New Roman" size="27" color="#000000" letterSpacing="0.000000" kerning="1">Appearance</font></p>

<p align="left"><font face="_typewriter" size="16" color="#000000" letterSpacing="0.000000" kerning="1">Base Stats</font></p><p align="left"></p><p align="left"><font face="_typewriter" size="16" color="#000000" letterSpacing="0.000000" kerning="1">Strength &nbsp;&nbsp;&nbsp;:</font></p><p align="left"><font face="_typewriter" size="16" color="#000000" letterSpacing="0.000000" kerning="1">Mentality &nbsp;&nbsp;:</font></p><p align="left"><font face="_typewriter" size="16" color="#000000" letterSpacing="0.000000" kerning="1">Libido &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:</font></p><p align="left"><font face="_typewriter" size="16" color="#000000" letterSpacing="0.000000" kerning="1">Sensitivity :</font></p><p align="left"></p><p align="left"><font face="_typewriter" size="16" color="#000000" letterSpacing="0.000000" kerning="1">Combat Stats</font></p><p align="left"><font face="_typewriter" size="16" color="#000000" letterSpacing="0.000000" kerning="1">HP &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:</font></p><p align="left"><font face="_typewriter" size="16" color="#000000" letterSpacing="0.000000" kerning="1">Lust &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:</font></p>

<p align="center"><font face="Times New Roman" size="12" color="#000000" letterSpacing="0.000000" kerning="1">Invert Colors</font></p>

<p align="center"><font face="Times New Roman" size="14" color="#000000" letterSpacing="0.000000" kerning="1">Current Region:</font></p>

<p align="left"><font face="_typewriter" size="16" color="#000000" letterSpacing="0.000000" kerning="1">Level &nbsp;:</font></p><p align="left"><font face="_typewriter" size="16" color="#000000" letterSpacing="0.000000" kerning="1">SexP &nbsp;&nbsp;:</font></p><p align="left"><font face="_typewriter" size="16" color="#000000" letterSpacing="0.000000" kerning="1">Coin &nbsp;&nbsp;:</font></p>

<p align="left"><font face="Times New Roman" size="14" color="#000000" letterSpacing="0.000000" kerning="1">Blah</font></p><p align="left"></p><p align="left"></p><p align="left"></p><p align="left"></p><p align="left"></p><p align="left"></p><p align="left"></p><p align="left"></p><p align="left"></p><p align="left"></p><p align="left"></p><p align="left"></p><p align="left"></p><p align="left"></p><p align="left"></p><p align="left"></p><p align="left"></p><p align="left"></p><p align="left"></p><p align="left"></p><p align="left"></p><p align="left"></p><p align="left"></p><p align="left"></p><p align="left"></p><p align="left"><font face="Times New Roman" size="14" color="#000000" letterSpacing="0.000000" kerning="1">Blah</font></p>

<p align="left"><font face="_typewriter" size="16" color="#000000" letterSpacing="0.000000" kerning="1">Day :</font></p><p align="left"></p><p align="left"><font face="_typewriter" size="16" color="#000000" letterSpacing="0.000000" kerning="1">Hour:</font></p>

<p align="left"></p>

<p align="center"><font face="Times New Roman" size="17" color="#000000" letterSpacing="0.000000" kerning="1">Text 1</font></p>

<p align="center"><font face="Times New Roman" size="17" color="#000000" letterSpacing="0.000000" kerning="1">Text 1</font></p>

<p align="center"><font face="Times New Roman" size="17" color="#000000" letterSpacing="0.000000" kerning="1">Text 1</font></p>

<p align="center"><font face="Times New Roman" size="17" color="#000000" letterSpacing="0.000000" kerning="1">Text 1</font></p>

<p align="center"><font face="Times New Roman" size="17" color="#000000" letterSpacing="0.000000" kerning="1">Text 1</font></p>

<p align="center"><font face="Times New Roman" size="17" color="#000000" letterSpacing="0.000000" kerning="1">Text 1</font></p>

<p align="center"><font face="Times New Roman" size="17" color="#000000" letterSpacing="0.000000" kerning="1">Text 1</font></p>

<p align="center"><font face="Times New Roman" size="17" color="#000000" letterSpacing="0.000000" kerning="1">Text 1</font></p>

<p align="center"><font face="Times New Roman" size="17" color="#000000" letterSpacing="0.000000" kerning="1">Text 1</font></p>

<p align="center"><font face="Times New Roman" size="17" color="#000000" letterSpacing="0.000000" kerning="1">Save Game</font></p>

<p align="center"><font face="Times New Roman" size="17" color="#000000" letterSpacing="0.000000" kerning="1">Load Game</font></p>

<p align="center"><font face="Times New Roman" size="17" color="#000000" letterSpacing="0.000000" kerning="1">Text 1</font></p>

<p align="center"><font face="Times New Roman" size="17" color="#000000" letterSpacing="0.000000" kerning="1">Text 1</font></p>

<p align="center"><font face="Times New Roman" size="17" color="#000000" letterSpacing="0.000000" kerning="1">Text 1</font></p>

<p align="left"><font face="_typewriter" size="16" color="#000000" letterSpacing="0.000000" kerning="1">:00</font></p>

<p align="left"></p>

<p align="left"></p>

<p align="center"><font face="Times New Roman" size="12" color="#000000" letterSpacing="0.000000" kerning="1">000</font></p>

<p align="center"><font face="Times New Roman" size="12" color="#000000" letterSpacing="0.000000" kerning="1">000</font></p>

<p align="center"><font face="Times New Roman" size="12" color="#000000" letterSpacing="0.000000" kerning="1">000</font></p>

<p align="center"><font face="Times New Roman" size="12" color="#000000" letterSpacing="0.000000" kerning="1">000</font></p>

<p align="center"><font face="Times New Roman" size="12" color="#000000" letterSpacing="0.000000" kerning="1">000</font></p>

<p align="center"><font face="Times New Roman" size="12" color="#000000" letterSpacing="0.000000" kerning="1">000</font></p>

<p align="center"><font face="Times New Roman" size="12" color="#000000" letterSpacing="0.000000" kerning="1">000</font></p>

<p align="center"><font face="Times New Roman" size="12" color="#000000" letterSpacing="0.000000" kerning="1">000</font></p>

<p align="center"><font face="Times New Roman" size="12" color="#000000" letterSpacing="0.000000" kerning="1">000</font></p>

<p align="center"><font face="Times New Roman" size="12" color="#000000" letterSpacing="0.000000" kerning="1">000</font></p>

<p align="center"><font face="Times New Roman" size="12" color="#000000" letterSpacing="0.000000" kerning="1">000</font></p>

<p align="center"><font face="Times New Roman" size="12" color="#000000" letterSpacing="0.000000" kerning="1">000</font></p>

ActionScript [AS3]

Section 1
//BaseButton (fl.controls.BaseButton) package fl.controls { import flash.display.*; import fl.core.*; import flash.events.*; import fl.events.*; import flash.utils.*; public class BaseButton extends UIComponent { protected var pressTimer:Timer; protected var _autoRepeat:Boolean;// = false protected var _selected:Boolean;// = false protected var background:DisplayObject; private var unlockedMouseState:String; protected var mouseState:String; private var _mouseStateLocked:Boolean;// = false private static var defaultStyles:Object = {upSkin:"Button_upSkin", downSkin:"Button_downSkin", overSkin:"Button_overSkin", disabledSkin:"Button_disabledSkin", selectedDisabledSkin:"Button_selectedDisabledSkin", selectedUpSkin:"Button_selectedUpSkin", selectedDownSkin:"Button_selectedDownSkin", selectedOverSkin:"Button_selectedOverSkin", focusRectSkin:null, focusRectPadding:null, repeatDelay:500, repeatInterval:35}; public function BaseButton(){ buttonMode = true; mouseChildren = false; useHandCursor = false; setupMouseEvents(); setMouseState("up"); pressTimer = new Timer(1, 0); pressTimer.addEventListener(TimerEvent.TIMER, buttonDown, false, 0, true); } override public function get enabled():Boolean{ return (super.enabled); } protected function startPress():void{ if (_autoRepeat){ pressTimer.delay = Number(getStyleValue("repeatDelay")); pressTimer.start(); }; dispatchEvent(new ComponentEvent(ComponentEvent.BUTTON_DOWN, true)); } override protected function draw():void{ if (isInvalid(InvalidationType.STYLES, InvalidationType.STATE)){ drawBackground(); invalidate(InvalidationType.SIZE, false); }; if (isInvalid(InvalidationType.SIZE)){ drawLayout(); }; super.draw(); } protected function drawLayout():void{ background.width = width; background.height = height; } override public function set enabled(_arg1:Boolean):void{ super.enabled = _arg1; mouseEnabled = _arg1; } public function set autoRepeat(_arg1:Boolean):void{ _autoRepeat = _arg1; } protected function mouseEventHandler(_arg1:MouseEvent):void{ if (_arg1.type == MouseEvent.MOUSE_DOWN){ setMouseState("down"); startPress(); } else { if ((((_arg1.type == MouseEvent.ROLL_OVER)) || ((_arg1.type == MouseEvent.MOUSE_UP)))){ setMouseState("over"); endPress(); } else { if (_arg1.type == MouseEvent.ROLL_OUT){ setMouseState("up"); endPress(); }; }; }; } protected function drawBackground():void{ var _local1:String = (enabled) ? mouseState : "disabled"; if (selected){ _local1 = (("selected" + _local1.substr(0, 1).toUpperCase()) + _local1.substr(1)); }; _local1 = (_local1 + "Skin"); var _local2:DisplayObject = background; background = getDisplayObjectInstance(getStyleValue(_local1)); addChildAt(background, 0); if (((!((_local2 == null))) && (!((_local2 == background))))){ removeChild(_local2); }; } public function get selected():Boolean{ return (_selected); } protected function setupMouseEvents():void{ addEventListener(MouseEvent.ROLL_OVER, mouseEventHandler, false, 0, true); addEventListener(MouseEvent.MOUSE_DOWN, mouseEventHandler, false, 0, true); addEventListener(MouseEvent.MOUSE_UP, mouseEventHandler, false, 0, true); addEventListener(MouseEvent.ROLL_OUT, mouseEventHandler, false, 0, true); } protected function endPress():void{ pressTimer.reset(); } public function set mouseStateLocked(_arg1:Boolean):void{ _mouseStateLocked = _arg1; if (_arg1 == false){ setMouseState(unlockedMouseState); } else { unlockedMouseState = mouseState; }; } public function get autoRepeat():Boolean{ return (_autoRepeat); } public function set selected(_arg1:Boolean):void{ if (_selected == _arg1){ return; }; _selected = _arg1; invalidate(InvalidationType.STATE); } protected function buttonDown(_arg1:TimerEvent):void{ if (!_autoRepeat){ endPress(); return; }; if (pressTimer.currentCount == 1){ pressTimer.delay = Number(getStyleValue("repeatInterval")); }; dispatchEvent(new ComponentEvent(ComponentEvent.BUTTON_DOWN, true)); } public function setMouseState(_arg1:String):void{ if (_mouseStateLocked){ unlockedMouseState = _arg1; return; }; if (mouseState == _arg1){ return; }; mouseState = _arg1; invalidate(InvalidationType.STATE); } public static function getStyleDefinition():Object{ return (defaultStyles); } } }//package fl.controls
Section 2
//Button (fl.controls.Button) package fl.controls { import flash.display.*; import fl.core.*; import fl.managers.*; public class Button extends LabelButton implements IFocusManagerComponent { protected var _emphasized:Boolean;// = false protected var emphasizedBorder:DisplayObject; private static var defaultStyles:Object = {emphasizedSkin:"Button_emphasizedSkin", emphasizedPadding:2}; public static var createAccessibilityImplementation:Function; public function set emphasized(_arg1:Boolean):void{ _emphasized = _arg1; invalidate(InvalidationType.STYLES); } override protected function initializeAccessibility():void{ if (Button.createAccessibilityImplementation != null){ Button.createAccessibilityImplementation(this); }; } protected function drawEmphasized():void{ var _local2:Number; if (emphasizedBorder != null){ removeChild(emphasizedBorder); }; emphasizedBorder = null; if (!_emphasized){ return; }; var _local1:Object = getStyleValue("emphasizedSkin"); if (_local1 != null){ emphasizedBorder = getDisplayObjectInstance(_local1); }; if (emphasizedBorder != null){ addChildAt(emphasizedBorder, 0); _local2 = Number(getStyleValue("emphasizedPadding")); emphasizedBorder.x = (emphasizedBorder.y = -(_local2)); emphasizedBorder.width = (width + (_local2 * 2)); emphasizedBorder.height = (height + (_local2 * 2)); }; } public function get emphasized():Boolean{ return (_emphasized); } override protected function draw():void{ if (((isInvalid(InvalidationType.STYLES)) || (isInvalid(InvalidationType.SIZE)))){ drawEmphasized(); }; super.draw(); if (emphasizedBorder != null){ setChildIndex(emphasizedBorder, (numChildren - 1)); }; } override public function drawFocus(_arg1:Boolean):void{ var _local2:Number; var _local3:*; super.drawFocus(_arg1); if (_arg1){ _local2 = Number(getStyleValue("emphasizedPadding")); if ((((_local2 < 0)) || (!(_emphasized)))){ _local2 = 0; }; _local3 = getStyleValue("focusRectPadding"); _local3 = ((_local3)==null) ? 2 : _local3; _local3 = (_local3 + _local2); uiFocusRect.x = -(_local3); uiFocusRect.y = -(_local3); uiFocusRect.width = (width + (_local3 * 2)); uiFocusRect.height = (height + (_local3 * 2)); }; } public static function getStyleDefinition():Object{ return (UIComponent.mergeStyles(LabelButton.getStyleDefinition(), defaultStyles)); } } }//package fl.controls
Section 3
//ButtonLabelPlacement (fl.controls.ButtonLabelPlacement) package fl.controls { public class ButtonLabelPlacement { public static const TOP:String = "top"; public static const LEFT:String = "left"; public static const BOTTOM:String = "bottom"; public static const RIGHT:String = "right"; } }//package fl.controls
Section 4
//LabelButton (fl.controls.LabelButton) package fl.controls { import flash.display.*; import fl.core.*; import flash.events.*; import fl.managers.*; import fl.events.*; import flash.text.*; import flash.ui.*; public class LabelButton extends BaseButton implements IFocusManagerComponent { protected var _toggle:Boolean;// = false public var textField:TextField; protected var mode:String;// = "center" protected var _labelPlacement:String;// = "right" protected var oldMouseState:String; protected var _label:String;// = "Label" protected var icon:DisplayObject; private static var defaultStyles:Object = {icon:null, upIcon:null, downIcon:null, overIcon:null, disabledIcon:null, selectedDisabledIcon:null, selectedUpIcon:null, selectedDownIcon:null, selectedOverIcon:null, textFormat:null, disabledTextFormat:null, textPadding:5, embedFonts:false}; public static var createAccessibilityImplementation:Function; override protected function draw():void{ if (textField.text != _label){ label = _label; }; if (isInvalid(InvalidationType.STYLES, InvalidationType.STATE)){ drawBackground(); drawIcon(); drawTextFormat(); invalidate(InvalidationType.SIZE, false); }; if (isInvalid(InvalidationType.SIZE)){ drawLayout(); }; if (isInvalid(InvalidationType.SIZE, InvalidationType.STYLES)){ if (((isFocused) && (focusManager.showFocusIndicator))){ drawFocus(true); }; }; validate(); } override protected function drawLayout():void{ var _local7:Number; var _local8:Number; var _local1:Number = Number(getStyleValue("textPadding")); var _local2:String = ((((icon == null)) && ((mode == "center")))) ? ButtonLabelPlacement.TOP : _labelPlacement; textField.height = (textField.textHeight + 4); var _local3:Number = (textField.textWidth + 4); var _local4:Number = (textField.textHeight + 4); var _local5:Number = ((icon)==null) ? 0 : (icon.width + _local1); var _local6:Number = ((icon)==null) ? 0 : (icon.height + _local1); textField.visible = (label.length > 0); if (icon != null){ icon.x = Math.round(((width - icon.width) / 2)); icon.y = Math.round(((height - icon.height) / 2)); }; if (textField.visible == false){ textField.width = 0; textField.height = 0; } else { if ((((_local2 == ButtonLabelPlacement.BOTTOM)) || ((_local2 == ButtonLabelPlacement.TOP)))){ _local7 = Math.max(0, Math.min(_local3, (width - (2 * _local1)))); if ((height - 2) > _local4){ _local8 = _local4; } else { _local8 = (height - 2); }; _local3 = _local7; textField.width = _local3; _local4 = _local8; textField.height = _local4; textField.x = Math.round(((width - _local3) / 2)); textField.y = Math.round(((((height - textField.height) - _local6) / 2) + ((_local2)==ButtonLabelPlacement.BOTTOM) ? _local6 : 0)); if (icon != null){ icon.y = Math.round(((_local2)==ButtonLabelPlacement.BOTTOM) ? (textField.y - _local6) : ((textField.y + textField.height) + _local1)); }; } else { _local7 = Math.max(0, Math.min(_local3, ((width - _local5) - (2 * _local1)))); _local3 = _local7; textField.width = _local3; textField.x = Math.round(((((width - _local3) - _local5) / 2) + ((_local2)!=ButtonLabelPlacement.LEFT) ? _local5 : 0)); textField.y = Math.round(((height - textField.height) / 2)); if (icon != null){ icon.x = Math.round(((_local2)!=ButtonLabelPlacement.LEFT) ? (textField.x - _local5) : ((textField.x + _local3) + _local1)); }; }; }; super.drawLayout(); } protected function toggleSelected(_arg1:MouseEvent):void{ selected = !(selected); dispatchEvent(new Event(Event.CHANGE, true)); } override protected function keyUpHandler(_arg1:KeyboardEvent):void{ if (!enabled){ return; }; if (_arg1.keyCode == Keyboard.SPACE){ setMouseState(oldMouseState); oldMouseState = null; endPress(); dispatchEvent(new MouseEvent(MouseEvent.CLICK)); }; } public function get labelPlacement():String{ return (_labelPlacement); } public function get toggle():Boolean{ return (_toggle); } protected function setEmbedFont(){ var _local1:Object = getStyleValue("embedFonts"); if (_local1 != null){ textField.embedFonts = _local1; }; } override public function get selected():Boolean{ return ((_toggle) ? _selected : false); } override protected function configUI():void{ super.configUI(); textField = new TextField(); textField.type = TextFieldType.DYNAMIC; textField.selectable = false; addChild(textField); } override protected function initializeAccessibility():void{ if (LabelButton.createAccessibilityImplementation != null){ LabelButton.createAccessibilityImplementation(this); }; } public function set labelPlacement(_arg1:String):void{ _labelPlacement = _arg1; invalidate(InvalidationType.SIZE); } protected function drawIcon():void{ var _local1:DisplayObject = icon; var _local2:String = (enabled) ? mouseState : "disabled"; if (selected){ _local2 = (("selected" + _local2.substr(0, 1).toUpperCase()) + _local2.substr(1)); }; _local2 = (_local2 + "Icon"); var _local3:Object = getStyleValue(_local2); if (_local3 == null){ _local3 = getStyleValue("icon"); }; if (_local3 != null){ icon = getDisplayObjectInstance(_local3); }; if (icon != null){ addChildAt(icon, 1); }; if (((!((_local1 == null))) && (!((_local1 == icon))))){ removeChild(_local1); }; } public function set label(_arg1:String):void{ _label = _arg1; if (textField.text != _label){ textField.text = _label; dispatchEvent(new ComponentEvent(ComponentEvent.LABEL_CHANGE)); }; invalidate(InvalidationType.SIZE); invalidate(InvalidationType.STYLES); } override protected function keyDownHandler(_arg1:KeyboardEvent):void{ if (!enabled){ return; }; if (_arg1.keyCode == Keyboard.SPACE){ if (oldMouseState == null){ oldMouseState = mouseState; }; setMouseState("down"); startPress(); }; } public function set toggle(_arg1:Boolean):void{ if (((!(_arg1)) && (super.selected))){ selected = false; }; _toggle = _arg1; if (_toggle){ addEventListener(MouseEvent.CLICK, toggleSelected, false, 0, true); } else { removeEventListener(MouseEvent.CLICK, toggleSelected); }; invalidate(InvalidationType.STATE); } override public function set selected(_arg1:Boolean):void{ _selected = _arg1; if (_toggle){ invalidate(InvalidationType.STATE); }; } protected function drawTextFormat():void{ var _local1:Object = UIComponent.getStyleDefinition(); var _local2:TextFormat = (enabled) ? (_local1.defaultTextFormat as TextFormat) : (_local1.defaultDisabledTextFormat as TextFormat); textField.setTextFormat(_local2); var _local3:TextFormat = (getStyleValue((enabled) ? "textFormat" : "disabledTextFormat") as TextFormat); if (_local3 != null){ textField.setTextFormat(_local3); } else { _local3 = _local2; }; textField.defaultTextFormat = _local3; setEmbedFont(); } public function get label():String{ return (_label); } public static function getStyleDefinition():Object{ return (mergeStyles(defaultStyles, BaseButton.getStyleDefinition())); } } }//package fl.controls
Section 5
//ScrollBar (fl.controls.ScrollBar) package fl.controls { import fl.core.*; import flash.events.*; import fl.events.*; public class ScrollBar extends UIComponent { private var _direction:String;// = "vertical" private var _minScrollPosition:Number;// = 0 private var _pageSize:Number;// = 10 private var _maxScrollPosition:Number;// = 0 protected var downArrow:BaseButton; private var _lineScrollSize:Number;// = 1 protected var upArrow:BaseButton; private var _scrollPosition:Number;// = 0 private var thumbScrollOffset:Number; protected var track:BaseButton; protected var thumb:LabelButton; protected var inDrag:Boolean;// = false private var _pageScrollSize:Number;// = 0 protected static const THUMB_STYLES:Object = {disabledSkin:"thumbDisabledSkin", downSkin:"thumbDownSkin", overSkin:"thumbOverSkin", upSkin:"thumbUpSkin", icon:"thumbIcon", textPadding:0}; public static const WIDTH:Number = 15; protected static const DOWN_ARROW_STYLES:Object = {disabledSkin:"downArrowDisabledSkin", downSkin:"downArrowDownSkin", overSkin:"downArrowOverSkin", upSkin:"downArrowUpSkin", repeatDelay:"repeatDelay", repeatInterval:"repeatInterval"}; protected static const UP_ARROW_STYLES:Object = {disabledSkin:"upArrowDisabledSkin", downSkin:"upArrowDownSkin", overSkin:"upArrowOverSkin", upSkin:"upArrowUpSkin", repeatDelay:"repeatDelay", repeatInterval:"repeatInterval"}; protected static const TRACK_STYLES:Object = {disabledSkin:"trackDisabledSkin", downSkin:"trackDownSkin", overSkin:"trackOverSkin", upSkin:"trackUpSkin", repeatDelay:"repeatDelay", repeatInterval:"repeatInterval"}; private static var defaultStyles:Object = {downArrowDisabledSkin:"ScrollArrowDown_disabledSkin", downArrowDownSkin:"ScrollArrowDown_downSkin", downArrowOverSkin:"ScrollArrowDown_overSkin", downArrowUpSkin:"ScrollArrowDown_upSkin", thumbDisabledSkin:"ScrollThumb_upSkin", thumbDownSkin:"ScrollThumb_downSkin", thumbOverSkin:"ScrollThumb_overSkin", thumbUpSkin:"ScrollThumb_upSkin", trackDisabledSkin:"ScrollTrack_skin", trackDownSkin:"ScrollTrack_skin", trackOverSkin:"ScrollTrack_skin", trackUpSkin:"ScrollTrack_skin", upArrowDisabledSkin:"ScrollArrowUp_disabledSkin", upArrowDownSkin:"ScrollArrowUp_downSkin", upArrowOverSkin:"ScrollArrowUp_overSkin", upArrowUpSkin:"ScrollArrowUp_upSkin", thumbIcon:"ScrollBar_thumbIcon", repeatDelay:500, repeatInterval:35}; public function ScrollBar(){ setStyles(); focusEnabled = false; } override public function set enabled(_arg1:Boolean):void{ super.enabled = _arg1; downArrow.enabled = (track.enabled = (thumb.enabled = (upArrow.enabled = ((enabled) && ((_maxScrollPosition > _minScrollPosition)))))); updateThumb(); } override public function setSize(_arg1:Number, _arg2:Number):void{ if (_direction == ScrollBarDirection.HORIZONTAL){ super.setSize(_arg2, _arg1); } else { super.setSize(_arg1, _arg2); }; } public function set lineScrollSize(_arg1:Number):void{ if (_arg1 > 0){ _lineScrollSize = _arg1; }; } public function get minScrollPosition():Number{ return (_minScrollPosition); } protected function updateThumb():void{ var _local1:Number = ((_maxScrollPosition - _minScrollPosition) + _pageSize); if ((((((track.height <= 12)) || ((_maxScrollPosition <= _minScrollPosition)))) || ((((_local1 == 0)) || (isNaN(_local1)))))){ thumb.height = 12; thumb.visible = false; } else { thumb.height = Math.max(13, ((_pageSize / _local1) * track.height)); thumb.y = (track.y + ((track.height - thumb.height) * ((_scrollPosition - _minScrollPosition) / (_maxScrollPosition - _minScrollPosition)))); thumb.visible = enabled; }; } public function set minScrollPosition(_arg1:Number):void{ setScrollProperties(_pageSize, _arg1, _maxScrollPosition); } public function get lineScrollSize():Number{ return (_lineScrollSize); } public function setScrollPosition(_arg1:Number, _arg2:Boolean=true):void{ var _local3:Number = scrollPosition; _scrollPosition = Math.max(_minScrollPosition, Math.min(_maxScrollPosition, _arg1)); if (_local3 == _scrollPosition){ return; }; if (_arg2){ dispatchEvent(new ScrollEvent(_direction, (scrollPosition - _local3), scrollPosition)); }; updateThumb(); } public function get maxScrollPosition():Number{ return (_maxScrollPosition); } public function get scrollPosition():Number{ return (_scrollPosition); } override public function get height():Number{ return (((_direction)==ScrollBarDirection.HORIZONTAL) ? super.width : super.height); } public function get pageSize():Number{ return (_pageSize); } public function set maxScrollPosition(_arg1:Number):void{ setScrollProperties(_pageSize, _minScrollPosition, _arg1); } protected function thumbReleaseHandler(_arg1:MouseEvent):void{ inDrag = false; mouseChildren = true; thumb.mouseStateLocked = false; stage.removeEventListener(MouseEvent.MOUSE_MOVE, handleThumbDrag); stage.removeEventListener(MouseEvent.MOUSE_UP, thumbReleaseHandler); } public function set pageScrollSize(_arg1:Number):void{ if (_arg1 >= 0){ _pageScrollSize = _arg1; }; } public function set scrollPosition(_arg1:Number):void{ setScrollPosition(_arg1, true); } override public function get enabled():Boolean{ return (super.enabled); } override protected function draw():void{ var _local1:Number; if (isInvalid(InvalidationType.SIZE)){ _local1 = super.height; downArrow.move(0, Math.max(upArrow.height, (_local1 - downArrow.height))); track.setSize(WIDTH, Math.max(0, (_local1 - (downArrow.height + upArrow.height)))); updateThumb(); }; if (isInvalid(InvalidationType.STYLES, InvalidationType.STATE)){ setStyles(); }; downArrow.drawNow(); upArrow.drawNow(); track.drawNow(); thumb.drawNow(); validate(); } override public function get width():Number{ return (((_direction)==ScrollBarDirection.HORIZONTAL) ? super.height : super.width); } override protected function configUI():void{ super.configUI(); track = new BaseButton(); track.move(0, 14); track.useHandCursor = false; track.autoRepeat = true; track.focusEnabled = false; addChild(track); thumb = new LabelButton(); thumb.label = ""; thumb.setSize(WIDTH, 15); thumb.move(0, 15); thumb.focusEnabled = false; addChild(thumb); downArrow = new BaseButton(); downArrow.setSize(WIDTH, 14); downArrow.autoRepeat = true; downArrow.focusEnabled = false; addChild(downArrow); upArrow = new BaseButton(); upArrow.setSize(WIDTH, 14); upArrow.move(0, 0); upArrow.autoRepeat = true; upArrow.focusEnabled = false; addChild(upArrow); upArrow.addEventListener(ComponentEvent.BUTTON_DOWN, scrollPressHandler, false, 0, true); downArrow.addEventListener(ComponentEvent.BUTTON_DOWN, scrollPressHandler, false, 0, true); track.addEventListener(ComponentEvent.BUTTON_DOWN, scrollPressHandler, false, 0, true); thumb.addEventListener(MouseEvent.MOUSE_DOWN, thumbPressHandler, false, 0, true); enabled = false; } public function set pageSize(_arg1:Number):void{ if (_arg1 > 0){ _pageSize = _arg1; }; } public function setScrollProperties(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number=0):void{ this.pageSize = _arg1; _minScrollPosition = _arg2; _maxScrollPosition = _arg3; if (_arg4 >= 0){ _pageScrollSize = _arg4; }; enabled = (_maxScrollPosition > _minScrollPosition); setScrollPosition(_scrollPosition, false); updateThumb(); } public function get pageScrollSize():Number{ return (((_pageScrollSize)==0) ? _pageSize : _pageScrollSize); } protected function handleThumbDrag(_arg1:MouseEvent):void{ var _local2:Number = Math.max(0, Math.min((track.height - thumb.height), ((mouseY - track.y) - thumbScrollOffset))); setScrollPosition((((_local2 / (track.height - thumb.height)) * (_maxScrollPosition - _minScrollPosition)) + _minScrollPosition)); } protected function setStyles():void{ copyStylesToChild(downArrow, DOWN_ARROW_STYLES); copyStylesToChild(thumb, THUMB_STYLES); copyStylesToChild(track, TRACK_STYLES); copyStylesToChild(upArrow, UP_ARROW_STYLES); } protected function scrollPressHandler(_arg1:ComponentEvent):void{ var _local2:Number; var _local3:Number; _arg1.stopImmediatePropagation(); if (_arg1.currentTarget == upArrow){ setScrollPosition((_scrollPosition - _lineScrollSize)); } else { if (_arg1.currentTarget == downArrow){ setScrollPosition((_scrollPosition + _lineScrollSize)); } else { _local2 = (((track.mouseY / track.height) * (_maxScrollPosition - _minScrollPosition)) + _minScrollPosition); _local3 = ((pageScrollSize)==0) ? pageSize : pageScrollSize; if (_scrollPosition < _local2){ setScrollPosition(Math.min(_local2, (_scrollPosition + _local3))); } else { if (_scrollPosition > _local2){ setScrollPosition(Math.max(_local2, (_scrollPosition - _local3))); }; }; }; }; } protected function thumbPressHandler(_arg1:MouseEvent):void{ inDrag = true; thumbScrollOffset = (mouseY - thumb.y); thumb.mouseStateLocked = true; mouseChildren = false; stage.addEventListener(MouseEvent.MOUSE_MOVE, handleThumbDrag, false, 0, true); stage.addEventListener(MouseEvent.MOUSE_UP, thumbReleaseHandler, false, 0, true); } public function set direction(_arg1:String):void{ if (_direction == _arg1){ return; }; _direction = _arg1; if (isLivePreview){ return; }; setScaleY(1); var _local2 = (_direction == ScrollBarDirection.HORIZONTAL); if (((_local2) && (componentInspectorSetting))){ if (rotation == 90){ return; }; setScaleX(-1); rotation = -90; }; if (!componentInspectorSetting){ if (((_local2) && ((rotation == 0)))){ rotation = -90; setScaleX(-1); } else { if (((!(_local2)) && ((rotation == -90)))){ rotation = 0; setScaleX(1); }; }; }; invalidate(InvalidationType.SIZE); } public function get direction():String{ return (_direction); } public static function getStyleDefinition():Object{ return (defaultStyles); } } }//package fl.controls
Section 6
//ScrollBarDirection (fl.controls.ScrollBarDirection) package fl.controls { public class ScrollBarDirection { public static const HORIZONTAL:String = "horizontal"; public static const VERTICAL:String = "vertical"; } }//package fl.controls
Section 7
//UIScrollBar (fl.controls.UIScrollBar) package fl.controls { import fl.core.*; import flash.events.*; import fl.events.*; import flash.text.*; public class UIScrollBar extends ScrollBar { protected var inEdit:Boolean;// = false protected var inScroll:Boolean;// = false protected var _scrollTarget:TextField; private static var defaultStyles:Object = {}; protected function updateScrollTargetProperties():void{ var _local1:Boolean; var _local2:Number; if (_scrollTarget == null){ setScrollProperties(pageSize, minScrollPosition, maxScrollPosition, pageScrollSize); scrollPosition = 0; } else { _local1 = (direction == ScrollBarDirection.HORIZONTAL); _local2 = (_local1) ? _scrollTarget.width : 10; setScrollProperties(_local2, (_local1) ? 0 : 1, (_local1) ? _scrollTarget.maxScrollH : _scrollTarget.maxScrollV, pageScrollSize); scrollPosition = (_local1) ? _scrollTarget.scrollH : _scrollTarget.scrollV; }; } override public function setScrollProperties(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number=0):void{ var _local5:Number = _arg3; var _local6:Number = ((_arg2)<0) ? 0 : _arg2; if (_scrollTarget != null){ if (direction == ScrollBarDirection.HORIZONTAL){ _local5 = ((_arg3)>_scrollTarget.maxScrollH) ? _scrollTarget.maxScrollH : _local5; } else { _local5 = ((_arg3)>_scrollTarget.maxScrollV) ? _scrollTarget.maxScrollV : _local5; }; }; super.setScrollProperties(_arg1, _local6, _local5, _arg4); } protected function handleTargetScroll(_arg1:Event):void{ if (inDrag){ return; }; if (!enabled){ return; }; inEdit = true; updateScrollTargetProperties(); scrollPosition = ((direction)==ScrollBarDirection.HORIZONTAL) ? _scrollTarget.scrollH : _scrollTarget.scrollV; inEdit = false; } override public function setScrollPosition(_arg1:Number, _arg2:Boolean=true):void{ super.setScrollPosition(_arg1, _arg2); if (!_scrollTarget){ inScroll = false; return; }; updateTargetScroll(); } public function get scrollTargetName():String{ return (_scrollTarget.name); } override protected function draw():void{ if (isInvalid(InvalidationType.DATA)){ updateScrollTargetProperties(); }; super.draw(); } override public function set direction(_arg1:String):void{ if (isLivePreview){ return; }; super.direction = _arg1; updateScrollTargetProperties(); } protected function updateTargetScroll(_arg1:ScrollEvent=null):void{ if (inEdit){ return; }; if (direction == ScrollBarDirection.HORIZONTAL){ _scrollTarget.scrollH = scrollPosition; } else { _scrollTarget.scrollV = scrollPosition; }; } override public function set minScrollPosition(_arg1:Number):void{ super.minScrollPosition = ((_arg1)<0) ? 0 : _arg1; } override public function set maxScrollPosition(_arg1:Number):void{ var _local2:Number = _arg1; if (_scrollTarget != null){ if (direction == ScrollBarDirection.HORIZONTAL){ _local2 = ((_local2)>_scrollTarget.maxScrollH) ? _scrollTarget.maxScrollH : _local2; } else { _local2 = ((_local2)>_scrollTarget.maxScrollV) ? _scrollTarget.maxScrollV : _local2; }; }; super.maxScrollPosition = _local2; } protected function handleTargetChange(_arg1:Event):void{ inEdit = true; setScrollPosition(((direction)==ScrollBarDirection.HORIZONTAL) ? _scrollTarget.scrollH : _scrollTarget.scrollV, true); updateScrollTargetProperties(); inEdit = false; } public function update():void{ inEdit = true; updateScrollTargetProperties(); inEdit = false; } public function set scrollTargetName(_arg1:String):void{ var target = _arg1; try { scrollTarget = (parent.getChildByName(target) as TextField); } catch(error:Error) { throw (new Error("ScrollTarget not found, or is not a TextField")); }; } public function set scrollTarget(_arg1:TextField):void{ if (_scrollTarget != null){ _scrollTarget.removeEventListener(Event.CHANGE, handleTargetChange, false); _scrollTarget.removeEventListener(TextEvent.TEXT_INPUT, handleTargetChange, false); _scrollTarget.removeEventListener(Event.SCROLL, handleTargetScroll, false); removeEventListener(ScrollEvent.SCROLL, updateTargetScroll, false); }; _scrollTarget = _arg1; if (_scrollTarget != null){ _scrollTarget.addEventListener(Event.CHANGE, handleTargetChange, false, 0, true); _scrollTarget.addEventListener(TextEvent.TEXT_INPUT, handleTargetChange, false, 0, true); _scrollTarget.addEventListener(Event.SCROLL, handleTargetScroll, false, 0, true); addEventListener(ScrollEvent.SCROLL, updateTargetScroll, false, 0, true); }; invalidate(InvalidationType.DATA); } public function get scrollTarget():TextField{ return (_scrollTarget); } override public function get direction():String{ return (super.direction); } public static function getStyleDefinition():Object{ return (UIComponent.mergeStyles(defaultStyles, ScrollBar.getStyleDefinition())); } } }//package fl.controls
Section 8
//ComponentShim (fl.core.ComponentShim) package fl.core { import flash.display.*; public dynamic class ComponentShim extends MovieClip { } }//package fl.core
Section 9
//InvalidationType (fl.core.InvalidationType) package fl.core { public class InvalidationType { public static const SIZE:String = "size"; public static const ALL:String = "all"; public static const DATA:String = "data"; public static const SCROLL:String = "scroll"; public static const STATE:String = "state"; public static const STYLES:String = "styles"; public static const SELECTED:String = "selected"; public static const RENDERER_STYLES:String = "rendererStyles"; } }//package fl.core
Section 10
//UIComponent (fl.core.UIComponent) package fl.core { import flash.display.*; import flash.events.*; import fl.managers.*; import fl.events.*; import flash.text.*; import flash.utils.*; import flash.system.*; public class UIComponent extends Sprite { protected var _x:Number; protected var _enabled:Boolean;// = true protected var callLaterMethods:Dictionary; private var _mouseFocusEnabled:Boolean;// = true private var tempText:TextField; private var _focusEnabled:Boolean;// = true protected var startHeight:Number; protected var _height:Number; protected var invalidateFlag:Boolean;// = false protected var _oldIMEMode:String;// = null protected var _inspector:Boolean;// = false protected var startWidth:Number; public var focusTarget:IFocusManagerComponent; protected var errorCaught:Boolean;// = false protected var invalidHash:Object; protected var sharedStyles:Object; protected var uiFocusRect:DisplayObject; protected var isLivePreview:Boolean;// = false protected var _imeMode:String;// = null protected var _width:Number; protected var instanceStyles:Object; public var version:String;// = "3.0.0.16" protected var isFocused:Boolean;// = false protected var _y:Number; public static var inCallLaterPhase:Boolean = false; private static var defaultStyles:Object = {focusRectSkin:"focusRectSkin", focusRectPadding:2, textFormat:new TextFormat("_sans", 11, 0, false, false, false, "", "", TextFormatAlign.LEFT, 0, 0, 0, 0), disabledTextFormat:new TextFormat("_sans", 11, 0x999999, false, false, false, "", "", TextFormatAlign.LEFT, 0, 0, 0, 0), defaultTextFormat:new TextFormat("_sans", 11, 0, false, false, false, "", "", TextFormatAlign.LEFT, 0, 0, 0, 0), defaultDisabledTextFormat:new TextFormat("_sans", 11, 0x999999, false, false, false, "", "", TextFormatAlign.LEFT, 0, 0, 0, 0)}; public static var createAccessibilityImplementation:Function; private static var focusManagers:Dictionary = new Dictionary(false); public function UIComponent(){ instanceStyles = {}; sharedStyles = {}; invalidHash = {}; callLaterMethods = new Dictionary(); StyleManager.registerInstance(this); configUI(); invalidate(InvalidationType.ALL); tabEnabled = (this is IFocusManagerComponent); focusRect = false; if (tabEnabled){ addEventListener(FocusEvent.FOCUS_IN, focusInHandler); addEventListener(FocusEvent.FOCUS_OUT, focusOutHandler); addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler); addEventListener(KeyboardEvent.KEY_UP, keyUpHandler); }; initializeFocusManager(); addEventListener(Event.ENTER_FRAME, hookAccessibility, false, 0, true); } public function getStyle(_arg1:String):Object{ return (instanceStyles[_arg1]); } protected function checkLivePreview():Boolean{ var className:String; if (parent == null){ return (false); }; try { className = getQualifiedClassName(parent); } catch(e:Error) { }; return ((className == "fl.livepreview::LivePreviewParent")); } private function callLaterDispatcher(_arg1:Event):void{ var _local3:Object; if (_arg1.type == Event.ADDED_TO_STAGE){ removeEventListener(Event.ADDED_TO_STAGE, callLaterDispatcher); stage.addEventListener(Event.RENDER, callLaterDispatcher, false, 0, true); stage.invalidate(); return; }; _arg1.target.removeEventListener(Event.RENDER, callLaterDispatcher); if (stage == null){ addEventListener(Event.ADDED_TO_STAGE, callLaterDispatcher, false, 0, true); return; }; inCallLaterPhase = true; var _local2:Dictionary = callLaterMethods; for (_local3 in _local2) { _local3(); delete _local2[_local3]; }; inCallLaterPhase = false; } protected function validate():void{ invalidHash = {}; } protected function focusOutHandler(_arg1:FocusEvent):void{ if (isOurFocus((_arg1.target as DisplayObject))){ drawFocus(false); isFocused = false; }; } public function set mouseFocusEnabled(_arg1:Boolean):void{ _mouseFocusEnabled = _arg1; } public function getFocus():InteractiveObject{ if (stage){ return (stage.focus); }; return (null); } override public function get height():Number{ return (_height); } private function addedHandler(_arg1:Event):void{ removeEventListener("addedToStage", addedHandler); initializeFocusManager(); } protected function getStyleValue(_arg1:String):Object{ return (((instanceStyles[_arg1])==null) ? sharedStyles[_arg1] : instanceStyles[_arg1]); } public function invalidate(_arg1:String="all", _arg2:Boolean=true):void{ invalidHash[_arg1] = true; if (_arg2){ this.callLater(draw); }; } protected function isOurFocus(_arg1:DisplayObject):Boolean{ return ((_arg1 == this)); } public function get enabled():Boolean{ return (_enabled); } protected function getScaleX():Number{ return (super.scaleX); } protected function getScaleY():Number{ return (super.scaleY); } public function get focusEnabled():Boolean{ return (_focusEnabled); } protected function afterComponentParameters():void{ } override public function get scaleY():Number{ return ((height / startHeight)); } protected function setIMEMode(_arg1:Boolean){ var enabled = _arg1; if (_imeMode != null){ if (enabled){ IME.enabled = true; _oldIMEMode = IME.conversionMode; try { if (((!(errorCaught)) && (!((IME.conversionMode == IMEConversionMode.UNKNOWN))))){ IME.conversionMode = _imeMode; }; errorCaught = false; } catch(e:Error) { errorCaught = true; throw (new Error(("IME mode not supported: " + _imeMode))); }; } else { if (((!((IME.conversionMode == IMEConversionMode.UNKNOWN))) && (!((_oldIMEMode == IMEConversionMode.UNKNOWN))))){ IME.conversionMode = _oldIMEMode; }; IME.enabled = false; }; }; } protected function draw():void{ if (isInvalid(InvalidationType.SIZE, InvalidationType.STYLES)){ if (((isFocused) && (focusManager.showFocusIndicator))){ drawFocus(true); }; }; validate(); } override public function set height(_arg1:Number):void{ if (_height == _arg1){ return; }; setSize(width, _arg1); } protected function configUI():void{ isLivePreview = checkLivePreview(); var _local1:Number = rotation; rotation = 0; var _local2:Number = super.width; var _local3:Number = super.height; var _local4 = 1; super.scaleY = _local4; super.scaleX = _local4; setSize(_local2, _local3); move(super.x, super.y); rotation = _local1; startWidth = _local2; startHeight = _local3; if (numChildren > 0){ removeChildAt(0); }; } protected function setScaleY(_arg1:Number):void{ super.scaleY = _arg1; } override public function get scaleX():Number{ return ((width / startWidth)); } protected function setScaleX(_arg1:Number):void{ super.scaleX = _arg1; } private function initializeFocusManager():void{ if (stage == null){ addEventListener(Event.ADDED_TO_STAGE, addedHandler, false, 0, true); } else { createFocusManager(); }; } protected function keyDownHandler(_arg1:KeyboardEvent):void{ } public function set focusManager(_arg1:IFocusManager):void{ UIComponent.focusManagers[this] = _arg1; } public function clearStyle(_arg1:String):void{ setStyle(_arg1, null); } protected function isInvalid(_arg1:String, ... _args):Boolean{ if (((invalidHash[_arg1]) || (invalidHash[InvalidationType.ALL]))){ return (true); }; while (_args.length > 0) { if (invalidHash[_args.pop()]){ return (true); }; }; return (false); } public function setStyle(_arg1:String, _arg2:Object):void{ if ((((instanceStyles[_arg1] === _arg2)) && (!((_arg2 is TextFormat))))){ return; }; instanceStyles[_arg1] = _arg2; invalidate(InvalidationType.STYLES); } override public function get visible():Boolean{ return (super.visible); } protected function focusInHandler(_arg1:FocusEvent):void{ var _local2:IFocusManager; if (isOurFocus((_arg1.target as DisplayObject))){ _local2 = focusManager; if (((_local2) && (_local2.showFocusIndicator))){ drawFocus(true); isFocused = true; }; }; } public function get componentInspectorSetting():Boolean{ return (_inspector); } override public function get x():Number{ return ((isNaN(_x)) ? super.x : _x); } override public function get y():Number{ return ((isNaN(_y)) ? super.y : _y); } public function set enabled(_arg1:Boolean):void{ if (_arg1 == _enabled){ return; }; _enabled = _arg1; invalidate(InvalidationType.STATE); } public function setSize(_arg1:Number, _arg2:Number):void{ _width = _arg1; _height = _arg2; invalidate(InvalidationType.SIZE); dispatchEvent(new ComponentEvent(ComponentEvent.RESIZE, false)); } protected function keyUpHandler(_arg1:KeyboardEvent):void{ } public function setSharedStyle(_arg1:String, _arg2:Object):void{ if ((((sharedStyles[_arg1] === _arg2)) && (!((_arg2 is TextFormat))))){ return; }; sharedStyles[_arg1] = _arg2; if (instanceStyles[_arg1] == null){ invalidate(InvalidationType.STYLES); }; } public function set focusEnabled(_arg1:Boolean):void{ _focusEnabled = _arg1; } override public function set width(_arg1:Number):void{ if (_width == _arg1){ return; }; setSize(_arg1, height); } public function setFocus():void{ if (stage){ stage.focus = this; }; } override public function set scaleX(_arg1:Number):void{ setSize((startWidth * _arg1), height); } public function get mouseFocusEnabled():Boolean{ return (_mouseFocusEnabled); } override public function set scaleY(_arg1:Number):void{ setSize(width, (startHeight * _arg1)); } protected function getDisplayObjectInstance(_arg1:Object):DisplayObject{ var skin = _arg1; var classDef:Object; if ((skin is Class)){ return ((new (skin) as DisplayObject)); }; if ((skin is DisplayObject)){ (skin as DisplayObject).x = 0; (skin as DisplayObject).y = 0; return ((skin as DisplayObject)); }; try { classDef = getDefinitionByName(skin.toString()); } catch(e:Error) { try { classDef = (loaderInfo.applicationDomain.getDefinition(skin.toString()) as Object); } catch(e:Error) { }; }; if (classDef == null){ return (null); }; return ((new (classDef) as DisplayObject)); } protected function copyStylesToChild(_arg1:UIComponent, _arg2:Object):void{ var _local3:String; for (_local3 in _arg2) { _arg1.setStyle(_local3, getStyleValue(_arg2[_local3])); }; } protected function initializeAccessibility():void{ if (UIComponent.createAccessibilityImplementation != null){ UIComponent.createAccessibilityImplementation(this); }; } public function get focusManager():IFocusManager{ var _local1:DisplayObject = this; while (_local1) { if (UIComponent.focusManagers[_local1] != null){ return (IFocusManager(UIComponent.focusManagers[_local1])); }; _local1 = _local1.parent; }; return (null); } override public function get width():Number{ return (_width); } protected function beforeComponentParameters():void{ } protected function callLater(_arg1:Function):void{ if (inCallLaterPhase){ return; }; callLaterMethods[_arg1] = true; if (stage != null){ stage.addEventListener(Event.RENDER, callLaterDispatcher, false, 0, true); stage.invalidate(); } else { addEventListener(Event.ADDED_TO_STAGE, callLaterDispatcher, false, 0, true); }; } public function move(_arg1:Number, _arg2:Number):void{ _x = _arg1; _y = _arg2; super.x = Math.round(_arg1); super.y = Math.round(_arg2); dispatchEvent(new ComponentEvent(ComponentEvent.MOVE)); } public function validateNow():void{ invalidate(InvalidationType.ALL, false); draw(); } override public function set visible(_arg1:Boolean):void{ if (super.visible == _arg1){ return; }; super.visible = _arg1; var _local2:String = (_arg1) ? ComponentEvent.SHOW : ComponentEvent.HIDE; dispatchEvent(new ComponentEvent(_local2, true)); } protected function createFocusManager():void{ if (focusManagers[stage] == null){ focusManagers[stage] = new FocusManager(stage); }; } protected function hookAccessibility(_arg1:Event):void{ removeEventListener(Event.ENTER_FRAME, hookAccessibility); initializeAccessibility(); } public function set componentInspectorSetting(_arg1:Boolean):void{ _inspector = _arg1; if (_inspector){ beforeComponentParameters(); } else { afterComponentParameters(); }; } override public function set y(_arg1:Number):void{ move(_x, _arg1); } public function drawFocus(_arg1:Boolean):void{ var _local2:Number; isFocused = _arg1; if (((!((uiFocusRect == null))) && (contains(uiFocusRect)))){ removeChild(uiFocusRect); uiFocusRect = null; }; if (_arg1){ uiFocusRect = (getDisplayObjectInstance(getStyleValue("focusRectSkin")) as Sprite); if (uiFocusRect == null){ return; }; _local2 = Number(getStyleValue("focusRectPadding")); uiFocusRect.x = -(_local2); uiFocusRect.y = -(_local2); uiFocusRect.width = (width + (_local2 * 2)); uiFocusRect.height = (height + (_local2 * 2)); addChildAt(uiFocusRect, 0); }; } override public function set x(_arg1:Number):void{ move(_arg1, _y); } public function drawNow():void{ draw(); } public static function getStyleDefinition():Object{ return (defaultStyles); } public static function mergeStyles(... _args):Object{ var _local5:Object; var _local6:String; var _local2:Object = {}; var _local3:uint = _args.length; var _local4:uint; while (_local4 < _local3) { _local5 = _args[_local4]; for (_local6 in _local5) { if (_local2[_local6] != null){ } else { _local2[_local6] = _args[_local4][_local6]; }; }; _local4++; }; return (_local2); } } }//package fl.core
Section 11
//ComponentEvent (fl.events.ComponentEvent) package fl.events { import flash.events.*; public class ComponentEvent extends Event { public static const HIDE:String = "hide"; public static const BUTTON_DOWN:String = "buttonDown"; public static const MOVE:String = "move"; public static const RESIZE:String = "resize"; public static const ENTER:String = "enter"; public static const LABEL_CHANGE:String = "labelChange"; public static const SHOW:String = "show"; public function ComponentEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false){ super(_arg1, _arg2, _arg3); } override public function toString():String{ return (formatToString("ComponentEvent", "type", "bubbles", "cancelable")); } override public function clone():Event{ return (new ComponentEvent(type, bubbles, cancelable)); } } }//package fl.events
Section 12
//ScrollEvent (fl.events.ScrollEvent) package fl.events { import flash.events.*; public class ScrollEvent extends Event { private var _direction:String; private var _position:Number; private var _delta:Number; public static const SCROLL:String = "scroll"; public function ScrollEvent(_arg1:String, _arg2:Number, _arg3:Number){ super(ScrollEvent.SCROLL, false, false); _direction = _arg1; _delta = _arg2; _position = _arg3; } public function get position():Number{ return (_position); } public function get direction():String{ return (_direction); } public function get delta():Number{ return (_delta); } override public function toString():String{ return (formatToString("ScrollEvent", "type", "bubbles", "cancelable", "direction", "delta", "position")); } override public function clone():Event{ return (new ScrollEvent(_direction, _delta, _position)); } } }//package fl.events
Section 13
//FocusManager (fl.managers.FocusManager) package fl.managers { import fl.controls.*; import flash.display.*; import fl.core.*; import flash.events.*; import flash.text.*; import flash.utils.*; import flash.ui.*; public class FocusManager implements IFocusManager { private var focusableObjects:Dictionary; private var _showFocusIndicator:Boolean;// = true private var defButton:Button; private var focusableCandidates:Array; private var _form:DisplayObjectContainer; private var _defaultButtonEnabled:Boolean;// = true private var activated:Boolean;// = false private var _defaultButton:Button; private var calculateCandidates:Boolean;// = true private var lastFocus:InteractiveObject; private var lastAction:String; public function FocusManager(_arg1:DisplayObjectContainer){ focusableObjects = new Dictionary(true); if (_arg1 != null){ _form = _arg1; addFocusables(DisplayObject(_arg1)); _arg1.addEventListener(Event.ADDED, addedHandler); _arg1.addEventListener(Event.REMOVED, removedHandler); activate(); }; } public function get showFocusIndicator():Boolean{ return (_showFocusIndicator); } private function getIndexOfNextObject(_arg1:int, _arg2:Boolean, _arg3:Boolean, _arg4:String):int{ var _local7:DisplayObject; var _local8:IFocusManagerGroup; var _local9:int; var _local10:DisplayObject; var _local11:IFocusManagerGroup; var _local5:int = focusableCandidates.length; var _local6:int = _arg1; while (true) { if (_arg2){ _arg1--; } else { _arg1++; }; if (_arg3){ if (((_arg2) && ((_arg1 < 0)))){ break; }; if (((!(_arg2)) && ((_arg1 == _local5)))){ break; }; } else { _arg1 = ((_arg1 + _local5) % _local5); if (_local6 == _arg1){ break; }; }; if (isValidFocusCandidate(focusableCandidates[_arg1], _arg4)){ _local7 = DisplayObject(findFocusManagerComponent(focusableCandidates[_arg1])); if ((_local7 is IFocusManagerGroup)){ _local8 = IFocusManagerGroup(_local7); _local9 = 0; while (_local9 < focusableCandidates.length) { _local10 = focusableCandidates[_local9]; if ((_local10 is IFocusManagerGroup)){ _local11 = IFocusManagerGroup(_local10); if ((((_local11.groupName == _local8.groupName)) && (_local11.selected))){ _arg1 = _local9; break; }; }; _local9++; }; }; return (_arg1); }; }; return (_arg1); } private function mouseFocusChangeHandler(_arg1:FocusEvent):void{ if ((_arg1.relatedObject is TextField)){ return; }; _arg1.preventDefault(); } public function set form(_arg1:DisplayObjectContainer):void{ _form = _arg1; } private function addFocusables(_arg1:DisplayObject, _arg2:Boolean=false):void{ var focusable:IFocusManagerComponent; var io:InteractiveObject; var doc:DisplayObjectContainer; var i:int; var child:DisplayObject; var o = _arg1; var skipTopLevel = _arg2; if (!skipTopLevel){ if ((o is IFocusManagerComponent)){ focusable = IFocusManagerComponent(o); if (focusable.focusEnabled){ if (((focusable.tabEnabled) && (isTabVisible(o)))){ focusableObjects[o] = true; calculateCandidates = true; }; o.addEventListener(Event.TAB_ENABLED_CHANGE, tabEnabledChangeHandler); o.addEventListener(Event.TAB_INDEX_CHANGE, tabIndexChangeHandler); }; } else { if ((o is InteractiveObject)){ io = (o as InteractiveObject); if (((((io) && (io.tabEnabled))) && ((findFocusManagerComponent(io) == io)))){ focusableObjects[io] = true; calculateCandidates = true; }; io.addEventListener(Event.TAB_ENABLED_CHANGE, tabEnabledChangeHandler); io.addEventListener(Event.TAB_INDEX_CHANGE, tabIndexChangeHandler); }; }; }; if ((o is DisplayObjectContainer)){ doc = DisplayObjectContainer(o); o.addEventListener(Event.TAB_CHILDREN_CHANGE, tabChildrenChangeHandler); if ((((((doc is Stage)) || ((doc.parent is Stage)))) || (doc.tabChildren))){ i = 0; while (i < doc.numChildren) { try { child = doc.getChildAt(i); if (child != null){ addFocusables(doc.getChildAt(i)); }; } catch(error:SecurityError) { }; i = (i + 1); }; }; }; } private function getChildIndex(_arg1:DisplayObjectContainer, _arg2:DisplayObject):int{ return (_arg1.getChildIndex(_arg2)); } public function findFocusManagerComponent(_arg1:InteractiveObject):InteractiveObject{ var _local2:InteractiveObject = _arg1; while (_arg1) { if ((((_arg1 is IFocusManagerComponent)) && (IFocusManagerComponent(_arg1).focusEnabled))){ return (_arg1); }; _arg1 = _arg1.parent; }; return (_local2); } private function focusOutHandler(_arg1:FocusEvent):void{ var _local2:InteractiveObject = (_arg1.target as InteractiveObject); } private function isValidFocusCandidate(_arg1:DisplayObject, _arg2:String):Boolean{ var _local3:IFocusManagerGroup; if (!isEnabledAndVisible(_arg1)){ return (false); }; if ((_arg1 is IFocusManagerGroup)){ _local3 = IFocusManagerGroup(_arg1); if (_arg2 == _local3.groupName){ return (false); }; }; return (true); } private function setFocusToNextObject(_arg1:FocusEvent):void{ if (!hasFocusableObjects()){ return; }; var _local2:InteractiveObject = getNextFocusManagerComponent(_arg1.shiftKey); if (_local2){ setFocus(_local2); }; } private function sortFocusableObjectsTabIndex():void{ var _local1:Object; var _local2:InteractiveObject; focusableCandidates = []; for (_local1 in focusableObjects) { _local2 = InteractiveObject(_local1); if (((_local2.tabIndex) && (!(isNaN(Number(_local2.tabIndex)))))){ focusableCandidates.push(_local2); }; }; focusableCandidates.sort(sortByTabIndex); } private function removeFocusables(_arg1:DisplayObject):void{ var _local2:Object; var _local3:DisplayObject; if ((_arg1 is DisplayObjectContainer)){ _arg1.removeEventListener(Event.TAB_CHILDREN_CHANGE, tabChildrenChangeHandler); _arg1.removeEventListener(Event.TAB_INDEX_CHANGE, tabIndexChangeHandler); for (_local2 in focusableObjects) { _local3 = DisplayObject(_local2); if (DisplayObjectContainer(_arg1).contains(_local3)){ if (_local3 == lastFocus){ lastFocus = null; }; _local3.removeEventListener(Event.TAB_ENABLED_CHANGE, tabEnabledChangeHandler); delete focusableObjects[_local2]; calculateCandidates = true; }; }; }; } private function getTopLevelFocusTarget(_arg1:InteractiveObject):InteractiveObject{ while (_arg1 != InteractiveObject(form)) { if ((((((((_arg1 is IFocusManagerComponent)) && (IFocusManagerComponent(_arg1).focusEnabled))) && (IFocusManagerComponent(_arg1).mouseFocusEnabled))) && (UIComponent(_arg1).enabled))){ return (_arg1); }; _arg1 = _arg1.parent; if (_arg1 == null){ break; }; }; return (null); } public function sendDefaultButtonEvent():void{ defButton.dispatchEvent(new MouseEvent(MouseEvent.CLICK)); } private function addedHandler(_arg1:Event):void{ var _local2:DisplayObject = DisplayObject(_arg1.target); if (_local2.stage){ addFocusables(DisplayObject(_arg1.target)); }; } private function isEnabledAndVisible(_arg1:DisplayObject):Boolean{ var _local3:TextField; var _local4:SimpleButton; var _local2:DisplayObjectContainer = DisplayObject(form).parent; while (_arg1 != _local2) { if ((_arg1 is UIComponent)){ if (!UIComponent(_arg1).enabled){ return (false); }; } else { if ((_arg1 is TextField)){ _local3 = TextField(_arg1); if ((((_local3.type == TextFieldType.DYNAMIC)) || (!(_local3.selectable)))){ return (false); }; } else { if ((_arg1 is SimpleButton)){ _local4 = SimpleButton(_arg1); if (!_local4.enabled){ return (false); }; }; }; }; if (!_arg1.visible){ return (false); }; _arg1 = _arg1.parent; }; return (true); } private function tabChildrenChangeHandler(_arg1:Event):void{ if (_arg1.target != _arg1.currentTarget){ return; }; calculateCandidates = true; var _local2:DisplayObjectContainer = DisplayObjectContainer(_arg1.target); if (_local2.tabChildren){ addFocusables(_local2, true); } else { removeFocusables(_local2); }; } private function deactivateHandler(_arg1:Event):void{ var _local2:InteractiveObject = InteractiveObject(_arg1.target); } public function setFocus(_arg1:InteractiveObject):void{ if ((_arg1 is IFocusManagerComponent)){ IFocusManagerComponent(_arg1).setFocus(); } else { form.stage.focus = _arg1; }; } public function getFocus():InteractiveObject{ var _local1:InteractiveObject = form.stage.focus; return (findFocusManagerComponent(_local1)); } private function hasFocusableObjects():Boolean{ var _local1:Object; for (_local1 in focusableObjects) { return (true); }; return (false); } private function tabIndexChangeHandler(_arg1:Event):void{ calculateCandidates = true; } public function set defaultButton(_arg1:Button):void{ var _local2:Button = (_arg1) ? Button(_arg1) : null; if (_local2 != _defaultButton){ if (_defaultButton){ _defaultButton.emphasized = false; }; if (defButton){ defButton.emphasized = false; }; _defaultButton = _local2; defButton = _local2; if (_local2){ _local2.emphasized = true; }; }; } private function sortFocusableObjects():void{ var _local1:Object; var _local2:InteractiveObject; focusableCandidates = []; for (_local1 in focusableObjects) { _local2 = InteractiveObject(_local1); if (((((_local2.tabIndex) && (!(isNaN(Number(_local2.tabIndex)))))) && ((_local2.tabIndex > 0)))){ sortFocusableObjectsTabIndex(); return; }; focusableCandidates.push(_local2); }; focusableCandidates.sort(sortByDepth); } private function keyFocusChangeHandler(_arg1:FocusEvent):void{ showFocusIndicator = true; if ((((((_arg1.keyCode == Keyboard.TAB)) || ((_arg1.keyCode == 0)))) && (!(_arg1.isDefaultPrevented())))){ setFocusToNextObject(_arg1); _arg1.preventDefault(); }; } private function getIndexOfFocusedObject(_arg1:DisplayObject):int{ var _local2:int = focusableCandidates.length; var _local3:int; _local3 = 0; while (_local3 < _local2) { if (focusableCandidates[_local3] == _arg1){ return (_local3); }; _local3++; }; return (-1); } public function hideFocus():void{ } private function removedHandler(_arg1:Event):void{ var _local2:int; var _local4:InteractiveObject; var _local3:DisplayObject = DisplayObject(_arg1.target); if ((((_local3 is IFocusManagerComponent)) && ((focusableObjects[_local3] == true)))){ if (_local3 == lastFocus){ IFocusManagerComponent(lastFocus).drawFocus(false); lastFocus = null; }; _local3.removeEventListener(Event.TAB_ENABLED_CHANGE, tabEnabledChangeHandler); delete focusableObjects[_local3]; calculateCandidates = true; } else { if ((((_local3 is InteractiveObject)) && ((focusableObjects[_local3] == true)))){ _local4 = (_local3 as InteractiveObject); if (_local4){ if (_local4 == lastFocus){ lastFocus = null; }; delete focusableObjects[_local4]; calculateCandidates = true; }; _local3.addEventListener(Event.TAB_ENABLED_CHANGE, tabEnabledChangeHandler); }; }; removeFocusables(_local3); } private function sortByDepth(_arg1:InteractiveObject, _arg2:InteractiveObject):Number{ var _local5:int; var _local6:String; var _local7:String; var _local3 = ""; var _local4 = ""; var _local8 = "0000"; var _local9:DisplayObject = DisplayObject(_arg1); var _local10:DisplayObject = DisplayObject(_arg2); while (((!((_local9 == DisplayObject(form)))) && (_local9.parent))) { _local5 = getChildIndex(_local9.parent, _local9); _local6 = _local5.toString(16); if (_local6.length < 4){ _local7 = (_local8.substring(0, (4 - _local6.length)) + _local6); }; _local3 = (_local7 + _local3); _local9 = _local9.parent; }; while (((!((_local10 == DisplayObject(form)))) && (_local10.parent))) { _local5 = getChildIndex(_local10.parent, _local10); _local6 = _local5.toString(16); if (_local6.length < 4){ _local7 = (_local8.substring(0, (4 - _local6.length)) + _local6); }; _local4 = (_local7 + _local4); _local10 = _local10.parent; }; return (((_local3 > _local4)) ? 1 : ((_local3 < _local4)) ? -1 : 0); } public function get defaultButton():Button{ return (_defaultButton); } private function activateHandler(_arg1:Event):void{ var _local2:InteractiveObject = InteractiveObject(_arg1.target); if (lastFocus){ if ((lastFocus is IFocusManagerComponent)){ IFocusManagerComponent(lastFocus).setFocus(); } else { form.stage.focus = lastFocus; }; }; lastAction = "ACTIVATE"; } public function showFocus():void{ } public function set defaultButtonEnabled(_arg1:Boolean):void{ _defaultButtonEnabled = _arg1; } public function getNextFocusManagerComponent(_arg1:Boolean=false):InteractiveObject{ var _local8:IFocusManagerGroup; if (!hasFocusableObjects()){ return (null); }; if (calculateCandidates){ sortFocusableObjects(); calculateCandidates = false; }; var _local2:DisplayObject = form.stage.focus; _local2 = DisplayObject(findFocusManagerComponent(InteractiveObject(_local2))); var _local3 = ""; if ((_local2 is IFocusManagerGroup)){ _local8 = IFocusManagerGroup(_local2); _local3 = _local8.groupName; }; var _local4:int = getIndexOfFocusedObject(_local2); var _local5:Boolean; var _local6:int = _local4; if (_local4 == -1){ if (_arg1){ _local4 = focusableCandidates.length; }; _local5 = true; }; var _local7:int = getIndexOfNextObject(_local4, _arg1, _local5, _local3); return (findFocusManagerComponent(focusableCandidates[_local7])); } private function mouseDownHandler(_arg1:MouseEvent):void{ if (_arg1.isDefaultPrevented()){ return; }; var _local2:InteractiveObject = getTopLevelFocusTarget(InteractiveObject(_arg1.target)); if (!_local2){ return; }; showFocusIndicator = false; if (((((!((_local2 == lastFocus))) || ((lastAction == "ACTIVATE")))) && (!((_local2 is TextField))))){ setFocus(_local2); }; lastAction = "MOUSEDOWN"; } private function isTabVisible(_arg1:DisplayObject):Boolean{ var _local2:DisplayObjectContainer = _arg1.parent; while (((((_local2) && (!((_local2 is Stage))))) && (!(((_local2.parent) && ((_local2.parent is Stage))))))) { if (!_local2.tabChildren){ return (false); }; _local2 = _local2.parent; }; return (true); } public function get nextTabIndex():int{ return (0); } private function keyDownHandler(_arg1:KeyboardEvent):void{ if (_arg1.keyCode == Keyboard.TAB){ lastAction = "KEY"; if (calculateCandidates){ sortFocusableObjects(); calculateCandidates = false; }; }; if (((((((defaultButtonEnabled) && ((_arg1.keyCode == Keyboard.ENTER)))) && (defaultButton))) && (defButton.enabled))){ sendDefaultButtonEvent(); }; } private function focusInHandler(_arg1:FocusEvent):void{ var _local3:Button; var _local2:InteractiveObject = InteractiveObject(_arg1.target); if (form.contains(_local2)){ lastFocus = findFocusManagerComponent(InteractiveObject(_local2)); if ((lastFocus is Button)){ _local3 = Button(lastFocus); if (defButton){ defButton.emphasized = false; defButton = _local3; _local3.emphasized = true; }; } else { if (((defButton) && (!((defButton == _defaultButton))))){ defButton.emphasized = false; defButton = _defaultButton; _defaultButton.emphasized = true; }; }; }; } private function tabEnabledChangeHandler(_arg1:Event):void{ calculateCandidates = true; var _local2:InteractiveObject = InteractiveObject(_arg1.target); var _local3 = (focusableObjects[_local2] == true); if (_local2.tabEnabled){ if (((!(_local3)) && (isTabVisible(_local2)))){ if (!(_local2 is IFocusManagerComponent)){ _local2.focusRect = false; }; focusableObjects[_local2] = true; }; } else { if (_local3){ delete focusableObjects[_local2]; }; }; } public function set showFocusIndicator(_arg1:Boolean):void{ _showFocusIndicator = _arg1; } public function get form():DisplayObjectContainer{ return (_form); } private function sortByTabIndex(_arg1:InteractiveObject, _arg2:InteractiveObject):int{ return (((_arg1.tabIndex > _arg2.tabIndex)) ? 1 : ((_arg1.tabIndex < _arg2.tabIndex)) ? -1 : sortByDepth(_arg1, _arg2)); } public function get defaultButtonEnabled():Boolean{ return (_defaultButtonEnabled); } public function activate():void{ if (activated){ return; }; form.stage.addEventListener(FocusEvent.MOUSE_FOCUS_CHANGE, mouseFocusChangeHandler, false, 0, true); form.stage.addEventListener(FocusEvent.KEY_FOCUS_CHANGE, keyFocusChangeHandler, false, 0, true); form.addEventListener(FocusEvent.FOCUS_IN, focusInHandler, true); form.addEventListener(FocusEvent.FOCUS_OUT, focusOutHandler, true); form.stage.addEventListener(Event.ACTIVATE, activateHandler, false, 0, true); form.stage.addEventListener(Event.DEACTIVATE, deactivateHandler, false, 0, true); form.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler); form.addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler, true); activated = true; if (lastFocus){ setFocus(lastFocus); }; } public function deactivate():void{ form.stage.removeEventListener(FocusEvent.MOUSE_FOCUS_CHANGE, mouseFocusChangeHandler); form.stage.removeEventListener(FocusEvent.KEY_FOCUS_CHANGE, keyFocusChangeHandler); form.removeEventListener(FocusEvent.FOCUS_IN, focusInHandler, true); form.removeEventListener(FocusEvent.FOCUS_OUT, focusOutHandler, true); form.stage.removeEventListener(Event.ACTIVATE, activateHandler); form.stage.removeEventListener(Event.DEACTIVATE, deactivateHandler); form.removeEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler); form.removeEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler, true); activated = false; } } }//package fl.managers
Section 14
//IFocusManager (fl.managers.IFocusManager) package fl.managers { import fl.controls.*; import flash.display.*; public interface IFocusManager { function getFocus():InteractiveObject; function deactivate():void; function set defaultButton(_arg1:Button):void; function set showFocusIndicator(_arg1:Boolean):void; function get defaultButtonEnabled():Boolean; function findFocusManagerComponent(_arg1:InteractiveObject):InteractiveObject; function get nextTabIndex():int; function get defaultButton():Button; function get showFocusIndicator():Boolean; function hideFocus():void; function activate():void; function showFocus():void; function set defaultButtonEnabled(_arg1:Boolean):void; function setFocus(_arg1:InteractiveObject):void; function getNextFocusManagerComponent(_arg1:Boolean=false):InteractiveObject; } }//package fl.managers
Section 15
//IFocusManagerComponent (fl.managers.IFocusManagerComponent) package fl.managers { public interface IFocusManagerComponent { function set focusEnabled(_arg1:Boolean):void; function drawFocus(_arg1:Boolean):void; function setFocus():void; function get focusEnabled():Boolean; function get tabEnabled():Boolean; function get tabIndex():int; function get mouseFocusEnabled():Boolean; } }//package fl.managers
Section 16
//IFocusManagerGroup (fl.managers.IFocusManagerGroup) package fl.managers { public interface IFocusManagerGroup { function get groupName():String; function get selected():Boolean; function set groupName(_arg1:String):void; function set selected(_arg1:Boolean):void; } }//package fl.managers
Section 17
//StyleManager (fl.managers.StyleManager) package fl.managers { import fl.core.*; import flash.text.*; import flash.utils.*; public class StyleManager { private var classToInstancesDict:Dictionary; private var globalStyles:Object; private var styleToClassesHash:Object; private var classToStylesDict:Dictionary; private var classToDefaultStylesDict:Dictionary; private static var _instance:StyleManager; public function StyleManager(){ styleToClassesHash = {}; classToInstancesDict = new Dictionary(true); classToStylesDict = new Dictionary(true); classToDefaultStylesDict = new Dictionary(true); globalStyles = UIComponent.getStyleDefinition(); } public static function clearComponentStyle(_arg1:Object, _arg2:String):void{ var _local3:Class = getClassDef(_arg1); var _local4:Object = getInstance().classToStylesDict[_local3]; if (((!((_local4 == null))) && (!((_local4[_arg2] == null))))){ delete _local4[_arg2]; invalidateComponentStyle(_local3, _arg2); }; } private static function getClassDef(_arg1:Object):Class{ var component = _arg1; if ((component is Class)){ return ((component as Class)); }; try { return ((getDefinitionByName(getQualifiedClassName(component)) as Class)); } catch(e:Error) { if ((component is UIComponent)){ try { return ((component.loaderInfo.applicationDomain.getDefinition(getQualifiedClassName(component)) as Class)); } catch(e:Error) { }; }; }; return (null); } public static function clearStyle(_arg1:String):void{ setStyle(_arg1, null); } public static function setComponentStyle(_arg1:Object, _arg2:String, _arg3:Object):void{ var _local4:Class = getClassDef(_arg1); var _local5:Object = getInstance().classToStylesDict[_local4]; if (_local5 == null){ _local5 = (getInstance().classToStylesDict[_local4] = {}); }; if (_local5 == _arg3){ return; }; _local5[_arg2] = _arg3; invalidateComponentStyle(_local4, _arg2); } private static function setSharedStyles(_arg1:UIComponent):void{ var _local5:String; var _local2:StyleManager = getInstance(); var _local3:Class = getClassDef(_arg1); var _local4:Object = _local2.classToDefaultStylesDict[_local3]; for (_local5 in _local4) { _arg1.setSharedStyle(_local5, getSharedStyle(_arg1, _local5)); }; } public static function getComponentStyle(_arg1:Object, _arg2:String):Object{ var _local3:Class = getClassDef(_arg1); var _local4:Object = getInstance().classToStylesDict[_local3]; return (((_local4)==null) ? null : _local4[_arg2]); } private static function getInstance(){ if (_instance == null){ _instance = new (StyleManager); }; return (_instance); } private static function invalidateComponentStyle(_arg1:Class, _arg2:String):void{ var _local4:Object; var _local5:UIComponent; var _local3:Dictionary = getInstance().classToInstancesDict[_arg1]; if (_local3 == null){ return; }; for (_local4 in _local3) { _local5 = (_local4 as UIComponent); if (_local5 == null){ } else { _local5.setSharedStyle(_arg2, getSharedStyle(_local5, _arg2)); }; }; } private static function invalidateStyle(_arg1:String):void{ var _local3:Object; var _local2:Dictionary = getInstance().styleToClassesHash[_arg1]; if (_local2 == null){ return; }; for (_local3 in _local2) { invalidateComponentStyle(Class(_local3), _arg1); }; } public static function registerInstance(_arg1:UIComponent):void{ var target:Class; var defaultStyles:Object; var styleToClasses:Object; var n:String; var instance = _arg1; var inst:StyleManager = getInstance(); var classDef:Class = getClassDef(instance); if (classDef == null){ return; }; if (inst.classToInstancesDict[classDef] == null){ inst.classToInstancesDict[classDef] = new Dictionary(true); target = classDef; while (defaultStyles == null) { if (target["getStyleDefinition"] != null){ defaultStyles = target["getStyleDefinition"](); break; }; try { target = (instance.loaderInfo.applicationDomain.getDefinition(getQualifiedSuperclassName(target)) as Class); } catch(err:Error) { try { target = (getDefinitionByName(getQualifiedSuperclassName(target)) as Class); } catch(e:Error) { defaultStyles = UIComponent.getStyleDefinition(); break; }; }; }; styleToClasses = inst.styleToClassesHash; for (n in defaultStyles) { if (styleToClasses[n] == null){ styleToClasses[n] = new Dictionary(true); }; styleToClasses[n][classDef] = true; }; inst.classToDefaultStylesDict[classDef] = defaultStyles; if (inst.classToStylesDict[classDef] == null){ inst.classToStylesDict[classDef] = {}; }; }; inst.classToInstancesDict[classDef][instance] = true; setSharedStyles(instance); } public static function getStyle(_arg1:String):Object{ return (getInstance().globalStyles[_arg1]); } private static function getSharedStyle(_arg1:UIComponent, _arg2:String):Object{ var _local3:Class = getClassDef(_arg1); var _local4:StyleManager = getInstance(); var _local5:Object = _local4.classToStylesDict[_local3][_arg2]; if (_local5 != null){ return (_local5); }; _local5 = _local4.globalStyles[_arg2]; if (_local5 != null){ return (_local5); }; return (_local4.classToDefaultStylesDict[_local3][_arg2]); } public static function setStyle(_arg1:String, _arg2:Object):void{ var _local3:Object = getInstance().globalStyles; if ((((_local3[_arg1] === _arg2)) && (!((_arg2 is TextFormat))))){ return; }; _local3[_arg1] = _arg2; invalidateStyle(_arg1); } } }//package fl.managers
Section 18
//MainTimeline (NiminFetishFantasyv0_fla.MainTimeline) package NiminFetishFantasyv0_fla { import fl.controls.*; import flash.display.*; import flash.events.*; import flash.text.*; import flash.utils.*; import flash.ui.*; import flash.system.*; import adobe.utils.*; import flash.accessibility.*; import flash.errors.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.printing.*; import flash.xml.*; public dynamic class MainTimeline extends MovieClip { public var libUp:upArrow; public var exhaustionPenalty:int; public var senUp:upArrow; public var rabbit:int; public var silPreg:int; public var eggLaying:int; public var foundSoftlik:Boolean; public var itemGainArray:Array; public var AmountOutline10:MovieClip; public var AmountOutline11:MovieClip; public var AmountOutline12:MovieClip; public var DayValuePane:TextField; public var malonChildren:int; public var lilaVulva:int; public var i:int; public var fourBoobAffinity:int; public var invertColorsOutline:MovieClip; public var Choice10Outline:MovieClip; public var tallness:int; public var statValuePane:TextField; public var lupanChildren:int; public var eCoin:int; public var inBag:Boolean; public var eGen:int; public var strUp:upArrow; public var cowChildren:int; public var pregTempInt:int; public var currentZone:int; public var AmountOutline1:MovieClip; public var AmountOutline2:MovieClip; public var AmountOutline3:MovieClip; public var AmountOutline4:MovieClip; public var AmountOutline5:MovieClip; public var AmountOutline6:MovieClip; public var AmountOutline7:MovieClip; public var AmountOutline8:MovieClip; public var AmountOutline9:MovieClip; public var bodyOil:int; public var eggceleratorTime:int; public var libDown:downArrow; public var HPMod:int; public var invertColors:TextField; public var milkMod:int; public var HP:int; public var levelPane:TextField; public var udderLactation:int; public var nipplePlay:Number; public var vulvaSize:int; public var pregRate:Number; public var human:int; public var attireTop:int; public var Choice3Outline:MovieClip; public var levelValuePane:TextField; public var lustDown:downArrow; public var humanAffinity:int; public var cow:int; public var felinChildren:int; public var stackArray2:Array; public var body:int; public var jamieRep:int; public var stackArray1:Array; public var wolfAffinity:int; public var stackArray3:Array; public var newGame:TextField; public var Choice8Outline:MovieClip; public var inShop:Boolean; public var foundFirmshaft:Boolean; public var hpDown:downArrow; public var currentRegion:TextField; public var cockTotal:int; public var stashStackArray1:Array; public var wolfCocks:int; public var vagMoist:int; public var stashStackArray3:Array; public var loadGame:TextField; public var stashStackArray2:Array; public var lactation:int; public var butt:int; public var weapon:Number; public var nipPump:int; public var blueBalls:int; public var eggceleratorDose:int; public var newGameOutline:MovieClip; public var pregTimeMod:int; public var doListen:Function; public var udderSize:int; public var currentText:String; public var Choice12Outline:MovieClip; public var balls:int; public var skinType:int; public var pageNum:TextField; public var currentStash:int; public var lib:int; public var eggMaxTime:int; public var vagBellyMod:int; public var currentState:int; public var exhaustion:int; public var milkEngorgement:int; public var dominant:int; public var extraPregChance:int; public var eSexP:int; public var silGrowthTime:int; public var ballSize:int; public var Amount1:TextField; public var Amount2:TextField; public var Amount3:TextField; public var Amount5:TextField; public var Amount6:TextField; public var Amount7:TextField; public var Amount8:TextField; public var Amount9:TextField; public var Amount4:TextField; public var gender:int; public var race:int; public var silRate:int; public var catCocks:int; public var teatPump:int; public var udderEngorgementLevel:int; public var Choice5Outline:MovieClip; public var saveGame:TextField; public var pregTempBool:Boolean; public var pregStatus:int; public var horseCocks:int; public var charmTime:int; public var equanChildren:int; public var rabbitAffinity:int; public var buttonChoice:int; public var level:int; public var lilaRep:int; public var alchemistLevel:int; public var day:int; public var foundTieden:Boolean; public var Choice10:TextField; public var Choice11:TextField; public var Choice12:TextField; public var appearanceText:TextField; public var lizanEggs:int; public var lizanChildren:int; public var cowAffinity:int; public var statPane:TextField; public var horse:int; public var eLib:int; public var ears:int; public var malonRep:int; public var clitPump:int; public var carryMod:int; public var silRep:int; public var knowPheromone:Boolean; public var eMaxHP:int; public var hyperHappyLevel:int; public var vagElastic:Number; public var horseAffinity:int; public var ePref:int; public var lizardCocks:int; public var eHP:int; public var mistressRep:int; public var babyFactLevel:int; public var boobTotal:int; public var tail:int; public var outputWindow:TextField; public var sen:int; public var Choice2Outline:MovieClip; public var eggTime:int; public var runMod:int; public var wolfPupChildren:int; public var babyFree:int; public var vagSizeMod:Number; public var clockPane:TextField; public var Amount10:TextField; public var Amount11:TextField; public var Amount12:TextField; public var teatSize:int; public var bgC:MovieClip; public var hairColor:int; public var hrs:int; public var foundSizCalit:Boolean; public var mentaUp:upArrow; public var SexP:int; public var Choice7Outline:MovieClip; public var heatTime:int; public var silLay:int; public var lilaPreg:int; public var bodyBuildLevel:int; public var DayPane:TextField; public var eItem:int; public var currentDayCare:int; public var levelUP:int; public var rabbitCocks:int; public var enticeMod:int; public var changeMod:Number; public var udderEngorgement:int; public var vagSize:int; public var masoPot:int; public var sMasoPot:int; public var showBalls:Boolean; public var foundOviasis:Boolean; public var ment:int; public var Choice11Outline:MovieClip; public var eMenta:int; public var hairLength:int; public var pregChanceMod:int; public var clitSize:int; public var udderPlay:Number; public var vagTotal:int; public var udders:Boolean; public var milkHPMod:int; public var lust:int; public var attireBot:int; public var eSen:int; public var hpUp:upArrow; public var currentItems:int; public var stashArray1:Array; public var stashArray2:Array; public var stashArray3:Array; public var nippleSize:int; public var lizardAffinity:int; public var SexPMod:Number; public var hour:int; public var lustUp:upArrow; public var itemArray1:Array; public var itemArray3:Array; public var breastSize:int; public var heat:int; public var itemArray2:Array; public var milkEngorgementLevel:int; public var mentaDown:downArrow; public var scrollBar:UIScrollBar; public var Choice4Outline:MovieClip; public var str:int; public var saveGameOutline:MovieClip; public var cockMoist:int; public var heatMaxTime:int; public var pheromone:int; public var humanChildren:int; public var wolf:int; public var cockPump:int; public var strDown:downArrow; public var eggRate:int; public var knot:Boolean; public var Choice9Outline:MovieClip; public var Choice1:TextField; public var Choice2:TextField; public var Choice3:TextField; public var Choice5:TextField; public var Choice6:TextField; public var Choice7:TextField; public var Choice8:TextField; public var Choice9:TextField; public var Choice4:TextField; public var pregArray:Array; public var lizard:int; public var coin:int; public var enemyID:int; public var hips:int; public var appearanceBox:MovieClip; public var cockSizeMod:Number; public var cumMod:Number; public var lilaMilk:int; public var region:TextField; public var jamiePreg:int; public var bunnionChildren:int; public var jamiePrev:int; public var minLust:int; public var senDown:downArrow; public var catAffinity:int; public var loadGameOutline:MovieClip; public var vulvaPump:int; public var eStr:int; public var Choice1Outline:MovieClip; public var pregnancyTime:int; public var eLust:int; public var silTied:Boolean; public var cat:int; public var hair:int; public var Choice6Outline:MovieClip; public var humanCocks:int; public var cockSize:int; public var malonPreg:int; public var rapeMod:int; public function MainTimeline(){ super(); addFrameScript(0, frame1); __setProp_scrollBar_Scene1_scrollBar_1(); } public function battleWin():void{ outputMainText("You walk away from the battle the victor and to the victor goes the spoils.", true); if (eCoin != 0){ outputMainText((("\r\rSomewhere on the passed out body (you probably don't want to know where) you find " + eCoin) + " coins."), false); doCoin(eCoin); }; if (eItem != 0){ outputMainText((("\r\rYou manage to obtain " + itemName(eItem)) + " from your opponent."), false); }; if (eSexP != 0){ outputMainText((("\r\rFor your efforts, you grow in experience, gaining " + eSexP) + " SexP!"), false); doSexP(eSexP); }; if (eItem != 0){ itemAdd(eItem); }; hrs = 2; doEnd(); } public function jamieEvent(tempInt:int):void{ if ((((jamieRep > 0)) && ((jamieRep < 9)))){ outputMainText("'U-Umm...' A meek voice speaks up from behind you as you explore the city.\r\rYou turn around to spot a familiar equan boy, Jamie. He shuffles in place, the thighs of his shorts bulging from his massive balls and a long tube of erect cock flesh bouncing up within his shirt. Best he try, he still has difficulty hiding them.\r\r'Umm... W-Would you mind helping me out again? I-I'll totally give you something for helping me. I-I'm still to shy to approach some of the girls here, I'm kinda, umm... 'big' for the ones that are my age.' He glances about with a blush.\r\rUnfortunately you explain to him that you haven't finished his event this release and he'll have to wait until next time to come again.", true); }; doEnd(); } public function doLoad(slot:int):void{ var so:SharedObject; var loadArray:Array; var itemLoadArray:Array; var stashLoadArray:Array; var stackLoadArray:Array; var stashStackLoadArray:Array; var pregLoadArray:Array; so = SharedObject.getLocal("NiminFetishFantasy"); loadArray = []; itemLoadArray = []; stashLoadArray = []; stackLoadArray = []; stashStackLoadArray = []; pregLoadArray = []; if (slot == 1){ loadArray = so.data.saveGame1; itemLoadArray = so.data.itemSave1; stashLoadArray = so.data.stashSave1; stackLoadArray = so.data.stackSave1; stashStackLoadArray = so.data.stashStackSave1; pregLoadArray = so.data.pregSave1; }; if (slot == 2){ loadArray = so.data.saveGame2; itemLoadArray = so.data.itemSave2; stashLoadArray = so.data.stashSave2; stackLoadArray = so.data.stackSave2; stashStackLoadArray = so.data.stashStackSave2; pregLoadArray = so.data.pregSave2; }; if (slot == 3){ loadArray = so.data.saveGame3; itemLoadArray = so.data.itemSave3; stashLoadArray = so.data.stashSave3; stackLoadArray = so.data.stackSave3; stashStackLoadArray = so.data.stashStackSave3; pregLoadArray = so.data.pregSave3; }; if (slot == 5){ loadArray = so.data.saveGame5; itemLoadArray = so.data.itemSave5; stashLoadArray = so.data.stashSave5; stackLoadArray = so.data.stackSave5; stashStackLoadArray = so.data.stashStackSave5; pregLoadArray = so.data.pregSave5; }; if (slot == 6){ loadArray = so.data.saveGame6; itemLoadArray = so.data.itemSave6; stashLoadArray = so.data.stashSave6; stackLoadArray = so.data.stackSave6; stashStackLoadArray = so.data.stashStackSave6; pregLoadArray = so.data.pregSave6; }; if (slot == 7){ loadArray = so.data.saveGame7; itemLoadArray = so.data.itemSave7; stashLoadArray = so.data.stashSave7; stackLoadArray = so.data.stackSave7; stashStackLoadArray = so.data.stashStackSave7; pregLoadArray = so.data.pregSave7; }; if (slot == 9){ loadArray = so.data.saveGame9; itemLoadArray = so.data.itemSave9; stashLoadArray = so.data.stashSave9; stackLoadArray = so.data.stackSave9; stashStackLoadArray = so.data.stashStackSave9; pregLoadArray = so.data.pregSave9; }; if (slot == 10){ loadArray = so.data.saveGame10; itemLoadArray = so.data.itemSave10; stashLoadArray = so.data.stashSave10; stackLoadArray = so.data.stackSave10; stashStackLoadArray = so.data.stashStackSave10; pregLoadArray = so.data.pregSave10; }; if (slot == 11){ loadArray = so.data.saveGame11; itemLoadArray = so.data.itemSave11; stashLoadArray = so.data.stashSave11; stackLoadArray = so.data.stackSave11; stashStackLoadArray = so.data.stashStackSave11; pregLoadArray = so.data.pregSave11; }; if (!loadArray[127]){ loadArray[127] = 0; }; trace(itemLoadArray); currentState = loadArray[0]; currentZone = loadArray[1]; str = loadArray[2]; ment = loadArray[3]; lib = loadArray[4]; sen = loadArray[5]; HP = loadArray[6]; lust = loadArray[7]; coin = loadArray[8]; day = loadArray[9]; hour = loadArray[10]; SexP = loadArray[11]; levelUP = loadArray[12]; level = loadArray[13]; runMod = loadArray[14]; rapeMod = loadArray[15]; cumMod = loadArray[16]; cockSizeMod = loadArray[17]; milkMod = loadArray[18]; carryMod = loadArray[19]; vagBellyMod = loadArray[20]; pregChanceMod = loadArray[21]; extraPregChance = loadArray[127]; pregTimeMod = loadArray[22]; enticeMod = loadArray[23]; milkHPMod = loadArray[96]; vagSizeMod = loadArray[97]; vagElastic = loadArray[98]; changeMod = loadArray[105]; HPMod = loadArray[140]; SexPMod = loadArray[141]; minLust = loadArray[142]; gender = loadArray[24]; race = loadArray[25]; body = loadArray[26]; dominant = loadArray[27]; hips = loadArray[28]; butt = loadArray[29]; tallness = loadArray[30]; skinType = loadArray[31]; tail = loadArray[32]; ears = loadArray[33]; hair = loadArray[93]; hairColor = loadArray[94]; hairLength = loadArray[95]; cockTotal = loadArray[34]; humanCocks = loadArray[35]; horseCocks = loadArray[36]; wolfCocks = loadArray[37]; catCocks = loadArray[38]; rabbitCocks = loadArray[108]; lizardCocks = loadArray[133]; cockSize = loadArray[39]; cockMoist = loadArray[40]; balls = loadArray[41]; ballSize = loadArray[42]; showBalls = loadArray[43]; knot = loadArray[44]; breastSize = loadArray[45]; boobTotal = loadArray[46]; nippleSize = loadArray[47]; udders = loadArray[48]; udderSize = loadArray[49]; teatSize = loadArray[50]; clitSize = loadArray[51]; vagTotal = loadArray[52]; vagSize = loadArray[53]; vagMoist = loadArray[54]; vulvaSize = loadArray[55]; attireTop = loadArray[56]; attireBot = loadArray[57]; weapon = loadArray[58]; pregRate = loadArray[59]; pregnancyTime = loadArray[61]; pregStatus = loadArray[62]; eggLaying = loadArray[109]; eggMaxTime = loadArray[110]; eggTime = loadArray[111]; eggRate = loadArray[126]; exhaustion = loadArray[63]; exhaustionPenalty = loadArray[64]; milkEngorgement = loadArray[65]; milkEngorgementLevel = loadArray[66]; udderEngorgement = loadArray[67]; udderEngorgementLevel = loadArray[68]; heat = loadArray[69]; heatTime = loadArray[70]; heatMaxTime = loadArray[71]; lactation = loadArray[72]; udderLactation = loadArray[60]; nipplePlay = loadArray[73]; udderPlay = loadArray[74]; blueBalls = loadArray[75]; teatPump = loadArray[76]; nipPump = loadArray[77]; cockPump = loadArray[78]; clitPump = loadArray[79]; vulvaPump = loadArray[80]; masoPot = loadArray[90]; sMasoPot = loadArray[91]; babyFree = loadArray[92]; charmTime = loadArray[135]; pheromone = loadArray[136]; eggceleratorTime = loadArray[137]; eggceleratorDose = loadArray[138]; bodyOil = loadArray[139]; humanAffinity = loadArray[81]; horseAffinity = loadArray[82]; wolfAffinity = loadArray[83]; catAffinity = loadArray[84]; cowAffinity = loadArray[85]; lizardAffinity = loadArray[106]; rabbitAffinity = loadArray[107]; fourBoobAffinity = loadArray[143]; lilaRep = loadArray[86]; lilaVulva = loadArray[112]; lilaMilk = loadArray[113]; lilaPreg = loadArray[114]; malonRep = loadArray[87]; malonPreg = loadArray[88]; malonChildren = loadArray[89]; mistressRep = loadArray[99]; jamieRep = loadArray[115]; jamiePrev = loadArray[116]; jamiePreg = loadArray[117]; silRep = loadArray[144]; silPreg = loadArray[145]; silRate = loadArray[146]; silLay = loadArray[147]; silGrowthTime = loadArray[148]; silTied = loadArray[149]; foundSoftlik = loadArray[128]; foundFirmshaft = loadArray[129]; foundTieden = loadArray[130]; foundSizCalit = loadArray[131]; foundOviasis = loadArray[132]; knowPheromone = loadArray[150]; babyFactLevel = loadArray[100]; bodyBuildLevel = loadArray[101]; hyperHappyLevel = loadArray[102]; alchemistLevel = loadArray[103]; currentDayCare = loadArray[104]; humanChildren = loadArray[118]; equanChildren = loadArray[119]; lupanChildren = loadArray[120]; felinChildren = loadArray[121]; cowChildren = loadArray[122]; lizanChildren = loadArray[123]; lizanEggs = loadArray[134]; bunnionChildren = loadArray[124]; wolfPupChildren = loadArray[125]; i = 0; while (i < pregLoadArray.length) { pregArray[i] = pregLoadArray[i]; i++; }; itemArray1 = itemLoadArray.slice(0, 13); itemArray2 = itemLoadArray.slice(13, 26); itemArray3 = itemLoadArray.slice(26); stashArray1 = stashLoadArray.slice(0, 13); stashArray2 = stashLoadArray.slice(13, 26); stashArray3 = stashLoadArray.slice(26); stackArray1 = stackLoadArray.slice(0, 13); stackArray2 = stackLoadArray.slice(13, 26); stackArray3 = stackLoadArray.slice(26); stashStackArray1 = stashStackLoadArray.slice(0, 13); stashStackArray2 = stashStackLoadArray.slice(13, 26); stashStackArray3 = stashStackLoadArray.slice(26); currentRegion.visible = true; region.visible = true; hideUpDown(); statPane.visible = true; statValuePane.visible = true; DayPane.visible = true; DayValuePane.visible = true; clockPane.visible = true; levelPane.visible = true; levelValuePane.visible = true; stats(0, 0, 0, 0); dayTime(0); doSexP(0); } public function loadG(e:MouseEvent):void{ loadGo(); } public function usableItem(ID:int):Boolean{ var tempBool:Boolean; tempBool = false; if (ID == 104){ return (true); }; if (ID == 106){ return (true); }; if (ID == 108){ return (true); }; if (ID == 109){ return (true); }; if (ID == 116){ return (true); }; if (ID == 117){ return (true); }; if (ID == 118){ return (true); }; if (ID == 119){ return (true); }; if (ID == 127){ return (true); }; if (ID == 232){ return (true); }; if (ID == 235){ return (true); }; return (tempBool); } public function hideAmount():void{ i = 1; while (i < 13) { viewAmount(i, false); i++; }; } public function itemName(ID:int):String{ var tempStr:String; tempStr = ("ITEM NAME ERROR " + ID); if (ID == 0){ tempStr = ""; }; if (ID == 1){ tempStr = "Test"; }; if (ID == 101){ tempStr = "Anc Claws"; }; if (ID == 102){ tempStr = "Imb Shoes"; }; if (ID == 103){ tempStr = "Dry Sand"; }; if (ID == 104){ tempStr = "Milker"; }; if (ID == 105){ tempStr = "Cat's Meow"; }; if (ID == 106){ tempStr = "Penis Pump"; }; if (ID == 108){ tempStr = "Blood Gge"; }; if (ID == 109){ tempStr = "Edu Egg"; }; if (ID == 110){ tempStr = "Reduction"; }; if (ID == 111){ tempStr = "Skin Balm"; }; if (ID == 112){ tempStr = "Bol Juice"; }; if (ID == 113){ tempStr = "Taint Leaf"; }; if (ID == 114){ tempStr = "Sweet Sap"; }; if (ID == 115){ tempStr = "Poultice"; }; if (ID == 116){ tempStr = "Dagger"; }; if (ID == 117){ tempStr = "Hammer"; }; if (ID == 118){ tempStr = "Saber"; }; if (ID == 119){ tempStr = "Whip"; }; if (ID == 120){ tempStr = "Neuter"; }; if (ID == 121){ tempStr = "TS Soft"; }; if (ID == 122){ tempStr = "TS Firm"; }; if (ID == 123){ tempStr = "TS Tied"; }; if (ID == 124){ tempStr = "TS Siz"; }; if (ID == 125){ tempStr = "TS Ovi"; }; if (ID == 126){ tempStr = "Oas Water"; }; if (ID == 127){ tempStr = "Tail Spike"; }; if (ID == 200){ tempStr = "Lila's Gift"; }; if (ID == 201){ tempStr = "Milk C Pois"; }; if (ID == 202){ tempStr = "Co-Snak Ven"; }; if (ID == 203){ tempStr = "Wolf Fur"; }; if (ID == 204){ tempStr = "Sm Pouch"; }; if (ID == 205){ tempStr = "Sm Pouch"; }; if (ID == 206){ tempStr = "Trinket"; }; if (ID == 207){ tempStr = "Cock Carv"; }; if (ID == 208){ tempStr = "Blo Berry"; }; if (ID == 209){ tempStr = "Grain"; }; if (ID == 210){ tempStr = "Puss Fruit"; }; if (ID == 211){ tempStr = "DairE Pill"; }; if (ID == 212){ tempStr = "Red Mush"; }; if (ID == 213){ tempStr = "Wet Cloth"; }; if (ID == 214){ tempStr = "Lon Milk"; }; if (ID == 215){ tempStr = "Lon Pendant"; }; if (ID == 216){ tempStr = "Pink Ink"; }; if (ID == 217){ tempStr = "Egg Jelly"; }; if (ID == 218){ tempStr = "Bul Berry"; }; if (ID == 219){ tempStr = "Lizan Egg"; }; if (ID == 220){ tempStr = "Blondie"; }; if (ID == 221){ tempStr = "Puss Juice"; }; if (ID == 222){ tempStr = "Kinky Carr"; }; if (ID == 223){ tempStr = "Eq Snack"; }; if (ID == 224){ tempStr = "Lila's Milk"; }; if (ID == 225){ tempStr = "Body Wash"; }; if (ID == 226){ tempStr = "Felin Tea"; }; if (ID == 227){ tempStr = "Oral Wash"; }; if (ID == 228){ tempStr = "Body Oil"; }; if (ID == 229){ tempStr = "Leath Strap"; }; if (ID == 230){ tempStr = "Eggcelerator"; }; if (ID == 231){ tempStr = "Dess Sand"; }; if (ID == 232){ tempStr = "Flying Carp"; }; if (ID == 233){ tempStr = "A-Grav Rock"; }; if (ID == 234){ tempStr = "Rein Charm"; }; if (ID == 235){ tempStr = "Fell Rod"; }; if (ID == 236){ tempStr = "Recept Bell"; }; if (ID == 500){ tempStr = "Milk Bottle"; }; if (ID == 501){ tempStr = "Milk Jug"; }; if (ID == 502){ tempStr = "Milk Barrel"; }; if (ID == 503){ tempStr = "Lust Draft"; }; if (ID == 504){ tempStr = "Rejuv Pot"; }; if (ID == 505){ tempStr = "Bad Exper"; }; if (ID == 506){ tempStr = "Exp Preg"; }; if (ID == 507){ tempStr = "Ball Sweller"; }; if (ID == 508){ tempStr = "S Lust Draft"; }; if (ID == 509){ tempStr = "S Rejuv Pot"; }; if (ID == 510){ tempStr = "S Bad Exper"; }; if (ID == 511){ tempStr = "S Exp Preg"; }; if (ID == 0x0200){ tempStr = "S Ball Sweller"; }; if (ID == 513){ tempStr = "Gen Swap"; }; if (ID == 0x0202){ tempStr = "Maso Pot"; }; if (ID == 515){ tempStr = "Black Dye"; }; if (ID == 516){ tempStr = "Baby Free"; }; if (ID == 517){ tempStr = "Pot Pot"; }; if (ID == 518){ tempStr = "S Gen Swap"; }; if (ID == 519){ tempStr = "S Maso Pot"; }; if (ID == 520){ tempStr = "Red Dye"; }; if (ID == 521){ tempStr = "S Baby Free"; }; if (ID == 522){ tempStr = "S Pot Pot"; }; if (ID == 523){ tempStr = "Cum Vial"; }; if (ID == 524){ tempStr = "Cum Bottle"; }; if (ID == 525){ tempStr = "Cum Jug"; }; if (ID == 526){ tempStr = "Cum Barrel"; }; if (ID == 527){ tempStr = "Good Egg"; }; if (ID == 528){ tempStr = "Bad Egg"; }; if (ID == 529){ tempStr = "Strange Egg"; }; if (ID == 530){ tempStr = "Charmed Egg"; }; if (ID == 531){ tempStr = "Divine Egg"; }; if (ID == 532){ tempStr = "Pheromone"; }; return (tempStr); } public function milkAmount(origin:int):int{ var tempNum:int; tempNum = 0; if (origin == 1){ if (milkEngorgementLevel == 0){ if (boobTotal == 2){ tempNum = (((((breastSize + 1) * (lactation + milkMod)) * (lactation + milkMod)) * 2) * 2); }; if (boobTotal == 4){ tempNum = (((((breastSize + 1) * (lactation + milkMod)) * (lactation + milkMod)) * 2) * 4); }; if (boobTotal == 6){ tempNum = (((((breastSize + 1) * (lactation + milkMod)) * (lactation + milkMod)) * 2) * 3.5); }; }; if (milkEngorgementLevel == 1){ if (boobTotal == 2){ tempNum = (((((breastSize + 1) * (lactation + milkMod)) * (lactation + milkMod)) * 3) * 2); }; if (boobTotal == 4){ tempNum = (((((breastSize + 1) * (lactation + milkMod)) * (lactation + milkMod)) * 3) * 4); }; if (boobTotal == 6){ tempNum = (((((breastSize + 1) * (lactation + milkMod)) * (lactation + milkMod)) * 3) * 3.5); }; }; if (milkEngorgementLevel == 2){ if (boobTotal == 2){ tempNum = (((((breastSize + 1) * (lactation + milkMod)) * (lactation + milkMod)) * 4) * 2); }; if (boobTotal == 4){ tempNum = (((((breastSize + 1) * (lactation + milkMod)) * (lactation + milkMod)) * 4) * 4); }; if (boobTotal == 6){ tempNum = (((((breastSize + 1) * (lactation + milkMod)) * (lactation + milkMod)) * 4) * 3.5); }; }; if (milkEngorgementLevel == 3){ if (boobTotal == 2){ tempNum = (((((breastSize + 1) * (lactation + milkMod)) * (lactation + milkMod)) * 6) * 2); }; if (boobTotal == 4){ tempNum = (((((breastSize + 1) * (lactation + milkMod)) * (lactation + milkMod)) * 6) * 4); }; if (boobTotal == 6){ tempNum = (((((breastSize + 1) * (lactation + milkMod)) * (lactation + milkMod)) * 6) * 3.5); }; }; if (milkEngorgementLevel > 0){ milkEngorgementLevel = 0; boobChange(-1); }; milkEngorgement = 0; }; if (origin == 2){ if (udderEngorgementLevel == 0){ tempNum = (((udderSize * (udderLactation + milkMod)) * (udderLactation + milkMod)) * 4); }; if (udderEngorgementLevel == 1){ tempNum = (((udderSize * (udderLactation + milkMod)) * (udderLactation + milkMod)) * 7); }; if (udderEngorgementLevel == 2){ tempNum = (((udderSize * (udderLactation + milkMod)) * (udderLactation + milkMod)) * 10); }; if (udderEngorgementLevel == 3){ tempNum = (((udderSize * (udderLactation + milkMod)) * (udderLactation + milkMod)) * 14); }; if (udderEngorgementLevel == 1){ udderEngorgementLevel = 0; udderChange(-1); }; if (udderEngorgementLevel == 2){ udderEngorgementLevel = 0; udderChange(-2); }; if (udderEngorgementLevel > 2){ udderEngorgementLevel = 0; udderChange(-3); }; udderEngorgement = 0; }; return (tempNum); } public function checkItem(ID:int):Boolean{ var tempBool:Boolean; var tempInt:int; tempBool = false; tempInt = currentItems; currentItems = 1; i = 1; while (i < 37) { if (itemID(i) == ID){ tempBool = true; }; if (i == 12){ currentItems = 2; }; if (i == 24){ currentItems = 3; }; if (i == 36){ currentItems = 1; }; i++; }; currentItems = tempInt; return (tempBool); } public function doDesert():void{ var chance:int; chance = percent(); if (chance <= 5){ outputMainText("You have encountered a sand witch!\r\r\r\rIt looks so tasty and full of ham, sitting on a plate on the sand in the middle of nowhere. You have no idea who could have possibly left it or if it's even worth tasting, considering who knows how long it has been sitting out in the sun like this...\r\rWill you eat it?", true); buttonConfirm(); doListen = function ():void{ if (buttonChoice == 6){ chance = percent(); if (chance <= 15){ outputMainText("You munch on the sandvich, enjoying its meaty goodness, letting it fill your stomach, so moist and delicious. However, an odd gurgling inside makes you worry...", true); fourBoobAffinity = 100; hrs = 2; doEnd(); } else { if (chance <= 35){ if ((((cockTotal > 0)) && ((vagTotal < (cockTotal + 1))))){ outputMainText("You munch on the sandvich, delighting in the flappy meat on your tongue, letting it fill your stomach, so moist and delicious. However, an odd gurgling inside makes you worry...", true); vagChange(0, ((cockTotal - vagTotal) + 1)); outputMainText((("\r\rOne more vagina than you have cock" + plural(1)) + ". Why that is will forever be a mystery...\r\rWhatever this strange lunch may have been for, it's gone now and you're left heading back with a bit more than you intended."), false); hrs = 2; doEnd(); } else { outputMainText("You munch on the sandvich, delighting in the flappy meat on your tongue, letting it fill your stomach, so moist and delicious. However, an odd gurgling inside makes you worry...", true); vagChange(0, 1); outputMainText("\r\rMaybe you were enjoying the licking of tasty flaps of meat a little too much?...\r\rWhatever this strange lunch may have been for, it's gone now and you're left heading back with a bit more than you intended.", false); hrs = 2; doEnd(); }; } else { if (chance <= 55){ outputMainText((((((((((("You nibble on the sandvich, the protein so filling. However, your chest quickly begins to feel warm, your " + nipDesc()) + " nipples standing erect and burning beneath your ") + clothesTop()) + ". Your hands quickly reach up to touch them and cup them just in time for milk to begin gushing out across the sand!\r\rThe springs of white fluid spew from your breasts, your ") + clothesTop()) + " rapidly becoming soaked while small rivers begin to form amongst the sand. You collapse to your knees, pulling ") + pullUD(1)) + " your ") + clothesTop()) + " to squeeze and pump your poor nipples as they fill the area with sustenance.\r\rWithin a few minutes, you have made several puddles around the dunes surrounding you, while your mammary glands come to a halt. You rub them gently, feeling their sensitivity arouse you a little, completely confused as to what just happened. The milking has stopped for now, but you still feel a bit... abundant nevertheless. You quickly toss your clothes back on and hurry away from the moist scene, unsure what the sandvich was possibly intended for."), true); milkMod++; doLust(20); stats(0, 0, 0, (2 * boobTotal)); hrs = 3; doEnd(); } else { if (chance <= 75){ outputMainText("You nom the sandvich to death, feeling it make you strong!", true); hrs = 2; doHP(150); doEnd(); } else { outputMainText("You take a bit of the sandvich and... urk! You suddenly feel green in the face as you realize a sandvich sitting out in the sun with this kind of heat... wouldn't have worked out very well. Once you finish expelling the rather spoiled goods, you drudge back to town feeling a bit sick.", true); HP = 1; hrs = 4; doHP(0); doEnd(); }; }; }; }; } else { outputMainText("Thinking it best to leave strange meats to themselves, you turn your back to the sandvich and walk away, feeling it taunting you from behind as you leave.", true); hrs = 1; doEnd(); }; }; } else { if ((((((chance <= 15)) && ((currentZone == 6)))) && ((silRep == 0)))){ outputMainText("Out of the corner of your eye, you spot a fluttering flash in the distance. Turning to view it more clearly, you can see it's literally flying over the sand, just a couple feet in the air. It seems to be scanning the ground for something, muzzle moving from side to side as it goes, sniffing away at the sandy dunes. A humanoid shape wrapped in a white hooded cloak, the most you can manage to make out are some long fuzzy ears, a lizard-like tail, some slight curvature to the apparently feminine figure, and large feathery wings that flutter gracefully to keep her aloft.", true); if ((((pheromone > 0)) && (((((((checkItem(200)) || (checkItem(215)))) || (checkItem(101)))) || (checkItem(102)))))){ outputMainText("\r\rShortly after you begin watching her, a wind picks up from behind you and heads in her direction. She pauses and sniffs at the air a few times, picking up an odd scent that seems to make her act a little funny. As she follows her nose towards its source, she sways back and forth a little, her hips twisting around as her thighs begin to rub together. She has to land on her sandle-protected paws as her wings fold inward, three finger-like talons at the ends of them awkwardly roaming about her breasts and down to her groin, functioning as hands. It seems her wings are her arms, being attached at her shoulders like a bird's.\r\rOnce she gets close enough, you can see more under her cloak. A fennec-like face matches the fuzzy ears above, which each seem to be larger than her head, and a hot blush seems to have washed across her cheeks that almost matches her auburn hair. Soft fur nearly covers her body, parted in front by the large belly-scales that plate across her chest and stomach, from her slightly elongated neck down to the tip of her tail. Supple draconic spikes peek out several inches along her spine, all the way down to the tip of her tail where they gently bend back and forth as her tail swishes from side to side anxiously. The clasp of her cloak manages to hide her otherwise naked breasts, a nice pair that matches her lithe frame, though with the way she fumbles to fondle herself she threatens to undo the clasp at any moment. Her lower bits are covered by a jeweled loin-cloth - a relatively scant outfit for the torrid weather - which seems to be... tenting as her other hand works at herself beneath.\r\rJust over 7 feet in height, she bends forward as her short muzzle follows the scent right up to you, immediately nuzzling against your body. The wing at her bosom stops playing with herself to hug around you, the fingers digging into your back tenderly as she tries to hold you close.\r\r\"You... You smell sooo good~\" A long tongue reaches out to lick up your chest, the pheromone that exudes from you enrapturing her keen senses while her tail wraps around your legs. \"I don't even think I've ever...\"\r\rHer sentence simply trails off as her hips push into you, a phallic object peaking in her loin cloth and running up your side, pre smearing along its path. You can feel a feminine attribute press against your thigh as she slowly begins to gyrate on it, her other wing also encompassing you to surround you with her vibrant feathers.", false); outputMainText(((" She gasps again and again as she tries to speak, but her words are lost to the smothering lust. Her talons pick at your " + clothesBottom()) + ", trying to burrow her way in for a more intimate connection, but her lack of mental coherence makes the effort futile.\r\rHowever, as her nuzzling brings her muzzle closer to your pack, she begins to sniff again. Her voice wavers much less as she speaks; not undone by the lust this time, \"M-Magic?\"\r\rShe firmly presses into you as her muzzle dives into your pack for an even bigger whiff. \"Y-Yes, something neat in there...\" The sudden distraction seems to have helped her mind gain focus, able to make her think more clearly despite the thing that throbs against you. She leans back to look you directly in the eyes. Fear fills her own eyes, her normally shy and meek demeanor commanding her to flee, but even deeper beyond that you can see a lonely longing inside. Her cheeks more flushed with embarassment than arousal now, the situation already quite shameful and far out of her usual comfort zone, she takes a deep breath and ventures a chance.\r\r\"Would... Would you like to come to my home?\""), false); buttonConfirm(); doListen = function ():void{ if (buttonChoice == 6){ outputMainText((("Her eyes light up, her muzzle rushing in to kiss you. Lips locked for a moment, her eyes spring open as she catches her eagerness early. \"Heh, sorry... Umm... Hope you like flying?\"\r\rHer tail readjusts itself for a better grip around your " + buttDesc()) + " rump. And since her winged arms will be occupied with flying, her legs wind up cradling your back as she begins to take off, positioning you much lower down her body. You get a mighty whiff of arousal as pre drools over your lips, your face mashed up against the tip of the large erection in her loin cloth... Nevertheless, she avoids humping you too much as she focuses on remaining balanced in flight, giving you a chance to twist around and watch the sand fly by below. The two of you go higher and higher, giving you a fantastic view of the desert. You spot Oviasis in the distance and can clearly see the path to your destination: a large dune about 2 hours away on foot. You wouldn't have given much attention such a dune in your usual exploration, since it looks like many many many of the others, but as you fly over to the opposite side you can make out a large jutting stone overhanging a cave.\r\rThe strange woman takes you down and lands you gently atop the sand, giving you a good view of the outside of 'her place'. A simple tunnel burrowing into the ground beneath the rock, the entrance is decorated with all sorts of crystalline chimes that softly ring out with a slight breeze. There's also some painted barriers to keep the sand out as well as a large barrel of water and towels to allow somebody to remove any sand from themselves as well. Otherwise, you can't quite tell what's in the tunnel.\r\r\"Well, umm... This is my home!\""), true); doNext(); doListen = function ():void{ var getCum:int; outputMainText("Her eagerness kicks in once again as she grabs your hand and pulls you along. Inside numerous torches line the walls and keep it well lit, though that doesn't help give you any idea where you're going. You pass through several forks in the tunnel, this underground network seemingly quite large, with few markings to help guide you through. Nevertheless, you quickly find yourself in what appears to be a bedroom. Various outfits glitter with jewels along one wall while another has a large bed of fluffy sheets and another leads to more tunnels. You don't exactly have time to look around though, as she pulls you right to the bed and gently pushes you onto the plush sheets.\r\rTaking the hint, you work at removing your clothes as she hastily begins to drop her own. Then undone clasp falls away with the rest of her cloak, her average-sized breasts standing perk with nipples standing beyond the soft smooth scales. Her frame is rather small, despite her height, her body being quite thin and lithe, with her lush fur masking the toned muscles underneath. Then her hands fiddle with her loin cloth for a bit, gasping when the air touches her nude genitals as the cloth falls away. Hefty testicles squirm with seed beneath a sheath that hugs around the large erection. Slick and smooth, the shaft runs straight to the rounded rim of a thick head which tapers to a point that drools with pre. And between her thighs more slick lubricant runs down her fur, a distinctly feminine aspect hidden behind the big balls.", true); if (cockTotal > 0){ outputMainText((((((("\r\rShe crawls up your legs, licking at " + oneYour(1)) + " own ") + cockDesc()) + " phallic endowment") + plural(1)) + ", making sure it's nice and stiff. Climbing up onto the bed with you, she carefully lines up over the tip of your "), false); if (cockMoist < 5){ outputMainText("slick", false); } else { if (cockMoist < 9){ outputMainText("drooling", false); } else { if (cockMoist < 13){ outputMainText("pre-flooding", false); }; }; }; outputMainText(" appendage and slowly squats down onto it. The tips of her wings hold her testicles up to allow for a smooth landing upon your manhood and is prompt to let them knock against you as 'slow' just isn't going to cut it. In her pheromone induced state, the arousal having been overhwelming this whole time, she falls down onto the rod, ", false); if ((cockSize * cockSizeMod) < 36){ outputMainText("easily engulfing your whole length", false); } else { if ((cockSize * cockSizeMod) < 66){ outputMainText("her pussy squeezing around your thick girth as it seems to barely manage to swallow your entire length", false); } else { outputMainText("her pussy seemingly having trouble taking in your massive girth, your size much greater than her hole, yet her slit stretches more and more, her hips somehow widening to take you in, and even her belly bulges with scales easily spreading to take in all your cock-flesh", false); }; }; outputMainText(((", until her smooth scrotum finally slaps against your groin. She reaches down with her wings and her hands grab onto your " + boobDesc()) + " chest for balance as her legs begin to powerfully pump. Up and down she goes, wildly riding your bronco as it bucks inside of her in turn, her eyes looking distant as she pants and gasps, so lost with lust. Strands of pre fling about as her own stiff appendage swings about, swatting you again and again with wet splashes as it whacks against your front. You struggle a little to hold onto her thighs so you aren't sucked up into her by your cock from her voracious efforts and quite quickly you begin to feel that oh-so-familiar pressure beginning to build.\r\rWith a loud erotic vulpine howl, this strange woman shudders as she feels you spew within."), false); getCum = cumAmount(); if (getCum < 1000){ outputMainText(" Your hot load churns about her tunnel as you spray about, not a single drop slipping from her slit as her womb drinks it in.", false); } else { if (getCum < 5000){ outputMainText(" Your hot load forces her belly to visibly distend as you spray within, the grand amount of spunk churning around and drowning your gushing head, yet hardly any seems to spill from her slit as her womb drinks it in, thirsty for seed.", false); } else { outputMainText(" Your hot load forces her belly to expand, inflating as you spray within, the massive amount of spunk audibly churning within. However, only a fraction of the stuff spews back out through her slit, as her womb seems to gulp it down as though it were desparately thirsty for seed.", false); }; }; outputMainText(" Her own eruption begins, the bobbing cock launching thick threads of white creamy cum over your body, whipping them up and down as she continues to bounce upon you. Eventually, her legs give out from the intense orgasm and she falls forward with her wings outspread to shelter you both within her embrace, forcing your cock to bend and eventually fly out from her heated cunt to let it drizzle on the floor. She continues to spurt a bit of cum between the two of you, the smell of sex rapidly intensifying within the feather confines, her orgasm shortly diminshing as the scent overpowers your pheromones...", false); doLust((-(sen) * 2)); silPreg = 1; } else { if ((((vagTotal > 0)) && ((vagLimit() > 28)))){ outputMainText((((((("\r\rShe crawls up your legs, licking at " + oneYour(2)) + " own ") + vulvaDesc()) + " slit") + plural(2)) + ", making sure it's moist and large enough to fit. Climbing up onto the bed with you, she carefully lines up the tip of her male endowment with your female honey-hole, carefully wedging the head through your supple folds. However, your warmth around her genitals is too much, the intense arousal this entire time from your pheromones getting the best of her senses. She plows into your passage, "), false); if ((tallness / 2) < (vagSize * vagSizeMod)){ outputMainText("pushing your belly out from within, ", false); }; outputMainText((((((("until her balls slam against your " + buttDesc()) + " rear beneath. Straddling her own scrotum to grind her hidden slit against as she moves, she begins to thrust through your tender flesh, making her moan and whine from the fantastic sensations your pussy provides. Her wings curl around to embrace you and steady herself, trapping you both within a dome made by her feathers. The heat rapidly begins to build as she pounds into you vigorously, panting and moaning as she begins to drool from the overwhelming lust.\r\rIt doesn't take long before she let's out a loud erotic vulpine howl. Hot spunk floods through your womb, gushing and churning as she presses her breasts against your ") + boobDesc()) + " chest. Her eyes clench as you climax as well, your walls chewing upon her erection and making her twitch sporadically. The hot heavy feeling of your pussy around her cock proves to be too much, forcing her to pull out to let the cooler air kiss her wet shlong as it finishes its explosion between the two of you, spitting across her scales and fur and your ") + skinDesc()) + ". The smell of sex rapidly intensifies within the feather confines, her orgasm shortly diminshing as the scent overpowers your pheromones..."), false); doImpregnate(dominant); } else { if (vagTotal > 0){ outputMainText("\r\rNoticing she is far too large for you and still having the sense to not hurt you,", false); } else { outputMainText("\r\rNoticing a lack of any genitals to use,", false); }; outputMainText(((" she opts to simply lay down over you, straddling one of your thighs. Her balls push to either side as her slit behind presses against your " + skinDesc()) + ", her rod pushing across your belly. Her hands reach out to hug your head while her wings raise up, trapping you both within a dome made by her feathers. The heat rapidly begins to build between you two as she begins to grind vigorously, desparate to finally climax after having been so dreadfully aroused since she first caught onto your pheromones. Moaning and gasping aginst your face, she curls her back again and again to thrust her thick cock across your groin, threads of pre "), false); if (udders == true){ outputMainText(" smearing all over your udder.", false); } else { outputMainText(" trailing up and down your belly.", false); }; outputMainText((("\r\rIt doesn't take long before she lets out a low erotic vulpine howl. Hot spunk spews up between the two of you, trapped by her wings and raining down upon you. Her thighs clamp around your leg, her clitoris pulsing upon you " + skinDesc()) + " as the backside of her testicles are flooded with fem-cum. The smell of sex intensifies within the feathered confines, her orgasm quickly diminishing as the scent overpowers your pheromones..."), false); }; }; doNext(); doListen = function ():void{ outputMainText("This strange girl collapses on top of you, huffing and panting and ignoring the sticky mess. Her eyelids droop heavily, the expression on her face so ecstatic yet so exhausted from just the single orgasm, as though a much greater weight had finally been lifted from her, beyond that in her loins.\r\rIt takes her nearly an hour of laying on top of you, nuzzling and licking at you the whole while, before her mind finally returns to her. She blinks, as though finally realizing what just happened, and blushes heavily. Rolling off onto the bed beside you, she gasps. There's a bit of fear in her voice, as though her self-conscious self was regaining, and she turns away.\r\r\"I-I'm so sorry!,\" she spouts meekly. However, she turns back to look you in the eye, a sense of wonder and relief shining in her own. \"Th-Though... It was really nice to have some company for once.\" She smiles.", true); if (cockTotal > 0){ outputMainText(" She then looks down at her belly and rubs it with a hand, relishing the feeling of your seed in her womb. \"That was a lot more... fulfilling than I had imagined it would be.\" A glow seems to fill her expression as she croons over it.", false); }; outputMainText("\r\r\"Anyways, let me help clean you up, I see I've made a bit of a mess...\" Again she blushes, though this time it's more from embarassment at how much of a mess she made between the two of you rather than her shy nature. She lifts herself from the bed, her wings trying to cover her nude front in an attempt at modesty as she heads off into the tunnels to grab some towels. Her tail, on the other hand, is so happy from the experience that it lifts high, giving you a good view of her tight rump anyways. When she soon returns, she has somehow donned a new outfit in the time away, a simple robe of silken cloth that looks more suited for sleepwear than to go out into the desert in, especially with the way it hugs her curves and bulges leaving little to the imagination. Which, of course, in turn makes her blush again, her large ears turning red, as she realizes the indecency of the outfit while you stare at her. It's not something she had worn around others before and she hadn't thought about it...\r\rEventually, she helps clean up the majority of spunk from your body, rubbing your down from head to toe and trying not to focus too much on your naughty bits.\r\rOnce you're all cleaned up, she leads you back to the entrance to her den, knowing she somewhat interrupted your exploration. You note that the tunnel system seems quite extensive for just a single inhabitant, yet there is no sign of others...\r\r\"Well, umm... Thank you for coming to my place. You're welcome back any time. I... I do hope to see you again.\" She smiles awkwardly.\r\rYou give her a hug before you leave, being wrapped up in her feathers once more. And as you turn and step out from the rock overhang, she calls out for one last thing.\r\r\"Oh yeah! Hi, my name is Silandrias! What's yours?\".", false); hrs = 5; silRep = 1; doEnd(); }; }; } else { outputMainText("Your rejection falls harshly upon her, her ears pinning back against her hood and her tail swinging in between her legs. She jumps away from you, her wings flap around you as they release and snap back to cover herself. She steps backwards, her eyes peering through a couple feathers with tears welling up as she hides behind them, and she gulps to speak, \"Oh... I-I'm so sorry for what happened then!\"\r\rHer sandles kick up the sand as she turns to run away and after a few yards her wings unfurl for a speedier retreat.\r\r\rUnsure of who this stranger was or what exactly happened, it's the last you've seen of her.", true); silRep = -1; hrs = 2; doEnd(); }; }; } else { if (pheromone > 0){ outputMainText("\r\rShortly after you begin watching her, a wind picks up from behind you and heads in her direction. She pauses and sniffs at the air a few times, picking up an odd scent that seems to make her act a little funny. As she follows her nose towards its source, she sways back and forth a little, her hips twisting around as her thighs begin to rub together. She has to land on her sandle-protected paws as her wings fold inward, three finger-like talons at the ends of them awkwardly roaming about her breasts and down to her groin, functioning as hands. It seems her wings are her arms, being attached at her shoulders like a bird's.\r\rOnce she gets close enough, you can see more under her cloak. A fennec-like face matches the fuzzy ears above, which each seem to be larger than her head, and a hot blush seems to have washed across her cheek that almost matches her auburn hair. Soft fur nearly covers her body, parted in front by the large belly-scales that plate across her chest and stomach, from her slightly elongated neck down to the tip of her tail. Supple draconic spikes peek out several inches along her spine, all the way down to the tip of her tail where they gently bend back and forth as her tail swishes from side to side anxiously. The clasp of her cloak manages to hide her otherwise naked breasts, a nice pair that matches her lithe frame, though with the way she fumbles to fondle herself she threatens to undo the clasp at any moment. Her lower bits are covered by a jeweled loin-cloth - a relatively scant outfit for the torrid weather - which seems to be... tenting as her other hand works at herself beneath.\r\rJust over 7 feet in height, she bends forward as her short muzzle follows the scent right up to you, immediately nuzzling against your body. The wing at her bosom stops playing with herself to hug around you, the fingers digging into your back tenderly as she tries to hold you close.\r\r\"You... You smell sooo good~\" A long tongue reaches out to lick up your chest, the pheromone that exudes from you enrapturing her keen senses while her tail wraps around your legs. \"I don't even think I've ever...\"\r\rHer sentence simply trails off as her hips push into you, a phallic object peaking in her loin cloth and running up your side, pre smearing along its path. You can feel a feminine attribute press against your thigh as she slowly begins to gyrate on it, her other wing also encompassing you to surround you with her vibrant feathers.", false); outputMainText(((" She gasps again and again as she tries to speak, but her words are lost to the smothering lust. Her talons pick at your " + clothesBottom()) + ", trying to burrow her way in for a more intimate connection, but her lack of mental coherence makes the effort futile.\r\rYou can begin to see tears well up in her eyes from her failing efforts, her hips grinding so harshly in desperation that you can feel the hard erection throb in preparation for an unrequited premature explosion. She whines and whimpers meekly as she begins to twitch."), false); doNext(); doListen = function ():void{ outputMainText("Wads of white spunk spew through this strange woman's loin cloth. It smatters across your body and paints her thighs as much runs down the inside of the cloth. Plenty of it washes up through her cleavage, finally undoing the clasp with the slick lubrication and making her nipples shine with the moisture as they're freed. She coos and shudders for a few more moments, the cum running out as it continues to pump, her other genitals making a mess upon your leg. Her head hangs low as she tries to regain her breathing, her mind slowly returning.\r\rThe smell of her own naughtiness fills her nose. Realizing what she had just dowe, she looks up at you with eyes wide in fear. Stricken with embarassment, her normally shy demeanor takes charge as she jumps back from you, her wings flapping around you as they let go and snap back around herself to cover the mess she's made of herself.\r\r\"I-I'm so sorry!\" She turns away and begins to run across the sand, her tail slinking between her legs. Just a few yards away, she kicks up into the air, her wings unfurling and taking her to the air for a speedier retreat. Wads of gooey stuff spills across the desert where she takes off, with more being flung around by the flapping of her wings, leaving a short trail before she disappears into the distance.\r\r\rLeft alone and covered in a stranger's lewd fluids, you're not quite sure how to react... You wipe some of it off, but the hot air quickly takes care of the rest. A little dazed, you turn and head back to town for now.", true); doLust(Math.floor((lib - (ment / 5)))); hrs = 2; doEnd(); }; } else { if (((((((checkItem(200)) || (checkItem(215)))) || (checkItem(101)))) || (checkItem(102)))){ outputMainText("\r\rShortly after you begin watching her, a wind picks up from behind you and heads in her direction. She pauses and sniffs at the air a few times, picking up a scent and slowly moving towards you as she uses her nose to follow it, not yet noticing your actual presence just yet.\r\rAs she moves closer, you can see more under her robe. A fennec-like face matches the fuzzy ears above, which each seem to be larger than her head, and long auburn hair. Soft fur nearly covers her body, parted down her front by the large belly-scales that plate across her chest and stomach, from her slightly elongated neck down to the tip of her tail. Supple draconic spikes peek out several inches along her spine, all the way down to the tip of her tail where they gently bend back and forth as her tail swishes from side to side anxiously. Her wings and arms are one in the same, each tipped with three finger-like talons that make up her hands. The clasp of her cloak manages to hide her otherwise naked breasts, a nice pair that matches her lithe frame, while her lower bits are covered by a jeweled loin-cloth - a relatively scant outfit for the torrid weather.\r\rAnd as she finally closes in on you, her paw-like feet touch down on the sand, little sandles protecting them from being burned. Just over 7 feet in height, she ducks down as her short muzzle continues to sniff about. She sniffs right up your legs and at your pack, quietly speaking to herself in a feminine voice.\r\r\"Ooo, definitely some magic emanating from here. I wonder what it could be? Crafted? Naturally imbued? A weapon? Or maybe a charm? It's been a few weeks since I've found anything neat around here to add to my collection, I can't wait to see it!\" Her fingers dig into your pack and start to shuffle around for the magical goody, but slowly comes to a stop as she looks up. It wasn't until now that she realizes that it has been attached to a person this whole time - you. She hops back with a blush, her head ducking between her shoulders with embarrassment. \"Oh dear, I'm so sorry! I-I was just hunting for magical treasures!...\" Her toes burrow awkwardly in the sand as she stands there. \"Umm... Bye!\"\r\rAs quickly as she appeared, she turns and dashes off upon her wings,", false); outputMainText(" her shyness getting the best off her.\r\rNot quite sure what just happened, you turn and head back for now.", false); hrs = 2; doEnd(); } else { outputMainText("\r\rNot long after you begin staring at her, she catches you out of the corner of her eye as well. She looks at you for only a moment, realizing you're gawking at her, and comes to an abrupt halt, her chest bouncing from the stop. Meekly, she slowly flits backwards and then flies up over a dune, shyly avoiding your presence as she disappears.\r\rWith no sign of her anymore, you shrug and move along.", false); hrs = 1; doEnd(); }; }; }; } else { if (chance <= 40){ outputMainText("Walking across the hot sand, you hear wind picking up nearby. Afraid it may be a sandstorm, you begin to rush for cover behind a dune but come to a halt as you spot a column of whirling sand coming towards you. No matter which way you run, the dust devil matches your movements, as though it had a sort of intelligence. Any plants it touches in its path are quickly sucked dry, left as shriveled shrunken husks. A dessicating dust devil, this sentient creature seeks out warm moisture to continue its life, even if it means sucking it from the living. And it seems to have you in its sights.", true); doNext(); doListen = function ():void{ enemyID = 102; currentState = 2; enemyBaseStats(); eMaxHP = eHP; doBattle(); }; } else { if (chance <= 65){ outputMainText("While roaming about the desert, a sudden sandstorm kicks up around you, greatly obscuring your view. Maybe you should turn back and head out of the desert before you get lost. Would you like to press on?", true); buttonConfirm(); doListen = function ():void{ if (buttonChoice == 6){ if (currentZone == 6){ if (percent() <= 50){ outputMainText("You put your shoulder to the wind and press on, having no idea where you're going as your path is completely hidden by the blowing sand. Eventually, however, you break through the desert to large fields of swaying grass, free from the storm, and signs of civilization come into view. Large tents flutter in the breeze, made from canvas held up by rocks and logs, with a few smaller brick buildings here and there. You can hear the soft clapping of hard feet everywhere, as you spot several large horse-like people walk and dash about.\r\rYou have now entered the Equan home-city of Firmshaft! Although, looking behind you, there seems to be no sign of the path you just took. Getting back might be a bit difficult...", true); regionChange(2); if (foundFirmshaft == false){ foundFirmshaft = true; }; hrs = 4; doEnd(); } else { outputMainText("You put your shoulder to the wind and press on, having no idea where you're going as your path is completely hidden by the blowing sand. Eventually, however, you break through the desert into a dense vegetation with trees surrounding you, protecting you from the storm. You begin to see various wooden structures built amongst the canopy as you continue. Rope-bridges and circular huts everywhere, with lithe cat-like people walking about or jumping from branch to branch. The path leads you right to one of the few spiraling ramps that encircles the trees, bringing you up to the tree-born city.\r\rYou have now entered the Felin home-city of Siz'Calit! Although, looking behind you, there seems to be no sign of the path you just took. Getting back might be a bit difficult...", true); regionChange(4); if (foundSizCalit == false){ foundSizCalit = true; }; hrs = 4; doEnd(); }; } else { if ((((currentZone == 2)) || ((currentZone == 4)))){ outputMainText("You put your shoulder to the wind and press on, having no idea where you're going as your path is completely hidden by the blowing sand. Eventually, however, you break through into an area sheltered from the wind by large rock formations. As you blink and brush the sand from your eyes, you're left in awe by the paradise before you.\r\rAn oasis somewhere within the desert, hidden within a ring of tall rock formations and mountains, you can see the water sparkle from here and the palm trees sway lazily around it. And all along the rocks, built into caves and sprawled across the beaches, reptillian people have made there home here, relaxing and enjoying their gorgeous habitat.\r\rYou have now entered the Lizan home-city of Oviasis! Though thanks to the storm you have no idea how you got here or how to get back...", true); regionChange(6); if (foundOviasis == false){ foundOviasis = true; }; hrs = 4; doEnd(); }; }; } else { outputMainText("You return from whence you came, avoiding any unwanted sand in your cracks.", true); hrs = 1; doEnd(); }; }; } else { if ((((hour > 8)) && ((hour <= 20)))){ outputMainText("The hot sun beating down upon the arid sand is nearly stifling.", true); if (skinType == 3){ outputMainText(" However, your scaley exterior was made to protect you from such circumstances, conserving your moisture and reflecting much of the rays to prevent you from getting too hot.", false); } else { if (bodyOil > 0){ outputMainText(" However, the oil that covers your body reflects most of the bad rays and helps retain some of your moisture, preventing you from becoming too hot.", false); } else { if (((((lactation + milkMod) > 3)) && ((milkEngorgementLevel > 2)))){ outputMainText(" However, the leaking of your breasts provides you with a steady supply of excess milk to sip as you explore, preventing you from becoming dehydrated.", false); } else { if (((((udderLactation + milkMod) > 3)) && ((udderEngorgementLevel > 2)))){ outputMainText(" However, the leaking of your udder provides you with a steady supply of excess milk to sip as you explore, preventing you from becoming dehydrated.", false); } else { if ((((((((cockMoist > 3)) && ((lust > 75)))) || ((((cockMoist > 6)) && ((lust > 50)))))) || ((((cockMoist > 9)) && ((lust > 25)))))){ outputMainText(((((" However, you cup your hands over the tip" + plural(1)) + " of your slime-dripping cock") + plural(1)) + " so you can gulp down some of the thick liquid, replenishing some of your water to prevent dehydration."), false); } else { if ((((((((vagMoist > 3)) && ((lust > 75)))) || ((((vagMoist > 6)) && ((lust > 50)))))) || ((((vagMoist > 9)) && ((lust > 25)))))){ outputMainText(((" However, you cup your hands over your slime-dripping " + vulvaDesc()) + " vulva so you can gulp down some of the thick liquid, replenishing some of your water to prevent dehydration."), false); } else { outputMainText(" So much so that you wind up with a touch of heat exhaustion, making you tired and aching.", false); exhaustion = (exhaustion + 5); stats(0, 0, -1, 0); doHP(-(Math.floor(((30 + (15 * level)) / 4)))); }; }; }; }; }; }; hrs = 2; doEnd(); } else { outputMainText("The desert night with the dry air is bitterly cold.", true); if (skinType == 2){ outputMainText(" However, your coat of fur helps insulate you, keeping you plenty warm.", false); } else { if (attireTop == 6){ outputMainText(" However, the latex suit you wear helps insulate you, keeping you plenty warm.", false); } else { if ((((breastSize > 25)) || ((((boobTotal > 2)) && ((breastSize > 17)))))){ outputMainText(" However, your masses of plentiful breast-flesh provides enough warmth to not freeze.", false); } else { if (pregnancyTime > 200){ outputMainText(((" However, the " + bellyDesc()) + " belly you wield and the life within emanates so much heat to stave off freezing."), false); } else { if (((((cockSize * cockSizeMod) > 60)) || (((((cockSize * cockSizeMod) > 45)) && ((cockTotal > 2)))))){ outputMainText(((((" However, you hold close your " + cockDesc()) + " appendage") + plural(1)) + ", providing you with enough warmth to not freeze"), false); } else { outputMainText(" So cold that you nearly freeze, causing some damage and weakening you.", false); stats(-1, 0, 0, 0); doHP(-(Math.floor(((30 + (15 * level)) / 3.5)))); }; }; }; }; }; hrs = 2; doEnd(); }; }; }; }; }; } public function doForest():void{ var chance:int; chance = percent(); if (chance <= 25){ outputMainText("Walking through the forest, you begin to hear footsteps mix with your own... As you pause to listen in, a creature jumps out before you! A lone wolf, it growls, ready to attack. And judging by the red rod that bobs beneath its belly, it's probably male, and probably frustrated after some failed encounter with a female...", true); doNext(); doListen = function ():void{ enemyID = 201; currentState = 2; enemyBaseStats(); eMaxHP = eHP; doBattle(); }; }; if ((((chance > 25)) && ((chance <= 50)))){ outputMainText("You hear a hiss from behind a tree. Stopping cautiously, you manage to avoid stepping on a particularly dangerous snake. The cock-snake. Aptly named due to its head looking much like the glans of a human cock, this breed of snake is also known to devour that of the same... And if its opponent doesn't have one, they soon will.", true); doNext(); doListen = function ():void{ currentState = 2; enemyID = 101; enemyBaseStats(); eMaxHP = eHP; doBattle(); }; }; if ((((chance > 50)) && ((chance <= 75)))){ outputMainText("You hear ominous swishing through the trees around you...", true); if (percent() < (10 + runMod)){ outputMainText("\r\rYet you manage to run off before anything can catch you.", false); hrs = 1; doEnd(); } else { if (breastSize < 6){ outputMainText("\r\rPeach-colored tentacles lash out at you from the tree-branches above, catching you by surprise. They flail around your chest, feeling about and scratching it roughly.\r\rHowever, the tentacles seem to be uninterested and disappear as quick as they came, leaving you with a rather hurtful chest and wasted time.", false); doHP(-(Math.floor(((percent() / 10) + 2)))); hrs = 1; doEnd(); } else { if ((((lactation > 3)) || ((((boobTotal > 2)) && ((lactation > 2)))))){ outputMainText((("\r\rA mass of peach-colored tentacles falls from the tree-branches above. Some of the tentacles waver out towards you, mostly aiming at your " + boobDesc()) + " chest. They seem rather non-threatening, however, as the mass rolls back and forth on the forest floor, almost as though it were a stumbling drunk.\r\rDo you allow the tentacles to come closer?"), true); buttonConfirm(); doListen = function ():void{ if (buttonChoice == 6){ outputMainText((("Cautiously standing still, you wait as the tentacles come right up to your breasts. They caress your " + nipDesc()) + " nipples, seemingly able to smell the milk within your breasts, and they wiggle even more like a drunk... It seems as though the creature smelled your large amount of milk production as you approached and became intoxicated by it.\r\r\rDo you let the creature indulge itself?"), true); buttonConfirm(); doListen = function ():void{ if (buttonChoice == 6){ outputMainText((((((((("You pull your " + clothesTop()) + " ") + pullUD(1)) + ", letting your ") + boobDesc()) + " chest bob out, practically inviting it to partake of your motherly liquid. Not to forsake such an opportunity, the tentacled mass rolls up to you, the tentacles squirming about your ") + nipDesc()) + " nipples until they stand hard and erect. Yet, the tentacles pull away, caressing and hugging your body as the main mass comes right up to you.\r\rThe mass of tentacles part, revealing a feminine face, slender and beautiful, with eyes closed. The tentacles dance atop her head, seemingly replacing her hair. Looking down, you can see more of her lithe body, thin with milky skin. Two breasts, barely handfuls, wobble upon her chest as tentacles, particularly thinner than the rest, dance about where her nipples would be. Overall, she seems quite short, maybe 4 feet tall at most, while the mass of tentacles could easily reach 6 feet in height."), true); doNext(); doListen = function ():void{ outputMainText((((((("The fair face moves up to one of your " + boobDesc()) + " breasts, the little mouth yawning wide to fit one of your ") + nipDesc()) + " nipples. She latches on the best she can, suckling intently from your chest. You let out a gasp as her expert suckling makes your body grow warm, a delightful tingling sensation making you quiver. Milk gushes from your tits as she gulps it down. Tentacles much thicker than the rest droop from her hair, their tips opening into soft maws that suckle from and kiss the ") + skinDesc()) + " of your breasts, leaving none unattended. It doesn't take long before you body is wracked by an intense boobgasm..."), true); doNext(); doListen = function ():void{ outputMainText((("Gasping for air as you come down from your climax, the feminine face and all the tentacles collapse, leaving hardly any milk still dribbling from your " + nipDesc()) + " nipples. Checking the creature, she seems to have passed out in a drunken slumber. Her face seems content, with a small smile, her tentacles writhing lazily about her. Two tentacles in particular look surprisingly active, though. Her small breasts jiggle about as their tentacle-nipples stiffen and soften. They shiver as you run your hands along them, several feet long before you reach their tips. Short, narrow needles protrude from the tips of these tentacle-nipples and they dribble some pearlescant fluid excessivly. You take an empty vial from your bag and gather some of the fluid before heading on your way..."), true); doSexP(20); nipplePlay = (nipplePlay + 7); doLust(-(Math.floor(((percent() / 10) + ((breastSize * sen) / 10))))); milkAmount(1); itemAdd(201); hrs = 2; doEnd(); }; }; }; if (buttonChoice == 7){ outputMainText("You take the opportunity to run from the tentacles before the creature can come to its senses, easily avoiding it.", true); doSexP(7); hrs = 1; doEnd(); }; }; }; if (buttonChoice == 7){ outputMainText("You take the opportunity to run from the tentacles before the creature can come to its senses, easily avoiding it.", true); doSexP(4); hrs = 1; doEnd(); }; }; } else { outputMainText((((((((((("\r\rPeach-colored tentacles lash out at you from the tree-branches above, catching you by surprise. They flail around your " + boobDesc()) + " chest, feeling about and scratching it roughly. They pull back for a moment, but before you can recoup from your confused stupor, even more come flying out from the trees, this time whipping around your wrists and ankles.\r\rStruggle as you may, you can't seem to wrench yourself free. You can only watch in fear as more tentacles pull your ") + clothesTop()) + " away and roam about your ") + boobDesc()) + " breasts. They poke and tease at your ") + nipDesc()) + " nipples, causing them to stand hard and erect. Then, short narrow needles draw out of two particularly thinner tentacles. They drip with some sort of pearlescant fluid and they plunge gently into each of your ") + boobTotal) + " fleshy masses..."), false); doNext(); doListen = function ():void{ boobChange(1); outputMainText((((("A sudden feeling of warmth overcomes you. Your breasts feel especially hot, heaving with your breath. Staring intently, you even notice them grow slightly in size.\r\rA moment later, your head jerks back as an intense feeling of fullness and swelling engulfs your sensitive tits. You recoil just in time to see streams of white liquid spew from your throbbing, " + nipDesc()) + " nipples. Milk continues to gush for a while, as more tentacles come close. These are much thicker than the ones with needles and their tips open into wet, soft maws. Each one latches onto your lactating breasts and begin to suckle...\r\rYou feel slightly light-headed from the fuzzy warmth that engulfs you, the pleasurable slurping of the hungry tentacles sucking you dry. Eventually, the tantalizing efforts make your body quiver, wracked by a strong orgasm... from your ") + boobDesc()) + " breasts."), true); doNext(); doListen = function ():void{ outputMainText((((("A minute later, the tentacles retract from whence they came, leaving you to collapse to your knees. Your breasts still feel larger than before, especially when you put your " + clothesTop()) + " back into place. Wet blotches seep across the fabric, your ") + nipDesc()) + " nipples still dribbling with milk..."), true); lactChange(1, 1); milkAmount(1); nipplePlay = (nipplePlay + 6); doSexP(10); doLust(-(Math.floor(((percent() / 20) + ((breastSize * sen) / 10))))); doHP(-(Math.floor((percent() / 10)))); hrs = 2; doEnd(); }; }; }; }; }; }; if (chance > 75){ outputMainText("After a few hours of being lost and randomly wandering through the maze of trees, you come across a path. Would you like to follow it?", true); buttonConfirm(); doListen = function ():void{ if (buttonChoice == 6){ if (currentZone == 1){ outputMainText("Following the path, the trees grow slightly sparser as you come upon a large clearing. Most of the clearing has been walled off by tree-trunks lashed together with rope. You hear some vicious growls, but also plenty of coherent speech, echoing from behind the wall. A whole bustling city. The path you followed brings you right to the front gates, where furry wolf-like guards kindly greet you and allow you to pass.\r\rYou have now entered the Lupan home-city of Tieden! Although, looking behind you, there seems to be no sign of the path you just took. Getting back might be a bit difficult...", true); regionChange(3); if (foundTieden == false){ foundTieden = true; }; hrs = 4; doEnd(); } else { if (currentZone == 3){ outputMainText("Following the path, the trees grow much sparser opening up to rolling hills. Not far, you see tall buildings of wood and stone, with open streets of dirt and pebbles, nestled between the hills. Fur-less people move all about, busy doing odd jobs or having fun.\r\rYou have found the Human home-city of Softlik! Although, looking behind you, there seems to be no sign of the path you just took. Getting back might be a bit difficult...", true); regionChange(1); if (foundSoftlik == false){ foundSoftlik = true; }; hrs = 4; doEnd(); }; }; } else { outputMainText("You return from whence you came.", true); hrs = 1; doEnd(); }; }; }; } public function itemAdd(ID:int):void{ itemGainArray.push(ID); } public function doSizCalit():void{ var chance:int; var getMilk:int; chance = percent(); if ((((chance <= 20)) || ((((lilaRep > 3)) && ((chance <= 35)))))){ trace(((("lila rep " + lilaRep) + ", lilapreg ") + lilaPreg)); if (lilaPreg > 100){ outputMainText("'Hewwo~!' Little Lila greets you cheerfully as she spots you, running up to latch onto your waist.", true); if (lilaMilk == 0){ outputMainText(" Her sundress seems fine and dry until she gets excited by your presence, with small blotches beginning to darken around her many nipples.", false); } else { if (lilaMilk <= 2){ outputMainText(" Small blotches already adorn her sundress, with dark trails running down beneath as she becomes excited by your presence. Warm drops splash across your feet as she connects, milk dripping from her hem-line.", false); } else { if (lilaMilk <= 5){ outputMainText(" Trails of milk blotch their way down her sundress, dripping across the wood of the felin 'street' as she runs, her nipples forming peaks in the fabric.", false); } else { if (lilaMilk <= 8){ outputMainText(" Drops of milk visibly form outside of her sundress as it soaks through, her puffy stiff nipples showing through the mildly-translucent wet fabric. You can see further beyond that a few of her friends had been following her, a couple with white mustaches. Though as she squeezes against you with the embrace, you can feel more warm moistness spray out about your legs.", false); } else { if (lilaMilk <= 12){ outputMainText(" She seems to have left behind a group of friends, some with white mustaches. There's a slight extra bounce to her sundress as her swollen areoles and perk engorged nipples bulge through the fabric, almost completely visible with its wetness. As she squeezes you, you feel plenty more warm moistness drizzle down about your legs.", false); } else { if (lilaMilk <= 18){ outputMainText(" She seems especially happy to see you, escaping from her group of thirsty friends. Her breasts form small mounds in her sundress simply from their engorgement, her puffy nipples sticking out even further, clearly visible through the wet fabric. A hand squishes a couple in her grip before she reaches you, forcing spurts of milk through the dress with a blush of pleasure on her face. When she finally hugs you, she squeezes even more to relieve some of the milk out across your legs and forming a puddle beneath you.", false); } else { if (lilaMilk <= 19){ outputMainText(((" Though you can hardly call it 'running'; more like a fast paced walk as she's careful to reduce the bouncing of her many heavily engorged and swollen breasts. Even the slightest jounce of her sundress across her extremely noticeable nipples - the fabric translucent and clingy from its wetness - causes her to gasp and a spurt of milk to shoot out. A hand roams about, trying to attend to them all with even more streams gushing. She even seems quite popular, drawing the eyes and smiles of many nearby felins as they consider how tasty she must be. And as she squeezes you, you hear another meek moan escape her lips as your " + clothesBottom()) + " becomes drenched with her milk."), false); }; }; }; }; }; }; }; if (lilaVulva == 0){ outputMainText(" A blotch also formed between her legs on the way over, her developing vulva growing a little wet in anticipation.", false); } else { if (lilaVulva <= 2){ outputMainText(" And her hips seemed to sway a bit more as she ran, trying to account for her thicker vulva. A blotch quickly formed over it just from the squeezing sensation and she sighs as she leans into you now.", false); } else { if (lilaVulva <= 5){ outputMainText(" And her tail twitched spastically behind her as she ran, her knees bending inward. You can tell her thighs were squishing her enlarged vulva, a blotch forming on her dress and drooling down to the hem by the time she reached you. She sighs lazily when as she leans into you now, her body calming a little with the halted rubbing.", false); } else { if (lilaVulva <= 8){ outputMainText(((" However, she also seemed to run with a firm grasp on her groin. Bigger than her hand, she moaned and gasped with each step as she approached you. Her vulva has gotten so big that she's afraid it'll fall off; it feels so obvious between her thighs. When she finally leans into you now, her hand is covered from the slime that seeped through her dress and smears over your " + clothesBottom()) + " as she grapples you."), false); } else { if (lilaVulva <= 12){ outputMainText(" And her legs spread out further as she ran, unable to squeeze together with the mass of sensitive flesh between her thighs. The large lips kiss and pluck at her dress, slightly visible through the fabric from the honey that drools around. When she comes to a halt against you, you can see webs of slickness stretched between her ankles with more drooling down her feet, all in her eagerness to get to you.", false); } else { if (lilaVulva <= 18){ outputMainText(((" And she ran especially bow-legged as well, thanks to the mound between her legs that both spreads her knees apart and presses against her dress. Some of the fabric seems to wedge into her folds, her slit nearly clearly visible through the lubrication-drenched fabric, her large clit protruding even further. She stopped every few feet on the way over to pull it out; a futile effort that was quickly negated a few feet later. As she embraces you, leaning into your body, her large vulva clasps around one of your legs, and for a short moment she gasps as she rides you up and down, her clit grinding into your " + skinDesc()) + "."), false); } else { if (lilaVulva <= 19){ outputMainText(" She also ran hunched forward, her nipples pointing more towards the walkway than at you and pushed out even further by her swollen tummy, thanks to the massive amount of flesh between her legs. When standing still, her labia hang just past the hem of her dress, the dangling inner lips nearly dragging over the wood, the whole mound outlined by the dress that lay on top of it and tenting forward as her clit grows at the sight of you. So she wouldn't kick it, she needed to lean down to wedge her large vulva back between her legs to keep it out of the way. Which resulted in the eyes of many felins going wide as her mound pushed up her dress, exposing her dribbling meaty lips and large clit to all that were behind her. As she leans against you now, her sensitive genitalia rest upon your foot, honey drowning it and trailing all the way back down the path she went. She pants a little, her long thick clit rubbing up and down your shin as she slowly, unintentionally, humps you.", false); }; }; }; }; }; }; }; outputMainText("\r\r", false); if (tallness <= 42){ outputMainText(" Smaller than her, she winds up lifting you into the air.", false); }; outputMainText(" She looks up at you with bright smile. 'Would yew like to do anything today?'", false); outputMainText(" Her face practically glows as stands there, her belly swollen with offspring and pushing her milky nipples out even further. It pushes between your own legs as she tries to hold you close, making her squeak as a baby kicks your leg from inside. If you weren't there to stop her, she would have probably fallen forward from the round thing, since it's almost larger than she is.\r\rHowever, she squeaks again as the babies seem to kick some more. Then you feel a flood of liquid splash around you feet, and it isn't her usual fluids...", false); doNext(); doListen = function ():void{ outputMainText("Lila quickly begins to groan and howl as she lets go of you, her eyes clenching in pain as she goes into labor. Looking all around, you call out for help, leaving some passerbys to run for the girl's mother. You then settle her down onto the wooden path, making sure she sits with her legs spread. You dive under her dress and prepare for the oncoming babies.", true); if (lilaMilk <= 5){ outputMainText(" A bit of milk drips down around her passage as her belly pushes at her lower pair of breasts.", false); } else { if (lilaMilk <= 12){ outputMainText(" Milk dribbles down from her breasts and obscures your view of her passage a bit, though you can still see well enough to not have any difficulty.", false); } else { if (lilaMilk <= 19){ outputMainText(" Milk spills like waterfalls over her passage as she hugs her belly in preparation, forcing you to tuck her dress in the way to soak up and divert what it can so you can see.", false); }; }; }; if (lilaVulva <= 5){ outputMainText(" Her slit spreads wide as she lets out a yowl, though thankfully the crowning head is relatively small and doesn't stretch her too terribly. You grab what you can as she pushes instinctively, her small body handling this amount of stress easily.", false); } else { if (lilaVulva <= 12){ outputMainText(" Her slit spreads a little as she lets out a mewl, her large nethers and ample lubrication letting the crowning head slip out while hardly stretching her. You can even reach in and grab the child slightly as she pushes, helping her get it out with relatively little stress for the small mother.", false); } else { if (lilaVulva <= 19){ outputMainText(" You actively reach inside her slit to spread her wide enough for the child to slip out easily, making her gasp surprisingly erotically. Her clit stands obscenely, one of her hands stroking it gently as though it ached more than the rest of her. With all of the lubrication she supplies, the baby easily slips through her passage, so quickly that you practically have to catch it before it flies out.", false); }; }; }; outputMainText((("\r\rThat's only the first as baby after baby pushes from her womb. All tiny felin kittens, you collect them up in your " + clothesTop()) + " as they softly mew their first breaths. Once finally empty, Lila heaves for breath, exhausted. You move around to support her from behind, cradling her in your arms, as she cradles her newborns in her own, pulling up her dress further to let them suckle.\r\rShe snuggles into your embrace and kisses your cheek. 'Now I'm the mommy and you're the daddy.' She giggles a little."), false); doNext(); doListen = function ():void{ outputMainText("Lila's mother shortly shows up in tears, happy to see her daughter is alright and her grandchildren doing quite well. You all eventually move back to their home, where they have already set up preparations for the newborns. Nice fluffy bedding right next to the larger bed in their bedroom.\r\rStaying the night, you make sure everything is well. Lila is quickly walking around again, despite her recent birth, but also quickly collapses onto the bed with a snore. Her mother assures you the babies will be alright and they'll be well taken care of, allowing you to cuddle up beside her daughter to rest as well.\r\rBy the next day, everything is perfectly fine. The babies are in quite good hands with their well experience grandmother and their loving mother. Your only concern, however, is how Lila began to grind up against you when she began to wake up...", true); hrs = 24; exhaustion = -24; stats(0, 1, 0, 0); doSexP(75); lilaPreg = -1; doEnd(); }; }; } else { if (lilaRep == 5){ outputMainText("'Hewwo~!' Little Lila greets you cheerfully as she spots you, running up to latch onto your waist.", true); if (lilaMilk == 0){ outputMainText(" Her sundress seems fine and dry until she gets excited by your presence, with small blotches beginning to darken around her many nipples.", false); } else { if (lilaMilk <= 2){ outputMainText(" Small blotches already adorn her sundress, with dark trails running down beneath as she becomes excited by your presence. Warm drops splash across your feet as she connects, milk dripping from her hem-line.", false); } else { if (lilaMilk <= 5){ outputMainText(" Trails of milk blotch their way down her sundress, dripping across the wood of the felin 'street' as she runs, her nipples forming peaks in the fabric.", false); } else { if (lilaMilk <= 8){ outputMainText(" Drops of milk visibly form outside of her sundress as it soaks through, her puffy stiff nipples showing through the mildly-translucent wet fabric. You can see further beyond that a few of her friends had been following her, a couple with white mustaches. Though as she squeezes against you with the embrace, you can feel more warm moistness spray out about your legs.", false); } else { if (lilaMilk <= 12){ outputMainText(" She seems to have left behind a group of friends, some with white mustaches. There's a slight extra bounce to her sundress as her swollen areoles and perk engorged nipples bulge through the fabric, almost completely visible with its wetness. As she squeezes you, you feel plenty more warm moistness drizzle down about your legs.", false); } else { if (lilaMilk <= 18){ outputMainText(" She seems especially happy to see you, escaping from her group of thirsty friends. Her breasts form small mounds in her sundress simply from their engorgement, her puffy nipples sticking out even further, clearly visible through the wet fabric. A hand squishes a couple in her grip before she reaches you, forcing spurts of milk through the dress with a blush of pleasure on her face. When she finally hugs you, she squeezes even more to relieve some of the milk out across your legs and forming a puddle beneath you.", false); } else { if (lilaMilk <= 19){ outputMainText(((" Though you can hardly call it 'running'; more like a fast paced walk as she's careful to reduce the bouncing of her many heavily engorged and swollen breasts. Even the slightest jounce of her sundress across her extremely noticeable nipples - the fabric translucent and clingy from its wetness - causes her to gasp and a spurt of milk to shoot out. A hand roams about, trying to attend to them all with even more streams gushing. She even seems quite popular, drawing the eyes and smiles of many nearby felins as they consider how tasty she must be. And as she squeezes you, you hear another meek moan escape her lips as your " + clothesBottom()) + " becomes drenched with her milk."), false); }; }; }; }; }; }; }; if (lilaVulva == 0){ outputMainText(" A blotch also formed between her legs on the way over, her developing vulva growing a little wet in anticipation.", false); } else { if (lilaVulva <= 2){ outputMainText(" And her hips seemed to sway a bit more as she ran, trying to account for her thicker vulva. A blotch quickly formed over it just from the squeezing sensation and she sighs as she leans into you now.", false); } else { if (lilaVulva <= 5){ outputMainText(" And her tail twitched spastically behind her as she ran, her knees bending inward. You can tell her thighs were squishing her enlarged vulva, a blotch forming on her dress and drooling down to the hem by the time she reached you. She sighs lazily when as she leans into you now, her body calming a little with the halted rubbing.", false); } else { if (lilaVulva <= 8){ outputMainText(((" However, she also seemed to run with a firm grasp on her groin. Bigger than her hand, she moaned and gasped with each step as she approached you. Her vulva has gotten so big that she's afraid it'll fall off; it feels so obvious between her thighs. When she finally leans into you now, her hand is covered from the slime that seeped through her dress and smears over your " + clothesBottom()) + " as she grapples you."), false); } else { if (lilaVulva <= 12){ outputMainText(" And her legs spread out further as she ran, unable to squeeze together with the mass of sensitive flesh between her thighs. The large lips kiss and pluck at her dress, slightly visible through the fabric from the honey that drools around. When she comes to a halt against you, you can see webs of slickness stretched between her ankles with more drooling down her feet, all in her eagerness to get to you.", false); } else { if (lilaVulva <= 18){ outputMainText(((" And she ran especially bow-legged as well, thanks to the mound between her legs that both spreads her knees apart and presses against her dress. Some of the fabric seems to wedge into her folds, her slit nearly clearly visible through the lubrication-drenched fabric, her large clit protruding even further. She stopped every few feet on the way over to pull it out; a futile effort that was quickly negated a few feet later. As she embraces you, leaning into your body, her large vulva clasps around one of your legs, and for a short moment she gasps as she rides you up and down, her clit grinding into your " + skinDesc()) + "."), false); } else { if (lilaVulva <= 19){ outputMainText(" She also ran hunched forward, her nipples pointing more towards the walkway than at you and pushed out even further by her swollen tummy, thanks to the massive amount of flesh between her legs. When standing still, her labia hang just past the hem of her dress, the dangling inner lips nearly dragging over the wood, the whole mound outlined by the dress that lay on top of it and tenting forward as her clit grows at the sight of you. So she wouldn't kick it, she needed to lean down to wedge her large vulva back between her legs to keep it out of the way. Which resulted in the eyes of many felins going wide as her mound pushed up her dress, exposing her dribbling meaty lips and large clit to all that were behind her. As she leans against you now, her sensitive genitalia rest upon your foot, honey drowning it and trailing all the way back down the path she went. She pants a little, her long thick clit rubbing up and down your shin as she slowly, unintentionally, humps you.", false); }; }; }; }; }; }; }; outputMainText("\r\r", false); if (tallness <= 42){ outputMainText(" Smaller than her, she winds up lifting you into the air.", false); }; outputMainText(" She looks up at you with bright smile. 'Would yew like to do anything today?'", false); if ((((lilaPreg <= 35)) && ((lilaVulva >= 11)))){ outputMainText(" You can feel her belly squish against you, bulging from being laden with vaginal flesh.", false); } else { if ((((lilaPreg <= 70)) && ((lilaPreg > 35)))){ outputMainText(" She also seems a bit wobbly as she stands there, unused to her growing gravid belly that presses into your legs and pushes her dainty breasts until they're flat against you, with milk squirting about. 'Eehee, Mommy said I'm going to be a Mommy too! I can't wait!", false); } else { if ((((lilaPreg <= 100)) && ((lilaPreg > 70)))){ outputMainText(" Her face practically glows as stands there, her belly swollen with offspring and pushing her milky nipples out even further. It pushes between your own legs as she tries to hold you close, making her squeak as a baby kicks your leg from inside. If you weren't there to stop her, she would have probably fallen forward from the round thing, since it's almost larger than she is. 'Mmm... Awe yew looking fowawd to being a daddy?,' she sighs pleasantly.", false); }; }; }; viewButtonOutline(1, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1); viewButtonText(1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1); buttonWrite(1, "Milk"); buttonWrite(3, "Suckle"); buttonWrite(5, "Lick"); buttonWrite(7, "Sex"); if (((((!((gender == 0))) && (((((cockSize * cockSizeMod) <= eVagLimit((8 + (5 * lilaVulva))))) && ((cockTotal > 0)))))) || ((((clitSize <= eVagLimit((20 + (12.5 * lilaVulva))))) && ((vagTotal > 0)))))){ Choice7.visible = true; }; buttonWrite(9, "Cat's Meow"); if (checkItem(105)){ Choice9.visible = true; }; buttonWrite(10, "Puss Juice"); if (checkItem(221)){ Choice10.visible = true; }; buttonWrite(12, "Mommy"); doListen = function ():void{ var getCum:int; if (buttonChoice == 1){ outputMainText("You make a hint with your fingers that she could use some milking, to which she sticks out her tongue at you. But she nods and agrees nevertheless and follows you back up to your place. You soon pull off her sundress, setting it on out in the heat to dry for now, leaving her quite naked.", true); lilaDesc(); outputMainText("\r\rLila grins as you return, her arms wrapping around her as you help her up onto your bed with you sitting beneath her.", false); if (lilaVulva > 12){ outputMainText(" Her slimy pussy easily slides between your legs and presses against the bed, which causes her to squirm at first until your thighs can close to anchor her down.", false); }; outputMainText(" Then your hands come around her body, gently pinching and kneading down her nipples as you begin to milk her.", false); if (lilaMilk == 0){ outputMainText(" Small drops bead around her areolas as you squeeze them gently, quickly running off and leaving each breast dry after just a several slow pumps. You continue milking the nipples even after they've dried up, just to make sure you fully empty them.", false); } else { if (lilaMilk <= 2){ outputMainText(" Thin trails of milk dribble down you fingers, requiring several good pumps to fully drain them.", false); } else { if (lilaMilk <= 5){ outputMainText(" Though the nipples feel quite stiff between your fingers, they easily squish in your grasp. A few thin streams spray into the air with the first couple of squeezes around each nipple, followed by a small steady flow of milk over your hands as you continue until they're empty.", false); } else { if (lilaMilk <= 8){ outputMainText(" It takes a couple fingers to thoroughly cover the puffy nipples, squishing gently in your grasp. Each time you press down on them, thin streams spray into the air while more milk collects on your hands and flows steadily down, quickly making your hands and the girl quite wet.", false); } else { if (lilaMilk <= 12){ outputMainText(" Squirts of milk spurt through the air each time you press down on her puffy nipples, causing the girl to squirm as she feels the noticeable release. Quite quickly milk dribbles down your hands even without your aid, the flow picking up whenever you do.", false); } else { if (lilaMilk <= 18){ outputMainText(" You cup her whole breasts as you slowly knead down them, thick spurts of milk spraying in all directions as you do. She lets out an erotic gasp as the milk forcibly escapes her, her purring growing louder as it continues to dribble profusely afterward. The milk spills about your hands and down her body, taking quite a while to fully empty just a single breast.", false); } else { if (lilaMilk <= 19){ outputMainText(" The girl lets out a meek cry every time your knead one of her breasts, the milk gushing out as her nipples stretch out further as you lightly tug on them. You can hear some of the stuff splatter across the floor, it has so much pressure behind it. And once you start a nipple, it's hard to stop it from flooding down her body as the drops refuse to stop forming and pouring down until you've milked out quite a large amount. When you do, you can feel her breast become much softer, her nipples easily malleable in your grip as they continue to dribble no matter what you do.", false); }; }; }; }; }; }; }; outputMainText((((((("\r\rAs you take your time to release her, she quickly relaxes against your " + boobDesc()) + " chest, closing her eyes and purring comfortably. Her hands slip between her legs. While you play with her breasts, milk flowing down into your combined laps, you can easily hear the sloshing of her fluids as her hands slip up and down through the cleft of her labia and rubbing her clitoris. Just as you finish off her lowest pair, your hands so close to her loins, she whimpers and seizes as she quietly orgasms in your lap, the bed growing moist beneath you.\r\rIt takes a few moments for her breathing to calm down again and her eyes to open. A slimy hand comes up and touches your cheek, pushing your other cheek towards her mouth as she kisses you. 'Hehe, it felt good... Thank yew~', she kisses you again.\r\rNow empty, she slides off your lap and onto the floor, strands of her feminine fluid stretching from her bottom to your lap, her tail catching and flicking them as it idly waves. As you stand, more of the stuff is stuck to your own ") + buttDesc()) + " rump, leaving your ") + clothesBottom()) + " thoroughly soaked. You help her put on her sundress, making sure it doesn't get stuck on a stray nipple or her tail, and she begins to head out.\r\r'I'll always hope to see you again,' she grins. Then she heads out, her friends waiting for her elsewhere in the city."), false); if ((((lilaMilk > 5)) && ((lilaMilk <= 12)))){ outputMainText("\r\rHowever, she was so milky that you managed to save a whole bottle of the stuff for youself, at least, though much of it consists of her other fluids as well.", false); itemAdd(224); }; if (lilaMilk > 12){ outputMainText("\r\rAnd she was so milky that you were able to save enough milk for two whole bottles! Though it's likely not all milk, thanks to all the mess.", false); itemAdd(224); itemAdd(224); }; doSexP(5); hrs = 3; doLust(((5 + (lib / 2)) - (ment / 2))); doEnd(); }; if (buttonChoice == 3){ outputMainText("You simply lick your lips a little and she giggles, catching onto the fact that you're thirsty. She has no qualms about it, quite happy that you enjoy her flavor so much, and nearly skips her way to your place. Before you're even in the doorway, she pulls off her sundress and stands naked outside while you take the outfit and put it somewhere out in the heat to dry for now.", true); lilaDesc(); outputMainText("\r\rLila grins happily as you kneel down in front of her, pushing back a bit so you're not obviously out on the walkway where everybody in the canopy can see. You open your mouth and slowly suck on each nipple.", false); if (lilaMilk == 0){ outputMainText(" It only takes a few good gulps before each nipple dries out, but you continue a little longer anyway to help please the girl.", false); } else { if (lilaMilk <= 2){ outputMainText(" The nipples quickly begin to dribble onto your tongue, the sweet taste warming your throat as you swallow again and again.", false); } else { if (lilaMilk <= 5){ outputMainText(" Almost having to bite down, the stiff nipples soon squish between your lips and spray thin streams into your mouth, then continue to dribble into your mouth providing several large gulps.", false); } else { if (lilaMilk <= 8){ outputMainText(" Your mouth has to stretch rather wide to latch onto the puffy nipples and each suck is met with thin streams of milk splattering about your mouth, easily providing you with a consistent drink of sweet warm liquid.", false); } else { if (lilaMilk <= 12){ outputMainText(" The perk, puffy nipples fill your mouth and each time you squeeze, the girl gasps as she feels the milk spray into your throat, the pressure noticeable releasing. You have to gulp twice between each suck, the milk builds up so quickly.", false); } else { if (lilaMilk <= 18){ outputMainText(" You can feel her engorged breast give a little as you push your face against them, the large milky nipples sliding across your tongue. She gasps as her nipple gushes into your mouth as you slowly bite down and continues to squirm as you try guzzle down her milk. Some of it even escapes your lips and dribbles down your face and onto the wood below.", false); } else { if (lilaMilk <= 19){ outputMainText(" She lets out a squeal as you first touch each breast, the thick nipple spraying milk into your face before you can even get it in your mouth. Then her tail flicks about behind her as she clenches down, the engorged breasts gush into your mouth with hardly any effort on your part. So much so that you can't seem to keep up with her output as plenty of it bubbles back out of your mouth and down your face, forming rivers through her fur.", false); }; }; }; }; }; }; }; outputMainText("\r\rShe purrs and mewls as you nip at her nipples, her hands hugging your head against her body. It doesn't take long before she's thrusting her hips and squeezing her thighs together to care for her hot loins. Being kind, you reach out and run your fingers through her sensitive cleft until she's manuevering to hump you back.\r\rThough it's not a powerful sensation, over the amount of time it takes you to drain each nipple her arousal quickly builds until sheets of lubricant begin to spill. She presses your face into her last nipple as she clenches down with a soft moan, her hips twitching and her legs tensing with the climax. When she's finally done, her legs give out and she falls towards you, toppling back out into the city.\r\rThe warm air licking across her moist pussy, it doesn't take long before she's squirming again. 'Eehee, I bettew get dwessed befowe somebody sees me on yew.'\r\rBefore she gets up, however, she slides down your body to give you a nice kiss on the forehead. Then she slides back up as she stretches out, her tail reaching high, and incidentally drags her stiff clit across your face and leaving you quite slick. And before you can get up, she grabs her dress and hurriedly dons it, hardly covering her rump and wet thighs, and runs off with some other task in mind.", false); if (lilaMilk > 8){ outputMainText("\r\rAll that milk does sit quite well in your stomach, however, and leaves you feeling rather good.", false); doHP((lilaMilk * 2)); exhaustion = (exhaustion - Math.floor((lilaMilk / 2))); }; doSexP(15); hrs = 3; doLust(((10 + lib) - ment)); doEnd(); }; if (buttonChoice == 5){ outputMainText("You stick your tongue out at her and she immediately blushes. The blotch around her crotch deepens and spreads simply by the thought. A rather Pavlovian response from her nethers... She hugs onto your arm as you head up to your place and her thighs slip together with each step until she's fumbling the last few feet. You manage to catch her and hoist her up onto your bed, where she immediately twists around and crumples the fabric over her crotch in her hands. Barely lifting her dress a few inches, her legs spread slightly in welcome to you, she's a bit too timid to go any further.\r\rSo, with a mewl echoing about the room, you slide your hands up the sides of her legs and push the dress away, staring at her dewy lips. You lift the sundress over your head and dive inside. ", true); if (lilaVulva == 0){ outputMainText("Her petite folds are swollen and bright, shimmering with the surrounding fur from the slickness she's already made. You can easily engulf her entire groin in your mouth, your tongue running up and down over her little stiff button and slipping into her folds to ring around her tight sex.", false); } else { if (lilaVulva <= 2){ outputMainText("Her swollen lips are nearly red with her arousal, a gob of lubrication already slipping down her folds and into the cleft of her backside, drooling down onto her tail. You nibble around her inner lips and nip at her standing clit, the developed vulva appreciating your efforts with even more slime.", false); } else { if (lilaVulva <= 5){ outputMainText("Her thighs still squeeze her thick vulva by the time you reach it, spreading only to let your head through. A few strands stretch across your path, the engorged pussy almost gasping open as the large labia pulse in anticipation. Larger than your mouth, it engulfs your lips in a sloppy kiss while your tongue slips inside. You pull out only to slide up through the glistening folds and suckle from her thorn-like clit as it stands out from it's hood, causing her to immediately buck upon the bed.", false); } else { if (lilaVulva <= 8){ outputMainText("The bulbous pussy looks odd between her dainty thighs, so swollen and naughty. The inner lips dangle out of from the thicker ones, giving you something to gently bite down on as you reach towards it. She squirms as you do, letting out a gasp as you tenderize the supple meat. Feminine honey dribbles from her hole and smears about her thighs, forming webs around your face and running along her tail below. Your mouth slips into the labia and kisses her vaginal passage, your tongue slipping in deep to send her wild. Her hands push her dress into your head and she squirms wryly as you do, only to buck and knock on your skull as you pull out and suck upon her button. The thing pushes out from the folds, standing stiffly with clear strands stretching down around it. You lash your tongue over it again and again in your mouth, making her clenched fists dig her dress into your head.", false); } else { if (lilaVulva <= 12){ outputMainText((("You can't even see where her thighs meet her body, the growing pussy is so large. She inadvertantly squeezes it, even with your head in there, and a handful of honey pushes out from her large lips, her hole gaping to let it pass and form sheets between her thighs, her tail becoming drenched along with a good portion of your bed. You suck some of the dangling inner labia into your mouth, kneading and tenderizing it with your teeth while she squirms behind it. Then the lips hug your face as you push inside, your mouth opening to push inside her vaginal passage. Your lips can pluck around the edges, your tongue slipping around the slick walls. Her hands hug around your head through her dress, clenching into you the best she can while her tail flicks her fluids up across your " + boobDesc()) + " chest. Then you push upwards, your tongue quickly lashing across her urethra before wedging into her clitoral hood. You lick around the base of the stiff erection, sliding the whole thing into your mouth. You gently bite around the tip as your lips drag up and down its short length, making her tiny butt squirm upon the bed."), false); } else { if (lilaVulva <= 18){ outputMainText("Your hands reach up to flank the sides of the enormous cunt, mashing the large labia together as a constant dribble of slime coats her tail and the bed beneath. You grab her tail and wedge it up between her folds, slipping it up and down while her knees jerk and push around her vulva. Leaving it caught between the dangling lips, you reach in beside it, your face becoming drenched, and suck in a mouthful of the flesh. You gently chew on the meat, the tip of her tail slapping across the top of your head as she mewls erotically from the other side. Then you reach inside and bite down on the edge of her vaginal passage, the supple flesh easily handling your roughness. Your hand then leaves the side of the cunt to reach into her hole, grabbing it by the edge to hold it up and fondle it while your mouth moves up towards the standing protrusion above. The overgrown clitoris stands well beyond the massive mound and pulsates in your mouth as you engulf it. You suck and gnaw on the hard thing, the girl behind clenching her hands deep into her own flesh through the sundress as her hips grind down onto the bed.", false); } else { if (lilaVulva <= 19){ outputMainText("You lift the heavy mass of lewd flesh higher so she can scoot back upon the bed until her feet are no longer dangling. Once it's well supported, the waterfall of lubrication already having slickened the fur all the way up between her legs well in advance, your hands palm either side of her huge thick labia and grind about, massaging the sensitive pussy from the outside. Her feet and knees soon join you, writhing about to knead it thoroughly. No longer needing to do it themselves, your hands pull back to help spread the large slit, tugging and twisting the dangling folds. You spread her wide, her pussy gaping, and you lick around her vaginal passage, biting her and there until you slip a hand in to massage from the inside. The rest of her body twitches about, the tip of her tail flailing from underneath, until she has to onto her own legs to hold herself still. Yet, her hips still manage to buck as you slip her large clitoris into your mouth, barely able to take in its full length. You suck it in and slide up and down its length, gnawing where you can, until your other hand comes to your aid and wraps around the base to stroke it in tune to your efforts. It's so pleasure that the girl is stuck there, her mouth wide and her eyes shut, hardly able to breath or make a sound outside of high-pitched moans.", false); }; }; }; }; }; }; }; outputMainText("\r\rMilk from her breasts spills down around your head as the sensations grow stronger and stronger. Eventually, Lila falls backward onto the bed, grasping at the covers and wringing her legs around your neck. She pulls you deeper into her loins as she lets out a yowling cry, a mess of slime spilling out around you. Her body twitches and her hips continue to buck as she endures a lengthy orgasm.", false); if (lilaVulva >= 17){ outputMainText(" Yet, as you continue to assault her nether region, her fat pussy quivering in your grip, she can't seem to stop climaxing as she cries out again and again, showering you in her fluids, until her body is too exhausted and drained to maintain the high state of euphoria much longer, quickly dropping her back down to a heavy breathing, her chest swelling and deflating again and again as she pants loudly.", false); } else { if (lilaVulva >= 10){ outputMainText(" And just a few moments after the first, your mouth still licking away, she cries out again in ecstasy as she approaches a second orgasm, her legs nearly crushing you this time.", false); } else { if (lilaVulva >= 5){ outputMainText(" However, she doesn't seem to be finished quite yet, as her legs maintain their hold. You lick and lick, hearing her breathing harder and harder and rapidly approaching yet another orgasmic cry.", false); }; }; }; outputMainText((("\r\rTired, her breath slowly coming to a gentle purr, she curls around to look at you. Silently urging you up onto the bed, she licks across your dampened face as you climb up with her. She cuddles into your " + boobDesc()) + " chest and quickly slips into sweet dreams while you follow behind."), false); doLust(Math.floor(((lilaVulva + (lib / 3)) - (ment / 4)))); doNext(); doListen = function ():void{ outputMainText("By the time the two of you awaken, hours have passed. She finally pulls down her sundress, her naked loins on display the whole time she slept, your open doorway just a few feet away. She yawns and kisses you, trying to lap up some of the stuff that is still wettening your face.\r\r'So gewd...,' is all she can muster, with a bit of mumbling about her Mommy waiting. She slides out of the bed, pausing for a moment for her legs to adjust, and then slowly wobbles her way back out into the canopy.", true); hrs = 8; exhaustion = 0; if (lilaVulva <= 8){ aff(4, Math.floor(((percent() / 20) + 4)), -1); } else { if (lilaVulva <= 16){ aff(4, Math.floor(((percent() / 10) + 4)), -3); } else { aff(4, Math.floor(((percent() / 10) + 6)), -6); }; }; doEnd(); }; }; if (buttonChoice == 7){ if (lilaPreg == -2){ outputMainText("Not quite sure how to put it, you make a quick suggestion that the two of you could try something more... intimate. Confused at what you could possibly mean, considering how intimate you've already been before, she cocks her head to the side with a 'Huh?'. Not quite sure how to put it, you kneel down beside her, cupping your hands over her ears and whisper inside. To put it bluntly, you simply say 'Sex'.\r\rHer tail curls around behind her and her cheeks are instantly redder than ever before. You also hear a splash below her as her loins seem to catch on even faster than the rest of her body, her near-constant heat latching onto the word and pulling her mind towards it.\r\rShe gulps for a moment, but very quietly murmurs 'O-Okay.'\r\rTaking her hand, you lead her up to your hut; her stride rather crooked along the way as she contemplates what will happen. Once inside, she already begins to take off her sundress before you can close a curtain across the open doorway as she thinks that's just what one does when it comes to sex. You chuckle at her innocent naivete, though your gazing upon her body makes her blush more in turn.", true); } else { outputMainText("You give her a little hum, trying not to be too obvious about what your trying to suggest. When she eventually does, you can see the blush intensify in her face as her heart beats faster. Eyes darting around to make sure nobody notices, like she were trying to smuggle some illegal goods, she grabs your hand and hastily pulls you to your own hut, knowing well where it is.\r\rBefore you're even in the door, she's already tossing her sundress aside and scampers in eagerly with a giggle. As you stare at her, her body completely naked, she blushes again as she realizes how quick she was to get caught up in her body's desires.", true); }; if (lilaMilk == 0){ outputMainText("\r\rA few drops of milk collect around her areolas, her naked nipples perking at the air.", false); } else { if (lilaMilk <= 2){ outputMainText("\r\rDrops of milk bead around her nipples, slowly dripping down her fur as she stands there, her nipples quite stiff.", false); } else { if (lilaMilk <= 5){ outputMainText("\r\rHer nipples are so stiff that it almost looks like they hurt. A steady trickle of milk drips down from the pointy things, dribbling down her fur. ", false); } else { if (lilaMilk <= 8){ outputMainText("\r\rHer puffy nipples protrude far from her chest and belly, engorged with milk and making her twitch as the air brushes across the hard things. Small streams of milk continually flow down her front, over and around her belly, and collect in between her thighs and mix with her honey as she stands there.", false); } else { if (lilaMilk <= 12){ outputMainText("\r\rHer puffy nipples occasionally spray thin streams of milk as the air licks across there moist sensitive skin, causing her to twitch as she stands there, trying to prevent herself from manually relieving the things while they slowly dribble down her front.", false); } else { if (lilaMilk <= 18){ outputMainText("\r\rLike little rivers, milk continually flows down her front, her small swollen breasts shuddering as the air licks across her stiff nipples, sending thin white squirts flying about. She can't help but squish them idly with her arms, causing more milk to spray about as she does and small gasps to escape from her lips.", false); } else { if (lilaMilk <= 19){ outputMainText("\r\rWhile standing there, her hands rove about her front, squeezing her small engorged breasts as they ache from her puffy nipples growing stiff with the air licking across their moist sensitive skin. She squeaks ever now and then as she does, with more white stuff flooding from the breasts that she cannot immediately attend to with only two hands.", false); }; }; }; }; }; }; }; if ((((lilaPreg <= 35)) && ((lilaVulva >= 11)))){ outputMainText(" The belly bulging with vaginal flesh, much of the milk diverts to either side for an easier path.", false); } else { if ((((lilaPreg <= 70)) && ((lilaPreg > 35)))){ outputMainText(" Wobbling a little with her greater girth, her pregnant belly diverts most of the milk flow to the sides. Though it doesn't prevent her from rubbing the milk in over the whole thing anyways, while she absently rubs it with its taut fur being more sensitive.", false); } else { if ((((lilaPreg <= 100)) && ((lilaPreg > 70)))){ outputMainText(" The large belly, gravid with your children, blocks most of the milk from immediately reaching the ground, making most of it flow down to her protruding belly button. Her hands occasionally paint the white stuff around as she rubs the taut fur it in awe of herself, unable to even reach its underside as its size is larger than herself.", false); }; }; }; if (lilaVulva == 0){ outputMainText(" Her petite folds are swollen and bright, shimmering with the surrounding fur from the slickness she's already made.", false); } else { if (lilaVulva <= 2){ outputMainText(" Her swollen lips are nearly red with her arousal, a gob of lubrication already slipping down her folds and into the cleft of her backside, drooling onto her tail.", false); } else { if (lilaVulva <= 5){ outputMainText(" Her thighs squeeze her thick vulva, the inner lips dangling out, nearly red and fairly swollen. Strands of her honey stretch between her thighs and latch onto her tail behind her.", false); } else { if (lilaVulva <= 8){ outputMainText(" The bulbous pussy in her groin looks odd between her dainty thighs, so swollen and naughty. The inner lips dangle out of from the thicker ones, red with arousal and shimmering brightly with the fluids that dribble down and form webs between her knees. Every now and then, she reaches down in an attempt to pull it back up, fearing that it's slowly falling down as it feels so noticeably weighty, causing her to wince and her tail to flick - flinging slime - from the intense sensation of grabbing herself in such a way.", false); } else { if (lilaVulva <= 12){ outputMainText(" The growing pussy is so large that it's difficult to tell where her torso ends and her legs begin. She inadvertantly squeezes it as she squirms about, forcing handfuls of honey to push out from her large lips, her hole gaping to let it pass and form sheets between her thighs, her tail becoming drenched along with a large portion of the floor. Her clitoris stands from the mass, like a thorn on her front, swollen with blood and making her shiver slightly from being exposed to even the slightest breeze.", false); } else { if (lilaVulva <= 18){ outputMainText(" Her legs bowed, her knees squeeze around the massive pussy between them. The dangling lips occasionally lewdly slap against her legs as she shifts in one place, leaving behind a stretching web of honey. The underside of her tail is nearly completely drenched by the stuff, pulling strands of it from her backside whenever it flicks from side to side in her anticipation. And a hand occasionally slips down, almost grabbing her erect clitoris as it stands far from the mass in an attempt to simply cover it and protect it from the breezes that cause her to shiver tremendously and fresh gobs to splash across the floor.", false); } else { if (lilaVulva <= 19){ outputMainText(" Her knees bend to fit around the grand mass of vulvic flesh that fills her the gap between her legs. The inner folds occasionally brush against the ground as she squirms, her foot attempting to rub her long clitoris. The stiff thing looks nearly like a small penis, erect and aroused, begging for attention as a breeze nips across its extremely sensitive skin. Lubrication pools about beneath her, making her efforts even more difficult, but she eventually manages to catch the tip of the thing between her toes and gently pinch it, making her moan softly. Her tail flings more slime about as it flicks about, occasionally going stiff as it flicks a little too close and diddles between her deep slit with a gasp.", false); }; }; }; }; }; }; }; if (lilaPreg == -2){ outputMainText((((("\r\rEyes going wide, she stares in wonder as you begin to strip your own outfit. Roving from your " + boobDesc()) + " chest to your ") + buttDesc()) + " rump, and especially fixating on your"), false); } else { outputMainText((("\r\rEyes wide with joy, she watches happily as you begin to strip your own outfit. Always in awe of your " + bodyDesc()) + " body, she loves to see what you really look like. However, thanks to her constant heat, she absently licks her lips as she fixates on your"), false); }; if (cockTotal > 0){ outputMainText(((((" " + cockDesc()) + " swelling cock") + plural(1)) + ""), false); } else { outputMainText(((((" " + vulvaDesc()) + " dripping cunt") + plural(2)) + ""), false); }; if (lilaPreg == -2){ outputMainText(", obviously confused and slowly taking in what you have, but also visibly aroused as a hand latches onto her cunny, unable to stop rubbing it.", false); }; outputMainText("\r\rThen her tail flails about with glee as you lift her onto your bed, laying her back across the soft sheets.", false); if (lilaPreg == -2){ outputMainText(" She blinks up at you, a hand cutely curling about her mouth like she's about to lick her paw, wondering how this will possibly continue. Just to reassure her, you kiss her on the forehead. Her eyes close and a smile grows upon her face, accepting your comforting gesture. Though they then open as she realizes your mouth reaches down to touch against her own lips, kissing her lovingly. This time her eyes close from the sudden surge of warmth throughout her body, whimpering slightly into your mouth as she experiences such intimacy for the first time.", false); } else { outputMainText(((" She smiles up at you, her hands pawing at your " + boobDesc()) + " chest, roving to your sides and holding onto you as you lean down to give her a deep kiss. Her mouth is ready to take your tongue, her rougher one dancing around it and licking your teeth and lips."), false); }; if ((((cockTotal < 1)) && ((clitSize <= 10)))){ if (lilaVulva > 10){ outputMainText(((((((((" While she's prone and melting in your embrace, you wrap your legs around her bulbous vulva, pushing your own " + vulvaDesc()) + " cunt") + plural(2)) + " into it. You bounce up and down gently, humping her heavy pussy, your ") + clitDesc()) + " clit") + plural(2)) + " grinding alongside her especially large female erection. Her feet hold onto your thighs the best she can, bucking her hips to get press her sensitive mass into you more."), false); } else { outputMainText(((((((" As she melts into your embrace, you press your " + vulvaDesc()) + " slit") + plural(2)) + " against hers, kissing again with the lower sets of lips. Her feet curl up around your ") + hipDesc()) + " hips to press back, trying to grind her little clit into you the best she can in her lustful state."), false); }; if (lilaPreg == -2){ outputMainText(" Although, with her ineperience, her movements are awkward and wry, leaving her drooling from between her thighs even more in desparation. You take up most effort, humping and thrusting your sexes together until the bed is drenched in your combined feminine fluids. Eventually, one of her legs bends high, stretching her virgin pussy wide as she gives you plenty of room to push against her. She lets out a gentle cry as she shudders, hooking the leg around your back and jerking against you, a volley of slime splattering across your legs with an intense orgasm, forcing you to your own.\r\rShe pants loudly for several minutes afterwards, her fur flush and sweaty. She nuzzles into your body, a few tears welling up. Yet, as she sniffles, it's obvious she's not crying from sadness.\r\r'That felt... so gewd. I... I love yew!'\r\rShe begins to lick you\ttrying to clean you up a bit, but the strokes of her tongue quickly slow. Within a few moments, she nods off beneath you, fast asleep. You shrug and chuckle, hugging her tight before cuddling up and joining her in the dream world.", false); } else { outputMainText(((" The two of you quickly find a rhythm, her small body writhing about beneath yours and matching your movements. Her legs move higher and higher up your back, stretching her hot pussy wider until it's practically nipping at your own as you press deeper into it. A flood of slick fluids gush out about your cunt" + plural(2)) + " as Lila lets out a gentle cry, her tongue lolling out of her mouth with orgasm."), false); if (lilaVulva > 10){ outputMainText(" Yet, she continues to hump against your body, her huge sensitive cunt slapping against you wildly until she comes again and again with even more mess.", false); }; outputMainText(" You can't help but shortly come after her, your combined messes drenching the bed beneath you.\r\rOnce you have both calmed down, her panting returning to a soft purr, she takes some time to cuddle with you, licking your body to clean up some of the mess. But, it doesn't take long before the two of you pass out with the delightful stress, snuggling upon the moist bed.", false); }; } else { if ((((cockTotal > 0)) && (((cockSize * cockSizeMod) <= eVagLimit((8 + (5 * lilaVulva))))))){ outputMainText(((((((" As she melts within your embrace, she gasps as she feels the tip of " + oneYour(1)) + " ") + cockDesc()) + " cock") + plural(1)) + " slide across her belly, sandwiched between your two bodies. She shivers beneath you as you pull it back, slipping it through her supple lips and into her hungry hole."), false); if (lilaPreg == -2){ outputMainText(" Her mouth goes wide, stretching as you penetrate her, her eyes wincing as the odd sensation fills her. You can feel her toes curl behind you, her legs tensing like they were preparing for something far more extreme, and she is completely silent for the whole duration. Once your length has completely burrowed into her, she finally erupts with a long mewl. Her virgin pussy squeezes about the intruder, chewing on it and slowly relenting as her body settles around it, becoming used to this brand new, yet absolutely wonderful, sensation.", false); } else { outputMainText(" She grins stupidly as she pushes herself against your own efforts, slowly ramming your erection deep into her horny folds, forcing her to wince a little thanks to her own eager efforts. Her toes curl behind you, a soft moan escaping her lips as your whole length squeezes through the resistant walls, until she eventually calms and huffs beneath your body, her tail flicking about excitedly.", false); }; if (((((cockSize * cockSizeMod) > (8 + (2.5 * lilaVulva)))) && ((lilaPreg < 35)))){ outputMainText(" She gasps, out of breath, as she looks down to see the tip of your member bulging her belly outwards. She absentmindedly strokes her fur, kneading the monster inside, amazed that it could possibly do such a thing.", false); } else { if (lilaPreg >= 35){ outputMainText(" Her hands quickly cradle her swollen belly, just to make sure that her lewd efforts and your girth didn't harm what is growing inside.", false); }; }; outputMainText("\r\rGradually, you begin to pump in and out, elliciting more cute noises from the small girl. Though she may have been in heat and knew well what it was like to pleasure herself, this sensation was far more than she ever expected. She accidentally scratches you occasionally with her claws as you thrust and her face transforms through a plethora of lewd expressions.", false); if (lilaVulva <= 5){ outputMainText(" Her tight pussy squeezes around your cock, tugging and pulling with its inner lips stretching along your length, sliding back up with a thick film of lubrication whenever you pull out with a soft mewl from the small body beneath you.", false); } else { if (lilaVulva <= 12){ outputMainText(" Vulgar noises accompany the expressions as her honey spits and spews about your legs with each pump, making her gasp and wince as her thighs squirm around to sqeeze the flesh between her legs.", false); } else { if (lilaVulva <= 19){ outputMainText(" Your cock is lost in a river of slime that flood from her enormous pussy, flinging the stuff around everywhere with each powerful pump. Her plush belly expands and stretches each time you drive into it, leaving her mrowling erotically as you grab her clit and jerk it between the two of you.", false); }; }; }; if (lilaMilk <= 5){ outputMainText(" Milk dribbles down through her fur as she becomes more and more excited.", false); } else { if (lilaMilk <= 12){ outputMainText(" Milk spurts up over her chest and belly as her body shakes with your movement, spilling down her sides and onto your sheets.", false); } else { if (lilaMilk <= 19){ outputMainText(" Milk gushes between the two of you, exploding with each shake of her little form and jiggle the swollen mounds, flooding about your sheets with its sweet scent.", false); }; }; }; if (lilaPreg <= 35){ outputMainText("\r\rYou lean down and hug Lila tight as you feel her begin to quake with orgasm, letting her cry out gently into your neck.", false); } else { if ((((lilaPreg <= 70)) && ((lilaPreg > 35)))){ outputMainText("\r\rYou lean around her growing belly, protecting the child and hugging Lila tight as you feel her begin to quake with orgasm, letting her cry out gently into your neck.", false); } else { if (lilaPreg > 70){ outputMainText("\r\rYou manage your best to twist around her greatly protruding baby, trying to avoid squishing the child within too much as you hug Lila tight, feeling her begin to quake with a powerful orgasm and shout out into the room.", false); }; }; }; getCum = cumAmount(); if (getCum > (100 * (lilaVulva + 1))){ outputMainText(" Your own pressure erupts within her, raising her volume to near deafening levels as the stuff fills her passage and gushes out with tremendous force, more than her heat could have ever asked for.", false); } else { outputMainText(" Your own pressure erupts within her, making her louder as she feels your warm spunk splashing against her hot walls, just what her heat truly needed.", false); }; if ((((((lilaPreg <= 35)) && ((lilaVulva >= 11)))) && ((getCum > (150 * (lilaVulva + 1)))))){ outputMainText(" So much of your hot spunk swirls around within her that even her belly trembles beneath you, inflating and churning about.", false); }; outputMainText(" She clenches onto you with all her might, trying to mewl and wince through the climaxes that wrack her body, panting until her felin instincts take over and she passes out within your arms, napping with a soft purr. You giggle a little and shrug, curling up around her and falling asleep with her, letting your anatomy remove itself naturally.", false); } else { if (clitSize <= eVagLimit((20 + (12.5 * lilaVulva)))){ outputMainText(((((((" As she melts within your embrace, she gasps as she feels the tip of " + oneYour(2)) + " ") + clitDesc()) + " clit") + plural(2)) + " slide across her belly, sandwiched between your two bodies. She shivers beneath you as you pull it back, slipping it through her supple lips and into her hungry hole."), false); if (lilaPreg == -2){ outputMainText(" Her mouth goes wide, stretching as you penetrate her, her eyes wincing as the odd sensation fills her. You can feel her toes curl behind you, her legs tensing like they were preparing for something far more extreme, and she is completely silent for the whole duration. Once your length has completely burrowed into her, she finally erupts with a long mewl. Her virgin pussy squeezes about the intruder, chewing on it and slowly relenting as her body settles around it, becoming used to this brand new, yet absolutely wonderful, sensation.", false); } else { outputMainText(" She grins stupidly as she pushes herself against your own efforts, slowly ramming your erection deep into her horny folds, forcing her to wince a little thanks to her own eager efforts. Her toes curl behind you, a soft moan escaping her lips as your whole length squeezes through the resistant walls, until she eventually calms and huffs beneath your body, her tail flicking about excitedly.", false); }; if ((((clitSize > (8 + (2.5 * lilaVulva)))) && ((lilaPreg < 35)))){ outputMainText(" She gasps, out of breath, as she looks down to see the tip of your clitoris bulging her belly outwards. She absentmindedly strokes her fur, kneading the monster inside, amazed that it could possibly do such a thing.", false); } else { if (lilaPreg >= 35){ outputMainText(" Her hands quickly cradle her swollen belly, just to make sure that her lewd efforts and your girth didn't harm what is growing inside.", false); }; }; outputMainText("\r\rGradually, you begin to pump in and out, elliciting more cute noises from the small girl. Though she may have been in heat and knew well what it was like to pleasure herself, this sensation was far more than she ever expected. She accidentally scratches you occasionally with her claws as you thrust and her face transforms through a plethora of lewd expressions.", false); if (lilaVulva <= 5){ outputMainText(" Her tight pussy squeezes around your clit, tugging and pulling with its inner lips stretching along your length, sliding back up with a thick film of lubrication whenever you pull out with a soft mewl from the small body beneath you.", false); } else { if (lilaVulva <= 12){ outputMainText(" Vulgar noises accompany the expressions as her honey spits and spews about your legs with each pump, making her gasp and wince as her thighs squirm around to sqeeze the flesh between her legs.", false); } else { if (lilaVulva <= 19){ outputMainText(" Your clit is lost in a river of slime that flood from her enormous pussy, flinging the stuff around everywhere with each powerful pump. Her plush belly expands and stretches each time you drive into it, leaving her mrowling erotically as you grab her own clit and jerk it between the two of you.", false); }; }; }; if (lilaMilk <= 5){ outputMainText(" Milk dribbles down through her fur as she becomes more and more excited.", false); } else { if (lilaMilk <= 12){ outputMainText(" Milk spurts up over her chest and belly as her body shakes with your movement, spilling down her sides and onto your sheets.", false); } else { if (lilaMilk <= 19){ outputMainText(" Milk gushes between the two of you, exploding with each shake of her little form and jiggle the swollen mounds, flooding about your sheets with its sweet scent.", false); }; }; }; if (lilaPreg <= 35){ outputMainText("\r\rYou lean down and hug Lila tight as you feel her begin to quake with orgasm, letting her cry out gently into your neck.", false); } else { if ((((lilaPreg <= 70)) && ((lilaPreg > 35)))){ outputMainText("\r\rYou lean around her growing belly, protecting the child and hugging Lila tight as you feel her begin to quake with orgasm, letting her cry out gently into your neck.", false); } else { if (lilaPreg > 70){ outputMainText("\r\rYou manage your best to twist around her greatly protruding baby, trying to avoid squishing the child within too much as you hug Lila tight, feeling her begin to quake with a powerful orgasm and shout out into the room.", false); }; }; }; outputMainText(" You shiver against her as well, your legs growing numb from the lightning storm that envelops your whole self, centered on your gargantuan feminine member. She clenches onto you with all her might, trying to mewl and wince through the climaxes that wrack her body, panting until her felin instincts take over and she passes out within your arms, napping with a soft purr. You giggle a little and shrug, curling up around her and falling asleep with her, letting your anatomy remove itself naturally.", false); }; }; }; doLust((-(sen) * 2)); doNext(); doListen = function ():void{ outputMainText("Some hours later, you wake up to a kiss upon your lips, opening your eyes to a great big smile.", true); if (lilaPreg == -2){ outputMainText("\r\r'I... I weally liked that. It would be nice if we can do it some mowe,' she says sheepishly, a big blush on her face.", false); lilaPreg = 0; } else { outputMainText("\r\r'Mmm... It's always so... amazing with yew. I like it vewy much. I love yew.' She kisses you again, so full of joy.", false); }; if ((((((((lilaPreg == 0)) && ((percent() >= 55)))) && ((cockTotal > 0)))) && (((cockSize * cockSizeMod) <= eVagLimit((8 + (5 * lilaVulva))))))){ outputMainText(" However, for a moment, her attention turns down to her loins. A hand smears about the leftover cum that still drools from her, focusing on her lips and clit. 'It... It's not as warm as before,' a hint of surprise in her voice. Then she begins to blush as her fingers keep smearing around, her clit beginning to stand stiffly and her honey increasing in flow. 'N-Nevermind...'", false); lilaPreg = 1; }; outputMainText("\r\rThe two of you continue to cuddle for a bit longer, enjoying your company, before she realizes how much time has passed. Needing to get back home, she quickly tosses on her sundress, letting it mat against her wet fur and stick to all sorts of naughty places. With another quick peck on your lips, she dashes out of the hut, giving you a short goodbye as her cheeks redden, already thinking about doing it again...", false); doSexP(10); hrs = 7; exhaustion = -7; doEnd(); }; }; if (buttonChoice == 9){ outputMainText("You pull out a Cat's Meow from your bag and offer it to her.", true); if (lilaMilk == 19){ outputMainText(" However, she shakes her head no.\r\r'Hehe, sowwy, but umm... I don't want to make anymowe milk. Mommy and I have a hawd time milking me alweady, don't need mowe. Thank yew for liking it so much and wanting mowe, though!' She gives you a quick hug and heads off to get back to draining herself.", false); } else { outputMainText(" Her eyes light up.\r\r'Ooo, you like my milk so much that you want me to make mowe?' She grins and blushes at how much you like her. 'Okays!'\r\rShe quickly takes it and gulps it down. The blotches on her shirt spread as her milk production quickly kicks into higher gear, her face growing flush as she feels warm.", false); if (lilaMilk == 0){ outputMainText(" The blotches soon have trails of milk dribbling down the inside of her sundress, slowly collecting at the hem.", false); } else { if (lilaMilk == 2){ outputMainText(" Her nipples stiffen more, forming small peaks against her dress while the blotched trails grow darker, collecting more quickly along the hem of her sundress and spilling onto the wooden path below.", false); } else { if (lilaMilk == 5){ outputMainText(" Droplets begin to form on the outside of her dress, she's creating so much milk that it pushes through. Her nipples seem even puffier with the greater amount of milk, making her look down at herself in awe that she's actually got some noticeable boobs.", false); } else { if (lilaMilk == 8){ outputMainText(" You can see her nipples visibly jiggle a little as they're so heavy with milk, the increased supply making the sundress quite translucent. Milk dribbles down constantly both inside and outside her sundress, and splashes about as she hops a little with a smile at her new bounciness.", false); } else { if (lilaMilk == 12){ outputMainText(" Her whole breasts actually swell slightly, making her thick nipples protude even more than they already do. She winces a little at how full they feel and is astonished by how milk squirts through her sundress as she reaches up to massage on of the mounds.", false); } else { if (lilaMilk == 18){ outputMainText(" Her breasts swell even more, making her feel really jiggly. As she tries to test the bounciness, she blushes heavily as her large nipples scrape along the inside of her sundress, milk squirting through it without her even trying. She moans as her hands come up to squeeze them as an immediate reflex to relieve their engorgement, gushes of milk spewing out. She seems rather surprised she can possibly make so much.", false); }; }; }; }; }; }; outputMainText("\r\rHer hands roam about her new found lactation, testing just how much milk she can now produce and making quite a mess. 'Eehee... Yew weally want to dwink a lot, huh?,' she laughs happily. 'I'm gonna go show Mommy!'\r\rShe then turns and heads home, leaving a path of spilled milk behind her as she goes.", false); lilaMilk++; loseManyItem(105, 1); }; hrs = 1; doEnd(); }; if (buttonChoice == 10){ outputMainText("You pull out a vial of Concentrated Pussy Fruit Juice and offer it to her, telling her in advance what it does so she knows what it is.", true); if (lilaVulva == 19){ outputMainText(" However, she shakes her head no with a giggle.\r\r'Hehe, Mommy says if I get any biggew, I'll need to watch out for splintews. I don't want splintews down thewe, silly.'\r\rShe then turns around and walks off, giggling at the thought of how big you could possibly want her naughty place to be while she waddles in an attempt to walk with how big it already is.", false); } else { outputMainText(" She looks at you curiously.\r\r'You want to make my naughty place biggew? If... If it'll feel even bettew, and yew want me to, I guess it's okays.'\r\rShe takes the vial and drinks it down. Her hips soon begin to twist about as a warmth nearly as bad as her heat fills her loins. Right in the middle of the canopy walkway, she lifts her dress and watches as it grows.", false); if (lilaVulva == 0){ outputMainText(" She pokes it curiously as the labia fill out and looks much more mature than what she had, only to gasp a bit at how much more sensitive it feels.", false); } else { if (lilaVulva == 2){ outputMainText(" Her thighs squeeze together as the labia swell between them, making her moan and some slickness dribble all the way down to the wooden walkway.", false); } else { if (lilaVulva == 5){ outputMainText(" She lets out a squeak as it grows so large in between her thighs. Her hand darts down to catch it as she's afraid it will fall, it's so noticeable now. And doing so makes her squirm as her fingers slip into her cleft, the flesh bigger than her grasp.", false); } else { if (lilaVulva == 8){ outputMainText(" A weak gasp escapes her lips as she spreads her legs further apart. Her lips fill the gap between them, preventing her thighs from touching. Her clit grows out of the cleft, leaving it's hood and obviously protruding from the rest of her slit. Her fingers reach down and pinch it in curiousity, only to cause her to quiver as electricity shoots through her, a good deal of slime splashing down beneath her.", false); } else { if (lilaVulva == 12){ outputMainText(" Her knees bend outward as the labia push them apart, causing her to gasp as they squeeze her sex. Her clit is at least an inch and she can easily wrap her thumb and finger around it, stroking it's length slightly before she comes to an abrupt halt as it's too much to handle just yet. Nevertheless, her legs have sheets of slime between them from the experience, growing larger as the stuff dribbles from her dangling inner lips.", false); } else { if (lilaVulva == 18){ outputMainText(" She bends down at her knees as the mass of sensitive genitalia fill the gap between her legs and feels so heavy. Her eyes flutter a little just trying to stand at first, the labia keeping her slightly bow-legged. Just trying to bend over to look at herself, her clit scrapes against the wooden walkway, already slick with her slime, and causes her to fall to her knees. She curls up slightly to reach her large clit, a whole hand wrapping around it, and her legs rub and push about her vulva while she jerks away, completely lost in the sensations. By the time she comes to climax, lubrication gurgling and splatting from her massive slit, all eyes with a clear view are staring at her.", false); }; }; }; }; }; }; outputMainText("\r\rShe pants a bit, becoming accustomed to her new size. She lets her dress fall back down to cover herself, though there's still quite a mess between her legs. 'It... feels much bettew...'\r\rShe lazily turns around and walks away, intent on further familiarize herself with her bigger girly bits...", false); lilaVulva++; loseManyItem(221, 1); }; hrs = 1; doEnd(); }; if (buttonChoice == 12){ outputMainText("With a smile, you take her hand so that the two of you may go and visit her mother to see how things are going at home. She seems a tad disappointed, her mess going unrelieved, but she smiles up with a nod and goes along with you.\r\rApproaching her home, however, she begins to get rather antsy. Her thighs keep rubbing together, making the blotch in her dress even worse. By the time her mother spots you through the doorway and comes to greet you, Lila lets go of your hand, grabbing her crotch through the dress, and dashes into the hut with a rapid-paced 'Hi-Mommy! I-need-to-do-somefing-weal-quick!'\r\rHer mother looks at her curiously as she goes, but shrugs and turns to you. 'Hello~ Is there something wrong?'\r\rYou shake your head, saying you just wanted to visit.\r\r'Oh, well then, please, come in. Sit down and have some tea~,' she smiles and ushers you through. She sits you at the kitchen table and gives you a cup to sip from and she sits beside you.\r\r'So... I guess you'd like to know how Lila is doing.", true); if (lilaMilk == 0){ outputMainText(" Since she's gotten into the whole milking thing, she's been taking pretty good care of herself. I'm actually fairly surprised at how well she does. Once I taught her how to express herself, she makes sure to go into the bathroom every couple of hours and carefully take care of her, umm... nipples. And then she'll clean up everything and be as pleased as a peach for the next couple hours. It's actually quite cute, I think.' She chuckles a little.", false); } else { if (lilaMilk <= 2){ outputMainText(" She's been taking good care of herself, but even though she is quite vigilant about expressing herself every couple of hours, she'll still sometimes wind up leaking and making a mess in her clothes. She doesn't like when I laugh at her for it, and she'll storm into the bathroom right away, but by the red in her cheeks I think she kinda likes it.' She giggles at the thought.", false); } else { if (lilaMilk <= 5){ outputMainText(" Though she loves how much milk she's been making, she's been starting to have a tough time keeping up with it. Her little hands have trouble fully expressing herself, so I have had to help her. She sits in my lap taking care of her smaller breasts and I'll take care of her bigger breasts. Yet, despite expressing her regularly, she'll just start leaking soon after an hour. But, it's a nice bonding experience.' She sits back in her chair and smiles.", false); } else { if (lilaMilk <= 8){ outputMainText(" Her milk has gotten to a point where she hardly bothers express herself to keep up her supply anymore. Now she tugs on my dress whenever she's feeling engorged and we'll sit over a bucket and milk her the best we can. Otherwise she'll just walk around with a wet front because it's nearly impossible to completely drain her. I've considered lining her dresses to better hide the milk, and her rather... obvious nipples, but she's been making so many new friends with it and she's been so happy that I don't think it's a very big deal. Heck, even I've been a tad eager to start lactating again myself.' She chuckles a little to distract from her hand sneaking over to hide a breast as a moist blotch begins to spread.", false); } else { if (lilaMilk <= 12){ outputMainText(" I'm actually quite surprised at how much she's... grown, from how milky she's gotten. It seems slightly odd to see her... jiggle like that, especially when she gets happy and starts spraying everywhere. My daughter leaks more than I ever did... But! We enjoy it. Since I've gotten back into lactating with her, we have made it a habit of suckling from each other. It's much easier than doing it manually by hand and it's so nice.' She smiles brightly, despite her breasts sitting on the table and blatently leaking through her dress into small puddles.", false); } else { if (lilaMilk <= 18){ outputMainText(" My goodness has she gotten milky. I don't know why I bother to put her in those dresses; I can see through the things within minutes with the rate she leaks into them. Heck, when we're suckling from each other, sometimes I don't even bother to lift her clothes, since I can suck right through them. And I can't even swallow it all... Thank goodness she's got all those friends to help. Although, I kinda drink most of it and I think my daughter's 'uniqueness' has kinda been rubbing off on me...' She pauses as she shifts in her seat, a squishing sound coming from her bottom. Then her breasts spurt up a bit, spewing some milk across the table. She blushes a bit and stands to get a towel to wipe it up. As she turns away, you can see her tail twitching a little with clear webs stretching from its underside to a blotch on the backside of her dress.", false); } else { if (lilaMilk <= 19){ outputMainText(" My that girl has gotten so messy. Milk. Everywhere. Most of this isn't even mine!' She brushes at her dress, blotched here and there all over, with the ones around her nipples even larger. 'We've got buckets all around the house, just so she can squeeze out a few cups whenever she has the time. I have to roll over and squish her tits in the middle of the night so she doesn't wake up sore. Those things are getting close to being as big as mine and she's nowhere near when I grew them! But, we do get all the milk we want. She drinks some of mine, I drink a lot of hers, she drinks a lot of hers; so we're happy cats around here. Except for one little thing that seems to come with ingesting her milk...' She doesn't bother to mention what that little thing might be. Instead, she 'accidentally' pushes a spoon off the table and it bounces away. She stands up with a slight twitch and turns around to bend forward and pick it up. Clear strands still stretch out from her rump to the chair, with webs of the stuff swatting off her tail as it flicks about, her dress quite drenched on the backside. She bends down far, giving your a spectacular view of her backside, especially when her thick swollen lips nip at the cloth and push through another fresh gob as she leans back a little towards you, like she were trying to allure you. However, she quickly pops back up with a squish of her nethers, realizing what she was doing, and quickly sits back down with a tinge of red in her cheeks. 'S-Sorry...'", false); }; }; }; }; }; }; }; if (lilaVulva == 0){ outputMainText("\r\rHeavy breathing can be heard from a few rooms over, causing Mommy to blush a little.\r\r'And it seems she has learned some techniques to help deal with herself. It's not a bad thing, but even when we have company over...' She trails off.", false); } else { if (lilaVulva <= 2){ outputMainText("\r\rLight gasps can be heard from a few rooms over, causing Mommy to blush.\r\r'And it seems she's really... developing. A bit faster than she's supposed to, I think, because she's been walking around like she's got something stuck between her legs. Kinda cute, when she's not masturbating when we have company over...' She sighs with a shrug.", false); } else { if (lilaVulva <= 5){ outputMainText("\r\rGasps and quiet mewling can be heard from a few rooms over, causing Mommy to blush quite a bit.\r\r'I really shouldn't be surprised. That girl's little naughty bits are bigger than mine. And on that small body, she walks around here with a kink in her step all day, leaving a splotch of her slime whereever she sits. It's really cute seeing her deal with it, but she winds up masturbating so frequently that it makes even me seem conservative...' She chuckles at the comparison.", false); } else { if (lilaVulva <= 8){ outputMainText("\r\rHeaving sighs and slurping can be heard from a few rooms over, causing Mommy's cheeks to turn quite red.\r\r'I'm a bit jealous of the girl. It sounds like she has more fun than I do, at that sort of thing... Though when I clean her, even I have trouble palming that huge pussy of hers. I try to discourage her from holding it wherever we go, whether it be out to visit family or even to go to the market, but with it almost bobbing between her legs like that, I wouldn't blame her. I'm sure she'll get used to it eventually.' She shrugs.", false); } else { if (lilaVulva <= 12){ outputMainText("\r\rHeavy moaning and moist splattering about a wooden floor can be heard fairly clearly throughout the hut. Mommy just shakes her head with a chuckle. 'That girl is ridiculous with her masturbating. Makes such a mess... Not that she doesn't make a mess otherwise, though. Everywhere she sits becomes filled with a puddle of warm goo, even if she doesn't orgasm from grinding her naughty place as she sits on it. And I doubt she'll ever be able to wear panties with bits that large, she already gets wedgies from her dresses. She's beyond camel-toe; she doesn't leave much to the imagination when her pussy starts chomping down on the fabric... Oh my the stares she gets. I can practically see the men coming in their pants just looking at her~' She lets out a laugh.", false); } else { if (lilaVulva <= 18){ outputMainText("\r\rLoud cries and wet slapping echo around the hut. Mommy squirms in her chair, looking a bit uncomfortable. 'I must admit, I'm a bit envious of her. She has such powerful orgasm... Even though she leaves trails of slime everywhere and large puddles whenever she comes, it kinda makes me aroused just thinking about how intense it must be. Every night, together in our bed, she winds up grinding against my leg in her sleep. I wake up and... I can't help but masturbate along with her. And its not just me, either. When she walks around with that thing between her knees, if I'm not paying close attention she curl up and start masturbating right in the middle of public. And when she's not walking, she'll be humping whatever she sits or lies down on, whether she's conscious of it or not. I guess that's what happens when you sit on that part of your body instead of your own butt...' You catch her hand stealthily disappear beneath the table as she thinks about the prospect, though you don't say anything.", false); } else { if (lilaVulva <= 19){ outputMainText("\r\rShouts of ecstacy and wet spurting and moist slurping and thick splattering fill the hut. A hand obviously pushes down beneath the table into Mommy's lap as she shivers a tad. 'My little slug~' She chuckles as she pants a little. 'She always scowls at me when I call her that. But with the way she almost drags across the ground, leaving a trail of slime behind her, what would be a better nickname? Although, I really hope she doesn't actually start having to move like a slug... As it is, she shivers and shakes whenever she plops down or accidentally drags it across something, having an instant orgasm. Even at night, while we sleep together in the bed, the big thing makes the bed all slick and wet, rubbing and pushing against everything, until she finally wraps her legs around one of mine and devours my knee as she humps with that thing. Completely asleep, too, totally unconscious. And that huge clit... Sometimes in the middle of the night, I can't help but-' She catches herself, her flicking tail halting in embarrassment as she bites her tongue to keep from saying more as her face is as red as can be.", false); }; }; }; }; }; }; }; if ((((lilaPreg <= 35)) && ((lilaVulva >= 11)))){ outputMainText(" 'I also like to poke fun at her swollen tummy. I know she's not fat, but squishing it and making her squirm like that is just so much fun~'", false); } else { if ((((lilaPreg <= 70)) && ((lilaPreg > 35)))){ outputMainText(" 'I also can hardly believe I'm going to be a grandmother already... But, it was bound to happen sometime or other, I'm just glad it wasn't with one of her brothers.'", false); } else { if ((((lilaPreg <= 100)) && ((lilaPreg > 70)))){ outputMainText(" 'I also hope she gives birth soon... I'm not sure if it's the hormones or what, but she's as randy as ever, it seems. And when she starts having her... 'fun' like this, I'm always afraid she'll topple over with that great big belly of hers. I mean, it's a normal pregnant belly for my size, but on her small frame it's a tad silly.'", false); }; }; }; if (lilaPreg == -1){ outputMainText(" 'But, her kittens are doing well. They spend most of the day napping or playing with each other in the bedroom, in a pen until they're big enough to not hurt themselves. Lila and I both take very good care of them, although it is odd seeing my daughter with children already... Thankfully the local alchemist gives us a good supply of anti-pregnancy potions so I don't have to worry about any more. Lila's just one of those cases of her first heat not going away, no matter how satisfied she gets. It happens every now and then for felins, but she'll grow out of it eventually, whether it be weeks or months or years. Though I guess her brothers and father will have to stay in our auxilliary hut next door. It's customary to keep the males outside when felin girls go into their first heat, to prevent any 'accidents'.'", false); }; outputMainText("\r\rLila steps into the kitchen with the two of you, still a little out of breath and with a kink in her step. 'Umm... So what have yew and Mommy been talking about?'\r\rYou and her mother laugh, making up some excuse. The three of you continue to drink tea and chat about various things, but eventually Lila starts to get antsy again, thanks to your presence, and her mother suggests that it is probably a good place to stop. Lila hops up and gives you a great big hug, then proceeds to scamper off into the hut once more. Her mother giggles and hands you some tea mix, thanking you for the company and letting you know you're welcome any time, as long as you keep her daughter safe.", false); hrs = 3; itemAdd(226); doEnd(); }; }; } else { if (lilaRep == 4){ if (percent() <= 100){ outputMainText("You spot Lila walking along at a rather rapid pace, though she doesn't seem to be terribly aroused like she normally does. You flag her down just to check up and make sure.\r\r'Oh, hewwo!' She seems a bit surprised. 'I was going home for bath-time. Would you like a bath too?'", true); buttonConfirm(); doListen = function ():void{ if (buttonChoice == 6){ outputMainText("You nod, saying it would be nice. She grins and grabs your hand, pulling you along with her back to the hut.\r\rHer mother spots the two of you coming and looks at you curiously, wondering why you came along.\r\r'My fwiend would like a bath too, Mommy.'\r\r", true); if (((((((((((cockSize * cockSizeMod) > 96)) || (((ballSize * balls) > 120)))) || ((breastSize > 120)))) || ((tallness > 84)))) || ((udderSize > 60)))){ outputMainText("Her mother eyes your rather large proportions. 'Umm... I'm sorry, but I don't think I could possibly take care of you myself. Maybe if I had a few friends over, we could, but... I simply don't have the ability.'\r\rLila looks a bit disappointed that you couldn't join, but you shrug it off and say it's quite alright. You leave the two to take care of themselves and you head back to your own thing.", false); hrs = 2; doEnd(); } else { outputMainText("'Is that so?' She chuckles and shrugs. 'Alright, come on in and strip down.'", false); viewButtonOutline(1, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0); viewButtonText(1, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0); buttonWrite(1, "Strip"); buttonWrite(3, "Don't Strip"); buttonWrite(6, "Leave"); doListen = function ():void{ if (buttonChoice == 1){ outputMainText((("Stepping inside, you already begin to remove your " + currentClothes()) + ". Lila has trouble focusing as her eyes keep staring at your body, curious to its differences from her own as she removes her sundress and exposes her nipples and dainty little slit. However, her mother urges her along into the bathroom, making sure the girl doesn't dawdle.\r\rThe bathroom is fiarly sparse and actually lacks any sort of tub or main faucet to get water from. It even has a rather plush carpet. Though it's quickly apparent as to why when the two of them sit down upon it. Lila's mother holds a cup she has been carrying up to her mouth and takes a swig, swishing it around before swallowing with a gasp. Lila then does the same and proceeds to begin licking at the fur of her arm. Her mother's tongue, being much larger, assists her daughter and starts licking at the girls back.\r\rWith each lick, Lila's coat seems to shine cleanly and softly, thanks to whatever was in that concoction. The two female felins quickly cover the girl's entire body, finishing off near the groin. Lila stretched her leg high over her head, curling around to lick further and further up her inner thigh. Yet, once she gets too close, her leg and tail begin to twitch about, her tender lips swelling and reddening slightly with her heat kicking in once again.\r\rHer mother rolls her eyes and chuckles, taking care of the girl's nether regions for her. Lila whimpers and mewls as her mother licks and laps at her sensitive sex, making sure to clean every crevice. The woman continues her efforts, even as some honey oozes out and dabs upon her nose. By the time she's done, Lila rolls backwards with a quiver, blushing as she climaxes softly...\r\rSmacking her lips, the girl's mother looks up to you. 'Your turn. Just sit down over there.'"), true); doNext(); doListen = function ():void{ outputMainText("You sit down on the plush carpet with Lila. Mommy takes another swig and instantly begins to assault you with her own tongue.", true); if (skinType == 2){ outputMainText(" The stuff feels nice on your fur, her rough tongue combing it in nicely. You can feel yourself glisten with a healthier coat, in a rather tingly and giddy kind of way.", false); stats(0, 0, 1, 1); } else { outputMainText(((" Her tongue feels quite rough along your " + skinDesc()) + " and the concoction tinglies incessantly, making you squirm as you sit there. This probably wasn't the greatest idea..."), false); stats(0, -1, 2, 1); doLust(10); }; outputMainText("\r\rLila soon recovers from her bit of fun with red cheeks and tries to jump right in as well. Without thinking too well, she takes a swig and immediately falls forward into your body, unintentionally starting at your lap. Trying to play it off as part of the plan, the small girl begins to lick away at your groin, making you begin to really squirm.", false); if (cockTotal > 0){ outputMainText(((((" Her tongue climbs higher and higher along " + oneYour(1)) + " growing length") + plural(1)) + ", not really looking at what it could possibly be. All that she does know is that once she reaches the tip, a bit of pre keeps seeping from a hole and her tongue keeps lapping up all she can to keep it clean, until strands of it stretch between you and her mouth and dribble down her chin.\r\rWhatever is in the stuff she used, it tingles tremendously and causes you to quickly buck and spurt all over the little girl's face. Caught by surprise, Lila jumps backward and wipes the stuff off with an arm, then proceeds to clean her arm off as well, making strange faces as she tastes the stuff.\r\rHer mother much more wary, the woman moves in to take care of the rest of the mess. Although, afraid to explain to her daughter what really just happened, she's left licking it up herself as though it was a normal occurence, giving you quite the evil eye. Though she can't help but giggle at the humor in the situation as her daughter continues to lick up the white spunk oblivious to its lewdness."), false); doLust((-(sen) * 2)); if (cumAmount() > 2000){ outputMainText("\r\rOn the other hand, she herself is having trouble keeping up with your enormous load, gulping down more and more despartely. Eventually, however, she gives up. Grabbing a bowl, she pushes it over the tip of your cock and presses it firmly against your urethra until the ejaculation comes to an abrupt halt, backing up inside of you.\r\rShe leans in and whispers in your ear. 'Could you please take care of that elsewhere? I'm afraid you're a bit too... messy to finish here, so if you don't mind...'\r\rYou nod, understandingly. With Lila still busy, you hold the bowl tightly against your erection while you attempt to put on your clothes. Then you run out of the hut with a meager goodbye, rushing", false); if (ment > (lib + 5)){ outputMainText(" back to your own place to release what has clogged up inside of you...", false); } else { outputMainText(((" outside to dangle your " + cockDesc()) + " thing over the rail of the wooden bridge and blowing your load on whatever ventures down below. You then rush away, just in case..."), false); }; hrs = 3; doEnd(); } else { outputMainText("\r\rSoon finishing up, leaving the two of you clean, Mommy gulps the last of the unexpected taste and smirks at you. 'Alright, that's good enough. Here, take some of this, you might like it some time. Now you should better get going before you make Lila dirty again.' She sticks out her tongue and hands you some of the concoction.\r\rYou take her advice, clothe yourself, give the naked Lila a hug goodbye, and head off.", false); itemAdd(227); hrs = 3; doEnd(); }; } else { if (vagTotal > 0){ outputMainText(((((((((" Her tongue slips in and out of your " + vulvaDesc()) + " folds, thinking of it no differently than her mother. Which is an odd thought, considering how deftly her tongue lashes around your ") + clitDesc()) + " clit") + plural(2)) + ". Between her efforts and the exreme tingling of the concoction, you soon find your ") + hipDesc()) + " hips bucking upon the plush carpet as you climax into the girl's mouth.\r\rLila's mother giggles at your reaction. 'Good, isn't she?'\r\rNot inquiring about the statement, you wait a few moments and you're soon as fresh as a can be. You take your time getting up and getting clothed when Mommy mentions Lila needs to help her with her own bath, but you didn't need to stick around for that. She gives you some of the cleaning solution and nudges you out, allowing you to give the naked Lila a hug and say goodbye before you're on your way."), false); itemAdd(227); doLust((-(sen) * 2)); hrs = 3; doEnd(); } else { outputMainText(" Though there's no big difference, since you don't have anything down there. So, instead, you soon fine yourself quite clean as they finish up quickly between their two tongues. You take your time getting up and getting clothed when Mommy mentions Lila needs to help her with her own bath, but you didn't need to stick around for that. She gives you some of the cleaning solution and nudges you out, allowing you to give the naked Lila a hug and say goodbye before you're on your way.", false); itemAdd(227); hrs = 3; doEnd(); }; }; }; }; if (buttonChoice == 3){ outputMainText("'Oh, ok, so you'd rather just help Lila then? An extra tongue is always welcome!' Mommy speaks as though you already knew what the job entailed.\r\rYou step inside to spot Lila already removing her sundress, standing there naked with her nipples and dainty slit exposed for you both to see as she waits. Her mother then guides you both along into the bathroom, making sure the girl doesn't dawdle.\r\rThe bathroom is fiarly sparse and actually lacks any sort of tub or main faucet to get water from. It even has a rather plush carpet. Though it's quickly apparent as to why when the two of them sit down upon it. Lila's mother holds a cup she has been carrying up to her mouth and takes a swig, swishing it around before swallowing with a gasp. Lila then does the same and proceeds to begin licking at the fur of her arm. Her mother's tongue, being much larger, assists her daughter and starts licking at the girls back.\r\rWith each lick, Lila's coat seems to shine cleanly and softly, thanks to whatever was in that concoction. Shortly, her mother hands you the cup as well and urges you to take a sip to help with the process. As it goes into your mouth and down your throat, it feels quite tingly and fresh, your mouth feeling both burning and cold at the same time and continuing on down your throat as you swallow. Besides feeling a bit... odd, you otherwise have no problem joining in.\r\rWith her mother on the back, you decide to take the front. The fur is soft and sweet smelling, and actually tastes fairly nice as well. Your tongue laps across Lila's nipples, making them stiffen against your lips. Lila stretches her leg high over her head, curling around to lick along her thigh as you begin to touch down further and further towards her nethers. You can hear her begin to pant, her breathing growing heavy until her tender lips are swollen and red with her heat kicking in once again.", true); outputMainText("\r\rHer mother rolls her eyes and chuckles, nodding for you to take care of her. With another nod, Lila begins to whimper and mewl as you lick and lap at her sensitive sex, making sure to clean every crevice. You continue on, even as honey begins to ooze out and dab your nose and fill your mouth. You gulp down as much as you can, trying to make everything clean, but eventually Lila rolls backwards with a quiver, blushing as she climaxes softly...", false); doLust(10); aff(4, Math.floor(((percent() / 20) + 4)), -1); doNext(); doListen = function ():void{ outputMainText("Smacking her lips, the girl's mother looks up to you. 'KO! You win!.' She chuckles. 'Pretty good, I must say. I'm sure you must have bathed your fare share of kittens. But, anyways, once Miss Hair-Trigger here gathers herself, it'll be my turn for a bath. As great as I'm sure you must be, I'd like to have a little mother-daughter time, if that's alright. Though here, take some of this wash for yourself.'\r\rShe hands you some of the concoction and lets you give the naked Lila a hug before seeing you off.", true); itemAdd(227); hrs = 3; doEnd(); }; }; if (buttonChoice == 6){ outputMainText("On second thought, you think it best to head back out. You're not quite sure if you want 'that' kind of bath.\r\rLila waves goodbye and her mother sees you off, and the two disappear into the hut to take care of the girl's bath.", true); hrs = 2; doEnd(); }; }; }; } else { outputMainText("You shake your head, saying you're clean enough. She looks at you dubiously, but shrugs. 'Okay, see yew latew!,' and she continues to hurry home.", true); hrs = 1; doEnd(); }; }; } else { if (percent() <= 33){ } else { if (percent() <= 50){ }; }; }; } else { if (lilaRep == 3){ outputMainText("You come across Lila as you walk through the city. She grins and runs up to you, pouncing you with a great big hug around your waist. She thanks you again, although she shifts awkwardly as she lets go. 6 blotches form across her dress from chest to belly, with another, smaller one below...\r\r'Uhh... Umm... I-I kinda have a diffewent problem now... The other kids don't know yet,' she reaches under her dress, pulling out a large square of absorbant cloth that has been soaked through, 'and I'm afwaid of Mommy finding out. C-Can yew help me again?' She blushes.\r\rNodding, you think it best to at least see what is going on. You take her hand and once again lead her up to your private hut. As you enter, you turn to shut the door-like curtain so nobody outside can see. Yet, as you turn back, you already find Lila pulling up her dress to show you her new issue. She get a bit stuck trying to pull it over her head, leaving the rest of her body completely naked. Thin streams of white liquid slowly drizzle down her half-dozen nipples, soaking into her fur. Not quite as bad as the slimy mess that has returned between her legs, but enough to leave her with a bashful blush as she finally frees herself and finds you staring at her dribbly nipples.\r\r'I-I thought if I took a dwink like Mommy sometimes does, I would be older like her. But then the othew day my chest felt funny. I wubbed it and then milk stawted leaking. I keep wubbing it when I get milky, but it doesn't stop and I have to walk awound with a towel so nobody sees. What should I do?'", true); viewButtonOutline(1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0); viewButtonText(0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0); if (checkItem(103)){ Choice1.visible = true; }; buttonWrite(1, "Dry Sand"); buttonWrite(5, "Lick"); buttonWrite(10, "Get Help"); doListen = function ():void{ if (buttonChoice == 1){ outputMainText("You reach into your bag and pull out a dose of Magical Sand of Dryness. Handing it to her, she nods and begins to rub it around her naked body. You watch as her cheeks turn redder, her nipples growing stiff and sticking out more obviously, droplets of milk spilling from their tips and onto the floor. The sand quickly does it's work, on the other hand, and the milk quickly dries up.\r\rHowever, the mess between her legs only seems to have amplified, drooling from her crotch down to her knees and then some. Her hands continue to move about herself, her eyes closing and her breath turning into quiet 'mews'. Both hands find their way down between her legs and she starts masturbating right before your eyes. She doesn't seem to mind your presence, your previous encounter reminding her how to take care of herself, especially as her body begins to quiver.\r\rYou manage to duck in just in time and catch her as her legs buckle out from under her. She breathes heavily over her shoulder, a purring echoing through her body, and she melts against your body. 'Th-thank yew...'", true); doNext(); doListen = function ():void{ outputMainText("Her body goes limp within your arms, a little exhausted from her sudden excitement. You opt to lift her up into your bed, letting her take a nap as you curl up to cuddle beside her.\r\rA few hours later, she rustles awake, well rested with a big content smile on her face. Her nipples don't seem to be leaking at all anymore and the other leak down below has been sated for now. She kisses you on the cheek for saving her once again, then picks up her sundress and drops it over her body rather lazily, neglecting her half-naked rump and groin as the fabric gets caught on her hip. She wistfully wanders back off into the city, pleasantly pleased.", true); doSexP(15); loseManyItem(103, 1); hrs = 4; exhaustion = (exhaustion - 8); lilaRep = 4; doEnd(); }; }; if (buttonChoice == 5){ outputMainText("You give her a kind smile and kneel before her. Her eyes go wide, her cheeks reddening further, as she watches your face close in on her chest, your mouth opening wide. She winces a little in fear as your moist tongue touches against her fur, but she quickly lets out a subdued gasp as you lick up across her sensitive nipple.\r\rHer milk tastes sweet on your lips as you lap it up from around her areole. It instantly stiffens under your tongue, protruding more from her small body. A fresh drop of milk beads at the tip, as though expecting you to lift it away. Instead, your whole mouth comes down upon it, Lila squirming as your lips latch down upon her nipple. She mewls cutely as you begin to suckle from her, the mess between her legs spilling out across your own. You gulp down as much of her milk as you can, the small amount rapidly running dry. Then you release, elliciting another gasp as her sensitive and wet nipple is touched by the cooler air outside of your mouth. Then another as your mouth tends to another nipple to release more. Then another, and another.\r\rBy the time you're down to the last couple of nipples, the small felin girl is curled around and hugging your head as she purrs, her hips bending up towards you to help you reach the bottom pair and her honey drizzling down your neck. You find it difficult to latch on as you lick around. Her hips begin to buck against you, trying to rub her little button against your body. Her thighs are drenched with her arousal, your efforts forcing her natural instincts to take over. So, you decide to go with the flow and drink from her other leaking place.", true); doNext(); doListen = function ():void{ outputMainText((("Wrapping your arms around her body, just above her tight little tush, you can feel her long soft tail whisk back and forth, twitchin expectantly. You drag your chin down between her legs and a mewling moan escapes her lips as your mouth opens around her small mound, softly biting down on it. Her hands rake across your " + clothesTop()) + ", grasping to hold on as her legs thrust her faster against your face. Sufficiently coated in her feminine slickness, just a slight lick from your tongue around her little button sends her over the edge.\r\rHer body seizes against your head. A flood of her fluid spills across the floor with an audible splash. All the while a meek whimper echoes about her throat, desparate to not turn into a loud cry of joy.\r\rShe quickly goes limp, relying on you for support. You slowly push her backwards, lifting her up onto your bed. She looks as though she's about to dose off, her tail wistfully brushing from side to side, but her hand dances across her nipples in thought before she looks up to you.\r\r'D-Do you like my flavow? Would... Would you like me to keep making more?'"), true); aff(4, Math.floor(((percent() / 20) + 4)), -1); buttonConfirm(); doListen = function ():void{ if (buttonChoice == 6){ outputMainText("You nod your head, brushing a finger across one of her still-full breasts and licking off the droplets that leak out to grab onto your skin.\r\r'Well...', she smiles, her intense blush fading as she averts her eyes sweetly, 'I like yew tasting me too... So I will keep making milk fow yew. I don't care if Mommy or the othew kids find out.' She lifts her head just enough to kiss you on the cheek.\r\rThen she nods back against the soft bedding and drifts off to sleep. You cuddle up next to her naked body and do the same, sleeping for a few hours until she recuperates and she awakens. You help her put on her sundress and let her know that she's welcome with you any time.", true); doSexP(30); hrs = 6; exhaustion = 0; lilaRep = 5; doEnd(); } else { outputMainText("You shake your head, telling her that it's probably best that she not continue lactating. Not that you thought her flavor was bad, but that there might be troubles with her mother and friends.\r\rShe smiles and nods back. 'Okay, if yew say so. I don't have to worwy about Mommy then. Thank you for helping me so much, though.' She leans up to kiss you on the forehead. 'I'll say hewwo if I see you again.'\r\rFighting her tiredness, she lazily gets up from the bed and puts on the sundress. Though slime still drips down between her legs and leaving a trail behind her, much of it webbed up against her tail, she slowly walks back out into the city and waves goodbye.", true); doSexP(15); hrs = 2; lilaRep = 4; doEnd(); }; }; }; }; if (buttonChoice == 10){ outputMainText("You pat her on her head and tell her she should go confront her mother about that kind of problem.\r\r'Okay...' Her shoulders drop in reluctance.\r\rShe takes your hand and begins to walk you out the doorway, but then pauses two steps out as she realizes she bare-naked still, with milk and heat dripping from her body. Face as bright as ever, she dashes back in and tosses on her sundress and rushes back out to you. As she leads you to her home, you take a moment to tug down the backside of her dress after walking for a while and realizing her bare bum had been exposed through the hasty dressing.\r\rAs you begin to approach her home, the girl's mother spots you through the doorway as you walk beside her moist daughte and jumps to greet you. 'Oh, hello! Ummm... Might you be the one she's been going on about, something about 'help'?', she eyes you suspiciously.\r\rYou stammer to get the words out, not exactly sure how to explain it.\r\rA grin spreads across her face as she lets out a chuckle. 'Hehe, don't worry. Lila has seemed much happier than when she first went into heat, and the way she talks about you being so nice to her lets me know you took good care of her. Although, umm... What's wrong now?' She looks down to Lila, who hangs her head in shame and tries to hide the blotches that decorate her dress.", true); doNext(); doListen = function ():void{ viewButtonOutline(0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0); viewButtonText(0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0); buttonWrite(5, "Drink it"); buttonWrite(7, "No thanks"); outputMainText("'Ohh, so that's what happened?' Lila's mother blushes as you explain the situation to her. 'I guess she saw me down a Cat's Meow every now and then when she wanted some motherly milk and thought that it helped me be more of an adult, a parent... Well-' She bends down to her daughter's height, rubbing the girl between the ears and trying to cheer her up. 'It's okay sweetie, as long as you didn't hurt yourself. Milk isn't bad for you, you know that. Though it might be a little...' She giggles. 'silly for someone your age. Do you want to stop it, honey?'\r\rLila looks around, trying to think of what to say. 'Ummm... What would I do with it?'\r\rHer mother smirks again. 'Silly...'\r\r She takes her daughter's hand and leads her inside, motioning for you to wait a few minutes. You hear odd gasping and mewling coming from within, and not the pained or frightened kind either. It doesn't take long before they both come back, Lila rubbing her front with a blush on her face and her mother carrying a teacup in her hand.\r\rLila's mother offers you the teacup, wiping some white from her upper lip. 'Would you like some? It's fresh~'\r\rLila looks up at you, curious as to what you will do.", true); doListen = function ():void{ if (buttonChoice == 5){ outputMainText("You accept the cup, noticing it's warm in your hand. Halfway filled with milk, it does indeed seem quite fresh. Lifting it to your lips, the taste is sweet and light on your tongue. You sip it all the way down, going faster and faster until it's completely empty. With a smile, you lick your white mustache and thank them for the drink.\r\rLila's eyes light up as you seem quite pleased with something she made, her tail flicking happily behind her. 'No Mommy, I don't wanna stop it. I wanna keep making milk.'\r\rHer mother lets out another chuckle. 'Alright honey. But just remember, it's up to you to take care of it. I don't want to hear you moan and groan about how your boobs hurt when you haven't milked them or anything.'\r\r'I won't!' The girl is quite excited, nearly hopping up and down as her eyes dart bashfully up at you and the cup you hold. However, her legs quickly cross as she feels some moisture between her thighs, the blotch at her groin growing.\r\r'Umm... Excuse me...' She dashes off into the hut.\r\rOnce more, her mother laughs. 'I'm sorry she ran off on you like that, I'm sure she'll be a while. She seems to have learned a new trick to deal with her heat and tends to use it often, it seems. I wonder who could have possibly taught her how...' Her eyes roll towards you.\r\rAfter a few moments of making you squirm beneath her glare, she sighs with a smile. 'Ahh well. She's becoming her own woman. At least she's not as young as I was.' She averts her eyes with embarrassment. Then she places a hand on your arm and strokes it. 'You're welcome here whenever Lila wants you and as long as you take good care of her.' She winks and then says her goodbyes, trying to make you leave before some loud mewls echo from deeper inside...", true); hrs = 3; lilaRep = 5; doHP(5); doSexP(25); doEnd(); } else { outputMainText("You shake your head, not really wanting the offered beverage.\r\r'Hehe, it's alright, it's not for everyone.' The mother then downs it herself, licking up the resulting mustache.\r\rHowever, Lila watches as you reject her milk and her expression turns somewhat serious. 'Mmm... I don't wanna make milk, Mommy. We can stop it.'\r\rHer mother pats her on the head again. 'Alright honey, just try to not play with it so much and you'll stop making milk; I'll help you.' Then she turns to you. 'Thanks for taking care of my daughter... again. I won't pretend to know how she has taken up certain... 'habits' to help her when her heat gets bad, but she seems much better for it. I hope you'll continue to take good care of her in the future and never harm her.' She gives you a wink.\r\rEager to get dry again, Lila give you a quick hug and disappears into the hut. Her mother chuckles once more and says her goodbyes, giving you a few coins for you assistance.", true); doCoin(20); hrs = 2; lilaRep = 4; doSexP(5); doEnd(); }; }; }; }; }; } else { if (lilaRep == 2){ outputMainText("You come across the small felin girl you had met before as you walk through the city. She walks up with a smile to say hello and thanks you again, though she shifts awkwardly as she stands, a small blotch forming on her dress at her groin as she recalls how you helped her...\r\rWith some slight embarrassment in her tone, she speaks 'Uhh... Umm... D-Do yew mind helping me like you did before? I-It seems to have come back...'\r\rHer feet rub against each other as she looks up at you with an adorable expression. Obviously whatever you did before was only a temporary solution, for some reason. Not that it's a problem though, as she seems to enjoy your help.", true); viewButtonOutline(1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0); viewButtonText(0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0); if (checkItem(103)){ buttonWrite(1, "Dry Sand"); Choice1.visible = true; }; buttonWrite(5, "Fondle Her"); buttonWrite(10, "Get Help"); doListen = function ():void{ if (buttonChoice == 1){ outputMainText("You reach into your bag and pull out a dose of Magical Sand of Dryness. You give it to her and she seems to know what to do. Before you can turn around she immediately lifts her dress.\r\rHer little fuzzy nether-lips are pink and swollen, with webs of her feminine arousal splayed throughout her small thighs. The lowest pair of her six nipples are also visible, glowing slightly red as she has probably been rubbing them too much lately. Blushing heavily, she takes the sand in her small hand and brings it down to her crotch. With a mewl she touches herself, her knees knocking together as she shudders. Small gasps escape her lips as she rubs it in, her hand slipping over her sensitive button again and again, more than is needed by the sand. The slickness of her young pussy slowly dries up, but that doesn't prevent her from collapsing to her knees as she shudders.\r\rAfter a few awkward moments, her eyes snap open, her cheeks even redder than before, as she jumps to her feet. Wobbling a little, she brushes her dress down, her tail hanging languidly while the tip swishes from side to side, contently. She presses her dress to her crotch with a hand and smiles.\r\r'It's not wet anymore!' She cheers happily.", true); doNext(); doListen = function ():void{ outputMainText("Whether it was because of the sand or the relaxation in her lust, she seems to be dripping no longer. She lunges forward and wraps her arms around your waist, hugging into your groin.\r\r'Thank yew so much!'\r\rShe lets go and fumbles with one of her pockets.\r\r'Here, you can have my milk Mommy gave me. I alweady had enough today.'\r\rWith a smile and another hug, she gives you a bottle of milk before running off to join her friends in some tease-less fun.", true); stats(0, 1, 0, 0); doSexP(15); loseManyItem(103, 1); itemAdd(500); hrs = 1; doEnd(); }; }; if (buttonChoice == 5){ outputMainText((("You offer to masturbate her to dismiss her heat, though you mention it might be a bit... intimate. But, already accustomed to your presence, she smiles with a nod. Taking her hand, you lead her to your private hut high in the trees where you have been sleeping.\r\rSitting beside her on your bed, she pulls up her dress in front of you before you can turn away. Her little fuzzy nether-lips are pink and swollen, with webs of her feminine arousal splayed throughout her small lap. Blushing heavily, she turns to you and mewls,\r\r'B-Be gentle, pwease.'\r\rNodding, you carefully caress up the girl's thigh. She clenches her eyes shut at first as your hand approaches her sensitive area. Her tiny nether-lips are so soft and delicate on your fingertips, like flower petals. Flower petals completely drenched in dew.\r\rShe lets out a short gasp as you focus upon her little button. Her small hips squirm on the bed, her thighs quaking uncontrollably. All the while, her eyes still shut.\r\rWithin just a few moments of gently fondling the girl, her body seizes and she lets out stuttered mewls. Your hand is swamped in a flood of her feminine honey, drenching her dress and the side of the bed. She falls towards you, gasping for breath as she grasps at your " + clothesTop()) + "."), true); doNext(); doListen = function ():void{ outputMainText("A few minutes later, she sits upright, a bit woozy. As her wits return to her, she looks down at your hand and how it glistens with her moisture. \r\r'I'm sowwy... B-But thank you, it was really nice!' She jumps up from the bed, letting her dress fall. 'Here, Mommy gave this to me to help me grow up into a big girl.'\r\rShe pulls a vial from her dress and hands it to you, then gives you a big hug before darting out of the hut, her dress still hiked up around her waist and stuck there from all the moisture, leaving her nethers free for all to see.", true); doSexP(10); itemAdd(114); hrs = 3; doEnd(); }; }; if (buttonChoice == 10){ outputMainText("You smile gently, telling her that you'll help her tell her Mommy. She nods with a blush, taking your hand and leading you back to her hut, leaving a slick trail behind her the whole way. Her tail twitches sporadically as she whimpers along the way, her thighs rubbing tightly together. As you approach, her mother spots you through the doorway and comes out to greet you.\r\r'Hello, may I ask what is going on?'\r\rShe eyes you with her daughter, especially noticing the moist river in her daughter's dress. Taking some time, you explain the situation. With a nod and a tinge of redness in her own cheeks, she speaks,\r\r'Thank you for bringing her back to me. I'm so sorry to have involved you like this! I should have noticed when she was so quick to get out of the hut this morning... If you don't mind waiting outside, I'll be sure to repay you for your kindness; once I take care of my daughter.", true); doNext(); doListen = function ():void{ outputMainText("Nodding, you wait outside the doorway as the felin woman takes her daughter's other hand and the two disappear into the hut.\r\rYou hear them talking within, though it's too faint to make out. But, several minutes later, it's hard to miss the high-pitched mewling, followed by loud moans that echo back out. A few minutes more, and some shuffling can be heard as the mother returns to the doorway.\r\r'Thank you once more. Please, take these coins as a small repayment for being so gentle with her. If she comes to you for help again, I'll gladly pay you more for assisting!'\r\rShe hands you a bunch of coins. She then blushes heavily as a strand of a clear slick fluid splashes down into her cleavage, having missed wiping it from the fur on her chin. She nods in thanks again before ducking inside, trying to hide the wet fur...", true); doCoin((Math.floor((percent() / 4)) + 3)); doSexP(5); hrs = 3; doEnd(); }; }; }; } else { if ((((((((((((cockMoist > 9)) && ((cockMoist <= 12)))) || ((((((cockMoist > 6)) && ((cockMoist <= 9)))) && ((lust > 25)))))) || ((((((cockMoist > 3)) && ((cockMoist <= 6)))) && ((lust > 50)))))) || ((((((((cockMoist > 0)) && ((cockMoist <= 3)))) && ((lust > 75)))) && ((cockTotal > 0)))))) || ((((((((((vagMoist > 9)) && ((vagMoist <= 12)))) || ((((((vagMoist > 6)) && ((vagMoist <= 9)))) && ((lust > 25)))))) || ((((((vagMoist > 3)) && ((vagMoist <= 6)))) && ((lust > 50)))))) || ((((((((vagMoist > 0)) && ((vagMoist <= 3)))) && ((lust > 75)))) && ((vagTotal > 0)))))))){ bc(); outputMainText((("A little felin girl slowly approaches you, an awkward kink in her step. The cat-like ears atop her head flick about anxiously as she coils her tail over and over in her nervous hands. She seems to be looking side to side for others, but her eyes keep glancing across you. Eventually, she comes right up to you and with a squeak in her voice and a slight lisp, she asks,\r\r'Umm... E-Excuse me. B-But can yew help me?'\r\rShe stares at the wet blotch in your " + clothesBottom()) + " and then moves her tail aside to reveal her own dress. From her groin all the way down to the ground runs a clear path of moistness, rather obvious now that she's revealed it. She speaks again, meekly and cutely,\r\r'Th-The other kids make fun of me because I'm so wet... They say I wee'd myself, but-but...' The fur on her cheeks blush red. 'It is my first heat and I-I was too embarrassed to tell Mommy... C-Can yew help me?'\r\rShe looks once more to your own wetness issue, hoping you know better how to handle it."), true); if (lilaRep == 1){ outputMainText("\r\rYou've seen this girl before, yet she doesn't seem to recall your face nor what you might have done in the past. You probably didn't leave a strong enough impression or the memory got lost in her stress from last time.", false); }; outputMainText("\r\r\rWhat do you do?", false); viewButtonOutline(1, 0, 1, 0, 1, 1, 1, 0, 0, 1, 0, 0); viewButtonText(0, 0, 1, 0, 1, 1, 1, 0, 0, 1, 0, 0); if (checkItem(103)){ buttonWrite(1, "Dry Sand"); Choice1.visible = true; }; buttonWrite(3, "Diaper"); buttonWrite(5, "Masturbate"); buttonWrite(6, "Lick"); buttonWrite(7, "Sex"); buttonWrite(10, "Get Help"); doListen = function ():void{ if (buttonChoice == 1){ outputMainText("You reach into your bag and pull out a dose of Magical Sand of Dryness. You give it to the poor girl and explain how to use it. She nods and before you can turn around she immediately lifts her dress.\r\rHer little fuzzy nether-lips are pink and swollen, with webs of her feminine arousal splayed throughout her small thighs. The lowest pair of her six nipples are also visible, glowing slightly red as she has probably been rubbing them too much lately. Blushing heavily, she takes the sand in her small hand and brings it down to her crotch. With a mewl she touches herself, her knees knocking together as she shudders. Small gasps escape her lips as she rubs it in, her hand slipping over her sensitive button again and again, more than is needed by the sand. The slickness of her young pussy slowly dries up, but that doesn't prevent her from collapsing to her knees as she shudders.\r\rAfter a few awkward moments, her eyes snap open, her cheeks even redder than before, as she jumps to her feet. Wobbling a little, she brushes her dress down, her tail hanging languidly while the tip swishes from side to side, contently. She presses her dress to her crotch with a hand and smiles.\r\r'It's not wet anymore!' She cheers happily.", true); doNext(); doListen = function ():void{ outputMainText("Whether it was because of the sand or the relaxation in her lust, she seems to be dripping no longer. She lunges forward and wraps her arms around your waist, hugging into your own dampness.\r\r'Thank yew so much!'\r\rShe lets go and fumbles with one of her pockets.\r\r'Pwease, have this. It's not much... But I was going to drink it later to show I was a big girl. And now I don't have to!'\r\rWith a smile, she hands you a vial of Cat's Meow.", true); stats(0, 1, 0, 0); lilaRep = 2; doSexP(25); loseManyItem(103, 1); itemAdd(105); hrs = 1; doEnd(); }; }; if (buttonChoice == 3){ outputMainText("You mention that you should take her to the local tailor to get herself a more 'fitting' piece for her outfit that will help her stay dry. She nods and takes your hand, but as you go to the tailor, her face turns pale as she sees what you mean. You grab a diaper from a shelf, with the only variety available being the extra poofy kind, and bring it up to the counter for purchase.", true); if (coin < 40){ outputMainText(" However, you don't seem to have enough coin on hand to pay for it.\r\rYou break to her the bad news, but for some reason she seems especially joyful. And she's rather quick to get away from you, seemingly in a hurry to do something else... ", false); hrs = 2; lilaRep = 1; doEnd(); } else { outputMainText(" You pay the 40 coins for the diaper and turn to take her hand once again. Although, she seems rather afraid as you do...\r\rYou lead her back up to your private room and sit her up on the bed. She seems oddly silent, closing her eyes with an intense blush and trying to ignore the fact that you're laying her down and pulling up her sundress, exposing her dribbling nethers. Her lower lips are extra-pink and swollen, signs of her heat. You spread her legs wide and wipe up the mess with a towel, eliciting a small mewl from her, before pulling her feet high and raising her bum so you can wedge the diaper underneath. You place her back down, spreading her legs once more to pull up the flap and then fasten its sides.\r\rLifting her back up to a stand and checking to make sure her tail comfortably fits over the waistband, she doesn't seem particularly pleased. As her dress falls back down, the outline of the thick undergarment is quite obvious, though her wetness seems to have ended.\r\r'Uhh... Umm... Th-Thank you..'\r\rShe begins to head back out, waddling slowly. With each step she cringes at the crunch of the padding, her cheeks even redder than when you first met her. Her tail twitches in an annoyed sense and, somehow, you have a feeling she won't be wearing your gift for too long. Nor will she probably wish to remember this experience...", false); doCoin(-40); hrs = 3; lilaRep = 1; doEnd(); }; }; if (buttonChoice == 5){ bc(); outputMainText("You offer to help her learn how to take care of it herself, though you mention it might be a bit... intimate. Nervous and unsure, she meekly nods. Taking her hand, you lead her to your private hut high in the trees where you have been sleeping.\r\rSitting beside her on your bed, you tell her that she'll have to reach up to where it feels the hottest. Nodding, and without thinking, she pulls up her dress in front of you before you can turn away. Her little fuzzy nether-lips are pink and swollen, with webs of her feminine arousal splayed throughout her small lap. Blushing heavily, she turns to you and mewls,\r\r'I-I'm scared... C-Can you show me?", true); viewButtonOutline(0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0); viewButtonText(0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0); if (gender != 0){ buttonWrite(5, "On yourself"); Choice5.visible = true; }; buttonWrite(7, "On her"); buttonWrite(10, "Don't"); doListen = function ():void{ if (buttonChoice == 5){ outputMainText((((("Pulling " + pullUD(2)) + " your ") + clothesBottom()) + ", you give her a good view of your "), true); if (cockTotal > 0){ outputMainText((((cockDesc() + " appendage") + plural(1)) + ". She shrieks at the sight of such an odd thing, closing her eyes and running out the door, her wet dress sticking to her belly while her nethers are clear for all to see.\r\rFortunately, little girls showing off their nethers is somewhat common in Siz'Calit and nobody seems to pay any mind."), false); doLust(3); lilaRep = 1; hrs = 2; doEnd(); } else { if (vulvaSize > 4){ outputMainText((vulvaDesc() + " female sex. It's so mature and large, so much stranger than her own, that the girl shuts her eyes and covers them with her hands.\r\r'I'm sorry miss lady, I-I don't think I'm weady for this'\r\rStill covering her eyes, she jumps off the bed and heads out the door of the hut, her moist skirt stuck to her belly and her nethers clear for everyone to see."), false); doLust(3); lilaRep = 1; hrs = 2; doEnd(); } else { outputMainText((((((vulvaDesc() + " female sex. Not much different than herself, she stares intently at the moist webs that mirrors her own lap. Taking your fingers, you rub up through your cleft") + plural(2)) + " focusing on the ") + clitDesc()) + " button therein.\r\rDoing the same, the little girl lets out a gasp as she touches herself, her thighs twitching upon the bed. You smile at her, placing a hand on her head between her ears and continue to fondle yourself.\r\rAgain, she does the same, although soon her eyes close and her small hand moves faster and faster. She leans into your body, allowing you to wrap your arm around her while the other busies itself at your groin. Rapidly, you begin to gasp, more aroused than you thought you were, and she echoes in turn.\r\rWithin moments, you both cry out in unison, collapsing onto the bed in an orgasmic fit, your combined honey dripping down the side."), false); doNext(); doListen = function ():void{ outputMainText("The little felin girl snuggles into your body, hugging you close as she dozes off, a leg hanging over your own as her bare sex presses against your thigh. Not wanting to move, you do the same, falling asleep beside her.", true); doNext(); doListen = function ():void{ outputMainText((("Some hours later, she rustles awake within your arms, rousing you as well. She nuzzles into your " + boobDesc()) + " chest, purring softly. A few sweet moments pass and she mews, slipping a hand between her legs.\r\r'Thank yew so much! It woked!' She grins happily. Then she blushes, 'And thank yew for teaching me... I'll neva forget it!'\r\rKissing you on the cheek, she pushes something into your belly before hopping off the bed and running out of the hut, her tail swishing high behind her ...And her butt in plain view as she forgot to string the perky tail through its hole, leaving it to pull the dress up from underneath."), true); doLust(-(Math.floor((sen / 2)))); exhaustion = 0; hrs = 6; stats(0, 4, 0, 2); lilaRep = 3; itemAdd(200); aff(4, Math.floor(((percent() / 20) + 4)), -1); doSexP(45); doEnd(); }; }; }; }; }; if (buttonChoice == 7){ outputMainText((("Nodding, you carefully caress up the girl's thigh. She clenches her eyes shut at first as your hand approaches her sensitive area. Her tiny nether-lips are so soft and delicate on your fingertips, like flower petals. Flower petals completely drenched in dew.\r\rShe lets out a short gasp as you focus upon her little button. Her small hips squirm on the bed, her thighs quaking uncontrollably. All the while, her eyes still shut.\r\rWithin just a few moments of gently fondling the girl, her body seizes and she lets out stuttered mewls. Your hand is swamped in a flood of her feminine honey, drenching her dress and the side of the bed. She falls towards you, gasping for breath as she grasps at your " + clothesTop()) + "."), true); doNext(); doListen = function ():void{ outputMainText("A few minutes later, she sits upright, a bit woozy. As her wits return to her, she looks down at your hand and how it glistens with her moisture. Aghast, she hops off the bed.\r\r'I'm so sowwy! Please, forgive me! Thanks for trying to help, please, take this!'\r\rShe pulls a vial from her dress and hands it to you before darting out of the hut, her dress still hiked up around her waist and stuck there from all the moisture, leaving her nethers free for all to see.\r\r\rYou have obtained a Cat's Meow!", true); lilaRep = 2; doSexP(30); itemAdd(105); hrs = 3; doEnd(); }; }; if (buttonChoice == 10){ outputMainText("Deciding it best to not get any more involved than you already are, you pat her on the head between her ears. You tell her this is something her Mommy should teach her and that it's nothing to be ashamed of. You pat your own moistness as proof and dab a bit of it on her little button nose.\r\rCheered up a little, she smiles and gives you a hug.\r\r'Thank yew. I'll try!'\r\rShe pushes her dress back down and runs out the door, leaving you feeling slightly warm and fuzzy inside.", true); stats(0, 3, 0, 0); lilaRep = 1; hrs = 2; doEnd(); }; }; }; if (buttonChoice == 6){ bc(); outputMainText("You offer to help lick the mess from her, if she's alright with going to the private hut where you're staying. As licking is quite common among Felin's, she nods her head in agreement and takes your hand in hers. The two of you head up to your hut in the trees.\r\rYou help her up onto the bed, her legs dangling off to the side. You kneel down before her, gently petting her knees as you wait for her to be comfortable enough. She closes her eyes and nods, pulling up her wet dress. Her cheeks flush with an instense blush as you inspect her tiny lap, completely filled with slick webs, her tender nether-lips pink and puffing out from her fur. You pull her legs open so your head can fit in between, a soft mewl escaping her lips. You lean forward, licking the stuff up from her thighs...\r\r\rJust clean up the stuff or lick her virgin sex more intimately?", true); viewButtonOutline(0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0); viewButtonText(0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0); buttonWrite(5, "Clean"); buttonWrite(7, "Intimate"); doListen = function ():void{ if (buttonChoice == 5){ outputMainText("Carefully, you slurp the stuff up from her fur. Slowly going up her thighs, her hips twitch, her tail flailing wildly behind her. Her eyes clench as you come closer to her naughty bits, her hands clenching the bedsheets with anxiety.\r\rNot wanting to go too far, you gently lap at her swollen nether-lips, the soft, delicate folds like flower petals. Flower petals completely drenched in dew. Quickly and cautiously, you take care of what you can before she lets out a soft moan.\r\rEyes still clenched shut, you nudge her and tell her you're finished. Her eyes blink open and she looks down at herself. She looks a bit happier, noticing she's relatively dry, but a shiver shoots through her small body and she clenches her thighs.\r\rIn an instant, she flips her dress down and hops from the bed, running out of the hut, calling back, 'Th-Thank you!'\r\rAs she darts through the doorway, you hear a splash. A large gob of feminine honey marks the floor, just before the exit, trailing along her path. You wipe the massive amount of slick fluids from your own face, feeling a bit tingly yourself, and go on your way.", true); lilaRep = 1; doLust(Math.floor((lib / 2))); aff(4, Math.floor(((percent() / 20) + 4)), -1); hrs = 3; doEnd(); }; if (buttonChoice == 7){ outputMainText((("Carefully, you slurp the stuff up from her fur. Slowly going up her thighs, her hips twitch, her tail flailing wildly behind her. Her eyes clench as you come closer to her naughty bits, her hands clenching the bedsheets with anxiety.\r\rAs you reach her swollen nether-lips, your tongue licks across the soft, delicate folds. Like petite flower petals, your mouth nibbles gently on the dew-drenched bits, making her hips jerk upon the bed. You slurp up more stuff as it gushes from her virgin sex, swamping your face from nose to chin in the slick sweetness. Your tongue roams up through the supple slit, until it lands at the little button in the front. Your maw engulfs that corner of her dainty vulva, devouring her sensitive portions with intense sucking. In mere seconds, her whole body quivers, her spine seizing and falling backwards onto the bed. Her legs wrap around your head and weakly push you into her cunt as a flood of her feminine honey splashes out around you, covering nearly all your face and spilling down your " + boobDesc()) + " chest.\r\rMoments, later, she lets go, purring softly as she falls asleep. You wipe your face off, cleaning up some of the mess, before curling up beside her, surprisingly tired. As you drift off, she rolls towards you and snuggles against your body, her leg crossing over yours and her sex pushing into your thigh..."), true); doNext(); doListen = function ():void{ outputMainText((("Some hours later, she rustles awake within your arms, rousing you as well. She nuzzles into your " + boobDesc()) + " chest, purring softly. A few sweet moments pass and she mews, slipping a hand between her legs.\r\r'Thank yew so much! It woked!' She grins happily. Then she blushes, 'And thank yew for cleaning me so well, I really liked it... I'll neva forget it!'\r\rKissing you on the cheek, she pushes something into your belly before hopping off the bed and running out of the hut, her tail swishing high behind her ...And her butt in plain view as she forgot to string the perky tail through its hole, leaving it to pull the dress up from underneath."), true); stats(0, 0, 2, 2); doLust(Math.floor((lib / 2))); itemAdd(200); lilaRep = 3; aff(4, Math.floor(((percent() / 20) + 8)), -2); doSexP(45); exhaustion = 0; hrs = 3; doEnd(); }; }; }; }; if (buttonChoice == 7){ outputMainText("Her eyes go wide as you mention sex.\r\r'Eww! That's what my Mommy and my Daddies do! I don't wanna do that!!\r\rShe then runs off in the other direction, trailing slime behind her as it still dribbles from her dress.\r\rIt's probably best you move along.", true); stats(0, -2, 0, 0); lilaRep = 1; hrs = 1; doEnd(); }; if (buttonChoice == 10){ outputMainText("You smile gently, telling her that you'll help her tell her Mommy. She nods with a blush, taking your hand and leading you back to her hut, leaving a slick trail behind her the whole way. Her tail twitches sporadically as she whimpers along the way, her thighs rubbing tightly together. As you approach, her mother spots you through the doorway and comes out to greet you.\r\r'Hello, may I ask what is going on?'\r\rShe eyes you with her daughter, especially noticing the moist river in her daughter's dress. Taking some time, you explain the situation. With a nod and a tinge of redness in her own cheeks, she speaks,\r\r'Thank you for bringing her back to me. I'm so sorry to have involved you like this! I should have noticed when she was so quick to get out of the hut this morning... If you don't mind waiting outside, I'll be sure to repay you for your kindness; once I take care of my daughter.", true); doNext(); doListen = function ():void{ outputMainText("Nodding, you wait outside the doorway as the felin woman takes her daughter's other hand and the two disappear into the hut.\r\rYou hear them talking within, though it's too faint to make out. But, several minutes later, it's hard to miss the high-pitched mewling, followed by loud moans that echo back out. A few minutes more, and some shuffling can be heard as the mother returns to the doorway.\r\r'Thank you once more. Please, take these coins as a small repayment for being so gentle with her. Oh, and take this,' she reaches into a pocket and pulls out a vial. 'Apparently she got this from a friend of the family, saying it was for me. It seems she thought it would help her seem like a grown up in front of her friends... Thankfully, we caught her before she could use it and you can have it in turn.'\r\rShe hands you the vial of Cat's Meow as well 20 coins. She then blushes heavily as a strand of a clear slick fluid splashes down into her cleavage, having missed wiping it from the fur on her chin. She nods in thanks again before ducking inside, trying to hide the wet fur...", true); doCoin(20); itemAdd(105); lilaRep = 2; doSexP(15); hrs = 3; doEnd(); }; }; }; } else { outputMainText("As you wander about the tree-borne city of Siz'Calit, you see a young felin girl scurry by. Her cheeks are red while her ears flick upon her head, her tail swishing sporadically behind. Her hands seem to be trying to cover the lower front of her small sundress. She glances up at you, her eyes staring at your groin for a moment. She blushes more and increases her pace, hurrying past you. Turning to watch her, you see the backside of her dress has a blotched river of moisture running down from her bum. However, judging by the dollops of clear slick fluid that glisten a path behind her, it doesn't seem like she had peed herself...\r\rShrugging, you continue on.", true); hrs = 1; doEnd(); }; }; }; }; }; }; } else { if ((((chance > 20)) && ((chance <= 50)))){ outputMainText("A group of felins pass by on one of the wide wooden bridges, some males with some females. They sway a little with each step, their tails oddly swinging the wrong way. Within their hands they have some bottles of milk, though they seem a bit disappointed with how little is left.", true); if ((((((((lactation > 2)) && ((breastSize > 3)))) && ((milkEngorgementLevel > 0)))) || ((((((udderLactation > 2)) && ((udderSize > 6)))) && ((udderEngorgementLevel > 0)))))){ outputMainText(((((((" However, just a few steps behind you, they come to a stop. Their button noses sniff at the air, their whiskers twitching curiously. Slowly, they turn towards you, their eyes focusing on your milky breasts...\r\rCatty grins grow upon their faces. Although they may be out of their tasty beverages that makes them a little woozy with joy, they seemed to have found another nice source of their favorite drink~\r\rBefore you know it, you're laying on the ground, your " + clothesTop()) + " pulled ") + pullUD(1)) + ", your front exposed and leaking. Your sight is quickly covered as one of the females in a skirt sits on your face, her slightly moist panties squishing your nose between her nether-lips. Her tail swishes across your head again and again as you feel your body ravaged, your ") + nipDesc()) + " nipples"), false); if (udders == true){ outputMainText(((" and " + teatDesc()) + " teats"), false); }; outputMainText(" being tugged and suckled from until milk is spraying from your body.", false); getMilk = Math.max(milkAmount(1), milkAmount(2)); if (getMilk <= 1000){ outputMainText("\r\rTheir many thirsty mouths quickly drain you dry. Disappointed once more with the lack of delicious motherly goodness, they stumble away from you, leaving you used and half-naked...\r\rAt least they didn't bite.", false); hrs = 2; doEnd(); } else { if ((((getMilk > 1000)) && ((getMilk <= 4000)))){ outputMainText("\r\rTheir many thirsty mouths suck and suck, guzzling down your delicious milk. It doesn't take long before they drain you dry, but once they do, they let out little burps of satisfaction. Thoroughly pleased with their bartender, they drop a bunch of coins on you for the drink before stumbling off again, their tails drooping much more lazily than before.", false); doCoin(Math.floor((percent() / 3.3))); hrs = 2; doEnd(); } else { if (getMilk > 4000){ outputMainText("\r\rTheir many thirsty mouths suck and suck, guzzling down your delicious milk. However, you produce so much that they simply can't seem to drain you. Yet that doesn't keep them from trying... The more and more they suck from you, the more lazy their efforts become. Even the tail on your head slows in pace, until it comes to a stop...\r\rStill pinned by the many bodies, you can hear them purr as they have fallen asleep. You take the opportunity to wiggle yourself free, nearly yanking down the girl's panties in the process. Once out, they merely curl up on the bridge, cuddling against each other. Another girl seems to have her skimpy shirt pulled up to her second pair of breasts, while a male has a prickly penis pulled from his pants. Whatever they were planning to do, it obviously didn't get too far.\r\rAs payment for their feast, you grab a couple of their small pouches. It's the least you could do to make up for their rude ambush.", false); itemAdd(204); itemAdd(204); hrs = 3; doEnd(); }; }; }; } else { outputMainText(" They ignore you for the mostpart, busy talking and laughing amongst themselves.", false); hrs = 1; doEnd(); }; } else { if ((((chance > 50)) && ((chance <= 75)))){ outputMainText("'E-Excuse me...' A meek voice calls from behind you.\r\rAs you turn, you spot a felin male. Somewhat on the short side, he seems rather effeminate with some hips that are wider than his shoulders and his nipples poking through his fur, stiff and erect as though he were cold, despite the warm weather of the jungle. He also seems to be wearing nothing but a hardly modest loincloth that exposes half of each cheek of his round rear. And he seems to be quite embarrassed to be walking around as such.\r\r'Umm... Y-You seem as though you might be the kind of person that would explore outside of the city. I-If you don't mind, my mistress would like a word with you.'\r\r\rDo you accept?", true); if (mistressRep > 0){ outputMainText("'H-Hello!' You hear a familiar voice from behind you.\r\rYou turn to see Fidoris, still in his skimpy outfit and embarrassed look, though his fur is slightly matted with some sort of slick liquid. It would hardly take two guesses to figure out where he has been.\r\r'M-Mistress would like to invite you over again, if that's alright.'\r\rWill you go?", true); }; buttonConfirm(); doListen = function ():void{ if (buttonChoice == 6){ outputMainText("The felin femme-boy leads you to a rather large tree-borne hut. The closer he gets, the quicker his pace seems to be, as his tail begins to swish in anticipation.\r\rOpening the veil to the home, it seems the 'mistress' is rather well off. Lots of large, plush furniture, plenty of ornate, expensive trinkets and decorations, and overall elegant lifestyle. However, despite all of that, the femme-boy leads you straight to the bedroom.\r\rHe stops just inside the doorway. Past him, you can see an extavagent bed, perpendicular from your perspective, sitting in the middle of the room. On top of it lays the mistress. She's a gorgeous felin lady, with a youthful face and silky-smooth fur that has a healthy shine. You can see her erotically knead the top two pairs of her six breasts through her gown while she lays on her back, oblivious to your presence. Past her second pair, however, her body is hidden behind a mostly opaque curtain. Although, you can still see the silhouette of what might be her form. Her belly seems to be much larger than her figure would suggest, as if she were somewhat pregnant. And her legs seems to be bent and drawn back, straddling a large, round object that is even larger than her belly, perhaps even her whole body.", true); if (mistressRep > 10){ outputMainText("Fidoris leads you to the usual place. The mistress awaits upon her bed, her belly massive with vaginal flesh and pushing her many breasts towards her sides. So large that her gown cannot cover her lowest pair of breasts and stretching it across the next. The curtain that hides her giant pussy from the bedroom entrance is rather useless as you can see the thick lips protrude past the edge, her large clit standing erect above them. All of the growth thanks to your efforts.", true); }; doNext(); doListen = function ():void{ if (mistressRep == 0){ outputMainText("'Mistress, I've found an explorer!' The felin boy announces with a wag of his tail.\r\rThe woman turns to look at you. 'Ahh, good boy, Fidoris.' She rolls onto her side, both her large belly and the thing between her legs shifting with her. She props herself up with an arm and smiles. 'Well, traveler. I have a proposition for you. Every now and then, I get certain... 'urges' for a particular kind of fruit. It is found within the jungle and looks very much like a... well, let's just say we call it a 'Pussy Fruit'. Due to the dangers in retrieving it, however, it is hard to obtain such a fruit safely. So, I will pay well for such a fruit, when I'm in the mood. And if I am, I will send my boy, Fidoris, out to retrieve you. I hope that sounds alright?", true); }; if (mistressRep > 0){ outputMainText("Fidoris speaks out 'Mistress, I have brought the traveler once again!'\r\rThe woman rolls over, her belly and massive vulva rolling with her. 'Good boy! I hope you have brought along something nice for me?' Her eyes light up.", true); }; viewButtonOutline(1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0); viewButtonText(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0); buttonWrite(1, "Puss Fruit"); if (checkItem(210)){ Choice1.visible = true; }; if (mistressRep > 10){ outputMainText(" Then her hands grope across her belly, squishing the aroused passage within. 'Mmm... You've been so good to me, though, so I'll let you in on another deal. If you can bring me three of the fruits at a time, I'll have Fidoris cook up my special concoction. Just between you and I, of course, for all the fun we've had~,' she gives you a naughty wink. 'I'll also let you in on the recipe, but without dear Fidoris I'm afraid it might be less efficient for you.", false); Choice3Outline.visible = true; }; buttonWrite(3, "3x"); if ((((countItem(210) >= 3)) && ((mistressRep > 10)))){ Choice3.visible = true; }; buttonWrite(11, "Nothing"); doListen = function ():void{ if (buttonChoice == 1){ loseManyItem(210, 1); viewButtonOutline(1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0); viewButtonText(1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); buttonWrite(1, "Fidoris"); buttonWrite(3, "You"); buttonWrite(9, "Both"); buttonWrite(11, "Cock"); if ((tallness / 12) < (mistressRep + 4)){ Choice3.visible = true; }; if ((tallness / 12) < (mistressRep / 3)){ Choice9.visible = true; }; if (((((((cockSize * cockSizeMod) > (60 + (mistressRep * 4)))) && (((cockSize * cockSizeMod) < eVagLimit((120 + (mistressRep * 8))))))) && ((lust > 20)))){ Choice11.visible = true; }; outputMainText("'Great! Fidoris, bring our guest over here!' She grins with excitement.", true); if (mistressRep == 0){ outputMainText("\r\rThe femme-boy takes you by the hands and leads you towards the bed. As he takes you around the curtain to get closer to his mistress, your eyes grow wide as you see what had been hidden. First of all, the woman obviously had no underwear; her spread legs giving you a great view beneath her gown. However, it doesn't seem like she could have done otherwise, as the gown simply wasn't long enough to reach around her enormous nether region. The large round object whose shadow you had seen from the other side was actually her vulva!\r\rHer legs are spread simply due to the fact that the fat labia wouldn't allow for otherwise. It's more than half as tall as she is, with the slit gaping before you like a giant maw. If she were to stand, it'd be dreadfully close to dragging upon the floor with each step. The large inner-lips dangle from the outer in thick folds and her giant clitoris is nearly as big as her head, protruding from its huge flap of a hood. Feminine slime drools and drips down through the crevice, pooling around onto the bed and draining off into a bucket. You can see into her deep pussy, the emanating heat reaching you from several feet away. And it's quite easy to tell that she's not pregnant, but rather her belly is huge from all the vaginal flesh within.", true); }; if (mistressRep > 0){ outputMainText("\r\rThe femme-boy leads you back behind the curtain. Even though you've seen it before, the sight of her massive feminine genitalia is still awe-inspiring. Swelling and pulsing with her heartbeat, the heat warming the room. Fidoris is glad to be back in its presence, sighing in comfort. The slime continues to pool around the massive folds, perpetually keeping them well lubricated. And each time you come, she just seems even bigger and bigger than before...", true); }; outputMainText("\r\r'Come on, over here now!' She eagerly waves for the fruit.\r\rHanding it to Fidoris, he quickly presents it to his mistress. Like a child, she giggles with giddyness. She begins by licking up through the lewd crack in the fruit, squeezing it gently until its juices start to seep out. Once her tongue touches the sweet nectar, her mouth opens wide and bites into it, letting the juices spill out onto her face with ecstasy. She proceeds to devour it rapidly, cherishing every bite thoroughly.\r\rShe heaves a little once the fruit is gone. Her hands dig into her gown, pushing into her gravid belly as she feels the fruit's effects begin to settle in. With a shiver and a moan, you watch as her cunt begin to shudder. Before your eyes, it swells even larger, her belly becoming more prominent. The fruit seems to be more potent than usual with this woman...\r\r'Mmm!' She mewls. 'Somebody fill me! Now!'", false); doListen = function ():void{ if (buttonChoice == 1){ outputMainText("You wait as Fidoris enthusiastically steps forward to help his mistress. His small hand reaches out to stroke the fur of her outer labia, petting upward until his hand reaches the grand clitoris. Slipping a hand beneath the hood, he rubs it until the woman quivers upon the bed, a spurt of her feminine honey leaping from her wide hole and drenching his legs. His other hand meets the first, flanking the sides of the massive button and holding it still while he leans in for a gentle kiss. Then, he opens his arms, embracing the whole of the vulva the best he could. The vulva hugs back, letting him sink in between the folds, smearing its drizzling goo throughout his fur. He descends more and more into the maw, until he decides to duck down to the primary attraction.\r\rWithout much trouble, his arms easily slip into her pussy. They help stretch her a little wider, allowing his head to slip in. From there, he's practically sucked inside, slowly going deeper and deeper. The only difficulty they come across is when his wide hips hit the entrance. He waggles his legs a bit, his loincloth flailing from his bum and flashing you his small package several times, but eventually makes it through, sliding the rest of the way.\r\rThe mistresses belly deforms and grows even larger as Fidoris fills it. All the while, she moans in pleasure, gasping lightly and groping her breasts. Once Fidoris eventually settles within her womb, her belly no longer moving as much, she lets out a long groan, her arms roaming about the taut fur. The gaping maw gasps as well, contracting again and again with orgasm, her juices flooding out until the bucket overflows and spills out onto the floor...\r\rStill high with climax, she doesn't want to seem rude 'H-Here. F-For your ~ungh~ efforts.' She fumbles with a pile of coins on the desk beside her bed, having to shimmy a little with her extra weight.", true); outputMainText(" 'Thank you very much, I hope to do more business with you in the future~'\r\rShe gives you the coins while the slime from the fruit drizzles from her hands onto yours. Then she lets you lead yourself out, her eyes closing shut to enjoy the warm body inside of her...", false); doCoin(30); hrs = 2; doSexP(3); mistressRep++; doEnd(); }; if (buttonChoice == 3){ outputMainText((("Offering to fill her yourself, Fidoris gives you a nod and guides you towards her. Your hands caress her supple folds at first, delighting in the softness and the warm moistness that quickly coats your fingers. You rub up around her swollen pussy, feeling the beat of her pulse so easily through her large flesh, even with the surrounding fur hardly muffling it. As your hands meet at the top, they wring the massive button, returning a gush of slick fluids about your legs from her awaiting hole.\r\r'Y-You may want to remove your clothes, or else they'll get pretty messy.' Fidoris instructs, indicating how he wears nothing but a meager loincloth.\r\rYou nod and strip down. Compare to the mistress and her boy, it would be difficult to worry about modesty here. But, as the fresh air wafts cooly against your naked " + skinDesc()) + ", you find yourself drawn closer to the heat of the maw. You soon lean in towards it, sinking into its velvety flesh. The lips hug you, surrounding your body, and dribbling lubrication all about until you're slick and shiny. This action itself arouses you a little, your parts slipping past each other and throughout her cunt. Yet, as you feel a shudder from the mistress, you realize there's something else you have to do.\r\rDucking down, you easily find her open pussy. It's amazing how easily you can fit a hand, and then two, and then both your arms. You can feel her hungry womb begin to suck you in, the slick mess that covers the walls making it difficult to resist. Not that you would want to. Your head easily slips in next, spreading her wider and wider with your anatomy. It's an odd sensation at first. Very stuffy with all of the moisture and heat. However, it's also surprisingly relaxing and inviting, pulling you in further and further. Before you know it, your feet snap into her entrance and you crawl into her womb.\r\rIn complete darkness, you can't seem to tell where you are."), true); outputMainText(" Her belly seems to adjust for you, sucking you in and curling you around until you fit much more comfortably. So comfortably, in fact, that the warmth and moisture and complete peace make you drift off into a wonderful sleep...", false); doNext(); doListen = function ():void{ outputMainText("You eventually wake back up, though you don't know how long you've been asleep. All that you know is that you had some of the most restful sleep you've ever had. And as you begin to rustle around in the darkness, the soft walls shudder around you.\r\r'Oh my, are you finally awake in there?' The mistress pats her belly from the outside with a giggle, the sound echoing around in a low beat. 'Mmm... That was a lot of fun. I hope you slept well, I know I had a nice nap~ Well then, I suppose you'd like to be moving on. Just go out the way that feels most natural~!'\r\rBefore you can respond, you can feel the walls press down around you. The suction that you felt before when entering now seems to be pulling the other way. You slip about inside her belly, quickly finding your way through her enormous passage. The next thing you know, you're body is being gently squeezed all around you, the slickness propelling you out into the cold air.\r\rFidoris catches you as you slip out of her cunt, well prepared with a thick towel to wrap you up in. Your teeth jitter at first, the coolness of the air against your wet skin chilling you to the bone. Drawn back towards the massive vulva, you hover nearby to bask in the heat while you dry yourself off and don your clothes.\r\r'Take your time. You're not as used to this as Fidoris is' She winks. 'And here, here's your payment for the fruit, with a little something extra for the fun.'\r\rShe hands you some coins and lets you sit on her bed next to her for a bit while you readjust to the warmth of the jungle. It takes a bit of getting used to, but once you finally leave, you feel quite rejuvenated!", true); doCoin(40); doLust(5); hrs = (2 + Math.floor((percent() / 20))); exhaustion = 0; doHP(50); aff(4, Math.floor((percent() / 10)), -1); doSexP(5); mistressRep++; doEnd(); }; }; if (buttonChoice == 9){ outputMainText((("Realizing she's big enough to fit both you and Fidoris, you take Fidoris' hand and pull him over to the massive maw with you. Realizing it as well, Fidoris nods. The two of you grope about her velvety folds, rubbing her massive button as she bucks upon the bed from the concerted effort. It doesn't take much before spurts of feminine honey drench the both of you, coating the both of you in her slick lubricant.\r\r'Don't forget to remove you clothes' Fidoris mentions quickly, eager to get inside.\r\rYou strip down to nothing, letting the fluids smear about your naked " + skinDesc()) + ", until you're as slippery and shiny as the prospect before you. Fidoris motions for you to go first and you duck down to the gaping pussy. It's amazing how easily you can fit a hand, and then two, and then both your arms. You can feel her hungry womb begin to suck you in, the slick mess that covers the walls making it difficult to resist. Not that you would want to. Your head easily slips in next, spreading her wider and wider with your anatomy. It's an odd sensation at first. Very stuffy with all of the moisture and heat. However, it's also surprisingly relaxing and inviting, pulling you in further and further. Before you know it, your feet snap into her entrance and you crawl into her womb.\r\rIn complete darkness, you can't seem to tell where you are. Her belly seems to adjust for you, sucking you in and settling you within her womb. Moments later, you feel the walls around you shiver and shudder as the space grows larger. Another body slips in beside you, as wet and slippery and hot as you are, and squeezes against you in a rather intimate fashion.\r\r'Are you comfortable?' He whispers. You can feel the vibrations of his voice throughout the stretched walls around you.\r\rYou nod, blushing within the darkness, squeezed so tightly against him."), true); outputMainText(" The two of you squirm again and again, trying to find a better position that won't leave you so close, but all the warm, slippery rubbing does is arouse you. And him as well, it seems, as you can feel his small prick poke at you through his loincloth. Slowly, the slipping progresses until ", false); if ((((((gender == 1)) || ((((gender == 3)) && ((percent() <= 50)))))) || ((gender == 0)))){ outputMainText((("you find yourself turned away from Fidoris, your " + buttDesc()) + " rump grinding his small prick between your cheeks. He lets out a whine of surprise as his loincloth slides away, leaving his pointy erection to feel your butt first-hand. His arms wrap around you in embrace, unable to prevent his cock from gliding into your moist ass."), false); } else { if ((((gender == 2)) || ((gender == 3)))){ outputMainText((((((((("you find your legs spreading, straddling Fidoris' lap, your " + vulvaDesc()) + " slit") + plural(2)) + " wedging around his small prick. He lets out a whine of surprise as his loincloth slides away, leaving his pointy erection to feel your folds first-hand. His arms wrap around you in embrace, unable to prevent his cock from gliding into ") + oneYour(2)) + " wet cunt") + plural(2)) + "."), false); doImpregnate(4); }; }; outputMainText("\r\rThe two of you quickly begin writhing against each other within the mistress' belly, Fidoris plunging his cat-cock into you again and again. The barbs around the tip of his tiny prick scrape against the walls of your flesh insides, but not nearly large enough to cause any pain. The scraping merely arouses you further, bringing you to orgasm much faster, despite his small size. His little cock begins to squirt a smoldering batch of cum into you, making your own hips buck back in turn with climax.", false); if ((((gender == 1)) || ((gender == 3)))){ outputMainText(((((" Your cock" + plural(1)) + " begin") + plural(3)) + " to launch your cum within the confined space, smearing about the mistress' womb and making you both sticky."), false); cumAmount(); }; outputMainText(" Even the walls themselves begin to shake and quiver as you hear ecstatic moans from outside...\r\rHowever, you quickly find yourself setting back down as the constant warmth and comfort of your room calms you. With Fidoris still inside of you, the two of you drift off to sleep...", false); doNext(); doListen = function ():void{ outputMainText("You eventually wake back up, though you don't know how long you've been asleep. All that you know is that you had some of the most restful sleep you've ever had. And it seems that Fidoris' cock had eventually withdrawn back into its sheath, no longer penetrating you. As you begin to rustle around in the darkness, waking up the femme-boy beside you, the soft walls shudder around you.\r\r'Oh my, are you two finally awake in there?' The mistress pats her belly from the outside with a giggle, the sound echoing around in a low beat. 'Mmm... That was a lot of fun. I hope you two slept well, I know I had a nice nap~ The thought of you two having sex within me... Mmm~' The womb shudder once more. 'Well then, I suppose you'd like to be moving on. Just go out the way that feels most natural~!'\r\rBefore you can respond, you can feel the walls press down around you. The suction that you felt before when entering now seems to be pulling the other way. Fidoris' body moves past you, leaving you alone in her belly for a moment before you begin to slide out as well, quickly finding your way through her enormous passage. The next thing you know, you're body is being gently squeezed all around you, the slickness propelling you out into the cold air.\r\rFidoris catches you as you slip out of her cunt, well prepared with a thick towel to wrap you up in just as he already is. Your teeth jitter at first, the coolness of the air against your wet skin chilling you to the bone. Drawn back towards the massive vulva, you hover nearby to bask in the heat while you dry yourself off and don your clothes.\r\r'I hope you had fun.' She winks. 'Though I wonder if I'll be getting pregnant from all that...' She giggles at the thought. 'And here, here's your payment for the fruit, with a little something extra for the fun.'\r\rShe hands you some coins and lets you sit on her bed next to her for a bit while you readjust to the warmth of the jungle.", true); outputMainText(" It takes a bit of getting used to, but once you finally leave, you feel quite rejuvenated!", false); doCoin(45); doLust((-(sen) * 2)); hrs = (2 + Math.floor((percent() / 20))); exhaustion = 0; doHP(50); aff(4, Math.floor((percent() / 10)), -1); doSexP(10); mistressRep++; doEnd(); }; }; if (buttonChoice == 11){ outputMainText((((((((((("Amazed at how large her pussy is, the bulge in your " + clothesBottom()) + " throbs in anticipation. You pull out ") + oneYour(1)) + " ") + cockDesc()) + " cock") + plural(1)) + ", thinking that she might actually be able to take your giant size. Fidoris and his mistress both blink at you for a moment, taking in what they see. Then, a giant, giddy grin grows upon her face.\r\r'Yes!' Her pussy squishes and squirts with a gush of feminine honey in her excitement.\r\rFidoris blushes as he steps towards you, gauging your massive erection. He wraps his arms around it, lifting it and helping you guide it into his mistress. The effort is a bit of a strain on his small build, relying mostly on the leverage from your body to kiss the tip of your cock against the soft flesh. From there, nature easily takes its course... if you consider the situation 'natural'.\r\rThe mistress lets out a long warbling moan as you step towards her, the velvelty folds sucking in your ") + cockDesc()) + " cock. Her belly begines to stretch, pulling out larger and longer to conform to your man-meat. Eventually, her belly begins to push past her chest, her arms wrapping around your cock from outside, hugging it close and grinding her many tits into it. And as you push her belly past her own head, she licks at her own fur, the sensation merely a light caress against your monster within. Eventually, you stand up against her vulva, pressing your body against her massive labia.\r\rYou both pause for a moment, relishing both the feeling of being completely engulfed/filled and the sensation of having a cock so large pushing a pussy so huge well past the mistresses own body. You squeeze her inner lips, the flesh hugging your body and oozing lubricant all about you."), true); if (showBalls == true){ outputMainText(((" Your " + ballDesc()) + " balls rest upon her bed, the honey drizzling over them as they squish comfortable between her legs."), false); }; outputMainText(((" You bury your face against her giant clitoris, nuzzling it at first before kissing and biting it. Quite quickly, the mistress begins to writhe behind your attention, grabbing and kneading her breasts so much that her nipples poke out from her gown. Her belly flesh twists about your member, urging you to start pumping while you still can. And so you oblige.\r\rAlthough your " + hipDesc()) + " hips can hardly pull back, relative to the size of your endowment, you both shudder immensely. The grand genitals and all their nerves rubbing so gently against each other, with so much slime that you begin to slip on the floor from what just happens to spill out, you can tell this will end quickly. So, with a fervor, you begin to pump in and out, faster and faster, while you gnaw at her clit. The two of you wince and whine, trying to hold back the tsunami-like wave of instense climax in hopes of just a few more seconds of this extreme intercourse!\r\rYet, it's difficult to beat nature..."), false); doNext(); doListen = function ():void{ outputMainText((((("The mistress lets out a loud, deafening cry as her legs lock around your " + buttDesc()) + " rear, strangling your bottom half as she quakes. Her body lunges up against your ") + cockDesc()) + " cock, her claws digging into her own distended belly, weighted down by her heavy cunt. Her feminine fluids gush out around you, drenching you in the warm juices. Her belly rumbles at the opposite end as you begin to ejaculate, your own body twitching against her soft vulva."), true); if (cumAmount() > 4000){ outputMainText(" You cum so much that a portion of her belly hangs from the tip of your member, absolutely bloated with spunk as though she were some giant condom, before the rest begins to flood its way back through her vaginal passage and joins the rest of the fem-cum in drowning you.", false); }; outputMainText(((" You spill your seed with great force, your abdomen aching as it works to shoot it all through your length. Then you both collapse onto the bed with a huff...\r\rShe lays sprawled upon her bed, idly licking at the fur of her belly once more. She hugs and squeezes at the bulge as you begin to grow flaccid and deflate her form. Though her pussy may make for a nice pillow, you soon find yourself being pushed away as her vagina begins to grow flaccid itself, the internal blood shrinking the passage and pushing your cock back out. It doesn't take long before before she gives birth to your " + cockDesc()) + " member, letting it flop onto the bed.\r\r'Mmmmm~' With a purr, her legs wrap around her pussy, kneading it in satisfaction. 'I don't think anybody can satisfy me like you just did... I might even get pregnant!' She chuckles. 'Oh my, for service like that... I should really pay you more for bringing me the fruit'\r\rAs she winks, she motions Fidoris over. In addition to giving him some coin, she also hands him a vial to give to you.\r\r'This vial contains some rather... concentrated juices from the kinds of fruit you bring me. I drink it myself, on occasion. But too much... well, you know.' Her foot pats her plush pussy. 'You might be able to find a use for it on somebody else, to help you fit a bit better. I figure it might come in handy for you. If not, it should still fetch a decent price. Either way, thank you for a great time, love~' She winks once more before returning her attention to coming down from her high.\r\rFidoris hands you the coins and vial and escorts you to the exit. Though, just as you're about to leave, you can hear the mistress call out 'Fidoris, sweetie, I think I'd like to feel full for a bit longer. Would you be a dear?' To which Fidoris replies 'Yes Mistress!'"), false); doCoin(45); doLust((-(sen) * 2)); hrs = 4; itemAdd(221); doSexP(13); mistressRep++; doEnd(); }; }; }; }; if (buttonChoice == 3){ outputMainText("'Hehe, very well. I suppose you like bigger girls~' Purrs enticingly as her feet rub around the grand mound of her vulva. She nods to Fidoris to take the fruit from you. 'Fidoris will make it for you with what your brought. The process only takes a couple hours, so why don't we both enjoy your visit in the meantime and you help me massage myself. I've grown so large because of you that I can't reach myself anymore~' Her feet reach out as far as they can, showing how they're unable to reach her more supple folds.\r\rWith a shrug, you step towards the swollen cunt, already shimmering with her slight arousal. The large inner lips hang like curtains down either side, flanking the gaping vagina that drools thick strands and sheets of feminine lubrication, pooling within itself or filling the bucket that's been placed beneath to catch the excess. The curtains pulse, swelling and contracting with her blood flow, almost as if the whole maw were slowly breathing. They meet at the top where the giant clitoris stands erect, protruding a couple feet from the rest of the mound and several inches thick.\r\rNot quite sure how to go about the task, you simply alternate between kneading the hanging labia with your arms and wringing the standing clit with your hands. All of the wondrous pussy surrounds you, soft and malleable, and drenching you in the honey. The mistress croons and writhes on the bed, her feet patting the outer labia as she slowly comes to orgasm. The climax isn't terribly powerful, but the amount of fluid that spills from her instantly fills the bucket beneath and splatters across the floor.\r\r'Mmm~', she sighs pleasantly,'Would you be a dear and empty the bucket out for me? I'm not quite done... being drippy and I don't want to make too much of a mess for poor Fidoris. Just pour it out over the rest of me.'", true); outputMainText("\r\rWith another shrug, you haul up the bucket and walk beside her. Stepping up onto the bed, you tip the bucket over, letting her honey spill across her large belly and breasts, her fur becoming slick and matted and her gown growing transparent, her upper nipples quickly becoming erect and viewable through the cloth. With her help, the two of you smear it about, massaging her pregnant-like belly and hefty breasts. There's so much of her to cover that you find yourself using your own body to smear the stuff across hers, making you just as slick and slimy. Her nipples drag across your belly as you do and her hand slips down to play with your groin...\r\rYou hear a splatter across the floor beyond the foot of the bed.\r\r'Oh my, you should probably get back down there as well~', she winks at you while she nods towards the bucket.", false); doNext(); doListen = function ():void{ outputMainText("Several times you wind up alternating between the two tasks. The only time you get a break is when she asks for some water, in which case it takes her nearly five minutes to down several liters. With all the fluid she loses otherwise, it's not terribly surprising. She manages to come again and again, whereas you're only teased constantly... Just as you're about to masturbate within her folds and out of her sight, Fidoris manages to return.\r\r'The process is finished. Here is the batch you requested.'\r\rYou move out from the mistress' slit, futily attempting to hide your arousal. Fidoris blushes as he spots your condition as well and how drenched you are in his mistress' honey. He thrusts a vial into your hand, trying to avert his eyes.\r\r'U-Umm... Th-Thank you for doing my job with mistress while I was busy. I'm s-sure she's warmed up for a nice nap now.'\r\rHe quickly nudges you towards the exit, as if in a hurry. It makes you begin to wonder what a 'nap' might actually entail? Either way, you've got what you asked for and then some...", true); doLust(10000); doLust(-1); loseManyItem(210, 3); itemAdd(221); hrs = 3; doEnd(); }; }; if (buttonChoice == 11){ if (mistressRep == 0){ outputMainText("'That is quite alright, you don't need any now, though it would have been nice. Here, take some coin as encouragement at least.'", true); }; if (mistressRep > 0){ outputMainText("'Aww, that's a shame. Well, here, have some more coin as encouragement to pick some more for me.'", true); }; outputMainText("\r\rShe nods to the femme-boy who goes to a shelf and grabs some coins from a bag. He hands them to you and leads you out the front door, thanking you for obliging.", false); doCoin(5); hrs = 2; doEnd(); }; }; }; } else { outputMainText("O-Okay. Thanks anyways!'\r\rHe turns and skitters off in a hurry, his tail hanging low with his bashfulness. You shrug and continue on with your walk.", true); hrs = 1; doEnd(); }; }; } else { if ((((chance > 75)) && ((chance <= 100)))){ outputMainText("You wander about the tree-borne city, enjoying the sights and sounds.\r\rFelins are quite the agile people, able to work so high up in the canopy. Some spend their time harvesting various fruits from the nearby trees, while some others hunt for birds or even head down to the jungle floor for other game. Others have varying other professions, but they're all mostly laid back. It's not uncommon to catch someone dozing off in the middle of the day, the warm atmosphere quickly sending them to sleep.\r\rThere's also a few places to socialize, often in the form of singing or milk drinking. Since they don't have their own cows, they rely on their more abundant source for milk: their women.\r\rBeing a woman in Siz'Calit seems to be quite profitable, with many of the more wealthy families being headed by females. And when they go into their heat, well... they're probably one of the greater powers to reckon with in this community.\r\rThe males seem to be rather happy nevertheless. At the very least, they don't have to worry about finding mates.\r\rOther than enjoying yourself, there's nothing else you find to do.", true); stats(0, 1, 0, 0); hrs = 2; doEnd(); }; }; }; }; } public function countItem(ID:int):int{ var tempInt:int; var tempInt2:int; tempInt = 0; tempInt2 = currentItems; currentItems = 1; i = 1; while (i < 37) { if (itemID(i) == ID){ tempInt = (tempInt + stackAmount(i)); }; if (i == 12){ currentItems = 2; }; if (i == 24){ currentItems = 3; }; if (i == 36){ currentItems = 1; }; i++; }; currentItems = tempInt2; return (tempInt); } public function aff(tempRace, tempChange, otherChange):void{ human = (human + Math.ceil((otherChange * changeMod))); horse = (horse + Math.ceil((otherChange * changeMod))); wolf = (wolf + Math.ceil((otherChange * changeMod))); cat = (cat + Math.ceil((otherChange * changeMod))); cow = (cow + Math.ceil((otherChange * changeMod))); lizard = (lizard + Math.ceil((otherChange * changeMod))); rabbit = (rabbit + Math.ceil((otherChange * changeMod))); fourBoobAffinity = (fourBoobAffinity + Math.ceil((otherChange * changeMod))); if (tempRace == 1){ human = (human + (Math.ceil((tempChange * changeMod)) - Math.ceil((otherChange * changeMod)))); }; if (tempRace == 2){ horse = (horse + (Math.ceil((tempChange * changeMod)) - Math.ceil((otherChange * changeMod)))); }; if (tempRace == 3){ wolf = (wolf + (Math.ceil((tempChange * changeMod)) - Math.ceil((otherChange * changeMod)))); }; if (tempRace == 4){ cat = (cat + (Math.ceil((tempChange * changeMod)) - Math.ceil((otherChange * changeMod)))); }; if (tempRace == 5){ cow = (cow + (Math.ceil((tempChange * changeMod)) - Math.ceil((otherChange * changeMod)))); }; if (tempRace == 6){ lizard = (lizard + (Math.ceil((tempChange * changeMod)) - Math.ceil((otherChange * changeMod)))); }; if (tempRace == 7){ rabbit = (rabbit + (Math.ceil((tempChange * changeMod)) - Math.ceil((otherChange * changeMod)))); }; } public function doLust(changes:int):void{ if (changes < 0){ lustDown.visible = true; }; if (changes > 0){ lustUp.visible = true; }; if ((lust + changes) >= 100){ lust = 100; changes = 0; doLustForcedMasturbate(); }; if (((((((((lust + changes) < (minLust + 20))) && ((heat > 0)))) && ((heatTime < 0)))) && (!(pregCheck(0))))){ lust = (minLust + 20); changes = 0; } else { if ((lust + changes) < minLust){ lust = 0; changes = 0; }; }; if (((((lust + changes) >= 75)) && ((lust < 75)))){ if (cockTotal > 0){ outputMainText((((((((("\r\rYour " + cockDesc()) + " cock") + plural(1)) + " squirm") + plural(3)) + " in your ") + clothesBottom()) + ", throbbing and wanting desperately to come."), false); if ((((cockMoist > 0)) && ((cockMoist <= 3)))){ outputMainText(((" A small amount of pre leaks out, making a moist blotch on your " + clothesBottom()) + "."), false); }; if ((((cockMoist > 3)) && ((cockMoist <= 6)))){ outputMainText(((" Steady drops of pre leak out, blotching your " + clothesBottom()) + " with small patches of slime."), false); }; if ((((cockMoist > 6)) && ((cockMoist <= 9)))){ outputMainText(((((" You feel your cock" + plural(1)) + " slimed from tip to belly with its own pre, a steady dribble down your thigh and your ") + clothesBottom()) + " looking more like you peed yourself."), false); }; if ((((cockMoist > 9)) && ((cockMoist <= 12)))){ outputMainText(((((((" You feel your cock" + plural(1)) + " swimming in ") + plural(5)) + " own pre, as long strands of slime seep through your ") + clothesBottom()) + " and stretch down to the ground. With each step, you fling the stuff around you like a whip, smacking across whatever is nearby"), false); }; }; if (vagTotal > 0){ outputMainText((((((((((((("\r\rYour " + vulvaDesc()) + " lips feel swollen and hot in your ") + clothesBottom()) + ", making your legs feel weak. Your ") + clitDesc()) + " clit") + plural(2)) + " seem") + plural(4)) + " on the verge of exploding without any attention soon, stiffly rubbing against your ") + clothesBottom()) + " with each move."), false); if ((((vagMoist > 0)) && ((vagMoist <= 3)))){ outputMainText(" Your pussy lips slip over each other with each step, slightly lubricated with your arousal.", false); }; if ((((vagMoist > 3)) && ((vagMoist <= 6)))){ outputMainText(((" You can feel webs of slime smear across the inside of your " + clothesBottom()) + ", your honey dribbling lightly within."), false); }; if ((((vagMoist > 6)) && ((vagMoist <= 9)))){ outputMainText(((" You swear you can hear yourself squish with each step as your " + clothesBottom()) + " is completely soaked through with your honey. Your thighs feel like they've been completely oiled down by the warm, sensuous fluid."), false); }; if ((((vagMoist > 9)) && ((vagMoist <= 12)))){ outputMainText(((" There must be a waterfall in your " + clothesBottom()) + " as a steady flow of clear honey drools from between your legs. You have to be extra careful of slipping in your own slime..."), false); }; }; outputMainText((((("\r\rYour " + nipDesc()) + " nipples threaten to pierce through your ") + clothesTop()) + ". They feel as hard as diamonds with all your arousal, making you shiver whenever something brushes them."), false); } else { if (((((lust + changes) >= 50)) && ((lust < 50)))){ if (cockTotal > 0){ outputMainText((((((("\r\rYour " + cockDesc()) + " cock") + plural(1)) + " feel") + plural(3)) + " stiff and engorged with blood. Oh how nice it would be to take care of that problem... "), false); if ((((cockMoist > 3)) && ((cockMoist <= 6)))){ outputMainText(((" A small amount of pre leaks out, making a moist blotch on your " + clothesBottom()) + "."), false); }; if ((((cockMoist > 6)) && ((cockMoist <= 9)))){ outputMainText(((" Steady drops of pre leak out, blotching your " + clothesBottom()) + " with small patches of slime."), false); }; if ((((cockMoist > 9)) && ((cockMoist <= 12)))){ outputMainText(((((" You feel your cock" + plural(1)) + " slimed from tip to belly with its own pre, a steady dribble down your thigh and your ") + clothesBottom()) + " looking more like you peed yourself."), false); }; }; if (vagTotal > 0){ outputMainText((((((((((("\r\rYour " + vulvaDesc()) + " vulva feels puffy with engorgement, making you walk a little awkwardly so as to not squeeze them so much. Your ") + clitDesc()) + " clit") + plural(2)) + " stir") + plural(4)) + " in your ") + clothesBottom()) + ", throbbing gently in anticipation."), false); if ((((vagMoist > 3)) && ((vagMoist <= 6)))){ outputMainText(" Your pussy lips slip over each other with each step, slightly lubricated with your arousal.", false); }; if ((((vagMoist > 6)) && ((vagMoist <= 9)))){ outputMainText(((" You can feel webs of slime smear across the inside of your " + clothesBottom()) + ", your honey dribbling lightly within."), false); }; if ((((vagMoist > 9)) && ((vagMoist <= 12)))){ outputMainText(((" You swear you can hear yourself squish with each step as your " + clothesBottom()) + " is completely soaked through with your honey. Your thighs feel like they've been completely oiled down by the warm, sensuous fluid."), false); }; }; outputMainText((((("\r\rYour " + nipDesc()) + " nipples stand at attention in your ") + clothesTop()) + ". They tingle slightly with your arousal."), false); } else { if (((((lust + changes) >= 25)) && ((lust < 25)))){ if (cockTotal > 0){ outputMainText((((((((("\r\rYour " + cockDesc()) + " cock") + plural(1)) + " wiggle") + plural(3)) + " in your ") + clothesBottom()) + ", stirring awake and growing erect. Bulging against the fabric, you silently wonder if anybody else will notice..."), false); if ((((cockMoist > 6)) && ((cockMoist <= 9)))){ outputMainText(((" A small amount of pre leaks out, making a moist blotch on your " + clothesBottom()) + "."), false); }; if ((((cockMoist > 9)) && ((cockMoist <= 12)))){ outputMainText(((" Steady drops of pre leak out, blotching your " + clothesBottom()) + " with small patches of slime."), false); }; }; if (vagTotal > 0){ outputMainText((((((((((((("\r\rYour " + vulvaDesc()) + " slit tingles and sparks. You feel a little giggly and warm with the sensation, delighting in the pleasantness of it all. Your ") + clitDesc()) + " clit") + plural(2)) + " tug") + plural(4)) + " at the hood") + plural(4)) + ", pulsing awake in your ") + clothesBottom()) + "."), false); if ((((vagMoist > 6)) && ((vagMoist <= 9)))){ outputMainText(" Your pussy lips slip over each other with each step, slightly lubricated with your arousal.", false); }; if ((((vagMoist > 9)) && ((vagMoist <= 12)))){ outputMainText(((" You can feel webs of slime smear across the inside of your " + clothesBottom()) + ", your honey dribbling lightly within."), false); }; }; }; }; }; lust = (lust + changes); statDisplay(); } public function udderDesc():String{ var chance:int; var tempStr:String; chance = percent(); tempStr = ("udder ERROR " + (udderSize / 2)); if (chance <= 100){ if ((udderSize / 2) <= 2){ tempStr = "nearly flat"; }; if (((((udderSize / 2) > 2)) && (((udderSize / 2) <= 8)))){ tempStr = "noticeable"; }; if (((((udderSize / 2) > 8)) && (((udderSize / 2) <= 20)))){ tempStr = "large"; }; if (((((udderSize / 2) > 20)) && (((udderSize / 2) <= 40)))){ tempStr = "huge"; }; if (((((udderSize / 2) > 40)) && (((udderSize / 2) <= 76)))){ tempStr = "humongous"; }; if (((((udderSize / 2) > 76)) && (((udderSize / 2) <= 146)))){ tempStr = "massive"; }; if (((((udderSize / 2) > 146)) && (((udderSize / 2) <= 210)))){ tempStr = "gargantuan"; }; if (((((udderSize / 2) > 210)) && (((udderSize / 2) <= 280)))){ tempStr = "tremendous"; }; if (((((udderSize / 2) > 280)) && (((udderSize / 2) <= 560)))){ tempStr = "colossal"; }; if ((udderSize / 2) > 560){ tempStr = "ridiculously huge"; }; }; if (chance > 50){ if ((udderSize / 2) <= 2){ tempStr = "tiny"; }; if (((((udderSize / 2) > 2)) && (((udderSize / 2) <= 8)))){ tempStr = "palmable"; }; if (((((udderSize / 2) > 8)) && (((udderSize / 2) <= 20)))){ tempStr = "ample"; }; if (((((udderSize / 2) > 20)) && (((udderSize / 2) <= 40)))){ tempStr = "head-sized"; }; if (((((udderSize / 2) > 40)) && (((udderSize / 2) <= 76)))){ tempStr = "hefty"; }; if (((((udderSize / 2) > 76)) && (((udderSize / 2) <= 146)))){ tempStr = "beachball-sized"; }; if (((((udderSize / 2) > 146)) && (((udderSize / 2) <= 210)))){ tempStr = "normally back-breaking"; }; if (((((udderSize / 2) > 210)) && (((udderSize / 2) <= 280)))){ tempStr = "view-obscuring"; }; if (((((udderSize / 2) > 280)) && (((udderSize / 2) <= 560)))){ tempStr = "bed-sized"; }; if ((udderSize / 2) > 560){ tempStr = "road-filling"; }; }; return (tempStr); } public function raceName():String{ var tempStr:String; tempStr = ("RACE ERROR " + race); if (race == 1){ tempStr = "Human"; }; if (race == 2){ tempStr = "Equan"; }; if (race == 3){ tempStr = "Lupan"; }; if (race == 4){ tempStr = "Felin"; }; if (race == 6){ tempStr = "Lizan"; }; return (tempStr); } public function doLustForcedMasturbate():void{ if (currentState == 2){ outputMainText("\r\rAmidst the heat of battle, your legs buckle from your intense arousal, preventing you from fighting any further.", false); currentState = 1; doNext(); doListen = function ():void{ if ((((((((ePref == 0)) || ((((ePref == 1)) && ((gender == 2)))))) || ((((ePref == 2)) && ((gender == 1)))))) || ((gender == 0)))){ outputMainText((("Unfortunately, the " + enemyName()) + " has no interest in taking advantage of your state and lands a heavy blow, knocking you out."), true); doHP(-100000); } else { doGetRaped(); }; }; }; } public function stackAmount(slotNumber:int):int{ var tempNum:Number; tempNum = 0; if (currentItems == 1){ tempNum = stackArray1[slotNumber]; }; if (currentItems == 2){ if (slotNumber > 12){ slotNumber = (slotNumber - 12); }; tempNum = stackArray2[slotNumber]; }; if (currentItems == 3){ if (slotNumber > 24){ slotNumber = (slotNumber - 24); }; tempNum = stackArray3[slotNumber]; }; return (tempNum); } public function doSleep():void{ bc(); outputMainText("You head into town to sleep for the night...", true); exhaustion = 0; doHP(20); if (lust <= 30){ outputMainText("\r\rDespite everything, your body is calm and sleeps rather soundly.", false); if ((((((cockMoist > 9)) && ((cockTotal > 0)))) || ((((vagMoist > 9)) && ((vagTotal > 0)))))){ outputMainText(" Although your bed is slightly moist from your constant production of lubricant from your loins.", false); }; }; if ((((lust > 30)) && ((lust <= 70)))){ outputMainText("\r\rYour sleep is somewhat disrupted by tossing and turning throughout the night, your arousal making certain attributes swell with blood and desiring attention...", false); exhaustion = (exhaustion + 3); if ((((((((cockMoist > 3)) && ((cockMoist <= 9)))) && ((cockTotal > 0)))) || ((((((vagMoist > 3)) && ((vagMoist <= 9)))) && ((vagTotal > 0)))))){ outputMainText(" Plus your bed is slightly moist from your constant production of lubricant from your loins.", false); }; if ((((((cockMoist > 9)) && ((cockTotal > 0)))) || ((((vagMoist > 9)) && ((vagTotal > 0)))))){ outputMainText(" It also seems as though you had wet the bed throughout the night, however the slick slime that pulls away in long strands as you touch it indicates a different fluid...", false); }; }; if (lust > 70){ outputMainText("\r\rYou spend most of the night tossing and turning, your mind having difficulty sleeping with the lust that envelops it. Although you do manage to eventually get some, it's not nearly as good.", false); exhaustion = (exhaustion + 8); if ((((((((cockMoist > 0)) && ((cockMoist <= 3)))) && ((cockTotal > 0)))) || ((((((vagMoist > 0)) && ((vagMoist <= 3)))) && ((vagTotal > 0)))))){ outputMainText(" Plus your bed is slightly moist from your constant production of lubricant from your loins.", false); }; if ((((((((cockMoist > 3)) && ((cockMoist <= 9)))) && ((cockTotal > 0)))) || ((((((vagMoist > 3)) && ((vagMoist <= 9)))) && ((vagTotal > 0)))))){ outputMainText(" It also seems as though you had wet the bed throughout the night, however the slick slime that pulls away in long strands as you touch it indicates a different fluid...", false); }; if ((((((cockMoist > 9)) && ((cockTotal > 0)))) || ((((vagMoist > 9)) && ((vagTotal > 0)))))){ outputMainText(" You also wake up in a pool of your own sexual lubricant, the slick stuff sloshing off the sheets as you attempt to get out. You remain cautious as your feet touch the floor, as you have to avoid slipping in the large puddle around the bed.", false); }; }; if ((((((heatTime < 0)) && ((heat > 0)))) && (vagTotal))){ outputMainText("\r\rDreams of being fucked by over a dozen cocks, each filling you to the brim with hot spunk, filled your sleep. When you eventually woke up in a hot sweat, your hand reflexively inspects your belly and you find yourself slightly disappointed to find it empty.", false); }; if (milkEngorgementLevel == 2){ outputMainText("\r\rYour sheets smell somewhat sweet, slightly wet and white, as you wake up. Milk still dribbles from your breasts, having formed a small puddle throughout the night.", false); }; if (milkEngorgementLevel > 2){ outputMainText("\r\rYour sheets smell somewhat sweet and feel very wet as you wake up. Milk spills in streams from your breasts, as you sit up, a pool of the stuff all around you.", false); }; if (udderEngorgementLevel == 2){ outputMainText("\r\rYour sheets smell somewhat sweet, slightly wet and white, as you wake up. Milk still dribbles from your udder, having formed a small puddle throughout the night.", false); }; if (udderEngorgementLevel > 2){ outputMainText("\r\rYour sheets smell somewhat sweet and feel very wet as you wake up. Milk spills in streams from your udder, as you sit up, a pool of the stuff all around you.", false); }; if (pregCheck(0)){ if ((((pregnancyTime > 18)) && ((pregnancyTime <= 36)))){ outputMainText("\r\rAfter waking, you feel oddly sick and strangely bloated. You should probably watch what you eat more closely.", false); } else { if ((((pregnancyTime > 36)) && ((pregnancyTime <= 72)))){ outputMainText("\r\rYou seem to be getting a bit chubbier in your midsection, might be because you've been hungrier and eating more lately. Plus you've been feeling a bit more randy than usual...", false); } else { if ((((pregnancyTime > 72)) && ((pregnancyTime <= 108)))){ outputMainText("\r\rYour belly is obviously bulging now, more than it would if it were just fat. You should probably accept the fact that you're pregnant...", false); } else { if ((((pregnancyTime > 108)) && ((pregnancyTime <= 144)))){ outputMainText("\r\rYou can easily hug your belly as it protrudes from your torso, looking like you were trying to smuggle a melon in your womb. But it feels so good to rub and caress it, making you easily get horny.", false); } else { if ((((pregnancyTime > 144)) && ((pregnancyTime <= 180)))){ outputMainText("\r\rYour belly is so large your belly button has turned into an outie. You play with it as you head to sleep, the baby inside kicking back in turn.", false); } else { if ((((pregnancyTime > 180)) && ((pregnancyTime <= 216)))){ outputMainText("\r\rFor most races, you would be giving birth any time now. You actually have to be cautious about people bumping into you as you walk through the town, it protrudes so far.", false); } else { if ((((pregnancyTime > 216)) && ((pregnancyTime <= 252)))){ outputMainText((("\r\rThe " + skinDesc()) + " around your giant belly is so taut that you can audibly drum it with your fingers. Which the baby inside does with its feet frequently from inside."), false); } else { if ((((pregnancyTime > 252)) && ((pregnancyTime <= 288)))){ outputMainText("\r\rYou're beginning to draw the eyes of the crowd as you move through town, your belly is so enormous. People are wondering if you've actually got a baby in there and not a small child.", false); } else { if ((((pregnancyTime > 288)) && ((pregnancyTime <= 324)))){ outputMainText("\r\rThis is getting ridiculous... People are starting to come up to you as you move through the street on your way to bed and actually ask if you've got a small person in your belly! Although, you aren't quite sure, but as your hands try to wrap around it, unable to fully embrace it, you begin to wonder yourself.", false); } else { if ((((pregnancyTime > 324)) && ((pregnancyTime <= 360)))){ outputMainText("\r\rYour giant belly is becoming a bit of a nuisance... As you walk through buildings, people back up against a wall to let you pass by. You can feel your belly scrape against the frames of narrow doorways as you pass through, and it's been a while since you've last seen your belly-button...", false); } else { if ((((pregnancyTime > 360)) && ((pregnancyTime <= 396)))){ outputMainText("\r\rNow you're actually starting to get a little worried... Your knees are knocking against the underside of your belly when you try to walk. People are clearing the way when you move down the streets to make room for your belly and you have to skillfully wedge yourself through narrow doorways!", false); } else { if ((((pregnancyTime > 396)) && ((pregnancyTime <= 432)))){ outputMainText((("\r\rAs you lay down to go to sleep, you have to curl forward to fit your belly in your bed, leaving your backside hanging off the mattress. The sheets aren't even wide enough to cover you completely, making you feel a draft on some of your exposed belly. The chill makes you shiver, not from the cold, but from your nerves sparking from the super-taut, extra-sensitive " + skinDesc()) + "."), false); } else { if (pregnancyTime > 432){ outputMainText("\r\rYou don't even bother to head to your bed. Borrowing a bunch of blankets, you've made do with sleeping outside. Your belly is too big to go indoors, even having to handle shop business from the streets. Your hand reaches out as far as it can and hardly wraps around any of your girth. The warmth it emanates and sensations it echoes through your body help you sleep quite soundly and pleasantly, though, so you'll be fine until you give birth.", false); }; }; }; }; }; }; }; }; }; }; }; }; }; if (((body + (str / 2)) + carryMod) < Math.floor((pregnancyTime / 10))){ outputMainText(" However, none of that really matters as you can no longer carry the weight of your hefty belly. You're stuck in this town, dragging your belly across the ground, with padding beneath to protect it. There's going to be no more exploring until you either get stronger or give birth to this massive nuisance...", false); } else { if ((((body + (str / 2)) + carryMod) * 2) < Math.floor((pregnancyTime / 10))){ outputMainText(((" Your " + skinDesc()) + " is pulled so taut around your belly that you're afraid it might tear, though it never does. But it's so sensitive... Caressing it as you try to sleep is so nice~ Although, it does have the slight drawback of looking rather silly while you walk with a hunch and attempt to cradle it wherever you go; it's gotten so heavy."), false); } else { if ((((body + (str / 2)) + carryMod) * 3) < Math.floor((pregnancyTime / 10))){ outputMainText(" The mound feels so heavy... When walking around town, you even had to keep a hand on your back for support.", false); } else { if ((((body + (str / 2)) + carryMod) * 4) < Math.floor((pregnancyTime / 10))){ outputMainText(" The weight of your belly makes you feel more exhausted than you really are by the end of the day, making you glad for the night's rest.", false); } else { if ((((body + (str / 2)) + carryMod) * 5) < Math.floor((pregnancyTime / 10))){ outputMainText(" You can noticeably feel the weight of your belly.", false); }; }; }; }; }; }; hrs = 8; doEnd(); } public function affinity(humanChange:int, horseChange:int, wolfChange:int, catChange:int, cowChange:int, lizardChange:int, rabbitChange:int):void{ human = (human + Math.ceil((humanChange * changeMod))); horse = (horse + Math.ceil((horseChange * changeMod))); wolf = (wolf + Math.ceil((wolfChange * changeMod))); cat = (cat + Math.ceil((catChange * changeMod))); cow = (cow + Math.ceil((cowChange * changeMod))); lizard = (lizard + Math.ceil((lizardChange * changeMod))); rabbit = (rabbit + Math.ceil((rabbitChange * changeMod))); } public function doMasturbate():void{ bc(); currentState = 3; viewButtonOutline(1, 0, 1, 1, 0, 0, 1, 0, 0, 1, 0, 1); viewButtonText(0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 1); buttonWrite(1, "Penis"); buttonWrite(2, "Both"); buttonWrite(3, "Vagina"); buttonWrite(4, "Bag"); buttonWrite(7, "Breasts"); buttonWrite(10, "Udder"); buttonWrite(12, "Return"); if (cockTotal > 0){ Choice1.visible = true; }; if (vagTotal > 0){ Choice3.visible = true; }; if (udders == true){ Choice10.visible = true; }; outputMainText("How would you like to masturbate?", true); doListen = function ():void{ if (buttonChoice == 1){ doCockMasturbate(); }; if (buttonChoice == 3){ doVagMasturbate(); }; if (buttonChoice == 2){ doBothMasturbate(); }; if (buttonChoice == 4){ doBag(); }; if (buttonChoice == 7){ doBoobMasturbate(); }; if (buttonChoice == 10){ doUdderMasturbate(); }; if (buttonChoice == 12){ doGeneral(); }; }; } public function ballDesc():String{ var chance:int; var tempStr:String; chance = percent(); tempStr = ("BALLS ERROR " + ballSize); if (chance <= 100){ if (ballSize <= 1){ tempStr = "tiny"; }; if ((((ballSize > 1)) && ((ballSize <= 3)))){ tempStr = "small"; }; if ((((ballSize > 3)) && ((ballSize <= 5)))){ tempStr = "big"; }; if ((((ballSize > 5)) && ((ballSize <= 8)))){ tempStr = "large"; }; if ((((ballSize > 8)) && ((ballSize <= 13)))){ tempStr = "hand-filling"; }; if ((((ballSize > 13)) && ((ballSize <= 17)))){ tempStr = "huge"; }; if ((((ballSize > 17)) && ((ballSize <= 26)))){ tempStr = "barely palmable"; }; if ((((ballSize > 26)) && ((ballSize <= 40)))){ tempStr = "enormous"; }; if ((((ballSize > 40)) && ((ballSize <= 80)))){ tempStr = "tremendous"; }; if ((((ballSize > 80)) && ((ballSize <= 120)))){ tempStr = "huggable"; }; if ((((ballSize > 120)) && ((ballSize <= 240)))){ tempStr = "gargantuan"; }; if (ballSize > 240){ tempStr = "colossal"; }; }; if (chance > 50){ if (ballSize <= 1){ tempStr = "marble-sized"; }; if ((((ballSize > 1)) && ((ballSize <= 3)))){ tempStr = "golfball-sized"; }; if ((((ballSize > 3)) && ((ballSize <= 5)))){ tempStr = "kiwi-sized"; }; if ((((ballSize > 5)) && ((ballSize <= 8)))){ tempStr = "tennisball-sized"; }; if ((((ballSize > 8)) && ((ballSize <= 13)))){ tempStr = "baseball-sized"; }; if ((((ballSize > 13)) && ((ballSize <= 17)))){ tempStr = "softball-sized"; }; if ((((ballSize > 17)) && ((ballSize <= 26)))){ tempStr = "cantaloupe-sized"; }; if ((((ballSize > 26)) && ((ballSize <= 40)))){ tempStr = "basketball-sized"; }; if ((((ballSize > 40)) && ((ballSize <= 80)))){ tempStr = "watermelon-sized"; }; if ((((ballSize > 80)) && ((ballSize <= 120)))){ tempStr = "beachball-sized"; }; if ((((ballSize > 120)) && ((ballSize <= 240)))){ tempStr = "boulder-sized"; }; if (ballSize > 240){ tempStr = "landscape-crushing"; }; }; return (tempStr); } public function useItem(slotNumber:int):void{ var ID:int; var slotNumber = slotNumber; ID = itemID(slotNumber); if (ID == 0){ outputMainText("This slot is empty.", true); doBag(); } else { outputMainText(itemDescription(ID), true); if (((usableItem(ID)) || (conItem(ID)))){ outputMainText("\r\rAre you sure you want to use this item?", false); if (conItem(ID)){ outputMainText("\r\rWarning: Using this item will consume it.", false); }; buttonConfirm(); doListen = function ():void{ if (buttonChoice == 6){ if (conItem(ID)){ if (stackAmount(slotNumber) == 1){ stackSlotWrite(slotNumber, -1); itemSlotWrite(slotNumber, 0); } else { stackSlotWrite(slotNumber, -1); }; }; doItemUse(ID); } else { doBag(); }; }; } else { doBag(); }; }; } public function pregCheck(amount:int):Boolean{ var tempBool:Boolean; tempBool = false; if (amount == 0){ i = 0; while (i < pregArray.length) { if (pregArray[i] == true){ tempBool = true; }; i = (i + 5); }; }; if (amount == 1){ i = 0; while (i < pregArray.length) { if (pregArray[i] == false){ tempBool = true; }; i = (i + 5); }; }; return (tempBool); } public function stashStackAmount(slotNumber:int):int{ var tempNum:Number; tempNum = 0; if (currentStash == 1){ tempNum = stashStackArray1[slotNumber]; }; if (currentStash == 2){ tempNum = stashStackArray2[slotNumber]; }; if (currentStash == 3){ tempNum = stashStackArray3[slotNumber]; }; return (tempNum); } public function feetDesc():String{ var tempStr:String; tempStr = "feet"; if (checkItem(102)){ tempStr = "hooves"; }; return (tempStr); } public function lilaDesc():void{ if (lilaMilk == 0){ outputMainText("\r\rHer small breasts leak only a few drops of milk as she stands there, but her nipples are quite erect and peek through her fur as she blushes at you staring at her.", false); } else { if (lilaMilk <= 2){ outputMainText("\r\rThin trails of white milk travel through her fur from her many erect nipples, slowly dripping onto the floor as she stands there and waits for you, a slight blush crossing her cheeks as the air chills her wet areolas and makes her shiver.", false); } else { if (lilaMilk <= 5){ outputMainText("\r\rHer nipples push out from her fur, drops almost continually forming around them and drizzling down her naked body. Shyly, she brings a hand up to squeeze one that's especially stiff and sensitive, making her cheeks red as a squirt of milk launches across the floor of your room.", false); } else { if (lilaMilk <= 8){ outputMainText("\r\rThick streams of white milk dribble down her body, her puffy nipples bulging from their retained milk. Her arms cross over a few of them in embarrassment at how obvious they are, but milk squirts out around them and runs down over her pussy, mixing with the fluids there, and pooling on the floor.", false); } else { if (lilaMilk <= 12){ outputMainText("\r\rThough not completely engorged thanks to her 'sharing', her nipples are still quite puffy. A hand reaches up to massage one of the breasts as it feels a bit full to her and it spews several thin spurts in different directions from the slight touch, making her blush furiously.", false); } else { if (lilaMilk <= 18){ outputMainText("\r\rDespite having just fed some of her friends, her breasts are still swollen, her nipples puffing out further than ever before. Stiff and long, she can't help but play with them with her fingers, milk spilling profusely down her hand and body, and making her moan before you even get to her. With her eager actions, her face grows red with embarrassment.", false); } else { if (lilaMilk <= 19){ outputMainText("\r\rShe stands there, short and happy as her breasts squirt thin sprays of milk simply by moving a little. Her hands often pass over them, squeezing her thick stiff nipples and moaning as thick streams gush from them, spilling down her body. Rather used to them by now, she hardly blushes at all, and is quite eager for you to get back to her.", false); }; }; }; }; }; }; }; if (lilaVulva == 0){ outputMainText(" Her dainty little vulva also dribbles onto her thighs, her pink lips panting with lubrication in excitement.", false); } else { if (lilaVulva <= 2){ outputMainText(" She also twists her hips back and forth while she waits, still trying to figure out how to stand with her thick developed labia filling much the gap between her thighs, making slick webs spread back and forth between them.", false); } else { if (lilaVulva <= 5){ outputMainText(" Her nose seems somewhat red from a different kind of blush, a heat filling her face as her thighs tense and relax, squeezing the thick vulva between her legs again and again. You can see her clit peek out from its hood through the cleft, aroused and urging on the slimy coating about her thighs.", false); } else { if (lilaVulva <= 8){ outputMainText(" She still holds onto her swollen vulva, with much of the flesh bulging out from between her fingers. Standing with her legs slightly spread so as to not squeeze it, she still manages to cause long strands of thick lubricant to spill from her fingers as she kneads the mass about, afraid to stop or it'll drop from body.", false); } else { if (lilaVulva <= 12){ outputMainText(" She also stands with her legs spread, her thighs unable to touch due to the thick lips between them. Each outer labia is as big as her fist, with the inner labia dangling down and nearly red with arousal, drizzling thick strands of clear honey down to the floor without her even touching it. Which she puts a great deal of effort into doing, afraid that she won't stop rubbing the thick clit that sticks out slightly.", false); } else { if (lilaVulva <= 18){ outputMainText(" And between her knees hangs her overgrown lips, making her stand slightly bow-legged. Her legs almost constantly twist about, using her knees to squish the flesh again and again since her hands can hardly hold it all if she tried. Her clitoris can hardly be called a button, stroked like a small penis as it pushes out from the massive folds. Her inner lips are so pink with arousal that they seem to be growing longer, due to the the amount of slickness flowing down them that creates the illusion and forms a puddle around her feet.", false); } else { if (lilaVulva <= 19){ outputMainText(" And she hardly seems like's she's standing at all. With how much her legs bend around and squeeze the large squishy labia that fills the space between them, it seems like she's nearly sitting on her own pussy. However, it barely hovers over the floor, the inner labia dangling down and brushing across it when she presses down slightly to push her clit against the floor to please it a bit. If she curled up and actually wrapped her whole hand around the sensitive thing, there would have still been some more length to cover. Which only makes her original 'wetness' problem worse, the overall size of her genitals causing a flood about her feet and leaving them almost constantly slick and wet with a trail of more following her wherever she goes. However, thanks to her size, when she slips from her moisture she simply lets out an erotic mewl as she falls down onto her soft flesh.", false); }; }; }; }; }; }; }; if ((((lilaPreg <= 35)) && ((lilaVulva >= 11)))){ outputMainText(" Her belly seems to be sporting some extra cushioning as well. Not exactly chubby, her excess vaginal flesh from all the growth causes it to protrude, her lower breasts pushing out even more.", false); } else { if ((((lilaPreg <= 70)) && ((lilaPreg > 35)))){ outputMainText(" Her hands have a tendancy to cup her growing belly as well, imagining how big she will get. Already protruding quite a bit, her belly button just beginning to stick out, she giggles a little to herself at the thoughts of what's to come.", false); } else { if ((((lilaPreg <= 100)) && ((lilaPreg > 70)))){ outputMainText("Yet, despite all of that, her focus mostly remains on her large belly. Nearly as large as herself if she were to curl up, the thing hangs forward to the point where she can't see her messy arousal below. Her hands often roam over the taut fur, taking her naked opportunity to caress it and pleasure in it, cradling it gently.", false); }; }; }; } public function doDairyFarm():void{ var chance:int; chance = percent(); if ((((malonRep == 4)) && ((malonPreg > 216)))){ outputMainText("As you approach the farm, one of the farmhands rushes up to you. Catching their breath, they speak rapidly.\r\r'Hurry! Malon's gone into labor!!'\r\rThe farmhand grabs you hand and yanks you towards the main farmhouse. Within minutes, you're brought up to Malon's room where the excessively pregnant half-bovine woman huffs and heaves. Her tail swishes out the side from under her, twitching with each contraction.\r\r'Here it comes!', one of the farmhands announces as the baby begins to crown.\r\rAn eternity of bliss passes as you hear a cry, slightly mooing, but utterly beautiful. She has long, luxurious red hair, just like her mother's. Along with large, cow-like ears, and a long swishy tail. As well as, oddly enough, a jiggly little udder just below her belly and palmable breasts on her chest. A beautiful baby girl", true); if (malonChildren > 1){ outputMainText(", just like the rest", false); }; outputMainText("! ...She's got your eyes, at least.\r\rThe baby is actually quite developed already, it seems. She opens her eyes and giggles playfully, closer to a seven-year-old child than an actual baby. And as the farmhand places her on the bed, she tries to stand, but stumbles at first, using her mother as support. You wouldn't be surprised if she were running and talking within the next few days!\r\rBut, first thing's first, Malon pulls up her dress the rest of the way, letting her over-engorged bosom leak all over the bed. The little girl quickly crawls up to a long nipple, sucking it down her throat and suckling. You", false); if (malonChildren == 1){ outputMainText(", and her older sister,", false); }; if (malonChildren > 1){ outputMainText(", and her older sisters,", false); }; outputMainText(" gather close and give Malon a great big hug.", false); doNext(); doListen = function ():void{ outputMainText("You wind up sleeping at the farmhouse and spend an entire day with the family. The newborn girl is walking after the bedrest and even begins muttering her own cute little moos. Malon already has a dress ready for the girl, long and white that goes all the way down to the feet, just like she used to wear when she was that young. Well, not quite that young, but around that equivalent age in development.\r\rYou're congratulated many times as you eventually leave, and even given quite the hefty sum as a gift from the whole farm!", true); doCoin(150); doSexP(50); stats(0, 1, 0, 0); malonChildren++; malonPreg = 0; malonRep = 5; hrs = 30; doEnd(); }; } else { if (chance <= 15){ outputMainText("As you head towards the dairy farm, one of the farmers waves you over in greeting.\r\r'Why hello there! You're lucky to have passed by here at this time. We're giving away free samples of our dairy enhancement pills for cows, to help drum up some business. We use these to keep our dairy cows in top shape and producing plenty of milk. Give them to your own cows to help make them fine producers as well!\r Just... try not to eat them yourself, or you'll end up like Malon over there.'\r\rHe nods over to one of the farm-hands that is nearby. She's a beautiful woman with long, flowing red hair in a yellow shirt and long purple skirt with a brown apron around her waist and yellow shawl around her shoulders. However, the shawl seems fairly wet and she's careful to drape its ends over breasts larger than watermelons, trying to hide the large blotches on her shirt with it and keeping it at the ready to use at any moment. Her ears are also quite long, hanging perpendicular from her head, nearly 5 inches, and droop a little. Behind her you see a long, narrow tail, tipped with a tuft of long hairs, swish about her calves with each step. She lugs two overflowing pails of milk with a blush in her cheeks, trying to avoid eye contact with anyone as she disappears into a barn.", true); if (malonRep > 2){ outputMainText(" Although, she spots you out of the corner of her eye before she enters and turns to give you a bright smile. It looks like she'd wave at you, but her hands are a bit busy at the moment.", false); }; if (malonRep == 4){ if ((((malonPreg > 36)) && ((malonPreg <= 72)))){ outputMainText(" Especially as one wraps around her protruding belly, obviously pregnant...", false); }; if ((((malonPreg > 72)) && ((malonPreg <= 144)))){ outputMainText(" Yet, despite the massive belly she is sporting, it seems she's managing work just fine.", false); }; if ((((malonPreg > 144)) && ((malonPreg <= 216)))){ outputMainText(" You're actually quite surprised that she's even working at all. Though her breasts seem even larger than usual, they're actually supported by her enormously pregnant belly, looking to be even larger than she is.", false); }; }; if (malonRep > 3){ outputMainText("\r\r'Although, I'm sure you're already aware of the consequences.'\r\rHe gives you a perverse wink and hands you a complimentary DairE Pill, nodding you along.", false); } else { outputMainText("\r\r'Let's just say it's best to keep the pills to the cows.'\r\rHe hands you a complimentary DairE Pill and nods you along.", false); }; itemAdd(211); hrs = 2; doEnd(); } else { if ((((chance > 15)) && ((chance <= 55)))){ bc(); outputMainText("As you head towards the dairy farm, one of the farmers spots you and walks over to greet you.\r\r'Hello! If you want some of our milk, you should head over to Softlik. But if you're here for some of our DairE Pills, the supplement that helps our cows produce so much delicious milk, then look no further, you can buy one from me!'\r\r'Would you like to buy one? Only 30 coins!", true); buttonConfirm(); doListen = function ():void{ if (buttonChoice == 6){ if (coin < 30){ outputMainText("'Sorry friend, you don't seem to have enough coins. Come back later when you do and we can try to deal again!'\r\rHe gives you a nod before heading back to his work, leaving you to head back to Softlik.", true); hrs = 1; doEnd(); } else { outputMainText("'Alright, here you go friend!' He rummages through one of his pockets in his overalls and pulls out a large pill, handing it to you. 'Come back later if you need any more!'\r\rHe gives you a nod before heading back to his work, leaving you to head back to Softlik.", true); doCoin(-30); itemAdd(211); hrs = 2; doEnd(); }; } else { outputMainText("'Well, come back again later if you change your mind. And have a nice day!'\r\rHe gives you a nod before heading back to his work, leaving you to head back to Softlik.", true); hrs = 1; doEnd(); }; }; } else { if ((((((chance > 55)) && ((chance <= 80)))) || ((((((malonRep > 0)) && ((chance > 55)))) && ((chance <= 90)))))){ trace(("malonRep = " + malonRep)); if ((((percent() <= 25)) || ((((malonRep > 3)) && ((percent() <= 50)))))){ bc(); viewButtonOutline(0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0); viewButtonText(0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0); buttonWrite(5, "Inspect"); buttonWrite(7, "Leave"); outputMainText("Having avoided any farmers, you approach one of the barns. Your ears perk up as you hear something inside. A machine sounds like its pumping, yet you can see no signs of cows nearby or the farmers that take care of them.\r\r\rWhat do you do?", true); doListen = function ():void{ if (buttonChoice == 5){ if (malonRep < 1){ outputMainText("You quietly open the door and look inside, your eyes going wide at what you see. There are no cows, yet the automatic milker is churning away. In the stalls where the cows should be, stands a young woman, bent forward and hanging onto the guardrail to hold herself up. She wears a long purple skirt with a brown apron, her large rump rocking from side to side as a long tail with a hairy tip dances above in tune. Long red hair dangles down from her shoulders, with long, round ears sticking out. She heaves with each pump of the milker, letting out soft gasping moos.\r\rHer white shirt pushed down around her belly and her yellow shawl draped over the rail beside her, her enormous naked breasts hang down towards the floor. They're larger than watermelons, with nipples several inches long encompassed by the milking cups. Gushes of milk flow through the milker's hoses with each pump, her giant breasts being drained...\r\r\rWhat now?", true); } else { outputMainText("You quietly open the door and look inside, a smirk crossing your face. There are no cows, yet the automatic milker is churning away. In the stalls where the cows should be, stands Malon, the young farm-hand, bent forward and hanging onto the guardrail to hold herself up, her large rump rocking lazily back and forth as her bovine tail swings above in tune. Her white shirt is scrunched down around her belly, her enormous naked breasts hanging down towards the floor. Her nipples are several inches long and encompassed by the milking cups, gushes of milk flow through the milker's hoses with each pump, her giant breasts being drained. In between gasps, she lets out soft moos...", true); if (malonRep == 4){ if ((((malonPreg > 36)) && ((malonPreg <= 72)))){ outputMainText("\r\rShe rubs her slightly protruding belly, pregnant with one of your children...", false); }; if ((((malonPreg > 72)) && ((malonPreg <= 144)))){ outputMainText("\r\rBoth of her hands rub around her giant belly which hangs nearly as low as her tits, pregnant with one of your children. You don't know how she managed to even pull her shirt down like that...", false); }; if ((((malonPreg > 144)) && ((malonPreg <= 216)))){ outputMainText("\r\rHer flow of milk through the tubes seems even more powerful than before. You're surprised at how large her tits have grown, her nipples nearly scraping along the ground as she bends over. However, her giant belly that she hugs and caresses as she's milked reaches even further, the hay on the floor tickling her protruding belly button. She has propped it up against the guardrail to help maintain her balance, though she doesn't seem terribly uncomfortable.", false); }; }; if ((((malonRep == 5)) && ((malonChildren > 0)))){ outputMainText("\r\rIt seems as though she has finally found a moment to get away from your offspring and have some time to herself.", false); }; outputMainText("\r\r\rWhat now?", false); }; bc(); viewButtonOutline(0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0); viewButtonText(0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0); buttonWrite(2, "Interrupt"); buttonWrite(5, "Assist"); buttonWrite(7, "Fuck"); if (malonRep < 1){ buttonWrite(7, "Rape"); }; buttonWrite(10, "Leave"); doListen = function ():void{ if (buttonChoice == 2){ outputMainText("You tap on the rail beside her, notifying her of your presence. Her eyes go wide as she jumps, her tits bouncing and wobbling around the rail as she looks up at you.", true); if (malonRep < 0){ outputMainText("\r\rWith fear in her eyes, she grabs her shawl from the rail and runs in the opposite direction until the cups pop from her nipples with a milky flood. Her breasts swing from side to side, more milk splashing about the walls as she goes, she disappears out another door, leaving you with nothing.", false); stats(0, -1, 0, 0); doSexP(5); hrs = 2; doEnd(); } else { if (malonRep > 2){ outputMainText("\r\r'Meanie. Why'd you go and scare me like that?' She winks and sticks out her tongue at you.\r\rHer eyelids droop as her body shudders, the tail flicking wildly while the milk flow stutters with a strong burst. She lets out a low 'moo' as she comes, at least partly enjoying some of her bovine endownments.\r\rShe takes a moment before she comes down from her high. 'Mmm... I'm just going to hang out here for a bit. Feel free to take the bottle from the machine. It's really fresh~' She gives you a wink, rubbing her naked breasts as a bit more milk rushes through the tubes.", false); hrs = 2; doSexP(2); itemAdd(214); doEnd(); } else { if (malonRep == 2){ outputMainText("O-Oh, umm...' Her hands blindly wanders along the rail for her yellow shawl, picking it up and futily attempting to cover her large chest with it.\r\r'I-I just got so full that I, umm...' Her eyes glance from side to side. 'I-I know it's very much like a cow, but with all the work around here and how long it takes to do it manually...' Sadness fills her face at having been caught, despite what you said before. 'D-Don't worry, I'll clean up now...'\r\rHer ears drooping, her tail pushing against her dress trying to hide between her legs, she pulls the cups from her long nipples and lets the excess milk dribble off onto the floor. Turning away and trying to avoid any eyecontact, she wipes herself down with the yellow shawl and pulls up her shirt. She looks over her shoulder, her eyes to the ground, and says meekly, 'Sorry...', before heading out the other end of the building, leaving you to head back to Softlik.", false); hrs = 2; doEnd(); } else { if ((((malonRep == 0)) || ((malonRep == 1)))){ if (malonRep == 0){ outputMainText("\r\r'Uhh... umm...' Her hands blindly wanders along the rail for her yellow shawl, picking it up and futily attempting to cover her large chest with it. 'Who-Who're you? Please, please don't tell anyone I've been in here!", false); }; if (malonRep == 1){ outputMainText("\r\r'Oh, whew...' She puts a hand to her chest. 'It's just you. I-I'm not exactly supposed to be here, but, well, I'm sure you can see the benefits...' She stands there awkwardly, the machine still sucking milk from her long nipples. 'You... You won't tell anyone, will you?'", false); }; viewButtonOutline(0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0); viewButtonText(0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0); buttonWrite(5, "Tell"); buttonWrite(7, "Don't Tell"); doListen = function ():void{ if (buttonChoice == 5){ outputMainText("With tears welling up in her eyes, she rips away from the cups, letting them pop from her nipples with a milky flood. She turns and runs the other way, her tits bouncing from side to side and milk splashing across the walls as she goes, until she disappears out another door, leaving you with nothing.", true); stats(0, -3, 0, 0); malonRep = -1; hrs = 2; doEnd(); }; if (buttonChoice == 7){ if (malonRep == 0){ outputMainText("'Ahh, thank you so much!' She looks like she wants to hug you, but she's a bit tethered at the moment... and half naked.\r\rShe begins to gather herself, trying to turn away as she removes the milk-cups. You get a short flash of her over-ample chest before she pulls her shirt back into position, rubbing her nipples so they don't show through as well and dabbing the resulting blotch with her shawl.\r\r'M-My name is Malon. I've been this way most of my life... As a child, I always loved animals. A little too much, you could say... I liked the cows so much that I wanted to be like them. And so, I took one of their DairE Pills... To cut a long story short, I was happy with the results at first, becoming more like my bovine friends. Until eventually I grew up and realized my predicament. And, well, ever since then, I've been like this...'\r\rShe shuffles uncomfortably in position for a bit, not quite sure what to say. She glances from side to side before deciding to step over to the milk machine, grabbing a bottle that was freshly made. Very freshly.\r\r'I-I don't know how to thank you for not ruining one of the few pleasures of my life, but at least take this' She hands you the bottle as she bows her head.\r\rIn an instant, she turns and hurries out of the barn, her long tail squeezing against her backside and outlining her butt even more.", true); malonRep = 1; doSexP(20); stats(0, 1, 0, 0); hrs = 2; itemAdd(214); doEnd(); }; if (malonRep == 1){ outputMainText("'Hehe, thanks. Just a bit more to go...' Her eyelids droop as her body shudders, the tail flicking wildly while the milk flow stutters with a strong burst. She lets out a low 'moo' as she comes, at least partly enjoying some of her bovine endownments.\r\rShe takes a moment before she comes down from her high. 'Mmm... I'm just going to hang out here for a bit. Feel free to take the bottle from the machine. It's really fresh~' She gives you a wink, rubbing her naked breasts as a bit more milk rushes through the tubes.", true); hrs = 2; doSexP(5); itemAdd(214); stats(0, 1, 0, 0); doEnd(); }; }; }; }; }; }; }; }; if (buttonChoice == 5){ if (malonRep < 1){ outputMainText("The woman doesn't see you as you approach, her eyes closed as she hums pleasantly to herself. You pull up a bucket and a nearby stool, sliding it beneathe the tubes of the milking cups.\r\r'Eep!' She cries out as you interrupt her milking by pulling off the cups. She quickly settles down with a heavy blush on her face as you wrap your hands around her 6-inch long nipples, wringing down their lengths with gentle tugs, oscillating one after the other. Unable to resist, her breasts weighing her down and your hands keeping it that way, she rests upon the guardrail and waits for you to finish, her large ears drooping in embarrassment.\r\rEvery few squirts from her tits, the fluid splashing against the metallic bucket, she lets out a gasp as her large rear twitches, her long bristly tipped tail jerking above. After a few minutes of gentle milking, the flow begins to increase, the milk spraying everywhere with each tug. She clenches her eyes shut as her face burns red. Her whole body shudders, causing her rump to jiggle and the heavy bags to jounce out of your hands. Her mouth yawns wide to let out a moan of ecstasy, but all that comes out is a long, low 'Moooooooo!'", true); doNext(); doListen = function ():void{ if (buttonChoice == 6){ outputMainText("She huffs for a few moments, her mind returning to its senses. The realization of her excessively cattle-like behaviour, especially in front of you, embarrasses her immensely. She jerks backward to stand up, a breast swinging out and slapping you in the face with a wet kiss from her nipple, before she turns and runs in the opposite direction. With a kink in her step and her breasts swaying from side to side, she disappears with her tail between her legs, pushing the skirt in to further amplify her endowments.\r\rA bit afraid of what happens next, you decide it best to disappear yourself.", true); malonRep++; if (malonRep == 1){ doNext(); doListen = function ():void{ outputMainText((("However, on your way out, you feel a tug on your " + clothesTop()) + ".\r\rYou turn around to see the woman again, covering her chest with the yellow shawl she had left behind.\r\r'Uhh... umm... Th-that was a bit rude of me. I'm sorry... You seem like you were genuinely trying to help.' She fumbles a little as she tries to hold the shawl to her chest with a single arm, managing to let a nipple pop out with a blush before she gets it right. She holds out her free hand to shake yours. 'I'm Malon.'\r\rYou take her hand and shake with the formal introduction.\r\r'I'm... kinda ashamed for being such a... well, cow. Let's just say I liked them too much when I was younger and took some DairE Pills to act like them. And then I wound up being a little too much like them, resulting in some rather... bothersome attributes for a woman like me. Anyways, here. At least you should get something for your efforts.'\r\rShe turns away and adjusts her shirt back into place so she doesn't have to worry about her shawl, though her naked breasts are still visible on either side of her body. Then she picks up the bucket you had used and pours it into one of the bottles meant for the milk of normal cows, handing it to you.\r\r'I-It's not much, but that's all I can offer at the moment...'\r\rAfter you take the milk, she says her goodbyes and tells you she'll be more welcoming from now on, leaving you to head back to Softlik."), true); stats(1, 2, 1, 2); doSexP(20); itemAdd(214); hrs = 2; doEnd(); }; } else { stats(1, 1, 1, 1); doSexP(2); hrs = 2; doEnd(); }; }; }; } else { if (malonRep >= 1){ outputMainText("Malon doesn't see you as you approach, her eyes closed as she hums pleasantly to herself. You pull up a bucket and a nearby stool, sliding it beneathe the tubes of the milking cups.\r\r'Eep!' She cries out as you interrupt her milking by pulling off the cups. She quickly settles down with a heavy blush on her face as she recognies you and your hands wrap around her 6-inch long nipples, wringing down their lengths with gentle tugs, oscillating one after the other. With a small smile, though still a slight blush, she allows you to take care of her milk for her.\r\rEvery few squirts from her tits, the fluid splashing against the metallic bucket, she lets out a gasp as her large rear twitches, her long bristly tipped tail jerking above. After a few minutes of gentle milking, the flow begins to increase, the milk spraying everywhere with each tug. She clenches her eyes shut as her face burns red. Her whole body shudders, causing her rump to jiggle and the heavy bags to jounce out of your hands. Her mouth yawns wide to let out a moan of ecstasy, but all that comes out is a long, low 'Moooooooo!'\r\rShe takes a few moments to come down from her climax, heaving slightly, her breasts bobbing up and down. Then she leans over the rail, her tits squirting milk across your lap, as she kisses you on the forehead.\r\r'Thanks for that', she whispers. 'Feel free to take a bottle and fill it for your kind efforts.'\r\rShe dozes off a little on the rail, her tail flicking back and forth contently as she reflects on her orgasm, her nipples dripping into the hay on the ground.\r\rNot wanting to disrupt her pleasant thoughts, you take a bottle of her milk and leave.", true); stats(1, 1, 1, 0); itemAdd(214); hrs = 2; if (malonRep == 1){ doNext(); doListen = function ():void{ outputMainText((("You don't get far, however, as you feel a tug at your " + clothesTop()) + " from behind.\r\rYou turn to see Malon huffing a little, her shirt covered with milk, as she had ran to catch up with you.\r\r'Umm... I... I just wanted to thank you for being so kind to me... Most of the people that work on the farm or visit regard me as being a nuisance or a joke. I mean, I still love the animals so much that I'll never want to leave, but they often regard me like one of them. And, well... When I let out a moo like that, just like a cow, I... I can't help but think that they're right. I'm nothing but a big fat cow...'\r\rHer head hangs low, her bovine ears drooping in shame.\r\r\rDo you want to tell her that she shouldn't act like a cow and try to avoid mooing, or that she should accept her cow-like qualities?"), true); viewButtonOutline(0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0); viewButtonText(0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0); buttonWrite(5, "Don't Moo"); buttonWrite(7, "Moo"); doListen = function ():void{ if (buttonChoice == 5){ outputMainText("You nod and tell her that it'd probably be best if she tried to not act like a cow to the best of her abilities. Her head still hangs, but she nods in return, accepting her condition as a problem. She reaches out, giving you a small hug, then turns to walk back to the farm. Her tail hangs between her legs, trying to tuck itself between her legs to prevent anybody from noticing, altouth the effort merely shows off her large rump even more...", true); stats(0, 2, 0, -2); doSexP(5); malonRep = 2; doEnd(); }; if (buttonChoice == 7){ outputMainText((("You smile and pat her on the head, telling her that she shouldn't be ashamed of being a cow. There's a lot of races out there that are like other animals, so she's more like a new race on her own.\r\rHearing your uplifting words, her head rises back up with a big, goofy smile, her ears nearly flapping. 'M-Mooo?'\r\rYou nod in acceptance.\r\rShe giggles loudly, lunging out at you with her arms stretched wide and plowing you to the ground under her massive soft tits in a great big hug. She nuzzles your " + boobDesc()) + " chest a little, enjoying your presence, before lifting herself with milky drops spilling from her shirt onto you. Not caring in the slightest, however, she turns around and skips back to the farm, her chest bouncing immensely while her tail flails about happily behind her.\r\r\rAs you come to a stand, however, something drops from your body, having been intentionally left behind during her attack..."), true); stats(0, 1, 0, 2); doSexP(25); malonRep = 3; itemAdd(215); doEnd(); }; }; }; } else { doEnd(); }; }; }; }; if (buttonChoice == 7){ if (malonRep < 1){ outputMainText("You sneak up behind her, careful to not let her notice your movement as she hums pleasantly to herself. Before she can react, you flip up her long skirt and expose her naked loins. Her ass is large and her hips protrude from her sides, looking much like an actual cow. Her feminine sex is large and plump, almost animalistic in its size and absolute lewdness, with her inner labia bulging past her thick outer ones, gaping slightly with arousal. Tiny drops of dew speckle the lips, already engorged and aroused from the milking.\r\rShe lets out a cry of surprise as you inspect her naked rear. However, her heavy chest weighs her down and you pull her narrow tail to make sure she can't stand.", true); if (cockTotal > 0){ if ((cockSize * cockSizeMod) <= eVagLimit(56)){ outputMainText(((" She shrieks in terror as you plunge your " + cockDesc()) + " cock into her hungry sex.\r\r'No, don't!' She cries out in fear. 'Somebody help!'\r\rNobody hears her over the machine that continues to pump away at her breasts. She whines and mewls as you churn her insides, pumping in tune to the machine. Her body defies her and begins to quiver around your cock, a gush of milk stuttering through the tubes. Her mouth opens wide to shout one last time but all that comes out is a long 'MOOOOOO!'"), false); }; if ((cockSize * cockSizeMod) > eVagLimit(56)){ outputMainText(((" She shrieks in terror as you ram your " + cockDesc()) + " cock against her fat lips. Yet, despite her rather pronounced size, you're still far too large for her. Instead, you slide your cock between her thighs, running it through the cleft of her pussy and grinding it across her stiff clit until your cock pushes against the other side of the long skirt, wedging it between her hanging breasts until you're literally tit-fucking her from behind.\r\r'No, don't!' She cries out in fear and bewilderment.\r\rHowever, the shouts of dissension quickly die down as you thrust your cock back and forth across her clit and through her cleavage, pumping in tune to the machine. The vibrations reverberate through her chest and connect to the sensations from her clit, making her whole body begin to quiver.\r\rA moment later, her mouth yawns wide to either shout or moan, but what comes out is nothing but a loud 'Moooooo!'"), false); }; doNext(); doListen = function ():void{ outputMainText("Before you can come yourself, the loud bovine expression makes the girl jump with embarrassment, her tail slipping from your hand and your cock sliding out from between her legs as she turns to run. The milking cups pop from her long nipples, flinging milk everywhere as she runs away, her large breasts swinging from side to side and her skirt a mess.", true); if ((cockSize * cockSizeMod) <= eVagLimit(56)){ outputMainText((("\r\rObviously having thoroughly terrified the girl, you turn the opposite direction to make a quick getaway yourself, your cock hard in your " + clothesBottom()) + "..."), false); malonRep = -1; }; if ((cockSize * cockSizeMod) > eVagLimit(56)){ outputMainText("\r\rYou're not quite sure if it was because of your actions that frightened her so, or her own reaction to them... Either way, you think it best to not dawdle, despite your cock still being hard...", false); }; stats(0, -3, 2, 0); doSexP(5); doLust(30); hrs = 2; doEnd(); }; }; if (cockTotal < 1){ outputMainText(" She gasps loudly as you fall to your knees and dive your face into her plush groin.\r\r'No, don't!' She whines as you nibble her fat clit and lick through her folds.\r\rHowever, the shouts of dissension quickly die down as your tongue works its way into her supple hole. Muffled whines still escape her lips every now and again, but as the machine works at her breasts in tune to your devouring of her sex, her wide hips soon begin to sway in harmony.\r\rQuite soon, you hear the machine stutter on a sudden increase in her flow. A second later, wet ecstasy gushes around your face and slimes down to your chin, her whole body quivering around you, while a low and loud 'Mooooo!' fills the air...", false); doNext(); doListen = function ():void{ outputMainText("As you pull your face from her cunt, you find yourself temporarily wedged between her cheeks as she abruptly stands. With a whimper and her ears drooping in embarrassment, she yanks herself from the milker and runs away. With a kink in her step and her breasts swaying from side to side, she disappears with her tail between her legs, pushing the skirt in until it blotches with her feminine mess.\r\rNot quite sure what she was thinking, you decide it best to disappear yourself.", true); stats(0, -1, 1, 0); doSexP(5); doLust((lib - ment)); hrs = 2; doEnd(); }; }; }; if ((((malonRep == 1)) || ((malonRep == 2)))){ outputMainText("You sneak up behind her, careful to not let her notice your movement as she hums pleasantly to herself. Before she can react, you flip up her long skirt and expose her naked loins. Her ass is large and her hips protrude from her sides, looking much like an actual cow. Her feminine sex is large and plump, almost animalistic in its size and absolute lewdness, with her inner labia bulging past her thick outer ones, gaping slightly with arousal. Tiny drops of dew speckle the lips, already engorged and aroused from the milking.\r\rShe lets out a cry of surprise as you inspect her naked rear. However, her heavy chest weighs her down and you grab her tail playfully to keep her down.", true); if (cockTotal > 0){ if ((cockSize * cockSizeMod) <= eVagLimit(56)){ outputMainText(((" She shrieks in terror as you plunge your " + cockDesc()) + " cock into her hungry sex.\r\r'No, don't!' She cries out in fear. However, she quickly recognizes you and begins to whine. 'Please, not like this!'\r\rYou ignore her pleas and continue anyways. She whines and mewls as you churn her insides, pumping in tune to the machine. Her body soon reacts and begins to quiver around your cock, a gush of milk stuttering through the tubes. Her mouth opens wide to shout one last time but all that comes out is a long 'MOOOOOO!'"), false); }; if ((cockSize * cockSizeMod) > eVagLimit(56)){ outputMainText(((" She shrieks in terror as you ram your " + cockDesc()) + " cock against her fat lips. Yet, despite her rather pronounced size, you're still far too large for her. Instead, you slide your cock between her thighs, running it through the cleft of her pussy and grinding it across her stiff clit until your cock pushes against the other side of the long skirt, wedging it between her hanging breasts until you're literally tit-fucking her from behind.\r\r'No, don't!' She cries out in fear and bewilderment. However, she quickly recognizes you and bites her lip; not entirely happy with the situation but not fighting much more either.\r\rYou thrust your cock back and forth across her clit and through her cleavage, pumping in tune to the machine. The vibrations reverberate through her chest and connect to the sensations from her clit, making her whole body begin to quiver.\r\rA moment later, her mouth yawns wide to either shout or moan, but what comes out is nothing but a loud 'Moooooo!'"), false); }; doNext(); doListen = function ():void{ outputMainText("Before you can come yourself, the loud bovine expression makes the girl jump with embarrassment, her tail slipping from your hand and your cock sliding out from between her legs as she turns and stands. The milking cups pop from her long nipples, flinging milk everywhere as she turns to face you.\r\r'P-Please! I don't want to be that kind of girl!' She fretfully tries to cover her naked, milky chest with her shawl before turning to run away in silence.", true); outputMainText("\r\rThe way she said it didn't seem to regard the sexual aspect of what just happened... Unsure of what to do, you turn and head away from the farm, your cock even harder than before...", false); stats(0, -1, 1, 0); doSexP(5); doLust(20); hrs = 2; doEnd(); }; }; if (cockTotal < 1){ outputMainText(" She gasps loudly as you fall to your knees and dive your face into her plush groin.\r\r'No, don't!' She whines as you nibble her fat clit and lick through her folds.\r\rHowever, the shouts of dissension quickly die down as your tongue works its way into her supple hole. Muffled whines still escape her lips every now and again, but as the machine works at her breasts in tune to your devouring of her sex, her wide hips soon begin to sway in harmony.\r\rQuite soon, you hear the machine stutter on a sudden increase in her flow. A second later, wet ecstasy gushes around your face and slimes down to your chin, her whole body quivering around you, while a low and loud 'Mooooo!' fills the air...", true); doNext(); doListen = function ():void{ outputMainText("As you pull your face from her cunt, you find yourself temporarily wedged between her cheeks as she abruptly stands. With a whimper and her ears drooping in embarrassment, she yanks herself from the milker and turns towards you.\r\r'P-Please! I don't want to be that kind of girl!' She fretfully tries to cover her naked, milky chest with her shawl before turning to run away in silence, her tail pushing the skirt between her legs in until it blotches with her feminine mess.\r\rThe way she said it didn't seem to regard the sexual aspect of what just happened... Unsure of what to do, you turn and head away from the farm.", true); stats(0, -1, 1, 0); doSexP(5); doLust((lib - ment)); hrs = 2; doEnd(); }; }; }; if (malonRep == 3){ outputMainText("You sneak up behind her, careful to not let her notice your movement as she hums pleasantly to herself. Before she can react, you flip up her long skirt and expose her naked loins. Her ass is large and her hips protrude from her sides, looking much like an actual cow. Her feminine sex is large and plump, almost animalistic in its size and absolute lewdness, with her inner labia bulging past her thick outer ones, gaping slightly with arousal. Tiny drops of dew speckle the lips, already engorged and aroused from the milking.\r\rShe lets out a cry of surprise as you inspect her naked rear. However, her heavy chest weighs her down and you grab her tail playfully to keep her down.", true); if (cockTotal > 0){ if ((cockSize * cockSizeMod) <= eVagLimit(56)){ outputMainText(((" She shrieks as you plunge your " + cockDesc()) + " cock into her hungry sex.\r\r'No, don't!' She cries out in fear. However, she quickly recognizes you and her head descends behind her shoulders. 'A-Are you sure?' She looks at you with complete seriousness.\r\rYou nod with a smile.\r\r'O-Okay!' She forces a smile back, then braces herself against the guardrail.\r\rShe quickly begins to push back against your hips, sucking in the length of your cock as her plump ass presses against you. She shivers in ecstasy as you fill her, the machine pleasuring her tits."), false); if (percent() <= 20){ malonRep = 4; malonPreg = 0; }; }; if ((cockSize * cockSizeMod) > eVagLimit(56)){ outputMainText(((" She shrieks as you ram your " + cockDesc()) + " cock against her fat lips. Yet, despite her rather pronounced size, you're still far too large for her. Instead, you slide your cock between her thighs, running it through the cleft of her pussy and grinding it across her stiff clit until your cock pushes against the other side of the long skirt, wedging it between her hanging breasts until you're literally tit-fucking her from behind.\r\r'No, don't!' She cries out in fear. However, she quickly recognizes you and her head descends behind her shoulders. 'A-Are you sure?' She looks at you with complete seriousness.\r\rYou nod with a smile.\r\r'O-Okay!' She forces a smile back, then braces herself against the guardrail.\r\rShe leans backward along your length, running her clit across your shaft until her plump ass presses against you. She shivers in ecstasy from the sensitive contact and the machine still pleasuring her tits."), false); }; outputMainText("\r\rYou thrust against her wide hips again and again, in tune to the machine. Her breasts sway back and forth as you pound her, milk spitting through the tubes as she comes closer and closer to climax. You lean forward, hugging her tight as she begins to shudder. Her thighs clench and her hands wring the rail. Her mouth yawns widely. With some slight hestitation, she lets out a soft 'M-Mooo!'. Then, as your cock begins to gush with cum, her mouth yawns wider as her eyes go wide, completely ignoring her inhibitions.\r\r'MOOOOOOOOO!'", false); cumAmount(); doNext(); doListen = function ():void{ outputMainText("You both stand there for a few moments, gasping for breath. She slumps backward, pinning you against the wall behind you and she turns to stroke your face.\r\r'Th-Thank you so much!' Her lips reach out and softly kisses your own...\r\r\rThoroughly satisfied, the two of you spend the next hour cleaning up all the cum and milk you left everywhere... But you're quite happy nevertheless.\r\rEventually you kiss her goodbye and leave her to quickly return to her work as a farm-hand before she's caught with her little pleasure.", true); stats(0, 2, 2, 2); doLust((-(sen) * 2)); doSexP(20); if (malonRep == 3){ malonRep = 5; }; hrs = 3; doEnd(); }; }; if (cockTotal < 1){ outputMainText(" She gasps loudly as you fall to your knees and dive your face into her plush groin.\r\r'No, don't!' She cries out in fear. However, she quickly turns and recognizes you, her head descending behind her shoulders. 'A-Are you sure?' She looks at you with complete seriousness.\r\rYou nod with a smile.\r\r'O-Okay!' She forces a smile back, then braces herself against the guardrail.\r\rShe pushes her plump rump towards your face, letting you nibble her fat clit and lick through her folds. Her hips rock beack and forth while your tongue works its way into her supple hole, her arousal drizzling down your face. Soft moans escape her lips every now and again, and increase as the machine works at her breasts in tune to your devouring of her sex, her breasts beginning to sway in harmony.\r\rQuite soon, you hear the machine stutter on a sudden increase in her flow. A second later, wet ecstasy gushes around your face and slimes down to your chin, her whole body quivering around you. Her mouth yawns widely. With some slight hestitation, she lets out a soft 'M-Mooo!'. Then, as you bite down on her orgasming clit, her mouth yawns wider as her eyes go wide, completely ignoring her inhibitions.\r\r'MOOOOOOOOO!'", true); doNext(); doListen = function ():void{ outputMainText("As you pull your face from her cunt, her legs give out as she slumps back into you, pinning you between her fat pussy and the wall behind. Her ears twitching at the sides of her head, she stands up and turns to you, allowing the cups to pop from her nipples and milk cascade down your body. She kneels down beside you, hugging her tits to your chest.\r\r'Th-thank you!' She presses her lips to your own, kissing you through her own slickness that covers your face.\r\rThe two of your relax in each others arms. However, eventually she has to get back to her duties before she is missed. She pulls her skirt back down and her shirt back up, giving you a wink as both pieces blotch a little from various fluids. She turns away and heads out with some extra sway in her step and her tail flicking high.", true); stats(0, 2, 2, 2); doSexP(20); if (malonRep == 3){ malonRep = 5; }; doLust(Math.floor((lib / 2))); hrs = 2; doEnd(); }; }; }; if (malonRep >= 4){ outputMainText("You sneak up behind her, careful to not let her notice your movement as she hums pleasantly to herself. Before she can react, you flip up her long skirt and expose her naked loins. Her ass is large and her hips protrude from her sides, looking much like an actual cow. Her feminine sex is large and plump, almost animalistic in its size and absolute lewdness, with her inner labia bulging past her thick outer ones, gaping slightly with arousal. Tiny drops of dew speckle the lips, already engorged and aroused from the milking.\r\rShe lets out a cry of surprise as you inspect her naked rear. However, her heavy chest weighs her down and you grab her tail playfully to keep her down.", true); if (cockTotal > 0){ if ((cockSize * cockSizeMod) <= eVagLimit(56)){ outputMainText(((" She shrieks as you plunge your " + cockDesc()) + " cock into her hungry sex. She immediately turns to spot her assailent and her face calms as she begins to smile.\r\r'Don't frighten me like that!' She sticks out her tongue and kicks you with a foot.\r\rShe quickly begins to push back against your hips, sucking in the length of your cock as her plump ass presses against you. She shivers in ecstasy as you fill her, the machine pleasuring her tits."), false); if ((((malonRep == 5)) && ((percent() <= 20)))){ malonRep = 4; malonPreg = 0; }; }; if ((cockSize * cockSizeMod) > eVagLimit(56)){ outputMainText(((" She shrieks as you ram your " + cockDesc()) + " cock against her fat lips. Yet, despite her rather pronounced size, you're still far too large for her. Instead, you slide your cock between her thighs, running it through the cleft of her pussy and grinding it across her stiff clit until your cock pushes against the other side of the long skirt,"), false); if (malonRep == 4){ if (malonPreg < 54){ outputMainText(" wedging it between her hanging breasts until you're literally tit-fucking her from behind. She turns to spot who could possibly plow through her cleavage like that and isn't terribly surprised to see you.\r\r'Don't frighten me like that!' She sticks out her tongue and kicks you with a foot.\r\rShe leans backward along your length, running her clit across your shaft until her plump ass presses against you. She shivers in ecstasy from the sensitive contact and the machine still pleasuring her tits.", false); }; if ((((malonPreg >= 54)) && ((malonPreg < 72)))){ outputMainText(" curving around her pregnant belly until it wedges between her hanging breasts, literally tit-fucking her from behind. She turns to spot who could possibly plow through her cleavage like that and isn't terribly surprised to see you.\r\r'Don't frighten me like that!' She sticks out her tongue and kicks you with a foot.\r\rShe leans backward along your length, running her clit across your shaft until her plump ass presses against you. She shivers in ecstasy from the sensitive contact and the machine still pleasuring her tits.", false); }; if ((((malonPreg >= 72)) && ((malonPreg < 108)))){ outputMainText(" diverting down towards the ground from her massive belly until your ramming into the hay. She turns to spot who could possibly hump her belly likse that and isn't terribly surprised.\r\r'Don't frighten me like that!' She sticks out her tongue and kicks you with a foot.\r\rShe leans backward along your length, running her clit across your shaft until her plump ass presses against you. She shivers in ecstasy from the sensitive contact and the machine still pleasuring her tits.", false); }; if (malonPreg >= 108){ outputMainText(" diverting down towards the ground from her massive belly until you're lifting her slightly as your cock wedges between the belly and the hay on the floor. She turns to spot who could possibly hump her belly likse that and isn't terribly surprised.\r\r'Don't frighten me like that!' She sticks out her tongue and kicks you with a foot.\r\rShe leans backward along your length, running her clit across your shaft until her plump ass presses against you. She shivers in ecstasy from the sensitive contact and the machine still pleasuring her tits.", false); }; } else { outputMainText(" wedging it between her hanging breasts until you're literally tit-fucking her from behind. She turns to spot who could possibly plow through her cleavage like that and isn't terribly surprised to see you.\r\r'Don't frighten me like that!' She sticks out her tongue and kicks you with a foot.\r\rShe leans backward along your length, running her clit across your shaft until her plump ass presses against you. She shivers in ecstasy from the sensitive contact and the machine still pleasuring her tits.", false); }; }; outputMainText("\r\rYou thrust against her wide hips again and again, in tune to the machine. Her breasts sway back and forth as you pound her, milk spitting through the tubes as she comes closer and closer to climax. You lean forward,", false); if ((((malonRep == 3)) && ((malonPreg >= 54)))){ outputMainText(" hugging her and her pregnant belly ", false); } else { outputMainText(" hugging her ", false); }; outputMainText("tight as she begins to shudder. Her thighs clench and her hands wring the rail, her mouth proudly yawning wide with a loud 'Moooooooo!', squeezing your cock until you gush with cum.", false); cumAmount(); doNext(); doListen = function ():void{ outputMainText("You both stand there for a few moments, gasping for breath. She slumps backward, pinning you against the wall behind you and she turns to stroke your face.\r\r'Thank you~' She kisses you...\r\r\rThoroughly satisfied, the two of you spend the next hour cleaning up all the cum and milk you left everywhere... But you're quite happy nevertheless.\r\rEventually you kiss her goodbye and leave her to quickly return to her work as a farm-hand before she's caught with her little pleasure.", true); stats(0, 2, 2, 2); doSexP(2); doLust((-(sen) * 2)); hrs = 3; doEnd(); }; }; if (cockTotal < 1){ outputMainText(" She gasps loudly as you fall to your knees and dive your face into her plush groin. She turns to see who it is and giggles.\r\r'Don't frighten me like that!' She presses back against your face as punishment, stuffing you into the cheeks of her plump rump.\r\rThe 'punishment' quickly subsides as you nibble her fat clit and lick through her folds. Her hips rock beack and forth while your tongue works its way into her supple hole, her arousal drizzling down your face. Soft moans escape her lips every now and again, and increase as the machine works at her breasts in tune to your devouring of her sex, her breasts beginning to sway in harmony.\r\rQuite soon, you hear the machine stutter on a sudden increase in her flow. A second later, wet ecstasy gushes around your face and slimes down to your chin, her whole body quivering around you, while a low and loud 'Mooooo!' fills the air.", true); doNext(); doListen = function ():void{ outputMainText("As you pull your face from her cunt, her legs give out as she slumps back into you, pinning you between her fat pussy and the wall behind. Her ears twitching at the sides of her head, she stands up and turns to you, allowing the cups to pop from her nipples and milk cascade down your body. She kneels down beside you, kissing you through her own slickness that covers your face.\r\r'Thank you~'\r\rHaving to get back to her duties, however, she pulls her skirt back down and her shirt back up, giving you a wink as both pieces blotch a little from various fluids. She turns away and heads out with some extra sway in her step and her tail flicking high.", true); stats(0, 2, 2, 2); doSexP(2); doLust(Math.floor((lib / 2))); hrs = 2; doEnd(); }; }; }; }; if (buttonChoice == 10){ outputMainText("You turn around and head back to Softlik, deciding it best to leave her to her privacy.", true); hrs = 1; doEnd(); }; }; }; if (buttonChoice == 7){ outputMainText("A little too dangerous, and probably illegal with the whole trespassing thing, you turn around and walk away.", true); hrs = 1; doEnd(); }; }; } else { if (malonRep > 0){ if ((((malonRep == 1)) && ((((milkEngorgementLevel > 0)) || ((udderEngorgementLevel > 0)))))){ outputMainText((("Malon is working outside as you approach the farm once again. She spots the blotches in your " + clothesTop()) + " and shouts to the other workers that she's got some business she needs to take care of. The others roll their eyes, well used to the excuse thanks to her 'condition'. Nevertheless, she smiles as she heads towards you.\r\r'Need some help?' She winks and sticks out her tongue as she looks down at your moistness."), true); buttonConfirm(); doListen = function ():void{ if (buttonChoice == 6){ outputMainText("She nods with a soft smile, taking you by the hand. Leading you into the main farmhouse, she's quick to look around corners and check hallways, as if she were smuggling you into the building. Eventually, she brings you upstairs to a bedroom.\r\rIn the center of the room sits a good-sized bed, with downy blankets and soft matress. However, the sheets seem to be coated with some sort of wax, making them shiny and most likely waterproof. In a corner beside the bed stands a stack of several buckets, all clean and ready to be used. Malon leads you towards her bed, motioning for you to sit.\r\r'Just relax and I'll take care of it for you.' She speaks sweetly.", true); doNext(); doListen = function ():void{ outputMainText((("\r\rYou sit down upon the soft bed, sinking in slightly from the extra cushioning. She then grabs a bucket from the stack and pulls a short stool over to your knees.\r\r'Your " + clothesTop()) + ", please.' She motions to it being in the way."), true); if (ment > lib){ outputMainText((((("\r\rWith a heavy blush in your cheeks, you nod back, pulling your " + clothesTop()) + " ") + pullUD(1)) + ", slowly exposing your "), false); } else { if (ment > (lib - 10)){ outputMainText((((("\r\rWith a slight blush in your cheeks, you nod back, pulling your " + clothesTop()) + " ") + pullUD(1)) + ", exposing your "), false); } else { outputMainText((((("\r\rWith a quick nod and no hesitation, you pull " + pullUD(1)) + " your ") + clothesTop()) + ", exposing your "), false); }; }; if ((((((milkEngorgementLevel > 0)) && ((udderEngorgementLevel > 0)))) && ((udders == true)))){ outputMainText((((boobDesc() + " leaky breasts and letting your ") + udderDesc()) + " udder spill into your lap."), false); } else { if (milkEngorgementLevel > 0){ outputMainText((boobDesc() + " leaky breasts."), false); } else { if ((((udderEngorgementLevel > 0)) && ((udders == true)))){ outputMainText((udderDesc() + " udder, your teats dripping into your lap."), false); }; }; }; outputMainText(" Malon then slips her hands into her cleavage, quickly warming her hands, before reaching out to your ", false); if (milkEngorgementLevel > 0){ outputMainText((nipDesc() + " nipples"), false); } else { if ((((udderEngorgementLevel > 0)) && ((udders == true)))){ outputMainText((teatDesc() + " teats"), false); }; }; outputMainText(" and gently pinches them within her grasp. Expertly, she bends you forward slightly and aims towards the bucket. Within just a few tugs, you're already squirting milk into the bucket, the pleasant feeling of warmth overcoming you and intensified by her caring massage.\r\rThe room quickly fills with the sound of your squirts hitting the metallic bucket, in a gentle rhythm. She begins to hum a tune (that, for some reason, you'd think horses would love), when redness tinges her cheeks. 'Oh-Oh my...'\r\rHer shirt blotches quickly, her own milk beginning to drip into the bucket with yours. 'Uh-umm... I think doing this made my breasts think it's that time... Y-You don't mind, do you?' She plucks at her shirt to indicate what she means.", false); viewButtonOutline(0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0); viewButtonText(0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0); buttonWrite(5, "Help her"); buttonWrite(7, "Let her"); doListen = function ():void{ var getMilk:int; if (buttonChoice == 5){ if ((((milkEngorgementLevel > 0)) && ((udderEngorgementLevel > 0)))){ getMilk = (milkAmount(1) + milkAmount(2)); } else { if (milkEngorgementLevel > 0){ getMilk = milkAmount(1); } else { if (udderEngorgementLevel > 0){ getMilk = milkAmount(2); }; }; }; nipplePlay = (nipplePlay + 12); if (udders == true){ udderPlay = (udderPlay + 12); }; outputMainText("You shake your head, telling her it's not alright.\r\rA bit defeated, the redness in her cheeks intensifies as she attempts to continue milking you while she drips away. However, you tell her to stop with that as well.\r\rCompletely confused, her eyes quickly go wide as you reach out for her shirt and pull it up. When your hands gently caress her 6-inch long nipples, aiming them towards the bucket and squirting out some of her own milk, the blush in her face recedes as a soft smile grows on her face, cheerfully accepting your efforts.\r\rFacing each other, with your hands on each other's milky bits, the two of you tug and pull until each other sprays into the bucket with a gasp. More and more milk spills from you both, though the moans echoing between you two would suggest something more as they rise in volume. Until, eventually, Malon's tits gush into the bucket as her body quivers and her mouth yawns wide to cry out in ecstacy, only to let out a long 'Mooooooo!'", true); doNext(); doListen = function ():void{ outputMainText("Her hands let go of you, springing up to cover her mouth in fright. Her ears droop in shame and tears begin to well up in her eyes as she buries the rest of her face behind her hands. She jumps up from her stool, milk still spraying from her nipples and drenching you slightly, before she runs out of the room in utter embarrassment, her breasts swinging from side to side and painting the walls of the house with more milk.\r\rUnsure of what just happened, you clean yourself off and finish the last of your own lactation, neatly putting the buckets aside. You attempt to look for her, but with a farm so big you have no idea where to start. With a sigh, you head back to Softlik.", true); doNext(); doListen = function ():void{ outputMainText((("You don't get far, however, as you feel a tug at your " + clothesTop()) + " from behind.\r\rYou turn to see Malon huffing a little, her shirt covered with milk after having been hastily put on having ran to catch up with you. She wipes her eyes with a sniffle.\r\r'Umm... I... I'm so sorry for running out on you like that. I just wanted to thank you for being so kind to me, though... Most of the people that work on the farm or visit regard me as being a nuisance or a joke. I mean, I still love the animals so much that I'll never want to leave, but they often regard me like one of them. And, well... When I let out a moo like that, just like a cow, I... I can't help but think that they're right. I'm nothing but a big fat cow...'\r\rHer head hangs low, another tear dripping from her cheek, her bovine ears drooping in shame.\r\r\rDo you want to tell her that she shouldn't act like a cow and try to avoid mooing, or that she should accept her cow-like qualities?"), true); viewButtonOutline(0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0); viewButtonText(0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0); buttonWrite(5, "Don't Moo"); buttonWrite(7, "Moo"); doListen = function ():void{ if (buttonChoice == 5){ outputMainText("You nod and tell her that it'd probably be best if she tried to not act like a cow to the best of her abilities. Her head still hangs, but she nods in return, accepting her condition as a problem. She reaches out, giving you a small hug, then turns to walk back to the farm. Her tail hangs between her legs, trying to tuck itself between her legs to prevent anybody from noticing, altouth the effort merely shows off her large rump even more...", true); stats(0, 2, 0, -2); doSexP(10); malonRep = 2; doEnd(); }; if (buttonChoice == 7){ outputMainText((("You smile and pat her on the head, telling her that she shouldn't be ashamed of being a cow. There's a lot of races out there that are like other animals, so she's actually a whole new race on her own rather than a mere animal.\r\rHearing your uplifting words, her head rises back up with a small smile, her ears twitching hesitantly. 'M-Mooo?'\r\rYou nod in acceptance.\r\rShe giggles cheerfully, lunging out you with her arms stretched wide and plowing you to the ground under her massive soft tits in a great big hug. She nuzzles your " + boobDesc()) + " chest a little, enjoying your presence, before lifting herself with milky drops spilling from her shirt onto you. Not caring in the slightest, however, she turns around and skips back to the farm, her chest bouncing immensely while her tail flails about happily behind her.\r\r\rAs you come to a stand, however, something drops from your body, having been intentionally left behind during her attack..."), true); stats(0, 1, 0, 2); doSexP(25); malonRep = 3; itemAdd(215); doEnd(); }; }; }; }; }; if (buttonChoice == 7){ outputMainText("Nodding your head to say it's alright, she pulls her shirt up, exposing her enormous breasts. They rest more comfortably on her knees, with 6-inch long nipples dangling like teats. While one hand works your body, her other reaches around a fleshy mass to grab her own nipple. In a couple seconds, her rhythm quickly matches yours, filling the bucket rapidly.\r\r", true); if ((((milkEngorgementLevel > 0)) && ((udderEngorgementLevel > 0)))){ getMilk = (milkAmount(1) + milkAmount(2)); } else { if (milkEngorgementLevel > 0){ getMilk = milkAmount(1); } else { if (udderEngorgementLevel > 0){ getMilk = milkAmount(2); }; }; }; if (getMilk <= 4000){ outputMainText("After filling up two buckets of milk, most of which was Malon's, she pushes them off to the side with a clap.", true); } else { if (getMilk <= 18000){ outputMainText("After filling up few buckets of milk, most of which was yours, Malon pushes them off to the side with a sigh.", true); } else { if (getMilk <= 35500){ outputMainText("After filling up several buckets of milk, far surpassing Malon's amount, she pushes them off to the side with a tired sigh, stretching her adept fingers.", true); } else { if (getMilk > 35500){ outputMainText("After a while, Malon begins to panic. 'Umm... I-I seem to have run out of buckets!' She sloshes the last one from the stack to the side as you still spill with milk. 'I-I'm so sorry! I didn't know it was that bad for you. Here!'\r\rShe takes off her shawl, holding it to your mammaries and waiting for the flow to come to a halt. A few minutes pass before she can remove it, your lactation having ceased and her hands covered in the white stuff. 'Whew... That was close.'\r\rShe wrings her shawl out in a bucket that has yet to overflow before slinging it around her neck again.", true); }; }; }; }; outputMainText(((" 'There, all done!' She gently pats your " + boobDesc()) + " breasts"), false); if (udders == true){ outputMainText(((" and your " + udderDesc()) + " milky bag."), false); }; outputMainText("\r\r'I enjoyed this little milking session between us 'cows'. I hope to do it again with you some time!' She smiles as she pulls her shirt back down, lifting her massive tits a few time to get them to settle within the shirt without her large nipples being so obvious. With a wink, she leans forward, giving you a great view of her deep cleavage as she kisses you on your forehead. Then she takes your hand once more, leading your back out of the farmhouse, saying she can take care of the buckets herself.\r\rWith a wave, you say goodbye and head back to Softlik.", false); hrs = 3; doLust(5); doSexP(2); stats(0, 1, 1, 1); doEnd(); }; }; }; } else { outputMainText("You shake your head, not accepting her assistance. She gives you a soft smile, not offended by the choice. However, as her own shirt begins to blotch, white liquid spilling out and dribbling onto her apron and ground, she blushes a little as she has now found a new reason for her excuse. She pulls her shawl down to cover her huge chest, turning away and scampering off into the main house to take care of business, leaving you to head back to Softlik.", true); hrs = 1; doEnd(); }; }; } else { if ((((malonRep == 3)) && ((((milkEngorgementLevel > 0)) || ((udderEngorgementLevel > 0)))))){ outputMainText((("Malon is working outside as you approach the farm once again. She spots the blotches in your " + clothesTop()) + " and shouts to the other workers that she's got some business she needs to take care of. The others roll their eyes, well used to the excuse thanks to her 'condition'. Nevertheless, she smiles as she heads towards you.\r\r'Need some help?' She winks and sticks out her tongue as she looks down at your moistness."), true); buttonConfirm(); doListen = function ():void{ if (buttonChoice == 6){ outputMainText("She nods with a soft smile, taking you by the hand. Leading you into the main farmhouse, she's quick to look around corners and check hallways, as if she were smuggling you into the building. Eventually, she brings you upstairs to a bedroom.\r\rIn the center of the room sits a good-sized bed, with downy blankets and soft matress. However, the sheets seem to be coated with some sort of wax, making them shiny and most likely waterproof. In a corner beside the bed stands a stack of several buckets, all clean and ready to be used. Malon leads you towards her bed, motioning for you to sit.\r\r'Just relax and I'll take care of it for you.' She speaks sweetly.", true); doNext(); doListen = function ():void{ outputMainText((("\r\rYou sit down upon the soft bed, sinking in slightly from the extra cushioning. She then grabs a bucket from the stack and pulls a short stool over to your knees.\r\r'Your " + clothesTop()) + ", please.' She motions to it being in the way."), true); if (ment > lib){ outputMainText((((("\r\rWith a heavy blush in your cheeks, you nod back, pulling your " + clothesTop()) + " ") + pullUD(1)) + ", slowly exposing your "), false); } else { if (ment > (lib - 10)){ outputMainText((((("\r\rWith a slight blush in your cheeks, you nod back, pulling your " + clothesTop()) + " ") + pullUD(1)) + ", exposing your "), false); } else { outputMainText((((("\r\rWith a quick nod and no hesitation, you pull " + pullUD(1)) + " your ") + clothesTop()) + ", exposing your "), false); }; }; if ((((((milkEngorgementLevel > 0)) && ((udderEngorgementLevel > 0)))) && ((udders == true)))){ outputMainText((((boobDesc() + " leaky breasts and letting your ") + udderDesc()) + " udder spill into your lap."), false); } else { if (milkEngorgementLevel > 0){ outputMainText((boobDesc() + " leaky breasts."), false); } else { if ((((udderEngorgementLevel > 0)) && ((udders == true)))){ outputMainText((udderDesc() + " udder, your teats dripping into your lap."), false); }; }; }; outputMainText(" Malon then slips her hands into her cleavage, quickly warming her hands, before reaching out to your ", false); if (milkEngorgementLevel > 0){ outputMainText((nipDesc() + " nipples"), false); } else { if ((((udderEngorgementLevel > 0)) && ((udders == true)))){ outputMainText((teatDesc() + " teats"), false); }; }; outputMainText(" and gently pinches them within her grasp. Expertly, she bends you forward slightly and aims towards the bucket. Within just a few tugs, you're already squirting milk into the bucket, the pleasant feeling of warmth overcoming you and intensified by her caring massage.\r\rThe room quickly fills with the sound of your squirts hitting the metallic bucket, in a gentle rhythm. She begins to hum a tune (that, for some reason, you'd think horses would love), when redness tinges her cheeks. 'Oh-Oh my...'\r\rHer shirt blotches quickly, her own milk beginning to drip into the bucket with yours. 'Uh-umm... I think doing this made my breasts think it's that time... Y-You don't mind, do you?' She plucks at her shirt to indicate what she means.", false); viewButtonOutline(0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0); viewButtonText(0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0); buttonWrite(5, "Help her"); buttonWrite(7, "Let her"); doListen = function ():void{ var getMilk:int; if (buttonChoice == 5){ if ((((milkEngorgementLevel > 0)) && ((udderEngorgementLevel > 0)))){ getMilk = (milkAmount(1) + milkAmount(2)); } else { if (milkEngorgementLevel > 0){ getMilk = milkAmount(1); } else { if (udderEngorgementLevel > 0){ getMilk = milkAmount(2); }; }; }; nipplePlay = (nipplePlay + 12); if (udders == true){ udderPlay = (udderPlay + 12); }; outputMainText("You shake your head, telling her it's not alright.\r\rA bit defeated, the redness in her cheeks intensifies as she attempts to continue milking you while she drips away. However, you tell her to stop with that as well.\r\rHer eyes brightening, she quickly realizes your intention as you reach out for her shirt and pull it up. When your hands gently caress her 6-inch long nipples, aiming them towards the bucket and squirting out some of her own milk, the blush in her face recedes as a soft smile grows on her face, cheerfully accepting your efforts.\r\rFacing each other, with your hands on each other's milky bits, the two of you tug and pull until each other sprays into the bucket with a gasp. More and more milk spills from you both, though the moans echoing between you two would suggest something more as they rise in volume. Until, eventually, Malon's tits gush into the bucket as her body quivers and her mouth begins to yawn wide. With some slight hestitation, she lets out a soft 'M-Mooo!'. Then, as you give her breasts a strong, sensual squeeze, her mouth yawns wider as her eyes go wide, completely ignoring her inhibitions.\r\r'MOOOOOOOOO!'", true); doNext(); doListen = function ():void{ outputMainText((("She collapses forward onto your " + boobDesc()) + " chest, huffing and heaving. After a few moments, her eyelashes flutter as she turns her head towards you with a glimmer in her eye."), true); viewButtonOutline(0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0); viewButtonText(0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0); buttonWrite(5, "Kiss Her"); buttonWrite(7, "Help Up"); doListen = function ():void{ if (buttonChoice == 5){ outputMainText("Your hand slips behind her head, pulling her face to your own. You press your lips to hers.\r\rWithout any resistance, she returns the favor, hugging your head and kissing you deeply. She pushes you forward, back onto her bed. With fervor, you lift her long purple skirt, revealing her wide, cow-like hips and large, dripping, animalistic nether-region.", true); if (cockTotal > 0){ outputMainText((((((((((("\r\rFlipping back her long red hair, she grinds down your legs and across the bed to pull " + pullUD(2)) + " your ") + clothesBottom()) + ", letting ") + oneYour(1)) + " ") + cockDesc()) + " cock") + plural(1)) + " flop out. She licks and kisses it ravenously, as though something had come over her. She sucks at the tip, slipping her tongue across and through your urethra and savoring the salty taste of your pre."), false); if ((cockSize * cockSizeMod) <= eVagLimit(56)){ outputMainText("\r\rIt doesn't take long before she grows too hungry, crawling back up your body, licking your milk up as she goes. Her own breasts dribble over you until it runs off your sides and soaks into the fluffy blanket. Then, she pulls the blankets open, letting you both slip into the water-resistant sheets, where she slides your cock into her supple folds, devouring its entire length.", false); if (percent() <= 20){ malonRep = 4; malonPreg = 0; } else { malonRep = 5; }; }; if ((cockSize * cockSizeMod) > eVagLimit(56)){ outputMainText((((((("\r\rHowever, she can easily tell that you're far too large for her. So, instead, she crawls back up your body, licking your\tmilk up as she goes, while her own breasts dribble over you until it runs off your sides and soaks into the fluffy blanket. Then, she pulls the blankets open, letting you both slip into the water-resistant sheets, where she straddles your " + cockDesc()) + " erection") + plural(1)) + ", humping her clit along your length") + plural(1)) + "."), false); }; outputMainText("\r\rOver and over, she grinds her wide hips. She leans down to kiss you some more, her tongue driving into your mouth. You thrust back in turn, making her moan into your throat.\r\rQuickly, her body begins to quiver once again, milk spraying about beneath the sheets. She keeps her mouth shut at first, but as you begin to gush with cum, she can no longer resist, allowing her mouth stretch wide.\r\r'MOOOOOOO!'", false); cumAmount(); } else { if ((((cockTotal < 1)) && ((vagTotal > 0)))){ outputMainText((((((((((((("\r\rFlipping back her long red hair, she grinds down your legs and across the bed to pull " + pullUD(2)) + " your ") + clothesBottom()) + ". Seeing your ") + vulvaDesc()) + " slit") + plural(2)) + ", she dives in and begins devouring your clit") + plural(2)) + ".\r\rIt doesn't take long before she grows too hungry, crawling back up your body, licking your milk up as she goes. Her own breasts dribble over you until it runs off your sides and soaks into the fluffy blanket. Then, she pulls the blankets open, letting you both slip into the water-resistant sheets, where presses her supple folds to your own, letting them kiss erotically.\r\rOver and over, she grinds her wide hips. She leans down to kiss you some more, her tongue driving into your mouth. You thrust back in turn, making her moan into your throat.\r\rQuickly, her body begins to quiver once again, milk spraying about beneath the sheets. She keeps her mouth shut at first, but as you thrust your clit") + plural(2)) + " against hers as you come, she can no longer resist, allowing her mouth stretch wide.\r\r'MOOOOOOO!'"), false); malonRep = 5; } else { outputMainText((((("\r\rFlipping back her long red hair, she grinds down your legs and across the bed to pull " + pullUD(2)) + " your ") + clothesBottom()) + ". Seeing your lack of any genitalia, she kisses your crotch softly several times anyways, before crawling back up your body She licks up your milk up as she goes, while her own breasts dribble over you until it runs off your sides and soaks into the fluffy blanket. Then, she pulls the blankets open, letting you both slip into the water-resistant sheets, where she humps your empty crotch.\r\rOver and over, she grinds her wide hips. She leans down to kiss you some more, her tongue driving into your mouth. You thrust back in turn, making her moan into your throat.\r\rQuickly, her body begins to quiver once again, milk spraying about beneath the sheets. So hot is her body that you can feel yourself climax as well! She keeps her mouth shut at first, but as you thrust back with the phantom orgasm, she can no longer resist, allowing her mouth stretch wide.\r\r'MOOOOOOO!'"), false); malonRep = 5; }; }; outputMainText("\r\r\rThe two of you soon pass out beneath the blankets, trapped within the sea of milk and sensual fluids...", false); doLust((-(sen) * 2)); hrs = 9; exhaustion = 0; doNext(); doListen = function ():void{ outputMainText((("Many hours later, you awaken to gentle kissing from your bovine lover. You open your eyes to see Malon's face, a soft smile greeting you and a happy glimmer in her eyes.\r\r'Thank you so much~' She whispers before kissing you once more.\r\rAfter some cuddling, she eventually needs to get back to work. She hugs you again and tells you that she'd love for you to come back any time you can. You hug her back, giving her a sweet goodbye as you squeeze her plush tush, her tail jerking excitedly as she giggles. With another kiss, you head back to Softlik, your " + skinDesc()) + " nice and soft from the extended milk bath."), true); stats(1, 2, 2, 4); doSexP(20); doEnd(); }; }; if (buttonChoice == 7){ outputMainText("You help her back up onto her stool, the last of both of your milk emptying into the final bucket. With a big sigh, she smiles.\r\r'W-Well, I suppose I should get this cleaned up. Thanks for helping me!'\r\rShe leans forward, giving you a great view of her deep cleavage as she kisses you on the forehead. Then she pulls her shirt back up and takes your hand once more, leading your back out of the farmhouse, saying she can take care of the buckets herself.\r\rWith a hug, you say goodbye and head back to Softlik.", true); stats(1, 1, 0, 2); doSexP(2); doEnd(); }; }; }; }; if (buttonChoice == 7){ outputMainText("Nodding your head to say it's alright, she pulls her shirt up, exposing her enormous breasts. They rest more comfortably on her knees, with 6-inch long nipples dangling like teats. While one hand works your body, her other reaches around a fleshy mass to grab her own nipple. In a couple seconds, her rhythm quickly matches yours, filling the bucket rapidly.\r\r", true); if ((((milkEngorgementLevel > 0)) && ((udderEngorgementLevel > 0)))){ getMilk = (milkAmount(1) + milkAmount(2)); } else { if (milkEngorgementLevel > 0){ getMilk = milkAmount(1); } else { if (udderEngorgementLevel > 0){ getMilk = milkAmount(2); }; }; }; if (getMilk <= 4000){ outputMainText("After filling up two buckets of milk, most of which was Malon's, she pushes them off to the side with a clap.", true); } else { if (getMilk <= 18000){ outputMainText("After filling up few buckets of milk, most of which was yours, Malon pushes them off to the side with a sigh.", true); } else { if (getMilk <= 35500){ outputMainText("After filling up several buckets of milk, far surpassing Malon's amount, she pushes them off to the side with a tired sigh, stretching her adept fingers.", true); } else { if (getMilk > 35500){ outputMainText("After a while, Malon begins to panic. 'Umm... I-I seem to have run out of buckets!' She sloshes the last one from the stack to the side as you still spill with milk. 'I-I'm so sorry! I didn't know it was that bad for you. Here!'\r\rShe takes off her shawl, holding it to your mammaries and waiting for the flow to come to a halt. A few minutes pass before she can remove it, your lactation having ceased and her hands covered in the white stuff. 'Whew... That was close.'\r\rShe wrings her shawl out in a bucket that has yet to overflow before slinging it around her neck again.", true); }; }; }; }; outputMainText(((" 'There, all done!' She gently pats your " + boobDesc()) + " breasts"), false); if (udders == true){ outputMainText(((" and your " + udderDesc()) + " milky bag."), false); }; outputMainText("\r\r'I enjoyed this little milking session between us 'cows'. I hope to do it again with you some time!' She smiles as she pulls her shirt back down, lifting her massive tits a few time to get them to settle within the shirt without her large nipples being so obvious. With a wink, she leans forward, giving you a great view of her deep cleavage as she kisses you on your forehead. Then she takes your hand once more, leading your back out of the farmhouse, saying she can take care of the buckets herself.\r\rWith a wave, you say goodbye and head back to Softlik.", false); hrs = 3; doSexP(2); doLust(5); stats(0, 1, 1, 1); doEnd(); }; }; }; } else { outputMainText("You shake your head, not accepting her assistance. She gives you a soft smile, not offended by the choice. However, as her own shirt begins to blotch, white liquid spilling out and dribbling onto her apron and ground, she blushes a little as she has now found a new reason for her excuse. She pulls her shawl down to cover her huge chest, turning away and scampering off into the main house to take care of business, leaving you to head back to Softlik.", true); hrs = 1; doEnd(); }; }; } else { if ((((malonRep == 4)) || ((malonRep == 5)))){ outputMainText("Malon is working outside as you approach the farm once again", true); if (malonRep == 4){ if ((((malonPreg > 36)) && ((malonPreg <= 72)))){ outputMainText(", an arm slung under her slightly protruding yet obviously pregnant belly", false); }; if ((((malonPreg > 72)) && ((malonPreg <= 144)))){ outputMainText(", her arms hugging her giant belly that nearly pushes past her breasts, easily working despite it", false); }; if ((((malonPreg > 144)) && ((malonPreg <= 216)))){ outputMainText(", her breasts swollen with pregnancy and supported by her enormously pregnant belly, looking to be even larger than she is. You actually wonder how she manages to work with it", false); }; }; if (malonChildren == 1){ outputMainText(", your large-eared and wide-hipped child running around playing, her tail swishing happily through a little white dress just like her mother used to wear, except with a little bulge at the front where her udder jiggles with each step", false); }; if (malonChildren > 1){ outputMainText(((", your " + malonChildren) + " large-eared and wide-hipped children running around playing, their tails swishing happily through little white dresses just like their mother used to wear, except with little bulges at the front where their udders jiggles with each step"), false); }; outputMainText(". The half-bovine woman spots you and her face shines up, turning to come and greet you.\r\r'Hello hun!' Her arms wrap around you with a big hug.", false); if (malonChildren == 1){ outputMainText("\r\rYour child also spots you and runs up with her own hug, shouting 'Daddy!'", false); }; if (malonChildren > 1){ outputMainText("\r\rYour children also spot you and run up with their own hugs, shouting 'Daddy!", false); }; outputMainText("\r\rYou visit for a while and help Malon with a bit of work, earning you some coin. You spend the time chatting and enjoying yourselves, but eventually Malon gives you a wink.\r\r'Would you like to do something?'", false); doCoin(Math.floor((percent() / 20))); viewButtonOutline(0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0); viewButtonText(0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0); if ((((lactation < 1)) && ((udderLactation < 1)))){ Choice5.visible = false; }; buttonWrite(5, "Milk"); buttonWrite(7, "Sex"); doListen = function ():void{ if (buttonChoice == 5){ outputMainText("Poking her nipple while you wink back, Malon shouts to the other workers that she's got some business she needs to take care of. The others roll their eyes, well used to the excuse thanks to her 'condition', but don't give her any other guff as she takes you into an empty barn, where she's since become comfortable indulging in her bovine assets.\r\rYou both pull over some buckets and sit down in rather comfortable chairs, removing your tops. Humming the same tune, you begin to work on each other, hugging and gently caressing each other.", true); if (malonChildren == 1){ outputMainText(" Your little girl also joins in, taking a free nipple when she can. She pulls up her white dress and massages her small udder, tugging at the short teats as her hips jerk in wry sensitivity, until little drops start to form and drip down her legs.", false); }; if (malonChildren > 1){ outputMainText(" Your little girls also joins in, taking a free nipples when they can. They pull up their white dresses and massage their small udders, tugging at the short teats as their hips jerk in wry sensitivity, until little drops start to form and drip down their legs. When there aren't enough nipples to suckle from on their parents, they take to suckling from each other, happily downing their meal.", false); }; outputMainText("\r\rWith so much experience with each other, it doesn't take long before sparks start to fly and milk starts to spew, orgasms wracking your bodies. Malon opens her mouth and lets out several long, hearty moos of ecstasy,", false); if (malonChildren == 1){ outputMainText(" the little girl mimicking her mother with her own little 'Moo~',", false); }; if (malonChildren > 1){ outputMainText(" the little girls mimicking their mother with their own little 'Moo~'s,", false); }; outputMainText(" until you're both gasping for air.\r\rThoroughly milked, you spend another hour enjoying the company before eventually giving your goodbye kisses and heading back to Softlik, happy and content.", false); milkAmount(1); milkAmount(2); nipplePlay = (nipplePlay + 15); if (udders == true){ udderPlay = (udderPlay + 15); }; doSexP(5); stats(1, 1, 0, 2); hrs = 4; doEnd(); }; if (buttonChoice == 7){ outputMainText("With a perverse grin, you give Malon a wink of your own and grab her ample tush. She jumps with a giggle and shouts to the other workers that she's got some business she needs to take care of. The others smirk and chuckle to themselves, noticing the extra-excited perkiness in her voice and knowing exactly what 'business' means exactly. She sticks her tongue out at them and pulls you back into the house, eager to get you under the sheets.", true); outputMainText("\r\rQuickly making your way to her room, your clothes littering the hallway along the way, the two of you jump onto the bed. The two of you kiss again and again, until she knocks you onto your back.\r\rWith fervor, you lift her long purple skirt, revealing her wide, cow-like hips and large, dripping, animalistic nether-region.", true); if (cockTotal > 0){ outputMainText((((((((((("\r\rFlipping back her long red hair, she grinds down your legs and across the bed to pull " + pullUD(2)) + " your ") + clothesBottom()) + ", letting ") + oneYour(1)) + " ") + cockDesc()) + " cock") + plural(1)) + " flop out. She licks and kisses it ravenously, as though something had come over her. She sucks at the tip, slipping her tongue across and through your urethra and savoring the salty taste of your pre."), false); if ((cockSize * cockSizeMod) <= eVagLimit(56)){ outputMainText((("\r\rIt doesn't take long before she grows too hungry and crawls back up your body, dragging across your erection" + plural(1)) + ". Her breasts dribble over you until it runs off your sides and soaks into the fluffy blanket. Then, she pulls the blankets open, letting you both slip into the water-resistant sheets, where she slides your cock into her supple folds, devouring its entire length."), false); if ((((percent() <= 20)) && ((malonRep == 5)))){ malonRep = 4; malonPreg = 0; }; }; if ((cockSize * cockSizeMod) > eVagLimit(56)){ outputMainText((((((("\r\rHowever, she can easily tell that you're far too large for her. So, instead, she crawls back up your body, licking you as she goes, while her own breasts dribble over you until it runs off your sides and soaks into the fluffy blanket. Then, she pulls the blankets open, letting you both slip into the water-resistant sheets, where she straddles your " + cockDesc()) + " erection") + plural(1)) + ", humping her clit along your length") + plural(1)) + "."), false); }; if (malonRep == 4){ if ((((malonPreg > 36)) && ((malonPreg <= 72)))){ outputMainText("\r\rYou both rub her slightly protruding belly as you kiss, delighting in the feeling of new life growing within her. As you rub against each other, you take precautions to protect the womb, but it doesn't prevent the room from getting hot...", false); }; if ((((malonPreg > 72)) && ((malonPreg <= 144)))){ outputMainText("\r\rYou both hug and rub her large belly, her breasts laying atop and just barely hanging past. Her large rump rises in the air, her tail dancing above, as she tries to bend around her swollen womb and kiss you again and again. One of your hands grabs her ass trying to push her back down against you, while the other roves over the taut skin, keen to protect and caress it.", false); }; if ((((malonPreg > 144)) && ((malonPreg <= 216)))){ outputMainText("\r\rHer belly is enormous, filling the gap between the two of you and protruding further than her pregnancy-swollen tits, milk already dribbling down the taut skin. She grinds down hard against you, the large girth making her all the hornier. So horny, in fact, that she rolls her giant belly against yours, just to lean in to give you a kiss. Her ass swings in the air, swaying erotically while her tail dances in rhythm. Both of your hands are busy keeping her giant womb balanced against you, stroking the sensitive skin until you can feel her arousal splash down from her hind-qaurters and splatter across your thighs. She roll back to satiate her engorged cunt, letting her feminine lubricant slip beneath her belly, allowing it to slide erotically across you as well.", false); }; }; if (malonChildren == 1){ outputMainText("\r\rAll giggly and just as naked as you are, your little girl jumps into the bed with you, rubbing her small udder and tugging the short teats until her own milk is flowing. She suckles from the two of you when you two give her the chance, trying to get a nice meal in. However, your actions are so vulgar that she begins to slip her fingers between her own legs and fondle her small breasts, gasping softly as she tries to bring herself to a premature orgasm.", false); }; if (malonChildren > 1){ outputMainText("\r\rAll giggly and just as naked as you are, your little girls jump into the bed with you, rubbing their small udders and tugging at each others short teats until their own milk begins to flow. They suckle from the two of you when you two give them the chance, trying to get a nice meal in, and suckle from each other whenever you don't. However, your actions are so vulgar that they begin to slip their fingers between their own legs and fondle their small breasts, gasping softly as they try to bring themselves to premature orgasms, even going so far to even lick each others developing cunnies in hopes for a greater chance of success.", false); }; outputMainText("\r\rOver and over, Malon grinds her wide hips. She leans down to kiss you some more, her tongue driving into your mouth. You thrust back in turn, making her moan into your throat.\r\rQuickly, her body begins to quiver once again, milk spraying about beneath the sheets, drenching you all. Her mouth quickly stretches wide, the sound echoing around the room. \r\r'MOOOOOOO!'", false); if (malonChildren == 1){ outputMainText("\r\rYour child does the same, coming to the small peak of her own pleasuring with a weaker, cute encore of 'Moooo~!'", false); }; if (malonChildren > 1){ outputMainText("\r\rYour children do the same, coming to the small peaks of their own pleasuring with weaker, cute encores of 'Moooo~!'", false); }; cumAmount(); } else { if ((((cockTotal < 1)) && ((vagTotal > 0)))){ outputMainText((((((((((("\r\rFlipping back her long red hair, she grinds down your legs and across the bed to pull " + pullUD(2)) + " your ") + clothesBottom()) + ". Seeing your ") + vulvaDesc()) + " slit") + plural(2)) + ", she dives in and begins devouring your clit") + plural(2)) + ".\r\rIt doesn't take long before she grows too hungry, crawling back up your body, licking your milk up as she goes. Her own breasts dribble over you until it runs off your sides and soaks into the fluffy blanket. Then, she pulls the blankets open, letting you both slip into the water-resistant sheets, where she presses her supple folds to your own, letting them kiss erotically."), false); if (malonChildren == 1){ outputMainText("\r\rAll giggly and just as naked as you are, your little girl jumps into the bed with you, rubbing her small udder and tugging the short teats until her own milk is flowing. She suckles from the two of you when you two give her the chance, trying to get a nice meal in. However, your actions are so vulgar that she begins to slip her fingers between her own legs and fondle her small breasts, gasping softly as she tries to bring herself to a premature orgasm.", false); }; if (malonChildren > 1){ outputMainText("\r\rAll giggly and just as naked as you are, your little girls jump into the bed with you, rubbing their small udders and tugging at each others short teats until their own milk begins to flow. They suckle from the two of you when you two give them the chance, trying to get a nice meal in, and suckle from each other whenever you don't. However, your actions are so vulgar that they begin to slip their fingers between their own legs and fondle their small breasts, gasping softly as they try to bring themselves to premature orgasms, even going so far to even lick each others developing cunnies in hopes for a greater chance of success.", false); }; if (malonRep == 4){ if ((((malonPreg > 36)) && ((malonPreg <= 72)))){ outputMainText("\r\rYou both rub her slightly protruding belly as you kiss, delighting in the feeling of new life growing within her. As you rub against each other, you take precautions to protect the womb, but it doesn't prevent the room from getting hot...", false); }; if ((((malonPreg > 72)) && ((malonPreg <= 144)))){ outputMainText("\r\rYou both hug and rub her large belly, her breasts laying atop and just barely hanging past. Her large rump rises in the air, her tail dancing above, as she tries to bend around her swollen womb and kiss you again and again. One of your hands grabs her ass trying to push her back down against you, while the other roves over the taut skin, keen to protect and caress it.", false); }; if ((((malonPreg > 144)) && ((malonPreg <= 216)))){ outputMainText("\r\rHer belly is enormous, filling the gap between the two of you and protruding further than her pregnancy-swollen tits, milk already dribbling down the taut skin. She grinds down hard against you, the large girth making her all the hornier. So horny, in fact, that she rolls her giant belly against yours, just to lean in to give you a kiss. Her ass swings in the air, swaying erotically while her tail dances in rhythm. Both of your hands are busy keeping her giant womb balanced against you, stroking the sensitive skin until you can feel her arousal splash down from her hind-qaurters and splatter across your thighs. She roll back to satiate her engorged cunt, letting her feminine lubricant slip beneath her belly, allowing it to slide erotically across you as well.", false); }; }; outputMainText((("\r\rOver and over, she grinds her wide hips. She leans down to kiss you some more, her tongue driving into your mouth. You thrust back in turn, making her moan into your throat.\r\rQuickly, her body begins to quiver once again, milk spraying about beneath the sheets. She keeps her mouth shut at first, but as you thrust your clit" + plural(2)) + " against hers as you come, she can no longer resist, allowing her mouth stretch wide.\r\r'MOOOOOOO!'"), false); if (malonChildren == 1){ outputMainText("\r\rYour child does the same, coming to the small peak of her own pleasuring with a weaker, cute encore of 'Moooo~!'", false); }; if (malonChildren > 1){ outputMainText("\r\rYour children do the same, coming to the small peaks of their own pleasuring with weaker, cute encores of 'Moooo~!'", false); }; } else { outputMainText((((("\r\rFlipping back her long red hair, she grinds down your legs and across the bed to pull " + pullUD(2)) + " your ") + clothesBottom()) + ". Seeing your lack of any genitalia, she kisses your crotch softly several times anyways, before crawling back up your body She licks up your milk up as she goes, while her own breasts dribble over you until it runs off your sides and soaks into the fluffy blanket. Then, she pulls the blankets open, letting you both slip into the water-resistant sheets, where she humps your empty crotch."), false); if (malonChildren == 1){ outputMainText("\r\rAll giggly and just as naked as you are, your little girl jumps into the bed with you, rubbing her small udder and tugging the short teats until her own milk is flowing. She suckles from the two of you when you two give her the chance, trying to get a nice meal in. However, your actions are so vulgar that she begins to slip her fingers between her own legs and fondle her small breasts, gasping softly as she tries to bring herself to a premature orgasm.", false); }; if (malonChildren > 1){ outputMainText("\r\rAll giggly and just as naked as you are, your little girls jump into the bed with you, rubbing their small udders and tugging at each others short teats until their own milk begins to flow. They suckle from the two of you when you two give them the chance, trying to get a nice meal in, and suckle from each other whenever you don't. However, your actions are so vulgar that they begin to slip their fingers between their own legs and fondle their small breasts, gasping softly as they try to bring themselves to premature orgasms, even going so far to even lick each others developing cunnies in hopes for a greater chance of success.", false); }; if (malonRep == 4){ if ((((malonPreg > 36)) && ((malonPreg <= 72)))){ outputMainText("\r\rYou both rub her slightly protruding belly as you kiss, delighting in the feeling of new life growing within her. As you rub against each other, you take precautions to protect the womb, but it doesn't prevent the room from getting hot...", false); }; if ((((malonPreg > 72)) && ((malonPreg <= 144)))){ outputMainText("\r\rYou both hug and rub her large belly, her breasts laying atop and just barely hanging past. Her large rump rises in the air, her tail dancing above, as she tries to bend around her swollen womb and kiss you again and again. One of your hands grabs her ass trying to push her back down against you, while the other roves over the taut skin, keen to protect and caress it.", false); }; if ((((malonPreg > 144)) && ((malonPreg <= 216)))){ outputMainText("\r\rHer belly is enormous, filling the gap between the two of you and protruding further than her pregnancy-swollen tits, milk already dribbling down the taut skin. She grinds down hard against you, the large girth making her all the hornier. So horny, in fact, that she rolls her giant belly against yours, just to lean in to give you a kiss. Her ass swings in the air, swaying erotically while her tail dances in rhythm. Both of your hands are busy keeping her giant womb balanced against you, stroking the sensitive skin until you can feel her arousal splash down from her hind-qaurters and splatter across your thighs. She roll back to satiate her engorged cunt, letting her feminine lubricant slip beneath her belly, allowing it to slide erotically across you as well.", false); }; }; outputMainText("\r\rOver and over, she grinds her wide hips. She leans down to kiss you some more, her tongue driving into your mouth. You thrust back in turn, making her moan into your throat.\r\rQuickly, her body begins to quiver once again, milk spraying about beneath the sheets. So hot is her body that you can feel yourself climax as well! She keeps her mouth shut at first, but as you thrust back with the phantom orgasm, she can no longer resist, allowing her mouth stretch wide.\r\r'MOOOOOOO!'", false); if (malonChildren == 1){ outputMainText("\r\rYour child does the same, coming to the small peak of her own pleasuring with a weaker, cute encore of 'Moooo~!'", false); }; if (malonChildren > 1){ outputMainText("\r\rYour children do the same, coming to the small peaks of their own pleasuring with weaker, cute encores of 'Moooo~!'", false); }; }; }; outputMainText("\r\r\rYou soon pass out beneath the blankets, trapped within the sea of milk and sensual fluids...", false); doLust((-(sen) * 2)); hrs = 9; exhaustion = 0; doNext(); doListen = function ():void{ outputMainText((("Many hours later, you awaken to gentle kissing from your bovine lover. You open your eyes to see Malon's face, a soft smile greeting you and a happy glimmer in her eyes.\r\r'Thank you so much~' She whispers before kissing you once more.\r\rAfter some cuddling, she eventually needs to get back to work. She hugs you again and tells you that she'd love for you to come back any time you can. You hug her back, giving her a sweet goodbye as you squeeze her plush tush, her tail jerking excitedly as she giggles. With a round of kisses and hugs, you head back to Softlik, your " + skinDesc()) + " nice and soft from the extended milk bath"), true); if (malonChildren == 1){ outputMainText(", your little girl growing up with probably the fairest skin of anyone in Nimin", false); }; if (malonChildren > 1){ outputMainText(", your little girls growing up with probably the fairest skins of anyone in Nimin", false); }; outputMainText(".", false); doSexP(5); stats(0, 1, 2, 4); doEnd(); }; }; }; } else { if (malonRep == 2){ outputMainText("You spot Malon out of the corner of your eye. She spots you and waves with a slight smile. However, she quickly stops as her shirt begins to blotch, white liquid spilling out and dribbling onto her apron and ground. She blushes intently and pulls her shawl down to cover her huge chest, turning away and running off, her tail pushing her skirt between her legs and outlining her ample bum.\r\rNot wanting to be so much like a cow, she avoids you in hopes of taking care of the situation herself. With a shrug, you head back to Softlik.", true); hrs = 1; doEnd(); } else { outputMainText("You spot Malon out of the corner of your eye. She spots you and waves with a slight smile. However, she quickly stops as her shirt begins to blotch, white liquid spilling out and dribbling onto her apron and ground. She blushes intently and pulls her shawl down to cover her huge chest, turning away and running off, her tail pushing her skirt between her legs and outlining her ample bum.\r\rA bit distracted with her 'issues', you leave her be and head back to Softlik.", true); hrs = 1; doEnd(); }; }; }; }; } else { if ((((malonRep == 0)) && ((((((lactation > 3)) && ((milkEngorgementLevel > 0)))) || ((((udderLactation > 3)) && ((udderEngorgementLevel > 0)))))))){ outputMainText((("Heading towards the farm, you spot a strange farm-hand. A young woman, with an exceptionally well-endowed figure... Beautiful, with long, flowing red hair, she wears a yellow shirt and long purple skirt with a brown apron around her waist and yellow shawl around her shoulders. However, the shawl seems fairly wet and she's careful to drape its ends over breasts larger than watermelons, trying to hide the large blotches on her shirt with it and keeping it at the ready to use at any moment. Her ears are also quite long, hanging perpendicular from her head, nearly 5 inches, and droop a little. Behind her you see a long, narrow tail, tipped with a tuft of long hairs, swish about her calves with each step.\r\rAs you watch her, she seems to avoid most of the other workers. It doesn't take long before she spots you eyeing her. At first redness tinges her cheeks, but then her eyes spot the large blotches on your " + clothesTop()) + " with a curious look. Checking to make sure nobody else is around, she heads towards you..."), true); doNext(); doListen = function ():void{ outputMainText("With a gentle voice, she speaks,\r\r'Oh my, w-would you like some help with that?' She nods down to your milkiness. 'I, umm... Kinda know the feeling and can help you out if you would like.'\r\r\rDo you accept her offer?", true); buttonConfirm(); doListen = function ():void{ if (buttonChoice == 6){ outputMainText("She nods with a soft smile, taking you by the hand. Leading you into the main farmhouse, she's quick to look around corners and check hallways, as if she were smuggling you into the building. Eventually, she brings you upstairs to a bedroom.\r\rIn the center of the room sits a good-sized bed, with downy blankets and soft matress. However, the sheets seem to be coated with some sort of wax, making them shiny and most likely waterproof. In a corner beside the bed stands a stack of several buckets, all clean and ready to be used. The strange woman leads you towards her bed, motioning for you to sit.\r\r'Just relax and I'll take care of it for you.' She speaks sweetly.", true); doNext(); doListen = function ():void{ outputMainText((("\r\rYou sit down upon the soft bed, sinking in slightly from the extra cushioning. She then grabs a bucket from the stack and pulls a short stool over to your knees.\r\r'Your " + clothesTop()) + ", please.' She motions to it being in the way."), true); if (ment > lib){ outputMainText((((("\r\rWith a heavy blush in your cheeks, you nod back, pulling your " + clothesTop()) + " ") + pullUD(1)) + ", slowly exposing your "), false); } else { if (ment > (lib - 10)){ outputMainText((((("\r\rWith a slight blush in your cheeks, you nod back, pulling your " + clothesTop()) + " ") + pullUD(1)) + ", exposing your "), false); } else { outputMainText((((("\r\rWith a quick nod and no hesitation, you pull " + pullUD(1)) + " your ") + clothesTop()) + ", exposing your "), false); }; }; if ((((((milkEngorgementLevel > 0)) && ((udderEngorgementLevel > 0)))) && ((udders == true)))){ outputMainText((((boobDesc() + " leaky breasts and letting your ") + udderDesc()) + " udder spill into your lap."), false); } else { if (milkEngorgementLevel > 0){ outputMainText((boobDesc() + " leaky breasts."), false); } else { if ((((udderEngorgementLevel > 0)) && ((udders == true)))){ outputMainText((udderDesc() + " udder, your teats dripping into your lap."), false); }; }; }; outputMainText(" The woman then slips her hands into her cleavage, quickly warming her hands, before reaching out to your ", false); if (milkEngorgementLevel > 0){ outputMainText((nipDesc() + " nipples"), false); } else { if ((((udderEngorgementLevel > 0)) && ((udders == true)))){ outputMainText((teatDesc() + " teats"), false); }; }; outputMainText(" and gently pinches them within her grasp. Expertly, she bends you forward slightly and aims towards the bucket. Within just a few tugs, you're already squirting milk into the bucket, the pleasant feeling of warmth overcoming you and intensified by her caring massage.\r\rAs the room fills with the sound of your squirts hitting the metallic bucket, the strange woman finally introduces herself. 'I'm Malon, it's nice to meet you.' She giggles as she shakes your milky flesh with a hand in greeting. 'Usually I'm the one with the milky problem around here.' She motions down to her shirt. The redness tinges her cheeks. 'Oh-Oh my...' Her shirt blotches quickly, her own milk beginning to drip into the bucket with yours. 'Uh-umm... I think doing this made my breasts think it's that time... Y-You don't mind, do you?' She plucks at her shirt to indicate what she means.\r\rAs you nod your head to say it's alright, she pulls her shirt up, exposing her enormous breasts. They rest more comfortably on her knees, with 6-inch long nipples dangling like teats. While one hand works your body, her other reaches around a fleshy mass to grab her own nipple. In a couple seconds, her rhythm quickly matches yours, filling the bucket rapidly.", false); doNext(); doListen = function ():void{ outputMainText("She continues to speak, trying to distract herself from her shyness and ignore the redness in her face as she milks the both of you.\r\r'When I was little, I loved the animals, and I still do. However, in my naive youth, I attempted to get to know some of the cows better... by taking one of those DairE Pills. At first I was ecstatic. Imagine a little girl, in a long white dress, with larger than average nipples that poked at the fabric, dripping with milk, just like the cows! I even had the same shawl back then,' she tugs the yellow shawl around her shoulders,' and I used to soak it through after an hour of sitting with the cows, playing with my nipples and mooing to be just like them.'\r\rShe sighs.\r\r'Having such success, I kept taking the pills. And taking them. And taking them... Before I was even 15 years old, I had a chest larger than any woman's in Softlik and could make more milk than most cows on the farm. Added to the fact that I had these ears and this tail,' the thing swishes behind her as a big gush of milk shoots from her nipples as she shudder slightly. 'E-Excuse me.. ' She blushes instensely, waiting for a moment as her climax passes. 'W-Well, let's just say I became a little self-aware. I still kept up with the milkings to keep the engorgement away and, well, I'm sure you can guess the rest.'", true); doNext(); doListen = function ():void{ var getMilk:int; if ((((milkEngorgementLevel > 0)) && ((udderEngorgementLevel > 0)))){ getMilk = (milkAmount(1) + milkAmount(2)); } else { if (milkEngorgementLevel > 0){ getMilk = milkAmount(1); } else { if (udderEngorgementLevel > 0){ getMilk = milkAmount(2); }; }; }; if (getMilk <= 4000){ outputMainText("After filling up two buckets of milk, most of which was Malon's, she pushes them off to the side with a clap.", true); } else { if (getMilk <= 18000){ outputMainText("After filling up few buckets of milk, most of which was yours, Malon pushes them off to the side with a sigh.", true); } else { if (getMilk <= 35500){ outputMainText("After filling up several buckets of milk, far surpassing Malon's amount, she pushes them off to the side with a tired sigh, stretching her adept fingers.", true); } else { if (getMilk > 35500){ outputMainText("After a while, Malon begins to panic. 'Umm... I-I seem to have run out of buckets!' She sloshes the last one from the stack to the side as you still spill with milk. 'I-I'm so sorry! I didn't know it was that bad for you. Here!'\r\rShe takes off her shawl, holding it to your mammaries and waiting for the flow to come to a halt. A few minutes pass before she can remove it, your lactation having ceased and her hands covered in the white stuff. 'Whew... That was close.'\r\rShe wrings her shawl out in a bucket that has yet to overflow before slinging it around her neck again.", true); }; }; }; }; outputMainText(" 'There, all done!", false); if (udders == true){ outputMainText(" Although, I probably shouldn't be rambling about my problems. It seems like you've gone far beyond my own troubles.' She gently pats your milky bag. 'Anyways...", false); }; outputMainText(" If you ever have trouble again, come see me and I'll help you out. Otherwise, don't be a stranger.' She pulls her shirt back down, lifting her massive tits a few time to get them to settle within the shirt without her large nipples being so obvious. 'Us 'cows' should stick together.' With a wink, she leans forward, giving you a great view of her deep cleavage as she kisses you on the forehead. Then she takes your hand once more, leading your back out of the farmhouse, saying she can take care of the buckets herself.\r\rWith a wave, you say goodbye and head back to Softlik.", false); hrs = 3; doLust(10); nipplePlay = (nipplePlay + 10); malonRep = 1; if (udders == true){ udderPlay = (udderPlay + 10); }; doSexP(5); stats(0, 2, 2, 1); doEnd(); }; }; }; } else { outputMainText("You shake your head, not accepting her assistance. She gives you a soft smile, not offended by the choice. Her extrovert moment quickly passes, however, as her own shirt begins to blotch more, white liquid spilling out and dribbling onto her apron and ground. She blushes intensely as she pulls her shawl down to cover her huge chest, turning away and running off, her tail pushing her skirt between her legs and outlining her ample bum.\r\rShe disappears into a building. With a shrug, you head back to Softlik.", true); hrs = 1; doEnd(); }; }; }; } else { outputMainText("You spot a farm-hand out of the corner of your eye. A young woman, with an exceptionally well-endowed figure... Beautiful, with long, flowing red hair, she wears a yellow shirt and long purple skirt with a brown apron around her waist and yellow shawl around her shoulders. However, the shawl seems fairly wet and she's careful to drape its ends over breasts larger than watermelons, trying to hide the large blotches on her shirt with it and keeping it at the ready to use at any moment. Her ears are also quite long, hanging perpendicular from her head, nearly 5 inches, and droop a little. Behind her you see a long, narrow tail, tipped with a tuft of long hairs, swish about her calves with each step.\r\rAs you watch her, she seems to avoid most of the other workers. It doesn't take long before she spots you eyeing her. She immediately averts her eyes, redness tinging her cheeks. Her shy moment quickly passes, however, as her shirt begins to blotch more, white liquid spilling out and dribbling onto her apron and ground. Her blush intensifies as she pulls her shawl down to cover her huge chest, turning away and running off, her tail pushing her skirt between her legs and outlining her ample bum.\r\rShe disappears into a building. With a shrug, you head back to Softlik.", true); hrs = 1; doEnd(); }; }; }; } else { outputMainText("You manage to approach the farm without being seen or stopped by a farmer. You find a bottle of milk that has yet to be shipped out with the rest. Pocketing it before being caught, you head back to Softlik.", true); itemAdd(500); hrs = 2; doEnd(); }; }; }; }; } public function hairstyleDescription(ID:int):String{ var tempStr:String; tempStr = ("CLOTHES NAME ERROR " + ID); if (ID == 0){ tempStr = "No hairstyle whatsoever. Choosing this option removes any mention of hair from your appearance description."; }; if (ID == 1){ tempStr = "Wavy hair has subtle curves that make it seem more flowing.\r\rThis hairstyle has additional length options available after purchasing."; }; if (ID == 2){ tempStr = "Pigtails are straight/wavy/curvy hair pulled away from the face and gathered towards the sides of your head, where it is bundled and tied at the base, allowing it to hang freely over your shoulders.\r\rThis hairstyle has additional length options available after purchasing."; }; if (ID == 3){ tempStr = "A Ponytail is straight/wavy/curvy hair pulled away from the face and gathered at the back of your head, where it is bundled and tied at the base, allowing it to hang freely over your back.\r\rThis hairstyle has additional length options available after purchasing."; }; if (ID == 4){ tempStr = "Straight hair has been combed out to be nice and straight.\r\rThis hairstyle has additional length options available after purchasing."; }; if (ID == 5){ tempStr = "A Buzzcut is hair cut quite short, less than a quarter inch from your head."; }; if (ID == 6){ tempStr = "A Mohawk leaves only the hair along the center, from front to back, left, shaving the rest. It's usually a couple inches long."; }; if (ID == 7){ tempStr = "A Bun is straight or wavy hair pulled up into a bun-like shape on top of the back of your head."; }; if (ID == 8){ tempStr = "Curly hair has been treated to make it nice and curly with a bit of spring.\r\rThis hairstyle has additional length options available after purchasing."; }; if (ID == 9){ tempStr = "Braided Pigtails are pigtails that have been braided, keeping the dangling hair in a nice tight formation.\r\rThis hairstyle has additional length options available after purchasing."; }; if (ID == 10){ tempStr = "A Braided Ponytail is a ponytail that has been braided, keeping the dangling hair in a nice tight formation.\r\rThis hairstyle has additional length options available after purchasing."; }; if (ID == 11){ tempStr = "Braided hair involves tying all your hair into many braids, keeping it all in multiple tight formations.\r\rThis hairstyle has additional length options available after purchasing."; }; if (ID == 12){ tempStr = "Spiky hair is hair that has been treated to stand away from your head, defying gravity. Due to limitations, it can only reach a few inches in length."; }; if (ID == 13){ tempStr = "Emo hair is hair that has been treated to sit straight at all times, with bangs often hanging over one eye.\r\rThis hairstyle has additional length options available after purchasing."; }; if (ID == 14){ tempStr = "An Afro is a giant poofball of curly hair. Due to limitations, it only reaches about half a foot from your head."; }; return (tempStr); } public function doDiscard(ID:int):void{ var ID = ID; bc(); viewButtonText(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1); viewButtonOutline(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1); i = 1; while (i < 13) { buttonWrite(i, itemName(itemID(i))); if (stackAmount(i) > 1){ viewAmount(i, true); amountWrite(i, (("" + stackAmount(i)) + "")); }; if (i == 12){ buttonWrite(12, "Return"); }; i++; }; buttonWrite(4, "&#60;&#60;"); buttonWrite(8, ">>"); showPage(true, 1); doListen = function ():void{ var dis:int; if (((((((!((buttonChoice == 0))) && (!((buttonChoice == 4))))) && (!((buttonChoice == 8))))) && (!((buttonChoice == 12))))){ outputMainText((((((((itemDescription(itemID(buttonChoice)) + "\r\r") + itemDescription(ID)) + "\r\rDo you want to replace ") + itemName(itemID(buttonChoice))) + " with ") + itemName(ID)) + "?"), true); if (stackAmount(buttonChoice) > 1){ outputMainText((((("\r\rYou will lose all " + stackAmount(buttonChoice)) + " of ") + itemName(itemID(buttonChoice))) + " if you do."), false); }; dis = buttonChoice; buttonConfirm(); hideAmount(); doListen = function ():void{ if (buttonChoice == 6){ showPage(false, 1); loseItem(dis); itemSlotWrite(dis, 0); stackSlotWrite(dis, -(stackAmount(dis))); hideAmount(); gainItem(ID); }; if (buttonChoice == 7){ hideAmount(); doDiscard(ID); }; }; }; if (buttonChoice == 12){ while (itemGainArray.indexOf(ID) != -1) { itemGainArray.pop(); }; showPage(false, 1); doProcess(); } else { if (buttonChoice == 4){ if (currentItems == 1){ currentItems = 3; } else { if (currentItems == 2){ currentItems = 1; } else { if (currentItems == 3){ currentItems = 2; }; }; }; hideAmount(); showPage(true, 1); doDiscard(ID); } else { if (buttonChoice == 8){ if (currentItems == 1){ currentItems = 2; } else { if (currentItems == 2){ currentItems = 3; } else { if (currentItems == 3){ currentItems = 1; }; }; }; hideAmount(); showPage(true, 1); doDiscard(ID); }; }; }; }; } public function enemyBaseStats():void{ if (enemyID == 101){ setEnemyStats(30, 16, 4, 8, 0, 0, 0, 1, 0, 15, 202); }; if (enemyID == 102){ setEnemyStats(25, 0, 20, 0, 50, 0, 0, 0, 0, 10, 231); }; if (enemyID == 201){ setEnemyStats(45, 22, 16, 13, 11, 30, 1, 2, 0, 20, 203); }; if (enemyID == 301){ setEnemyStats(50, 12, 10, 24, 30, 40, 2, 4, Math.floor((percent() / 10)), 25, 204); }; if (enemyID == 302){ setEnemyStats(60, 28, 9, 18, 14, 30, 1, 4, Math.floor((percent() / 10)), 25, 205); }; if (enemyID == 303){ setEnemyStats(150, 45, 30, 25, 35, 20, 2, 4, 0, 50, 216); }; if (enemyID == 304){ setEnemyStats(55, 35, 30, 35, 45, 10, 1, 4, Math.floor((percent() / 10)), 30, 222); }; if (enemyID == 305){ setEnemyStats(50, 35, 30, 45, 35, 10, 2, 4, Math.floor((percent() / 10)), 30, 222); }; } public function skinDesc():String{ var tempStr:String; tempStr = ("SKIN ERROR " + skinType); if (skinType == 1){ tempStr = "skin"; }; if (skinType == 2){ tempStr = "fur"; }; if (skinType == 3){ tempStr = "scales"; }; return (tempStr); } public function doReturn():void{ checkZero(); if ((((((inBag == true)) && ((lust > 99)))) && ((currentState == 2)))){ doLustForcedMasturbate(); } else { if (inBag == true){ doBag(); } else { if (inShop == true){ doShop(); } else { if (currentState == 1){ doGeneral(); } else { if (currentState == 2){ doBattle(); } else { if (currentState == 3){ doMasturbate(); }; }; }; }; }; }; } public function hairDesc():String{ var tempStr:String; tempStr = ("HAIR DESC ERROR " + hair); if (hair == 1){ tempStr = "wavy hair"; }; if (hair == 2){ tempStr = "hair pulled to the sides of your head in pigtails"; }; if (hair == 3){ tempStr = "hair pulled back into a ponytail"; }; if (hair == 4){ tempStr = "straight hair"; }; if (hair == 5){ tempStr = "really short hair"; }; if (hair == 6){ tempStr = "hair styled up into a mohawk"; }; if (hair == 7){ tempStr = "hair curled up into a bun"; }; if (hair == 8){ tempStr = "curly hair"; }; if (hair == 9){ tempStr = "hair pulled to the sides of your head in braided pigtails"; }; if (hair == 10){ tempStr = "hair pulled back into a braided ponytail"; }; if (hair == 11){ tempStr = "braided hair"; }; if (hair == 12){ tempStr = "spiky hair"; }; if (hair == 13){ tempStr = "straight, stiff hair covering an eye"; }; if (hair == 14){ tempStr = "giant poofball of hair"; }; return (tempStr); } public function hideUpDown():void{ strUp.visible = false; strDown.visible = false; mentaUp.visible = false; mentaDown.visible = false; libUp.visible = false; libDown.visible = false; senDown.visible = false; senUp.visible = false; lustUp.visible = false; lustDown.visible = false; hpUp.visible = false; hpDown.visible = false; } public function doCoin(changes:int):void{ if ((coin + changes) < 0){ coin = 0; changes = 0; }; coin = (coin + changes); doSexP(0); } public function newGameStart(e:MouseEvent):void{ newGameGo(); } public function doGeneral():void{ bc(); currentState = 1; viewButtonText(1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0); viewButtonOutline(1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0); outputMainText((("You are currently in " + regionName(currentZone)) + ". What would you like to do?"), true); Choice1.htmlText = "Bag"; Choice2.htmlText = "Sleep"; Choice3.htmlText = "Masturbate"; Choice4.htmlText = "Stash"; Choice5.htmlText = "Shops"; Choice6.htmlText = "Day-Care"; Choice7.htmlText = "Alchemy"; Choice10.htmlText = "Explore"; Choice11.htmlText = "Prostitute"; if (doWeight()){ Choice10.visible = false; }; if ((((hour > 20)) || ((hour < 7)))){ outputMainText("\r\rAll of the shops are closed at this hour of night.", false); Choice5.visible = false; }; if (levelUP > 0){ Choice8.visible = true; Choice8Outline.visible = true; buttonWrite(8, "Level Up!"); }; if (milkEngorgement >= 500){ viewButtonText(0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0); outputMainText((("\r\rMilk sprays from your chest, shooting through your " + clothesTop()) + " and obscuring your view with a white mist. Pushing your breasts around as you may, you can't seem to get them to settle down as they're so overly engorged that they can't store as much as they're still producing, making it impossible to do anything without drenching not only yourself but all those around you! The production is so excessive that your body will definitely reduce the rate after this.\r\rYou must milk your breasts if you wish to continue."), false); milkEngorgement = (milkEngorgement - 100); lactChange(1, -2); }; if (udderEngorgement >= 500){ viewButtonText(0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0); outputMainText((("\r\rMilk sprays from your belly, shooting through your " + clothesTop()) + " and obscuring your view with a white mist. Adjusting your udder as you may, the teats continue to flail about, gushing with milk, as the fleshy bag is so overly engorged that it can't store as much as it's still producing, making it impossible to do anything without drenching not only yourself but all those around you! The production is so excessive that your body will definitely reduce the rate after this.\r\rYou must milk your udder if you wish to continue."), false); udderEngorgement = (udderEngorgement - 100); lactChange(2, -2); }; if (lust == 100){ viewButtonText(0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0); outputMainText("\r\rYour body quivers and your legs give out from under you as your arousal soaks through your clothes. Your mind seems focused only on one thing: SEX!\r\rYou must masturbate if you wish to continue.", false); } else { if (exhaustion > 44){ outputMainText("\r\rThere's only one thing on your mind right now...", false); viewButtonText(0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); }; }; appearanceText.visible = true; appearanceBox.visible = true; loadGame.visible = true; loadGameOutline.visible = true; saveGame.visible = true; saveGameOutline.visible = true; newGame.visible = true; newGameOutline.visible = true; doListen = function ():void{ if (buttonChoice == 1){ doBag(); }; if (buttonChoice == 2){ doSleep(); }; if (buttonChoice == 3){ doMasturbate(); }; if (buttonChoice == 4){ doStash(); }; if (buttonChoice == 5){ doShops(); }; if (buttonChoice == 6){ doDayCare(); }; if (buttonChoice == 7){ doAlchemy(); }; if (buttonChoice == 8){ doLevelUP(); }; if (buttonChoice == 10){ doExplore(); }; if (buttonChoice == 11){ doProstitute(); }; loadGame.visible = false; loadGameOutline.visible = false; saveGame.visible = false; saveGameOutline.visible = false; newGame.visible = false; newGameOutline.visible = false; appearanceText.visible = false; appearanceBox.visible = false; }; } public function specialRapeWin():void{ if (enemyID == 303){ outputMainText("\r\rThe octopus shudder as her belly quakes, the orgasm having wracked her a little too strongly. She huffs as she begins to crawl back towards the ocean. Just as she touches the water, she lets out a loud groan. Her tentacles quiver and part, exposing her vaginal-beak. The thing yawns wide as a spherical object pushes through.\r\rClear with a solid pink center, the egg falls from her dripping pussy-beak, and into the sand. Barely 4 inches in diameter, it doesn't come close to the size of her belly. She quickly catches her breath, her pink face red with embarrassment, before she pushes herself into the water, a tentacle grabbing the egg and pulling it with her before any more can escape...\r\rHowever, she seems to have left behind a big gob of pink goop.", false); } else { if ((((enemyID == 304)) || ((enemyID == 305)))){ outputMainText((((("\r\rAs the " + enemyName()) + " collapses to the ground, wracked by orgasms and thoroughly distracted by the lewd fun, you find yourself beginning to grow. The effects of the bottle seems to wear off as you return to your normal height. Donning your outfit once again, however, it feels a little loose. It seems as though you're still missing a couple inches in height... On the other hand, however, inspecting the ") + enemyName()) + "'s body, you find something wedged in a rather lewd location."), false); } else { outputMainText((("\r\rThe " + enemyName()) + " collapses to the ground, quivering body wracked by orgasms. Having broken its mental state into a puddle of sex, it no longer wishes to battle."), false); }; }; } public function itemStackMax(ID:int):int{ var tempNum:int; tempNum = 0; if (ID == 1){ tempNum = 1; }; if (ID == 101){ tempNum = 1; }; if (ID == 102){ tempNum = 1; }; if (ID == 103){ tempNum = 15; }; if (ID == 104){ tempNum = 1; }; if (ID == 105){ tempNum = 5; }; if (ID == 106){ tempNum = 1; }; if (ID == 108){ tempNum = 1; }; if (ID == 109){ tempNum = 1; }; if (ID == 110){ tempNum = 5; }; if (ID == 111){ tempNum = 5; }; if (ID == 112){ tempNum = 5; }; if (ID == 113){ tempNum = 5; }; if (ID == 114){ tempNum = 5; }; if (ID == 115){ tempNum = 10; }; if (ID == 116){ tempNum = 1; }; if (ID == 117){ tempNum = 1; }; if (ID == 118){ tempNum = 1; }; if (ID == 119){ tempNum = 1; }; if (ID == 120){ tempNum = 5; }; if (ID == 121){ tempNum = 10; }; if (ID == 122){ tempNum = 10; }; if (ID == 123){ tempNum = 10; }; if (ID == 124){ tempNum = 10; }; if (ID == 125){ tempNum = 10; }; if (ID == 126){ tempNum = 5; }; if (ID == 127){ tempNum = 1; }; if (ID == 200){ tempNum = 1; }; if (ID == 201){ tempNum = 5; }; if (ID == 202){ tempNum = 5; }; if (ID == 203){ tempNum = 15; }; if (ID == 204){ tempNum = 5; }; if (ID == 205){ tempNum = 5; }; if (ID == 206){ tempNum = 10; }; if (ID == 207){ tempNum = 5; }; if (ID == 208){ tempNum = 10; }; if (ID == 209){ tempNum = 15; }; if (ID == 210){ tempNum = 5; }; if (ID == 211){ tempNum = 15; }; if (ID == 212){ tempNum = 10; }; if (ID == 213){ tempNum = 10; }; if (ID == 214){ tempNum = 10; }; if (ID == 215){ tempNum = 1; }; if (ID == 216){ tempNum = 5; }; if (ID == 217){ tempNum = 5; }; if (ID == 218){ tempNum = 10; }; if (ID == 219){ tempNum = 5; }; if (ID == 220){ tempNum = 5; }; if (ID == 221){ tempNum = 10; }; if (ID == 222){ tempNum = 5; }; if (ID == 223){ tempNum = 10; }; if (ID == 224){ tempNum = 10; }; if (ID == 225){ tempNum = 10; }; if (ID == 226){ tempNum = 15; }; if (ID == 227){ tempNum = 10; }; if (ID == 228){ tempNum = 10; }; if (ID == 229){ tempNum = 1; }; if (ID == 230){ tempNum = 5; }; if (ID == 231){ tempNum = 10; }; if (ID == 232){ tempNum = 1; }; if (ID == 233){ tempNum = 1; }; if (ID == 234){ tempNum = 1; }; if (ID == 235){ tempNum = 1; }; if (ID == 236){ tempNum = 1; }; if (ID == 500){ tempNum = 10; }; if (ID == 501){ tempNum = 5; }; if (ID == 502){ tempNum = 1; }; if (ID == 503){ tempNum = 10; }; if (ID == 504){ tempNum = 10; }; if (ID == 505){ tempNum = 5; }; if (ID == 506){ tempNum = 10; }; if (ID == 507){ tempNum = 10; }; if (ID == 508){ tempNum = 25; }; if (ID == 509){ tempNum = 25; }; if (ID == 510){ tempNum = 25; }; if (ID == 511){ tempNum = 25; }; if (ID == 0x0200){ tempNum = 25; }; if (ID == 513){ tempNum = 5; }; if (ID == 0x0202){ tempNum = 5; }; if (ID == 515){ tempNum = 5; }; if (ID == 516){ tempNum = 5; }; if (ID == 517){ tempNum = 5; }; if (ID == 518){ tempNum = 5; }; if (ID == 519){ tempNum = 5; }; if (ID == 520){ tempNum = 5; }; if (ID == 521){ tempNum = 5; }; if (ID == 522){ tempNum = 5; }; if (ID == 523){ tempNum = 15; }; if (ID == 524){ tempNum = 10; }; if (ID == 525){ tempNum = 5; }; if (ID == 526){ tempNum = 1; }; if (ID == 527){ tempNum = 10; }; if (ID == 528){ tempNum = 10; }; if (ID == 529){ tempNum = 5; }; if (ID == 530){ tempNum = 5; }; if (ID == 531){ tempNum = 1; }; if (ID == 532){ tempNum = 5; }; return (tempNum); } public function clothesValue(ID:int):int{ var tempNum:int; tempNum = 0; if (ID == 1){ tempNum = 5; }; if (ID == 2){ tempNum = 5; }; if (ID == 3){ tempNum = 25; }; if (ID == 4){ tempNum = 25; }; if (ID == 5){ tempNum = 45; }; if (ID == 6){ tempNum = 60; }; if (ID == 7){ tempNum = 25; }; if (ID == 8){ tempNum = 25; }; if (ID == 9){ tempNum = 25; }; if (ID == 10){ tempNum = 30; }; if (ID == 11){ tempNum = 40; }; if (ID == 12){ tempNum = 40; }; if (ID == 13){ tempNum = 50; }; if (ID == 14){ tempNum = 35; }; if (ID == 15){ tempNum = 35; }; if (ID == 16){ tempNum = 40; }; if (ID == 17){ tempNum = 55; }; if (ID == 18){ tempNum = 15; }; if (ID == 19){ tempNum = 50; }; if (ID == 20){ tempNum = 35; }; return (tempNum); } public function doeLust(changes:int):void{ if (eGen == 1){ if (((((eLust + changes) > 65)) && ((eLust <= 65)))){ outputMainText((("\r\rThe " + enemyName()) + " smears the pre across its rod, stroking it gently while fighting, majorly distracted."), false); } else { if (((((eLust + changes) > 40)) && ((eLust <= 40)))){ outputMainText((("\r\rThe " + enemyName()) + " squirms, pre dripping from the tip of its stiffness."), false); } else { if (((((eLust + changes) > 20)) && ((eLust <= 20)))){ outputMainText((("\r\rThe " + enemyName()) + " shifts a little, an erection clearly beginning to grow."), false); }; }; }; }; if (eGen == 2){ if (((((eLust + changes) > 65)) && ((eLust <= 65)))){ outputMainText((("\r\rThe " + enemyName()) + " smears the honey all over as it rubs itself constantly while fighting, majorly distracted."), false); } else { if (((((eLust + changes) > 40)) && ((eLust <= 40)))){ outputMainText((("\r\rThe " + enemyName()) + " squirms, honey dribbling from its naughty hole."), false); } else { if (((((eLust + changes) > 20)) && ((eLust <= 20)))){ outputMainText((("\r\rThe " + enemyName()) + " shifts a little, caressing its pussy here and there when it can."), false); }; }; }; }; if (eGen == 3){ if (((((eLust + changes) > 65)) && ((eLust <= 65)))){ outputMainText((("\r\rThe " + enemyName()) + " smears the lubricant all over as it rubs and strokes itself constantly while fighting, majorly distracted."), false); } else { if (((((eLust + changes) > 40)) && ((eLust <= 40)))){ outputMainText((("\r\rThe " + enemyName()) + " squirms, honey dribbling and pre dripping from its aroused genitals."), false); } else { if (((((eLust + changes) > 20)) && ((eLust <= 20)))){ outputMainText((("\r\rThe " + enemyName()) + " shifts a little, caressing its pussy here and there when it can while its erection clearly grows."), false); }; }; }; }; eLust = (eLust + changes); } public function vagChange(sizeChange:int, totalChange:int):void{ if (((((((((vagSize + sizeChange) <= 0)) || (((vagTotal + totalChange) < 1)))) && ((vagSize > 0)))) && ((vagTotal > 0)))){ outputMainText((((((((("\r\rSudden intense cramping makes you double over. A slight moistness in your " + clothesBottom()) + " causes your hand to inspect the situation. It reaches your once ") + vulvaDesc()) + " vulva just in time to feel it shrink to nothing, sealing over with ") + skinDesc()) + ". It seems you have lost your vagina") + plural(2)) + ", "), false); if (cockTotal > 0){ outputMainText((("leaving only your cock" + plural(1)) + " remaining. You are now considered only male."), false); gender = 1; }; if (cockTotal < 1){ outputMainText("leaving you with no genetalia, completely androgynous where it matters. Things might be difficult...", false); gender = 0; }; vagBellyChange(sizeChange, totalChange); stats(0, 0, (2 * vagTotal), 0); vagSize = 0; vagTotal = 0; vulvaSize = 0; clitSize = 0; i = 0; while (i < pregArray.length) { if (pregArray[i] == false){ pregArray.splice(i, 5); i = -5; }; i = (i + 5); }; } else { if (((((vagTotal + totalChange) > 0)) && ((vagTotal < 1)))){ outputMainText((("\r\rYour tummy feels weird as your thighs rub against each other. Your " + clothesBottom()) + " feels wet in the crotch, an oddly new sensation. Reaching in, your hand slips across sensitive and supple flesh. It splits beneath your touch, letting your finger slip in between the moist folds. You let out a moan as your palm slips across the sensitive bump at the front of the crevice, your finger sinking into a hole. The tip brushes against an even more sensitive ring that sinks further into your body - a fresh womb."), false); if (totalChange > 1){ outputMainText(((((" Yet, that's simply the first. More moistness slimes your hand as " + totalChange) + " more gashes fill your ") + vulvaDesc()) + " groin, all as sensitive and large as the first. A bevy of pussies for your fingers to slip into, your hand rolling over all the labia and making you gasp with all the separate erotic thrills."), false); }; vagSize = 1; vulvaSize = 1; clitSize = 1; stats(0, 0, (2 * totalChange), 0); vagBellyChange(sizeChange, totalChange); vagTotal = (vagTotal + totalChange); vagSize = (vagSize + sizeChange); if (cockTotal > 0){ outputMainText((("\r\rYou lay your " + cockDesc()) + " cock back down to cover your new slit, as you're now considered to be both genders... A herm."), false); gender = 3; } else { outputMainText("\r\rYou have now graduated from androgynous to female, congratulations!", false); gender = 2; }; while (totalChange > 0) { if ((pregArray.length / 5) < vagTotal){ pregArray.push(false, 0, 0, 0, 0); totalChange--; } else { totalChange = 0; }; }; } else { if ((((totalChange > 0)) && ((vagTotal > 0)))){ outputMainText((("\r\rYour " + clothesBottom()) + " feels wet in the crotch, an oddly new sensation. Reaching in, your hand slips across another slit of sensitive and supple flesh. It splits beneath your touch, letting your finger slip in between the moist folds. You let out a moan as your palm slips across another bump at the front of the crevice, your finger sinking into a hole. A brand new vagina to go with the rest."), false); if (totalChange > 1){ outputMainText(((((" Yet, that's simply the first. More moistness slimes your hand as " + totalChange) + " more gashes fill your ") + vulvaDesc()) + " groin, all as sensitive and large as the first. A bevy of pussies for your fingers to slip into, your hand rolling over all the labia and making you gasp with all the separate erotic thrills."), false); }; vagBellyChange(sizeChange, totalChange); stats(0, 0, (2 * totalChange), 0); vagTotal = (vagTotal + totalChange); vagSize = (vagSize + sizeChange); while (totalChange > 0) { if ((pregArray.length / 5) < vagTotal){ pregArray.push(false, 0, 0, 0, 0); totalChange--; } else { totalChange = 0; }; }; } else { if ((((totalChange < 0)) && (((vagTotal + totalChange) > 0)))){ outputMainText((((("\r\rYou notice an odd sensation of numbness within your groin. Slipping a hand into your " + clothesBottom()) + ", you notice you're missing ") + -(totalChange)) + " of your vaginas."), false); vagBellyChange(sizeChange, totalChange); stats(0, 0, (2 * totalChange), 0); vagTotal = (vagTotal + totalChange); vagSize = (vagSize + sizeChange); while (totalChange < 0) { if (pregCheck(1)){ i = 0; while (i < pregArray.length) { if (pregArray[i] == false){ totalChange++; pregArray.splice(i, 5); i = (i + pregArray.length); }; i = (i + 5); }; } else { totalChange = 0; }; }; } else { if (vagTotal > 0){ vagBellyChange(sizeChange, totalChange); vagSize = (vagSize + sizeChange); }; }; }; }; }; } public function itemValue(ID:int):int{ var tempNum:int; tempNum = 0; if (ID == 1){ tempNum = 13; }; if (ID == 101){ tempNum = 50; }; if (ID == 102){ tempNum = 50; }; if (ID == 103){ tempNum = 20; }; if (ID == 104){ tempNum = 100; }; if (ID == 105){ tempNum = 30; }; if (ID == 106){ tempNum = 75; }; if (ID == 108){ tempNum = 50; }; if (ID == 109){ tempNum = 125; }; if (ID == 110){ tempNum = 20; }; if (ID == 111){ tempNum = 15; }; if (ID == 112){ tempNum = 15; }; if (ID == 113){ tempNum = 15; }; if (ID == 114){ tempNum = 15; }; if (ID == 115){ tempNum = 5; }; if (ID == 116){ tempNum = 20; }; if (ID == 117){ tempNum = 30; }; if (ID == 118){ tempNum = 55; }; if (ID == 119){ tempNum = 40; }; if (ID == 120){ tempNum = 30; }; if (ID == 121){ tempNum = 15; }; if (ID == 122){ tempNum = 15; }; if (ID == 123){ tempNum = 15; }; if (ID == 124){ tempNum = 15; }; if (ID == 125){ tempNum = 15; }; if (ID == 126){ tempNum = 15; }; if (ID == 127){ tempNum = 35; }; if (ID == 200){ tempNum = 0; }; if (ID == 201){ tempNum = 15; }; if (ID == 202){ tempNum = 15; }; if (ID == 203){ tempNum = 5; }; if (ID == 204){ tempNum = 1; }; if (ID == 205){ tempNum = 1; }; if (ID == 206){ tempNum = 30; }; if (ID == 207){ tempNum = 20; }; if (ID == 208){ tempNum = 15; }; if (ID == 209){ tempNum = 3; }; if (ID == 210){ tempNum = 17; }; if (ID == 211){ tempNum = 10; }; if (ID == 212){ tempNum = 14; }; if (ID == 213){ tempNum = 5; }; if (ID == 214){ tempNum = 5; }; if (ID == 215){ tempNum = 0; }; if (ID == 216){ tempNum = 150; }; if (ID == 217){ tempNum = 40; }; if (ID == 218){ tempNum = 20; }; if (ID == 219){ tempNum = 5; }; if (ID == 220){ tempNum = 50; }; if (ID == 221){ tempNum = 30; }; if (ID == 222){ tempNum = 15; }; if (ID == 223){ tempNum = 15; }; if (ID == 224){ tempNum = 10; }; if (ID == 225){ tempNum = 10; }; if (ID == 226){ tempNum = 5; }; if (ID == 227){ tempNum = 10; }; if (ID == 228){ tempNum = 10; }; if (ID == 229){ tempNum = 0; }; if (ID == 230){ tempNum = 25; }; if (ID == 231){ tempNum = 15; }; if (ID == 232){ tempNum = 0; }; if (ID == 233){ tempNum = 0; }; if (ID == 234){ tempNum = 0; }; if (ID == 235){ tempNum = 0; }; if (ID == 236){ tempNum = 0; }; if (ID == 500){ tempNum = 5; }; if (ID == 501){ tempNum = 15; }; if (ID == 502){ tempNum = 70; }; if (ID == 503){ tempNum = 10; }; if (ID == 504){ tempNum = 10; }; if (ID == 505){ tempNum = 10; }; if (ID == 506){ tempNum = 10; }; if (ID == 507){ tempNum = 10; }; if (ID == 508){ tempNum = 25; }; if (ID == 509){ tempNum = 25; }; if (ID == 510){ tempNum = 25; }; if (ID == 511){ tempNum = 25; }; if (ID == 0x0200){ tempNum = 25; }; if (ID == 513){ tempNum = 20; }; if (ID == 0x0202){ tempNum = 20; }; if (ID == 515){ tempNum = 20; }; if (ID == 516){ tempNum = 20; }; if (ID == 517){ tempNum = 20; }; if (ID == 518){ tempNum = 50; }; if (ID == 519){ tempNum = 50; }; if (ID == 520){ tempNum = 150; }; if (ID == 521){ tempNum = 50; }; if (ID == 522){ tempNum = 50; }; if (ID == 523){ tempNum = 2; }; if (ID == 524){ tempNum = 7; }; if (ID == 525){ tempNum = 25; }; if (ID == 526){ tempNum = 5; }; if (ID == 527){ tempNum = 20; }; if (ID == 528){ tempNum = 10; }; if (ID == 529){ tempNum = 35; }; if (ID == 530){ tempNum = 45; }; if (ID == 531){ tempNum = 69; }; if (ID == 532){ tempNum = 75; }; return (tempNum); } public function enemyName():String{ var tempStr:String; tempStr = "ENEMY NAME ERROR"; if (enemyID == 101){ tempStr = "cock-snake"; }; if (enemyID == 102){ tempStr = "dessicating dust devil"; }; if (enemyID == 201){ tempStr = "lone male wolf"; }; if (enemyID == 301){ tempStr = "felin in heat"; }; if (enemyID == 302){ tempStr = "drunken equan"; }; if (enemyID == 303){ tempStr = "octopus girl"; }; if (enemyID == 304){ tempStr = "little big bunny-man"; }; if (enemyID == 305){ tempStr = "little big bunny-girl"; }; return (tempStr); } public function complexAlchemy(more:int):void{ var more = more; showPage(true, (40 + more)); buttonWrite(4, "&#60;&#60;"); buttonWrite(8, ">>"); buttonWrite(12, "Return"); if (more == 1){ viewButtonOutline(1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1); viewButtonText(1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1); buttonWrite(1, "Black Dye"); buttonWrite(2, "S Lust Draft"); buttonWrite(3, "S Rejuv Pot"); buttonWrite(5, "S Exp Preg"); buttonWrite(6, "S Ball Swell"); buttonWrite(7, "Baby Free"); buttonWrite(9, "Pot Pot"); buttonWrite(10, "Gen Swap"); buttonWrite(11, "Maso Pot"); outputMainText("Click on an item you would like to create.", true); outputMainText("\r\rBlack Dye - Dye that will turn your hair black.\rRequires 5 Wolf Fur.", false); if (alchemistLevel >= 3){ Choice2.visible = true; Choice3.visible = true; outputMainText("\r\rSuperior Lust Draft - When you're having difficulty performing, a quick sip of this will get you up so fast that you may want to avoid pointing towards any nearby eyes.\rRequires 3 Grain plus either 2 Bol Juice, 1 Cum Bottle, or really moist genitals at the time of creations.", false); outputMainText("\r\rSuperior Rejuvenating Potion - Both greatly heals and soothes the body.\rRequires 1 Lust Draft (to be reversed) and either 1 Milk Jug or 3 Milk Bottle .", false); }; if (alchemistLevel >= 4){ Choice5.visible = true; Choice6.visible = true; outputMainText("\r\rSuperior Express Pregnancy Potion - Tired of waiting for that baby to come? Drink one of these and that baby will be wanting out in no time!\rRequires 1 Wet Cloth and 3 Lizan Eggs.", false); outputMainText("\r\rSuperior Ball Sweller - When you're ejaculating often, your testicles have difficulty keeping up. A dose of this will help speed up your sperm production so much that you may wanna be wary of explosions.\rRequires 1 Blo Berry and 1 Bul Berry.", false); }; if (alchemistLevel >= 5){ Choice7.visible = true; Choice9.visible = true; outputMainText("\r\rBaby Free Potion - Though this potion may lack babies as an ingredient, it also reduces the chances of any woman who takes it from getting pregnant for a period of time.\rRequires 1 Reduction and 1 Wolf Fur.", false); outputMainText("\r\rPotency Potion - Not happy with the amount of cum you're producing with your measly testicles? This will make your nuts more effective at their job!\rRequires 3 Ball Swell and 1 Cum Vial.", false); }; if (alchemistLevel >= 6){ Choice10.visible = true; Choice11.visible = true; outputMainText("\r\rGender Swap Potion - If you've ever wondered how the other sex feels, this is a great way to do it. Although you may lose your proportions, you'll know what it feels to be like the opposite gender in no time. Unless you're both, in which case you'd just know how a rather undeveloped version of both genders feels, or androgynous, in which case who knows which gender you'll end up as.\rRequires 1 Neuter and 1 Reduction.", false); outputMainText("\r\rMasochism Potion - This little drink messes up your nervous system for a while, making you perceive some damage as pleasure instead. A batch of Masochism Potion results in 2 potions.\rRequires 2 Wolf Fur and 1 Lust Draft.", false); }; }; doListen = function ():void{ if (more == 1){ if (buttonChoice == 1){ makeAlchemy(515, 2, more); }; if (buttonChoice == 2){ makeAlchemy(508, 2, more); }; if (buttonChoice == 3){ makeAlchemy(509, 2, more); }; if (buttonChoice == 5){ makeAlchemy(511, 2, more); }; if (buttonChoice == 6){ makeAlchemy(0x0200, 2, more); }; if (buttonChoice == 7){ makeAlchemy(516, 2, more); }; if (buttonChoice == 9){ makeAlchemy(517, 2, more); }; if (buttonChoice == 10){ makeAlchemy(513, 2, more); }; if (buttonChoice == 11){ makeAlchemy(0x0202, 2, more); }; }; if (buttonChoice == 4){ if (more == 2){ complexAlchemy(1); } else { complexAlchemy(more++); }; }; if (buttonChoice == 8){ if (more == 1){ complexAlchemy(2); } else { complexAlchemy(more--); }; }; if (buttonChoice == 12){ showPage(false, 1); doAlchemy(); }; }; } public function hairstyleName(ID:int):String{ var tempStr:String; tempStr = ("HAIRSTYLE NAME ERROR " + hair); if (ID == 0){ tempStr = "None"; }; if (ID == 1){ tempStr = "Wavy"; }; if (ID == 2){ tempStr = "Pigtail"; }; if (ID == 3){ tempStr = "Ponytail"; }; if (ID == 4){ tempStr = "Straight"; }; if (ID == 5){ tempStr = "Buzzcut"; }; if (ID == 6){ tempStr = "Mohawk"; }; if (ID == 7){ tempStr = "Bun"; }; if (ID == 8){ tempStr = "Curly"; }; if (ID == 9){ tempStr = "B Pigtail"; }; if (ID == 10){ tempStr = "B Ponytail"; }; if (ID == 11){ tempStr = "Braided"; }; if (ID == 12){ tempStr = "Spiky"; }; if (ID == 13){ tempStr = "Emo"; }; if (ID == 14){ tempStr = "Afro"; }; return (tempStr); } public function nipDesc():String{ var chance:int; var tempStr:String; chance = percent(); tempStr = ("NIPPLE ERROR " + nippleSize); if (chance <= 100){ if (nippleSize <= 2){ tempStr = "small"; }; if ((((nippleSize > 2)) && ((nippleSize <= 5)))){ tempStr = "noticeable"; }; if ((((nippleSize > 5)) && ((nippleSize <= 9)))){ tempStr = "blatant"; }; if ((((nippleSize > 9)) && ((nippleSize <= 30)))){ tempStr = "teat-like"; }; if ((((nippleSize > 30)) && ((nippleSize <= 50)))){ tempStr = "cock-like"; }; if ((((nippleSize > 50)) && ((nippleSize <= 100)))){ tempStr = "horsecock-like"; }; if ((((nippleSize > 100)) && ((nippleSize <= 140)))){ tempStr = "arm-length"; }; if ((((nippleSize > 140)) && ((nippleSize <= 300)))){ tempStr = "street-clearing"; }; if (nippleSize > 300){ tempStr = "obscene"; }; }; if (chance > 50){ if (nippleSize <= 2){ tempStr = ""; }; if ((((nippleSize > 2)) && ((nippleSize <= 5)))){ tempStr = "perky"; }; if ((((nippleSize > 5)) && ((nippleSize <= 9)))){ tempStr = "hypnotizing"; }; if ((((nippleSize > 9)) && ((nippleSize <= 30)))){ tempStr = "long"; }; if ((((nippleSize > 30)) && ((nippleSize <= 50)))){ tempStr = "huge"; }; if ((((nippleSize > 50)) && ((nippleSize <= 100)))){ tempStr = "enormous"; }; if ((((nippleSize > 100)) && ((nippleSize <= 140)))){ tempStr = "extreme"; }; if ((((nippleSize > 140)) && ((nippleSize <= 300)))){ tempStr = "ridiculous"; }; if (nippleSize > 300){ tempStr = "obscene"; }; }; return (tempStr); } public function vagBellyChange(sizeChange:int, totalChange:int):void{ var newBelly:int; newBelly = ((((vagSize + sizeChange) * (vagTotal + totalChange)) * vagSizeMod) - (tallness / 2)); if (newBelly < 0){ newBelly = 0; }; if (newBelly < vagBellyMod){ outputMainText("\r\rYour belly flattens slightly as the amount of vaginal flesh within becomes less disproportionate to your body.", false); } else { if (newBelly > vagBellyMod){ outputMainText("\r\rYour belly bulges slightly more as the vaginal flesh within takes up more room than your belly can handle...", false); }; }; vagBellyMod = newBelly; if (vagBellyMod < 0){ vagBellyMod = 0; }; } public function doProstitute():void{ var chance:int; var tempInt:int; if (percent() < (25 - enticeMod)){ outputMainText((("You wait around " + regionName(currentZone)) + ", shaking your assets and hoping to catch the eye of someone looking for a bit of sensual company. Unfortunately, despite some lustful gazes, nobody steps forward to take you up on your offer. Either you just weren't attractive enough or they just weren't in the mood at the moment."), true); hrs = 2; doEnd(); } else { tempInt = Math.floor((((percent() / 20) + (ment / 5)) + (lib / 5))); i = 0; while (i == 0) { chance = percent(); if (currentZone == 1){ if (chance <= 20){ outputMainText((((((("Checking yourself in a window, you make sure your " + currentClothes()) + " are in order. You make sure your ") + boobDesc()) + " breasts are exposed just enough to entice anyone that sees the lovely flesh of your ") + boobDesc()) + " bust. You walk with your hips swaying back and forth, trying to bring any watcher to you like a moth to the flame. It's not long before a small group of three human males approach you. Each of them looks like they’ve had a bit to drink and they even try to haggle with you. You manage to agree upon a price for the three of them and they take you back to a seedy bar. The place is bustling, but they have a back room for their dirty exploits."), true); if (lactation > 0){ outputMainText((((("\r\rThe three men eagerly began to strip, each appears to be a fine example of human endowment. You almost wonder if these men had deliberately lost to cock-snakes at some point... though that seems a little ridiculous... who would do that after all? You remove your " + currentClothes()) + " for them in a sexy striptease, their fat cocks already engorging with blood. \r\rYou smile seductively as the bravest man approaches. He grabs your ") + boobDesc()) + " tits and begins to suckle on the sensitive nipples. A moan escapes your lips as milk escapes into his eager mouth.\r\rYou stagger backwards into the waiting arms of one of the men, not realizing that he was behind you. He grabs you roughly by the waist and you feel his hard manhood in your back. You wonder if he will drive it into you, the thought filling your mind makes you shudder with anticipation. He prolongs your wait as he begins to kiss and nibble on the soft nape of your neck, driving the fire in your body hotter and hotter.\r\rThe last man approaches and takes your hand, guiding it to his still hardening member. You can barely fit your delicate fingers around it as you begin a slow teasing movement.\r\rIt’s hard to focus as you try to continue your movements, but the feel of the lips on your neck and the teeth on your nipples is making it difficult to do anything but breathe heavily. Another set of teeth come down suddenly on your free breast. You have to move a little to continue stroking the man’s large member. Your other hand snakes out to find another cock to fill it. The lips on your neck disappear, but that feeling is soon replaced by one of strong hands up your rump. Your cheeks are spread followed by sudden pressure on your little hole. The feeling increases as the hands slide to your hips and they’re pulled backward onto the hard shaft.You give a small yelp as the man pushes fully inside of you, raising you off the ground in surprise."), false); outputMainText("\r\rYour feet swing awkwardly as you hang impaled on his manhood. Your hands leave the men’s members, but they do not stop milking your tits harshly. You look back over your shoulder and see the man’s smug grin as he leans against a table to support himself. Your attention gets pulled back to one of the men as he pulls hard on your breast to force more milk into his mouth. You wonder what's going to happen next as you slowly get used to the uncomfortable feeling of being held aloft on the man's thick cock. His strong hands grip you tightly around the waist and he begins to pull himself from you. He pulls almost all the way out, barely leaving the head of his member inside. A surprised moan escapes your lips when he suddenly thrusts back into you. You feel a slight bit of pain and your stomach has a noticeable bulge, but you are paying too much attention to your breasts to notice it. As the man begins his thrusting, you can’t help but feel even more turned on. Your tits feel like they're on fire as they are suckled constantly and your nipples are so hard that it's almost painful. With all the focus the men give your body, you can’t fight against the orgasm that turns your bones to jelly and makes your eyes roll back into your head. All your muscles spasm and the man behind you gives a grunt as you clench mercilessly on his shaft. His orgasm has yet to come, but you’re sure that it won’t be long now. There’s not much to do as you let the men suck your tits dry and fuck your ass raw until at last you feel the heat of the man's seed spilling within you. You sigh in pleasure from both the warmth inside you and relief as he pulls himself free of your ass before lowering you to the ground. As good as it felt, you just know it’s gonna be hard to sit for at least a week.", false); outputMainText("\r\rThe men paying attention to your chest finally let go. You sink to your knees as they grab their stiff members and begin to stroke themselves quickly. You close your eyes and open your mouth, knowing that it won't be long until they finish as well. Their breathing gets heavier and heavier until you hear the strangled sounds of their climax. A heated moan escapes your mouth as you feel the hot strands of thick liquid splash over your face and in your mouth. You’re surprised by the amount as you feel the hot surges of their seed continuing to spill onto your face over and over again. Their climaxes do eventually come to an end and you gather up the cum on your face, scooping it into your mouth and licking your fingers hungrily. \r\rWith all the men spent, you get dressed and hobble from the seedy bar. With each step, the pain in your ass is still quite apparent.", false); milkAmount(1); doLust(-(Math.floor((sen * 1.5)))); } else { outputMainText((("\r\rThe three men eagerly began to strip, each appears to be a fine example of human endowment. You almost wonder if these men had deliberately lost to cock-snakes at some point... though that seems a little ridiculous... who would do that after all? You remove your " + currentClothes()) + " for them in a sexy striptease, their fat cocks already engorging with blood. \r\rYou smile seductively as the bravest man approaches. He leads you to a table and has you to bend over as he sits upon it, the table creaking slightly under his weight. His hot meat throbs inches from your face and you use your tongue to gently lick the head. He lets out a small moan as you try to take the head into your mouth, your lips stretching around it's impressive girth before it finally pops in.\r\rYou feel something pushing on the tight pucker of your ass, it feels strange as it begins to go inside. You feel your hole stretching around the intruder, but you manage to take the thick member. You smile around the first man's shaft slightly as your tongue begins to lick and circle around the man’s cock, pleasuring him further. You aren’t sure if you’ll be able to take much more of him. You place your hands around the thick shaft and slowly begin to stroke it. The man inside your ass begins to thrust, grabbing you by the hips to get himself deeper into you. The feeling is exquisite and the position helps to rub that little spot inside you. The man’s pace quickens into a relentless pounding of your ass. It distracts you from the job in your mouth and hands, but your moans help with the member in your mouth a little bit. The hard thrusts into your ass fall into a steady pace. The feeling causes your eyes to close as waves of ecstasy race through you."), false); outputMainText((("\r\rHowever, it's not long until that pace breaks. His thrusts get faster and rougher as the man gets closer and closer. There’s a faint twinge of pain as the man buries himself as far as he can go. A strangled noise escapes his lips as his shoots his load into you. Your ass clenches tightly, milking him for as much of his cum as possible. With a pleasured sigh, he pulls himself from your ass and lets go of your waist.\r\rThe emptiness in your ass is soon filled with another stiff cock, but... this time it’s different. You aren’t sure what’s going on. The man inside your mouth wants you to go deeper. It's not easy, but you oblige with a few more inches. With his cock entering your throat, you idly wonder if this man might be part horse. The true fucking begins now as both men begin to thrust. The one on the table stands and holds onto your head as he keeps himself buried deep. As one man pulls out, the other thrusts in deep, causing you to jiggle back and forth. Your breasts flop to and fro with their motion. There’s nothing you can do except grab the table and hold on as best you can as the vicious cycle continues. There’s a primal urgency in the men’s thrusts. They’re not there to pleasure you, this is all about them. The man behind you gives your " + buttDesc()) + " rump a sharp slap, causing you to squeal around the cock in your mouth. You start timing your breathing round the thrusts in your mouth and you can taste his salty pre occasionally whenever he pulls his head back out of your throat. The man pounding your ass continues to ride you as roughly as possible. You start moving with him, forcing your hips back onto his thick meat.\r\rYou can feel the members starting to get thicker. The hands behind your head force you deep onto his cock, mashing your face into the man’s pubic hair."), false); outputMainText(" As you feel the cock in your ass explode and flood your body with seed, you’re pretty sure the one in your mouth has begun to flood your stomach with cum as well. Just before you choke, the member is pulled from your mouth. You cough a little before finally taking a deep breath of fresh air. The deflating cock in your behind is slowly pulled from you with a loud pop.\r\rExhausted, you pull your clothes on and wander out of the seedy tavern, holding your slightly inflated belly. As you head back to your street, you wonder if the seed of all three men will meet in your stomach. The very thought arouses you...", false); doLust(-(Math.floor((sen * 1.5)))); doLust(((lib / 10) - (ment / 10))); }; if (cockTotal > 0){ cumAmount(); }; hrs = 2; i++; } else { if ((((chance <= 40)) && ((cockTotal > 0)))){ outputMainText((((((((("You wander around the city of Softlik, putting yourself on display, hoping to earn some coin with the only asset you have to peddle. The crowds seem to largely ignore you. Some of the more prudish citizen even actively avoid you. As time passes, you worry that your efforts may be in vain. Just as you are about to give up, a very nervous young man hesitantly approaches you. \r\r'Hey, I know, this might sound stupid, but you look like a...' he blushes and stammers a bit 'well,..' He looks around and lowers his voice, hoping no one can hear him, 'I always wanted to try to suck off a " + domName()) + " like you. I'll pay you, if you let me...' He blushes deeply as he looks at you with downcast eyes, his face turning almost as red as his hair. You find it rather endearing as you watch his nervousness warring with his desire.\r\rNeeding the money, you nod your head in acceptance. The young man grabs your arm as his enthusiasm overcomes his nervousness. He practically drags you into an empty alley before looking around, ensuring no one can see you two. Now that he has you in private, however, his nervousness reasserts itself, looking a bit unsure. You decide to take the lead for this moment and pull out ") + oneYour(1)) + " ") + cockDesc()) + " cock") + plural(1)) + "."), true); if ((cockSize * cockSizeMod) <= 20){ outputMainText("\r\rThe young man promptly falls down to his knees in front of you and touches it with a trace of wonder. Finally he begins stroking it in earnest and you realize that despite his uncertainty, he certainly has some talent. As he gains courage from your gasp of pleasure, he starts applying his tongue, teasing along the underside of your shaft. Despite his initial shyness, he is really quite good at this. He takes the tip of your cock into his mouth, licking around the tip and moaning softly. His expression is one of sheer bliss as he tastes the drop of pre that emerges. His head starts bobbing on your cock, going down on you in earnest, eliciting a low growl from you. If this guy is really new to this, he is a natural. He picks up speed and moves your up and down on your cock sucking harder and faster.", false); if (knot == false){ outputMainText("\r\rYou enjoy his attentions, absently caressing his hair as he gives you one of the best blowjobs you've ever had. You pant heavily as as this young man moves his head, taking almost your whole cock in his mouth. You grab his head as you feel you are close to your climax and pull his head while thrusting with your hips, forcing him to take your entire length in his mouth as you release your pent-up climax, giving him all your seed to swallow.", false); } else { if (knot == true){ outputMainText("\r\rYou enjoy his attentions, absently caressing his hair as he gives you one of the best blowjobs you've ever had. You pant heavily as as this young man moves his head, taking almost your whole cock in his mouth, nearly down to your knot. You grab his hair and pull him closer, impaling his willing mouth on your cock, until he can reach your knot with his tongue. He gets the idea and begins teasing the swelling knot with his tongue.", false); if ((cockSize * cockSizeMod) <= 10){ outputMainText(" You are surprised when he manages to not only take in your shaft, but your knot as well. You groan as his lips clench behind your knot, much like a woman's nether lips would, before squeezing it and massaging the swelling bulb. Then he looks up at you, his lips wrapped around your knot and the worshipful, needy expression on his face is too much for you. Unable to hold back any longer, you give him the reward he so eagerly seeks and he struggles to swallow every last drop as you spray your seed down his throat.", false); } else { outputMainText(" He then pulls off your shaft and begins sucking on the knot itself, allowing it to swell to full size. Then he goes back to deep-throating your cock while squeezing your knot with his hand. The sensation is too much for you and he struggles to swallow down every last drop as you spray your seed into his mouth.", false); }; }; }; } else { outputMainText((((("\r\rThe young man falls on his knees and admires your " + cockDesc()) + " cock. He feels over your large member, surely too big for him to take it all. He slowly licks around the shaft before starting to suck on the tip. He takes in as much of your cock as he can, sucking and licking on it, eyes half-lidded in bliss and moaning softly. He starts to stroke the rest of your cock, much too large to fit in his mouth and with his other hand he massages your ") + ballDesc()) + " balls. You enjoy his enthusiasm and his skill as he carefully makes sure that every last inch of your thick shaft is given the attention it deserves. It's not long before you're feeling a familiar pressure building up in your nuts. Suddenly the boy stops playing with your balls and moves his finger over your ass. Pushing one in your asshole, he sends you over the edge and you flood his mouth with cum in return."), false); }; outputMainText("\r\r\rAs you pull your cock out of his mouth, the last spurt of cum hits his face, marking him. He blushes again, licking his lips and savoring the flavor. He looks around again, still finding no one who could have seen you. He sighs in relief and hands you some coins. He then gets up quickly, and moves away...", false); doLust(-(Math.floor((sen * 1.5)))); hrs = 1; cumAmount(); i++; } else { if ((((chance <= 60)) && ((cockTotal > 0)))){ outputMainText((((((((((((((((("You don't wait long for a customer. A young blond woman enters your room and immediately strips her clothes off, revealing her large supple breasts and delicate curves. Already your " + cockDesc()) + " cock") + plural(1)) + " begin") + plural(3)) + " to grow hard at the sight of her bare flesh. You join her on the bed, locking lips in a sensual kiss as your hands roam over her breasts and pinch her pert nipples.\r\rYou moan as her fingers trace down your spine, her nails applying just enough pressure for it to be sensual and pleasurable. You trail kisses down her neck and chest until you reach her hips. You give her clit a tender lick and nibble before you delve your tongue deep into her folds. She moans and arches her back as she runs her fingers through your hair, pushing your tongue deep into her needy pussy.\r\rThe smell of her aroused sex fills your nostrils as your tongue laps at her delicate walls. Your ") + cockDesc()) + " cock") + plural(1)) + " throb") + plural(3)) + " with need to the point of aching as it goes unattended. You pull away from her crotch and she eagerly lays back on the bed, her wet folds glistening with saliva and feminine juices.\r\rYou rub ") + oneYour(1)) + " hard cock") + plural(1)) + " along her nether lips, coating it in her juices before you press your hard length into her. She moans as you vigorously thrust into her, your shaft stroking her sensitive places with each pass.\r\rWith each passing moment her pussy tightens around your cock, making it harder for you to keep pace as you slam into her. You can feel the heavy warmth in your balls as they begin to clench and roil, ready to burst at any moment. You pound hard into her a few more times before she reaches her peak.\r\rHer pussy clenches and milks at your cock. You groan and push into her one last time as your seed bursts from the tip of your cock and catches deep within her greedy passage. Thick ropes of cum spill into her as you hold her down, filling her with your entire potent load."), true); outputMainText("\r\rWhen your orgasm settles down, you ease your member out of her slit with a thick trickle of your seed dribbling out of her hole and coating your cock. \r\rYou go into the bathroom and bathe and, when you return, you find that your client has left some coins on the table.", false); hrs = 2; cumAmount(); doLust(-(Math.floor((sen * 2)))); i++; } else { if (chance <= 80){ outputMainText((((("You've been standing on the corner for a couple of hours now, trying to tempt someone into spending some coin in exchange for some pleasure. So far all you've gotten are dirty looks from several of the town matrons, making you even more embarrassed that you've had to resort to this desperate measure. Luckily for you, a group of farmhands from one of the surrounding farms have come into town on their day off. Several of the burly, sunburnt men cast appreciative glances at you but most of them seem eager to drown their thirst at the nearby tavern. As the boisterous group moves off, one of the younger men pauses, glancing at your " + boobDesc()) + " breasts. He watches the men as they make their way into the tavern, grinning to himself when they fail to notice his absence. He continues to gaze at your chest as he makes his way over to you, giving you a chance to study him. His straight brown hair is a bit on the shaggy side, almost concealing his warm, chocolate brown eyes. The downy beginning of a moustache and beard surround his mouth. He's wearing a pair of coveralls over a fairly clean flannel shirt and he doesn't smell too strongly of manure. He quickly agrees to part with some coin to have a bit of fun with you. You lead him a short way down the alley to a spot behind some empty beer crates. His eyes go wide as you slip out of your ") + currentClothes()) + " letting him get a good look at you."), true); outputMainText("\r\rHe fumbles with the buttons of his coveralls and finally manages to undo them. He hastily tugs them down, letting his erection spring from its confinement. His cock isn't the biggest you've seen, but it certainly isn't the smallest either. He blushes a bit as he explains he'd like to use your tits. It isn't quite what you've envisioned, but the customer is always right so you quickly work out the logistics. You have him sit down on one of the empty crates, then lean over him so his erection is nestled between your breasts. He moans softly as you capture his hard, hot length between your tits and soon begins to rock his hips. There's a bit of friction at first, but soon his slick pre is smeared in your cleavage and he begins to thrust his hips even more vigorously.", false); if (breastSize <= 2){ outputMainText(" You lower your head and flick your tongue over the head of his cock as it rubs the slight curve between your mounds.", false); } else { if (breastSize <= 10){ outputMainText(" You lower your head and flick your tongue over the head of his cock each time it pops out from between your breasts.", false); } else { outputMainText(" His entire length is lost in the warm, pillowy mass of your tits and he couldn't be happier!", false); }; }; outputMainText("\r\rAfter a surprisingly short time, the young man begins to pant raggedly, his eyes clenched tightly shut as he humps into your breasts hard and fast. He cries out softly as you feel the hot gush of his seed spray into your cleavage, painting your breasts as he quivers beneath you. He gives you a rather dazed looking smile and is just about to say something when the two of you hear several men calling out. \r\r'Bran! Bran where are you boy?' \r\rHis eyes widen in alarm. 'Th..That's the foreman! I...I've got to go!' \r\rHe reaches into his belt pouch and hurriedly gives you some coins. 'Th...Thanks a lot! Maybe I'll see you again the next time I'm in town!' He waves to you, then hurries down the alley while simultaneously trying to pull his overalls up. He manages to trip himself once, but quickly gets to his feet as his tugs his clothing back into place before scurrying out of the alley and hurrying to find his friends. \r\rYou shake your head in bemusement as you gather up the coins and clean yourself off.", false); hrs = 2; doLust(Math.floor(((lib / 10) - (ment / 10)))); i++; } else { if (chance <= 100){ outputMainText((((("A rough-looking human eyes you from the alleyway. There's a glint in his eyes as he approaches. 'Y'wanna earn a few extra coins?' he asks after he steps into the light, his tan flesh scarred and his eyes looking over your body. 'Step into my office, and let's have a talk.'\r\rYou nod and walk into the dark alley, the rogue soon following. You begin to turn, your mouth opening to speak only to have one of his hands clasp over it while the other slams your body against the wall. 'Been a while since I fucked an ass. Just shut up and take it.' he commands while pulling your " + clothesBottom()) + " out of his way. It isn't long before his fleshy shaft presses up against your ass. You can feel the warmth of the man's chest against your back as the throbbing cock slides between your cheeks. He grips your ") + buttDesc()) + " ass hard, holding it against his cock as he rubs his length between your cheeks. Before long, there's a dribble of his pre drooling down your crack. A gasp escapes your lips as the slime-covered tip nudges against your ring. The bandit teases your fleshy hole for a moment. He lets out a few low grunts as he presses forward, not quite penetrating your tight sphincter. 'You want it, slut? I can see it in your eyes. You're begging for it.'\r\rWith no further warning, he plunges in. The fat human cock spreads your walls apart as he slides in the hole below. He moans deeply as his hands latch onto your hips, the man pushing his remaining length into you. 'Fuck, you're hot... Worth every gold piece.' His grip on your hips tightens, almost painfully so, as he rocks your body back and forth with every thrust. The unlubricated cock digs painfully into your flesh with every movement as the man fucks you without care. He roughly pounds your flesh, panting into your ear as he fucks you with quick, short movements.\r\rIt's not that long before he reaches orgasm and he shoves himself completely into your rear. With another grunt, the man's dick twitches inside your warm depths and you feel the sticky seed burst within you. You pant while he fills your ass so full that it begins to overflow, thick streams of cum rolling down your thighs as it slips through the tight seal."), true); outputMainText(" Just as you begin to feel completely full, he tugs free and lets the last few strands shoot over your back. He lets out a pleased sigh before throwing a small sack down beside you, hitting the ground with a quiet jingle. He vanishes as quickly as he appeared, slipping his dick back into his armor before turning a corner and leaving you a slimy mess.", false); hrs = 1; doLust(Math.floor(((lib / 10) - (ment / 10)))); i++; }; }; }; }; }; }; if (currentZone == 2){ if (chance <= 25){ outputMainText("Enticing one of the big local males into a nearby tent,", true); if (ment > 20){ outputMainText(" you make sure to check that no one else is around before turning your focus on him.", false); } else { outputMainText(" you don’t even bother to make sure you’re alone as you ravenously turn your attention upon him.", false); }; outputMainText(" Sinking to your knees and unfastening his trousers, you emit a gasp of lustful delight as you find it isn’t only his stature that is large. Your", false); if (checkItem(101)){ outputMainText(" paws", false); } else { outputMainText(" hands", false); }; outputMainText(" greedily grip his bulging masculinity. You coax his massive, horse-like cock from his plump sheath with slow, enticing strokes. His huge equan testicles are simply too big to cup in one hand, so you take turns squeezing and kneading each of his fat colt-makers as you stroke his huge, pulsing organ to life.\r\rThe equan groans as you lean in to tongue at his flaring, blunt cock-head while lapping at his pre-seed as it oozes copiously from his enormous fuck rod. You continue to stroke his throbbing shaft as you open your mouth wide and force the first few inches of his immense tool into your maw. Your tongue works furiously at the sensitive underside of his swollen, flat glans and it isn’t long before you feel his bloated orbs heave closer to his body in that telltale sign of his imminent release.\r\rSuddenly the equan surges forward, gripping ", false); if ((((((ears == 2)) || ((ears == 5)))) || ((ears == 7)))){ outputMainText("your long ears", false); } else { outputMainText("the back of your head", false); }; outputMainText(" with both of his huge, powerful hands. Your find your jaws stretched to their very limits as he forcefully pulls your head down upon his throbbing erection. He forces inch after thick, throbbing inch deep down your throat. You shudder and convulse in shock as your warm, wet throat grips and strokes every inch of his huge maleness. The sensations cause your partner to moan aloud in uncontrollable bliss. Your writhing tongue is pressed flush against the bottom of your mouth as the first gush of cum further bloats his already huge cock. You can only struggle futilely as you feel the blast of hot, thick cream shoot inward and coat your hungering belly. His powerful hands hold your lips flush against his velvet-furred sheath and you can only shiver with lust while you’re flooded with his essence. Your distended, cum-bloated belly gurgles in discomfort when he finally pulls his massive endowment free. You fall to the ground limply, panting as you're finally able to breathe again. With his thanks and a mumbled compliment, the equan stumbles out of the tent in a hazy afterglow, leaving you with his payment and a warm, sticky meal...", false); aff(2, Math.floor(((percent() / 20) + 2)), -2); hrs = 2; i++; } else { if ((((chance <= 50)) && ((gender == 2)))){ outputMainText("The sounds of raised voices catch your ear as you pass one of Firmshaft's canvas dwellings. Curiosity about the event gives you pause while you try to make out the words. Without warning, the quarrel erupts out onto the path before the tent and out come a pair of nude Equan males. They are fleeing from a short and rather angry-looking Equan woman wielding a large hammer. The two men nearly trip over you as they beat a hasty retreat, leaving their pursuer behind. She shakes her head, tossing her mane about in agitation as she stares after the fleeing pair. \r\rSeeming not to notice you, the woman mutters to herself while rubbing the crotch of her loincloth. You notice that the cloth is very wet. Sensing an opportunity, you draw her attention with a small wave. As she looks you over, you blow her a kiss. A knowing smile softens her features. She motions toward her hut and you follow silently, enjoying the view of her toned ass as the two of you enter. \r\rThe woman's home is lightly furnished, but you find your attention wholly consumed by the large pile of cushions spread out in the center, upon which the slim Equan woman rests in a seductive pose. She crooks one finger in your direction and pats the cushions beside her. You obey, scarcely able to take your seat before she pulls you into a deep, somewhat awkward kiss. It ends almost as suddenly as it began, the woman remembering what you are. 'Here,' she pants, shoving a pouch of coins into your hands. 'I'm done with men. Show me what a girl can do.' \r\rWith that she grabs your hair and shoves your head down between her legs. Her other hand has tugged her loincloth aside to give you clear access to her sloppy cunt. Left with little say in the matter you begin doing your best to service the lusty Equan, lapping the slick juices from her dripping slit with long, slow licks.", true); outputMainText(((" She lets loose a whinny of pleasure as your tongue darts between her folds to caress her hard clit. You keep it up for several moments before you suddenly find yourself lifted over her into a sixty-nine position, her hungry muzzle presses against your " + vulvaDesc()) + " cunt. Her surprisingly large tongue fills you nicely, sending waves of ecstasy through your body as the two of you suckle and lick each other to orgasm."), false); outputMainText("\r\rYou lose track of the climaxes as time goes on, only stopping when you collapse from exhaustion. The Equan woman gives you a kiss on the cheek and a pat on the rear before motioning toward the exit and picking up her hammer. She strokes the thick shaft as she prepares to pick up where you left off. Legs wobbling, you leave the dwelling while counting your coins and humming.", false); exhaustion = (exhaustion + 4); doLust((-(sen) * 2)); hrs = 1; i++; } else { if ((((chance <= 75)) && ((((((gender == 2)) || ((gender == 3)))) || ((breastSize > 24)))))){ outputMainText((((("Taking to the streets of Firmshaft in your " + currentClothes()) + ", you head to a less populated part of town to make a quick coin or two. After loitering about for an hour, an Equan finally approaches you. He’s slightly sweaty and appears rather nervous, though you're not surprised due to how young he appears. After some casual small talk, mostly about the weather and the grains in the plains, he gets up the courage to buy you. \r\rJudging by the large twitching bulge in his pant leg, you can already sense that he might be a handful. He takes you back to a large tent. Nobody seems to be home even though he clearly doesn't live alone. The Equan slides his pants off quickly, showing you a rather impressive rod dangling freely between his legs. It’s almost certain that if he fell over, that thing would be there to catch him. You remove your ") + currentClothes()) + " as well, his manhood twitching as he sees your naked body."), true); if (breastSize > 24){ outputMainText((((("\r\rNoting his constant gaze at your " + boobDesc()) + " breasts, you grin wickedly at him as you push him back onto the couch. You begin to rub your ") + boobDesc()) + " breasts with your hands, moaning in delight as you play with your nipples in a teasing manner. When they’re finally erect and he is sufficiently blue-balled, you approach him, straddling his legs and enveloping his massive member with your breasts. You slowly move up and down with them, your mouth opening to accept the flared head of his cock into your mouth. \r\rIt takes some doing, but soon you’re in a good rhythm. You run your tongue all over his cock before you greedily slide it into your throat. The boy’s face is in ecstasy as you continue your expert skills on him. The hot flesh of his member warms your entire body. Your heart beats likes a drum in your ears as you bounce up and down, swallowing him as far as you can. Fighting off the desire to gag, you devour him until his manhood bashes somewhere in your stomach. Your eyes bulge open in surprise as the young male's climax hits unexpectedly. His cock explodes with a river of spooge and rapidly begins to fill your stomach with his seed. You can feel the constant stream as his cock twitches and he whinnies loudly. Even as you pull out, he still hasn’t finished. Your throat and mouth are filled to overflowing with the thick liquid. As you pull him from your mouth, a few jets of stray cum strike you across your face and breasts. Despite your outrageously full belly, you scoop some from your bust and lick it off of your fingers. \r\rYour clothes may not fit as well now, but you head out of the tent to leave the Equan to recover."), false); doLust(Math.floor(((lib / 4) - (ment / 6)))); aff(2, Math.floor((percent() / 8)), 0); } else { if (vagLimit() > 60){ outputMainText("\r\rYou straddle his lap after he lays down on the bed. For a moment, you toy with the tip of his erection before slowly lowering yourself onto it. The feeling is intense as you proceed to take his cock all the way to the hilt. His hands grip your hips and he slowly begins to lift you up, shuddering slightly as your inner walls massage his incredible length. He pulls you back down after only half of his impressive tool is exposed to the air between you. You use your legs to take your weight off of his arms and help guide him into a steady rhythm. Eventually the two of you are in sync while one of your hands moves to your breasts to feel them and play with your sensitive nipples. Your other has gone to your cunt to stroke and rub your clit. It's only a few minutes before the Equan begins to breathe hard. It's pretty obvious to you that this is probably his first time. You speed up your own actions, wanting to give him his money’s worth. Each time your fingers dart across your clit, you feel a pleasurable wave creep up your spine. Moans escape your mouth as your fingers work fast on your sensitive body. Soon your pussy begins to contract and clench as your toes curl. The boy lets out a loud whinny, the new feelings too great for him as he erupts into you pussy like a firehose. The constant gushing begins to distort your stomach. By the time you feel he’s stopped, it almost looks like a basketball has been shoved inside your womb. You wait for a moment before carefully lifting yourself off of him. His cock falls to the bed with a wet slap. You giggle softly as you notice he’s fallen asleep. \r\rSmiling proudly, you get dressed and see yourself out, though you feel quite full.", false); doImpregnate(2); } else { outputMainText("\r\rYou're a bit worried as you begin to sink his massive cock into your pussy. Only part of the way in, you know it won’t fit, but the boy has paid for the full service. You suggest trying something else and sigh with relief as he nods in agreement. You quickly get into a doggy style position and pat your ass. He catches on quickly and prods at your asshole with his very large member. Why you thought this might be a good idea is beyond you, but as the flared head sinks in and the rest follows, you can only grin and bear it. To both his surprise and yours, his balls touch your pussy with a slap. \r\rGrabbing you carefully around the waist, the Equan begins to pull himself out, only to thrust himself back in after a few inches. Once the initial pain fades, pleasure begins to fill your body. You move forward and backwards on his shaft to further encourage him. Soon his erratic pace evens out and the only sound is the tell-tale slap of his large balls hitting against your now wet pussy. Before you can find real pleasure in the act though, the Equan begins to whinny in warning of his coming climax. His frantic thrusts become more apparent as you feel the thick cock pulse and grow slightly. He bottoms out one last time and a waterfall of Equan seed erupts from his flared head, which you are now painfully aware of deep inside you. You don’t even notice that your belly has started to grow, getting bigger and bigger until it almost touches the bed. You feel nauseous for a moment and cough a little, the surprising taste of semen fills your mouth. Just as he pulls free from your backside, you swallow it back down with all your willpower. \r\rSlowly, you get up and proceed to get dressed. You're rather satisfied with yourself and decide to keep your belly as it is, a trophy of sorts.", false); }; doLust((-(sen) * 2)); }; hrs = 1; i++; } else { if ((((chance <= 100)) && ((((gender == 1)) || ((gender == 3)))))){ outputMainText((((((((("You begin wandering around the equan village of Firmshaft, looking for ways to gain some coin. As you wander you notice that you've captured the attention of a few horny women with 'attributes' such as yours, so you find the best option would be to sell yourself for sex.\r\rYou begin your search for someone to fuck, giving an array of horny looks to every female that passes you by. It doesn't take long for one to take notice of you and your 'package'. She starts to walk slowly towards you, swaying her ample hips, curvy body and huge tits. Her face full of lust and her loins hungry for your cock" + plural(1)) + ". You feel your ") + cockDesc()) + " thing") + plural(1)) + " harden to full size, which only draws the woman in faster, You can only stand still and do nothing, as you are dazed by her amazing body.\r\rNot caring about the setting you are in, she lunges at you. and forces you down to the ground. Without even pausing, she starts tearing away your ") + clothesBottom()) + ""), true); if (showBalls == true){ outputMainText(((" and letting your " + ballDesc()) + " balls hang free"), false); }; outputMainText(((((((((((((((((((" followed by her tearing off her own clothes. She grabs " + oneYour(1)) + " wang") + plural(1)) + ", gets down onto all fours and presses the head of you penis against her quivering lips. She does not hesitate to force your ") + cockDesc()) + " cock inside of her sex, letting out a loud orgasmic moan as you sink deep into her folds. You don't even have time to think about being inside her hot, wet depths as the sexy mare begins bucking against the length of your ") + cockDesc()) + " ") + raceName()) + " tool inside her. Your penis and balls begin to shudder furiously after only a few minutes of the intense fucking, a warning to both you and her that you're about to blow. You hold tightly to her hips as you peak and thick ropes of your ") + domName()) + " cum paint her inner walls. After several, almost painful, minutes, you finally release all of your sperm into her womb. You breathe a small sigh of relief as you gather your thoughts. Your gaze falls to the equan woman and you can see her lying face first on the floor, barely conscious from her intense orgasm. She lets out a small moan as you gently pull your cock from her netherlips. In almost no time, it returns to its flaccid state. \r\rAfter a minute or two, she manages to recover from her climax and get back on her hooves. She stumbles, bow-legged towards you, still recovering from the stretching her nethers received from your ") + cockDesc()) + " cock. She slowly leans over you and gives you a kiss. You grin as you feel her press something against your stomach. A something that makes a faint metallic noise as it's weight shifts in your hands. Without another word, she stands and walks away. You look down and smile as you confirm that she has given you a purse full of coins. \r\rYou get to your feet and, as you are pulling ") + pullUD(2)) + " your ") + clothesBottom()) + ", you notice you have drawn a rather large crowd. It consists mainly of women, thirsting for sex. There are also several families with mothers and fathers covering their children's' eyes. You quickly leave the area, carrying on with your journey."), false); doLust((-(sen) * 2)); cumAmount(); hrs = 2; i++; }; }; }; }; }; if (currentZone == 3){ if ((((chance <= 25)) && ((cockTotal > 0)))){ outputMainText((((((((((((((((((((("A young female rushes down the street, moving with a much more feline quality than the other females of Tieden. She looks to be in a mild panic, scanning the crowds until her eyes lock onto your body. She undresses you with her eyes, lingering on the bulge in your " + clothesBottom()) + " until she’s satisfied that you're the one she wants. By the time you notice she’s been teasing her nipples though her blouse, she is already half-way across the street, headed right for you!\r\rBefore you can react she’s already pressing her plush bosom to your body, grinding possessively against you as she coos in a decidedly un-Lupan manner. Preempting anything you might say, she pushes you against the wall, betraying a strength her body wouldn’t show otherwise, and pulls up her skirt just high enough to reveal her sopping slit. She presses it into your ") + clothesBottom()) + " leaving a warm stain against your cock. She claws hungrily at your chest, revealing ever more of her feline nature as she nips at your neck hoping to entice you while she humps up and down the bulge of your ") + cockDesc()) + " erection.\r\rDespite the suddenness of it all, you find yourself responding. Her scent makes your head swim as you begin fumbling with your ") + clothesBottom()) + " until your schlong") + plural(1)) + " slap") + plural(3)) + " against her drooling pussy with a sloppy slurping noise. She rubs herself against your ") + cockDesc()) + " member, making you shiver in time with her slow, deep thrusts. She starts to pant heavily and your skin tingles as it rubs against hers. Before either of you can angle ") + oneYour(1)) + " ") + cockDesc()) + " erection") + plural(1)) + " to penetrate her, her whole body quakes and sprays your loins with hot, slick female cum. It rushes down your legs and hers. The smell reeks of the particular scent which makes it obvious that she is deep in her heat, if her desperation wasn't a big enough hint."), true); if ((cockSize * cockSizeMod) < eVagLimit(24)){ outputMainText((((((((("\r\rYou, of course, are too happy to oblige. Shifting your hips and lifting her by her plump ass, you plunge " + oneYour(1)) + " ") + domName()) + " cock") + plural(1)) + " deep into her folds and don’t stop until you feel her deep, fleshy walls fight against you. She bites down on her lip to suppress a wild squeal while shoving your face into her breasts. There is a ripping sound as she tears open her blouse so she can feed you her firm teat. Sweet milk leaks into your mouth while you hump again and again into her hungry body.\r\rWith her taste and smell surrounding you, you don’t think you'll last terribly long. Each hard thrust brings her closer to a second climax and before you reach yours, she floods your ") + cockDesc()) + " rod with her slick juices again, washing your hips in cum and quivering around your shaft tightly. That sends you over the edge, pumping your load into her womb and dousing the lustful flames of her heat."), false); } else { outputMainText((((((((((("\r\rUnfortunately you are simply too big for her to handle. Luckily though, she seems to be the resourceful type. With a nimble spring she wraps her arms around your shoulders and her legs around your waist so she can rock her sopping wet pussy along your " + cockDesc()) + " cock") + plural(1)) + ". She shivers and moans deeply, leaking her wet juices down your length while you hump back in time with her. All the while you are savoring the feeling of her folds against you.\r\rWith her scent so strong around you and her heat seeping right into your skin, you don’t last very long. She senses it and quickly pulls back. Without wasting any time, she takes the tip of ") + oneYour(1)) + " ") + cockDesc()) + " shaft") + plural(1)) + " and presses it just far enough into her cunt that the eruptions of your seed course deep into her."), false); }; if (cumAmount() < 5000){ outputMainText("\r\rShe sighs gratefully as you let her down off your cock and she haphazardly rearranges her clothes enough to be decent. 'I'm sorry. I just needed to get that taken care of. I still go into heat even though I'm more Lupan than ever. Please take a few coins for your trouble.'\r\rWith that she hurries off again, still looking the males up and down predatorially despite the cum very plainly dripping from under her skirt. And that leaves you alone in the smell of sex and heat to get dressed and make your way back.", false); } else { outputMainText("\r\rShe looks down at you as you keep filling her, bewildered but growing very fond of the constant flow of seed into her belly. She moans softly as her body swells with your rich essence. Her whimpers grow louder and louder until she squeals with a third orgasm, this time flushing out some of your spunk onto your lap with her juices.\r\rOnce you’re finished, she climbs gingerly off your dick and massages her sore lips with an exhausted smile. 'Thank you so much,' she whispers, pulling her clothes back into place as best she can around her now bulging belly, so stuffed with your baby batter that she looks pregnant already. 'It's been so hard to adjust to becoming a Lupan. I'm still not changed enough that my heat will go away.'\r\rAgain hurrying to beat your response, she fishes some coins out of her pouch as well as a sizeable vial of some kind. 'Take this with my gratitude.' With that she hurries off again clumsily, cum very plainly cascading down her legs and leaving you alone, surrounded by the smell of sex and a trail of your cum leading out of the alleyway.", false); itemAdd(114); }; hrs = 3; i++; } else { if (chance <= 50){ outputMainText("You wander around Tieden, putting yourself on display and making sure your ", true); if ((((gender == 1)) || ((((gender == 3)) && ((percent() <= 50)))))){ outputMainText((((("" + cockDesc()) + " bulge is noticeable under your ") + clothesBottom()) + "."), false); } else { if ((((gender == 2)) || ((gender == 3)))){ outputMainText((((("" + boobDesc()) + " breasts are clearly visible under your ") + clothesTop()) + "."), false); } else { if (gender == 0){ outputMainText("figure looks nice beneath your clothes.", false); }; }; }; outputMainText("\r\rA young priest heads towards you, a gleam in his eye. “Excuse me, but you are exactly what we need.” His voice holds a note of desperation. “Would you join us in a ritual?” He looks in your eyes pleedingly. “No harm will be done to you of course. And you will get a compensation...”\r\rNeeding the money, you agree with him and follow him into a temple.\r\rYou enter a chamber in the side of the temple. It is a large room, dimly lit with candles, and sparsely furnished. In fact, other than a throne on a raised dais at the far end, currently occupied by an older man in fancy religious attire reading from a large tome, the only real piece of 'furniture' would be a leather-covered alter with two other priests behind it. You are instructed to disrobe and lay on your back on the padded and leather-covered altar so that your legs are spread wide, a pad placed underneath your tailbone to leave your lower half raised, exposing your asshole", false); if (gender == 1){ outputMainText(((((" and " + cockDesc()) + " cock") + plural(1)) + ""), false); } else { if (gender == 2){ outputMainText(((" and " + vulvaDesc()) + " lips"), false); } else { if (gender == 3){ outputMainText(((((((", " + cockDesc()) + " cock") + plural(1)) + " and ") + vulvaDesc()) + " lips"), false); }; }; }; outputMainText(", and you are desperate enough to comply. The two other priests secure your ankles with padded cuffs to rings at the two lower corners of the altar, then do the same with another pair of cuffs for your wrists, pulling your arms taut over your head, to attach them to the other end of the long altar. You instinctively struggle slightly, testing the strength of your restraints and find that you are now completely at their mercy.\r\rThe young priest nods to the older one, who starts to read from the book, chanting words in a sing-song foreign tongue. The other priests disrobe and take up positions around the altar and your bound form upon it. The young priest enters your view carrying a chalice, filled with what looks to be wine, although a faint scent suggested otherwise. Each of the priests take a sip out of the chalice, gulping in harmony with the chants of the old priest. Then after each of the clergy has had their turn with the chalice, he moves towards you. He stands to one side, the other priests closing rank around you, the old priest still chanting in the background.", false); outputMainText("\r\rThe three priests stand around you, as the young one carrying the chalice lifts it over your body reverently, then carefully begins dribbling the liquid on your nude form. A drop of the blood-red liquid lands in the middle of your forehead, and begins moving the chalice down your body, allowing a drop to land on your nose, then your neck, as he continues guiding the drops down your body.", false); if (lactation < 1){ if (((!((gender == 1))) || ((((gender == 3)) && ((breastSize <= 3)))))){ outputMainText((((("\r\rHe lets some drops fall over your " + boobDesc()) + " chest, a single drop hitting each of your ") + nipDesc()) + " nipples in rhythm with the chants, which causes a warmth and a tingling sensation, making them very erect. He then pours some more of the ruby liquid, coating your cleavage with the stuff. The other priests move closer and start to lick the liquid from your breasts, making you squirm at the stimulation of the now very sensitive flesh being teased by their tongues. The young priest holding the chalice watches the spectacle, looking in your eyes, grinning lustfully. Then he raises a hand in a halting gesture, and the other priests stand back and watch him."), false); nippleSize++; } else { outputMainText((((((((("\r\rHe lets more drops fall on your chest, over your nipples, which begin to tingle with a strange warmth, and watches as it flows down your chest. He moves further down, letting some of the liquid dip over your belly. Finally he reaches your nether regions and tilts the chalice further, letting the liquid flow out over your " + cockDesc()) + " cock") + plural(1)) + ", which gets coated with the red liquid. It feels cold and hot at the same time on your cock") + plural(1)) + ", and you can do nothing but moan at the tingling sensation. The priests look lustfully in anticipation and listen to the chanting of the old priest. The younger priest pours out the last of the liquid in the chalice over your cock") + plural(1)) + " and then puts it down, looking lustfully at you."), false); }; outputMainText("The younger priest, who was carrying the chalice moves both his hands over you, he begins to chant in rhythm with the old priest, but he chants different words. The other priests arise, and you can see that all of their cocks are rock hard, throbbing precum and their knots are swollen. They position themselves around you: one close to your mouth, his musky odor mingling with the scent of the liquid that was dropped on your nose to produce a craving for the throbbing member with an intensity that surprises you; and the other priest positions himself between your spread legs, his cock twitching so close to your ", false); if (vagTotal > 0){ outputMainText(((" cunt" + plural(2)) + "."), false); } else { outputMainText("asshole.", false); }; outputMainText(" The younger priest suddenly places his oddly warm and wetpaw down and hits your belly, making you gasp as a warmth fills your loins. This gasp apparently is the cue for the other priests to act. The one standing close to your now eager mouth obligingly allows you to take in his entire shaft, the taste bringing out your feral nature, while the one poised between your legs roughly impales your lower hole.", false); if (cockTotal > 0){ outputMainText(((" The younger priest starts to stroke your now highly sensitive and throbbing erection" + plural(1)) + " in rhythm with the chanting, grinning as your pre begins leaking out at the slightest touch."), false); }; outputMainText("All of the priests fuck you in rhythm with the chanting, changing places in turn, fucking all of your needy holes. You writhe in ecstasy as your whole body is used, giving in to your baser instincts, straining at the cuffs which limit how much you can move in rhythm with their tempo. You start climaxing uncontrollably, over and over, too overcome by your lust to bother counting them, for what seems like an eternity. The chanting takes on more desperate note and then, on one final word, all four of them cum simultaneously, filling your every hole to overflowing, with the rest spraying on your body, ripping one final climax out of you, more powerful than the rest, before you pass out in a haze of sheer bliss.", false); if (vagTotal > 0){ doImpregnate(3); }; } else { milkAmount(1); outputMainText((("\r\rYou can feel a single drop landing on each of your nipples. The liquid instantly mixes with your milk, causing your " + boobDesc()) + " breasts to become even more sensitive, increasing their flow. The young priest continues to cover your nipples in the red liquid, drop by drop, watching how the they mix with your milk. He then turns the chalice further, letting the liquid flow over your breats covering them in pinkish mix of your milk and the red fluid.\r\rThe other priests start to fondle your breasts, causing you to moan as the sensitized flesh was further teased by their caresses, their chant mingling with your moans as they milk you. The other priest holds the chalice close to one of your nipples and you watch as they top off the half-full gem-encrusted container of the ruby red liquid with your milk, turning it a pinkish color as well.\r\rThe priests seems pleased, and each one takes a deep gulp of the mixture in turn before passing it to the next. They start praying after drinking the milk mix, and you feel somehow sleepy."), false); }; outputMainText("\r\r\rYou awaken after a while and the young priest looks in your eyes. “Blessed be you for your participation in the ritual. We thank you for your generous offering.” He hands you a bag of coins. You leave the temple feeling very satisfied...", false); doLust(-100); exhaustion = (exhaustion - 4); hrs = 4; if (cockTotal > 0){ cumAmount(); }; stats(0, 2, 0, 1); i++; } else { if ((((chance <= 75)) && ((((gender == 2)) || ((gender == 3)))))){ outputMainText((("While you parade around a dark street corner in Tieden wearing your " + currentClothes()) + ", you are finally approached by a rather tall and grizzled Lupan male. After exchanging some coins with you, you’re led into a back-alley with him. Once out of sight, he grabs you roughly and kisses you hard, though difficult as it is with a muzzle. You can feel his long, rough tongue darting inside your mouth, the sour tinge of alcohol still apparent upon it. He takes the time to "), true); if (attireTop == 6){ outputMainText("explore your body with his hands. Through the latex, you can feel his attentions. His hands pay especially close attention to your breasts. You support yourself against a nearby bin, his muzzle going to your neck as he licks and tastes the sweat from your body. You can feel yourself getting damp, your pussy tingling in eager desire. You wait for anything, but, with a hint of disappointment in the back of your mind, he continues to feel his way across your body.\r\rFinally, he lets go of you and turns you around as you tempt him some with a wiggle of your ass. A grin spreads across his face as he pulls his cock out of his pants, the large tool having come from the sheath long ago. With your back turned, you wonder what he’ll do. The wait isn't long before he pushes the pointed tip against your latex covered pussy, making you moan in delight. After a few more seconds of rubbing up and down, he lowers himself slowly and begins to thrust back and forth against your pussy. You close your legs together, giving him a fake pussy to fuck below yours. One which he begins to happily use. You can feel the large member against your thighs and rubbing your pussy, every so often hitting your clit which causes a shiver of electric pleasure to race up your spine. His thrusts began to increase, each time he almost pushes his knot through but stops himself. For you, time is lost as an orgasm rocks through your body. During this time, while the latex around your crotch begins to fill with your pussy juice, you feel his thrusts have gotten faster. There is a look of intense desire on his face, his tongue lolling out the side of his muzzle as he grips your waist tighter. \r\rYou can feel him getting close. With some effort, you manage to pry yourself away from his iron grip and get to your knees. You deftly begin to jerk his cock, using both hands to try and draw him to orgasm. It only takes moment, but soon you can feel his cock pulsing in your hands as he sprays you with his cum. At first it’s overwhelming, but you smile as you bathe in the creamy Lupan seed, letting it wash over you and your latex suit.", false); outputMainText(" His cock twitches a few times at the end before he puts it away. Satisfied, he leaves you in the alley, the thick scent still heavy in the air.", false); doLust(Math.floor(((lib / 4) - (ment / 6)))); } else { outputMainText((((((("pull your " + clothesBottom()) + " ") + pullUD(2)) + " out of his way before pushing you against a wall. You barely have time to put your hands out in front of you and steady yourself, your legs spreading a bit as you realize his intentions. One of his rough hands moves along your waist for a moment as he manages to keep your ") + clothesBottom()) + " where he wants it while he pulls the waistband of his pants down. You smile knowingly at his rather impressive tool, which is already hard as a rock. His large knot is much bigger than a fist and it makes you squirm a little as you wonder if he’ll make you take that too. With no real warning he suddenly plunges himself into your already wet pussy, brutally shoving himself into you."), false); if (vagLimit() > 24){ outputMainText("\r\rYou were prepared for this. Your hungry cunt eagerly envelops and squeezes him. He grabs you by the waist now and begins to pound away into you with a great deal of force. You have been fucked like this before, but it still makes you bite your lip as you feel him push onto your back while his hands move to your breasts. He kneads and squishes them in his hands without remorse while his hips jack-hammer his thick cock into your depths. Very few times can you remember a fuck as great as this. Powerful waves of pleasure run through your body as you feel his hot breath on your neck. \r\rA sharp cry leaves your mouth as you feel something all too familiar... the strain of his knot as it pushes into you. It's then that the fast strokes of the Lupan become even faster and more powerful. You can barely contain yourself as plunges into you over and over again, his claws raking harshly over your skin; tomorrow's reminder of this encounter being etched into your skin brings you only more pleasure. You pant heavily, half in fear that this experienced lover is going to actually give you an orgasm, which only seconds later, hits like a rock. Your muscles tense up around him and you let out a small cry of pleasure as your eyes roll into the back of your head, but he does not stop or even slow down. \r\rEven after recovering from your climax, even after your pussy stops pulsing and trying to milk him, he continues on with his vigorous assault. It's only a front however. It is not long before his breath quickens and his pace becomes a bit more erratic. Just as he hits your buttons for one more climax, he plunges into you and you feel him reach his own. His cum fires into you like a hot stream and soon you find your belly distending a little bit as your pussy fills with his Lupan seed.\r\rIt takes him a few minutes to recover, catching his breath while waiting for his knot to deflate, but soon he pulls from you with a slurping noise and shoves his manhood back into his pants before leaving you in the alley.", false); doLust((-(sen) * 2)); doImpregnate(3); } else { outputMainText("\r\rWith a squeal of pain, you feel as he pushes against the entrance of your womb, your pussy stretches beyond anything you’ve ever experienced before. You look back and in the dim light, you realize that he’s not even fully in yet! Some still remains, as well as the painful looking knot. He mutters as he slowly pulls out of you. You turn around to face him, only to find that he is forcing you on your knees. \r\rSuddenly his cock is in your mouth, his hands grab you roughly around the back of the head! He thrusts hard and strong, the pointed tip of his cock assaults your poor mouth mercilessly. Even if you try to fight, you are no match for the Lupan as he manages to continue his relentless charge down your throat. You feel a strange pain in your jaw and realize that he’s forcing his knot into your maw as well! You struggle and protest, but eventually the large bulb jams into your mouth. It’s hard to breathe, but you quickly fall into a rhythm, breathing through your nose when you can to grab fresh air. Your hands lower to your snatch, which you begin to rub furiously as the intruder in your mouth continues to ram down your throat. It doesn’t take long for the Lupan to near his end. You feel him tense up and you gag horrendously as he shoves himself as far down your throat as possible. You can feel every pulsing vein of his cock on your tongue as you try to push him out, but to no avail. You can feel something hot spray down your throat and a somewhat powerful wave of nausea trembles over you. Once his knot deflates, he pulls from your mouth, pulses of his seed still spray from his cock, filling your mouth as it goes. You swallow it all quickly, if only to get some air. \r\rPanting harshly, you stagger to your feet while he leaves.", false); doLust(Math.floor(((lib / 10) - (ment / 10)))); vagSize++; }; }; hrs = 1; i++; } else { if (chance <= 100){ outputMainText("You spend some time trying to look sexy out by the road when a paint-splattered carriage comes by.\r\rThe driver stops and looks down at you before asking, 'Are you really in need of coin?'. You swear the man looks like a hearse driver, but, you nervously give a little nod.\r\rThe driver gets down and slightly opens the doors before he says, 'Remember to get the subject in the wagon before...' Before he can finish, some crazed looking Lupan girl bursts from the carriage and removes your clothes with unexpected precision and speed. You don't know what she was planning before the driver breaks in, 'Not out where the town is watching!'\r\rThe girl slows to a stop and turns with the face of a scolded child saying, 'Okay...'\r\rThey help you into the carriage and the driver makes some kind of note before setting out to some unknown destination. Upon arriving, you notice that there are paint marks on the house similar to those on the carriage. You are led inside and the girl slams a large canvas onto an easel in front of you and asks, 'Would you mind slowly turning around while I work?'\r\rYou comply with the request and make one rotation before she declares that she's done. She rushes up and hugs you before presenting the completed painting. You're amazed she could paint you so accurately in such a short time... as well as the other stuff that appears to be violating you in several ways at once. You give the little painter a nervous smile before she rushes you out the door with a loud, 'THANK YOU!!!'\r\rThe driver greets you at the door and gives a small jangling pouch, your payment for being a model. 'Let me drive you back where you were,' He says calmly.", true); hrs = 2; i++; }; }; }; }; }; if (currentZone == 4){ if (chance <= 33){ outputMainText("Hanging out at your usual spot, a male Felin saunters up to you. He gives you a silent, appraising look, lingering on your larger curves. 'Not the normal playmate here, are you? Well, you're good enough.' You give a list of the services you offer but are quickly cut off. 'Whoa! I don't know where you've been or what you've done. I just want you to give me a simple handjob. If you do well, I might pay even pay extra.' Accepting the offer, he leads you to an open-air lounge located on a sturdy tree. A quick look down says you're about 35 feet up with a nice view. He makes sure the entrance is blocked before approaching you again.\r\rThe Felin man whips out a larger-than-average dick, the tip covered with soft barbs. 'Let's play,' he commands. Your hands tease at his small thorns which start swelling with arousal. Your fingers play up and down his shaft and a moan escapes both of your mouths. Lust begins to permeate the atmosphere as copious streams of his precum soak into your hands. You pump faster and faster, hands flying on his pulsing member. His thrusts jerk through your palms, sometimes coming close to your face or chest. After a minute of grasping at his large wang, you feel confident enough to take a hand from his cock to massage his churning balls.", true); if ((((dominant == 2)) || ((dominant == 5)))){ outputMainText(" Your psuedo-hooves grope at the soft spheres. Somehow with his lust-riddled mind, he gasps, 'Wow, is this standard with you? You must be very popular!'", false); } else { if (dominant == 3){ outputMainText(" Fondling his sack with precise movements, he shudders. Bits of drool run down his chin as he groans with intense pleasure. 'Really good at this! Have you done this before?'", false); } else { if (dominant == 4){ outputMainText(" The fur of your paw tickles his sensitive scrotum. In between tugs of his penis, he clenches his whole body. 'Damn! Do- do that again!'", false); } else { outputMainText(" You use your discerning fingers to hit all the sweet spots. He is having difficulty focusing his eyes; your handjob must be messing with his head. 'Oh man, this is the good stuff. UNF!'", false); }; }; }; outputMainText("\r\rA sharp movement of your hands stops him mid-breath. His big cock bulges obscenely as he comes closer to his climax. The barbs are almost fully erect and the vivid red color is amazing to see. 'Hold the base, quick!' A tight constriction of the already large wang causes it to swell into a 12 inch monster. It looks less like a penis and more like a crimson barbed arm on the short man. 'OH YEAH! Now, over to the edge, before it gets soft!' You two shuffle to the precipice, in plain view of those who would bother to look up for more than a quick look. At his command, you let go of his cock. He reels back as a massive orgasm shakes through him. Moans and groans come unrestrained from the hut as large spurts of off-white cum rain into the forest below.", false); if (lib > (ment + 15)){ outputMainText(" You can't help but attach your hands to that magnificent cock. The throbbing member beats wildly in your hand, warming it like a bonfire. You begin to pump that softly spiked cock without thinking, wishing nothing more than to keep that cum-hose spraying forever.", false); }; outputMainText("\r\rThe stream of jizz dies down but the Felin is just standing there, caught in the aftershocks of an ultra-intense orgasm. Both of you back off to the center of the lounge when he comes to his senses once again. Luckily, no one noticed or came to scold you for the exhibition. That brazen display of primal lust has aroused you quite a bit!", false); if ((((enticeMod + lib) + ment) / 5) > percent()){ outputMainText("\r\r'Damn, you DID do good. Amazing, in fact. Payment is in those drawers. Like I said there's some extra underneath the cushions over there.' He replaces his loincloth and walks out like a man on top of the world. He calls back, 'I'll try to remember you for next time, but no promises.'", false); tempInt = (tempInt + Math.floor((percent() / 5))); } else { outputMainText("\r\r'Well that was good. Payment is in the drawers there.' He covers himself and saunters out just as he did before.", false); }; doLust(Math.floor((((percent() / 5) + (lib / 2)) - (ment / 4)))); hrs = 2; i++; } else { if ((((chance <= 66)) && ((cockTotal > 0)))){ outputMainText((((((((((((("As you wait on the corner of a bridge in a somewhat less-traveled area of Siz'Calit, a woman catches your eye. She walks with an awkward step... and she's already half naked! She spots you and instantly rushes up to you. The woman grabs you by the shoulders and nearly screams, 'You! Fuck me! I need to be filled NOW!'\r\rBefore you can even attempt to negotiate a price, she's pulling you onto the floor and pulling your " + clothesBottom()) + " off. You've heard that Felin women were forward... but you were never expecting this! As she pulls ") + oneYour(1)) + " ") + cockDesc()) + " cock") + plural(1)) + " up and pulls her thong to the side, you realize why. Her puffy red nethers are a tell-tale sign that she's in heat.\r\rFeminine juices drip from the Felin's cunt onto your ") + cockDesc()) + " erection as she slides herself on you. You wince and grunt a bit as her pussy is surprisingly tight and she wastes no time before starting to bounce herself up and down on you. Her loud moans echo throughout the area as she finally has what she desires. The heat-driven Felin pounds herself against you repeatedly, using you as a living sex toy.\r\rIt doesn't take her long to drive you, and herself, over the edge and her nethers clasp over your ") + cockDesc()) + " member tightly, coaxing out your climax. You groan loudly as you buck up into her, shooting your seed deep inside of her and pushing her to another climax. She claws your shoulder and holds onto you tightly, letting out a feral growl as her heat is finally satisfied.\r\rYou both lay there panting heavily, drenched in your own fluids and sweat, as she pulls herself off of you. Cum and juices drip on the street as she throws some coins into your lap. You watch as she staggers off in an almost drunken looking state, her groin covered in fem cum and a small amount of your seed runs down her thigh. \r\rYou can't help but smirk as you notice that her thong is still out of place."), true); hrs = 1; cumAmount(); doLust((-(sen) * 2)); i++; } else { if ((((chance <= 100)) && ((gender == 2)))){ outputMainText("Walking along the bridges, you are stopped by a gorgeous felin woman. She looks you up and down and gives a nod, saying only, 'Come with me'.\r\rShe leads you to a small cabin on the outskirts of the city. She walks at a quick pace and you have to hurry to keep up with the woman as she doesn’t respond to anything you say. When you reach the cabin, she opens the door and gestures you in first. \r\rAlthough you suspect something is going on here, you decide to go on in. The instant you cross the threshold of the cabin, you feel a quick jolt of pain on the back of your head, and you fall with a thump. \r\rWhen you wake up, you find yourself in what can best be described as a dungeon. There are chains, ropes, and every kind of toy you could possibly imagine... even some you couldn’t! \r\rYou believe you are lying down, and you try to stand up. It is then that you realize that you aren’t lying down. You are chained to an X-cross and completely naked. You squirm in the bindings, only able to rattle the chains a little before you hear a door open.", true); if (ment < 65){ outputMainText("The instant you hear a door open, you begin trying to call for help, quickly realizing you are muzzled, but that doesn’t stop you from making muffled noises. You rattle the chains holding you fiercely, determined to let whoever has you know that you are fully awake. \r\rAs you continue your futile struggle, the woman who brought you here steps into your line of sight, a smile on her face. 'Oh good, you're awake. I was afraid I would have to begin without you.' Her smile turns evil as she walks up to you. She grabs hold of your nipples and tweaks them painfully. A muffled whine escapes through the gag, one of both pleasure and pain. She continues to play with your nipples, massaging your breasts as well for a few minutes before putting a hand between your legs and feeling how moist you are. \r\rYou squeak as she does this, squirming uncomfortably as she tortures your breasts. You give a short gasp when she feels between your legs and you shake your head softly. This is met with a laugh and then the woman leaves your sight. You hear things being moved around. When she walks back into your vision, you simply stare at her. \r\rShe is wearing a strange suit, with feathers on the outside, and she has a strap-on too. She walks right up to you, hugging herself against your bound body. You realize, with a whine, that the feathers were placed in just the right positions that anytime you or she moved, they would tickle you. \r\rShe wastes no time in lining the strap-on up and then thrusting in hard. You are powerless as she pulls out, then slams it back in, over and over in a strong rhythm. It doesn’t take long for you to cum, the only thing faster were your tears of laughter.", false); outputMainText("\r\rYou have no idea how long she rode you or how many times you came as you lost count after the first few. You do know that she rode and tickled you until you passed out. You wake up back in town, neatly tucked behind one of the treetop stores. You are confused at first, but you gasp softly as the memories come back. Instinctively, You look down at yourself, seeing if anything unexpected had been done while you were unconscious. \r\rThe only thing that seems to have changed is that you have been redressed. There's also an additional weight in your pockets, someone has put a fair number of coins in them. Shaking your head, you make your way back to the main part of town, walking a little awkwardly to deal with the unexpected soreness you're suffering.", false); doLust(-100); } else { outputMainText((((("\r\r\rThe instant you hear the door open, you stop squirming and concentrate on slowing down your breathing as someone comes down the stairs. You hear someone walking towards you, stalking almost. Before that person touches you, lightly tracing over your chest with a single sharp claw. \r\r'Mmmm, you certainly were a good catch...' she mutters as she traces her claw down your body, stopping right above your vagina" + plural(2)) + ". You hear her giggle and then feel her breath dance across your pleasure spots. You gasp, unable to keep your guise up but she doesn’t seem to care as her rough tongue begins to run over your wet slit") + plural(2)) + ". She giggles as you start to squirm and just when you are about to cum, she stops. She backs up and watches you for a moment. \r\rYou whine, trying to rub your legs together. She's left you at the brink and you are unable to do anything. You look at the felin with pleading eyes, your gaze begging her to finish. You also try to ask with your voice, but it comes out as nothing more than 'Mph mm mphhh!!' due to the muzzle secured tightly to your face. /r\rThe felin gives you a toothy grin, her eyes full of mischief as she walks out of your line of sight. You hear her going through her things for several moments, sometimes swearing lightly before she let's out a very restrained squeal of excitement. She must have found what she was looking for. When she returns, you see that she is holding two things, each covered by a small piece of cloth. \r\r'Which do you want toy? Number one, or number two?' she asks as she holds up each of the cloth covered objects. 'Nod once if you want number one, twice if you want number two,' she then adds, after you fail to speak again."), false); doLust(20); if (lust < 60){ outputMainText((("\r\rShe gives a grin, pulling the cover from the first item to reveal a box full of white feathers. Your eyes go wide as you realize what she intends to do. You shake your head desperately as she walks towards you with two feathers, one in each hand. Your futile struggles do nothing but make her grin more. She laughs as she begins stroking the feathers all over you body. It doesn't take her long to find where you are most ticklish and assault those areas. You have no way of telling how long the tickling has gone on, hours maybe days for all you know. By the time she is done, your body is soaked with sweat and tears have left trails down your cheeks. Her occasional teasing of your vagina" + plural(2)) + " causes thick streams of your sweet nectar to run down your thighs. \r\rShe takes a step back, smiling evilly as she looks at you before she vanishes from your sight again. You don’t see her come back, though you do hear her coming up from behind. In an instant, your face is covered with an odd smelling cloth. You're too tired to struggle and black out in seconds. \r\rYou wake up in a in a shaded part of town. At first, you are dazed and confused. The light streaming through the leaves stings for a moment before your eyes adjust. You blush heavily as the memories of your encounter return. You look down at yourself and find you are unhurt and dressed in your own clothes. You also notice that your wallet is a bit heavier. As you head back out into the light, you walk with a slight limp. Your body is a little sore from the feather treatment."), false); doLust(((10 + lib) - (ment / 2))); } else { outputMainText("\r\rShe giggles softly, pulling the cloth off of the second item, revealing a lovely, thick strap-on. You gaze at the thing longingly. A whimper of desire manages to squeak past the gag. With an ecstatic grin, she pushes one end into herself before securing the harness around her waist and thighs. She rubs the tip of the thing as if it were a real cock, moaning softly before walking up to you and thrusting the the artificial penis deep into you. You explode at the first thrust, your juices flowing and oozing all over the toy. She continues to thrust long and hard into you, paying no heed to what she knows is only the first of many orgasms to come. You have no idea how long she fucked you. At some point, your mind simply could not handle the pleasure any longer, causing you to pass out. \r\rWhen you wake up, you find yourself back in town, tucked behind a small shop. You are dazed and confused at first, you feel like you've just woken from a nightmare you can't remember. You blush fiercely as the memories of your bound fucking begin flooding back. Looking down at yourself, you see that you are still quite wet, but you are dressed as well. As another surprise, you realize that your wallet is much heavier than before. With a sigh and a shake of your head, you continue with your day.", false); doLust((-(lust) / 2)); }; }; hrs = 5; i++; }; }; }; }; if (currentZone == 6){ if (chance <= 100){ outputMainText("You walk around, hoping to catch someone's eye. A nondescript figure eventually approaches you, takes you out as an escort, and spends a few hours with you, resulting in nothing worth mentioning save your payment.", true); hrs = 3; i++; }; }; }; outputMainText((("\r\r\rFor your efforts and skill, you have gained " + tempInt) + " coins!"), false); doCoin(tempInt); doEnd(); }; } public function advancedAlchemy(more:int):void{ var more = more; showPage(true, (50 + more)); buttonWrite(4, "&#60;&#60;"); buttonWrite(8, ">>"); buttonWrite(12, "Return"); if (more == 1){ viewButtonOutline(1, 1, 1, 0, 1, 1, 1, 0, 1, 0, 0, 1); viewButtonText(1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1); buttonWrite(1, "Red Dye"); buttonWrite(2, "S Baby Free"); buttonWrite(3, "S Pot Pot"); buttonWrite(5, "S Gen Swap"); buttonWrite(6, "S Maso Pot"); buttonWrite(7, "Puss Juice"); buttonWrite(9, "Pheromone"); outputMainText("Click on an item you would like to create.", true); outputMainText("\r\rRed Dye - Dye that will turn your hair red.\rRequires 1 Pink Ink and 3 Red Mush.", false); if (alchemistLevel >= 7){ Choice2.visible = true; Choice3.visible = true; outputMainText("\r\rSuperior Baby Free Potion - This potion really has no babies in it I swear! Seriously. Please believe me! If you drink it you'll be nearly baby free as well for over a week!\rRequires 1 Neuter and 1 Puss Fruit.", false); outputMainText("\r\rSuperior Potency Potion - Not happy with the amount of cum you're producing with your measly testicles? This will definitely kick them... into gear!\rRequires 3 S Ball Swell and 1 Cum Bottle.", false); }; if (alchemistLevel >= 8){ Choice5.visible = true; Choice6.visible = true; outputMainText("\r\rSuperior Gender Swap Potion - If you've ever wondered how the other sex feels, this is a great way to do it. And the best part is your endowments will be of equal proportion! Unless you're both, in which case your proportions will swap, or androgynous, in which case who knows which gender you'll end up as.\rRequires 1 Puss Fruit, 1 Co-Sn Ven, 1 Milk C Pois, and 1 Cock Carv.", false); outputMainText("\r\rSuperior Masochism Potion - This little drink messes up your nervous system for a while, making you perceive all damage as pleasure instead.\rRequires 1 Kinky Carr, 1 Rejuv Pot, and 1 Trinket.", false); }; if (mistressRep > 10){ Choice7.visible = true; outputMainText("\r\rConcentrated Pussy Fruit Juice - A recipe learned from the felin mistress in Siz'Calit, this mixture increases the potency of the Pussy Fruit and guarantees some interesting reactions. Requires 6 Puss Fruit and 1 Sweet Sap.", false); }; if (knowPheromone == true){ Choice9.visible = true; outputMainText("\r\rStrong Pheromone - A recipe learned from an elderly lupan fisherman at the lake outside of Tieden, this concoction supposedly attracts fish quite well and makes great bait. However, due to some missing notes, your results may be a bit more... potent than advertised. Requires 1 Charmed Egg, 1 Red Mush, and 1 Trinket.", false); }; }; doListen = function ():void{ if (more == 1){ if (buttonChoice == 1){ makeAlchemy(520, 3, more); }; if (buttonChoice == 2){ makeAlchemy(521, 3, more); }; if (buttonChoice == 3){ makeAlchemy(522, 3, more); }; if (buttonChoice == 5){ makeAlchemy(518, 3, more); }; if (buttonChoice == 6){ makeAlchemy(519, 3, more); }; if (buttonChoice == 7){ makeAlchemy(221, 3, more); }; if (buttonChoice == 9){ makeAlchemy(532, 3, more); }; }; if (buttonChoice == 4){ if (more == 2){ advancedAlchemy(1); } else { advancedAlchemy(more++); }; }; if (buttonChoice == 8){ if (more == 1){ advancedAlchemy(2); } else { advancedAlchemy(more--); }; }; if (buttonChoice == 12){ showPage(false, 1); doAlchemy(); }; }; } public function doSell():void{ var sell:int; bc(); sell = 0; viewButtonOutline(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1); viewButtonText(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1); outputMainText("Click on an item you would like to sell.", true); i = 1; while (i < 13) { buttonWrite(i, itemName(itemID(i))); if (stackAmount(i) > 1){ viewAmount(i, true); amountWrite(i, (("" + stackAmount(i)) + "")); }; i++; }; buttonWrite(12, "Return"); buttonWrite(4, "&#60;&#60;"); buttonWrite(8, ">>"); showPage(true, 1); doListen = function ():void{ if (((((((!((buttonChoice == 4))) && (!((buttonChoice == 8))))) && (!((buttonChoice == 12))))) && (!((itemID(buttonChoice) == 0))))){ hideAmount(); if (stackAmount(buttonChoice) < 2){ if (itemValue(itemID(buttonChoice)) == 0){ outputMainText("You cannot sell the selected item. Either it is not yours to sell or it is not something the vendor will accept. Please select another item.", true); doSell(); } else { outputMainText((((itemName(itemID(buttonChoice)) + " sells for ") + itemValue(itemID(buttonChoice))) + ".\r\rAre you sure you want to sell it?"), true); sell = buttonChoice; buttonConfirm(); showPage(false, 1); doListen = function ():void{ if (buttonChoice == 6){ trace(sell); trace(currentItems); doCoin(itemValue(itemID(sell))); loseItem(sell); trace(itemName(sell)); trace(stackArray2); trace(itemArray2); doSell(); } else { doSell(); }; }; }; } else { outputMainText((((itemName(itemID(buttonChoice)) + " sells for ") + itemValue(itemID(buttonChoice))) + " each.\r\rHow many would you like to sell?"), true); sell = buttonChoice; viewButtonOutline(1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0); viewButtonText(1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0); if (stackAmount(buttonChoice) > 5){ Choice5.visible = true; Choice5Outline.visible = true; }; if (stackAmount(buttonChoice) > 10){ Choice7.visible = true; Choice7Outline.visible = true; }; buttonWrite(1, "1"); buttonWrite(3, "2"); buttonWrite(5, "5"); buttonWrite(7, "10"); buttonWrite(9, "All"); buttonWrite(11, "None"); showPage(false, 1); doListen = function ():void{ if (buttonChoice == 1){ doCoin(itemValue(itemID(sell))); loseManyItem(itemID(sell), 1); doSell(); }; if (buttonChoice == 3){ doCoin((2 * itemValue(itemID(sell)))); loseManyItem(itemID(sell), 2); doSell(); }; if (buttonChoice == 5){ doCoin((5 * itemValue(itemID(sell)))); loseManyItem(itemID(sell), 5); doSell(); }; if (buttonChoice == 7){ doCoin((10 * itemValue(itemID(sell)))); loseManyItem(itemID(sell), 10); doSell(); }; if (buttonChoice == 9){ doCoin((stackAmount(sell) * itemValue(itemID(sell)))); loseManyItem(itemID(sell), stackAmount(sell)); doSell(); } else { doSell(); }; }; }; } else { if (buttonChoice == 12){ hideAmount(); showPage(false, 1); doShop(); } else { if (buttonChoice == 4){ if (currentItems == 1){ currentItems = 3; } else { if (currentItems == 2){ currentItems = 1; } else { if (currentItems == 3){ currentItems = 2; }; }; }; hideAmount(); showPage(true, 1); doSell(); } else { if (buttonChoice == 8){ if (currentItems == 1){ currentItems = 2; } else { if (currentItems == 2){ currentItems = 3; } else { if (currentItems == 3){ currentItems = 1; }; }; }; hideAmount(); showPage(true, 1); doSell(); }; }; }; }; }; } public function clothesDescription(ID:int):String{ var tempStr:String; tempStr = "CLOTHES NAME ERROR"; if (ID == 1){ tempStr = "A generic shirt with no special attributes.\r\rTakes top clothes slot"; }; if (ID == 2){ tempStr = "A generic pair of pants with no special attributes.\r\rTakes bottom clothes slot"; }; if (ID == 3){ tempStr = "A rather revealing bikini top/s, covering all your breasts, looking good and hugging tightly to improve enticement and sensitivity, but reduces your mentality and milk production.\r\rTakes top clothes slot"; }; if (ID == 4){ tempStr = "A rather revealing bikini bottom, covering your groin, looking good and hugging tightly to improve enticement and sensitivity, but reduces your mentality and cum production.\r\rTakes bottom clothes slot."; }; if (ID == 5){ tempStr = "A courtly dress that's more about giving a good impression than a slutty one, improving mentality, but the caution to prevent ripping reduces strength.\r\rTakes both top and bottom clothes slots."; }; if (ID == 6){ tempStr = "A suit made of a thin, very tight material that covers most of your body and greatly improves enticement and sensitivity, but also reduces mentality, run chance, cum and milk production.\r\rTakes both top and bottom clothes slots."; }; if (ID == 7){ tempStr = "A modest skirt, very helpful in terms of function. Improves run chance, strength, and cum production, but reduces mentality and increases pregnancy chance with its 'ease of access'.\r\rTakes bottom clothes slot."; }; if (ID == 8){ tempStr = "A pair of shorts, very helpful in terms of function. Improves run chance and strength, but reduces libido with its lackluster appearance.\r\rTakes bottom clothes slot."; }; if (ID == 9){ tempStr = "A buttoned shirt that allows your breasts to produce more milk while looking good to increase mentality, but reduces sensitivity and strength.\r\rTakes top clothes slot."; }; if (ID == 10){ tempStr = "A diaper that helps soak up some of your moistness and makes your hips look bigger, but reduces mentality.\r\rWarning: Removing the diaper after wearing it could potentially make you even wetter than before you put it on, your body depending too much on it.\r\rTakes bottom clothes slot."; }; if (ID == 11){ tempStr = "A poofy diaper that helps soak up a lot of your moistness and makes both your hips and butt look bigger, but reduces mentality and libido.\r\rWarning: Removing the poofy diaper after wearing it could potentially make you even wetter than before you put it on, your body depending too much on it.\r\rTakes bottom clothes slot."; }; if (ID == 12){ tempStr = "A casual dress that gives your body a lot of exposure, improving sensitivity, cum production, and libido, but reduces run chance, strength, and increases pregnancy chance.\r\rTakes both top and bottom clothes slots."; }; if (ID == 13){ tempStr = "A skimpy dress that really hugs your curves, improvin sensitivity, enticement, and libido, but reduces strength and mentality with its slutty appearance, and increases pregnancy chance with its ease of access.\r\rTakes both top and bottom clothes slots."; }; if (ID == 14){ tempStr = "A short skirt that's more attractive than modest, improving cum production, sensitivity, and enticement, but reduces mentality and increases pregnancy chance with its ease of access.\r\rTakes bottom clothes slot."; }; if (ID == 15){ tempStr = "A pair of short shorts that are more skimpy than funtionality, hugging tightly to improve sensitivity, enticement, and run chance, but reduces cum production, mentality, and strength.\r\rTakes bottom clothes slot."; }; if (ID == 16){ tempStr = "A loin cloth that is more suited for the simplicity of the wild, but also a bit uncivilized, improving cum production, run chance, strength, and sensitivity, but reduces mentality and increases pregnancy chance.\r\rTakes bottom clothes slot."; }; if (ID == 17){ tempStr = "A one-piece bathing suit that covers both chest and groin and is great for swimming, it acts as a barrier to liquids. The suit prevents your sexual lubrication from drying away as easily, thus increasing your moistness, as well as increasing strength and sensitvity while reducing mentality and pregnancy chance.\r\rTakes both top and bottom clothes slots."; }; if (ID == 18){ tempStr = "A simple muscle shirt that is more functional than civilized. Increases strength but reduces mentality, and makes your chest look slightly bigger.\r\rTakes top clothes slot."; }; if (ID == 19){ tempStr = "A corset that ties tightly around your waist, greatly magnifying your bust and hips, increasing your mentality and libido, but is also quite restrictive and hard to breath in, reducing strength and your maximum HP.\r\rTakes top clothes slot."; }; if (ID == 20){ tempStr = "A pair of silken panties, this underwear looks and feels good, amplifying your vulva size, increasing your enticement, libido, and sensitivity, but also reduces mentality, cum production, and run chance as you're afraid of tearing them.\r\rTakes bottom clothes slot."; }; return (tempStr); } public function doTailor():void{ var buy:int; bc(); buy = 0; viewButtonOutline(1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1); viewButtonText(1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1); i = 1; while (i < 12) { if (((!((i == 4))) && (!((i == 8))))){ buttonWrite(i, clothesName(clothesID(i))); }; i++; }; buttonWrite(4, "Buy"); buttonWrite(12, "Return"); outputMainText("Click on a piece of clothing to view a description for the piece. If you would like to purchase it, click the Buy button.\r\rNote: Buying clothes automatically replaces what you're already wearing. You cannot sell outfits.", true); doListen = function ():void{ if (((((((!((buttonChoice == 4))) && (!((buttonChoice == 8))))) && (!((buttonChoice == 12))))) && (!((clothesID(buttonChoice) == 0))))){ outputMainText((((clothesDescription(clothesID(buttonChoice)) + "\r\rCost: ") + clothesValue(clothesID(buttonChoice))) + " coins."), true); buy = buttonChoice; }; if ((((buttonChoice == 4)) && (!((buy == 0))))){ outputMainText((("\r\rAre you sure you would like to buy " + clothesName(clothesID(buy))) + "?"), false); if (attireTop == attireBot){ outputMainText((("\r\rBe wary, replacing your " + clothesTop()) + " with something that only takes a single clothes slot, your other clothes slot will default to the basic shirt/pants."), false); }; buttonConfirm(); doListen = function ():void{ if (buttonChoice == 6){ if (coin < clothesValue(clothesID(buy))){ outputMainText((((((("Sorry, but you only have " + coin) + " coins. You require at least ") + (clothesValue(clothesID(buy)) - coin)) + " more coins to purchase ") + clothesName(clothesID(buy))) + "."), true); doNext(); doListen = function ():void{ doTailor(); }; } else { clothesChange(clothesID(buy)); doCoin(-(clothesValue(clothesID(buy)))); doTailor(); }; } else { doTailor(); }; }; }; if (buttonChoice == 12){ doReturn(); }; }; } public function doBoobMasturbate():void{ var getMilk:int; if (ment >= (lib - 10)){ outputMainText((((((((((("You sneak off to the private place where you sleep in " + regionName(currentZone)) + ". Carefully, so as to not let anybody hear, you pull ") + pullUD(1)) + " your ") + clothesTop()) + " and gently knead your ") + boobDesc()) + " breasts.\r\rHunching over at the side of the bed, you massage your ") + nipDesc()) + " nipples, tugging and squeezing them each with"), true); }; if ((((ment < (lib - 10))) && ((ment >= (lib - 25))))){ outputMainText((((((((((("You quickly head off to the private place where you sleep with your intentions clear as those around " + regionName(currentZone)) + " can easily see you rub your ") + boobDesc()) + " chest through your ") + clothesTop()) + ". Before you even reach your destination, your hands are already reaching under your ") + clothesTop()) + " to play with your ") + nipDesc()) + " nipples, giving someone a good view of your under-boob.\r\rBy the time you're hidden inside, both hands are fondling your chest, kneading and massaging your nipples with"), true); }; if ((((ment < (lib - 25))) && ((ment >= (lib - 50))))){ outputMainText((((((((((("Your " + boobDesc()) + " breasts heave with your heavy breathing as you think about playing with them. You don't think you can reach the private place where you sleep without your hands diving underneath your ") + clothesTop()) + " and massaging them roughly.\r\rInstead, you duck into one of the more hidden corners of ") + regionName(currentZone)) + " and without even taking off your ") + clothesTop()) + ", you grope your chest through the fabric before reaching underneath, kneading and massaging your ") + nipDesc()) + " nipples with"), true); }; if (ment < (lib - 50)){ outputMainText((((((((((("Without a second thought, right in the middle of " + regionName(currentZone)) + " you pull ") + pullUD(1)) + " your ") + clothesTop()) + ", rubbing a hand across your ") + boobDesc()) + " breasts and making them jiggle obscenely.\r\rPeople gasp and stare as you knead and massage your ") + nipDesc()) + " nipples with"), true); }; if (nippleSize <= 25){ outputMainText(" your fingers", false); } else { if ((((nippleSize > 25)) && ((nippleSize <= 60)))){ outputMainText(" your hands", false); } else { if ((((nippleSize > 60)) && ((nippleSize <= 180)))){ outputMainText(" both hands", false); } else { if (nippleSize > 180){ outputMainText(" the nearby wall", false); }; }; }; }; outputMainText(" until they begin to feel warm and tingly.", false); if (boobTotal == 4){ outputMainText(" Your hands even double their work as they fondle your second set of breasts as well, molding and massaging them just as much as the first pair, feeling twice as much pleasure.", false); }; if (boobTotal == 6){ outputMainText(" Your hands have their work cut out for them as they attempt to give all 6 of your breasts attention, running up and down, from chest to belly, caressing them restlessly as you heave to control yourself just a little longer.", false); }; if (sen <= 30){ outputMainText(" Unfortunately, you can't really come as your breasts simply aren't sensitive enough. But, it does feel nice as you continue to play with your nipples.", false); doLust(-(Math.floor((sen / 2)))); } else { if (lust <= 30){ outputMainText("\r\rSlowly,", false); }; if ((((lust > 30)) && ((lust <= 70)))){ outputMainText("\r\rQuickly,", false); }; if (lust > 70){ outputMainText("\r\rAlmost instantly,", false); }; outputMainText(" your whole body begins to quiver,", false); if ((((((cockMoist > 0)) && ((cockMoist <= 3)))) || ((((vagMoist > 0)) && ((vagMoist <= 3)))))){ outputMainText(((" your " + clothesBottom()) + " growing a tad moist,"), false); }; if ((((((cockMoist > 3)) && ((cockMoist <= 6)))) || ((((vagMoist > 3)) && ((vagMoist <= 6)))))){ outputMainText(((" your " + clothesBottom()) + " growing wet,"), false); }; if ((((((cockMoist > 6)) && ((cockMoist <= 9)))) || ((((vagMoist > 6)) && ((vagMoist <= 9)))))){ outputMainText(((" your " + clothesBottom()) + " becoming soaked through,"), false); }; if ((((((cockMoist > 9)) && ((cockMoist <= 12)))) || ((((vagMoist > 9)) && ((vagMoist <= 12)))))){ outputMainText(((((" your " + clothesBottom()) + " becoming drenched, your ") + buttDesc()) + " bum absolutely swamped,"), false); }; outputMainText(" being wracked by a boobgasm.", false); if (lust > 20){ doSexP(5); }; doLust(-(sen)); }; if (lactation > 0){ hrs++; getMilk = milkAmount(1); outputMainText("\r\rMilk ", false); if (getMilk <= 500){ outputMainText("spits", false); }; if ((((getMilk > 500)) && ((getMilk <= 1000)))){ outputMainText("squirts", false); }; if ((((getMilk > 1000)) && ((getMilk <= 2000)))){ outputMainText("spews", false); }; if ((((getMilk > 2000)) && ((getMilk <= 8000)))){ outputMainText("gushes", false); }; if ((((getMilk > 8000)) && ((getMilk <= 19000)))){ outputMainText("erupts", false); }; if (getMilk > 19000){ outputMainText("explodes", false); }; outputMainText(" from your nipples and dribbles down your front as you begin to lactate. You continue to pump it out in ", false); if (getMilk <= 500){ outputMainText("small dribbles", false); }; if ((((getMilk > 500)) && ((getMilk <= 1000)))){ outputMainText("spurts", false); }; if ((((getMilk > 1000)) && ((getMilk <= 2000)))){ outputMainText("sprays", false); }; if ((((getMilk > 2000)) && ((getMilk <= 8000)))){ outputMainText("jets", false); }; if ((((getMilk > 8000)) && ((getMilk <= 19000)))){ outputMainText("steady streams", false); }; if (getMilk > 19000){ outputMainText("small floods", false); }; outputMainText(((", relieving your " + boobDesc()) + " breasts of their supply"), false); if (dominant == 5){ outputMainText(" as you let out a contented 'mooo~'", false); }; outputMainText(".", false); } else { if (ment >= (lib - 10)){ outputMainText("\r\rYou quietly heave as you attempt to clean up any mess you have made, hoping the bedsheets will dry quickly. Except for some stains, you don't think anybody will catch on to your lewd actions, and you continue on with your day.", false); }; if ((((ment < (lib - 10))) && ((ment >= (lib - 25))))){ outputMainText("\r\rComing down from your high, you clean up your mess the best you can, though its likely some of your fluids have seeped in somewhere. At least, you're cautious of cleaning any mess up with your sheets. And as you leave the place, one of your neighbors eyes you with a surprised look. You probably left a blotch or few on your clothes somewhere...", false); }; if ((((ment < (lib - 25))) && ((ment >= (lib - 50))))){ outputMainText((("\r\rYou realize your hiding place probably echoed your moans as you come to your senses. You also have the slight problem of milk blotching your " + clothesTop()) + "... As you attempt to casually walk away, some nearby strangers blink at you curiously, not quite sure what they just heard. Rubbing you chest through the fabric once more, you dash away hoping it will dry."), false); }; if (ment < (lib - 50)){ outputMainText((("\r\rGasping, you blink and look around you. You've gathered quite the crowd, especially some men, and they all gaze out you in amazement, having given them quite the show. A few tug at their own groins, ducking away from the rest, while others don't look so happy at what you have done, especially the ones with children beside them. You pull back your " + clothesTop()) + ", milk splashing everywhere and slink away, trying to avoid any more stares. Although, your heart pounds within your chest at the thought of what you had just done..."), false); }; }; if ((((getMilk > 0)) && ((getMilk < 1000)))){ outputMainText((("\r\r\rYou produced " + getMilk) + " ml of milk!"), false); } else { if ((((getMilk > 0)) && ((getMilk >= 1000)))){ outputMainText((("\r\r\rYou produced " + decGet((getMilk / 1000), 1)) + " liters of milk!"), false); }; }; if (lactation > 0){ if (((nipplePlay + 8) / (lactation * 30)) > 1){ lactChange(1, 1); outputMainText("\r\rYour breasts ache from all the milking, growing larger to meet the demand...", false); boobChange(1); }; nipplePlay = (nipplePlay + 8); }; hrs++; doEnd(); } public function boobChange(sizeChange:int):void{ breastSize = (breastSize + sizeChange); nippleSize = (nippleSize + sizeChange); } public function specialKOWin():void{ if (enemyID == 303){ outputMainText("\r\rSaddened with your rough treatment, you don't seem to want to play like she does. A bit hurt, she jumps back into the ocean, leaving nothing but a gob of pink goop behind.", false); } else { if ((((enemyID == 304)) || ((enemyID == 305)))){ outputMainText((((("\r\rAs the " + enemyName()) + " passes out from all the pain, you find yourself beginning to grow. The effects of the bottle seems to wear off as you return to your normal height. Donning your outfit once again, however, it feels a little loose. It seems as though you're still missing a couple inches in height... On the other hand, however, inspecting the ") + enemyName()) + "'s body, you find something wedged in a rather lewd location."), false); } else { if (enemyID == 102){ outputMainText("\r\rFeeling itself about to dissipate from your attacks, the dessicating dust devil feebly spins away, leaving behind some of the sand it can no longer support.", false); } else { outputMainText((("\r\rYou have made the " + enemyName()) + " pass out from all the pain."), false); }; }; }; } public function hairstyleLength(ID:int):Boolean{ var tempBool:Boolean; tempBool = false; if (ID == 1){ tempBool = true; }; if (ID == 2){ tempBool = true; }; if (ID == 3){ tempBool = true; }; if (ID == 4){ tempBool = true; }; if (ID == 8){ tempBool = true; }; if (ID == 9){ tempBool = true; }; if (ID == 10){ tempBool = true; }; if (ID == 11){ tempBool = true; }; if (ID == 13){ tempBool = true; }; return (tempBool); } public function stackSlotWrite(slotNumber:int, slotItem:int):void{ if ((((slotNumber < 36)) && ((slotNumber > 24)))){ currentItems = 3; slotNumber = (slotNumber - 24); }; if ((((slotNumber < 24)) && ((slotNumber > 12)))){ currentItems = 2; slotNumber = (slotNumber - 12); }; if (currentItems == 1){ stackArray1[slotNumber] = (stackArray1[slotNumber] + slotItem); }; if (currentItems == 2){ stackArray2[slotNumber] = (stackArray2[slotNumber] + slotItem); }; if (currentItems == 3){ stackArray3[slotNumber] = (stackArray3[slotNumber] + slotItem); }; } public function passiveItem(ID:int):void{ if (ID == 101){ rapeMod = (rapeMod + 10); }; if (ID == 102){ runMod = (runMod + 20); }; if (ID == 200){ vagMoist = (vagMoist + 4); cockMoist = (cockMoist + 4); stats(0, 0, 0, 10); }; if (ID == 215){ rapeMod = (rapeMod + 5); runMod = (runMod + 5); milkHPMod = (milkHPMod + 5); }; if (ID == 233){ carryMod = (carryMod + 75); }; if (ID == 234){ pregRate = (pregRate + 0.5); minLust = (minLust + 10); hips = (hips + 10); doLust(0); }; if (ID == 236){ SexPMod = (SexPMod + 0.5); changeMod = (changeMod + 0.3); }; } public function domName():String{ var tempStr:String; tempStr = ("DOMINANT ERROR " + dominant); if (dominant == 1){ tempStr = "human"; }; if (dominant == 2){ tempStr = "horse"; }; if (dominant == 3){ tempStr = "wolf"; }; if (dominant == 4){ tempStr = "cat"; }; if (dominant == 5){ tempStr = "cow"; }; if (dominant == 6){ tempStr = "lizard"; }; if (dominant == 7){ tempStr = "bunny"; }; return (tempStr); } public function goodsID(goodsSlot:int):int{ var goodNum:int; goodNum = 0; if (currentZone == 1){ if (goodsSlot == 1){ goodNum = 104; }; if (goodsSlot == 2){ goodNum = 111; }; if (goodsSlot == 3){ goodNum = 116; }; if (goodsSlot == 5){ goodNum = 500; }; if (goodsSlot == 6){ goodNum = 501; }; if (goodsSlot == 7){ goodNum = 108; }; if (goodsSlot == 9){ goodNum = 110; }; if (goodsSlot == 10){ goodNum = 115; }; if (goodsSlot == 11){ goodNum = 121; }; }; if (currentZone == 2){ if (goodsSlot == 1){ goodNum = 102; }; if (goodsSlot == 2){ goodNum = 112; }; if (goodsSlot == 3){ goodNum = 117; }; if (goodsSlot == 5){ goodNum = 106; }; if (goodsSlot == 9){ goodNum = 110; }; if (goodsSlot == 10){ goodNum = 115; }; if (goodsSlot == 11){ goodNum = 122; }; }; if (currentZone == 3){ if (goodsSlot == 1){ goodNum = 101; }; if (goodsSlot == 2){ goodNum = 113; }; if (goodsSlot == 3){ goodNum = 118; }; if (goodsSlot == 5){ goodNum = 120; }; if (goodsSlot == 9){ goodNum = 110; }; if (goodsSlot == 10){ goodNum = 115; }; if (goodsSlot == 11){ goodNum = 123; }; }; if (currentZone == 4){ if (goodsSlot == 2){ goodNum = 114; }; if (goodsSlot == 3){ goodNum = 119; }; if (goodsSlot == 5){ goodNum = 103; }; if (goodsSlot == 6){ goodNum = 105; }; if (goodsSlot == 9){ goodNum = 110; }; if (goodsSlot == 10){ goodNum = 115; }; if (goodsSlot == 11){ goodNum = 124; }; }; if (currentZone == 6){ if (goodsSlot == 1){ goodNum = 109; }; if (goodsSlot == 2){ goodNum = 126; }; if (goodsSlot == 3){ goodNum = 127; }; if (goodsSlot == 5){ goodNum = 103; }; if (goodsSlot == 6){ goodNum = 230; }; if (goodsSlot == 9){ goodNum = 110; }; if (goodsSlot == 10){ goodNum = 115; }; if (goodsSlot == 11){ goodNum = 125; }; }; return (goodNum); } public function affinityChange():void{ var chance:int; var domCheck:int; var second:int; var maxNonScale:*; var maxNonSkin:*; var maxNonFur:*; var maxTail:*; var maxNonTail:*; var twoBoob:int; var sixBoob:int; var fourBoob:int; var nonTwoBoob:int; var nonSixBoob:int; var nonFourBoob:int; outputMainText("Something feels odd...", true); trace(((((((((((human + " ") + horse) + " ") + wolf) + " ") + cat) + " ") + cow) + " ") + rabbit)); chance = percent(); domCheck = Math.max((humanAffinity + human), (horseAffinity + horse), (wolfAffinity + wolf), (catAffinity + cat), (cowAffinity + cow), (lizardAffinity + lizard), (rabbitAffinity + rabbit)); if ((((domCheck == (humanAffinity + human))) && ((human >= 0)))){ dominant = 1; } else { if ((((domCheck == (horseAffinity + horse))) && ((horse >= 0)))){ dominant = 2; } else { if ((((domCheck == (wolfAffinity + wolf))) && ((wolf >= 0)))){ dominant = 3; } else { if ((((domCheck == (catAffinity + cat))) && ((cat >= 0)))){ dominant = 4; } else { if ((((domCheck == (cowAffinity + cow))) && ((cow >= 0)))){ dominant = 5; } else { if ((((domCheck == (lizardAffinity + lizard))) && ((lizard >= 0)))){ dominant = 6; } else { if ((((domCheck == (rabbitAffinity + rabbit))) && ((rabbit >= 0)))){ dominant = 7; }; }; }; }; }; }; }; if (((((humanAffinity + human) >= 40)) && ((humanAffinity < 40)))){ outputMainText("\r\rYour body feels quite... adaptive? There's a strange sense of being more susceptible to change", false); changeMod = (changeMod + 0.5); }; if (((((humanAffinity + human) < 40)) && ((humanAffinity >= 40)))){ outputMainText("\r\rYour body feels less ready to bend to your surroundings as much as it had anymore.", false); changeMod = (changeMod - 0.5); }; if (((((horseAffinity + horse) >= 40)) && ((horseAffinity < 40)))){ if (cockTotal > 0){ outputMainText((((((((("\r\rYour " + clothesBottom()) + " grows tight, filling with extra cockflesh. Opening the ") + clothesBottom()) + ", your cock") + plural(1)) + " spill") + plural(3)) + " out, dangling while swelling larger and larger. The growth slows to a halt, much, much longer than before. 'Hung like a horse' seems like the appropriate phrase. And you're also going to have to sneak back into town while you hide your perverse excess flesh, rushing to a tailor to refit you."), false); }; if (vagTotal > 0){ outputMainText("\r\rDoubling over, you hug your belly as it begins to cramp. You can clearly feel your vaginal flesh grow within, the walls growing much deeper. By the time it's over, you feel somewhat like a mare, able to take cocks much larger than you could have before...", false); }; cockSizeMod = (cockSizeMod + 1); vagSizeMod = (vagSizeMod + 1); vagBellyChange(0, 0); }; if (((((horseAffinity + horse) < 40)) && ((horseAffinity >= 40)))){ if (cockTotal > 0){ outputMainText((((((("\r\rYour " + clothesBottom()) + " feel baggier. Opening the ") + clothesBottom()) + ", your cock") + plural(1)) + " shrinking towards your groin, losing a great deal of length. It seems like you have lost your equine engorgement."), false); }; if (vagTotal > 0){ outputMainText("\r\rYour belly feels rather empty all of a sudden. Placing your hand over it, you can feel the vaginal flesh recede, no longer built like mare.", false); }; cockSizeMod = (cockSizeMod - 1); vagSizeMod = (vagSizeMod - 1); vagBellyChange(0, 0); }; if (((((wolfAffinity + wolf) >= 40)) && ((wolfAffinity < 40)))){ if (cockTotal > 0){ outputMainText((((((((((((("\r\rA sudden wave of lust washes over you, your cock" + plural(1)) + " growing stiff in your ") + clothesBottom()) + ". You quickly open open your ") + clothesBottom()) + " to see what's going on. Within, the base") + plural(1)) + " of your shaft") + plural(1)) + " swell") + plural(3)) + ". In an instant, you're suprised by spurts of cum that shower you, a small volley from a quick unexpected orgasm. Wiping your eyes so you can see, the swelling persists as you continue to come for a while. It would be very difficult to remove your cock from a hot hole with a large 'knot' like that, until finished draining your seed."), false); }; knot = true; cumMod = (cumMod + 0.5); }; if (((((wolfAffinity + wolf) < 40)) && ((wolfAffinity >= 40)))){ if (cockTotal > 0){ outputMainText((((((((((((((((((("\r\rAn odd draining fills your " + clothesBottom()) + ". Looking within, you see your cock") + plural(1)) + " grow slightly stiff, your knot") + plural(1)) + " swelling. Pre lazily seeps from your urethra") + plural(1)) + " as the knot") + plural(1)) + " deflate") + plural(1)) + " immediately while your cock") + plural(1)) + " remain") + plural(3)) + " stiff. It seems as though you have lost your knot") + plural(1)) + "."), false); }; knot = false; cumMod = (cumMod - 0.5); }; if (((((catAffinity + cat) >= 40)) && ((catAffinity < 40)))){ if (vagTotal > 0){ outputMainText((((("\r\rYour " + clothesBottom()) + " grows slightly moist, your cunt") + plural(2)) + " burning with arousal. The feeling quickly fades, but something tells you your reproductive instincts might occasionally take over..."), false); }; if (heat < 1){ heatMaxTime = 96; heatTime = 96; heat++; } else { if (heat >= 1){ heatMaxTime = (heatMaxTime - 12); heat++; }; }; }; if (((((catAffinity + cat) < 40)) && ((catAffinity >= 40)))){ if (vagTotal > 0){ outputMainText(((" You also feel your vagina" + plural(2)) + " cool a little, no longer as eager to be impregnated on certain days."), false); }; if (heat >= 2){ heatMaxTime = (heatMaxTime + 12); }; heat--; }; trace(("cow " + cowAffinity)); trace((cowAffinity + cow)); if (((((cowAffinity + cow) >= 10)) && ((cowAffinity < 10)))){ outputMainText((("\r\rYour nipples stiffen beneath your " + clothesTop()) + ". They protrude nearly half an inch further than before!"), false); nippleSize = (nippleSize + 2); milkMod = (milkMod + 2); }; if (((((cowAffinity + cow) >= 25)) && ((cowAffinity < 25)))){ outputMainText((("\r\rYour nipples stiffen beneath your " + clothesTop()) + ". They protrude an inch further than before! And your hips seem slightly broader..."), false); lactChange(1, 1); nippleSize = (nippleSize + 5); hips = (hips + 4); milkMod = (milkMod + 2); }; if (((((cowAffinity + cow) >= 40)) && ((cowAffinity < 40)))){ outputMainText((("\r\rYour nipples squirm within your " + clothesTop()) + ". They've grown over an inch and a half in length! And your hips feel like they're more 'square' than before..."), false); lactChange(1, 1); nippleSize = (nippleSize + 8); hips = (hips + 6); milkMod = (milkMod + 2); }; if (((((cowAffinity + cow) >= 55)) && ((cowAffinity < 55)))){ outputMainText((((((("\r\rJust above your groin, your belly begins to feel bloated. You wince as it pushes against your " + clothesBottom()) + ", especially noticing the increased sensitivity of four spots in particular. Before you can act, your ") + clothesBottom()) + " tears at the waist, as a mound crashes through. Hanging naked and free, with four teats twice as long as your nipples, an udder about twice as large as your chest, dripping with milk. You'll definitely be getting a special bra or perhaps adjust your ") + clothesBottom()) + " when you get back to town, at least to account for your surprisingly wider hips... "), false); lactChange(1, 2); lactChange(2, lactation); hips = (hips + 8); udders = true; udderSize = (2 * breastSize); teatSize = (2 * nippleSize); }; if (((((cowAffinity + cow) < 10)) && ((cowAffinity >= 10)))){ outputMainText("\r\rYour nipples are less noticeable, shrinking by nearly half an inch.", false); nippleSize = (nippleSize - 2); milkMod = (milkMod - 2); }; if (((((cowAffinity + cow) < 25)) && ((cowAffinity >= 25)))){ outputMainText("\r\rYour nipples seem less noticeable as they shrink by an inch and your hips are less wide.", false); lactChange(1, -1); if (udders == true){ lactChange(2, -1); }; nippleSize = (nippleSize - 5); hips = (hips - 4); milkMod = (milkMod - 2); }; if (((((cowAffinity + cow) < 40)) && ((cowAffinity >= 40)))){ outputMainText((("\r\rYour " + clothesTop()) + " feels slightly looser, as your nipples shrink by over an inch and a half. You hips also narrow a little, protruding less than before."), false); lactChange(1, -1); if (udders == true){ lactChange(2, -1); }; hips = (hips - 6); nippleSize = (nippleSize - 8); milkMod = (milkMod - 2); }; if (((((cowAffinity + cow) < 55)) && ((cowAffinity >= 55)))){ outputMainText("\r\rThe fleshy bag of milk at your abdomen shrinks to nothing, disappearing along with its teats. You're no longer lugging around an udder. Plus all your waistbands seem quite loose after you hips shrink by a few inches.", false); lactChange(1, -2); hips = (hips - 8); udders = false; udderLactation = 0; udderEngorgement = 0; udderEngorgementLevel = 0; udderPlay = 0; udderSize = 0; teatSize = 0; }; if (((((lizardAffinity + lizard) >= 40)) && ((lizardAffinity < 40)))){ if (cockTotal == 1){ cockChange(0, 1); }; if (vagTotal > 0){ outputMainText((("\r\rAn odd sensation of warmth fills your womb" + plural(2)) + ". You can literally feel your eggs stir within, preparing themselves to cycle much more frequently, growing hard shells to protect them, whenever you're not pregnant."), false); }; if (eggLaying == 0){ eggLaying++; eggMaxTime = 20; eggTime = 20; } else { eggMaxTime = (eggMaxTime - 4); }; }; if (((((lizardAffinity + lizard) < 40)) && ((lizardAffinity >= 40)))){ if (cockTotal == 2){ cockChange(0, -1); }; if (vagTotal > 0){ outputMainText((((("\r\rYour womb" + plural(2)) + " calm") + plural(4)) + " down, no longer working as hard to pop out more eggs."), false); }; if (eggLaying == 1){ eggLaying--; eggMaxTime = 0; eggTime = 0; } else { if (eggLaying > 1){ eggMaxTime = (eggMaxTime + 4); }; }; }; if (((((rabbitAffinity + rabbit) >= 10)) && ((rabbitAffinity < 10)))){ stats(0, 0, 2, 0); }; if (((((rabbitAffinity + rabbit) >= 30)) && ((rabbitAffinity < 30)))){ stats(0, 0, 5, 0); }; if (((((rabbitAffinity + rabbit) >= 50)) && ((rabbitAffinity < 50)))){ stats(0, 0, 7, 0); }; if (((((rabbitAffinity + rabbit) >= 40)) && ((rabbitAffinity < 40)))){ if (vagTotal > 0){ outputMainText((((("\r\rYour womb" + plural(2)) + " feel") + plural(4)) + " a bit... hyperactive. It feels as though you could breed like some sort of cute, small, fuzzy animal."), false); }; pregRate = (pregRate + 1); }; if (((((rabbitAffinity + rabbit) < 10)) && ((rabbitAffinity >= 10)))){ stats(0, 0, -2, 0); }; if (((((rabbitAffinity + rabbit) < 30)) && ((rabbitAffinity >= 30)))){ stats(0, 0, -5, 0); }; if (((((rabbitAffinity + rabbit) < 50)) && ((rabbitAffinity >= 50)))){ stats(0, 0, -7, 0); }; if (((((rabbitAffinity + rabbit) < 40)) && ((rabbitAffinity >= 40)))){ if (vagTotal > 0){ outputMainText((((("\r\rYour womb" + plural(2)) + " feel") + plural(4)) + " calmer. Now you can take your fertility nice and easy... relatively."), false); }; pregRate = (pregRate - 1); }; second = 0; if (dominant == 1){ humanAffinity = -1; }; if (dominant == 2){ horseAffinity = -1; }; if (dominant == 3){ wolfAffinity = -1; }; if (dominant == 4){ catAffinity = -1; }; if (dominant == 5){ cowAffinity = -1; }; if (dominant == 6){ lizardAffinity = -1; }; if (dominant == 7){ rabbitAffinity = -1; }; second = Math.max((humanAffinity + human), (horseAffinity + horse), (wolfAffinity + wolf), (catAffinity + cat), (cowAffinity + cow), (lizardAffinity + lizard), (rabbitAffinity + rabbit)); if (dominant == 1){ humanAffinity = (domCheck - human); }; if (dominant == 2){ horseAffinity = (domCheck - horse); }; if (dominant == 3){ wolfAffinity = (domCheck - wolf); }; if (dominant == 4){ catAffinity = (domCheck - cat); }; if (dominant == 5){ cowAffinity = (domCheck - cow); }; if (dominant == 6){ lizardAffinity = (domCheck - lizard); }; if (dominant == 7){ rabbitAffinity = (domCheck - rabbit); }; if ((humanAffinity + human) < 0){ humanAffinity = 0; } else { if ((humanAffinity + human) > 100){ humanAffinity = 100; } else { humanAffinity = (humanAffinity + human); }; }; if ((horseAffinity + horse) < 0){ horseAffinity = 0; } else { if ((horseAffinity + horse) > 100){ horseAffinity = 100; } else { horseAffinity = (horseAffinity + horse); }; }; if ((wolfAffinity + wolf) < 0){ wolfAffinity = 0; } else { if ((wolfAffinity + wolf) > 100){ wolfAffinity = 100; } else { wolfAffinity = (wolfAffinity + wolf); }; }; if ((catAffinity + cat) < 0){ catAffinity = 0; } else { if ((catAffinity + cat) > 100){ catAffinity = 100; } else { catAffinity = (catAffinity + cat); }; }; if ((cowAffinity + cow) < 0){ cowAffinity = 0; } else { if ((cowAffinity + cow) > 100){ cowAffinity = 100; } else { cowAffinity = (cowAffinity + cow); }; }; if ((lizardAffinity + lizard) < 0){ lizardAffinity = 0; } else { if ((lizardAffinity + lizard) > 100){ lizardAffinity = 100; } else { lizardAffinity = (lizardAffinity + lizard); }; }; if ((rabbitAffinity + rabbit) < 0){ rabbitAffinity = 0; } else { if ((rabbitAffinity + rabbit) > 100){ rabbitAffinity = 100; } else { rabbitAffinity = (rabbitAffinity + rabbit); }; }; maxNonScale = Math.max(humanAffinity, horseAffinity, wolfAffinity, catAffinity, cowAffinity, rabbitAffinity); maxNonSkin = Math.max(horseAffinity, wolfAffinity, catAffinity, cowAffinity, lizardAffinity, rabbitAffinity); maxNonFur = Math.max(humanAffinity, lizardAffinity); if ((((((dominant == 1)) && ((humanAffinity > (maxNonSkin + 35))))) && (!((skinType == 1))))){ outputMainText((((("\r\rYour " + skinDesc()) + " feels oddly cool. Looking at it, your ") + skinDesc()) + " shrinks into your skin, leaving you 'bald' all over. You feel a little naked as you get used to your bare skin."), false); skinType = 1; }; if ((((((dominant == 2)) && ((horseAffinity > (maxNonFur + 35))))) && (!((skinType == 2))))){ outputMainText((("\r\rYour " + skinDesc()) + " begins to itch all over as soft hairs begin to sprout in patches. Before you know it, your whole body is soon covered in a coat of fur."), false); skinType = 2; }; if ((((((dominant == 3)) && ((wolfAffinity > (maxNonFur + 35))))) && (!((skinType == 2))))){ outputMainText((("\r\rYour " + skinDesc()) + " begins to itch all over as soft hairs begin to sprout in patches. Before you know it, your whole body is soon covered in a coat of fur."), false); skinType = 2; }; if ((((((dominant == 4)) && ((catAffinity > (maxNonFur + 35))))) && (!((skinType == 2))))){ outputMainText((("\r\rYour " + skinDesc()) + " begins to itch all over as soft hairs begin to sprout in patches. Before you know it, your whole body is soon covered in a coat of fur."), false); skinType = 2; }; if ((((((dominant == 5)) && ((cowAffinity > (maxNonFur + 35))))) && (!((skinType == 2))))){ outputMainText((("\r\rYour " + skinDesc()) + " begins to itch all over as soft hairs begin to sprout in patches. Before you know it, your whole body is soon covered in a coat of fur."), false); skinType = 2; }; if ((((((dominant == 6)) && ((lizardAffinity > (maxNonScale + 35))))) && (!((skinType == 3))))){ outputMainText((("\r\rYour " + skinDesc()) + " begins to feel oddly dry, feeling somewhat flaky. Before you know it, your whole body feels soft and extremely smooth, covered in a thin layer of scales."), false); skinType = 3; }; if ((((((dominant == 7)) && ((rabbitAffinity > (maxNonFur + 35))))) && (!((skinType == 2))))){ outputMainText((("\r\rYour " + skinDesc()) + " begins to itch all over as soft hairs begin to sprout in patches. Before you know it, your whole body is soon covered in a coat of fur."), false); skinType = 2; }; maxTail = Math.max(horseAffinity, wolfAffinity, catAffinity, cowAffinity, lizardAffinity, rabbitAffinity); maxNonTail = Math.max(humanAffinity); if (tail < 1){ if ((((dominant == 2)) && ((horseAffinity > (maxNonTail + 15))))){ tail = 2; }; if ((((dominant == 3)) && ((wolfAffinity > (maxNonTail + 15))))){ tail = 3; }; if ((((dominant == 4)) && ((catAffinity > (maxNonTail + 15))))){ tail = 4; }; if ((((dominant == 5)) && ((cowAffinity > (maxNonTail + 15))))){ tail = 5; }; if ((((dominant == 6)) && ((lizardAffinity > (maxNonTail + 15))))){ tail = 6; }; if ((((dominant == 7)) && ((rabbitAffinity > (maxNonTail + 15))))){ tail = 7; }; if (tail > 1){ outputMainText((((((("\r\rYou feel a tickle upon your backside as your " + clothesBottom()) + " feels tight. With a groan, the pressure builds behind you, until a tearing sound fills the air and the pain is gone. Checking your backside, you see a new ") + tailDesc()) + " tail bobbing above your ") + buttDesc()) + " bum. Next time you go to town, you'll be visiting a tailor to fix your clothes to account for your new appendage..."), false); }; }; if ((((((dominant == 1)) && ((humanAffinity > (second + 10))))) && ((tail > 1)))){ tail = 0; outputMainText("\r\rYour tail begins to tingle. As you turn around, you watch as it shrinks into your back, disappearing altogether. You no longer have any tail.", false); }; if ((((((((dominant == 2)) && ((horseAffinity > (second + 10))))) && ((tail > 1)))) && (!((tail == 2))))){ tail = 2; outputMainText("\r\rYour tail begins to tingle. As you turn around, you watch as it bursts into hundreds of long hairs. Any control you had over it before is gone, save for the muscles at the base that allow you to swish it with your mood and swat against your thighs. Just like a horse's", false); }; if ((((((((dominant == 3)) && ((wolfAffinity > (second + 10))))) && ((tail > 1)))) && (!((tail == 3))))){ tail = 3; outputMainText("\r\rYour tail begins to tingle. As you turn around, you watch as it widens with long hairs around a skeletal base. It wags with your mood and reflexes, though you don't really have control over it otherwise, and it's oh so fluffy. Just like a wolf's", false); }; if ((((((((dominant == 4)) && ((catAffinity > (second + 10))))) && ((tail > 1)))) && (!((tail == 4))))){ tail = 4; outputMainText("\r\rYour tail begins to tingle. As you turn around, you watch as it narrows with short hairs around a skeletal base. It wags with your mood and reflexes and likes to curl around your touch with limited control, and it's oh so soft. Just like a cat's", false); }; if ((((((((dominant == 5)) && ((cowAffinity > (second + 10))))) && ((tail > 1)))) && (!((tail == 5))))){ tail = 5; outputMainText((("\r\rYour tail begins to tingle. As you turn around, you watch as it narrows with short hairs around a skeletal base and a tuft of long hair bursts at the tip. It sways lazily across your " + buttDesc()) + " backside and you can swat yourself with the tip like a soft whip. Just like a cow's"), false); }; if ((((((((dominant == 6)) && ((lizardAffinity > (second + 10))))) && ((tail > 1)))) && (!((tail == 6))))){ tail = 6; outputMainText("\r\rYour tail begins to tingle. As you turn around, you watch as it thickens at the base and narrows gradually to a point. It's quite agile, able to move at your whim, the tip even being slightly prehensile. Much like a lizard's", false); }; if ((((((((dominant == 7)) && ((rabbitAffinity > (second + 10))))) && ((tail > 1)))) && (!((tail == 7))))){ tail = 7; outputMainText((("\r\rYour tail begins to tingle. As you turn around, you watch as shrinks into your back, exploding into a tuft of soft puffy hair before it disappears. It wiggles above your " + buttDesc()) + " bum cutely and quite fluffy. Much like a rabbit's"), false); }; if ((((((dominant == 1)) && ((humanAffinity > (second + 15))))) && (!((ears == 1))))){ ears = 1; outputMainText("\r\rYour ears twitch as they become rounded and hug the sides of you head, looking more like a human's.", false); }; if ((((((dominant == 2)) && ((horseAffinity > (second + 15))))) && (!((ears == 2))))){ ears = 2; outputMainText("\r\rYour ears twitch as they become rounded and pointed at the tip, flicking atop your head, looking more like a horse's.", false); }; if ((((((dominant == 3)) && ((wolfAffinity > (second + 15))))) && (!((ears == 3))))){ ears = 3; outputMainText("\r\rYour ears twitch as they become triangular, standing pert atop your head, looking more like a wolf's.", false); }; if ((((((dominant == 4)) && ((catAffinity > (second + 15))))) && (!((ears == 4))))){ ears = 4; outputMainText("\r\rYour ears twitch as they become triangular, standing pert atop your head, looking more like a cat's.", false); }; if ((((((dominant == 5)) && ((cowAffinity > (second + 15))))) && (!((ears == 5))))){ ears = 5; outputMainText("\r\rYour ears twitch as they become rounded and large, standing out from the sides of you head several inches, looking more like a cow's.", false); }; if ((((((dominant == 6)) && ((lizardAffinity > (second + 15))))) && (!((ears == 6))))){ ears = 6; outputMainText("\r\rYour ears feel quite stange, shrinking into the sides of your head before they disappear, becoming sleek holes.", false); }; if ((((((dominant == 7)) && ((rabbitAffinity > (second + 15))))) && (!((ears == 7))))){ ears = 7; outputMainText("\r\rYour ears twitch as they become quite long, standing several inches high atop your head, looking more like a rabbit's.", false); }; twoBoob = Math.max(humanAffinity, horseAffinity, cowAffinity, lizardAffinity, rabbitAffinity); sixBoob = Math.max(catAffinity, wolfAffinity); fourBoob = Math.max(fourBoobAffinity); nonTwoBoob = Math.max(sixBoob, fourBoob); nonSixBoob = Math.max(twoBoob, fourBoob); nonFourBoob = Math.max(twoBoob, sixBoob); if ((((sixBoob > (nonSixBoob + 20))) && (!((boobTotal == 6))))){ if (boobTotal == 2){ outputMainText((("\r\rYour chest and belly tickle. Four new nipples form amongst your " + skinDesc()) + ", a fresh pair below your original two and another pair below that, leaving you with three rows of two breasts."), false); if (breastSize > 4){ outputMainText(((" The nipples protrude as fleshy mounds form beneath them. Breast-flesh wobbles, each row a fraction in size of the one above it. When you head back to town, you'll be covering your extra indecency with your arms the best you can while you head for the tailor to update your " + clothesTop()) + " accordingly."), false); }; }; if (boobTotal == 4){ outputMainText((("\r\rYour chest and belly tickle. Two new nipples form amongst your " + skinDesc()) + ", right below your second pair above your belly, leaving you with three rows of two breasts."), false); if (breastSize > 4){ outputMainText(((" The nipples protrude as fleshy mounds form beneath them, while your second pair seems to shrink in turn. Breast-flesh wobbles, each row a fraction in size of the one above it. When you head back to town, you'll be covering your extra indecency with your arms the best you can while you head for the tailor to update your " + clothesTop()) + " accordingly."), false); }; }; boobTotal = 6; }; if ((((twoBoob > (nonTwoBoob + 20))) && (!((boobTotal == 2))))){ if (boobTotal == 4){ outputMainText("\r\rYour chest tickles", false); if (breastSize > 4){ outputMainText(", both growing much lighter", false); }; outputMainText(((". Checking, you catch your second set of nipples disappear flat into your " + skinDesc()) + ", leaving you with only the highest pair on your chest."), false); }; if (boobTotal == 6){ outputMainText("\r\rYour chest and belly tickle", false); if (breastSize > 4){ outputMainText(", both growing much lighter", false); }; outputMainText(((". Checking, you catch your extra sets of nipples disappear flat into your " + skinDesc()) + ", leaving you with only the primary pair on your chest."), false); }; boobTotal = 2; }; if ((((fourBoob > (nonFourBoob + 20))) && (!((boobTotal == 4))))){ if (boobTotal == 2){ outputMainText((("\r\rYour chest, close beneath your nipples, begins to tickle. A new pair of sensitive areolas form amongst your " + skinDesc()) + ", creating an extra row of breasts beneath the originals."), false); if (breastSize > 4){ outputMainText(((" The new nipples protrude as fleshy mounds form form beneath them. The new boobs wobble as they grow to the same size of your original pair, lifting the originals slightly with their girth.\tWhen you head back to town, you'll be covering your extra indecency with your arms the best you can while you head for the tailor to update your " + clothesTop()) + " accordingly."), false); }; }; if (boobTotal == 6){ outputMainText("\r\rYour belly tickles", false); if (breastSize > 4){ outputMainText(", growing much lighter", false); }; outputMainText(((". Checking, you catch your bottom set of nipples disappear flat into your " + skinDesc()) + ", while your middle pair swells to match the first, leaving you with two sets of equally sized breasts, the top resting upon the bottom."), false); }; boobTotal = 4; }; if ((((((((((dominant == 1)) && ((humanAffinity > (second + 25))))) && ((human > 0)))) && ((cockTotal > 0)))) && ((humanCocks < cockTotal)))){ outputMainText((((((((((((("\r\rYour " + hipDesc()) + " hips twitch as ") + oneYour(1)) + " cock") + plural(1)) + " begins to feel strange. You open your ") + clothesBottom()) + " to see what is happening, only to watch the sheath surrounding ") + oneYour(1)) + " cock") + plural(1)) + " disappears, leaving your cock exposed . It's smooth and fleshy, easily teased into erection. Its skin is slightly less sensitive, but the thick mushroom-like head twitches in your grip. It looks very much like a human's."), false); humanCocks++; cockLoss(); }; if ((((((((((dominant == 2)) && ((horseAffinity > (second + 25))))) && ((horse > 0)))) && ((cockTotal > 0)))) && ((horseCocks < cockTotal)))){ outputMainText((((((((((((((("\r\rYour " + hipDesc()) + " hips twitch as ") + oneYour(1)) + " cock") + plural(1)) + " begins to feel strange. You open your ") + clothesBottom()) + " to see what is happening, only to watch as a thick sheath envelopes ") + oneYour(1)) + " cock") + plural(1)) + ". Relaxing your muscles, the cock slowly droops out over your ") + clothesBottom()) + ". It's long and smooth, with the prepuce only reaching halfway down its length making an obvious ring. The head is flat and as you knead it in your hand, it flares wide. It looks very much like a horse's."), false); horseCocks++; cockLoss(); }; if ((((((((((dominant == 3)) && ((wolfAffinity > (second + 25))))) && ((wolf > 0)))) && ((cockTotal > 0)))) && ((wolfCocks < cockTotal)))){ outputMainText((((((((((((((((("\r\rYour " + hipDesc()) + " hips twitch as ") + oneYour(1)) + " cock") + plural(1)) + " begins to feel strange. You open your ") + clothesBottom()) + " to see what is happening, only to watch as a thin sheath envelopes ") + oneYour(1)) + " cock") + plural(1)) + ". Flexing your muscles, ") + oneYour(1)) + " cock") + plural(1)) + " slowly pushes out, red and hard, no matter how aroused you are. It's veiny and smooth, already a bit moist from being within the sheath. The head narrows off to a pointy tip where you can feel the urethra resides. It looks very much like a wolf's."), false); wolfCocks++; cockLoss(); }; if ((((((((((dominant == 4)) && ((catAffinity > (second + 25))))) && ((cat > 0)))) && ((cockTotal > 0)))) && ((catCocks < cockTotal)))){ outputMainText((((((((((((((((("\r\rYour " + hipDesc()) + " hips twitch as ") + oneYour(1)) + " cock") + plural(1)) + " begins to feel strange. You open your ") + clothesBottom()) + " to see what is happening, only to watch as a thin sheath envelopes ") + oneYour(1)) + " cock") + plural(1)) + ". Flexing your muscles, ") + oneYour(1)) + " cock") + plural(1)) + " slowly pushes out, pink and soft. It's smooth and already a bit moist from being within the sheath, covered in tiny barbs that feel rough as your hand strokes against them. The head narrows off to a pointy tip where you can feel the urethra resides. It looks very much like a cat's."), false); catCocks++; cockLoss(); }; if ((((((((((dominant == 6)) && ((lizardAffinity > (second + 25))))) && ((lizard > 0)))) && ((cockTotal > 0)))) && ((lizardCocks < cockTotal)))){ outputMainText((((((((((((((((("\r\rYour " + hipDesc()) + " hips twitch as ") + oneYour(1)) + " cock") + plural(1)) + " begins to feel strange. You open your ") + clothesBottom()) + " to see what is happening, only to watch as your cock") + plural(1)) + " sink") + plural(3)) + " into your body, leaving behind a small slit at the front. Flexing your muscles, the slit pushes open and ") + oneYour(1)) + " cock") + plural(1)) + " slowly pushes out, looking quite purple. It's bumpy, with ribs along its upper side and a head that looks bulbous before rapidly narrowing into a pointy tip where you can feel the urethra resides. You think it looks like a lizard's?"), false); lizardCocks++; cockLoss(); }; if ((((((((((dominant == 7)) && ((rabbitAffinity > (second + 25))))) && ((rabbit > 0)))) && ((cockTotal > 0)))) && ((rabbitCocks < cockTotal)))){ outputMainText((((((((((((((((("\r\rYour " + hipDesc()) + " hips twitch as ") + oneYour(1)) + " cock") + plural(1)) + " begins to feel strange. You open your ") + clothesBottom()) + " to see what is happening, only to watch as a thin sheath envelopes ") + oneYour(1)) + " cock") + plural(1)) + ". Flexing your muscles, ") + oneYour(1)) + " cock") + plural(1)) + " slowly pushes out, red and pointy. It's smooth and already a bit moist from being within the sheath, its whole length gradually narrowing to the pointy tip, reminiscent of a carrot. It looks very much like a rabbit's."), false); rabbitCocks++; cockLoss(); }; human = 0; horse = 0; wolf = 0; cat = 0; cow = 0; lizard = 0; rabbit = 0; if (currentText == "Something feels odd..."){ outputMainText("", true); doProcess(); } else { doEnd(); }; } public function teatDesc():String{ var chance:int; var tempStr:String; chance = percent(); tempStr = ("TEAT ERROR " + teatSize); if (chance <= 100){ if (teatSize <= 2){ tempStr = "normal"; }; if ((((teatSize > 2)) && ((teatSize <= 5)))){ tempStr = "noticeable"; }; if ((((teatSize > 5)) && ((teatSize <= 9)))){ tempStr = "blatant"; }; if ((((teatSize > 9)) && ((teatSize <= 30)))){ tempStr = "normal-for-a-cow"; }; if ((((teatSize > 30)) && ((teatSize <= 50)))){ tempStr = "cock-like"; }; if ((((teatSize > 50)) && ((teatSize <= 100)))){ tempStr = "horsecock-like"; }; if ((((teatSize > 100)) && ((teatSize <= 140)))){ tempStr = "arm-length"; }; if ((((teatSize > 140)) && ((teatSize <= 300)))){ tempStr = "street-clearing"; }; if (teatSize > 300){ tempStr = "obscene"; }; }; if (chance > 50){ if (teatSize <= 2){ tempStr = ""; }; if ((((teatSize > 2)) && ((teatSize <= 5)))){ tempStr = "perky"; }; if ((((teatSize > 5)) && ((teatSize <= 9)))){ tempStr = "hypnotizing"; }; if ((((teatSize > 9)) && ((teatSize <= 30)))){ tempStr = "long"; }; if ((((teatSize > 30)) && ((teatSize <= 50)))){ tempStr = "huge"; }; if ((((teatSize > 50)) && ((teatSize <= 100)))){ tempStr = "enormous"; }; if ((((teatSize > 100)) && ((teatSize <= 140)))){ tempStr = "extreme"; }; if ((((teatSize > 140)) && ((teatSize <= 300)))){ tempStr = "ridiculous"; }; if (teatSize > 300){ tempStr = "obscene"; }; }; return (tempStr); } public function showPage(changes:Boolean, which:int):void{ if (changes == true){ pageNum.visible = true; }; if (changes == false){ pageNum.visible = false; }; if (which == 1){ pageNum.text = ("BAG " + currentItems); } else { if (which == 2){ pageNum.text = ("STASH " + currentStash); } else { if ((((which > 30)) && ((which < 40)))){ pageNum.text = ("SIMPLE " + (which - 30)); } else { if ((((which > 40)) && ((which < 50)))){ pageNum.text = ("COMPLEX " + (which - 40)); } else { if ((((which > 50)) && ((which < 60)))){ pageNum.text = ("ADVANCED " + (which - 50)); }; }; }; }; }; } public function invertC(e:MouseEvent):void{ invertGo(); } public function buttonConfirm():void{ bc(); viewButtonText(0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0); viewButtonOutline(0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0); buttonWrite(6, "Yes"); buttonWrite(7, "No"); } public function gainItem(ID:int):void{ var tempNum:int; var openSlot:int; tempNum = 0; openSlot = 0; i = 36; while (i > 0) { if ((((((((((((((((((((itemID(i) == 0)) && (!((i == 4))))) && (!((i == 8))))) && (!((i == 12))))) && (!((i == 16))))) && (!((i == 20))))) && (!((i == 24))))) && (!((i == 28))))) && (!((i == 32))))) && (!((i == 36))))){ openSlot = i; }; if (i == 12){ currentItems = 1; }; if (i == 24){ currentItems = 2; }; if (i == 36){ currentItems = 3; }; i--; }; i = 36; while (i > 0) { if ((((stackAmount(i) < itemStackMax(ID))) && ((itemID(i) == ID)))){ openSlot = i; }; if (i == 12){ currentItems = 1; }; if (i == 24){ currentItems = 2; }; if (i == 36){ currentItems = 3; }; i--; }; if (openSlot > 0){ if (itemID(openSlot) == 0){ itemSlotWrite(openSlot, ID); stackSlotWrite(openSlot, 1); tempNum++; while ((((stackAmount(openSlot) < itemStackMax(ID))) && (!((itemGainArray.indexOf(ID) == -1))))) { itemGainArray.pop(); stackSlotWrite(openSlot, 1); tempNum++; }; } else { tempNum++; stackSlotWrite(openSlot, 1); while ((((stackAmount(openSlot) < itemStackMax(ID))) && (!((itemGainArray.indexOf(ID) == -1))))) { itemGainArray.pop(); stackSlotWrite(openSlot, 1); tempNum++; }; }; if (tempNum < 2){ outputMainText((("You have obtained a " + itemName(ID)) + "!"), true); } else { outputMainText((((("You have obtained " + tempNum) + "x ") + itemName(ID)) + "!"), true); }; doEnd(); } else { outputMainText((("You have obtained a " + itemName(ID)) + "!\r\rHowever, you do not have enough room in your bag. Click on an item in your bag to replace it with the new one or click a non-item button to ignore the new item."), true); doDiscard(ID); }; } public function doOldCave():void{ var chance:int; chance = percent(); if (chance <= 33){ outputMainText("Growing on the wall of the cave, you find a small, odd looking mushroom. It has a red cap speckled with a few large white dots. You pluck it.", true); itemAdd(212); hrs = 2; doEnd(); }; if ((((chance > 33)) && ((chance <= 66)))){ if (percent() <= 50){ outputMainText("Strangely, there's a small ornate coffee table sitting before the entrance to the cave. Looking around, you don't see a single soul, there seems to be no logical reason for it to be there. Moving closer, you notice a slice of cake sitting upon it. The label reads 'EAT ME'.\r\rWill you eat it?", true); buttonConfirm(); doListen = function ():void{ var getCum:int; if (buttonChoice == 6){ tallness = (tallness + 2); outputMainText("You pick up the cake and lift it to your lips. Barely a nibble and it's already gone, hardly enough for even a full swallow. It was somewhat sweet, like a cross between chocolate and the number 3, which is rather ludicrous when you think about it. Wondering why it should have been eaten at all, you attempt to check the table for any sort of shenanigans. You begin to bend down to reach it, only to find yourself bending lower and lower with the table seemingly further and further away. It seems to be shrinking beside you, but then again so is everything else at an increasingly rapid rate...\r\rVery quickly, you realize that you're the one who's growing.", true); if (ment < 30){ outputMainText(((((((((((((((((" Your " + currentClothes()) + " rapidly grows tighter and tighter, squeezing your body until you can hardly breathe. Tearing can be heard along the stitching, flesh from your ") + boobDesc()) + " chest squeezing through the newly torn holes and a painful wedgie of ripped cloth slips into your ") + buttDesc()) + " rump, your cheeks slapped by a light breeze. Your ") + hipDesc()) + " hips soon relieve your ass of the torment as they stretch the waist of your ") + clothesBottom()) + " to the point to where it barely hangs around your body by thin strands, the rest of the garment flapping in the wind and no longer concealing your genitals. Your ") + boobDesc()) + " chest follows suit, growing so tight until you can hardly breath until your ") + clothesTop()) + " bursts into shreds around you, your ") + nipDesc()) + " nipples perking freely in the cooler air through what's left of your outfit."), false); changeTop(-1); changeBot(-1); } else { outputMainText(((((((((((((" Your " + currentClothes()) + " rapidly grows tighter and tighter, squeezing your body until you can hardly breath. With your quick wit, however, you think fast enough to remove your outfit to prevent yourself from being crushed. You're just in time to slip ") + pullUD(1)) + " your ") + clothesTop()) + " before your ") + boobDesc()) + " chest plows through it and step out of your ") + clothesBottom()) + " before your ") + buttDesc()) + " tush shone through the backside. Growing to fast to lay them neatly on the ground, however, you simply let them fall idly, leaving you with a naked bosom and your genitals being frisked by a slight breeze."), false); }; if (tallness <= 18){ outputMainText(" By the time you finish growing, you're... just about the size of a particularly tall, but not terribly giant, person. You take a few minutes enjoying the feeling of being big, able to actually see over the grass and spot a few trees in the distance, but it doesn't take long before you find yourself dwindling back to your normal diminutive stature, though with an added couple of inches.", false); if (ment >= 30){ outputMainText(" You grab your clothes, finding them to be a little small for you, but they're otherwise fine.", false); }; outputMainText(" Then you head back to Firmshaft, slightly confused by the whole experience...", false); hrs = 2; doEnd(); } else { outputMainText(" By the time you finish growing, you tower over the hill that the cave resides in. You can see far into the distance and you can feel a great draft in your loins.", false); if ((((gender == 1)) || ((((gender == 3)) && ((percent() <= 50)))))){ getCum = cumAmount(); if ((cockSize * cockSizeMod) > 400){ outputMainText(((((((((((((((((((((((" The wind across your " + cockDesc()) + " cock") + plural(1)) + " feel") + plural(3)) + " rather... nice, to say the least. And considering ") + plural(5)) + " rather large increase in size, that feeling escalates exponentially. A strange heat mixes with the extra-sensual experience, clouding your mind with the need for release. Quite soon you find yourself barely able to see the ") + plural(5)) + " tip") + plural(1)) + " as ") + plural(11)) + " grow") + plural(3)) + " off into the distance. Quickly, you find yourself falling over your relatively ") + cockDesc()) + " girth") + plural(1)) + ", the ground rumbling around you as you connect, while you feel ") + plural(9)) + " drag across the open fields, plowing through forests, and who knows what else you manage to destroy."), false); doNext(); doListen = function ():void{ outputMainText((((((((("The exhilirating sensation of your massive size compared to everything around you excites you even further. Your " + feetDesc()) + " dig into the ground, carving out holes, and thrust your erection") + plural(1)) + " forward. You can hear the sounds of wood cracking beneath your massive stiffness in the distance and the air fills with birds flying away to avoid your cock-head") + plural(1)) + ". All the little bushes and trees provide a rather unique sensation, their leaves wrapping about your underside") + plural(1)) + " en masse. Your voice echoes into the horizon as you let out a loud howl, rapidly coming to climax."), true); if (getCum > 10000){ outputMainText(" More crashing can be heard, along with a roar, as spunk erupts from the other end, flooding the far-off land and rushing into its own river!", false); } else { outputMainText(" You cum gushes from the other end, raining down around the far-off terrain like some sort of lewd weather.", false); }; outputMainText((((("\r\rYour heavy breathing blows about grass about beneath you as you come to your senses. You can feel your cock" + plural(1)) + " begin to drag across the grass once more, though not by your own power. Looking up, you can see ") + plural(11)) + " shrinking back towards you. However, it is the devastation that lies beyond that truly catches your eye. Despite all the damage you did, you can see nature shifting around, like the planet itself were healing, sucking in your cum and returning the land to a more healthy state. Though, before you can get a good look, you find yourself finally shrink back to your normal size, plus a couple inches. Too far to travel into the wilderness, it seems you'll have to leave the mystery for later."), false); outputMainText("\r\rRather eager to get away, you run off to Firmshaft, getting a slight bit of vertigo along the way from the extra inches you'll have to get used to.", false); if (ment >= 30){ outputMainText(" Especially as you re-don your now too-small clothes, feeling the outfit hug your body tightly and definitely needing some readjusting when you get back to town...", false); }; doLust((-(sen) * 2)); hrs = 3; doEnd(); }; } else { outputMainText(((((((((((" The wind across your " + cockDesc()) + " cock") + plural(1)) + " feel") + plural(3)) + " rather... nice, to say the least. And considering ") + plural(5)) + " rather large increase in size, that feeling escalates exponentially. A strange heat mixes with the extra-sensual experience, clouding your mind with the need for release. You soon find yourself rather stiff, and as you look down at ") + plural(11)) + ", your eyes spot the cave below. From this new perspective, you begin to think the hole in the ground is a bit... lewd?"), false); doNext(); doListen = function ():void{ outputMainText((((("The thought doesn't make it a second time through your mind before you find yourself crashing to your knees, the ground rumbling as you touch down. You collapse over the hill, thrusting " + oneYour(1)) + " cock") + plural(1)) + " into the natural glory hole. And much to your surprise, the internal walls of the cave seem to be coated with a slick substance, lubricating you through its dark interior. With your giant size, the rocks feel like mere bumps, more pleasurable than you could have imagined, and the ground soon shakes again and again as you hump into the hill.\r\rRather quickly, you let out a loud shout that echoes across the fields."), true); if (getCum > 10000){ outputMainText(" You can feel your spunk churn and gush around you. Though some of it spits back out across your thighs, painting the mouth of the cave, most of it amazingly guzzles deeper into the ground. So much so that you could swear you hear a small 'EEK!' cry out from within, though your brain is too foggy to be sure.", false); } else { outputMainText(" You can hear your spunk splatter about within and seems to run away from your cock-tip, somewhere deeper into the ground. With you brain fuzzy from orgasm, you're not sure if the tiny 'Eehehe!' you hear is real or just your ears ringing from the slight breeze.", false); }; outputMainText(" Either way, you find yourself slipping back down the hill, shrinking and falling back before the cave, almost returning to your original height. It's still far too dark to explore inside the cave to see where it all went, you can definitely smell the erotic odor that blows back out, some of your spunk still dripping in thick strands and webs from the mouth.", false); outputMainText("\r\rRather eager to get away, you run off to Firmshaft, getting a slight bit of vertigo along the way from the extra inches you'll have to get used to.", false); if (ment >= 30){ outputMainText(" Especially as you re-don your now too-small clothes, feeling the outfit hug your body tightly and definitely needing some readjusting when you get back to town...", false); }; doLust((-(sen) * 2)); hrs = 3; doEnd(); }; }; } else { if ((((gender == 2)) || ((gender == 3)))){ outputMainText(((((((((" The wind through your " + vulvaDesc()) + " slit") + plural(2)) + " feel") + plural(4)) + " a bit... nice, to say the least. And considering ") + plural(6)) + " rather large increase in size, that feeling escalates exponentially. A strange heat mixes with the extra-sensual experience, clouding your mind with the need for release. Looking down at your swelling attributes your eyes focus on the cave below. From this new perspective, the hill looks rather like a rather... lewdly shaped saddle."), false); doNext(); doListen = function ():void{ outputMainText((((((((((("The thought doesn't make it a second time through your mind before you find yourself turning around and crashing your " + buttDesc()) + " rump down onto the hill with a rumble. Your legs straddle it on either side, your ") + clitDesc()) + " clit") + plural(2)) + " grinding against a protruding grassy mound that slides perfectly into your relatively ") + vulvaDesc()) + " lips. You can hear rocks crash to the floor of the cave within as your ") + hipDesc()) + " hips rock back and forth, making the ground quake beneath you. Your sensual fluids flood about the grass, making it perfectly slick for your needs.\r\rRather quickly, with all the extra sensitive area of your genitals humping an entire hill, you find yourself letting out a shout that echoes across the fields, your body trembling with orgasm."), true); if (cockTotal > 1){ outputMainText(((((((" Your proportionately " + cockDesc()) + " cock") + plural(1)) + " bounce") + plural(3)) + " up and down as spunk gushes from the tip, flinging about the landscape and forming large puddles."), false); cumAmount(); }; outputMainText(" Yet, you don't have much time to enjoy your quivering state before you find yourself beginning to shrink, sliding down one side of the hill as you're caught off balance. You become slick with your own lubrication as you roll through the messy grass and splash down in your own puddle. Picking yourself up, the slime sticking to your body in webs and strands, you take a moment to flick off some of the goop before heading back to the cave.", false); if (((((pregCheck(1)) && ((percent() <= 60)))) && (((vagSize * vagSizeMod) > 56)))){ outputMainText(" And you're quite surprised to find you're sporting a much larger belly. You have no idea how it could have possibly happened, but your mind was rather far-off while you were up there. Placing your hand on it, you can feel a body writhe about, squirming inside of you, and in no rush to come out it seems. It seems like you got pregnant quite rapidly?", false); i = 0; while (i < pregArray.length) { if (pregArray[i] == false){ pregArray[i] = true; if (percent() <= 50){ pregArray[(i + 1)] = 201; } else { pregArray[(i + 1)] = 202; }; pregArray[(i + 2)] = 230; pregArray[(i + 3)] = 220; i = pregArray.length; }; i = (i + 5); }; }; outputMainText("\r\rRather eager to get away, you run off to Firmshaft, getting a slight bit of vertigo along the way from the extra inches you'll have to get used to.", false); if (ment >= 30){ outputMainText(" Especially as you re-don your now too-small clothes, feeling the outfit hug your body tightly and definitely needing some readjusting when you get back to town...", false); }; doLust((-(sen) * 2)); hrs = 3; doEnd(); }; } else { outputMainText(" Though, with nothing in your loins to speak of, it simply makes you giggle a little as it tickles you. You stand there for a moment, in awe of the world around you, your mind running through all the possibilities of things you could do with such a massive size!", false); doNext(); doListen = function ():void{ outputMainText("However, you feel a sudden warmth flush through you and with a slight sparking sound and you find yourself shrinking instead. Soon you're nearly as tall as you were before and slightly more aroused as well. What the heck just happened?...", true); doLust(15); outputMainText("\r\rRather eager to get away, you run off to Firmshaft, getting a slight bit of vertigo along the way from the extra inches you'll have to get used to.", false); if (ment >= 30){ outputMainText(" Especially as you re-don your now too-small clothes, feeling the outfit hug your body tightly and definitely needing some readjusting when you get back to town...", false); }; hrs = 3; doEnd(); }; }; }; }; } else { outputMainText("Wary of free cake that desires to be eaten, you ignore it and quickly make your way back to Firmshaft.", true); hrs = 1; doEnd(); }; }; } else { outputMainText("Strangely, there's a small ornate coffee table sitting before the entrance to the cave. Looking around, you don't see a single soul, there seems to be no logical reason for it to be there. Moving closer, you notice a lone bottle sitting upon it. The label reads 'DRINK ME'.\r\rWill you drink it?", true); buttonConfirm(); doListen = function ():void{ if (buttonChoice == 6){ outputMainText("You pick up the bottle and lift it to your lips. Only a few sips and it's already empty, barely enough for even a full gulp. It hardly had any taste to it, the closest flavor you can relate it to is 'purple', which hardly makes any sense at all when you think about it. Wondering why it should have been drunk at all, you place the empty bottle back on the table. Which proves to be more difficult than you would have imagined as the table seems start growing beside you. As well as everything else around you at an increasingly rapid rate...\r\rVery quickly, you realize that you're the one who's shrinking.", true); if (attireTop == attireBot){ outputMainText(((((((" Your " + clothesTop()) + " plummets down your ") + boobDesc()) + " chest. You catch it with your hands, but soon the material bundles over your arms that you can no longer maintain your hold. When you let go, the ") + clothesTop()) + " simply sits there, piled around you."), false); } else { outputMainText(((((((((((((((" Your " + clothesTop()) + " begins to plummet down your ") + boobDesc()) + " chest, while your ") + clothesBottom()) + " slips from your ") + hipDesc()) + " hips. One hand flails to catch your ") + clothesTop()) + " while the other heads for the ") + clothesBottom()) + ", but neither is successful. For a moment your ") + boobDesc()) + " chest and your nether region are both exposed to the fresh air as your outfit falls around you, but you quickly find yourself falling back into the fabric, a pile around you."), false); }; outputMainText((("\r\rYou climb out from your overgrown clothes, completely nude. Though you doubt anybody could see you if they passed by, considering you're now a fraction of the height you were before, maybe a whole " + Math.floor((tallness / 12))) + " inches tall."), false); tallness = (tallness - 2); doNext(); doListen = function ():void{ chance = percent(); if (chance <= 40){ outputMainText("Unsure what to do in your miniscule state, you don't venture far from your forgone attire. However, it doesn't seem like you need to go anywhere to run into trouble, as you hear something thump its way towards you.\r\rLong ears bob upon a humanoid head and white fur covers much of its body. Long feet bounce upon the ground as it hops towards you. With a poofy tail and a button nose that twitches, it seems to be a rabbit-like person that is as naked as you are. The fuzzy swinging testicles makes it quite obvious what gender he is...\r\rHe spots you quickly, as though he had known you were there. With a grin, his nose and long whiskers twitch, and a rather mishievous twinkle lights in his eyes. Probably two feet high ", true); if (tallness <= 216){ outputMainText(" he towers over you, pleased with the result.", false); }; if (tallness > 216){ outputMainText(" you seem to still be on par with him, though he seems pleased you're much more manageable than before.", false); }; doNext(); doListen = function ():void{ enemyID = 304; currentState = 2; enemyBaseStats(); eMaxHP = eHP; doBattle(); }; }; if ((((chance > 40)) && ((chance <= 80)))){ outputMainText("Unsure what to do in your miniscule state, you don't venture far from your forgone attire. However, it doesn't seem like you need to go anywhere to run into trouble, as you hear something thump its way towards you.\r\rLong ears bob upon a humanoid head and white fur covers much of its body. Long feet bounce upon the ground as it hops towards you. With a poofy tail and a button nose that twitches, it seems to be a rabbit-like person that is as naked as you are. The wobbling tits and thick labia makes it quite obvious what gender she is...\r\rShe spots you quickly, as though she had known you were there. With a grin, her nose and long whiskers twitch, and a rather mishievous twinkle lights in her eyes. Probably two feet high ", true); if (tallness <= 216){ outputMainText(" she towers over you, pleased with the result.", false); }; if (tallness > 216){ outputMainText(" you seem to still be on par with her, though she seems pleased you're much more manageable than before.", false); }; doNext(); doListen = function ():void{ enemyID = 305; currentState = 2; enemyBaseStats(); eMaxHP = eHP; doBattle(); }; }; if (chance > 80){ outputMainText("With the extra-tall grass barring your path behind you, you decide to look around a bit. So small, you're not terribly worried about people spotting your indecency. However, you are careful of the ants and other 'large' creatures that skitter by.\r\rFortunately, none pay you any heed and you manage to make your way to the mouth of the cave. It's still as dark and dank as before, so you don't think to venture inside. Yet, from your shortened vantage point, you notice a small door in the wall at the mouth of the cave. You head towards it, curious as to its existence. How could you have not noticed it when it was bigger?\r\rThe thought doesn't seem to matter, though. When you attempt to open the door, it turns out to be locked. And judging by the keyhole beneath the knob, it would require a rather small key, which you don't have. Nor does this world, yet.\r\rWith a shrug, you turn back towards your pile of clothes. Along the way, your surroundings seem to grow smaller and smaller as you grow taller and taller. By the time you reach the pile, you seem to be back to your normal size, the bottle's effects having worn off.\r\rRedonning your clothing before heading back to Firmshaft, you notice they seem a bit baggier than before... It seems you're still missing a couple inches in height.", true); hrs = 2; doEnd(); }; }; } else { outputMainText("Wary of strange liquids that desire to be drunk, you ignore it and quickly make your way back to Firmshaft.", true); hrs = 1; doEnd(); }; }; }; }; if ((((chance > 66)) && ((chance <= 100)))){ outputMainText("Too dark to go inside, you merely wander around the entrance of the cave. However, an odd scent fills your nostrils and makes you feel a bit randy...", true); stats(0, -1, 3, 0); doLust(5); hrs = 1; doEnd(); }; } public function bodyDesc():String{ var tempStr:String; tempStr = ((("BODY ERROR " + gender) + " ") + body); if (gender == 1){ if ((((body > 11)) && ((body <= 17)))){ if ((((hips > 3)) && ((breastSize > 4)))){ tempStr = "shemale"; } else { if (hips > 2){ tempStr = "femme-boyish"; } else { tempStr = "boyish"; }; }; } else { if ((((body > 17)) && ((body <= 25)))){ tempStr = "manly"; } else { if (body <= 11){ tempStr = "childish"; } else { if (body > 25){ tempStr = "musclebound"; }; }; }; }; } else { if (gender == 2){ if ((((body > 9)) && ((body <= 14)))){ tempStr = "girly"; }; if ((((body > 14)) && ((body <= 20)))){ if ((((((hips > 4)) || ((butt > 4)))) || ((breastSize > 4)))){ tempStr = "voluptuous"; } else { tempStr = "womanly"; }; }; if (body <= 10){ tempStr = "childish"; } else { if (body > 20){ tempStr = "musclebound"; }; }; } else { if (gender == 3){ if ((((body > 11)) && ((body <= 23)))){ if ((((hips > 2)) && ((breastSize > 2)))){ tempStr = "feminine"; } else { tempStr = "masculine"; }; } else { if (body <= 11){ tempStr = "childish"; } else { if (body > 23){ tempStr = "musclebound"; }; }; }; } else { if (gender == 0){ if ((((body > 11)) && ((body <= 15)))){ tempStr = "teenage"; } else { if ((((body > 15)) && ((body <= 23)))){ tempStr = "fully grown"; } else { if (body <= 11){ tempStr = "childish"; } else { if (body > 23){ tempStr = "musclebound"; }; }; }; }; }; }; }; }; return (tempStr); } public function buttDesc():String{ var chance:int; var tempStr:String; chance = percent(); tempStr = ("BUTT ERROR " + butt); if (chance <= 100){ if (butt <= 2){ tempStr = "flat"; }; if ((((butt > 2)) && ((butt <= 5)))){ tempStr = "tight"; }; if ((((butt > 5)) && ((butt <= 15)))){ tempStr = "ample"; }; if ((((butt > 15)) && ((butt <= 30)))){ tempStr = "large"; }; if ((((butt > 30)) && ((butt <= 50)))){ tempStr = "huge"; }; if ((((butt > 50)) && ((butt <= 80)))){ tempStr = "grand"; }; if ((((butt > 80)) && ((butt <= 130)))){ tempStr = "jumbo"; }; if ((((butt > 130)) && ((butt <= 175)))){ tempStr = "giant"; }; if (butt > 175){ tempStr = "ginormous"; }; }; if (chance > 50){ if (butt <= 2){ tempStr = "boney"; }; if ((((butt > 2)) && ((butt <= 5)))){ tempStr = "firm"; }; if ((((butt > 5)) && ((butt <= 15)))){ tempStr = "grope-able"; }; if ((((butt > 15)) && ((butt <= 30)))){ tempStr = "jiggly"; }; if ((((butt > 30)) && ((butt <= 50)))){ tempStr = "pillow-like"; }; if ((((butt > 50)) && ((butt <= 80)))){ tempStr = "wobbling"; }; if ((((butt > 80)) && ((butt <= 130)))){ tempStr = "swaying"; }; if ((((butt > 130)) && ((butt <= 175)))){ tempStr = "bouncing"; }; if (butt > 175){ tempStr = "constantly quivering"; }; }; return (tempStr); } public function invertGo():void{ if (bgC.visible == false){ bgC.visible = true; statPane.textColor = 0xFFFFFF; statValuePane.textColor = 0xFFFFFF; levelPane.textColor = 0xFFFFFF; levelValuePane.textColor = 0xFFFFFF; DayPane.textColor = 0xFFFFFF; DayValuePane.textColor = 0xFFFFFF; clockPane.textColor = 0xFFFFFF; outputWindow.textColor = 0xFFFFFF; region.textColor = 0xFFFFFF; currentRegion.textColor = 0xFFFFFF; } else { bgC.visible = false; statPane.textColor = 0; statValuePane.textColor = 0; levelPane.textColor = 0; levelValuePane.textColor = 0; DayPane.textColor = 0; DayValuePane.textColor = 0; clockPane.textColor = 0; outputWindow.textColor = 0; currentRegion.textColor = 0; region.textColor = 0; }; } public function clothesID(choice:int):int{ var tempNum:int; tempNum = 0; if (currentZone == 1){ if (choice == 1){ tempNum = 1; }; if (choice == 2){ tempNum = 2; }; if (choice == 3){ tempNum = 5; }; if (choice == 5){ tempNum = 6; }; if (choice == 6){ tempNum = 7; }; if (choice == 7){ tempNum = 8; }; if (choice == 9){ tempNum = 9; }; if (choice == 10){ tempNum = 11; }; if (choice == 11){ tempNum = 12; }; }; if (currentZone == 2){ if (choice == 1){ tempNum = 1; }; if (choice == 2){ tempNum = 2; }; if (choice == 3){ tempNum = 3; }; if (choice == 5){ tempNum = 4; }; if (choice == 6){ tempNum = 6; }; if (choice == 7){ tempNum = 7; }; if (choice == 9){ tempNum = 8; }; if (choice == 10){ tempNum = 14; }; if (choice == 11){ tempNum = 15; }; }; if (currentZone == 3){ if (choice == 1){ tempNum = 1; }; if (choice == 2){ tempNum = 2; }; if (choice == 3){ tempNum = 5; }; if (choice == 5){ tempNum = 7; }; if (choice == 6){ tempNum = 8; }; if (choice == 7){ tempNum = 9; }; if (choice == 9){ tempNum = 12; }; if (choice == 10){ tempNum = 13; }; if (choice == 11){ tempNum = 15; }; }; if (currentZone == 4){ if (choice == 1){ tempNum = 1; }; if (choice == 2){ tempNum = 2; }; if (choice == 3){ tempNum = 3; }; if (choice == 5){ tempNum = 4; }; if (choice == 6){ tempNum = 11; }; if (choice == 7){ tempNum = 12; }; if (choice == 9){ tempNum = 13; }; if (choice == 10){ tempNum = 14; }; if (choice == 11){ tempNum = 15; }; }; if (currentZone == 6){ if (choice == 1){ tempNum = 1; }; if (choice == 2){ tempNum = 2; }; if (choice == 3){ tempNum = 3; }; if (choice == 5){ tempNum = 4; }; if (choice == 6){ tempNum = 16; }; if (choice == 7){ tempNum = 17; }; if (choice == 9){ tempNum = 18; }; if (choice == 10){ tempNum = 19; }; if (choice == 11){ tempNum = 20; }; }; return (tempNum); } public function itemID(slotNumber:int):int{ var tempNum:Number; tempNum = 0; if (currentItems == 1){ tempNum = itemArray1[slotNumber]; }; if (currentItems == 2){ if (slotNumber > 12){ slotNumber = (slotNumber - 12); }; tempNum = itemArray2[slotNumber]; }; if (currentItems == 3){ if (slotNumber > 24){ slotNumber = (slotNumber - 24); }; tempNum = itemArray3[slotNumber]; }; return (tempNum); } public function doSavanna():void{ var chance:int; chance = percent(); if (chance <= 25){ outputMainText("While heading through the warm savanna, you think you feel it get suddenly warmer... A mrowl echoes around you as you see a slender felin female sway her hips towards you. Her fur looks like a mess, her bikini tops disheveled, 2 of her 6 nipples exposed and looking quite stiff and sore, and her loin cloth is completely drenched in something slick and sticky. Her hand reaches behind the cloth as she spots you and shivers.\r\r'Please... So hot... Must fuck...'\r\rUtterly driven and distraught by her lonely, fruitless heat, the desperately horny felin lunges at you, not sure whether she's about to fuck you or tear you to shreds!", true); doNext(); doListen = function ():void{ enemyID = 301; currentState = 2; enemyBaseStats(); eMaxHP = eHP; doBattle(); }; }; if ((((chance > 25)) && ((chance <= 50)))){ outputMainText("While trudging along the savanna, you hear the stamping of hooves. Drunken song erupts in the air as a large equan man stumbles your way. His pants unbuttoned, his hand hidden within, you can see him groping his large erection. In his other hand he holds a large mug, still filled with alcohol. He smiles as he sees you, and then charges right at you!", true); doNext(); doListen = function ():void{ enemyID = 302; currentState = 2; enemyBaseStats(); eMaxHP = eHP; doBattle(); }; }; if ((((chance > 50)) && ((chance <= 75)))){ outputMainText("You roam about the savanna, not really finding anything interesting. However, the warm weather kinda makes you wanna take off your clothes...", true); doLust(Math.floor(((lib * 2) - ment))); hrs = 1; doEnd(); }; if (chance > 75){ outputMainText("After a few hours of being lost under the sweltering sun, you come across the faint signs of a path. Would you like to follow it?", true); buttonConfirm(); doListen = function ():void{ if (buttonChoice == 6){ if (currentZone == 2){ outputMainText("Following the path, the vegetation becomes denser and denser until trees surround you. You begin to see various wooden structures built amongst the canopy. Rope-bridges and circular huts everywhere, with lithe cat-like people walking about or jumping from branch to branch. The path leads you right to one of the few spiraling ramps that encircles the trees, bringing you up to the tree-born city.\r\rYou have now entered the Felin home-city of Siz'Calit! Although, looking behind you, there seems to be no sign of the path you just took. Getting back might be a bit difficult...", true); regionChange(4); if (foundSizCalit == false){ foundSizCalit = true; }; hrs = 4; doEnd(); } else { if (currentZone == 4){ outputMainText("Following the path, signs of civilization come into view. Large tents flutter in the breeze, made from canvas held up by rocks and logs, with a few smaller brick buildings here and there. You can hear the soft clapping of hard feet everywhere, as you spot several large horse-like people walk and dash about.\r\rYou have now entered the Equan home-city of Firmshaft! Although, looking behind you, there seems to be no sign of the path you just took. Getting back might be a bit difficult...", true); regionChange(2); if (foundFirmshaft == false){ foundFirmshaft = true; }; hrs = 4; doEnd(); }; }; } else { outputMainText("You return from whence you came.", true); hrs = 1; doEnd(); }; }; }; } public function bellyDesc():String{ var chance:int; var tempStr:String; chance = percent(); tempStr = ("BELLY ERROR " + (pregnancyTime + vagBellyMod)); if (chance <= 100){ if ((pregnancyTime + vagBellyMod) <= 18){ tempStr = "flat"; }; if (((((pregnancyTime + vagBellyMod) > 18)) && (((pregnancyTime + vagBellyMod) <= 36)))){ tempStr = "hardly noticeable"; }; if (((((pregnancyTime + vagBellyMod) > 36)) && (((pregnancyTime + vagBellyMod) <= 72)))){ tempStr = "rather bloated"; }; if (((((pregnancyTime + vagBellyMod) > 72)) && (((pregnancyTime + vagBellyMod) <= 108)))){ tempStr = "obviously bulging"; }; if (((((pregnancyTime + vagBellyMod) > 108)) && (((pregnancyTime + vagBellyMod) <= 144)))){ tempStr = "cradleable"; }; if (((((pregnancyTime + vagBellyMod) > 144)) && (((pregnancyTime + vagBellyMod) <= 180)))){ tempStr = "greatly protruding"; }; if (((((pregnancyTime + vagBellyMod) > 180)) && (((pregnancyTime + vagBellyMod) <= 216)))){ tempStr = "beachball-sized"; }; if (((((pregnancyTime + vagBellyMod) > 216)) && (((pregnancyTime + vagBellyMod) <= 252)))){ tempStr = "excessively large"; }; if (((((pregnancyTime + vagBellyMod) > 252)) && (((pregnancyTime + vagBellyMod) <= 288)))){ tempStr = "eye-catching"; }; if (((((pregnancyTime + vagBellyMod) > 288)) && (((pregnancyTime + vagBellyMod) <= 324)))){ tempStr = "doorway-crowding"; }; if (((((pregnancyTime + vagBellyMod) > 324)) && (((pregnancyTime + vagBellyMod) <= 360)))){ tempStr = "hallway-filling"; }; if (((((pregnancyTime + vagBellyMod) > 360)) && (((pregnancyTime + vagBellyMod) <= 396)))){ tempStr = "street-clearing"; }; if (((((pregnancyTime + vagBellyMod) > 396)) && (((pregnancyTime + vagBellyMod) <= 432)))){ tempStr = "larger-than-an-average-person"; }; if (((((pregnancyTime + vagBellyMod) > 432)) && (((pregnancyTime + vagBellyMod) <= 540)))){ tempStr = "impossibly huge"; }; if ((pregnancyTime + vagBellyMod) > 540){ tempStr = "breeding-factory"; }; }; if (chance > 50){ }; return (tempStr); } public function doExplore():void{ bc(); if (currentZone == 1){ viewButtonOutline(1, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 0); viewButtonText(1, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 0); buttonWrite(6, "Softlik"); buttonWrite(1, "Forest"); buttonWrite(7, "Dairy Farm"); buttonWrite(10, "Plains"); doListen = function ():void{ if (buttonChoice == 6){ doSoftlik(); }; if (buttonChoice == 1){ doForest(); }; if (buttonChoice == 7){ doDairyFarm(); }; if (buttonChoice == 10){ doPlains(); }; }; }; if (currentZone == 2){ viewButtonOutline(0, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0); viewButtonText(0, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0); buttonWrite(6, "Firmshaft"); buttonWrite(3, "Plains"); buttonWrite(5, "Savanna"); buttonWrite(9, "Desert"); buttonWrite(11, "Old Cave"); doListen = function ():void{ if (buttonChoice == 6){ doFirmshaft(); }; if (buttonChoice == 3){ doPlains(); }; if (buttonChoice == 5){ doSavanna(); }; if (buttonChoice == 9){ doDesert(); }; if (buttonChoice == 11){ doOldCave(); }; }; }; if (currentZone == 3){ viewButtonOutline(0, 0, 0, 0, 1, 1, 1, 0, 0, 1, 0, 0); viewButtonText(0, 0, 0, 0, 1, 1, 1, 0, 0, 1, 0, 0); buttonWrite(6, "Tieden"); buttonWrite(5, "Lake"); buttonWrite(7, "Forest"); buttonWrite(10, "Jungle"); doListen = function ():void{ if (buttonChoice == 6){ doTieden(); }; if (buttonChoice == 5){ doLake(); }; if (buttonChoice == 7){ doForest(); }; if (buttonChoice == 10){ doJungle(); }; }; }; if (currentZone == 4){ viewButtonOutline(0, 1, 0, 0, 0, 1, 1, 0, 1, 0, 1, 0); viewButtonText(0, 1, 0, 0, 0, 1, 1, 0, 1, 0, 1, 0); buttonWrite(6, "Siz'Calit"); buttonWrite(2, "Jungle"); buttonWrite(7, "Savanna"); buttonWrite(9, "Beach"); buttonWrite(11, "Desert"); doListen = function ():void{ if (buttonChoice == 6){ doSizCalit(); }; if (buttonChoice == 2){ doJungle(); }; if (buttonChoice == 7){ doSavanna(); }; if (buttonChoice == 9){ doBeach(); }; if (buttonChoice == 11){ doDesert(); }; }; }; if (currentZone == 6){ viewButtonOutline(0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0); viewButtonText(0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0); buttonWrite(6, "Oviasis"); buttonWrite(2, "Desert"); buttonWrite(3, "Den"); if (silRep > 0){ Choice3Outline.visible = true; Choice3.visible = true; }; doListen = function ():void{ if (buttonChoice == 6){ doOviasis(); }; if (buttonChoice == 2){ doDesert(); }; if (buttonChoice == 3){ doDen(); }; }; }; } public function stashSlotWrite(slotNumber:int, slotItem:int):void{ if (currentStash == 1){ stashArray1[slotNumber] = slotItem; }; if (currentStash == 2){ stashArray2[slotNumber] = slotItem; }; if (currentStash == 3){ stashArray3[slotNumber] = slotItem; }; } public function doImpregnate(erace:int):void{ var chance:int; var tempPregMod:int; var extra:int; chance = percent(); tempPregMod = 0; if (babyFree > 0){ tempPregMod = (tempPregMod - 50); }; trace(((((chance + " ") + pregChanceMod) + " ") + tempPregMod)); if (((pregCheck(1)) && ((((chance + pregChanceMod) + tempPregMod) >= 70)))){ i = 0; extra = 0; while (percent() < ((extraPregChance + 10) - ((4 * (i + 1)) * i))) { extra++; i++; }; i = 0; while (i < pregArray.length) { if (pregArray[i] == false){ if (erace == 100){ pregArray[(i + 2)] = ((80 + Math.floor((percent() / 10))) + (extra * 30)); pregArray[(i + 4)] = (extra * 2); }; if (erace == 1){ pregArray[(i + 2)] = ((120 + Math.floor((percent() / 5))) + (extra * 50)); pregArray[(i + 4)] = extra; }; if (erace == 2){ pregArray[(i + 2)] = ((160 + Math.floor((percent() / 5))) + (extra * 70)); pregArray[(i + 4)] = extra; }; if (erace == 3){ pregArray[(i + 2)] = ((100 + Math.floor((percent() / 5))) + (extra * 40)); pregArray[(i + 4)] = (extra * 2); }; if (erace == 4){ pregArray[(i + 2)] = ((90 + Math.floor((percent() / 5))) + (extra * 35)); pregArray[(i + 4)] = (extra * 2); }; if (erace == 5){ pregArray[(i + 2)] = ((180 + Math.floor((percent() / 5))) + (extra * 35)); pregArray[(i + 4)] = extra; }; if (erace == 6){ pregArray[(i + 2)] = ((80 + Math.floor((percent() / 10))) + (extra * 60)); pregArray[(i + 4)] = (extra * 3); }; if (erace == 7){ pregArray[(i + 2)] = ((50 + Math.floor((percent() / 10))) + (extra * 20)); pregArray[(i + 4)] = (extra * 3); }; pregArray[(i + 1)] = erace; pregArray[i] = true; i = pregArray.length; }; i = (i + 5); }; }; } public function doBeach():void{ var chance:int; chance = percent(); if (chance <= 10){ outputMainText("While taking a nice stroll along the beach, you see the silhouette of somebody sunning themselves on the sand in the distance. Judging by the ample curves at their chest, they seem to be a rather well-endowed in the breast department. Considering you can also spot the plump perk nipples protruding unrestrained from where you are, you also assume the person is likely to be nude. And judging by the large, swollen belly, you suspect that 'she' may be quite pregnant as well...\r\rWould you like to inspect her more closely?", true); buttonConfirm(); doListen = function ():void{ if (buttonChoice == 6){ outputMainText("Moving closer, you squint in an attempt for a better view. However, her body seems moist as the sun reflects off her slick skin easily, making it difficult for you to see. It's not until you're nearly on top of her that you can clearly make out what she is...\r\rShe has curly hair that hangs past her shoulders, coral pink in color. It looks like it's completely drenched, despite laying out in the sun, and has bits of seaweed caught within it.\r\rHer face is slightly slightly round, with incredibly smooth looking skin that is oddly pinker than usual, though not nearly as noticeable as her hair. She wears a very relaxed and content expression, her eyes closed as she soaks up the warmth of the sun.\r\rUpon her chest heaves two quite enourmous breasts, each larger than her head. She doesn't seem to be completely nude as two starfish cover her nipples. They stick out against her breasts quite far, easily mistaken from your first observations. They also pulsate slightly, their twitching causing the fleshy mounds to jiggle, as though they were suckling from her.\r\rAs suspected, her belly is quite gravid indeed. Her slender hands caress it as she lays there, practically glowing with her engorged fertility. In relation to the rest of her torso, the belly seems far too large for her. Although, as you look further still, it's no surprise that she can manage to carry it...", true); doNext(); doListen = function ():void{ outputMainText("Her 'butt' is large for her slender torso, her hips wider than you'd expect. And she has no legs...\r\rEight large, long tentacles squirm idly below her waist. They share a similar tone of pink as her hair, though much deeper and nearly purple, with a thin membrane of fleshy webbing between them. Their undersides are riddled with little suction cups, popping and sticking onto each other as they writhe. And as you step too close, one twitches out and touches you, realizing you're there.\r\rThe octopus girl's eyes snap open. They're large and nearly all a deep purple in color, with a slight amount of white around the edges. She glares at you in an instant and smirks. And you're quite unsure if it's a playful smirk or a predatory one...\r\rEither way, as her tentacles roll beneath her body and bring her to a 'stand', wobbling slightly from her large bosom and belly, you'll soon find out!", true); doNext(); doListen = function ():void{ enemyID = 303; currentState = 2; enemyBaseStats(); eMaxHP = eHP; doBattle(); }; }; } else { outputMainText("Deciding it best to leave the curvy woman in peace, you turn around and head back to Siz'Calit.", true); hrs = 1; stats(0, 1, 0, 0); doEnd(); }; }; }; if ((((chance > 10)) && ((chance <= 35)))){ outputMainText("While taking a nice stroll along the beach, you see the silhouette of somebody sunning themselves on the sand in the distance. Judging by the ample curves at their chest, they seem to be a rather well-endowed in the breast department. Considering you can also spot the plump perk nipples protruding unrestrained from where you are, you also assume the person is likely to be nude. And judging by the large, swollen belly, you suspect that 'she' may be quite pregnant as well...\r\rWould you like to inspect her more closely?", true); buttonConfirm(); doListen = function ():void{ if (buttonChoice == 6){ outputMainText("Moving closer, you can make out her figure much more easily. She has a slender frame, quite lithe, with a thick tail that narrows to a point and swishes through the sand between her spread legs. Oddly, she seems to be covered in scales, ranging from green to a light purple. And you seem to be able to see ALL of her scales, as she is quite nude while she soaks up the sun.\r\rShe spots you as you approach and gently turns to face you, a smile on her reptillian face 'Hello dearie. Do you enjoy the view?' She sticks out her tongue as her hand gropes at her large breast. 'Mmm, but I don't mind. I'm much too happy. Days like this with my husband are so nice~ When he gets so horny and just absolutely fills me up~!'\r\rHer other hand roams over her huge belly before finding its way to her crotch. You can hear a slurp as she pleasure herself and you spot a spurt of white gunk spew across the sand.\r\r'He went off to fetch some food, though, and I don't know when he'll be back. Would you be a dear and help me with something down there while he's gone, if you would?'", true); buttonConfirm(); doListen = function ():void{ if (buttonChoice == 6){ outputMainText("You nod your head and begin to move towards her legs.\r\r'Thank you so much, dearie~ I have a tendency to build up my eggs, unlike other lizan girls, and my husband's stuff is the easiest way for me to lay them all at once. I just need you to sit there and be ready to catch them when they do, or else they'll float into the water and be such a waste...'\r\rNodding once again, you maneuver around her body and kneel down between her legs, straddling her thick reptilian tail. Your eyes go wide, however, as there's much more white gunk than you expected, spunk literally oozing from her scaley slit, despite the fact she's clenching to keep it in.\r\r'Just like that dearie. Sitting on my tail helps me push. Now, get ready!'\r\rYou reach out in preparation, your fingers slipping across her supple lips and making her moan. Her thighs shudder as she lets out a gasp, letting her cunt stretch wide.\r\rCum floods from her loins, pooling around your knees and over her tail. You quickly realize that her large belly had mostly been inflated with cum rather than some mere eggs! Especially as the eggs that rush out are relatively small, maybe twice the size of a chicken's. You scramble to pluck them from the river of cum, trying to spot their white shells amidst the white fluid. Your hands slip and stick from all the spunk, but you manage to get them all. Hardly half a dozen...", true); doNext(); doListen = function ():void{ outputMainText((("'Whew... Thanks a lot, dearie. Sorry to umm...' She looks at your " + clothesBottom()) + " and how drenched it is with her husband's seed. 'come on you like that... Don't worry though, it'll wash right out. And he takes a drug to keep it sterile for our little outtings. Wouldn't want to have all these eggs be alive now, would we?' She chuckles. 'But here, take one for yourself. They're good for you, when they don't have babies in them!'\r\rShe giggles and kisses you on the cheek, thanking you once again before you head off. She dozes back off, her tail idly swishing in the pool of semen, her thighs drenched in the stuff, and looking all the happier for it."), true); itemAdd(219); if (percent() < 35){ outputMainText("\r\rAs you begin to leave, however, you spot something move towards you. Another reptillian, this one seems quite male as two cocks hang from his groin and knock against his knees. He seems a bit sheepish at first, blush filling the scales of his face due to his rather immodest lack of an outfit, but realizes the damage is already done and waves you over.\r\r'Umm... I suppose you helped out my wife then?' He spots the egg in your hand and the lack of belly on his wife. 'Well, thank you for that. Sometimes I just can't get back in time. Here, take one of these at least, I think I've got plenty.'\r\rHe hands you a berry but actually refers to his scrotum. It hangs past his wangs and seems stuffed with testicles, though you can't easily count how many. They're each at least the size of a small melon and can easily explain how his wife was so bloated.\r\rNevertheless, he thanks you again and lets you head off, wanting some more time with his wife.", false); itemAdd(218); }; hrs = 4; doEnd(); }; } else { outputMainText("You shake your head no, not wanting to interrupt their time together.\r\r'Ahh, thank you dearie, I appreciate the sentiment. Here, at least take one of these. My husband uses them on occasion, but he prefers a different kind. Not that it matters to me, either way he makes me happy~' She twitches as her head leans back with a strong sigh, another spurt spewing over the sand.\r\rShe then picks something from her pack beside her and tosses it over to you, letting you head back to Siz'Calit.", true); itemAdd(208); hrs = 2; doEnd(); }; }; } else { outputMainText("Deciding it best to leave the curvy woman in peace, you turn around and head back to Siz'Calit.", true); hrs = 1; stats(0, 1, 0, 0); doEnd(); }; }; }; if ((((chance > 35)) && ((chance <= 40)))){ outputMainText("Walking along the beach, you spot something shiny in the sand.", true); itemAdd(206); hrs = 2; doEnd(); }; if ((((chance > 40)) && ((chance <= 60)))){ outputMainText("Combing the beach, you find something odd buried in the sand.", true); itemAdd(207); hrs = 2; doEnd(); }; if ((((chance > 60)) && ((chance <= 80)))){ outputMainText("Strolling along the beach, you suddenly begin to hop up and down, your foot aching painfully as you step on an urchin!", true); doHP(-(Math.floor((percent() / 10)))); hrs = 2; doEnd(); }; if (chance > 80){ outputMainText("You walk along the beach, the ocean breeze blowing through your hair, the smell of salt on the wind. You take a deep breath and feel a bit rejuvenated.", true); doLust(-5); stats(0, 0, -1, 0); exhaustion = (exhaustion - 2); hrs = 1; doEnd(); }; } public function pullUD(source:int):String{ var tempStr:String; tempStr = ((("PULL UP/DOWN ERROR " + attireTop) + " ") + attireBot); if (source == 1){ if (attireTop == -1){ tempStr = "open"; }; if (attireTop == 0){ tempStr = "up"; }; if (attireTop == 1){ tempStr = "up"; }; if (attireTop == 3){ tempStr = "down"; }; if (attireTop == 5){ tempStr = "down"; }; if (attireTop == 6){ tempStr = "open"; }; if (attireTop == 9){ tempStr = "open"; }; if (attireTop == 12){ tempStr = "down"; }; if (attireTop == 13){ tempStr = "down"; }; if (attireTop == 17){ tempStr = "down"; }; if (attireTop == 18){ tempStr = "up"; }; if (attireTop == 19){ tempStr = "down"; }; }; if (source == 2){ if (attireBot == -1){ tempStr = "open"; }; if (attireBot == 0){ tempStr = "down"; }; if (attireBot == 2){ tempStr = "down"; }; if (attireBot == 4){ tempStr = "down"; }; if (attireBot == 5){ tempStr = "up"; }; if (attireBot == 6){ tempStr = "open"; }; if (attireBot == 7){ tempStr = "up"; }; if (attireBot == 8){ tempStr = "down"; }; if (attireBot == 10){ tempStr = "down"; }; if (attireBot == 11){ tempStr = "down"; }; if (attireBot == 12){ tempStr = "up"; }; if (attireBot == 13){ tempStr = "up"; }; if (attireBot == 14){ tempStr = "up"; }; if (attireBot == 15){ tempStr = "down"; }; if (attireBot == 16){ tempStr = "up"; }; if (attireBot == 17){ tempStr = "aside"; }; if (attireBot == 20){ tempStr = "down"; }; }; return (tempStr); } public function regionName(tempInt:int):String{ var tempStr:String; tempStr = ("REGION ERROR " + currentZone); if (tempInt == 1){ tempStr = "Softlik"; }; if (tempInt == 2){ tempStr = "Firmshaft"; }; if (tempInt == 3){ tempStr = "Tieden"; }; if (tempInt == 4){ tempStr = "Siz'Calit"; }; if (tempInt == 6){ tempStr = "Oviasis"; }; return (tempStr); } public function statDisplay():void{ statValuePane.htmlText = ((((((((((("\r\r" + int(str)) + "\r") + int(ment)) + "\r") + int(lib)) + "\r") + int(sen)) + "\r\r\r") + int(HP)) + "\r") + int(lust)); if (bgC.visible == true){ statValuePane.textColor = 0xFFFFFF; }; } public function loseItem(slot:int):void{ if (itemID(slot) == 101){ rapeMod = (rapeMod - 10); }; if (itemID(slot) == 102){ runMod = (runMod - 20); }; if (itemID(slot) == 200){ vagMoist = (vagMoist - 4); cockMoist = (cockMoist - 4); stats(0, 0, 0, -10); }; if (itemID(slot) == 215){ rapeMod = (rapeMod - 5); runMod = (runMod - 5); milkHPMod = (milkHPMod - 5); }; if (itemID(slot) == 233){ carryMod = (carryMod - 75); }; if (itemID(slot) == 234){ pregRate = (pregRate - 0.5); minLust = (minLust - 10); hips = (hips - 10); }; if (itemID(slot) == 236){ SexPMod = (SexPMod - 0.5); changeMod = (changeMod - 0.3); }; if ((((itemID(slot) == 116)) && ((weapon == 116)))){ weapon = 10; }; if ((((itemID(slot) == 117)) && ((weapon == 117)))){ weapon = 10; }; if ((((itemID(slot) == 118)) && ((weapon == 118)))){ weapon = 10; }; if ((((itemID(slot) == 119)) && ((weapon == 119)))){ weapon = 10; }; if ((((itemID(slot) == 127)) && ((weapon == 127)))){ weapon = 10; }; if ((((itemID(slot) == 235)) && ((weapon == 235)))){ weapon = 10; }; if (stackAmount(slot) < 2){ itemSlotWrite(slot, 0); }; stackSlotWrite(slot, -1); } public function checkZero():void{ if (cockSize < 0){ cockSize = 0; }; if (cockTotal < 0){ cockTotal = 0; }; if (balls < 0){ balls = 0; }; if (ballSize < 0){ ballSize = 0; }; if (cockMoist < 0){ cockMoist = 0; }; if (cockMoist > 12){ cockMoist = 12; }; if (breastSize < 0){ breastSize = 0; }; if (boobTotal < 0){ boobTotal = 0; }; if (nippleSize < 1){ nippleSize = 1; }; if (udderSize < 1){ udderSize = 1; }; if (teatSize < 2){ teatSize = 2; }; if (clitSize < 0){ clitSize = 0; }; if (vagSize < 0){ vagSize = 0; }; if (vagTotal < 0){ vagTotal = 0; }; if (vagMoist < 0){ vagMoist = 0; }; if (vagMoist > 12){ vagMoist = 12; }; if (vulvaSize < 0){ vulvaSize = 0; }; if (exhaustion < 0){ exhaustion = 0; }; if (exhaustionPenalty < 0){ exhaustionPenalty = 0; }; if (hips < 1){ hips = 1; }; if (butt < 1){ butt = 1; }; if (body < 5){ body = 5; }; if (tallness < 3){ tallness = 3; }; if (cockSizeMod < 0.1){ cockSizeMod = 0.1; }; if (vagSizeMod < 0.1){ vagSizeMod = 0.1; }; if (vagBellyMod < 0){ vagBellyMod = 0; }; if (pregChanceMod < -100){ pregChanceMod = -100; }; if (lactation < 0){ lactation = 0; }; if (milkMod < 0){ milkMod = 0; }; if (coin < 0){ coin = 0; }; if ((pregArray.length / 5) < vagTotal){ while ((pregArray.length / 5) < vagTotal) { pregArray.push(false, 0, 0, 0, 0); }; }; } public function doSexP(changes:int):void{ if ((SexP + (changes * SexPMod)) >= 100){ changes = (changes - Math.ceil(((100 - SexP) / SexPMod))); SexP = 0; level++; levelUP++; doSexP(changes); } else { SexP = (SexP + (changes * SexPMod)); }; levelValuePane.text = ((((level + "\r") + SexP) + "\r") + coin); if (bgC.visible == true){ levelValuePane.textColor = 0xFFFFFF; }; } public function decGet(number:Number, places:int):String{ var tempStr:String; var tempStr2:String; var tempInt:int; tempStr = (("" + number) + ""); tempStr2 = ""; tempInt = 0; tempInt = tempStr.indexOf(".", 0); if (tempInt > 0){ tempStr2 = tempStr.substring(0, ((tempInt + places) + 1)); } else { tempStr2 = tempStr; }; return (tempStr2); } public function changeBot(ID:int):void{ if (attireBot == -1){ stats(2, 2, 0, 0); }; if (attireBot == 0){ stats(0, 4, 0, 0); }; if (attireBot == 2){ }; if (attireBot == 4){ enticeMod = (enticeMod - 3); stats(0, 2, 0, -2); cumMod = (cumMod + 0.2); }; if (attireBot == 7){ runMod = (runMod - 3); cumMod = (cumMod - 0.2); stats(-2, 2, 0, 0); pregChanceMod = (pregChanceMod - 4); }; if (attireBot == 8){ runMod = (runMod - 3); stats(-2, 0, 3, 0); }; if (attireBot == 10){ vagMoist = (vagMoist + 2); cockMoist = (cockMoist + 2); hips = (hips - 1); stats(0, 4, 0, 0); }; if (attireBot == 11){ vagMoist = (vagMoist + 5); cockMoist = (cockMoist + 5); hips = (hips - 1); butt = (butt - 2); stats(0, 4, 4, 0); }; if (attireBot == 14){ cumMod = (cumMod - 0.2); enticeMod = (enticeMod - 4); stats(0, 4, 0, -2); pregChanceMod = (pregChanceMod - 6); }; if (attireBot == 15){ cumMod = (cumMod + 0.2); runMod = (runMod - 5); enticeMod = (enticeMod - 3); stats(2, 3, 0, -2); }; if (attireBot == 16){ cumMod = (cumMod - 0.2); runMod = (runMod - 4); pregChanceMod = (pregChanceMod - 5); stats(-2, 4, 0, -2); }; if (attireBot == 20){ cumMod = (cumMod + 0.3); runMod = (runMod + 3); vulvaSize = (vulvaSize - 1); enticeMod = (enticeMod - 4); stats(0, 2, -2, -2); }; if (ID == -1){ if ((((attireTop == attireBot)) && (!((attireTop == -1))))){ attireBot = ID; changeTop(-1); }; stats(-2, -2, 0, 0); }; if (ID == 0){ stats(0, -4, 0, 0); }; if (ID == 2){ }; if (ID == 4){ enticeMod = (enticeMod + 3); stats(0, -2, 0, 2); cumMod = (cumMod - 0.2); }; if (ID == 7){ runMod = (runMod + 3); cumMod = (cumMod + 0.2); stats(2, -2, 0, 0); pregChanceMod = (pregChanceMod + 4); }; if (ID == 8){ runMod = (runMod + 3); stats(2, 0, -3, 0); }; if (ID == 10){ vagMoist = (vagMoist - 2); cockMoist = (cockMoist - 2); hips = (hips + 1); stats(0, -4, 0, 0); }; if (ID == 11){ vagMoist = (vagMoist - 5); cockMoist = (cockMoist - 5); hips = (hips + 1); butt = (butt + 2); stats(0, -4, -4, 0); }; if (ID == 14){ cumMod = (cumMod + 0.2); enticeMod = (enticeMod + 4); stats(0, -4, 0, 2); pregChanceMod = (pregChanceMod + 6); }; if (ID == 15){ cumMod = (cumMod - 0.2); runMod = (runMod + 5); enticeMod = (enticeMod + 3); stats(-2, -3, 0, 2); }; if (ID == 16){ cumMod = (cumMod + 0.2); runMod = (runMod + 4); pregChanceMod = (pregChanceMod + 5); stats(2, -4, 0, 2); }; if (ID == 20){ cumMod = (cumMod - 0.3); runMod = (runMod - 3); vulvaSize = (vulvaSize + 1); enticeMod = (enticeMod + 4); stats(0, -2, 2, 2); }; if ((((((attireTop == attireBot)) && (!((ID == 0))))) && (!((ID == -1))))){ attireBot = ID; changeTop(1); } else { attireBot = ID; }; } public function bodyType():void{ statDisplay(); if (gender == 1){ viewButtonOutline(0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0); viewButtonText(0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0); buttonWrite(2, "Bodybuilder"); buttonWrite(5, "Average"); buttonWrite(7, "Femme Boy"); buttonWrite(10, "Child"); }; if (gender == 2){ viewButtonOutline(0, 1, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0); viewButtonText(0, 1, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0); buttonWrite(2, "Bodybuilder"); buttonWrite(5, "Average"); buttonWrite(3, "Voluptuous"); buttonWrite(10, "Child"); }; if (gender == 3){ viewButtonOutline(0, 1, 0, 0, 1, 1, 0, 0, 0, 1, 0, 0); viewButtonText(0, 1, 0, 0, 1, 1, 0, 0, 0, 1, 0, 0); buttonWrite(2, "Bodybuilder"); buttonWrite(5, "Masculine"); buttonWrite(6, "Feminine"); buttonWrite(10, "Child"); }; outputMainText("Choose your body type. Types determine height and a few beginning characteristics. Their names describe what they look like.", true); doListen = function ():void{ if (gender == 1){ if (buttonChoice == 2){ body = 29; hips = 4; butt = 4; tallness = (tallness + (70 + Math.floor((percent() / 10)))); str = (str + 1); stats(0, 0, 0, 0); doStartingDescription(); }; if (buttonChoice == 5){ body = 20; hips = 3; butt = 3; tallness = (tallness + (68 + Math.floor((percent() / 10)))); lib = (lib + 1); stats(0, 0, 0, 0); doStartingDescription(); }; if (buttonChoice == 7){ body = 15; hips = 7; butt = 6; breastSize = 2; nippleSize = 2; tallness = (tallness + (60 + Math.floor((percent() / 10)))); sen = (sen + 1); stats(0, 0, 0, 0); doStartingDescription(); }; if (buttonChoice == 10){ body = 7; hips = 1; butt = 2; tallness = (tallness + (42 + Math.floor((percent() / 10)))); sen = (sen + 2); ment = (ment - 2); str = (str - 4); lib = (lib + 2); cockSize = 6; cockMoist = 1; ballSize = 1; stats(0, 0, 0, 0); doStartingDescription(); }; }; if (gender == 2){ if (buttonChoice == 2){ body = 29; hips = 5; butt = 4; tallness = (tallness + (68 + Math.floor((percent() / 10)))); breastSize = 4; nippleSize = 4; str = (str + 1); stats(0, 0, 0, 0); doStartingDescription(); }; if (buttonChoice == 3){ body = 16; hips = 9; butt = 6; tallness = (tallness + (60 + Math.floor((percent() / 10)))); breastSize = 10; nippleSize = 10; lib = (lib + 2); stats(0, 0, 0, 0); doStartingDescription(); }; if (buttonChoice == 5){ body = 13; hips = 6; butt = 5; tallness = (tallness + (60 + Math.floor((percent() / 10)))); breastSize = 6; nippleSize = 6; ment = (ment + 1); stats(0, 0, 0, 0); doStartingDescription(); }; if (buttonChoice == 10){ body = 7; hips = 2; butt = 2; tallness = (tallness + (41 + Math.floor((percent() / 10)))); sen = (sen + 2); ment = (ment - 2); str = (str - 4); lib = (lib + 2); vagSize = 6; breastSize = 2; nippleSize = 2; vulvaSize = 2; clitSize = 1; vagMoist = 1; stats(0, 0, 0, 0); doStartingDescription(); }; }; if (gender == 3){ if (buttonChoice == 2){ body = 29; hips = 4; butt = 4; tallness = (tallness + (68 + Math.floor((percent() / 10)))); breastSize = 6; nippleSize = 6; str = (str + 1); stats(0, 0, 0, 0); doStartingDescription(); }; if (buttonChoice == 5){ body = 19; hips = 3; butt = 3; tallness = (tallness + (62 + Math.floor((percent() / 10)))); breastSize = 2; nippleSize = 2; lib = (lib + 1); stats(0, 0, 0, 0); doStartingDescription(); }; if (buttonChoice == 6){ body = 14; hips = 5; butt = 4; tallness = (tallness + (58 + Math.floor((percent() / 10)))); breastSize = 6; nippleSize = 6; ment = (ment + 1); stats(0, 0, 0, 0); doStartingDescription(); }; if (buttonChoice == 10){ body = 7; hips = 2; butt = 2; tallness = (tallness + (42 + Math.floor((percent() / 10)))); sen = (sen + 2); ment = (ment - 2); str = (str - 4); lib = (lib + 2); cockSize = 4; cockMoist = 1; ballSize = 1; vagSize = 4; clitSize = 1; vagMoist = 1; vulvaSize = 1; breastSize = 2; nippleSize = 2; stats(0, 0, 0, 0); doStartingDescription(); }; }; }; } public function lactChange(which:int, amount:int):void{ if ((((((which == 1)) && (((lactation + amount) >= 1)))) && ((lactation < 1)))){ outputMainText((("\r\rBlotches spread across your " + clothesTop()) + " around your nipples. Curiously, you dab your finger in the moistness and take a taste. Milk... Your breasts seem to have begun lactating!"), false); nipplePlay = 10; }; if ((((((((which == 2)) && (((udderLactation + amount) >= 1)))) && ((udderLactation < 1)))) && ((udders == true)))){ outputMainText((("\r\rBlotches spread across your " + clothesBottom()) + ", starting from your teats. Curiously, you dab your finger in the moistness and take a taste. Milk... Your udder seems to have begun lactating!"), false); udderPlay = 10; }; if ((((((which == 1)) && (((lactation + amount) < 1)))) && ((lactation >= 1)))){ outputMainText("\r\rYour nipples feel exceptionally dry... It seems your breasts are no longer producing milk.", false); nipplePlay = 0; if (milkEngorgementLevel > 0){ boobChange(-1); }; milkEngorgementLevel = 0; milkEngorgement = 0; }; if ((((((((which == 2)) && (((udderLactation + amount) < 1)))) && ((udderLactation >= 1)))) && ((udders == true)))){ outputMainText("\r\rYour teats feel exceptionally dry... It seems your udder is no longer producing milk.", false); if (udderEngorgementLevel == 1){ udderChange(-1); }; if (udderEngorgementLevel == 2){ udderChange(-2); }; if (udderEngorgementLevel == 3){ udderChange(-3); }; udderEngorgementLevel = 0; udderEngorgement = 0; udderPlay = 0; }; if (which == 1){ lactation = (lactation + amount); }; if (which == 2){ udderLactation = (udderLactation + amount); }; if ((((((lactation <= 0)) || ((((udderLactation <= 0)) && ((udders == true)))))) && ((pregStatus > 0)))){ outputMainText(" ...However a few minutes later your milk starts right back up. Seems your body needs the milk for something else.", false); lactation = 1; if (udders == true){ udderLactation = 1; }; }; if (lactation < 0){ lactation = 0; }; if (udderLactation < 0){ udderLactation = 0; }; } public function enemyAttack():void{ var attack:int; var chance:int; attack = percent(); if (enemyID == 101){ if (attack <= 50){ outputMainText("\r\rThe cock-snake whips around, slapping you harshly with its tail and causing a painful welt.", false); doHP(-(eDmg(9))); } else { if (attack > 50){ outputMainText((("\r\rThe cock-snake opens its maw, long thin fangs dripping with venom, and it springs forward at your crotch. Its mouth bites down onto the crotch of your " + clothesBottom()) + ", fangs sinking right into"), false); if (cockTotal > 0){ outputMainText(((((((((((" " + oneYour(1)) + " cock") + plural(1)) + ". It doesn't hurt much, but the venom that spills into you makes you feel strangely aroused and your cock") + plural(1)) + " swell") + plural(3)) + " within your ") + clothesBottom()) + ", becoming permanently larger..."), false); doLust(Math.floor((((cockSize * cockSizeMod) / 5) + (percent() / 10)))); cockChange(1, 0); } else { if ((((cockTotal < 1)) && ((vagTotal > 0)))){ if ((((clitSize > 20)) && ((percent() <= 25)))){ outputMainText(((((((((" " + oneYour(2)) + " ") + clitDesc()) + " clit") + plural(2)) + ". You feel it swell and shift within your ") + clothesBottom()) + ", your lips started to grow quite oddly as well..."), false); vagChange(0, -1); cockChange(0, 1); doLust(Math.floor((((cockSize * cockSizeMod) / 5) + (percent() / 10)))); } else { outputMainText(((((((((((((" " + oneYour(2)) + " ") + clitDesc()) + " clit") + plural(2)) + ". It doesn't hurt much, but the venom that spills into you makes you feel strangely aroused as your clit") + plural(2)) + " swell") + plural(4)) + " a little within your ") + clothesBottom()) + ", becoming permanently larger..."), false); clitSize++; doLust(Math.floor(((clitSize / 5) + (percent() / 10)))); }; } else { if (percent() <= 40){ outputMainText(" your groin. It doesn't hurt much, but you feel a little odd...", false); cockChange(1, 0); doLust((percent() / 10)); } else { outputMainText(" your groin. Though the endeavor proves fruitless, as all its venom manages to do is arouse you a little.", false); doLust((percent() / 20)); }; }; }; }; }; }; if (enemyID == 102){ if (attack <= 30){ outputMainText((("\r\rThe sentient dust devil overcomes you and whooshes about your body, getting sand all over your " + skinDesc()) + " and into some crevices you'd rather not think of, making you very uncomfortable and wearing away some of your sensitivity."), false); stats(0, 0, 0, -1); doLust(-5); } else { if ((((attack <= 60)) && ((((((((((((((((cockMoist > 9)) || ((((cockMoist > 6)) && ((lust > 25)))))) || ((((cockMoist > 3)) && ((lust > 50)))))) || ((((cockMoist > 0)) && ((lust > 75)))))) && ((cockTotal > 0)))) || ((((((((((vagMoist > 9)) || ((((vagMoist > 6)) && ((lust > 25)))))) || ((((vagMoist > 3)) && ((lust > 50)))))) || ((((vagMoist > 0)) && ((lust > 75)))))) && ((vagTotal > 0)))))) || ((((((((lactation > 2)) && ((milkEngorgementLevel == 3)))) || ((((lactation > 5)) && ((milkEngorgementLevel == 2)))))) && ((breastSize > 2)))))) || ((((((((((udderLactation > 2)) && ((udderEngorgementLevel == 3)))) || ((((udderLactation > 5)) && ((udderEngorgementLevel == 2)))))) && ((udders == true)))) && ((udderSize > 3)))))))){ if ((((((((lactation > 2)) && ((milkEngorgementLevel == 3)))) || ((((lactation > 5)) && ((milkEngorgementLevel == 2)))))) && ((breastSize > 2)))){ outputMainText((("\r\rThe whirling sand leaps out at your " + boobDesc()) + " chest and laps up some of the milk that spills from it, sucking it back in and strengthening the devil's endurance."), false); doeHP((5 + Math.floor((percent() / 20)))); } else { if ((((((((((udderLactation > 2)) && ((udderEngorgementLevel == 3)))) || ((((udderLactation > 5)) && ((udderEngorgementLevel == 2)))))) && ((udders == true)))) && ((udderSize > 3)))){ outputMainText((("\r\rThe whirling sand leaps out at your " + udderDesc()) + " udder and laps up some of the milk that spills from it, sucking it back in and strengthening the devil's endurance."), false); doeHP((5 + Math.floor((percent() / 20)))); } else { if ((((((((((cockMoist > 9)) || ((((cockMoist > 6)) && ((lust > 25)))))) || ((((cockMoist > 3)) && ((lust > 50)))))) || ((((cockMoist > 0)) && ((lust > 75)))))) && ((cockTotal > 0)))){ outputMainText((((("\r\rThe whirling sand across the " + cockDesc()) + " bulge in your ") + clothesBottom()) + " and laps up some of the slick lubrication that spills from it, sucking the stuff back in and strengthening the devil's endurance."), false); doeHP((5 + Math.floor((percent() / 20)))); } else { if ((((((((((vagMoist > 9)) || ((((vagMoist > 6)) && ((lust > 25)))))) || ((((vagMoist > 3)) && ((lust > 50)))))) || ((((vagMoist > 0)) && ((lust > 75)))))) && ((vagTotal > 0)))){ outputMainText((("\r\rThe whirling sand licks up between your legs, across your " + vulvaDesc()) + " groin, and laps up some of the slick lubrication that spills from it, sucking the stuff back in and strengthening the devil's endurance."), false); doeHP((5 + Math.floor((percent() / 20)))); }; }; }; }; } else { if (attack <= 90){ chance = percent(); if ((((chance < 12)) && ((cockTotal > 0)))){ outputMainText((((((((("\r\rSome of the devil's sand creeps into your " + clothesBottom()) + " and softly drags across your ") + cockDesc()) + " masculine length") + plural(1)) + ", soaking up some of the moisture from within and causing ") + plural(9)) + " to shrink a little. The sand then returns to the devil, renewing some of windy essence."), false); cockSize--; doeHP(2); } else { if ((((((chance < 23)) && ((balls > 0)))) && ((showBalls == true)))){ if (ballSize < 2){ outputMainText((((("\r\rSome of the devil's sand creeps into your " + clothesBottom()) + " and softly drags across your ") + ballDesc()) + " scrotum. However, your balls are so puny that there is hardly any moisture for the sand to take, doing nothing for the devil."), false); } else { outputMainText((((("\r\rSome of the devil's sand creeps into your " + clothesBottom()) + " and softly drags across your ") + ballDesc()) + " scrotum, soaking up some of the moisture from the testicles within and causing them to shrink a little. The sand then returns to the devil, renewing some of windy essence."), false); ballSize--; doeHP(2); }; } else { if (chance < 34){ if (butt < 1){ outputMainText((((("\r\rSome of the devil's sand creeps into your " + clothesBottom()) + " and whisks across your ") + buttDesc()) + " rump. However, your butt is so flat that there is hardly any moisture for the sand to take, doing nothing for the devil."), false); } else { outputMainText((((("\r\rSome of the devil's sand creeps into your " + clothesBottom()) + " and whisks across your ") + buttDesc()) + " rump, soaking up some of the moisture from within and causing it to shrink a little. The sand then returns to the devil, renewing some of windy essence."), false); butt--; doeHP(2); }; } else { if ((((chance < 45)) && ((vagTotal > 0)))){ if (vulvaSize < 2){ outputMainText((((("\r\rSome of the devil's sand creeps into your " + clothesBottom()) + " and slips through your ") + vulvaDesc()) + " lips. However, your vulva is so tiny that there is hardly any moisture for the sand to take, doing nothing for the devil."), false); } else { outputMainText((((("\r\rSome of the devil's sand creeps into your " + clothesBottom()) + " and slips through your ") + vulvaDesc()) + " lips, soaking up some of the moisture from within and causing them to shrink a little. The sand then returns to the devil, renewing some of windy essence."), false); vulvaSize--; doeHP(2); }; } else { if ((((chance < 56)) && ((vagTotal > 0)))){ if (clitSize < 2){ outputMainText((((((((((("\r\rSome of the devil's sand creeps into your " + clothesBottom()) + " and whirls about your ") + clitDesc()) + " clit") + plural(2)) + ". However, your button") + plural(2)) + " ") + plural(14)) + " so tiny that there is hardly any moisture for the sand to take, doing nothing for the devil."), false); } else { outputMainText((((((((("\r\rSome of the devil's sand creeps into your " + clothesBottom()) + " and whirls about your ") + clitDesc()) + " clit") + plural(2)) + ", soaking up some of the moisture from within and causing ") + plural(10)) + " to shrink a little. The sand then returns to the devil, renewing some of windy essence."), false); vulvaSize--; doeHP(2); }; } else { if (chance < 67){ if (breastSize < 1){ outputMainText((((("\r\rSome of the devil's sand creeps into your " + clothesBottom()) + " and gropes about your ") + boobDesc()) + " breasts. However, your chest is so flat that there is hardly any moisture for the sand to take, doing nothing for the devil."), false); } else { outputMainText((((("\r\rSome of the devil's sand creeps into your " + clothesTop()) + " and gropes about your ") + boobDesc()) + " breasts, soaking up some of the moisture from within and causing them to shrink a little. The sand then returns to the devil, renewing some of windy essence."), false); butt--; doeHP(2); }; } else { if ((((chance < 78)) && ((udders == true)))){ if (udderSize < 2){ outputMainText((("\r\rSome of the devil's sand blow across your " + udderDesc()) + " udder. However, your milk-bag is so small that there is hardly any moisture for the sand to take, doing nothing for the devil."), false); } else { outputMainText((("\r\rSome of the devil's sand blow across your " + udderDesc()) + " udder, soaking up some of the moisture from within and causing it to shrink a little. The sand then returns to the devil, renewing some of windy essence."), false); butt--; doeHP(2); }; } else { if ((((chance < 89)) && ((udders == true)))){ if (teatSize < 3){ outputMainText((("\r\rSome of the devil's sand licks across your " + teatDesc()) + " teats. However, your bovine-nipples are so little that there is hardly any moisture for the sand to take, doing nothing for the devil."), false); } else { outputMainText((("\r\rSome of the devil's sand licks across your " + teatDesc()) + " teats, soaking up some of the moisture from within and causing it to shrink a little. The sand then returns to the devil, renewing some of windy essence."), false); butt--; doeHP(2); }; } else { if (nippleSize < 2){ outputMainText((((("\r\rSome of the devil's sand creeps into your " + clothesBottom()) + " and brushes over your ") + nipDesc()) + " nipples. However, your nipples are so little that there is hardly any moisture for the sand to take, doing nothing for the devil."), false); } else { outputMainText((((("\r\rSome of the devil's sand creeps into your " + clothesTop()) + " and brushes over your ") + nipDesc()) + " nipples, soaking up some of the moisture from within and causing them to shrink a little. The sand then returns to the devil, renewing some of windy essence."), false); butt--; doeHP(2); }; }; }; }; }; }; }; }; }; } else { if (attack <= 100){ chance = percent(); outputMainText("\r\rA funnal of sand shoots out from the devil's form, whipping out and latching onto your ", false); if ((((chance < 12)) && ((cockTotal > 0)))){ outputMainText((((((("" + cockDesc()) + " cock") + plural(1)) + ", siphoning out a lot of moisture and causing ") + plural(9)) + " to shrink dramatically, restoring a good deal of power to the devil's winds."), false); cockSize = (cockSize - 5); doeHP(10); } else { if ((((((chance < 23)) && ((balls > 0)))) && ((showBalls == true)))){ if (ballSize < 1){ outputMainText("balls. However, they're already so puny that the devil can't siphon any more moisture from them, proving a fruitless attack.", false); } else { outputMainText((("" + ballDesc()) + " testicles, siphoning out a lot of moisture and causing them to shrink dramatically, restoring a good deal of power to the devil's winds."), false); ballSize = (ballSize - 5); if (ballSize < 0){ ballSize = 0; }; doeHP(10); }; } else { if (chance < 34){ if (butt < 1){ outputMainText("butt. However, it's so flat that the devil can't siphon any more moisture from it, proving a fruitless attack.", false); } else { outputMainText((("" + buttDesc()) + " butt, siphoning out a lot of moisture and causing them to shrink dramatically, restoring a good deal of power to the devil's winds."), false); butt = (butt - 5); if (butt < 0){ butt = 0; }; doeHP(10); }; } else { if ((((chance < 45)) && ((vagTotal > 0)))){ if (vulvaSize < 2){ outputMainText("vulva. However, your lips are so thin and tiny that the devil can't siphon any more moisture from them, proving a fruitless attack.", false); } else { outputMainText((("" + vulvaDesc()) + " vulva, siphoning out a lot of moisture and causing it to shrink dramatically, restoring a good deal of power to the devil's winds."), false); vulvaSize = (vulvaSize - 5); if (vulvaSize < 1){ vulvaSize = 1; }; doeHP(10); }; } else { if ((((chance < 56)) && ((vagTotal > 0)))){ if (clitSize < 2){ outputMainText((((((("clit" + plural(2)) + ". However, your button") + plural(14)) + " so tiny that the devil can't siphon any more moisture from ") + plural(10)) + ", proving a fruitless attack."), false); } else { outputMainText((((((("" + clitDesc()) + " clit") + plural(2)) + ", siphoning out a lot of moisture and causing ") + plural(10)) + " to shrink dramatically, restoring a good deal of power to the devil's winds."), false); clitSize = (clitSize - 5); if (clitSize < 1){ clitSize = 1; }; doeHP(10); }; } else { if (chance < 67){ if (breastSize < 1){ outputMainText("chest. However, it's so flat that the devil can't siphon any more moisture from it, proving a fruitless attack.", false); } else { outputMainText((("" + boobDesc()) + " bust, siphoning out a lot of moisture and causing your breasts to shrink dramatically, restoring a good deal of power to the devil's winds."), false); breastSize = (breastSize - 5); if (breastSize < 0){ breastSize = 0; }; doeHP(10); }; } else { if ((((chance < 78)) && ((udders == true)))){ if (udderSize < 2){ outputMainText("udder. However, it's so small that the devil can't siphon any more moisture from it, proving a fruitless attack.", false); } else { outputMainText((("" + udderDesc()) + " udder, siphoning out a lot of moisture and causing it to shrink dramatically, restoring a good deal of power to the devil's winds."), false); udderSize = (udderSize - 5); if (udderSize < 1){ udderSize = 1; }; doeHP(10); }; } else { if ((((chance < 89)) && ((udders == true)))){ if (teatSize < 3){ outputMainText("teats. However, they're so tiny that the devil can't siphon any more moisture from them, proving a fruitless attack.", false); } else { outputMainText((("" + teatDesc()) + " teats, siphoning out a lot of moisture and causing them to shrink dramatically, restoring a good deal of power to the devil's winds."), false); teatSize = (teatSize - 5); if (teatSize < 2){ teatSize = 2; }; doeHP(10); }; } else { if (nippleSize < 2){ outputMainText("nipples. However, they're so tiny that the devil can't siphon any more moisture from them, proving a fruitless attack.", false); } else { outputMainText((("" + nipDesc()) + " nipples, siphoning out a lot of moisture and causing them to shrink dramatically, restoring a good deal of power to the devil's winds."), false); nippleSize = (nippleSize - 5); if (nippleSize < 1){ nippleSize = 1; }; doeHP(10); }; }; }; }; }; }; }; }; }; }; }; }; }; }; if (enemyID == 201){ if ((((attack > 35)) && ((attack <= 50)))){ outputMainText("\r\rThe lone wolf leaps at you, taking a large bite with its sharp teeth.", false); doHP(-(eDmg(6))); } else { if ((((((attack > 50)) && ((attack <= 70)))) && ((lust > 15)))){ outputMainText("\r\rHis cock beating against his belly with each step, his lust overcomes him for a moment. He runs up to you, jumping onto your leg and humps wildly, smearing his canine pre up and down your leg. A small spurt of cum shoots out, the large drop oozing down to your feet. Not exactly a full climax, but enough for now, the wolf backs off.", false); doLust(Math.floor((((percent() / 5) + lib) - ment))); doeLust(-(Math.floor(((percent() / 10) + (eSen / 2))))); } else { if ((((((attack > 70)) && (!((gender == 0))))) && (!((gender == 1))))){ outputMainText("\r\rThe lone wolf lifts his leg after running up beside you, a bit of urine splashing out onto your feet. However, he was simply peeing, as the heady smell wafts up to your nose, the pheromones making your body shudder with arousal.", false); doLust(Math.floor((((percent() / 5) + lib) - (ment / 2)))); } else { outputMainText("\r\rThe lone wolf rushes at you, scratching you with its claws.", false); doHP(-(eDmg(8))); }; }; }; }; if (enemyID == 301){ if ((((((attack > 30)) && ((attack <= 60)))) && ((eLust > 20)))){ outputMainText((("\r\rThe horny felin woman comes in close, embracing you as she grinds her slick cunt up and down your leg. She licks your " + boobDesc()) + " chest while her feminine fluids spill down your thigh. She mewls a little as she has a small climax, alleviating some of her own frustrations while increasing yours in the process."), false); doLust(Math.floor((((percent() / 5) + lib) - (ment / 2)))); doeLust(-(Math.floor(((percent() / 10) + (eSen / 2))))); } else { if ((((((attack > 60)) && ((attack <= 85)))) && ((eLust > 10)))){ outputMainText("\r\rUtterly thirsting for sex, she turns away from you and gets on all fours. She bends down further while raising her butt high into the air, showing off her lithe body while also showing off the swollen lips that bulge out of either side of her bikini bottom beneath the loin cloth, her tail waving enticingly above. Her sex-driven display makes you a little hot as well.", false); doLust(Math.floor((((percent() / 10) + lib) - (ment / 2)))); } else { if (attack > 85){ outputMainText("\r\rPlayfully, she lunges forward and bites you... hard. The pain is quite noticeable, but her giggling afterwards might also arouse you slightly, if you didn't know better...", false); doHP(-(eDmg(7))); doLust((lib - ment)); } else { outputMainText("\r\rIn her frustration, she claws at you.", false); doHP(-(eDmg(10))); }; }; }; }; if (enemyID == 302){ if ((((((attack > 30)) && ((attack <= 60)))) && ((eLust >= 20)))){ outputMainText("\r\rThe drunken equan adjusts the giant bulge in his pants, grunting as a large gob of pre smears across his knee and blotches his pants. While not the most erotic display, whatever he's drinking makes the stuff smell extremely enticing...", false); doLust(Math.floor((((percent() / 10) + lib) - (ment / 2)))); } else { if ((((attack > 60)) && ((attack <= 80)))){ outputMainText("\r\rHe lifts his large mug up to his lips, taking a big swig. He burps after downing it, his wounds seemingly less severe than before.", false); doeHP(Math.floor(((percent() / 10) + 5))); } else { if (attack > 80){ outputMainText("\r\rStumbling uncontrollably, he plows into you.", false); doHP(-(eDmg(7))); } else { outputMainText("\r\rWith a hearty laugh, he bonks you on the head with his mug.", false); doHP(-(eDmg(9))); }; }; }; }; if (enemyID == 303){ if ((((attack > 30)) && ((attack <= 55)))){ outputMainText((("\r\rWith a giggle that makes her breasts quiver, her hands move up to one of the starfish on her chest. She pries it away, her plump nipple popping out with a squirt of slightly pink milk. Giving you a quick wink, her other hand squeezes her breast, shooting a spurt of the stuff onto your body. The sweet-smelling liquid quickly absorbs into your " + skinDesc()) + ", making you grow warm and aroused."), false); doLust(Math.floor(((20 + (percent() / 10)) - (ment / 5)))); } else { if ((((attack > 55)) && ((attack <= 80)))){ outputMainText((("\r\rOne of her tentacles lashes out at you and whips up between your legs. It smarts a bit, but it seems as though she intentionally hit you with the softer underside. The suction cups tear through your " + clothesBottom()) + " and stick to "), false); attireBot = -1; if (vagTotal > 0){ outputMainText((((((((((("the front of your feminine cleft" + plural(2)) + ". You can feel fluid seep from the cups and into your clit") + plural(2)) + ", arousing you further. She twists with a focused expression, tugging again and again at your clit") + plural(2)) + ", trying to wrench herself free after the attack and making your hips buck in turn. By the time she manages to remove her tentacle with a pop, your poor button") + plural(2)) + " feel") + plural(4)) + " a bit larger than before..."), false); doLust(Math.floor(((20 + (percent() / 5)) - (ment / 5)))); doHP(-5); clitSize++; } else { if ((((vagTotal < 1)) && ((cockTotal > 0)))){ outputMainText((((((oneYour(1) + " cock") + plural(1)) + ". You can feel fluid seep from the cups and into your cock") + plural(2)) + ", arousing you further. The tentacle wraps around, tugging again and again at your erection, as through she were masturbating you. Although, from the focused expression on her first, she seems to simply be trying to wrench herself free after the attack. Not that it arouses you any less..."), false); doLust(Math.floor((((10 + (percent() / 10)) + (lib / 10)) - (ment / 5)))); } else { if ((((vagTotal < 1)) && ((cockTotal < 1)))){ outputMainText((("your empty groin. You can feel fluid seep from the cups and into your crotch, arousing you further. She twists with a focused expression, tugging again and again at your " + skinDesc()) + ", trying to wrench herself free after the attack. By the time she manages to remove her tentacle with a pop, you spot several hickies from where she had her way with you."), false); doLust(Math.floor(((10 + (percent() / 10)) - (ment / 5)))); }; }; }; } else { if ((((attack > 80)) && ((attireBot == -1)))){ outputMainText("\r\rShe lunges forward at you with a naughty look in her large eyes. She comes intimately close to your face, a long tongue drawing from her mouth and licking you up your cheek. Caught off guard by the sudden sign of affection, you fail to notice her tentacles move in around you.", false); if (vagTotal > 0){ outputMainText(((((((((" Some creep up your legs and sneak beneath your " + clothesBottom()) + ", sliding through your ") + vulvaDesc()) + " nether-lips. With a jump, you find your naughty hole") + plural(2)) + " being penetrated. The slick tentacle") + plural(2)) + " thrust in and out slightly, as if gauging your size."), false); if (vagLimit() < 20){ outputMainText(((((" Not quite satisfied, the tentacle" + plural(2)) + " plunge") + plural(4)) + " in deep, stretching you wider than before."), false); vagChange(2, 0); }; doLust(Math.floor(((lib / 2) - (ment / 4)))); }; if (cockTotal > 0){ outputMainText(((((((((((((" A few wrap around your " + hipDesc()) + " hips and pull out your ") + cockDesc()) + " erection") + plural(1)) + " from your ") + clothesBottom()) + ". Your hips buck as she wraps her tentacle") + plural(1)) + " around your shaft") + plural(1)) + ", the slick skin seemingly gauging your girth more by touch than sight."), false); doLust(Math.floor(((lib / 2) - (ment / 4)))); }; outputMainText(((((((((" Her tentacles then wrap around your " + buttDesc()) + " bum with a hug as she leans in, her breasts pressing against your ") + boobDesc()) + " chest. She kisses you lightly on the lips, slipping her tongue into your mouth. The sweet taste lingers for a moment, making you shiver in pleasure, before she moves back. Her tentacles then slime through your ") + clothesBottom()) + ", leaving your ") + buttDesc()) + " ass nice and wet before she gives it a light smack."), false); doLust(Math.floor((10 - (ment / 10)))); doHP(-2); } else { outputMainText("\r\rOne of her eight tentacles whips out and lashs you, leaving a welt. She still smiles, however, as she seems to find the act a little kinky.", false); doHP(-(eDmg(4))); }; }; }; }; if (enemyID == 304){ if ((((attack > 30)) && ((attack <= 55)))){ outputMainText((("\r\rWith a chuckle, he bounces past you and gives you a quick swat to your " + buttDesc()) + " tush with his large foot in a rather playful manner."), false); doHP(-(eDmg(15))); doLust(Math.floor((((percent() / 10) + (lib / 10)) - (ment / 5)))); } else { if ((((attack > 55)) && ((attack <= 85)))){ outputMainText("\r\rGrabbing his own fuzzy scrotum, his eyes roll up into his head for a moment, biting his lip as he massages the testicles. A bit of pre drips down his fur and lathers around his balls until they're nice and shiny. Enjoying it a little too much, he decides to include you in the fun.", false); if (tallness <= 144){ outputMainText(" He skips right up to you, towering over you. His legs bend down, lowering his testicles before your face, his knees straddling either side of your head. He presses his relatively enormous balls into your face, practically smothering you with the scent of his nuts while he grinds his hips into your head.\r\rHappy with the quick massage, he bounds back, letting you breath again.", false); } else { if (tallness > 144){ outputMainText(" His feet spring him forward at you, his legs wrapping around your neck. Sitting on your shoulders, he presses his relatively giant balls into your face, making sure you get a nice whiff while he grinds his hips into your head.\r\rHappy with the quick massage, he bounds back, letting you breath again.", false); }; }; doLust(Math.floor((((percent() / 10) + (lib / 4)) - (ment / 4)))); doeLust(10); } else { if ((((attack > 85)) && ((eLust >= 70)))){ outputMainText("\r\rHis pointy, carrot-like prick standing from his fuzzy sheath and dripping with pre, he decides to lunge at you.", false); if (breastSize >= 100){ outputMainText(((((" He hops up to your " + boobDesc()) + " chest and abruptly turns around. Bending forward, his fluffy tail brushes over your face as his rump slips by. His balls rest upon your head, his sheath pressing into your face. You can feel his slick prick slip into your cleavage, the pointy tip easily drilling a path between your breasts. Within seconds the rabbity fellow begins hopping up and down upon your chest with fervor, squeezing the sides of your tits to crush his cock. You can feel his pulse beat strongly through his sheath and very soon you feel his muscles tense again and again. He lets out a groan as your ") + clothesTop()) + " floods with hot spunk, spurting between your flesh with a naughty sound and leaving your front completly swamped in a warm, sticky mess.\r\rThe whole thing taking less than a minute, he hops off of you, slapping a strand of cum across your face before returning to the battle, his lust somewhat sated."), false); } else { if (butt >= 50){ outputMainText(((((" He hops behind you, leaning down to grab the cheeks of your " + buttDesc()) + " ass and making the cleavage in your ") + clothesBottom()) + " much deeper. His slick prick slips into the crack and in seconds he's fervently humping through your rear. Very quickly, he lets out a groan behind you as his cock shudders in your bum, "), false); if (tail > 1){ outputMainText((("his hand yanking your " + tailDesc()) + " high,"), false); }; outputMainText(" while ribbons of spunk flying up your back and over your hair, decorating you in white.\r\rThe whole thing taking less than a minute, he hops off of you, leaving your back a cum-coated mess before returning to the battle, his lust somewhat sated.", false); } else { outputMainText(" He aims at your chest, ramming the cock against it. The slick prick slides up your body and past your head, the wet flesh pressing against your cheek. He hugs you tight as he fervently humps you, blurring your vision with the pre that flood down to lubricate. Very quickly, he lets out a groan as the conical member geysers above you, showering you in his hot spunk. \r\rThe whole thing taking less than a minute, he hops off of you, leaving you a cum-coated mess and a sore cheek before returning to the battle, his lust somewhat sated.", false); }; }; doeLust(-30); doLust(Math.floor((((percent() / 5) + (lib / 5)) - (ment / 5)))); } else { outputMainText("\r\rHe bounces closer and kicks you with one of his big feet, trying to soften you up a little.", false); doHP(-(eDmg(8))); }; }; }; }; if (enemyID == 305){ if ((((attack > 30)) && ((attack <= 55)))){ outputMainText("\r\rWith a giggle, she leans down and tickles you, amused by how cute you look. And as she stands back up, her relatively giant breasts thwap you upside the head.", false); doHP(-(eDmg(15))); doLust(Math.floor((((percent() / 10) + (lib / 10)) - (ment / 5)))); if (sen >= 70){ outputMainText("\r\rYour body is so sensitive that her tickling has left you in a laughing fit. She takes the opportunity to 'attack' again.", false); enemyAttack(); }; } else { if ((((attack > 55)) && ((attack <= 85)))){ outputMainText("\r\rHer thighs press together as her hands reaches down to her naked groin. Biting her lip, she massages her pussy, her eyes closing with muffled whines. A bit of honey drips down her fur and lathers between her thighs until they're nice and shiny. Enjoying it a little too much, she decides to include you in the fun.", false); if (tallness <= 144){ outputMainText(" She skips right up to you, towering over you. Her legs bend down, lowering her nether-lips to your face, her knees straddling either side of your head. She presses her relatively enormous pussy into your face, her clit rubbing across your cheek, practically smothering you with the scent of her arousal as she grinds her hips into your head.\r\rHappy with the quick massage, she bounds back, letting you breath again.", false); } else { if (tallness > 144){ outputMainText(" Her feet spring her forward at you, her legs wrapping around your neck. Sitting on your shoulders, she presses her relatively enormous pussy into your face, her clit rubbing across your cheek, practically smothering you with the scent of her arousal as she grinds her hips into your head.\r\rHappy with the quick massage, she bounds back, letting you breath again.", false); }; }; if (hair > 0){ outputMainText(" However, the intense humidity and her thighs squeezing you so tightly has left your hair squished up into a mohawk.", false); hair = 6; }; doLust(Math.floor((((percent() / 10) + (lib / 4)) - (ment / 4)))); doeLust(10); } else { if ((((attack > 85)) && ((eLust >= 70)))){ outputMainText("\r\rThe bunny-girl's vulva looks rather swollen and red, and her clitoris peeks through the clothes like a very small yet erect penis. Her arousal gets the best of her and she lunges at you.", false); if (tallness > 80){ outputMainText(((((" Her legs spread wide and her clit rams into your side, grinding up your ribs. She does her best to clamp her thighs around your body.\r\rOne hand hugs your head while the other reaches down her backside and past her tail, nearly disappearing into her hungry cunny hole. She rapidly fists herself with loud schlicking sounds, her fem-juice squirting out across your legs with each pump, while her hips pound again and against against your, powerfully dragging her relatively large clit up and down your " + clothesTop()) + ".\r\rNot surprisingly, it doesn't take long before she quivers, one last splash messing your ") + clothesBottom()) + ", as she comes to a small orgasm."), false); } else { outputMainText(((" Her legs spread wide as she hops over you, casting you in the shadow of her cunt. You feel a splash across your face as you look up, a strand of her fem-juice falling down as one of her hands spreads her lips open. The other hand pinches her clit, masturbating it fiercely as her rump comes down upon you.\r\rBefore you know it, you're surrounding by wet soft flesh. Two of her fingers clamp onto your legs, holding you against the ground while she stands back up, nearly lifting your " + clothesTop()) + " off of your body. You have a small moment to breath before she descends once again, ramming your whole body into her vagina. The hot walls pulse and contract around you, squeezing you tightly. You can hear her furiously stroke her clit and moans escape from above. Then she rises, exposing you to the cooler air. She continues to use her like her own personal dildo, thrusting you in and out again and again until she lets out a howl, a waterfall of slime spilling out around you and forming a puddle where you stand."), false); }; outputMainText("\r\rShe then steps away, her quick climax being enough to satiate herself for a bit. However, she's not quite done with you yet.", false); doeLust(-30); doLust(Math.floor((((percent() / 5) + (lib / 5)) - (ment / 5)))); } else { outputMainText("\r\rShe bounces closer and kicks you with one of her big feet, trying to soften you up a little.", false); doHP(-(eDmg(8))); }; }; }; }; } public function clitDesc():String{ var chance:int; var tempStr:String; chance = percent(); tempStr = ("CLIT ERROR " + clitSize); if (chance <= 100){ if (clitSize <= 2){ tempStr = "tiny"; }; if ((((clitSize > 2)) && ((clitSize <= 3)))){ tempStr = "nibble-able"; }; if ((((clitSize > 3)) && ((clitSize <= 6)))){ tempStr = "protruding"; }; if ((((clitSize > 6)) && ((clitSize <= 12)))){ tempStr = "blatant"; }; if ((((clitSize > 12)) && ((clitSize <= 25)))){ tempStr = "suckable"; }; if ((((clitSize > 25)) && ((clitSize <= 50)))){ tempStr = "cock-like"; }; if ((((clitSize > 50)) && ((clitSize <= 100)))){ tempStr = "horsecock-like"; }; if ((((clitSize > 100)) && ((clitSize <= 140)))){ tempStr = "arm-length"; }; if ((((clitSize > 140)) && ((clitSize <= 300)))){ tempStr = "person-sized"; }; if (clitSize > 300){ tempStr = "obscene"; }; }; if (chance > 50){ if (clitSize <= 2){ tempStr = "small"; }; if ((((clitSize > 2)) && ((clitSize <= 3)))){ tempStr = "pinchable"; }; if ((((clitSize > 3)) && ((clitSize <= 6)))){ tempStr = "flickable"; }; if ((((clitSize > 6)) && ((clitSize <= 12)))){ tempStr = "panty-tenting"; }; if ((((clitSize > 12)) && ((clitSize <= 25)))){ tempStr = "stroke-able"; }; if ((((clitSize > 25)) && ((clitSize <= 50)))){ tempStr = "huge"; }; if ((((clitSize > 50)) && ((clitSize <= 100)))){ tempStr = "gigantic"; }; if ((((clitSize > 100)) && ((clitSize <= 140)))){ tempStr = "doorway-smacking"; }; if ((((clitSize > 140)) && ((clitSize <= 300)))){ tempStr = "snuggle-able"; }; if (clitSize > 300){ tempStr = "obscene"; }; }; return (tempStr); } public function viewButtonText(button1:int, button2:int, button3:int, button4:int, button5:int, button6:int, button7:int, button8:int, button9:int, button10:int, button11:int, button12:int):void{ if (button1 == 0){ Choice1.visible = false; }; if (button1 == 1){ Choice1.visible = true; }; if (button2 == 0){ Choice2.visible = false; }; if (button2 == 1){ Choice2.visible = true; }; if (button3 == 0){ Choice3.visible = false; }; if (button3 == 1){ Choice3.visible = true; }; if (button4 == 0){ Choice4.visible = false; }; if (button4 == 1){ Choice4.visible = true; }; if (button5 == 0){ Choice5.visible = false; }; if (button5 == 1){ Choice5.visible = true; }; if (button6 == 0){ Choice6.visible = false; }; if (button6 == 1){ Choice6.visible = true; }; if (button7 == 0){ Choice7.visible = false; }; if (button7 == 1){ Choice7.visible = true; }; if (button8 == 0){ Choice8.visible = false; }; if (button8 == 1){ Choice8.visible = true; }; if (button9 == 0){ Choice9.visible = false; }; if (button9 == 1){ Choice9.visible = true; }; if (button10 == 0){ Choice10.visible = false; }; if (button10 == 1){ Choice10.visible = true; }; if (button11 == 0){ Choice11.visible = false; }; if (button11 == 1){ Choice11.visible = true; }; if (button12 == 0){ Choice12.visible = false; }; if (button12 == 1){ Choice12.visible = true; }; } public function doOviasis():void{ var chance:int; chance = percent(); if ((((chance <= 10)) && ((silRep == 0)))){ outputMainText("Walking through Oviasis' bazaar, you spot an odd figure amongst all the lizan folk. A humanoid shape wrapped in a white hooded cloak, the most you can manage to make out are some long fuzzy ears, a lizard-like tail, some slight curvature to the apparently feminine figure, and nearly seven feet tall, towering over most others. The person walks around, going from stall to stall trading food and trinkets, especially taking interest in whatever magical wares are available. Feathery wings peek out from her cloak whenever she reaches out for something, with finger-like talons at the tips acting like hands.", true); if ((((pheromone > 0)) && (((((((checkItem(200)) || (checkItem(215)))) || (checkItem(101)))) || (checkItem(102)))))){ outputMainText("\r\rShortly after you begin watching her, a wind picks up from behind you and heads in her direction. She pauses and sniffs at the air a few times, picking up an odd scent that seems to make her act a little funny. As she follows her nose towards its source, she sways back and forth a little, her hips twisting around as her thighs begin to rub together. Her wings fold inward, the three finger-like talons at the ends of them awkwardly roaming about her breasts and down to her groin, fondling herself sporadically. It seems her wings are her arms, being attached at her shoulders like a bird's.\r\rOnce she gets close enough, you can see more under her cloak. A fennec-like face matches the fuzzy ears above, which each seem to be larger than her head, and a hot blush seems to have washed across her cheeks that almost matches her auburn hair. Soft fur nearly covers her body, parted in front by the large belly-scales that plate across her chest and stomach, from her slightly elongated neck down to the tip of her tail. Supple draconic spikes peek out several inches along her spine, all the way down to the tip of her tail where they gently bend back and forth as her tail swishes from side to side anxiously. The clasp of her cloak manages to hide her otherwise naked breasts, a nice pair that matches her lithe frame, though with the way she fumbles to fondle herself she threatens to undo the clasp at any moment. Her lower bits are covered by a jeweled loin-cloth - a relatively scant outfit for the torrid desert weather - which seems to be... tenting as her other hand works at herself beneath.\r\rShe bends forward as her short muzzle follows the scent right up to you, immediately nuzzling against your body. The wing at her bosom stops playing with herself to hug around you, the fingers digging into your back tenderly as she tries to hold you close.\r\r\"You... You smell sooo good~\" A long tongue reaches out to lick up your chest, the pheromone that exudes from you enrapturing her keen senses while her tail wraps around your legs. \"I don't even think I've ever...\"\r\rHer sentence simply trails off as her hips push into you, a phallic object peaking in her loin cloth and running up your side, pre smearing along its path. You can feel a feminine attribute press against your thigh as she slowly begins to gyrate on it, her other wing also encompassing you to surround you with her vibrant feathers.", false); outputMainText(((" She gasps again and again as she tries to speak, but her words are lost to the smothering lust. Her talons pick at your " + clothesBottom()) + ", trying to burrow her way in for a more intimate connection, but her lack of mental coherence makes the effort futile.\r\rHowever, as her nuzzling brings her muzzle closer to your pack, she begins to sniff again. Her voice wavers much less as she speaks; not undone by the lust this time, \"M-Magic?\"\r\rShe firmly presses into you as her muzzle dives into your pack for an even bigger whiff. \"Y-Yes, something neat in there...\" The sudden distraction seems to have helped her mind gain focus, able to make her think more clearly despite the thing that throbs against you. She leans back to look you directly in the eyes. Fear fills her own eyes, her normally shy and meek demeanor commanding her to flee, but even deeper beyond that you can see a lonely longing inside. Her cheeks more flushed with embarassment than arousal now, the situation already quite shameful and far out of her usual comfort zone, especially in such a public place, she takes a deep breath and ventures a chance.\r\r\"Would... Would you like to come to my home?\""), false); buttonConfirm(); doListen = function ():void{ if (buttonChoice == 6){ outputMainText((("Her eyes light up, her muzzle rushing in to kiss you. Lips locked for a moment, her eyes spring open as she catches her eagerness early. \"Heh, sorry... Umm... Hope you like flying?\"\r\rHer tail readjusts itself for a better grip around your " + buttDesc()) + " rump. And since her winged arms will be occupied with flying, her legs wind up cradling your back as she begins to take off in the middle of the bazaar, positioning you much lower down her body. You get a mighty whiff of arousal as pre drools over your lips, your face mashed up against the tip of the large erection in her loin cloth... Nevertheless, she avoids humping you too much as she focuses on remaining balanced in flight, giving you a chance to twist around and watch the sand fly by below. The two of you go higher and higher, giving you a fantastic view of the desert. You fly out of Oviasis and can soon clearly see the path to your destination: a large dune about 2 hours away on foot. You wouldn't have given much attention such a dune in your usual exploration, since it looks like many many many of the others, but as you fly over to the opposite side you can make out a large jutting stone overhanging a cave.\r\rThe strange woman takes you down and lands you gently atop the sand, giving you a good view of the outside of 'her place'. A simple tunnel burrowing into the ground beneath the rock, the entrance is decorated with all sorts of crystalline chimes that softly ring out with a slight breeze. There's also some painted barriers to keep the sand out as well as a large barrel of water and towels to allow somebody to remove any sand from themselves as well. Otherwise, you can't quite tell what's in the tunnel.\r\r\"Well, umm... This is my home!\""), true); doNext(); doListen = function ():void{ var getCum:int; outputMainText("Her eagerness kicks in once again as she grabs your hand and pulls you along. Inside numerous torches line the walls and keep it well lit, though that doesn't help give you any idea where you're going. You pass through several forks in the tunnel, this underground network seemingly quite large, with few markings to help guide you through. Nevertheless, you quickly find yourself in what appears to be a bedroom. Various outfits glitter with jewels along one wall while another has a large bed of fluffy sheets and another leads to more tunnels. You don't exactly have time to look around though, as she pulls you right to the bed and gently pushes you onto the plush sheets.\r\rTaking the hint, you work at removing your clothes as she hastily begins to drop her own. Then undone clasp falls away with the rest of her cloak, her average-sized breasts standing perk with nipples standing beyond the soft smooth scales. Her frame is rather small, despite her height, her body being quite thin and lithe, with her lush fur masking the toned muscles underneath. Then her hands fiddle with her loin cloth for a bit, gasping when the air touches her nude genitals as the cloth falls away. Hefty testicles squirm with seed beneath a sheath that hugs around the large erection. Slick and smooth, the shaft runs straight to the rounded rim of a thick head which tapers to a point that drools with pre. And between her thighs more slick lubricant runs down her fur, a distinctly feminine aspect hidden behind the big balls.", true); if (cockTotal > 0){ outputMainText((((((("\r\rShe crawls up your legs, licking at " + oneYour(1)) + " own ") + cockDesc()) + " phallic endowment") + plural(1)) + ", making sure it's nice and stiff. Climbing up onto the bed with you, she carefully lines up over the tip of your "), false); if (cockMoist < 5){ outputMainText("slick", false); } else { if (cockMoist < 9){ outputMainText("drooling", false); } else { if (cockMoist < 13){ outputMainText("pre-flooding", false); }; }; }; outputMainText(" appendage and slowly squats down onto it. The tips of her wings hold her testicles up to allow for a smooth landing upon your manhood and is prompt to let them knock against you as 'slow' just isn't going to cut it. In her pheromone induced state, the arousal having been overhwelming this whole time, she falls down onto the rod, ", false); if ((cockSize * cockSizeMod) < 36){ outputMainText("easily engulfing your whole length", false); } else { if ((cockSize * cockSizeMod) < 66){ outputMainText("her pussy squeezing around your thick girth as it seems to barely manage to swallow your entire length", false); } else { outputMainText("her pussy seemingly having trouble taking in your massive girth, your size much greater than her hole, yet her slit stretches more and more, her hips somehow widening to take you in, and even her belly bulges with scales easily spreading to take in all your cock-flesh", false); }; }; outputMainText(((", until her smooth scrotum finally slaps against your groin. She reaches down with her wings and her hands grab onto your " + boobDesc()) + " chest for balance as her legs begin to powerfully pump. Up and down she goes, wildly riding your bronco as it bucks inside of her in turn, her eyes looking distant as she pants and gasps, so lost with lust. Strands of pre fling about as her own stiff appendage swings about, swatting you again and again with wet splashes as it whacks against your front. You struggle a little to hold onto her thighs so you aren't sucked up into her by your cock from her voracious efforts and quite quickly you begin to feel that oh-so-familiar pressure beginning to build.\r\rWith a loud erotic vulpine howl, this strange woman shudders as she feels you spew within."), false); getCum = cumAmount(); if (getCum < 1000){ outputMainText(" Your hot load churns about her tunnel as you spray about, not a single drop slipping from her slit as her womb drinks it in.", false); } else { if (getCum < 5000){ outputMainText(" Your hot load forces her belly to visibly distend as you spray within, the grand amount of spunk churning around and drowning your gushing head, yet hardly any seems to spill from her slit as her womb drinks it in, thirsty for seed.", false); } else { outputMainText(" Your hot load forces her belly to expand, inflating as you spray within, the massive amount of spunk audibly churning within. However, only a fraction of the stuff spews back out through her slit, as her womb seems to gulp it down as though it were desparately thirsty for seed.", false); }; }; outputMainText(" Her own eruption begins, the bobbing cock launching thick threads of white creamy cum over your body, whipping them up and down as she continues to bounce upon you. Eventually, her legs give out from the intense orgasm and she falls forward with her wings outspread to shelter you both within her embrace, forcing your cock to bend and eventually fly out from her heated cunt to let it drizzle on the floor. She continues to spurt a bit of cum between the two of you, the smell of sex rapidly intensifying within the feather confines, her orgasm shortly diminshing as the scent overpowers your pheromones...", false); doLust((-(sen) * 2)); silPreg = 1; } else { if ((((vagTotal > 0)) && ((vagLimit() > 28)))){ outputMainText((((((("\r\rShe crawls up your legs, licking at " + oneYour(2)) + " own ") + vulvaDesc()) + " slit") + plural(2)) + ", making sure it's moist and large enough to fit. Climbing up onto the bed with you, she carefully lines up the tip of her male endowment with your female honey-hole, carefully wedging the head through your supple folds. However, your warmth around her genitals is too much, the intense arousal this entire time from your pheromones getting the best of her senses. She plows into your passage, "), false); if ((tallness / 2) < (vagSize * vagSizeMod)){ outputMainText("pushing your belly out from within, ", false); }; outputMainText((((((("until her balls slam against your " + buttDesc()) + " rear beneath. Straddling her own scrotum to grind her hidden slit against as she moves, she begins to thrust through your tender flesh, making her moan and whine from the fantastic sensations your pussy provides. Her wings curl around to embrace you and steady herself, trapping you both within a dome made by her feathers. The heat rapidly begins to build as she pounds into you vigorously, panting and moaning as she begins to drool from the overwhelming lust.\r\rIt doesn't take long before she let's out a loud erotic vulpine howl. Hot spunk floods through your womb, gushing and churning as she presses her breasts against your ") + boobDesc()) + " chest. Her eyes clench as you climax as well, your walls chewing upon her erection and making her twitch sporadically. The hot heavy feeling of your pussy around her cock proves to be too much, forcing her to pull out to let the cooler air kiss her wet shlong as it finishes its explosion between the two of you, spitting across her scales and fur and your ") + skinDesc()) + ". The smell of sex rapidly intensifies within the feather confines, her orgasm shortly diminshing as the scent overpowers your pheromones..."), false); doImpregnate(dominant); } else { if (vagTotal > 0){ outputMainText("\r\rNoticing she is far too large for you and still having the sense to not hurt you,", false); } else { outputMainText("\r\rNoticing a lack of any genitals to use,", false); }; outputMainText(((" she opts to simply lay down over you, straddling one of your thighs. Her balls push to either side as her slit behind presses against your " + skinDesc()) + ", her rod pushing across your belly. Her hands reach out to hug your head while her wings raise up, trapping you both within a dome made by her feathers. The heat rapidly begins to build between you two as she begins to grind vigorously, desparate to finally climax after having been so dreadfully aroused since she first caught onto your pheromones. Moaning and gasping aginst your face, she curls her back again and again to thrust her thick cock across your groin, threads of pre "), false); if (udders == true){ outputMainText(" smearing all over your udder.", false); } else { outputMainText(" trailing up and down your belly.", false); }; outputMainText((("\r\rIt doesn't take long before she lets out a low erotic vulpine howl. Hot spunk spews up between the two of you, trapped by her wings and raining down upon you. Her thighs clamp around your leg, her clitoris pulsing upon you " + skinDesc()) + " as the backside of her testicles are flooded with fem-cum. The smell of sex intensifies within the feathered confines, her orgasm quickly diminishing as the scent overpowers your pheromones..."), false); }; }; doNext(); doListen = function ():void{ outputMainText("This strange girl collapses on top of you, huffing and panting and ignoring the sticky mess. Her eyelids droop heavily, the expression on her face so ecstatic yet so exhausted from just the single orgasm, as though a much greater weight had finally been lifted from her, beyond that in her loins.\r\rIt takes her nearly an hour of laying on top of you, nuzzling and licking at you the whole while, before her mind finally returns to her. She blinks, as though finally realizing what just happened, and blushes heavily. Rolling off onto the bed beside you, she gasps. There's a bit of fear in her voice, as though her self-conscious self was regaining, and she turns away.\r\r\"I-I'm so sorry!,\" she spouts meekly. However, she turns back to look you in the eye, a sense of wonder and relief shining in her own. \"Th-Though... It was really nice to have some company for once.\" She smiles.", true); if (cockTotal > 0){ outputMainText(" She then looks down at her belly and rubs it with a hand, relishing the feeling of your seed in her womb. \"That was a lot more... fulfilling than I had imagined it would be.\" A glow seems to fill her expression as she croons over it.", false); }; outputMainText("\r\r\"Anyways, let me help clean you up, I see I've made a bit of a mess...\" Again she blushes, though this time it's more from embarassment at how much of a mess she made between the two of you rather than her shy nature. She lifts herself from the bed, her wings trying to cover her nude front in an attempt at modesty as she heads off into the tunnels to grab some towels. Her tail, on the other hand, is so happy from the experience that it lifts high, giving you a good view of her tight rump anyways. When she soon returns, she has somehow donned a new outfit in the time away, a simple robe of silken cloth that looks more suited for sleepwear than to go out into the desert in, especially with the way it hugs her curves and bulges leaving little to the imagination. Which, of course, in turn makes her blush again, her large ears turning red, as she realizes the indecency of the outfit while you stare at her. It's not something she had worn around others before and she hadn't thought about it...\r\rEventually, she helps clean up the majority of spunk from your body, rubbing your down from head to toe and trying not to focus too much on your naughty bits.\r\rOnce you're all cleaned up, she leads you back to the entrance to her den, knowing she somewhat interrupted your exploration. You note that the tunnel system seems quite extensive for just a single inhabitant, yet there is no sign of others...\r\r\"Well, umm... Thank you for coming to my place. You're welcome back any time. I... I do hope to see you again.\" She smiles awkwardly.\r\rYou give her a hug before you leave, being wrapped up in her feathers once more. And as you turn and step out from the rock overhang, she calls out for one last thing.\r\r\"Oh yeah! Hi, my name is Silandrias! What's yours?\".", false); hrs = 5; silRep = 1; doEnd(); }; }; } else { outputMainText("Your rejection falls harshly upon her, her ears pinning back against her hood and her tail swinging in between her legs. She jumps away from you, her wings flap around you as they release and snap back to cover herself. She steps backwards, her eyes peering through a couple feathers with tears welling up as she hides behind them, and she gulps to speak, \"Oh... I-I'm so sorry for what happened then!\"\r\rHer sandles kick up the sand as she turns to run away and after a few yards her wings unfurl for a speedier retreat.\r\r\rUnsure of who this stranger was or what exactly happened, it's the last you've seen of her.", true); silRep = -1; hrs = 2; doEnd(); }; }; } else { if (pheromone > 0){ outputMainText("\r\rShortly after you begin watching her, a wind picks up from behind you and heads in her direction. She pauses and sniffs at the air a few times, picking up an odd scent that seems to make her act a little funny. As she follows her nose towards its source, she sways back and forth a little, her hips twisting around as her thighs begin to rub together. Her wings fold inward, three finger-like talons at the ends of them awkwardly roaming about her breasts and down to her groin, fondling herself sporadically. It seems her wings are her arms, being attached at her shoulders like a bird's.\r\rOnce she gets close enough, you can see more under her cloak. A fennec-like face matches the fuzzy ears above, which each seem to be larger than her head, and a hot blush seems to have washed across her cheek that almost matches her auburn hair. Soft fur nearly covers her body, parted in front by the large belly-scales that plate across her chest and stomach, from her slightly elongated neck down to the tip of her tail. Supple draconic spikes peek out several inches along her spine, all the way down to the tip of her tail where they gently bend back and forth as her tail swishes from side to side anxiously. The clasp of her cloak manages to hide her otherwise naked breasts, a nice pair that matches her lithe frame, though with the way she fumbles to fondle herself she threatens to undo the clasp at any moment. Her lower bits are covered by a jeweled loin-cloth - a relatively scant outfit for the torrid desert weather - which seems to be... tenting as her other hand works at herself beneath.\r\rShe bends forward as her short muzzle follows the scent right up to you, immediately nuzzling against your body. The wing at her bosom stops playing with herself to hug around you, the fingers digging into your back tenderly as she tries to hold you close.\r\r\"You... You smell sooo good~\" A long tongue reaches out to lick up your chest, the pheromone that exudes from you enrapturing her keen senses while her tail wraps around your legs. \"I don't even think I've ever...\"\r\rHer sentence simply trails off as her hips push into you, a phallic object peaking in her loin cloth and running up your side, pre smearing along its path. You can feel a feminine attribute press against your thigh as she slowly begins to gyrate on it, her other wing also encompassing you to surround you with her vibrant feathers.", false); outputMainText(((" She gasps again and again as she tries to speak, but her words are lost to the smothering lust. Her talons pick at your " + clothesBottom()) + ", trying to burrow her way in for a more intimate connection, but her lack of mental coherence makes the effort futile.\r\rYou can begin to see tears well up in her eyes from her failing efforts, her hips grinding so harshly in desperation that you can feel the hard erection throb in preparation for an unrequited premature explosion. She whines and whimpers meekly as she begins to twitch."), false); doNext(); doListen = function ():void{ outputMainText("Wads of white spunk spew through this strange woman's loin cloth. It smatters across your body and paints her thighs as much runs down the inside of the cloth. Plenty of it washes up through her cleavage, finally undoing the clasp with the slick lubrication and making her nipples shine with the moisture as they're freed. She coos and shudders for a few more moments, the cum running out as it continues to pump, her other genitals making a mess upon your leg. Her head hangs low as she tries to regain her breathing, her mind slowly returning.\r\rThe smell of her own naughtiness fills her nose. Realizing what she had just dowe, she looks up at you with eyes wide in fear. Stricken with embarassment, her normally shy demeanor takes charge as she jumps back from you, her wings flapping around you as they let go and snap back around herself to cover the mess she's made of herself.\r\r\"I-I'm so sorry!\" She turns away and begins to run through the crowd, trying to avoid being caught by anybody, her tail slinking between her legs. Once she's out of the bazaar and in a more open location, she kicks up into the air, her wings unfurling and taking her to the air for a speedier retreat. Wads of gooey stuff spills where she takes off, with more being flung around by the flapping of her wings, leaving a short trail before she disappears into the distance. None of the locals were close enough to be caught up in the mess and none seemed to have paid her much mind anyways.\r\r\rLeft in the middle of a crowd and covered in a stranger's lewd fluids, you're not quite sure how to react... You wipe some of it off, but the hot air quickly takes care of the rest. A little dazed, you ask around about this strange woman and find that she's a frequent visitor to Oviasis. Although nobody really knows who she is, she has been coming by for years to trade for supplies or to pick up magical goods, which she is quite fond of. You don't quite mention the extra bit about her... mess and the situation behind it, on the other hand, as the locals never mentioned any form of sexual assaults. It seems she is quite a shy person, so they don't know much more beyond her market habits and friendly demeanor.", true); doLust(Math.floor((lib - (ment / 5)))); hrs = 2; doEnd(); }; } else { if (((((((checkItem(200)) || (checkItem(215)))) || (checkItem(101)))) || (checkItem(102)))){ outputMainText("\r\rShortly after you begin watching her, a wind picks up from behind you and heads in her direction. She pauses and sniffs at the air a few times, picking up a scent and slowly moving towards you as she uses her nose to follow it, not yet noticing your actual presence just yet.\r\rAs she moves closer, you can see more under her robe. A fennec-like face matches the fuzzy ears above, which each seem to be larger than her head, and long auburn hair. Soft fur nearly covers her body, parted down her front by the large belly-scales that plate across her chest and stomach, from her slightly elongated neck down to the tip of her tail. Supple draconic spikes peek out several inches along her spine, all the way down to the tip of her tail where they gently bend back and forth as her tail swishes from side to side anxiously. Her wings and arms are one in the same, each tipped with three finger-like talons that make up her hands. The clasp of her cloak manages to hide her otherwise naked breasts, a nice pair that matches her lithe frame, while her lower bits are covered by a jeweled loin-cloth - a relatively scant outfit for the torrid weather.\r\rAnd as she finally closes in on you, she ducks down as her short muzzle continues to sniff about. She sniffs right up your legs and at your pack, quietly speaking to herself in a feminine voice.\r\r\"Ooo, definitely some magic emanating from here. I wonder what it could be? Crafted? Naturally imbued? A weapon? Or maybe a charm? It's been a few weeks since I've found anything neat around here to add to my collection, I can't wait to see it!\" Her fingers dig into your pack and start to shuffle around for the magical goody, but slowly comes to a stop as she looks up. It wasn't until now that she realizes that it has been attached to a person this whole time - you. She hops back with a blush, her head ducking between her shoulders with embarrassment. \"Oh dear, I'm so sorry! I-I was just hunting for magical treasures!...\" Her toes curl awkwardly over her sandals. \"Umm... Bye!\"\r\rShe disappears into the crowd and heads out of the bazaar in embarassment before dashing off upon her wings,", false); outputMainText(" her shyness getting the best off her.\r\rNot quite sure what just happened, you ask around about this strange woman and find that she's a frequent visitor to Oviasis. Although nobody really knows who she is, she has been coming by for years to trade for supplies or to pick up magical goods, which she is quite fond of. It seems she is quite a shy person, hence her little stint with you, so they don't know much more beyond her market habits and friendly demeanor.", false); hrs = 2; doEnd(); } else { outputMainText("\r\rNot long after you begin staring at her, she catches you out of the corner of her eye as well. She looks at you for only a moment, realizing you're gawking at her, and comes to an abrupt halt. Meekly, she steps backwards into the crowd, shyly avoiding your presence as she disappears.\r\rWith no sign of her anymore, you shrug and move along.", false); hrs = 1; doEnd(); }; }; }; } else { if ((((chance <= 10)) && ((silRep < 6)))){ if ((((((silPreg > 360)) || ((((silRep > 2)) && ((silPreg > 300)))))) || ((((silRep > 3)) && ((silPreg > 200)))))){ outputMainText("Walking through thr Oviasis bazaar, you notice that it's about the time Silandrias usualy does her shopping, but you see no sign of her. There must be some reason she hasn't flown out here...", false); hrs = 1; doEnd(); } else { outputMainText("Walking through Oviasis' bazaar, you spot Silandrias doing her usual shopping.", true); if (silPreg > 36){ if (silPreg <= 72){ outputMainText(" She has a slight smile as her wings roam about the growing bulge in her belly, the shape so obvious against her normally lithe form. A smile on her face when she looks at you silently passes the message that she knows it's because of you, but finds the sensation too blissful to actually speak about it.", false); } else { if (silPreg <= 150){ outputMainText(" Her wings hug under her gravid form, holding and groping it as she feels it sway with each step, so big on her thin form; her belly-scales looking larger as they stretch across the girth. She seems a bit giggly at her state as she looks to you as the cause, but doesn't think it needs stating at this point.", false); } else { if (silPreg <= 240){ outputMainText(" Her belly has grown so large that the tips of her wings can no longer connect around her form, but that doesn't keep her from trying as she rubs over the stretched scales again and again, relishing in their sensitivity, even in this bazaar with people all around. She still manages to stand up straight, though, as her strong lithe build can handle it, but she clears quite the path as she goes through the crowds.", false); } else { if (silPreg <= 360){ outputMainText(" She leans forward slightly as her weighty girth fills the path before her. Her feathers brush over her taut belly-scales, trying to fan them slightly with the slight pleasure she feels as the finger-like talons grab into the scales as well as they can to help hold her steady, causing her to gasp erotically amidst the crowds. She bends slightly at the knees to aid in holding up her expanding womb, looking a little silly all the while.", false); }; }; }; }; }; if (silRep == 1){ if (silPreg > 120){ outputMainText(" And with the swelling of her breasts, flesh overflowing above and below the clasp of her cloak, she's rather cautious of any potential 'incidents' that might occur in this public place...", false); } else { if (silPreg > 60){ outputMainText(" However, she seems a bit embarassed amongst the lizan people as it seems her breasts have also begun to swell slightly with her belly, the clasp in her cloak being much more 'obvious' than before...", false); } else { outputMainText(" Clad in her usual white cloak, she shops without issue.", false); }; }; }; if (silRep == 2){ if (silPreg > 200){ outputMainText(" Having completely given up on the clasp of her cloak, the thick nipples of her top breasts barely hold the cloak over most of her mammary flesh. Bigger than her head now, the top pair swings from side to side as she walks, while the smaller pair below jiggle slightly as her belly bobs between them, almost completely bare if it weren't for her wings in the way. She blushes tremendously as she walks through this public place, rapidly shopping to be done as soon as possible, especially as many eyes stare at her", false); } else { if (silPreg > 120){ outputMainText(" Both pairs of breasts are becoming quite swollen now. She worries about the top pair that threatens to break through the clasp of her cloak while the second pair pushes against the edge of the fabric; the smaller mounds nearly slipping out with the protruding belly spreading the cloak open. She still manages to cover the exposed side-boob with her wings, unsure what to do about them while she hurriedly shops.", false); } else { if (silPreg > 60){ outputMainText(" Also her breasts seem to have begun swelling once more, although this time she seems more worried about some extra growth... Just below her burgeoning bust, another pair of mounds have begun to swell. Her cloak still manages to cover them, but she still tries to cover them with her wings just in case, to prevent the lizan people from noticing.", false); } else { outputMainText(" And with growth in her breasts having diminished with her belly, she walks around with more confidence, though it does seem she's got a bit of tightness still as eyes sometime draw to her chest.", false); }; }; }; }; if (silRep == 3){ if (silPreg > 200){ outputMainText(" The upper clasp already undone and the second clasp close to being the same, her cloak doesn't seem to be doing much for her. Half of her top areolas peek out from the edge of the draped cloak, easily the size of small dinner plates, while the second pair press obviously against the tight cloak. Meanwhile, the third pair simply jiggles freely, well more than a handful, as they bounce with the belly. She tries to cover them with her feathers, but with all the other masses she has to deal with she often neglects them. With the redness in her face as she desparately rushes through the bazaar, it's amazing she even made it this far.", false); } else { if (silPreg > 120){ outputMainText(" And she tends to pull at the upper clasp in her cloak, trying to give herself more breathing room as the orbs billow out about and below, much larger than her head. Less self-conscious now, it seems her worries have become more about keeping her cloak together than the greater attention she receives, especially as the pair directly beneath isn't fairing much better either, with the second clasp it stretched across both the large mounds and the upper portion of her growing belly. Her third pair, on other hand, make for good hooks as the nipples catch the edge of the cloak on either side, keeping the sides of her belly covered as she hugs it, at least.", false); } else { if (silPreg > 60){ outputMainText(" In spite of her adjustments to her cloak, her top pair of breasts are once more pushing at the expanded clasp, with her second pair seemingly following suit against their own, renewing her self-conscious behavior around the lizan people. However, the most embarassing part for her is that another pair looks to be growing in as well, flanking her belly with small mounds beneath the cloak, which she desparately hides...", false); } else { outputMainText(" It also seems as though she's made some adjustments to her cloak. Though her breasts may have reduced in size after the last laying, she still retains the second pair which has been nicely covered by an additional clasp. However the top pair seems to have had some extra cloth added to the bust, to make up for the increased size...", false); }; }; }; }; if (silRep == 4){ if (silPreg > 120){ outputMainText(" Having found some twine somewhere, she has managed to create make-do clasps for her cloak to more effeciently cover herself. However, those clasps are across her back as the cloak is on backwards in an attempt to cover her front with as much fabric as possible. And yet, despite the effort, her upper pair is already peeking out from the sides as it stands and all of her nipples press obviously against the cloth as her belly pushes them firmly against the make-do outfit. Considering she's nearly fainting from the amount of blood rushing to her face in embarassment, you doubt she'll be making many more trips to the bazaar after this...", false); } else { if (silPreg > 60){ outputMainText(" And just as before, her breasts have begun to swell already. In anticipation... she didn't even bother latching the clasps. Depending on her large perk nipples and the occasional tug to keep it shut, the cloak manages to cover some of herself. Suffice it to say, there's a lot of exposed belly-scales as the breast flesh stretches them in curvy manners. What's most troublesome, though, is that there is yet another pair beginning to blossom below the third, accentuating the size of her relatively small belly even more. Nearly every lizan face turns to gawk at her as she rushes through to shop, forcing her to blush the whole way.", false); } else { outputMainText(" With her curves back to a relatively normal state, she seems to be trying to get out and shop again with her cloak. However, her top breasts are already pressing tightly against the upper clasp, despite her reduced sizes from the laying. The lower clasp looks like how the top one used to be when you first met her, which isn't too bad. The bottom pair of decent sized breasts seem to peek out with even the slightest breeze, on the other hand, as she hasn't made a third clasp yet... Thankfully, she can keep those hidden beneath the goods she buys as she travels through.", false); }; }; }; outputMainText("\r\rShe stops for a moment to greet you and give you a hug, but with the crowds bustling around you she merely mentions you're welcome to come by her den to visit with her more privately. Then she jumps back into the crowd, eager to finish her browsing so she can retreat back to her private home soon.", false); hrs = 1; doEnd(); }; } else { if ((((((chance <= 30)) && ((hour >= 8)))) && ((hour <= 20)))){ outputMainText("Walking around the hidden paradise, you come across a rather... shiny area. A nice open beach beside the water is covered with the bodies of lizan people, all sunning themselves in the nice weather. Plenty are covered with oils to help their scales look bright and lush from the incoming rays, and more than a few are covered with nothing else on this private beach...", true); if (percent() <= 50){ outputMainText("\r\rAs you peer over the beach of slick figures, one by your feet squirms a little and opens an eye, only able make out your silhouette amidst the sunlight, but doesn't seem to care.\r\r\"Would you be a dear and put some more oil on me, I'm feeling a bit dry.\"\r\rThe sweet voice of the very feminine figure is obviously directed at you. She's one of those who prefer to sunbathe in the buff, letting all her vivid array of scales soak up the warmth. Side-boob can be seen squishing out either side of her chest as she lays upon them, her arms crossed beneath her head. The curvacious body narrows at her waist and expands dramatically at her hips, her rump nice and tight as her tail covers her naughty bits. You can see a bowl of oils beside her, the stuff she's already glazed with.\r\rWill you add some more?", false); buttonConfirm(); doListen = function ():void{ if (buttonChoice == 6){ if (ment <= 10){ outputMainText("You nod and derp, picking up the bowl of oils and splashing it across her back. Then you fall down onto her, wiggling like an idiot and using your front to splash and \"massage\" the oil into her scales. The woman jerks in shock, rolling out from under you, her breasts bobbing around and sparkling from the sand, as she slaps you for your rough treatment.\r\r\"Get away from me!\", she says with an annoyed tone. \"I'll get someone else to help. You creep!\"\r\rShe stares you down and waits for you to leave before rolling back onto the sand, awkwardly trying to clean up the mess you made on her back...", true); doHP(-3); stats(0, -1, 0, 0); hrs = 2; } else { if (ment <= 40){ outputMainText("You nod and kneel down, splashing your hands around in the bowl to get them nice and drippy with oil. Then you press them onto her back, smearing them around haphazardly, trying to coat her the best you can. Your lack of finesse makes her eye you curiously for a bit, but she shrugs as you're getting the job done. Quite soon she's as shiny as the rest of them.\r\r\"Thank you for the help,\" she smiles and nods at you. Then she dozes off into another nap, content, allowing you to go off on your own again.", true); stats(0, 1, 0, 0); hrs = 2; } else { if (ment <= 80){ outputMainText("You nod and kneel down beside her, picking up the bowl and drizzling the oil down her spine. She shivers a little from the sensation and croons as your hands come down to press it into her scales, gently pushing it around and kneading her muscles carefully. She squirms a little as you hit her tense areas, obviously enjoying the massage you're giving her. Even her tail whips around a bit as you coat it, exposing her supple genitals for a moment as she accidentally flashes you.\r\rSoon, she's quite coated and relaxed from your efforts. She thanks you for the pleasant experience and insists you take a vial of the oil with you, at least as compensation.", true); doLust(5); itemAdd(228); hrs = 3; } else { outputMainText((("You nod with a smile and straddle her rump as you kneel down, making sure to stay slightly aloft so as to not put any weight on her. You pick up the bowl and drizzle the oil down her spine, then press into it with your hands and spread it out across her body. Using your weight for more pressure, you deeply massage all of her muscles as you knead into her soft scales, making her moan softly from the tender treatment. You can feel her tail beging to flick beneath your " + buttDesc()) + " rump as you make your way down to the small of her back, until you trap it as you shuffle back to sit over her knees.\r\rHer tight tush tenses a bit as you gently brush the oil over it, but quickly relaxes as you grab and gently squeeze it. You softly grind into it, making her tail spasm beneath you until it eventually pulls out from under you as you begin to work at its base. You can see the blush in her face as she realizes she has unconsciously flashed you, her supple lips squished between her thighs below her tail. You can see a few sparkles from the dew that's collecting on them, your efforts being a little too pleasant. However, she doesn't seem to try to cover herself and after a moment of your working at her tail, massaging from the tip to the base, she spreads her legs beneath you until you have to adjust your stance to kneel between them.\r\rHer sex quite exposed and drooling honey into the sand below, your hands move in to oil up between her thighs. You slowly work your way up her legs, teasing her until the drooling becomes much more prominent, a large drop pushing out as you press into the outer labia. Her tail nearly slaps you in anticipation, it flicking around so much, and practically urges you to move in. Taking the blatent hints, you gently tug and squeeze at the tender lips, pressing your fingertips into her sex and slipping around to massage the wholly erect button at the front. Your hands deftly fly through again and again, making her gasp and her whole body squirm, shimmering from the oil you had supply her with. As her moaning increases, her panting coming to a climax, you watch as her lips spread. As she groans into the sand in orgasm, trying to muffle herself from everyone around her, your hands"), true); outputMainText(" are filled with a good-sized egg, covered in sensual slime.\r\rHer tail collapses onto your shoulder, resting there as you finish wiping her up and bringing her down, until you finally complete your task. Still breathing heavily, her body looking quite tired, she merely turns up towards you.\r\r\"Please, take some oil with you. Hands like those must be taken advantage of~,\" she sighs pleasantly. \"And you can keep the egg as thanks.\" She sticks out her tongue teasingly, but quickly lays back down to take a nice soothing nap to reminisce the recent events, leaving you to go off on your own.", false); itemAdd(228); itemAdd(219); hrs = 4; }; }; }; doEnd(); } else { if (ment <= 10){ outputMainText("Either not wanting to get your hands covered in oil or being allergic to the female species, you decide not to help her with her oiling. Instead you awkwardly step back and sneak away, leaving the woman wondering what happened.", true); stats(0, -1, 0, 0); } else { if (ment <= 40){ outputMainText("For whatever reason, you don't want to help her with the oiling. Instead you mumble some kind of lame excuse and walk away, leaving her to shrug and try to flag down the next passerby.", true); } else { if (ment <= 80){ outputMainText("Deciding not to help her, you calmly explain that you either don't have the time or you have to do something else. You thank her for the offer anyways and she nods back with a smile, waiting to flag down someone else for assistance.", true); stats(0, 1, 0, 0); } else { outputMainText("You kindly decline her gracious offer, mentioning how beautiful she looks already and how you might have had \"trouble\" giving her a massage like that, considering her nice features. She gives you a blushing smirk and giggles a little, offering you to take a vial of her massage oils for yourself, as thanks for the sweet compliments.", true); itemAdd(228); }; }; }; hrs = 1; doEnd(); }; }; } else { outputMainText("\r\rAs you peer over the beach of slick figures, one by your feet squirms a little and opens an eye, only able make out your silhouette amidst the sunlight, but doesn't seem to care.\r\r\"Would you please give me a hand and oil me up? I can feel my scales starting to dry a little.\"\r\rThe deep voice of the very masculine figure is obviously directed at you. He's one of those who prefer to sunbathe in the buff, not afraid to show off his physique. His shoulders are broad and his muscles are nice and toned, even his ass shining with tightness. His tail droops over his crack, though you can see it's lifted a tad from laying atop his testicles and his dual-cocks laying lazily on either side beneath it. You can see a bowl of oils beside him, the stuff he's already glazed with.\r\rWill you add some more?", false); buttonConfirm(); doListen = function ():void{ if (buttonChoice == 6){ if (ment <= 10){ outputMainText("You nod and derp, picking up the bowl of oils and splashing it across his back. Then you fall down onto him, wiggling like an idiot and using your front to splash and \"massage\" the oil into his scales. The man jerks in shock, rolling out from under you, his large balls swinging beneath his dual cocks, as he whacks you for your crude treatment.\r\r\"What are you doing?!\", he shouts with an annoyed tone. \"I'll get someone else to help. You nut!\"\r\rHe stares you down and waits for you to leave before rolling back onto the sand, awkwardly trying to clean up the mess you made on his back...", true); doHP(-5); stats(0, -1, 0, 0); hrs = 2; } else { if (ment <= 40){ outputMainText("You nod and kneel down, splashing your hands around in the bowl to get them nice and drippy with oil. Then you press them onto his back, smearing them around haphazardly, trying to coat him the best you can. Your lack of finesse makes him eye you curiously for a bit, but he shrugs as you're getting the job done. Quite soon he's as shiny as the rest of them.\r\r\"Thanks for the help,\" he smiles and nods at you. Then he dozes off into another nap, content, allowing you to go off on your own again.", true); stats(0, 1, 0, 0); hrs = 2; } else { if (ment <= 80){ outputMainText("You nod and kneel down beside him, picking up the bowl and drizzling the oil down his spine. He shudders a little from the sensation and croons as your hands come down to press it into his scales, gently pushing it around and kneading his muscles carefully. He wiggles a little as you hit his tense areas, obviously enjoying the massage you're giving him. Even his tail whips around a bit as you coat it, exposing his large testicles and dual cocks for a moment as he accidentally flashes you.\r\rSoon, he's quite coated and relaxed from your efforts. He thanks you for the unexpectedly pleasant experience and insists you take a vial of the oil with you, at least as compensation.", true); doLust(5); itemAdd(228); hrs = 3; } else { outputMainText((("You nod with a smile and straddle his bum as you kneel down, making sure to stay slightly aloft so as to not put any weight on him. You pick up the bowl and drizzle the oil down his spine, then press into it with your hands and spread it out across his body. Using your weight for more pressure, you deeply massage all of his muscles as you knead into his soft scales, making him groan a little from the tender treatment. You can feel his tail beging to flick beneath your " + buttDesc()) + " rump as you make your way down to the small of his back, until you trap it as you shuffle back to sit over his knees.\r\rHis tight butt tenses a bit as you genetly brush the oil over it, but quickly relaxes as you grab and gently squeeze it. You softly grind into it, making his tail spasm beneath you until it eventually pulls out from under you as you begin to work at its base. You can see him wince with embarrassment as he realizes he's giving you a good view of his nethers, his large balls squished between his thighs with the heads of twin cocks peeking out underneath. You can see a few sparkles from the pre that drips out onto the sand, your efforts being a little too pleasant. However, he doesn't seem to try to cover herself and after a moment of your working at his tail, massaging from the tip to the base, he spreads his legs beneath you until you have to adjust your stance to kneel between them for better access.\r\rHis dongs clearly in view, his testicles squirming with cum, your hands move in to oil up between his thighs. You slowly work your way up his legs, teasing him until the drooling pre becomes much more prominent, large drops pushing out as you grab the orbs. His tail nearly slaps you in anticipation, flicking around so much, and practically urges you towards the happy ending. Taking the blatent hints, you grope at the cum-filled things, reaching down to grab one cock in each hand. The fleshy things harden in your grip, growing slightly longer, but the overgrown fruits still weigh down on them, covering much of your hands as you pump the cocks one after the other. The pre smears about, plenty of lubrication, and he begins to grunt and tense over the sand while you deftly jerk him off. Soon, his tail freezes, standing high as spunk spits out across the sand and pooling around your knees, the balls working hard to keep up with the relief"), true); outputMainText(" until you're kneeling in a puddle of the stuff.\r\rHis tail collapses onto your shoulder, resting there as you finish wiping him up and bringing him down from the orgasm, until you finally complete your task. Still breathing heavily, his body looking quite tired, he merely turns up towards you.\r\r\"Please, take some oil with you. You seem to be better at using it than me. And here,\" he reaches into his pile of clothes and pulls out a large berry, \"take this with you, I've had enough for a while, if you couldn't tell.\" He sticks out his tongue in jest, but quickly lays back down to take a nice soothing nap to reminisce the recent events, leaving you to go off on your own.", false); itemAdd(228); itemAdd(208); hrs = 4; }; }; }; doEnd(); } else { if (ment <= 10){ outputMainText("Either not wanting to get your hands covered in oil or being allergic to the male species, you decide not to help him with his oiling. Instead you awkwardly step back and sneak away, leaving the man wondering what happened.", true); stats(0, -1, 0, 0); } else { if (ment <= 40){ outputMainText("For whatever reason, you don't want to help him with the oiling. Instead you mumble some kind of lame excuse and walk away, leaving him to shrug and try to flag down the next passerby.", true); } else { if (ment <= 80){ outputMainText("Deciding not to help him, you calmly explain that you either don't have the time or you have to do something else. You thank him for the offer anyways and he nods back with a smile, waiting to flag down someone else for assistance.", true); stats(0, 1, 0, 0); } else { outputMainText("You kindly decline his gracious offer, mentioning how handsome he looks already and how you might have had \"trouble\" giving him a massage like that, considering his nice features. He laughs heartily at the thought, offering you to take a vial of his massage oils for yourself, as thanks for the complimentary humor.", true); itemAdd(228); }; }; }; hrs = 1; doEnd(); }; }; }; } else { if (chance <= 30){ outputMainText("With the hidden valley practically packed with the lizan people that have come out to enjoy the night air, made pleasantly warm by the heat from the oasis waters, you have difficulty getting your bearings. You wander about with no idea where you're going, passing by crowd after crowd of friends who have gotten together to socialize. Eventually, however, you seem to have found your way back to the rock formations where everybody lives. At this time of night, they are usually quite empty as everyone heads out to the oasis. Yet, you can hear some rather... rambunctious noises. You peep inside one of the lower, larger rooms and spot what seems to be a lizan orgy, with several males and a few females.", true); if (vagTotal < 1){ outputMainText("\r\rConsidering the males are already bickering about the lack of available vaginas to plug, you probably wouldn't be of any assistance anyways, so you just continue on...", false); hrs = 1; doEnd(); } else { outputMainText("\r\rWith the obvious disparity of sexes in the orgy, they could probably use more females. Would you like to lend an extra hole or two?", false); buttonConfirm(); doListen = function ():void{ var tempInt:int; if (buttonChoice == 6){ tempInt = 0; outputMainText("They welcome you into the group, eager to have some more feminine attributes around. Within moments of joining, ", true); if (vagTotal > 2){ outputMainText(((((((" multiple males approach you, noticing your rather generous amount of available pussies and beginning to stroke their stiffening appendages. They crowd around you, pulling " + pullUD(2)) + " your ") + clothesBottom()) + " for easier access as they lift you up amongst them, spreading your legs wide while their many cocks swarm about beneath you. Each of your holes soon finds a guest burrowing inside, stretching your ") + vulvaDesc()) + " lips all the way to accomodate the many invaders. The men all grunt and groan as they toss you about, jiggling you up and down in the air and thrusting in different rhythms. The whole situation is difficult to track, yet soon enough you can feel a flood of fluid spray about beneath you as they go off one after the other, each feeling the churning of cum through the walls of your separate cunts. Your own orgasm forces the semen to squirt about your thighs and drench their legs, with even more leaking out in collective gobs as the guys slowly bring you back down to the ground, your legs a bit bowed from the experience."), false); i = 0; while (i < vagTotal) { doImpregnate(6); i++; }; doLust((-3 * sen)); tempInt++; hrs++; }; if ((((tempInt > 0)) && ((vagTotal > 1)))){ outputMainText("\r\rThen ", false); }; if (vagTotal > 1){ outputMainText((("a lizan man seems surprised to see your exra attributes. Already hard from thinking about it, he happily kisses you and presses his two pricks against your " + bellyDesc()) + " belly before each slips them between your legs to dive into seperate passages. He hugs you tight as he plunges both in at the same time, quivering slightly as he can feel himself through the fleshy wall that separates the rods. In and out, pre and lubrication spitting into the cleft between the bases of the two cocks and dribbling down his scrotum. He nuzzles into your neck, grunting loudly as both things jerk inside of you, pounding both holes in unison until painting them with spunk. You can feel both wombs filling at almost the same time, bringing you to quite a high. The experience was so powerful that when he eventually pulls out, he's as limp as a noodle and can hardly participate in the orgy anymore..."), false); doImpregnate(6); doImpregnate(6); doLust((-2 * sen)); tempInt++; hrs++; }; if ((((tempInt > 0)) && (((vagSize * vagSizeMod) > 30)))){ outputMainText("\r\rSoon after, ", false); }; if ((vagSize * vagSizeMod) > 30){ outputMainText((((((((("one of the males approaches you, stroking his double dongs as they point towards you. He nudges you towards a wall until you lean back up against it and he lifts one of your legs for easier access to your slit" + plural(2)) + ". Smiling at how large ") + oneYour(2)) + " hole") + plural(2)) + " is, just from glancing at it, he grabs his two cocks together and inserts them both slowly into your entrance, letting you stretch and easily gobble them both up. Delighted with how well he was able to get both into your passageway, he immediately begins to thrust, bouncing you up and down the side of the wall, letting your body toss about with it. You brace yourself, biting your lip as he thoroughly fucks you, his cocks slipping past each other and twisting about inside of you. The feel of your walls with the thumping of his wangs together quickly makes his tail curl around behind him, flexing as he pumps two large loads into you at the same time. You climax soon after, squeezing his cocks back out as they soften, spunk spilling from your ") + vulvaDesc()) + " pussy, the hole still gaping after he releases your leg."), false); doImpregnate(6); doLust((-2 * sen)); tempInt++; hrs++; }; if (tempInt > 0){ outputMainText("\r\rHaving had a moment to gather yourself, ", false); }; outputMainText((((("your attention is taken by one of the few lizan girls there, who waves you over as she lays on her back with a guy on top of her. You move closer and see she's already plugged up with one of his two shlongs. Looking a tad pained, it seemed the guy tried to fit both in at the same time, to no success, leaving his other cock bouncing awkwardly upon her clit. Yet, with you there, she's able to get a bit more fun as she directs you to lay on top of her, mushing her soft breasts against your own. She leans up to kiss you, pressing your " + buttDesc()) + " down so the man can slip his other schlong into you while your own ") + clitDesc()) + " clit grinds against hers. A few seconds pass as the three of you gain momentum and soon you become a writhing mass, humping against each other with the twin pistons plunging into the shared cunts. The girl's tongue swirls around yours and her hands reach between to pinch each your nipples together. The man quickly begins to seize, greatly enjoying the taste of pussies from two different girls, and gushes within. A slight harmony of vibrations can be felt between your two bellies, causing both of your to cry out into each others mouths in orgasm. Eventually, the guy can't stand it anymore and has to pull out to collapse in bliss, letting his spunk drip down from your pussy onto hers and down her crack to her tail. The girl, however, remains latched on for a couple minutes longer before letting go with an enthused gasp, rolling you off to catch her breath."), false); doLust((-2 * sen)); doImpregnate(6); tempInt++; hrs = (hrs + 2); outputMainText("\r\rHaving taking all you can for now, you slowly clean yourself up and thank the carnal group for the delightful experience, then walk away with a satisfied kink in your step.", false); doSexP((2 * tempInt)); doEnd(); } else { outputMainText("Deciding you're not in the 'orgy mood', you continue on your brisk walk.", true); hrs = 1; doEnd(); }; }; }; } else { if (chance <= 60){ outputMainText("You stroll around the oasis waters, watching some of the lizan people swim and play about. As you begin to approach some of the more unpopulated floral overgrowth, however, you begin to hear gasping from behind some cattails. Sections of overgrowth aren't as comfortable as the sandy beaches, so the lizan generally don't swim around there, but that does afford the areas some extra privacy. At first from the gasps it seems like they are having fun, but a feminine groan followed by an exasperated \"Ohh, why won't it stop?!\" suggests otherwise.\r\rWhatever is going on, they are obviously hiding for some reason, though they may need some help. Will you approach?", true); buttonConfirm(); doListen = function ():void{ var tempInt:int; if (buttonChoice == 6){ viewButtonOutline(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0); viewButtonText(0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0); buttonWrite(1, "Plug"); if (ment >= 30){ Choice1.visible = true; }; buttonWrite(6, "Help Lay"); buttonWrite(11, "Eggcelerator"); if (checkItem(230)){ Choice11.visible = true; }; outputMainText("You slowly push through the cattails and approach the troubled female.", true); tempInt = Math.ceil((percent() / 33)); if (tempInt == 4){ tempInt = 3; }; if (tempInt == 1){ outputMainText(" A relatively young girl squats in the water in a one-piece bathing suit, with mild curves on her small frame. She gasps and moans as one hand dwells between her legs, holding the crotch of the suit aside, while the other holds onto the plants to steady herself. Below the surface of the clear waters, you can see her exposed slit stretch wide as a white object slips out into a small pile of more eggs that has settled into the sandy floor beneath her. \"Still?!,\" she groans again.\r\rAs she spots you approaching, she lets out a squeak and turns away, her tail pressing down into the water to hide the rear-view of her nethers. \"Please, don't look!\" She blushes heavily. Her soft voice continues on rapidly, trying to explain herself admist her embarassment. \"I-I'm supposed to go on a date with my new boyfriend tonight and I didn't want to lay in front of him, so I thought if I took some of that stuff it would come out earlier and I wouldn't have to worry. But it didn't seem to do anything so I took a bunch more and it finally came. B-But it didn't stop, instead they just... they just keep coming!\" She whines a little as she feels another one begin to push through, her hips twitching and her knees shaking as she tries to hide it the best she can from you.", false); }; if (tempInt == 2){ outputMainText(" A well-developed girl squats in the water in a bikini, with rather attractive curves on her fit frame. She gasps and moans as one hand roams between her thighs, pulling aside the crotch of the bikini bottoms and stroking herself, while the other holds onto the plants for support. Below the surface of the clear waters, you can see her clit stand stiffly as a white object slips out into a small pile more eggs that has settled into the sandy floor beneath her. \"It's too early!,\" she groans again as she fondles herself. \r\rAs she spots you approaching, she shirks and shuts her spread thighs as she blushes, though her hand remains adhered to her erogenous zone. \"You don't understand!\" She blushes with embarassment at being caught, but tries to explain herself the best she can. \"M-My fiance and I were, umm... planning to have some 'fun' tonight and I thought I'd take some eggcelerator to help liven up the mood. I didn't feel anything right away, so I took a few more doses. A-And, well...\" She looks away as her eyes clench, her body seizing while her hips twitch, laying another egg before you eyes as her thighs split a little to unintentionally give you quite the view.", false); }; if (tempInt == 3){ outputMainText(" A mature and attractive woman squats in the water completely nude, her bikini tossed aside, revealing the wide hips from years of egg-laying and breasts hanging large and heavily from past breastfeeding, while her thick tail presses down to keep her balanced. She moans as both hands work her pussy, one rubbing her clit as the other spreads her lips wide. You can see it all below the surface of the clear waters, even the white object that slips through her lips and into a small pile of more eggs that has settled into the sandy floor beneath her. \"Not quite how I planned it...,\" she groans again.\r\rAs she spots you approaching, she makes a small effort to cover her indecency, though isn't too embarassed. \"Well hello there.\" She still blushes a little from your stares, but explains herself thoroughly. \"I was hoping to speed things up for a nice big cake for the kids' slumber party they're having tomorrow, but I went a bit overboard with the eggcelerator... Now I'm stuck here trying to pass them all until I can walk around again without popping them out in front of everybody!\" The lewd thought makes her hand begin to rub again while you continue to watch, twitching as she lays another egg.", false); }; doListen = function ():void{ if (buttonChoice == 1){ outputMainText("Using some ingenuinity, you fashion a sort of 'pussy-plug' from one of the surrounding cattails. Soft enough to protect her and her eggs, yet stiff and phallic enough to slip in and stay until she can get to her home in the rock formations, it should suit the situation well.\r\r", true); if (tempInt == 1){ outputMainText("Scooching up behind the shy girl so as to not look directly at her, you console her as you bring the modified cattail down to her loins. Since you are unable to get a good view, she has to guide your hand to her slit, which causes her whole body to warm before you from blushing so hard. However, her inexperience with her own body proves most troublesome...\r\rFrantic and unwary of how she's directing you to insert the makeshift plug, she accidentally pushes into the wrong hole. She lets out a shriek of surprise and pain, her tail whipping up behind her. Whipping up right into your own groin.\r\rYou double over in pain and splash into the water. The girl hops up, rubbing herself and kicking the pile of eggs about as she dances about. Her bathing suit slips back over her slit and she holds it tenderly while she bends over you, trying to prevent another egg from popping out.\r\r\"I-I'm so sorry!\" Apologizing for your pain, she turns and runs to find another place to hide as she can already feel the next egg pressing against her bathing suit from within, leaving you to groan and writhe for a while alone.\r\rAfter some time passes, you gather yourself and limp away...", false); doHP(-5); stats(0, 0, -2, 0); hrs = 3; doEnd(); }; if (tempInt == 2){ outputMainText("Asking the pretty young woman to spread her legs for access, she blushes harder and nods hesitantly. You gently pull her folds apart, making her buck slightly from her sensitivity, and slip the makeshift plug into her pussy. Pulling away, she pauses as she feels an egg settle onto the soft fluff but is unable to push further, effectively halting her laying for now. Slipping her bikini back over her exposed nethers, she slowly stands, getting used to the sensation.\r\rThough her belly looks a bit bloated and gradually growing with the buildup, she seems grateful. \"Umm... thanks for that.\" She squirms slightly as her stiff clit presses visibly against the bikini's crotch, becoming more aroused from the swelling sensation. Absent-mindendly, she leans down and gives you a quick kiss, dropping one of her pre-laid eggs into your lap as a gift, before blushing ferociously and running off to find her fiancee.", false); stats(0, 0, 1, 0); itemAdd(219); hrs = 2; doEnd(); }; if (tempInt == 3){ outputMainText("Asking the attractive mother to present her passage, she eyes you suspiciously for a moment. Then she shrugs, removing the hand blocking your access and even leans back further to give you greater access to her sex. You gently press your fingers against her outer labia as you push the makeshift plug in between. Her breathing quickens in pace for a few seconds as you soft touch pleases her sensitive loin. As the next egg slowly comes to a stop upon the soft fluff within, she grins at how effective the treatment was.\r\r\"Wow, that is quite a neat trick! You really deserve some compensation for helping me like that.\" She slowly stands, a hand on her belly as she feels it swell slightly from the buildup before turning away towards her shed suit. Bending down before you, her tail flipping up to balance herself and giving you a generous view of her plump rear, she grabs some coins and an egg from the pile before turning to hand them to you. \"Thanks again!\" She smiles and winks. She then squeezes into her bathing suit, letting her curves fill it in dramatically, and picks up the rest of the eggs to get started on that cake.", false); doCoin((30 + Math.ceil((percent() / 3)))); hrs = 2; doEnd(); }; }; if (buttonChoice == 6){ outputMainText("Hoping to help out, you decide to try to assist with the laying, if at least to make the process more comfortable. ", true); if (tempInt == 1){ outputMainText("Scooching up behind the shy girl so as to not look directly at her, you slowly move her hand towards her loins to allow her plenty of time to object if she wanted to. However, she seems to instead prepare herself for your touch, leaning back into you and holding her breath as your hand approaches her exposed genitals. Your fingers slide over her own as you spread her supple lips wider, making her gasp lightly as she feels the next eggs slip through the stretched gap. The palm of your hand over her mons, you notice a churning sensation within as another eggs is already being produced and on its way. To allow her to relax more for ease of laying, your hand begins to gently rub about her sensitive slit, using the warm water and subtle lubrication from her hole to caress her stiffening little clitoris. She gasps and moans exuberantly, relying on your body for support as she completely lays back into you, the next egg soon passing through with a greater moan escaping her lips.\r\rAt least half an hour of this pleasurable oviposition passes in your arms. A large pile of eggs has accumulated beneath the two of you and the girl is quite the quivering mess from the many orgasms. Her nipples stand stiffly against her one-piece bathing suit and the crotch is more soaked with her slime than the oasis waters. However, it seems her egg cycle has slowed closer to a normal pace as no more try to escape her womb. It takes several more minutes before she can thoroughly gather herself, looking back to you and blushing tremendously.\r\r\"Th-Thank you. Th-That was...\" Too embarassed, she can't muster up the rest of her words. Instead, she slowly stands, her legs shaking and threatening to give out as she turns to face you, her petite slit still exposed. She leans down to hug you, giving you a soft peck on the cheek. And then she subtly slips her hand down for one last pet before pulling her suit back into position, stepping away silently in an ecstatic daze while her tail twitches awkwardly behind her.\r\rThough the kiss itself was quite generous from such a shy girl, it also seems she has left you quite the horde of eggs.", false); i = 0; while (i < (6 + Math.ceil((percent() / 20)))) { itemAdd(219); i++; }; doLust(((2 * lib) - ment)); stats(0, 1, 1, 0); hrs = 3; doEnd(); }; if (tempInt == 2){ outputMainText("Asking the pretty young woman to spread her legs for access, she blushes harder and nods hesitantly. You crawl forward through the shallow water, ducking in between her thighs. She squirms a bit as you reach in towards her exposed slit, making her shiver as you press the sensitive lips with your fingers, spreading and massaging them. Already you can feel her quiver within as a fresh egg begins its voyage out, easily slipping through the widened gap and plopping into the pile below, causing her to let out a low moan the whole way through. Her clitoris stands stiffly amidst her folds, large enough to protrude lewdly, especially with her arousal. Staring at it only makes her blush more and when your mouth comes in to suckle it, she jerks back, wrapping her tail around your abdomen to hold on as she nearly collapses into the water.\r\rThe oasis waters flooding over your tongue as you sip her genitals, the taste of sweet feminine lubrication is nearly overwhelming as she huffs and pants above you. Her hips gyrate around your face, scraping her thighs across your ears. Your efforts to 'soothe' her drive her wild, making her let out an erotic scream as the next egg begins to drop into her passage. The agonizingly slow progress of the ovoid thing through your pleasuring makes her writhe and twist, her tail hugging tighter and tighter and tighter. And, just as the egg begins to breach and make her squeal with ecstasy-\r\rYou pass out from lack of breath, her tail gripping you so strongly.", false); doNext(); doListen = function ():void{ outputMainText("You wake up some time later having been dragged onto the shore amidst the brush. Your waist aches and there's no sign of the engaged girl. Upon your chest you find a note, hinting as to where she may have gone.\r\r\"So, so sorry for making you pass out! I had to... With my fiancee and... Here, at least have an egg for forgiveness!\"\r\rRight beside you, you find the lone egg she had laid earlier, still slightly slimy and warm from her womb. Considering it's not wet from the oasis waters, it might just be the egg she laid when you were crushed...", true); itemAdd(219); hrs = 4; stats(-1, 0, 0, 0); doHP(-15); aff(6, Math.floor(((percent() / 20) + 2)), -1); doLust((lib - ment)); doEnd(); }; }; if (tempInt == 3){ outputMainText("Asking the attractive mother to present her passage, she eyes you suspiciously for a moment. Then she shrugs, removing the hand blocking your access and even leans back further to give you greater access to her sex. You crawl forward through the shallow water, ducking in between her thighs. She squirms a bit as you reach in towards her exposed slit, making her shiver as you press the sensitive lips with your fingers, spreading and massaging them. Already you can feel her quiver within as a fresh egg begins its voyage out, easily slipping through the widened gap and plopping into the pile below, causing her to let out a low moan the whole way through. Her clitoris stands stiffly amidst her dangling folds, all the meaty labia engorged with her arousal. She lets out a squeak as your mouth comes in to nibble on the tasty flesh, surprised at the efforts you are taking to 'comfort' her.\r\rThe oasis waters flooding over your tongue as you sip her genitals, the taste of sweet feminine lubrication is nearly overwhelming as she breathes more heavily above you. As you dip further into the water to nom on more of her labia, her hand briskly sweeps down to grind against her clitoris. The next egg begins to drop into her passage, pouring slime over your lips as it passes through while her ample rump twitches and splashes over the water's surface above you. You come up every now and then for a breath, only to dive back in to continue munching away, making the eggs speed through quicker and quicker as she takes a fondness to your efforts.\r\rAfter about a half hour and a great deal of pussy flavor filling your mouth, the woman seems to have finally finished laying all that the eggcelerator had caused. Coming up to look at her, her face is thoroughly dazed from the experience, her nipples stiff from all her own fondling while you were underwater and even leaking a few drops of milk.\r\r\"Well... that worked out much better than I thought it would. Though I suspose now I should really be getting back to my husband and children.\" She smiles as she teasingly disapproves of the minor infidelity. \"Thank you for your efforts though, it was a pleasant experience.\"\r\rStanding to gather the eggs together, she also bends forward before you, giving you a generous view of her rear, tail up and all, while she grabs some coins to give you in return. Then she gathers up the eggs for the cake she needs in the suit before slowly walking away, her tail swaying from side to side with the rest of her hips, making her way through a nude beach to get home.", false); doCoin((10 + Math.ceil((percent() / 10)))); aff(6, Math.floor(((percent() / 20) + 6)), -5); doLust(((10 + lib) - ment)); hrs = 3; doEnd(); }; }; if (buttonChoice == 11){ loseManyItem(230, 1); outputMainText("Thinking another dose might somehow help, you pull out an eggcelerator from your bag. ", true); if (tempInt == 1){ outputMainText("Scooching up behind the shy girl so as to not look directly at her, you console her as you bring the dose of eggcelerator down to her loins. Since you are unable to get a good view, she has to guide your hand to her slit, which causes her whole body to warm before you from blushing so hard. With her experience with the previous doses of eggcelerator, she manages to guide you correctly and lets out a squeak as she feels the suppository slip up into her passage.\r\rThe girl begins to quiver slightly as she feels her womb go into overdrive. A gasp escapes her lips as an egg immediately pushes through her folds, past your combined fingers. Suddenly, she seizes back into you, her back arching, as more eggs spill out of her womb. Her pussy lifts out of the water and into the air as her feet drag and kick through the sand below, tossing the pile about. Her exposed cunt spreads wide as another egg plops out into the water with another one right behind firing further out. She moans and whines as her body thrashes about, staring down at herself with fear as she's practically spreading her legs to anybody else in the lake and spreading her private area wide for them all to see as the eggs fly out of her. Jumping away from you with a sob, she stands up with a couple more eggs dropping between her thighs with thick strands of lubricant trailing. The girl hastily covers the exposed genitals with her one-piece suit, a tear shedding as she sees the crotch bulge with the next egg pushing through. Wholly embarassed, she runs off into the brush, the eggs already slipping back into the rear of the suit as more collect before she disappears.\r\rLeft alone and feeling a little ashamed of how things progressed, you manage to fish out some eggs that survived and head off.", false); itemAdd(219); itemAdd(219); itemAdd(219); stats(0, 0, 0, -1); hrs = 3; doEnd(); }; if (tempInt == 2){ outputMainText("Asking the pretty young woman to spread her legs for access, she blushes harder and nods hesitantly. You gently pull her folds apart, making her buck slightly from her sensitivity, and slip the eggcelerator into her pussy, letting it slide up into her womb.\r\rShe gasps for a moment as she feels the tingling in her belly while the suppository dissolves, then her eyes grow wide as an egg immediately pushes out through her folds. Moans start to emit from her lips as more eggs cram their way about her pussy, her legs opening and shutting sporadically as she tries to rub herself while they fall into the pile below. However, the squatting position requires too much strength and she collapses forward onto her hands and knees, her rump pointing at the bushes. You can hear more eggs splash into the water behind her as she groans, her eyes clenching shut and her mouth wide with ecstasy.\r\rThe engaged girl's tail whips about behind her while her hips twitch and twist. She tries to reach down to fondle herself, but without the support she merely crashes into the water. In a wavering voice, she begs of you, \"Please... H-Help me!\"\r\rNot wanting to torture her, you move behind to see what you can do. In her shifting, it seems her bikini bottom had drooped back over her slit, only to be destroyed by the next egg on its forceful way out, the fabric torn away with only the outlining bands left intact. Essentially, her pussy is on blatant display as the bands slip behind her outer labia, leaving a gaping cunt that stretches even wider with each ovoid object it expels.\r\rUnsure what to do, you spot a large button that quivers with arousal. Sticking out from her lips and looking closer to a small penis, her clitoris is extremely engorged from the stimulation of her passage. So, you wrap your fingers around it and quickly proceed to jerk it with the plentiful lubrication that dribbles down from above. The girl cries out across the waters, turning some heads in the distance, as she instantly comes to her first orgasm, her whole body quaking. Again and again, with your efforts on her clit and the procession of eggs, the girl trembles and climaxes, her tail curling in the oddest of shapes in the air.\r\rAfter over half an hour of the extreme masturbation, the last egg pops out and the girl collapses onto the pile, crushing them all. She exhales under the water, bubbles floating to the surface before popping up for air. She continues to huff, letting the refreshing water regain some of her consciousness and eventually turns back to you.\r\r\"Wow... I-I didn't know one more eggcelerator could make me do that...\" She gasps again, completely oblivious to the fact that you're still staring into her gaping lewd genitals that she had attempted to hide earlier. \"H-Here, take these. I'm gonna go buy a buttload more and find my fiancee. I just hope he can last a few days...\"\r\rShe reaches into another pile of her belongings she had left amongst the cattails and hands you a couple more doses of eggcelerator, as well as some coins for more compensation. Then she stands. Then she falls back into the water with a splash as her legs give out. Then she stands again and begins to awkwardly walk out of the water and straight to the bazaar. She also seems completely unaware of the missing fabric in bikini bottom, especially as her little 'erection' points the way...", false); itemAdd(230); itemAdd(230); doCoin((15 + Math.ceil((percent() / 10)))); doLust(((2 * lib) - ment)); hrs = 3; doEnd(); }; if (tempInt == 3){ outputMainText("Asking the attractive mother to present her passage, she eyes you suspiciously for a moment. Then she shrugs, removing the hand blocking your access and even leans back further to give you greater access to her sex. You gently press your fingers against her outer labia as you push the eggcelerator into her supple hole, letting it slip up into her womb.\r\rShe gasps for a moment as she feels the tingling in her belly progress, then her eyes grow wide as an egg immediately pushes out through her folds. Suddenly, she leans backwards even more, pointing her pussy right at your face as more eggs coming flying out. Her strong motherly hips propel an onslaught of eggs at you, smacking and cracking over your head and body. She eventually crashes back into the water, crushing the pile of eggs she had already laid and firing a couple more past you.\r\rThe splash of water across her face snaps her out of the egg-laying haze and she jumps up, just in time for another egg to shoot down between her thighs. \"Oh no, all the eggs for the cake!\" She cries out in dismay and attempts to block the next with her hand, only to result in a yolky mess. With that failing, she turns away from you and bends down, giving you a perfect view of her round rear as well as another egg that propels straight into your face, while she picks up her bathing suit. Rapidly folding the elastic garment a bit and tucking it between her legs, she manages to improvise a basket. Then she takes off through a nude beach, carrying the suit-basket between her legs as it slowly stretches with the depositing eggs, her hips and tail twitching sporadically with each lay.\r\rLeft covered in yolk and slightly pained from the firing squad, there's not much left to do but wash off in the oasis waters and head off...", false); doHP(-10); aff(6, Math.floor(((percent() / 20) + 4)), -3); hrs = 3; doEnd(); }; }; }; } else { outputMainText("Deciding not to interrupt her, you leave whoever it is to their privacy and continue on your relaxing stroll.", true); doLust(-5); doHP(2); hrs = 2; doEnd(); }; }; } else { outputMainText("Exploring the paradise that's hidden within the desert, you get a better idea of what Oviasis is like.\r\rDuring the day, most of the lizan people spend their time in the caves and tunnels which speckle the sides of the rock formations that protect this valley. A bit hot, it's good to keep their temperatures in check with the cool stone. Yet, they all spend a bit of time soaking in the rays of the sun or taking a dip in the oasis water, the same water where many of the females like to lay their eggs, as it is a comfortable clean place that tends to be more private than if they started ovulating elsewhere. It is also where many lizan get a little randy at night when the sun sets, making the waters nearly churn with some lacivious activity while depending on the darkness for their privacy...\r\rNight is when Oviasis usually comes alive. Though the store hours are during the day, when they're feeling sluggish, it means that at night everybody is free to enjoy each other's company. Parties are commonplace, though they aren't much more than groups of friends gathering and talking and having fun together. With the amount of naps they get during the day, they often don't need to sleep at night, allowing them to catch up on social affairs or go hunting for food in the crisp air.", true); hrs = 1; doEnd(); }; }; }; }; }; } public function bc():void{ buttonChoice = 0; } public function percent():int{ return ((Math.floor((Math.random() * ((1 + 100) - 1))) + 1)); } public function loseManyItem(ID:int, amount:int):void{ var tempInt:int; tempInt = 0; currentItems = 3; tempInt = 36; while (tempInt > 0) { i = tempInt; if (i == 12){ currentItems = 1; }; if (i == 24){ currentItems = 2; }; if (i > 24){ i = (i - 24); } else { if (i > 12){ i = (i - 12); }; }; if ((((itemID(i) == ID)) && ((amount > 0)))){ if ((((amount >= (stackAmount(i) - 1))) && ((stackAmount(i) > 1)))){ amount = (amount - (stackAmount(i) - 1)); stackSlotWrite(i, -((stackAmount(i) - 1))); } else { if (stackAmount(i) > 1){ stackSlotWrite(i, -(amount)); amount = 0; }; }; if (amount > 0){ loseItem(i); amount--; }; }; tempInt--; }; } public function checkStash(ID:int):Boolean{ var tempBool:Boolean; tempBool = false; if (stashArray1.indexOf(ID) != -1){ tempBool = true; }; if (stashArray2.indexOf(ID) != -1){ tempBool = true; }; if (stashArray3.indexOf(ID) != -1){ tempBool = true; }; return (tempBool); } public function doPlains():void{ var chance:int; chance = percent(); if (chance <= 30){ outputMainText("You hear a hiss amidst some overgrown grass. Stopping cautiously, you manage to avoid stepping on a particularly dangerous snake. The cock-snake. Aptly named due to its head looking much like the glans of a human cock, this breed of snake is also known to devour that of the same... And if its opponent doesn't have one, they soon will.", true); doNext(); doListen = function ():void{ enemyID = 101; currentState = 2; enemyBaseStats(); eMaxHP = eHP; doBattle(); }; }; if ((((chance > 30)) && ((chance <= 55)))){ outputMainText("While trudging along the plains, you hear the stamping of hooves. Drunken song erupts in the air as a large equan man stumbles your way. His pants unbuttoned, his hand hidden within, you can see him groping his large erection. In his other hand he holds a large mug, still filled with alcohol. He smiles as he sees you, and then charges right at you!", true); doNext(); doListen = function ():void{ enemyID = 302; currentState = 2; enemyBaseStats(); eMaxHP = eHP; doBattle(); }; }; if ((((chance > 55)) && ((chance <= 75)))){ outputMainText("You wander about the open fields and find nothing but a handful of grain. At least the carbs will give you energy!", true); itemAdd(209); hrs = 1; doEnd(); }; if (chance > 75){ outputMainText("After a few hours of being lost amongst the vast expanse of flat plains, you come across the faint signs of a road. Would you like to follow it?", true); buttonConfirm(); doListen = function ():void{ if (buttonChoice == 6){ if (currentZone == 1){ outputMainText("Following the road, signs of civilization come into view. Large tents flutter in the breeze, made from canvas held up by rocks and logs, with a few smaller brick buildings here and there. You can hear the soft clapping of hard feet everywhere, as you spot several large horse-like people walk and dash about.\r\rYou have now entered the Equan home-city of Firmshaft! Although, looking behind you, there seems to be no sign of the road you just took. Getting back might be a bit difficult...", true); regionChange(2); if (foundFirmshaft == false){ foundFirmshaft = true; }; hrs = 4; doEnd(); } else { if (currentZone == 2){ outputMainText("Following the road, the level land breaks up into rolling hills. Not far, you see tall buildings of wood and stone, with open streets of dirt and pebbles, nestled between the hills. Fur-less people move all about, busy doing odd jobs or having fun.\r\rYou have found the Human home-city of Softlik! Although, looking behind you, there seems to be no sign of the road you just took. Getting back might be a bit difficult...", true); regionChange(1); if (foundSoftlik == false){ foundSoftlik = true; }; hrs = 4; doEnd(); }; }; } else { outputMainText("You return from whence you came.", true); hrs = 1; doEnd(); }; }; }; } public function doEnd():void{ bc(); doNext(); doListen = function ():void{ if (buttonChoice == 6){ doProcess(); }; }; } public function doStatus(time:int):void{ var birthCount:int; var tempInt:int; var tempInt2:int; outputMainText("Afterwards...", true); pregnancyTime = 0; birthCount = 0; i = 0; while (i < pregArray.length) { trace(("preg " + pregArray)); trace(("preglenggth " + pregArray.length)); trace(("vagTotal " + vagTotal)); if (pregArray[i] == true){ if ((pregArray[(i + 3)] + Math.ceil((time * pregRate))) > (pregArray[(i + 2)] + pregTimeMod)){ pregArray[i] = false; pregArray[(i + 3)] = 0; doBirth(pregArray[(i + 1)], pregArray[(i + 4)], birthCount); birthCount++; } else { pregArray[(i + 3)] = (pregArray[(i + 3)] + Math.ceil((time * pregRate))); pregnancyTime = (pregnancyTime + pregArray[(i + 3)]); }; }; i = (i + 5); }; if ((((((pregnancyTime >= 80)) && ((pregnancyTime < 140)))) && ((pregStatus < 1)))){ pregStatus = 1; lactChange(1, 1); lactChange(2, 1); boobChange(1); udderChange(1); if (lactation == 1){ outputMainText(" Your body must be getting ready for the baby that's growing inside of you. Even your breasts feel fuller...", false); } else { outputMainText("\r\rYour breasts are producing even more milk than normal. They're even a little fuller... Your body must be getting ready for the baby that's growing inside of you.", false); }; } else { if ((((((pregnancyTime >= 140)) && ((pregnancyTime < 210)))) && ((pregStatus < 2)))){ pregStatus = 2; lactChange(1, 1); lactChange(2, 1); boobChange(2); udderChange(2); outputMainText("\r\rYour breasts feel sore from the all the milky swelling. They've grown three cup sizes since you've gotten pregnant and dribble more and more!", false); } else { if ((((pregnancyTime >= 210)) && ((pregStatus < 3)))){ pregStatus = 3; lactChange(1, 2); lactChange(2, 2); boobChange(1); udderChange(1); outputMainText("\r\rYour breasts have slowed in their pregnant swelling. They should definitely be prepared for whatever you might give birth to... you hope.", false); }; }; }; if ((((pregnancyTime < 80)) && ((pregStatus > 0)))){ pregStatus = 0; }; if ((((((((eggLaying > 0)) && ((vagTotal > 0)))) && (pregCheck(1)))) && ((time > 0)))){ tempInt = (time + (2 * eggRate)); tempInt2 = 0; while (tempInt > 0) { eggTime--; tempInt--; if (eggTime <= 0){ tempInt2++; eggTime = eggMaxTime; }; }; if (tempInt2 == 1){ if (percent() < ((ment / 2) + 20)){ outputMainText((((((("\r\rHaving missed your body's signals, you suddenly double over and begin to groan as you feel something press against the inside of " + oneYour(2)) + " ") + vulvaDesc()) + " nether-lips. Your thighs clench to hold it back, but the smooth slick object spreads your cunt wide, squeezing out into your ") + clothesBottom()) + " where it cracks and spreads into a wet mess.\r\rYolky goop squishing in your groin with little bits of white shell jabbing you here and there, you take a moment to pull out the broken unfertilized egg and attempt to clean up after yourself..."), false); } else { outputMainText((((((((((("\r\rYou pause for a moment as you feel something drop within your womb. Groaning a bit, you spread your legs in preparation, a hand pushing your " + clothesBottom()) + " aside and helping spread ") + vulvaDesc()) + " nether-lips. You hold your breath and with a quick push, you feel ") + oneYour(2)) + " cunt") + plural(2)) + " stretch wide. Your fingers feel the hard shell beginning to crown and with a grunt it slips out into your palm.\r\rYou take a moment to gather yourself, slipping the smooth, round egg through your slit, still wet from your inner-slime, before you finally pull it out from your ") + clothesBottom()) + ". Drying it off, you have something to snack on later."), false); itemAdd(219); }; }; if (tempInt2 > 1){ if (percent() < (((ment / 2) + 20) - (4 * tempInt2))){ outputMainText((((("\r\rHaving been distracted and unable to lay for such a long time, you are unprepared for the buildup of ovid objects within your womb. You double over as you feel them crowd against the inside of your " + vulvaDesc()) + " nether-lips, your thighs clenching to hold them back, but the smooth slick object press on through anyways. They squeeze out into your ") + clothesBottom()) + ", where they crack and spread into a wet mess.\r\rYolky goop squishing in your groin with little bits of white shell jabbing you here and there, you take a moment to pull out the broken unfertilized egg and attempt to clean up after yourself..."), false); } else { outputMainText((((((((((("\r\rHaving been distracted and unable to lay for such a long time, you pause for a moment as you prepare for the objects that have built up within your womb. Groaning a bit, you spread your legs in preparation, a hand pushing your " + clothesBottom()) + " aside and helping spread ") + vulvaDesc()) + " nether-lips. You hold your breath and with a quick push, you feel ") + oneYour(2)) + " cunt") + plural(2)) + " stretch wide. Your fingers feel the hard shell beginning to crown and with a grunt it slips out into your palm. You place it down beside you and continue to lay until you are completely empty.\r\rYou take a moment to gather yourself, slipping the last smooth, round egg through your slit, still wet from your inner-slime, before you finally pull it out from your ") + clothesBottom()) + ". Drying them all off, you have some snacks for later."), false); while (tempInt2 > 0) { itemAdd(219); tempInt2--; }; }; }; }; if (malonRep == 4){ malonPreg = (malonPreg + time); }; if (((((((lilaPreg + time) > 40)) && ((lilaPreg <= 40)))) && ((lilaPreg > 0)))){ lilaMilk++; if (lilaMilk > 19){ lilaMilk = 19; }; }; if (((((((lilaPreg + time) > 80)) && ((lilaPreg <= 80)))) && ((lilaPreg > 0)))){ lilaMilk = (lilaMilk + 2); if (lilaMilk > 19){ lilaMilk = 19; }; }; if (lilaPreg > 0){ lilaPreg = (lilaPreg + time); }; if ((((((silPreg > 0)) && ((silRep < 5)))) && ((time > 0)))){ silPreg = (silPreg + (time + (2 * silRate))); tempInt = (time + silRate); if ((((silPreg > 30)) && ((silTied == false)))){ while (tempInt > 0) { silLay--; tempInt--; if (silLay <= 0){ silPreg = (silPreg - 10); silLay = 10; }; }; }; } else { if ((((((((((silPreg > 0)) && ((silRep == 5)))) && ((time > 0)))) && ((silGrowthTime <= 360)))) && ((silPreg < 10000)))){ silPreg = (silPreg + (time + (2 * silRate))); silGrowthTime = (silGrowthTime + time); }; }; if ((((((heat > 0)) && ((vagTotal > 0)))) && (!(pregCheck(0))))){ if ((((heatTime >= 0)) && (((heatTime - time) < 0)))){ outputMainText("\r\rYour crotch feels hot and tingly, your face becoming flush. Thoughts of sex, being pounded and filled with seed until your womb has been sufficiently impregnated, permeate your mind and makes you greatly aroused. You're feeling especially fertile and extremely lustful as you go into heat...", false); pregChanceMod = (pregChanceMod + 15); stats(0, -5, 10, 0); doLust(15); vagMoist = (vagMoist + 3); heatTime = -24; } else { if ((((heatTime < 0)) && (((heatTime + time) >= 0)))){ outputMainText("\r\rYou breath a sigh of relief as the heat finally passes, your body calming and no longer needing to reproduce as much.", false); pregChanceMod = (pregChanceMod - 15); stats(0, 5, -10, 0); vagMoist = (vagMoist - 3); heatTime = heatMaxTime; } else { if ((((heatTime > 0)) && (((heatTime - time) > 0)))){ heatTime = (heatTime - time); } else { if ((((heatTime < 0)) && (((heatTime + time) < 0)))){ heatTime = (heatTime + time); }; }; }; }; } else { if ((((((heat > 0)) && ((heatTime < 0)))) && (pregCheck(0)))){ outputMainText("\r\rYou breath a sigh of relief as the heat passes, your body calming and no longer needing to reproduce as much. However, it seems to have ended a bit early...", false); pregChanceMod = (pregChanceMod - 15); stats(0, 5, -10, 0); vagMoist = (vagMoist - 3); heatTime = heatMaxTime; } else { if ((((((heat > 0)) && (!((heatTime == heatMaxTime))))) && (pregCheck(0)))){ heatTime = heatMaxTime; } else { if ((((heat < 1)) && ((heatTime > 0)))){ heatMaxTime = 0; heatTime = 0; } else { if ((((((heat < 1)) || ((vagTotal < 1)))) && ((heatTime < 0)))){ pregChanceMod = (pregChanceMod - 15); stats(0, 5, -10, 0); vagMoist = (vagMoist - 3); heatMaxTime = 0; heatTime = 0; }; }; }; }; }; if (lactation > 0){ if (((((milkEngorgement + (lactation * time)) > 96)) && ((milkEngorgement <= 96)))){ outputMainText((((("\r\rPulling " + pullUD(1)) + " your ") + clothesTop()) + ", jets of milk shoot from your breasts. Your nipples dribble uncontrollably, your breasts so sore and especially sensitive. All the milk flowing from your body arouses you, and will continue to do so until either you give your breasts some attention or your milk dries up."), false); if (milkEngorgementLevel < 1){ boobChange(1); }; milkEngorgementLevel++; } else { if (((((milkEngorgement + (lactation * time)) > 72)) && ((milkEngorgement <= 72)))){ outputMainText((("\r\rYour " + clothesTop()) + " is soaked in front. Milk dribbles from your nipples almost constantly, too much to retain. The abundant supply seems to be overwhelming the lack of demand..."), false); if (milkEngorgementLevel < 1){ boobChange(1); }; milkEngorgementLevel++; } else { if (((((milkEngorgement + (lactation * time)) > 48)) && ((milkEngorgement <= 48)))){ outputMainText((("\r\rYour " + clothesTop()) + " feels moist around your nipples. Your breasts feel slightly swollen as blotches spread, milk leaking out. A bit engorged, it's a sign they should probably be attended to."), false); milkEngorgementLevel++; boobChange(1); }; }; }; milkEngorgement = (milkEngorgement + (lactation * time)); }; if ((((udderLactation > 0)) && ((udders == true)))){ if (((((udderEngorgement + (udderLactation * time)) > 96)) && ((udderEngorgement <= 96)))){ outputMainText("\r\rJets of milk shoot from the teats of your udder with each step. When standing still, it dribbles constantly, your udder so big and sore and especially sensitive from being so stretched.", false); if (udderEngorgementLevel < 1){ udderChange(2); } else { if (udderEngorgementLevel == 1){ udderChange(1); }; }; udderEngorgementLevel++; udderChange(1); } else { if (((((udderEngorgement + (udderLactation * time)) > 72)) && ((udderEngorgement <= 72)))){ outputMainText((("\r\rYour " + clothesBottom()) + " is soaked in front. Milk dribbles from your teats almost constantly, too much to retain. The abundant supply seems to be overwhelming the lack of demand..."), false); if (udderEngorgementLevel < 1){ udderChange(1); }; udderEngorgementLevel++; udderChange(1); } else { if (((((udderEngorgement + (udderLactation * time)) > 48)) && ((udderEngorgement <= 48)))){ outputMainText((("\r\rYour " + clothesBottom()) + " feels moist beneath your teats. Your udder feels slightly swollen as milk leaks out. A bit engorged, it's a sign it should probably be attended to."), false); udderEngorgementLevel++; udderChange(1); }; }; }; udderEngorgement = (udderEngorgement + (udderLactation * time)); }; if (lactation > 0){ nipplePlay = (nipplePlay - time); }; if (udderLactation > 0){ udderPlay = (udderPlay - time); }; if ((((lactation > 0)) && ((nipplePlay < -10)))){ lactChange(1, -1); if (lactation == 0){ outputMainText(" It seems as though the mammary glands in your breasts have adapted to the lack of demand.", false); }; nipplePlay = 0; }; if ((((((udderLactation > 0)) && ((udderPlay < -10)))) && ((udders == true)))){ lactChange(2, -1); if (udderLactation == 0){ outputMainText(" It seems as though the mammary glands in your udder have adapted to the lack of demand.", false); }; udderPlay = 0; }; exhaustion = (exhaustion + time); if ((((exhaustion > 20)) && ((exhaustion <= 32)))){ outputMainText("\r\rYour body is getting tired, affecting your abilities to do things. Sleep is sounding like a nice idea...", false); if (exhaustionPenalty == 0){ exhaustionPenalty = 1; stats(-3, -3, 0, 0); }; } else { if ((((exhaustion > 32)) && ((exhaustion <= 44)))){ outputMainText("\r\rExhaustion is creeping over you, making any task seem tedious. Your wits are a lot less witty and your muscles are fatigued.", false); if ((((exhaustionPenalty == 1)) || ((exhaustionPenalty == 0)))){ exhaustionPenalty = 2; stats(-8, -8, 0, 0); }; } else { if (exhaustion > 44){ currentState = 1; } else { if (exhaustionPenalty == 1){ exhaustionPenalty = 0; stats(3, 3, 0, 0); }; if (exhaustionPenalty == 2){ exhaustionPenalty = 0; stats(11, 11, 0, 0); }; }; }; }; vagBellyChange(0, 0); if (((((((((blueBalls + time) > 84)) && ((blueBalls <= 84)))) && ((showBalls == true)))) && ((balls > 0)))){ outputMainText((((("\r\rYour " + ballDesc()) + " balls feel swollen and heavy within your ") + clothesBottom()) + ". The need to spill your seed makes you a little aroused."), false); doLust(Math.ceil((ballSize / 2))); }; blueBalls = (blueBalls + time); hrs = 0; if (bodyOil > 0){ if ((bodyOil - time) <= 0){ outputMainText((("\r\rThe body oil finally dries off, leaving you " + skinDesc()) + " not looking quite as shiny and attractive as before."), false); enticeMod = (enticeMod - 5); bodyOil = 0; } else { bodyOil = (bodyOil - 5); }; }; if (((((masoPot - time) <= 0)) && ((masoPot > 0)))){ outputMainText("\r\rYou shiver a little as your nerves seem to feel more... normal. The effects of the Masochism Potion have apparently worn off, so you might want to be slightly more cautious once again.", false); masoPot = 0; } else { if (masoPot > 0){ masoPot = (masoPot - time); }; }; if (((((sMasoPot - time) <= 0)) && ((sMasoPot > 0)))){ outputMainText("\r\rYou shiver a lot as your nerves seem to feel more... normal. The effects of the Superior Masochism Potion have apparently worn off, so you might want to be much more cautious once again.", false); sMasoPot = 0; } else { if (sMasoPot > 0){ sMasoPot = (sMasoPot - time); }; }; if (((((babyFree - time) <= 0)) && ((babyFree > 0)))){ outputMainText("\r\rYour belly groans as you feel your fertility return to you, urging you to remain cautious of becoming pregnant again. It seems as though you're no longer as baby free as before.", false); if (vagTotal < 1){ outputMainText(" Not that any of that means anything to you, considering you don't even have a womb to become pregnant in the first place.", false); }; babyFree = 0; } else { if (babyFree > 0){ babyFree = (babyFree - time); }; }; if (charmTime > 0){ if ((charmTime - time) <= 0){ outputMainText("\r\rYour charming effect wears off, making you not so alluring as before.", false); charmTime = 0; enticeMod = (enticeMod - 15); } else { charmTime = (charmTime - time); }; }; if (pheromone > 0){ if ((pheromone - time) <= 0){ outputMainText("\r\rThe scent of pheromones finally fades away, leaving you not so unexpectedly desireable to nearly everything.", false); pheromone = 0; enticeMod = (enticeMod - 45); stats(0, 0, -3, 0); } else { pheromone = (pheromone - time); }; }; if (eggceleratorTime > 0){ if ((eggceleratorTime - time) <= 0){ outputMainText("\r\rYour belly feels calmer as the eggcelerator wears off, allowing your womb to relax a little.", false); eggceleratorTime = 0; eggRate = (eggRate - eggceleratorDose); eggceleratorDose = 0; } else { eggceleratorTime = (eggceleratorTime - time); }; }; if (currentText == "Afterwards..."){ outputMainText("", true); doProcess(); } else { doEnd(); }; } public function stashID(slotNumber:int):int{ var tempNum:Number; tempNum = 0; if (currentStash == 1){ tempNum = stashArray1[slotNumber]; }; if (currentStash == 2){ tempNum = stashArray2[slotNumber]; }; if (currentStash == 3){ tempNum = stashArray3[slotNumber]; }; return (tempNum); } public function hairstyleID(choice:int):int{ var tempNum:int; tempNum = 0; if (currentZone == 1){ if (choice == 1){ tempNum = 1; }; if (choice == 2){ tempNum = 4; }; if (choice == 3){ tempNum = 8; }; if (choice == 5){ tempNum = 2; }; if (choice == 6){ tempNum = 3; }; if (choice == 7){ tempNum = 12; }; if (choice == 9){ tempNum = 14; }; if (choice == 10){ Choice10.visible = false; }; if (choice == 11){ tempNum = 0; }; }; if (currentZone == 2){ if (choice == 1){ tempNum = 1; }; if (choice == 2){ tempNum = 4; }; if (choice == 3){ tempNum = 8; }; if (choice == 5){ tempNum = 3; }; if (choice == 6){ tempNum = 10; }; if (choice == 7){ tempNum = 5; }; if (choice == 9){ tempNum = 6; }; if (choice == 10){ Choice10.visible = false; }; if (choice == 11){ tempNum = 0; }; }; if (currentZone == 3){ if (choice == 1){ tempNum = 1; }; if (choice == 2){ tempNum = 4; }; if (choice == 3){ tempNum = 8; }; if (choice == 5){ tempNum = 6; }; if (choice == 6){ tempNum = 11; }; if (choice == 7){ tempNum = 12; }; if (choice == 9){ tempNum = 13; }; if (choice == 10){ Choice10.visible = false; }; if (choice == 11){ tempNum = 0; }; }; if (currentZone == 4){ if (choice == 1){ tempNum = 1; }; if (choice == 2){ tempNum = 4; }; if (choice == 3){ tempNum = 8; }; if (choice == 5){ tempNum = 2; }; if (choice == 6){ tempNum = 9; }; if (choice == 7){ tempNum = 7; }; if (choice == 9){ tempNum = 13; }; if (choice == 10){ Choice10.visible = false; }; if (choice == 11){ tempNum = 0; }; }; if (currentZone == 6){ if (choice == 1){ tempNum = 2; }; if (choice == 2){ tempNum = 3; }; if (choice == 3){ tempNum = 4; }; if (choice == 5){ tempNum = 9; }; if (choice == 6){ tempNum = 10; }; if (choice == 7){ tempNum = 11; }; if (choice == 9){ tempNum = 12; }; if (choice == 10){ Choice10.visible = false; }; if (choice == 11){ tempNum = 0; }; }; return (tempNum); } public function appearance(e:MouseEvent):void{ appearanceGo(); } public function appearanceGo():void{ outputMainText((((((((((((("You began your journey as a " + raceName()) + ".\r\r") + Math.floor((tallness / 12))) + " feet and ") + (tallness - (Math.floor((tallness / 12)) * 12))) + " inches tall, you wield ") + hipDesc()) + " hips and a ") + buttDesc()) + " butt on an overall ") + bodyDesc()) + " figure."), true); if (hair > 0){ outputMainText(((((" With " + hairC()) + "") + hairDesc()) + ""), false); }; if (hairstyleLength(hair)){ outputMainText(((" " + hairL()) + ""), false); }; if (hair > 0){ outputMainText(((((", you look much like a" + genName()) + " ") + domName()) + ""), false); } else { outputMainText(((((" You look much like a" + genName()) + " ") + domName()) + ""), false); }; if (dominant == 1){ outputMainText(", your face round with a relatively small nose", false); }; if (dominant == 2){ outputMainText(", your face slightly longer than normal with a sort of muzzle", false); }; if (dominant == 3){ outputMainText(", your face narrowing down a muzzle with sharp teeth", false); }; if (dominant == 4){ outputMainText(", your face somewhat flat with a small button nose", false); }; if (dominant == 5){ outputMainText(", your face slightly longer than normal with a sort of muzzle", false); }; if (dominant == 6){ outputMainText(", your face slightly longer than normal, streching down a triangular nose", false); }; if (dominant == 7){ outputMainText(", your face somewhat flat with a button nose and twitchy whiskers, your two front teeth a bit longer than the rest", false); }; if (tail > 1){ outputMainText(((" and a " + tailDesc()) + " tail swishing upon your backside"), false); }; outputMainText(((". " + earDesc()) + "."), false); if (checkItem(234)){ outputMainText(" Large, multi-pointed, slightly fuzzy antlers grow out from atop your head, feeling slightly heavy but perfectly melded to your skull so you can easily lift them.", false); }; if (checkItem(101)){ outputMainText(" Soft padding protects the palms of your hands, making them look much like paws, your nails being sharp claws.", false); }; if (checkItem(102)){ outputMainText(" Keratin surrounds your toes like hooves, your ankle elongated and preventing you from standing on your heel, making you walk digitigrade with a clap against the ground every step.", false); }; if (checkItem(234)){ outputMainText(((((((" Your " + buttDesc()) + " butt also looks a bit tighter for its size with the ") + skinDesc()) + " around it a lighter color than the rest, acting like a bullseye to your nethers. Below, the bone structure of your legs is also fairly lithe, causing you to step with a graceful swagger and wave your ") + hipDesc()) + " hips erotically with every footfall."), false); }; outputMainText("\r\rYou are currently wearing a ", false); if (attireTop != attireBot){ outputMainText((((((("" + clothesTop()) + " and ") + clothesBottom()) + ", covering your ") + skinDesc()) + "."), false); } else { outputMainText((((clothesTop() + ", covering your ") + skinDesc()) + "."), false); }; if ((pregnancyTime + vagBellyMod) > 36){ outputMainText(((((" Your " + clothesTop()) + " bulges from your ") + bellyDesc()) + " belly, obviously swollen for some reason or another."), false); }; if (breastSize > 0){ if (boobTotal == 2){ outputMainText(((((((("\r\rUpon your chest heaves " + boobTotal) + " ") + boobDesc()) + " breasts. Your bust measures ") + decGet((breastSize * 0.5), 1)) + " inches in circumference beyond that of your chest, with ") + nipDesc()), false); }; if (boobTotal == 4){ outputMainText(((((((("\r\rUpon your chest heaves " + boobTotal) + " ") + boobDesc()) + " breasts; two pairs of equal size, one close below the other. Your dual busts each measure ") + decGet((breastSize * 0.5), 1)) + " inches in circumference beyond that of your chest, with ") + nipDesc()), false); }; if (boobTotal == 6){ outputMainText(((((((((((("\r\rUpon your chest and down to your belly heaves " + boobTotal) + " ") + boobDesc()) + " breasts; three pairs diminishing in size the lower they go. Your bust measures ") + decGet((breastSize * 0.5), 1)) + " inches in circumference beyond that of your chest, the next pair measuring ") + decGet((breastSize * 0.25), 2)) + " inches and the next measuring ") + decGet((breastSize * 0.15), 2)) + " inches; each with ") + nipDesc()), false); }; if (dominant == 5){ outputMainText(" teats", false); }; if (dominant != 5){ outputMainText(" nipples", false); }; if (lust <= 30){ outputMainText(((" softly bulging " + decGet((nippleSize * 0.1), 1)) + " inches beyond that."), false); }; if ((((lust > 30)) && ((lust <= 70)))){ outputMainText(((" stiffly standing " + decGet((nippleSize * 0.2), 1)) + " inches beyond that."), false); }; if (lust > 70){ outputMainText(((" achingly hard and reaching " + decGet((nippleSize * 0.25), 1)) + " inches beyond that."), false); }; if (lactation > 0){ if (milkEngorgementLevel == 2){ outputMainText(((" A few drops of milk dangle from each nipple as you pull your " + clothesTop()) + " from your engorged breasts to inspect yourself."), false); }; if (milkEngorgementLevel == 3){ outputMainText(((((" Milk sprays from each of your nipples as you pull your " + clothesTop()) + " from your heavily engorged breasts to inspect yourself, and continue to dribble down your belly and soaking into your ") + clothesBottom()) + "."), false); }; }; }; if (udders == true){ outputMainText((((((("\r\rJust below your belly hangs a " + udderDesc()) + " udder with 4 ") + teatDesc()) + " teats, each ") + decGet((teatSize * 0.2), 1)) + " inches long"), false); if (lactation > 0){ if (udderEngorgementLevel == 2){ outputMainText(" and dribbling milk from your engorgement", false); }; if (udderEngorgementLevel == 3){ outputMainText(" and practically spraying milk onto the ground before you from your excessive engorgment", false); }; }; outputMainText(".", false); }; if (cockTotal > 0){ outputMainText((((((("\r\rAbove your groin rests " + cockTotal) + " ") + cockDesc()) + " wang") + plural(1)) + "."), false); if (lust <= 30){ if (humanCocks > 0){ outputMainText(((((((" " + humanCocks) + " dangle") + plural(3)) + " flaccidly from your groin, reaching ") + decGet(((cockSize * cockSizeMod) * 0.25), 2)) + " inches down, with smooth skin and a mushroom-like glans, just like a human's."), false); }; if (horseCocks > 0){ outputMainText(((((((" " + horseCocks) + " hide") + plural(3)) + " within a fuzzy sheath that protrudes from your groin, around ") + decGet(((cockSize * cockSizeMod) / 12), 1)) + " inches in thickness."), false); }; if ((((((wolfCocks > 0)) || ((catCocks > 0)))) || ((rabbitCocks > 0)))){ outputMainText(((((((" " + ((wolfCocks + catCocks) + rabbitCocks)) + " hide") + plural(3)) + " within a fuzzy sheath that protrudes from your groin, around ") + decGet(((cockSize * cockSizeMod) / 16), 1)) + " inches in thickness."), false); }; if (lizardCocks > 0){ outputMainText(((((" " + lizardCocks) + " hide") + plural(3)) + " in a slit, flush against your body."), false); }; if ((((cockMoist > 9)) && ((cockMoist <= 12)))){ outputMainText(((" Drops of pre slowly bead at the tip of your cock" + plural(1)) + ", "), false); if ((((((((horseCocks > 0)) || ((wolfCocks > 0)))) || ((catCocks > 0)))) || ((rabbitCocks > 0)))){ outputMainText(((" pooling within your sheath" + plural(1)) + ","), false); }; outputMainText(((" running down your thighs as it continually blotches your " + clothesBottom()) + ", even though you're barely aroused at all. The slime is enough to slip yourself into a pussy smaller than you are long, at least."), false); }; }; if ((((lust > 30)) && ((lust <= 70)))){ if (humanCocks > 0){ outputMainText(((((((" " + humanCocks) + " stand") + plural(3)) + " erect, reaching ") + decGet(((cockSize * cockSizeMod) * 0.5), 1)) + " inches up, with smooth skin and a mushroom-like glans, just like a human's."), false); }; if (horseCocks > 0){ outputMainText(((((((((" " + horseCocks) + " droop") + plural(3)) + " out of a ") + decGet(((cockSize * cockSizeMod) / 12), 1)) + "-inch thick smooth sheath, reaching ") + decGet(((cockSize * cockSizeMod) * 0.5), 1)) + " inches down your thigh with a ring of prepuce halfway down its length and a flat head at the end, just like a horse's."), false); }; if (wolfCocks > 0){ outputMainText(((((((((((" " + wolfCocks) + " poke") + plural(3)) + " out of a ") + decGet(((cockSize * cockSizeMod) / 16), 1)) + "-inch thick fuzzy sheath, red and hard, smooth and covered in veins with a narrowing tip") + plural(1)) + ", standing ") + decGet(((cockSize * cockSizeMod) * 0.5), 1)) + " inches high, just like a wolf's."), false); }; if (catCocks > 0){ outputMainText(((((((((((" " + catCocks) + " poke") + plural(3)) + " out of a ") + decGet(((cockSize * cockSizeMod) / 16), 1)) + "-inch thick fuzzy sheath, pink and soft, with tender barbs near the narrowing tip") + plural(1)) + ", standing ") + decGet(((cockSize * cockSizeMod) * 0.5), 1)) + " inches high, just like a cat's."), false); }; if (lizardCocks > 0){ outputMainText(((((((" " + lizardCocks) + " poke") + plural(3)) + " through the slit, stretching it wide as the purple flesh pulses with the ribbing along the top slightly stiff and the bulbous head feeling squishy to the touch, the narrow tip reaching ") + decGet(((cockSize * cockSizeMod) * 0.5), 1)) + " inches high, probably like a reptile's."), false); }; if (rabbitCocks > 0){ outputMainText(((((((((((" " + rabbitCocks) + " poke") + plural(3)) + " out of a ") + decGet(((cockSize * cockSizeMod) / 16), 1)) + "-inch thick fuzzy sheath, red and pointy, gently narrowing to their tip") + plural(1)) + ", somewhat like a carrot, standing ") + decGet(((cockSize * cockSizeMod) * 0.5), 1)) + " inches high, just like a rabbit's."), false); }; if (knot == true){ outputMainText(((((((" Your cock" + plural(1)) + " swell") + plural(3)) + " a little near the base, preparing for a chance for the knot") + plural(1)) + " to expand."), false); }; if ((((cockMoist > 3)) && ((cockMoist <= 9)))){ outputMainText(((" Drops of pre slowly bead at the tip of your cock" + plural(1)) + ", "), false); if ((((((horseCocks > 0)) || ((wolfCocks > 0)))) || ((catCocks > 0)))){ outputMainText(((" pooling within your sheath" + plural(1)) + ","), false); }; outputMainText(((" running down your thighs as it blotches your " + clothesBottom()) + ". The slime is enough to slip yourself into a pussy smaller than you are long, at least."), false); }; if ((((cockMoist > 9)) && ((cockMoist <= 12)))){ outputMainText(((((((" Pre steadily drips from your groin, making a large wet spot on your " + clothesBottom()) + ", looking more like you had peed yourself from all the seminal fluid. Fortunately, you could probably slip ") + oneYour(1)) + " cock") + plural(1)) + " into a pussy smaller than you are, thanks to all the lubrication."), false); }; }; if (lust > 70){ if (humanCocks > 0){ outputMainText(((((((" " + humanCocks) + " stand") + plural(3)) + " erect, reaching ") + decGet(((cockSize * cockSizeMod) * 0.5), 1)) + " inches up, throbbing strongly with smooth skin and a mushroom-like glans that is nearly purple in color, just like a human's."), false); }; if (horseCocks > 0){ outputMainText(((((((" " + horseCocks) + " twitches out of a ") + decGet(((cockSize * cockSizeMod) / 12), 1)) + "-inch thick smooth sheath, trying to stand ") + decGet(((cockSize * cockSizeMod) * 0.5), 1)) + " inches from your body with a ring of prepuce halfway down its length and a flaring flat head at the end, just like a horse's."), false); }; if (wolfCocks > 0){ outputMainText(((((((((((" " + wolfCocks) + " throb") + plural(3)) + " out of a ") + decGet(((cockSize * cockSizeMod) / 16), 1)) + "-inch thick fuzzy sheath, red and hard, smooth and covered in veins that almost look purple, they're so full of blood, with a narrowing tip") + plural(1)) + ", standing ") + decGet(((cockSize * cockSizeMod) * 0.5), 1)) + " inches high, just like a wolf's."), false); }; if (catCocks > 0){ outputMainText(((((((((((" " + catCocks) + " stiffly stand") + plural(3)) + " out of a ") + decGet(((cockSize * cockSizeMod) / 16), 1)) + "-inch thick fuzzy sheath, pink and nearly hard, with tender barbs bristling out near the narrowing tip") + plural(1)) + ", standing ") + decGet(((cockSize * cockSizeMod) * 0.5), 1)) + " inches high, just like a cat's."), false); }; if (lizardCocks > 0){ outputMainText(((((((" " + lizardCocks) + " harden") + plural(3)) + " through the slit, stretching it wide as the purple flesh throbs with the ribbing along the top nearly like actual bone and the bulbous head feeling quite swollen, the narrow tip reaching ") + decGet(((cockSize * cockSizeMod) * 0.5), 1)) + " inches high, probably like a reptile's."), false); }; if (rabbitCocks > 0){ outputMainText(((((((((" " + rabbitCocks) + " stiffly stand") + plural(3)) + " out of a ") + decGet(((cockSize * cockSizeMod) / 16), 1)) + "-inch thick fuzzy sheath, red and throbbing, almost breaking the conical shape with the pulsing, and standing ") + decGet(((cockSize * cockSizeMod) * 0.5), 1)) + " inches high, just like a rabbit's."), false); }; if (knot == true){ outputMainText(((((((((((((" Your cock" + plural(1)) + " bulge") + plural(3)) + " tremendously at ") + plural(5)) + " base") + plural(1)) + ", the knot") + plural(1)) + " completely expecting to come at any moment and nearly ") + decGet(((cockSize * cockSizeMod) / 4), 1)) + " inches thick."), false); }; if ((((cockMoist > 0)) && ((cockMoist <= 3)))){ outputMainText(((" Drops of pre slowly bead at the tip of your cock" + plural(1)) + ", "), false); if ((((((horseCocks > 0)) || ((wolfCocks > 0)))) || ((catCocks > 0)))){ outputMainText(((" pooling within your sheath" + plural(1)) + ","), false); }; outputMainText(((" running down your thighs as it blotches your " + clothesBottom()) + ". The slime is enough to slip yourself into a pussy smaller than you are long, at least."), false); }; if ((((cockMoist > 3)) && ((cockMoist <= 9)))){ outputMainText(((((((" Pre steadily drips from your groin, making a large wet spot on your " + clothesBottom()) + ", looking more like you had peed yourself from all the seminal fluid. Fortunately, you could probably slip ") + oneYour(1)) + " cock") + plural(1)) + " into a pussy smaller than you are, thanks to all the lubrication."), false); }; if ((((cockMoist > 9)) && ((cockMoist <= 12)))){ outputMainText(((((((" Your " + clothesBottom()) + " feels completely swamped as pre flies from your lower half as you move about. Standing still for too long, you quickly form a small puddle of the slick stuff. You could probably stuff ") + oneYour(1)) + " cock") + plural(1)) + " into a pussy half your size without any difficulty, you're so slimy!"), false); }; }; }; if ((((showBalls == true)) && ((balls > 0)))){ outputMainText((((((((("\r\rBeneath your cock" + plural(1)) + " swing") + plural(3)) + " a scrotum filled with ") + balls) + " ") + ballDesc()) + " testicles."), false); if ((((blueBalls > 36)) && ((blueBalls <= 84)))){ outputMainText(" They groan and squirm, full of hot cum just waiting to blow.", false); }; if (blueBalls > 84){ outputMainText(" They groan so strongly you shudder slightly. They're so full of cum that they ache a bit, desperately wanting to come.", false); }; }; if (vagTotal > 0){ outputMainText((((((((("\r\rBetween your legs nestles " + vagTotal) + " ") + vulvaDesc()) + " pair") + plural(2)) + " of feminine nether-lips, about ") + decGet(((vagSize * vagSizeMod) * 0.5), 1)) + " inches deep, when aroused."), false); if (((vagSize * vagSizeMod) * vagTotal) > (tallness / 2)){ outputMainText(" So deep, in fact, that your belly bulges more because of the excess vaginal flesh.", false); }; if (lust <= 30){ if (clitSize > (vulvaSize * 3)){ outputMainText(((((((((((" Although you're hardly aroused, your " + clitDesc()) + " clit") + plural(2)) + " dangle") + plural(4)) + " softly from the front of your slit") + plural(2)) + ", measuring nearly ") + decGet((clitSize * 0.1), 1)) + " inches in length."), false); }; if ((((vagMoist > 9)) && ((vagMoist <= 12)))){ outputMainText(((((" Lubrication makes your cunt" + plural(2)) + " slick, the lips slipping past each other as you walk, while the slime continually blotches the crotch of your ") + clothesBottom()) + ", whether you're horny or not. Fortunately, you could take a cock slightly bigger than you are deep, thanks to the slickness."), false); }; }; if ((((lust > 30)) && ((lust <= 70)))){ outputMainText(((((((((((((((((" Your " + clitDesc()) + " clit") + plural(2)) + " swell") + plural(4)) + " from the hood") + plural(2)) + " at the front of your slit") + plural(2)) + ", reaching ") + decGet((clitSize * 0.2), 1)) + " inches in length and making you walk awkwardly as the sensitive button") + plural(2)) + " rub") + plural(4)) + " between your thighs."), false); if ((((vagMoist > 3)) && ((vagMoist <= 9)))){ outputMainText(((((" Lubrication makes your cunt" + plural(2)) + " slick, the lips slipping past each other as you walk, while the slime continually blotches the crotch of your ") + clothesBottom()) + ", whether you're horny or not. Fortunately, you could take a cock slightly bigger than you are deep, thanks to the slickness."), false); }; if ((((vagMoist > 9)) && ((vagMoist <= 12)))){ outputMainText(((((" So much feminine honey drips from your cunt" + plural(2)) + " that it looks like you have peed in your ") + clothesBottom()) + " and webs of slime form sheets between your legs. But, with all that lubrication you could take a cock around one and a half times long as you are deep."), false); }; }; if (lust > 70){ outputMainText(((((((((((((((" Your " + clitDesc()) + " clit") + plural(2)) + " swell") + plural(4)) + " tremendously from the hood") + plural(2)) + " at the front of your slit") + plural(2)) + ", reaching ") + decGet((clitSize * 0.25), 2)) + " inches in length. You walk bow-legged half the time as squeezing the clit") + plural(2)) + " and swollen lips between your thighs is often too much, making you hunger to hump something."), false); if ((((vagMoist > 0)) && ((vagMoist <= 3)))){ outputMainText(((((" Lubrication makes your cunt" + plural(2)) + " slick, the lips slipping past each other as you walk, while the slime continually blotches the crotch of your ") + clothesBottom()) + ", whether you're horny or not. Fortunately, you could take a cock slightly bigger than you are deep, thanks to the slickness."), false); }; if ((((vagMoist > 3)) && ((vagMoist <= 9)))){ outputMainText(((((" So much feminine honey drips from your cunt" + plural(2)) + " that it looks like you have peed in your ") + clothesBottom()) + " and webs of slime form sheets between your legs. But, with all that lubrication you could take a cock around one and a half times long as you are deep."), false); }; if ((((vagMoist > 9)) && ((vagMoist <= 12)))){ outputMainText(((" A slow waterfall of feminine honey drips from your crotch, your " + clothesBottom()) + " completely soaked. If you stand for too long, you worry your feet will slip in the puddle you quickly make beneath you. It's so much that you could probably take a cock twice as large as you are deep!"), false); }; }; if ((((heat > 0)) && ((heatTime < 0)))){ outputMainText(" Your nether-lips are also puffier and redder than usual, heat emanating from your loins, an oven just waiting to cook something...", false); }; }; doEnd(); } public function loadGo():void{ var so:SharedObject; so = SharedObject.getLocal("NiminFetishFantasy"); bc(); trace(("pre pre load: " + so.data.itemSave10)); appearanceText.visible = false; appearanceBox.visible = false; viewButtonOutline(1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1); viewButtonText(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1); if (so.data.saveGame1){ buttonWrite(1, ((("D:" + so.data.saveGame1[9]) + " H:") + so.data.saveGame1[10])); Choice1.visible = true; }; if (so.data.saveGame2){ buttonWrite(2, ((("D:" + so.data.saveGame2[9]) + " H:") + so.data.saveGame2[10])); Choice2.visible = true; }; if (so.data.saveGame3){ buttonWrite(3, ((("D:" + so.data.saveGame3[9]) + " H:") + so.data.saveGame3[10])); Choice3.visible = true; }; if (so.data.saveGame5){ buttonWrite(5, ((("D:" + so.data.saveGame5[9]) + " H:") + so.data.saveGame5[10])); Choice5.visible = true; }; if (so.data.saveGame6){ buttonWrite(6, ((("D:" + so.data.saveGame6[9]) + " H:") + so.data.saveGame6[10])); Choice6.visible = true; }; if (so.data.saveGame7){ buttonWrite(7, ((("D:" + so.data.saveGame7[9]) + " H:") + so.data.saveGame7[10])); Choice7.visible = true; }; if (so.data.saveGame9){ buttonWrite(9, ((("D:" + so.data.saveGame9[9]) + " H:") + so.data.saveGame9[10])); Choice9.visible = true; }; if (so.data.saveGame10){ buttonWrite(10, ((("D:" + so.data.saveGame10[9]) + " H:") + so.data.saveGame10[10])); Choice10.visible = true; }; if (so.data.saveGame11){ buttonWrite(11, ((("D:" + so.data.saveGame11[9]) + " H:") + so.data.saveGame11[10])); Choice11.visible = true; }; buttonWrite(12, "Return"); outputMainText("Click on a load slot to load the game that was saved to that slot.\r\rOtherwise, click Return to go back to what you were doing (unless you weren't doing anything yet, in which case click New Game).", true); doListen = function ():void{ var slot:int; if (buttonChoice != 12){ slot = buttonChoice; if ((((buttonChoice == 1)) && (so.data.saveGame1))){ outputMainText((((("Day: " + so.data.saveGame1[9]) + ", Hour: ") + so.data.saveGame1[10]) + ":00"), true); }; if ((((buttonChoice == 2)) && (so.data.saveGame2))){ outputMainText((((("Day: " + so.data.saveGame2[9]) + ", Hour: ") + so.data.saveGame2[10]) + ":00"), true); }; if ((((buttonChoice == 3)) && (so.data.saveGame3))){ outputMainText((((("Day: " + so.data.saveGame3[9]) + ", Hour: ") + so.data.saveGame3[10]) + ":00"), true); }; if ((((buttonChoice == 5)) && (so.data.saveGame5))){ outputMainText((((("Day: " + so.data.saveGame5[9]) + ", Hour: ") + so.data.saveGame5[10]) + ":00"), true); }; if ((((buttonChoice == 6)) && (so.data.saveGame6))){ outputMainText((((("Day: " + so.data.saveGame6[9]) + ", Hour: ") + so.data.saveGame6[10]) + ":00"), true); }; if ((((buttonChoice == 7)) && (so.data.saveGame7))){ outputMainText((((("Day: " + so.data.saveGame7[9]) + ", Hour: ") + so.data.saveGame7[10]) + ":00"), true); }; if ((((buttonChoice == 9)) && (so.data.saveGame9))){ outputMainText((((("Day: " + so.data.saveGame9[9]) + ", Hour: ") + so.data.saveGame9[10]) + ":00"), true); }; if ((((buttonChoice == 10)) && (so.data.saveGame10))){ outputMainText((((("Day: " + so.data.saveGame10[9]) + ", Hour: ") + so.data.saveGame10[10]) + ":00"), true); }; if ((((buttonChoice == 11)) && (so.data.saveGame11))){ outputMainText((((("Day: " + so.data.saveGame11[9]) + ", Hour: ") + so.data.saveGame11[10]) + ":00"), true); }; outputMainText((("\r\rAre you sure you want to load slot " + buttonChoice) + "?\r\rYou will lose any unsaved data from the current game."), true); buttonConfirm(); doListen = function ():void{ if (buttonChoice == 6){ doLoad(slot); regionChange(currentZone); doReturn(); } else { loadGo(); }; }; }; if (buttonChoice == 12){ doReturn(); }; }; } function frame1(){ i = 0; buttonChoice = 0; currentText = ""; pregTempInt = 0; pregTempBool = false; currentState = 0; inBag = false; inShop = false; currentZone = 0; str = 0; ment = 0; lib = 0; sen = 0; HP = 0; lust = 0; coin = 0; day = 0; hour = 8; hrs = 0; itemGainArray = []; human = 0; horse = 0; wolf = 0; cat = 0; cow = 0; lizard = 0; rabbit = 0; SexP = 0; levelUP = 0; level = 0; runMod = 0; rapeMod = 0; cumMod = 1; cockSizeMod = 1; vagSizeMod = 1; vagElastic = 1; milkMod = 0; carryMod = 0; vagBellyMod = 0; pregChanceMod = 0; extraPregChance = 0; pregTimeMod = 0; enticeMod = 0; milkHPMod = 0; changeMod = 1; HPMod = 0; SexPMod = 1; minLust = 0; enemyID = 0; eHP = 0; eMaxHP = 0; eStr = 0; eMenta = 0; eSen = 0; eLib = 0; eLust = 0; eGen = 0; ePref = 0; eCoin = 0; eSexP = 0; eItem = 0; gender = 0; race = 0; body = 0; dominant = 0; hips = 0; butt = 0; tallness = 0; skinType = 0; tail = 0; ears = 0; hair = 0; hairLength = 0; hairColor = 0; cockTotal = 0; humanCocks = 0; horseCocks = 0; wolfCocks = 0; catCocks = 0; lizardCocks = 0; rabbitCocks = 0; cockSize = 0; cockMoist = 0; balls = 0; ballSize = 0; showBalls = true; knot = false; breastSize = 0; boobTotal = 0; nippleSize = 1; udders = false; udderSize = 0; teatSize = 0; clitSize = 0; vagTotal = 0; vagSize = 0; vagMoist = 0; vulvaSize = 0; attireTop = 1; attireBot = 2; weapon = 10; pregArray = []; pregStatus = 0; pregnancyTime = 0; pregRate = 1; eggLaying = 0; eggMaxTime = 0; eggTime = 0; eggRate = 0; exhaustion = 0; exhaustionPenalty = 0; milkEngorgement = 0; milkEngorgementLevel = 0; udderEngorgement = 0; udderEngorgementLevel = 0; heat = 0; heatTime = 0; heatMaxTime = 0; lactation = 0; udderLactation = 0; nipplePlay = 0; udderPlay = 0; blueBalls = 0; teatPump = 0; nipPump = 0; cockPump = 0; clitPump = 0; vulvaPump = 0; masoPot = 0; sMasoPot = 0; babyFree = 0; charmTime = 0; pheromone = 0; eggceleratorTime = 0; eggceleratorDose = 0; bodyOil = 0; humanAffinity = 0; horseAffinity = 0; wolfAffinity = 0; catAffinity = 0; cowAffinity = 0; lizardAffinity = 0; rabbitAffinity = 0; fourBoobAffinity = 0; lilaRep = 0; lilaVulva = 0; lilaMilk = 0; lilaPreg = -2; malonRep = 0; malonPreg = 0; malonChildren = 0; mistressRep = 0; jamieRep = 0; jamiePrev = 0; jamiePreg = 0; silRep = 0; silPreg = 0; silRate = 0; silLay = 10; silTied = false; silGrowthTime = 0; foundSoftlik = false; foundFirmshaft = false; foundTieden = false; foundSizCalit = false; foundOviasis = false; knowPheromone = false; babyFactLevel = 0; bodyBuildLevel = 0; hyperHappyLevel = 0; alchemistLevel = 0; currentDayCare = 0; humanChildren = 0; equanChildren = 0; lupanChildren = 0; felinChildren = 0; cowChildren = 0; lizanEggs = 0; lizanChildren = 0; bunnionChildren = 0; wolfPupChildren = 0; itemArray1 = ["1", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; itemArray2 = ["2", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; itemArray3 = ["3", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; currentItems = 1; stackArray1 = ["1", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; stackArray2 = ["2", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; stackArray3 = ["3", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; stashArray1 = ["1", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; stashArray2 = ["2", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; stashArray3 = ["3", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; currentStash = 1; stashStackArray1 = ["1", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; stashStackArray2 = ["2", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; stashStackArray3 = ["3", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; hideUpDown(); outputWindow.htmlText = "Nimin: Fetish Fantasy\r v0.92ac\r\rClick 'New Game' to begin a new game.\r\rCreated by: --Xadera\r http://www.furaffinity.net/user/xadera/\r\rOriginal concept by: --Fenoxo\r http://www.furaffinity.net/user/fenoxo/\r\rSpecial thanks to SumigakiFox on FA (owner of Silandrias)\r\rProstitution scene editors (thanks for the work!): Torakazu and omegaokami on FA\r\rThanks to the following for prostitution scenes:\r --Buncubus, BantinNysam, TheAbyssalWatcher, mike12345, V, grottokraft, Ludoergosum, perrothetraveler, reikonova, shockblock99, Kidou, bunnybunbun\r\rThanks to the following for early ideas:\r --tkn156, Shockblock99, Shello-Lakoda, LordNue"; stage.addEventListener(KeyboardEvent.KEY_DOWN, hotKeys); invertColors.addEventListener(MouseEvent.CLICK, invertC); newGame.addEventListener(MouseEvent.CLICK, newGameStart); Choice1.addEventListener(MouseEvent.CLICK, buttonEvent1); Choice2.addEventListener(MouseEvent.CLICK, buttonEvent2); Choice3.addEventListener(MouseEvent.CLICK, buttonEvent3); Choice4.addEventListener(MouseEvent.CLICK, buttonEvent4); Choice5.addEventListener(MouseEvent.CLICK, buttonEvent5); Choice6.addEventListener(MouseEvent.CLICK, buttonEvent6); Choice7.addEventListener(MouseEvent.CLICK, buttonEvent7); Choice8.addEventListener(MouseEvent.CLICK, buttonEvent8); Choice9.addEventListener(MouseEvent.CLICK, buttonEvent9); Choice10.addEventListener(MouseEvent.CLICK, buttonEvent10); Choice11.addEventListener(MouseEvent.CLICK, buttonEvent11); Choice12.addEventListener(MouseEvent.CLICK, buttonEvent12); appearanceText.addEventListener(MouseEvent.CLICK, appearance); saveGame.addEventListener(MouseEvent.CLICK, saveG); loadGame.addEventListener(MouseEvent.CLICK, loadG); statPane.visible = false; statValuePane.visible = false; levelPane.visible = false; levelValuePane.visible = false; currentRegion.visible = false; region.visible = false; saveGame.visible = false; saveGameOutline.visible = false; DayPane.visible = false; DayValuePane.visible = false; clockPane.visible = false; appearanceText.visible = false; appearanceBox.visible = false; bgC.visible = false; pageNum.visible = false; pageNum.rotation = (pageNum.rotation + 90); viewButtonText(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); viewButtonOutline(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); hideAmount(); } public function doGetRaped():void{ if (enemyID == 1){ if (gender == 1){ outputMainText("The test enemy pokes its cock in your butt and cums.", true); }; if (gender == 2){ outputMainText("The test enemy pokes its cock in your vagina and cums.", true); }; if (gender == 3){ outputMainText("The test enemy pokes its cock in your vagina and cums while stroking you off.", true); }; }; if (enemyID == 101){ outputMainText((((((((((("As your growing erection" + plural(1)) + " spill") + plural(3)) + " from your ") + clothesBottom()) + ", the cock-snake's mouth grows wide. It slithers forward, engulfing ") + oneYour(1)) + " cock") + plural(1)) + ", its mouth stretching wider and wider to fully engulf it, its body so elastic it could take on any length.\r\rIn an instant, your body begins to writhe and shudder as the cock-snake's gullet strongly massages along your length, quickly building you to orgasm. You clench at the ground beneath you as the cum is sucked right from your body, your hips jerking while you pump it out. The cock-snake guzzles it down, drinking it until you're completely finished, some of the spunk splashing back out across your thighs...\r\rHunger sated, the cock-snake slithers away"), true); if (cumAmount() > 2300){ outputMainText(", its belly obviously distended from your massive load", false); }; outputMainText(".", false); }; if (enemyID == 201){ outputMainText((((((((((((((((("The lone wolf rolls you onto all fours with its nose. Obliging, you duck forward, raising your " + buttDesc()) + " rump into the air. He sniffs your cunt") + plural(2)) + ", lapping at the wetness that soaks through your ") + clothesBottom()) + ". He jumps up, clawing your ") + clothesBottom()) + " to shreds until your ") + vulvaDesc()) + " hot crotch is put on display. Scratching your back, he mounts you from behind.\r\rHis rock-hard rod pokes and prods around your sex until it finds ") + oneYour(2)) + " gaping hole") + plural(2)) + " and plunges it in. You gasp as the steaming meaty flesh pounds into you, the wolf roughly humping away, the inner fur of his thighs rubbing back and forth along your ") + buttDesc()) + " naked bum. He hugs you with his paws, his muzzle panting beside your ear while drool drips down from his lolling tongue and down your cheek. It only takes a minute before he howls loudly, cum spurting into your pussy at an astonishing rate. You shout as it floods your insides, a thick knot growing at your entrance and spreading you open further..."), true); changeBot(-1); doNext(); outputMainText("You gasp as you're about to pass out, feeling the wolf tug at your violated cunt in an attempt to get away. Still tied by his knot, his cock squirting away within, ", false); if (vagLimit() < 32){ outputMainText("you wince with each pull, the knot stretching you wider,", false); vagChange(1, 0); } else { if (vagLimit() < 8){ outputMainText("you yelp with each pull, the knot far too large for your little pussy and stretches you much wider and wider while causing you some pain,", false); vagChange(2, 0); doHP(-5); } else { outputMainText("but your gaping cunt is more than enough to handle it,", false); }; }; outputMainText(" until it finally pulls free and he runs back off into the forest.", false); doImpregnate(enemyBaby()); }; if (enemyID == 301){ outputMainText((((("Finally having someone as horny as she is, she pounces onto you. She presses your face against her exposed nipples, forcing you to lick the soreness that had been caused by her own rubbing. She grinds up and down your belly, tearing your " + clothesTop()) + " to tattered shreds with her claws while biting and suckling from your own ") + nipDesc()) + " nipples"), true); changeTop(-1); if (lactation > 0){ outputMainText(", delighting in the taste of your milk", false); }; outputMainText(((". However, it doesn't take long until she reaches beneath her loin cloth and pulls her bikini bottom to the side before she goes diving into your " + clothesBottom()) + ","), false); if ((((gender == 1)) || ((gender == 3)))){ outputMainText(((((((" digging out " + oneYour(1)) + " ") + cockDesc()) + " cock") + plural(1)) + "."), false); if ((cockSize * cockSizeMod) > eVagLimit(40)){ outputMainText(((" She attempts to stand and squat down upon it, but, to her dismay, she can't seem to push it into her hungry pussy, even though she tried until tears welled up in her eyes from the painful stretching. Instead, she settles for hugging and humping the " + cockDesc()) + " thing, grinding her own stiff little erection into it, her feminine juices spilling down its length and over your body."), false); } else { if ((cockSize * cockSizeMod) > eVagLimit(20)){ outputMainText(" She mewls and mrowls in pain as she stands up and squats down upon it. It spreads her so wide that it hurts her so much, yet she doesn't care, so desperate to fuck. Tears roll down her cheeks, but her mouth yawns wide with erotic joy, being filled so much.", false); } else { outputMainText(" She rises up, only to squat back down on your erection, your cock slipping into her supple folds. So absolutely overjoyed to finally have a cock in her, she scratches at your chest with her claws and bites down upon your neck.", false); }; }; outputMainText(" Her hips speed up faster and faster, wildly working her pussy so much that the slick liquids spilling from her gurgle and churn into a bubbly mess. You too find her efforts to be extremely effective, your body quaking along with her.", false); if ((((cumAmount() > 550)) && (((cockSize * cockSizeMod) <= eVagLimit(40))))){ outputMainText(" She purrs loudly as she feels your cum explode within her, utterly pleased as it fills her so much that it squirts back out of her pussy with a loud lewd noise.", false); } else { if ((cockSize * cockSizeMod) > eVagLimit(40)){ outputMainText(" She purrs hungrily as she laps at you cum as it sprays about the both of you, her face absolutely delighted in having her fur matted with the stuff.", false); } else { outputMainText(" She purrs pleasantly as she feels your cum spurt within her, gyrating her hips around your rod to drink in every drop.", false); }; }; outputMainText("\r\r", false); if ((((knot == true)) && (((cockSize * cockSizeMod) <= eVagLimit(40))))){ outputMainText("With a high-pitched squeak, she pulls off of your knot without thinking. She rubs her poor cunny from the pain, only to roll her eyes up into her head with the pleasant masturbation. ", false); }; }; if (gender == 2){ outputMainText(((((((" lapping at your " + vulvaDesc()) + " crotch and rouchly licking your ") + clitDesc()) + " clit") + plural(2)) + "."), false); if (clitSize > 25){ outputMainText(((((" With a wicked grin, she eyes your " + clitDesc()) + " clit") + plural(2)) + " hungrily."), false); if (clitSize > 100){ outputMainText(((((((" She attempts to stand and squat down upon " + oneYour(2)) + " erect button") + plural(2)) + ", but, to her dismay, she can't seem to push it into her hungry pussy, even though she tried until tears welled up in her eyes from the painful stretching. Instead, she settles for hugging and humping the ") + clitDesc()) + " thing, grinding her own stiff little erection into it, her feminine juices spilling down its length and over your body."), false); } else { if (clitSize > 50){ outputMainText(((((" She mewls and mrowls in pain as she stands up and squats down upon " + oneYour(2)) + " erect button") + plural(2)) + ". It spreads her so wide that it hurts her so much, yet she doesn't care, so desperate to fuck. Tears roll down her cheeks, but her mouth yawns wide with erotic joy, being filled so much."), false); } else { outputMainText(((((" She rises up, only to squat back down upon " + oneYour(2)) + " erect button") + plural(2)) + ", your clit slipping into her supple folds. So absolutely overjoyed to finally have a hard phallic object in her, she scratches at your chest with her claws and bites down upon your neck."), false); }; }; } else { outputMainText(" She glides back up your chest and presses her sloppy cunt to yours, grinding the two together.", false); }; outputMainText(" Her hips speed up faster and faster, wildly working her pussy so much that the slick liquids spilling from her gurgle and churn into a bubbly mess. You too find her efforts to be extremely effective, your body quaking along with her.", false); }; outputMainText("Dazed and high with her climax, having finally overcome her heat a little, she stumbles away, her loin cloth pushed so far to the side that her lips shine between her legs for all to see.", false); if ((((((percent() < 40)) && ((ballSize > 1)))) && (((cockSize * cockSizeMod) <= eVagLimit(40))))){ outputMainText(" And she seems oddly content, as though her heat had passed with that romp for some reason...", false); }; }; if (enemyID == 302){ outputMainText("Seeing you laying defenseless and utterly aroused before him, the drunken equan falls to the ground. With a grunt and a grope, he pulls his huge cock from his pants, his erection barely 2/3 its full potential. Considering how drunk he is, it probably won't get much larger.", true); if ((((gender == 1)) || ((((gender == 3)) && ((percent() <= 50)))))){ outputMainText(((" Nevertheless, not caring whether you're male or female, he turns you over to find the hole everybody has. Giving your " + buttDesc()) + " ass a slap with his mug, he leans forward and plunges his erection deep inside."), false); } else { if ((((gender == 2)) || ((gender == 3)))){ outputMainText(((((" Nevertheless, he slips his arms behind your knees, pushing them up and foward as his cock plows into " + oneYour(2)) + " cunt") + plural(2)) + "."), false); if (vagLimit() < 12){ outputMainText(((" You cry out in pain as the cock slams against your entrance, completely unable to fit. So, instead, the the horny equan turns you over, plunging his erection deep into your " + buttDesc()) + " ass until you can see it bulge through your belly."), false); doHP(-5); } else { if (vagLimit() < 28){ outputMainText(" With a cry, the large horse-cock proves too big for your relatively small pussy, stretching it dramatically and causing you some pain.", false); vagChange(3, 0); doHP(-(Math.floor((eStr / 2)))); doImpregnate(enemyBaby()); } else { if (vagLimit() < 52){ outputMainText(" You wince as it pushes in too far, pounding your cervix further and further into your belly, permanently stretching you a bit.", false); vagChange(1, 0); doImpregnate(enemyBaby()); } else { outputMainText(((" You feel it push against your belly from within, the mound slightly protruding through your " + skinDesc()) + ", taking his entire length inside of you."), false); doImpregnate(enemyBaby()); }; }; }; }; }; outputMainText(" Again and again, he has his way with your hole, until he lets out a loud whinny. Eyes going wide, you feel a flood of his hot stuff flush into your body, making you lose all thoughts of everything else...", false); if (cumAmount() > 0){ outputMainText(((((" Your cock" + plural(1)) + " explode") + plural(3)) + " across the ground just before you collapse, forming a nice puddle to splash in."), false); }; outputMainText("\r\rAs drunk as he is, the large equan doesn't take long to pull out, cum dribbling in long strands from his huge cock and splattering across his pants, as he sways back towards Firmshaft.", false); }; if (enemyID == 303){ if (gender == 1){ outputMainText((((((((((((("With a giggle at your vulnerable state, her tentacles wrap about your " + buttDesc()) + " butt, weaving into your ") + clothesBottom()) + " and pulling out your ") + cockDesc()) + " erection") + plural(1)) + ". She takes ") + oneYour(1)) + " cock") + plural(1)) + " and fondles it with the slimy appendages, making sure it's nice and hard."), true); if ((cockSize * cockSizeMod) > 50){ outputMainText(((" Not wanting to stretch herself to engulf your " + cockDesc()) + " thing, she instead wraps her tentacles around it, drawing it towards the center of her webbing, just beneath her hips.\r\rYou can't tell what is going on, but you quickly jerk as something nips at your urethra. Nothing painful, just a soft yet rigid fleshy thing, like cartilage, that gently pinches you. Then your eyes go wide as whatever it is begins to dig into your urethra, spreading the last couple of inches wider as it slips inside, holding your cock-tip open like a gaping hole.\r\rAgain, she is gentle, but any pain you might have noticed quickly disappears as all eight of her tentacles work together in harmony, writhing about your cock and making you twitch sporadically on the ground from the intense pleasure. She wrings your cock powerfully, quickly bringing you to a gushing orgasm, spraying your cum through your gaping urethra and filling her body."), false); } else { outputMainText(((" Her whole body moves over yours, your groin being lost to her webbing.\r\rYou can't tell what is going on, but you quickly jerk as something nips at the tip of your rod. Nothing painful, just a soft yet rigid fleshy thing, like cartilage, that gently pinches you. Then your eyes go wide as whatever it is engulfs your length, sucking you inside. Supple folds squish and writhe around your cock, as though it were a pussy with a throat that was trying desparately to swallow you. Within moments, you fin