Frame 1
function onMouseMove() {
if (!auto) {
react(_root._ymouse);
}
}
function unlockSound() {
soundLocked = false;
}
function playSlop(number, respectDone) {
if (respectDone && (soundLocked)) {
return(undefined);
}
soundLocked = true;
if (number == 0) {
number = Math.ceil(Math.random() * 9);
}
if (number < 5) {
csound[number].setVolume(globalVolume / 3);
csound[number].start();
} else {
csound[number].setVolume(globalVolume);
csound[number].start();
}
}
_quality = "MEDIUM";
arousal = 100;
lastPos = 1;
squirts = 5;
squirtDelay = 1000;
squirtDone = true;
coming = false;
headcream = false;
arm = true;
startup = true;
top = refBar._y - (refBar._height * 0.1);
bottom = refBar._y + (refBar._height * 1.1);
auto = false;
_root.autoyy = 5;
_root.stroke = 1;
cumTimer = function () {
clearInterval(cumInterval);
if (coming && (squirtDone)) {
squirtDone = false;
if (squirts > 3) {
cock.cum.gotoAndPlay("squirt");
} else {
cock.cum.gotoAndPlay("midsquirt");
}
if (!arm) {
cock.gotoAndPlay("jump");
}
head.gotoAndPlay("pant");
playSlop(0);
arousal = arousal + 20;
squirts = squirts - 1;
if (squirts <= 0) {
coming = false;
squirts = 5;
squirtDelay = 600;
}
bar.cumMeter._y = bar.meter._y + ((arousal / 100) * bar.meter._height);
cock.shaft.gotoAndStop(Math.round(41 - ((arousal / 100) * 40)));
squirtDelay = squirtDelay + 100;
cumInterval = setInterval(_root.cumTimer, squirtDelay);
}
};
react = function (yPos) {
if (((arm && (!coming)) && (arousal < 100)) && (!auto)) {
arousal = arousal + 0.025;
}
if ((!arm) && (!coming)) {
arousal = arousal - 0.025;
}
if (yPos < top) {
yPos = top;
} else if (yPos > bottom) {
yPos = bottom;
}
currentFrame = _root._currentframe;
difference = Math.abs(currentFrame - lastPos);
if ((arm && ((currentFrame > 30) || (currentFrame < 11))) && ((difference > 10) && (!auto))) {
playSlop(0, false);
}
lastPos = _root._currentframe;
targetFrame = Math.round(((yPos - top) / (bottom - top)) * 40);
_root.gotoAndStop(2 + targetFrame);
bar.gotoAndStop(2 + targetFrame);
if ((arousal > 0) && (!coming)) {
arousal = arousal - (difference / 15);
}
if ((arousal < 50) && (!coming)) {
head.gotoAndStop("pant");
}
if ((arousal <= 0) && (squirts == 5)) {
coming = true;
leaking = false;
cumInterval = setInterval(_root.cumTimer, squirtDelay);
}
bar.cumMeter._y = bar.meter._y + ((arousal / 100) * bar.meter._height);
cock.shaft.gotoAndStop(Math.round(41 - ((arousal / 100) * 40)));
};
autoMove = function () {
knotCoefficient = 1;
if (((autoSlider._y - top) / (bottom - top)) > 0.5) {
knotCoefficient = 0.5;
}
autoSlider._y = autoSlider._y + (autoyy * knotCoefficient);
if (autoSlider._y > (bottom * _root.stroke)) {
autoSlider._y = bottom * _root.stroke;
_root.autoyy = -Math.abs(_root.autoyy);
if (_root.arm && (_root.stroke > 0.8)) {
playSlop(0, true);
}
} else if (autoSlider._y < top) {
autoSlider._y = top;
_root.autoyy = Math.abs(_root.autoyy);
}
react(autoSlider._y);
};
csound = new Array();
globalVolume = 50;
soundOn = true;
csound[1] = new Sound(this);
csound[1].attachSound("slop1");
csound[2] = new Sound(this);
csound[2].attachSound("slop2");
csound[3] = new Sound(this);
csound[3].attachSound("slop3");
csound[4] = new Sound(this);
csound[4].attachSound("slop4");
csound[5] = new Sound(this);
csound[5].attachSound("01");
csound[6] = new Sound(this);
csound[6].attachSound("02");
csound[7] = new Sound(this);
csound[7].attachSound("03");
csound[8] = new Sound(this);
csound[8].attachSound("04");
csound[9] = new Sound(this);
csound[9].attachSound("05");
soundLocked = false;
foo = 1;
while (foo < 10) {
csound[foo].setVolume(globalVolume);
csound[foo].onSoundComplete = unlockSound;
foo++;
}
Frame 2
if (arm) {
sheath._visible = false;
}
if (startup) {
startup = false;
_root.speedButt._visible = false;
_root.speedBar._visible = false;
_root.strokeButt._visible = false;
_root.strokeBar._visible = false;
}
stop();
Frame 40
stop();
Symbol 7 MovieClip Frame 1
stop();
Symbol 7 MovieClip Frame 41
stop();
Symbol 20 MovieClip Frame 1
stop();
Symbol 23 MovieClip Frame 1
stop();
Symbol 26 MovieClip Frame 1
stop();
Symbol 30 MovieClip Frame 1
gotoAndStop (14);
_visible = false;
Symbol 32 MovieClip Frame 1
gotoAndStop (52);
_visible = false;
Symbol 35 Button
on (release) {
arm = !arm;
hand._visible = arm;
upperArm._visible = arm;
forearm._visible = arm;
stopAllSounds();
if (arm) {
armIndicator.gotoAndStop(1);
cock.gotoAndStop("rest");
sheath._visible = false;
} else {
armIndicator.gotoAndStop(2);
cock.gotoAndStop("handsfree");
sheath._visible = true;
}
}
Symbol 38 Button
on (release) {
auto = !auto;
if (auto) {
autoIndicator.gotoAndStop(2);
autoInterval = setInterval(_root.autoMove, 10);
_root.speedButt._visible = true;
_root.speedBar._visible = true;
_root.strokeButt._visible = true;
_root.strokeBar._visible = true;
} else {
autoIndicator.gotoAndStop(1);
clearInterval(autoInterval);
_root.speedButt._visible = false;
_root.speedBar._visible = false;
_root.strokeButt._visible = false;
_root.strokeBar._visible = false;
}
}
Symbol 39 Button
on (press) {
sign = 1;
if (_root.autoyy < 0) {
sign = -1;
}
speed = (_root._xmouse - _root.speedBar._x) / _root.speedBar._width;
if (speed < 0.1) {
speed = 0.1;
} else if (speed > 1) {
speed = 1;
}
_root.autoyy = (20 * speed) * sign;
_root.speedBar.gotoAndStop(1 + Math.round(speed * 50));
}
Symbol 40 Button
on (press) {
_root.stroke = 0.5 + (((_root._ymouse - _root.strokeBar._y) / _root.strokeBar._height) / 2);
if (_root.stroke < 0.5) {
_root.stroke = 0.5;
} else if (_root.stroke > 0.95) {
_root.stroke = 1;
}
_root.strokeBar.gotoAndStop(Math.round(2 + ((_root.stroke - 0.5) * 100)));
}
Symbol 44 MovieClip Frame 1
function camControl() {
parentColor.setTransform(camColor.getTransform());
var _local4 = sX / this._width;
var _local3 = sY / this._height;
_parent._x = cX - (this._x * _local4);
_parent._y = cY - (this._y * _local3);
_parent._xscale = 100 * _local4;
_parent._yscale = 100 * _local3;
}
function resetStage() {
var _local2 = {ra:100, rb:0, ga:100, gb:0, ba:100, bb:0, aa:100, ab:0};
parentColor.setTransform(_local2);
_parent._xscale = 100;
_parent._yscale = 100;
_parent._x = 0;
_parent._y = 0;
}
this._visible = false;
var oldMode = Stage.scaleMode;
Stage.scaleMode = "exactFit";
var cX = (Stage.width / 2);
var cY = (Stage.height / 2);
var sX = Stage.width;
var sY = Stage.height;
Stage.scaleMode = oldMode;
var camColor = new Color(this);
var parentColor = new Color(_parent);
this.onEnterFrame = camControl;
camControl();
this.onUnload = resetStage;
Symbol 76 MovieClip Frame 1
stop();
Symbol 76 MovieClip Frame 16
_root.head.ncum.gotoAndPlay("basic");
_root.headcream = true;
Symbol 76 MovieClip Frame 27
_root.squirtDone = true;
stop();
Symbol 76 MovieClip Frame 55
_root.squirtDone = true;
stop();
Symbol 83 MovieClip Frame 1
stop();
Symbol 83 MovieClip Frame 9
gotoAndPlay ("on");
Symbol 86 MovieClip Frame 1
stop();
Symbol 86 MovieClip Frame 49
gotoAndPlay ("on");
Symbol 88 MovieClip Frame 1
stop();
Symbol 92 MovieClip Frame 1
stop();
shaft.vibra._visible = false;
shaft.vibraStrap._visible = false;
shaft.vibra.gotoAndStop("off");
shaft.vibraStrap.gotoAndStop("off");
Symbol 92 MovieClip Frame 5
shaft.vibra._visible = true;
shaft.vibraStrap._visible = true;
shaft.vibra.gotoAndPlay("on");
shaft.vibraStrap.gotoAndPlay("on");
Symbol 92 MovieClip Frame 35
stop();
Symbol 98 MovieClip Frame 1
stop();
Symbol 98 MovieClip Frame 35
stop();
Symbol 110 MovieClip Frame 1
stop();
Symbol 110 MovieClip Frame 98
gotoAndPlay ("drip");
Symbol 118 MovieClip Frame 1
stop();
Symbol 118 MovieClip Frame 51
stop();