Frame 1
function grow() {
if (pregnancy < sapphire.pregnant._totalframes) {
pregnancy++;
if (((pregnancy > 200) && (pregnancy < 204)) && (sapphire.shorts._currentframe < 203)) {
sapphire.shorts.play();
sapphire.pregnant2.play();
sapphire.pregnant.play();
} else {
sapphire.pregnant.gotoAndStop(pregnancy);
sapphire.pregnant2.gotoAndStop(pregnancy);
if (sapphire.shorts._currentframe < 201) {
sapphire.shorts.gotoAndStop(pregnancy);
}
}
} else {
growth = 0;
}
}
function revert() {
if (pregnancy > 1) {
pregnancy--;
sapphire.pregnant.gotoAndStop(pregnancy);
sapphire.pregnant2.gotoAndStop(pregnancy);
if ((pregnancy > 203) || (sapphire.shorts._currentframe < 200)) {
sapphire.shorts.gotoAndStop(pregnancy);
} else {
sapphire.shorts.stop();
}
} else {
growth = 0;
}
}
function timeout_fn() {
if (!timer) {
condition = "";
setState(curState.state);
delete _root.onEnterFrame;
}
timer--;
}
function setState(str) {
if (condition != "") {
return(undefined);
}
if (state != str) {
curState.state = str;
state = str;
curState.state = state;
for (var _local2 in states[str]) {
curState[_local2] = states[str][_local2];
}
sapphire.eye.gotoAndPlay(curState.eye);
sapphire.mouth.gotoAndPlay(curState.mouth);
if (String(sapphire.arm1._currentlabel).indexOf(curState.arm1) == -1) {
if (sapphire.arm1._currentlabel.indexOf("up") != -1) {
sapphire.arm1.gotoAndPlay("movedown2");
}
sapphire.arm1.gotoAndPlay("move" + curState.arm1);
} else {
sapphire.arm1.gotoAndPlay(curState.arm1);
}
if (String(sapphire.wing1._currentlabel).indexOf(curState.wing1) == -1) {
sapphire.wing1.gotoAndPlay("move" + curState.wing1);
}
if (String(sapphire.wing2._currentlabel).indexOf(curState.wing2) == -1) {
sapphire.wing2.gotoAndPlay("move" + curState.wing2);
}
sapphire.breast1.gotoAndPlay(curState.breasts);
sapphire.breast2.gotoAndPlay(curState.breasts);
sapphire.fur.gotoAndPlay(curState.breasts);
sapphire.eye.pupil._x = pX + curState.pX;
sapphire.eye.pupil._y = pY + curState.pY;
canBlink = curState.canBlink;
}
}
_level0.bgColor = 15784279 /* 0xF0D957 */;
_level0.flashWidth = 800;
_level0.flashHeight = 600;
var state = "";
var condition = "";
var states = new Array();
var pregnancy = 1;
var growth = 0;
var curState = new Object();
var canBlink = false;
var blinking = false;
var pX = sapphire.eye.pupil._x;
var pY = sapphire.eye.pupil._y;
sapphire.pregnant.gotoAndStop(1);
sapphire.pregnant2.gotoAndStop(1);
sapphire.shorts.gotoAndStop(1);
states.sleeping = {mouth:"smile", eye:"closed", arm1:"belly", wing1:"down", wing2:"down", breasts:"breathing", pX:0, pY:0, canBlink:false};
states.awaken = {mouth:"smile", eye:"shut", arm1:"belly", wing1:"down", wing2:"down", breasts:"breathing", pX:0, pY:0, canBlink:true};
states.look = {mouth:"closed", eye:"small", arm1:"belly", wing1:"down", wing2:"down", breasts:"breathing", pX:0, pY:0, canBlink:true};
states.realize = {mouth:"open", eye:"open", arm1:"down", wing1:"flap", wing2:"flap", breasts:"faster", pX:2, pY:2, canBlink:true};
states.wondering = {mouth:"small", eye:"open", arm1:"down", wing1:"down", wing2:"down", breasts:"normal", pX:2, pY:2, canBlink:true};
states.break = {mouth:"mad", eye:"shut2", arm1:"down", wing1:"flap", wing2:"flap", breasts:"faster", pX:0, pY:0, canBlink:true};
states.bigger = {mouth:"closed", eye:"small", arm1:"down", wing1:"flap", wing2:"flap", breasts:"faster", pX:0, pY:0, canBlink:true};
states.mad = {mouth:"sad", eye:"mad", arm1:"down", wing1:"down", wing2:"down", breasts:"normal", pX:2, pY:2, canBlink:true};
states.accept = {mouth:"small", eye:"small", arm1:"up", wing1:"down", wing2:"down", breasts:"normal", pX:-2, pY:-2, canBlink:true};
states.more = {mouth:"open", eye:"small", arm1:"up", wing1:"up", wing2:"up", breasts:"faster", pX:0, pY:0, canBlink:true};
states.over = {mouth:"smile", eye:"mad", arm1:"down", wing1:"up", wing2:"up", breasts:"normal", pX:-2, pY:-2, canBlink:true};
states.revert = {mouth:"happy", eye:"sad", arm1:"down", wing1:"down", wing2:"down", breasts:"faster", pX:-2, pY:-2, canBlink:true};
states.almost = {mouth:"smile", eye:"open", arm1:"down", wing1:"down", wing2:"down", breasts:"normal", pX:0, pY:0, canBlink:true};
setState("sleeping");
sapphire.onEnterFrame = function () {
if (canBlink && (Math.random() > 0.99)) {
sapphire.eye.gotoAndPlay("blink");
sapphire.eye.pupil._x = pX + curState.pX;
sapphire.eye.pupil._y = pX + curState.pY;
blinking = true;
}
if (blinking && (sapphire.eye._currentlabel == "endblink")) {
sapphire.eye.gotoAndPlay(curState.eye);
sapphire.eye.pupil._x = pX + curState.pX;
sapphire.eye.pupil._y = pX + curState.pY;
blinking = false;
}
if (growth == 1) {
grow();
switch (true) {
case pregnancy < 20 :
break;
case pregnancy < 70 :
setState("awaken");
break;
case pregnancy < 120 :
setState("look");
break;
case pregnancy < 200 :
setState("realize");
break;
case pregnancy == 200 :
setState("wondering");
growth = 0;
break;
case (pregnancy < 206) && (sapphire.shorts._currentframe < 205) :
if (pregnancy == 201) {
sapphire.drop.gotoAndPlay(2);
}
setState("break");
break;
case pregnancy < 300 :
if (pregnancy == 201) {
sapphire.drop.gotoAndPlay(2);
}
setState("bigger");
break;
case pregnancy < 400 :
setState("mad");
break;
case pregnancy == 400 :
setState("accept");
growth = 0;
break;
case pregnancy < 600 :
setState("more");
break;
case pregnancy == 600 :
setState("over");
growth = 0;
}
} else if (growth == -1) {
revert();
sapphire.drop.gotoAndStop(1);
switch (true) {
case pregnancy == 1 :
setState("sleeping");
break;
case pregnancy < 300 :
setState("almost");
break;
default :
setState("revert");
}
}
if (growth > -1) {
if (pregnancy == 200) {
setState("wondering");
} else if (pregnancy == 400) {
setState("accept");
} else if (pregnancy == 600) {
setState("over");
}
}
};
var reset = false;
_panel._plus._txt.text = "+";
_panel._minus._txt.text = "-";
_panel._expand._txt.text = "Expand";
_panel._revert._txt.text = "Revert";
_panel._info.text = "Interactive pregnant Sapphire. Drawn and programmed by Doom the wolf (http://doom-the-wolf.deviantart.com). Click 'Expand' or 'Revert' to change the size of her belly. Selecting 'continuous' will make the size change automatically. Move the camera by dragging the mouse across the screen. Zoom in or out by using the '+' and '-' buttons.";
_panel._cont_txt.text = "continuous";
_panel.onEnterFrame = function () {
if (_panel.hitTest(_root._xmouse, _root._ymouse)) {
if (Math.abs(_panel._y - 500) > 1) {
_panel._y = _panel._y + ((500 - _panel._y) * 0.4);
}
} else if (Math.abs(_panel._y - 600) > 1) {
_panel._y = _panel._y + ((600 - _panel._y) * 0.4);
}
if (growth && (_panel._cont._currentframe == 2)) {
_panel._cont_txt.text = "stop";
} else {
_panel._cont_txt.text = "continuous";
}
if (pregnancy < 200) {
_panel._expand._txt.text = "Expand";
} else if (pregnancy < 400) {
_panel._expand._txt.text = "Bigger";
} else if (pregnancy < 600) {
_panel._expand._txt.text = "More";
} else {
_panel._expand._txt.text = "Reset";
}
};
_panel._cont.onRelease = function () {
if (growth != 0) {
growth = 0;
}
_panel._cont.gotoAndStop(3 - _panel._cont._currentframe);
};
_panel._plus.onPress = function () {
_panel._plus.onEnterFrame = function () {
sapphire._xscale = (sapphire._yscale = sapphire._xscale + 2);
};
};
_panel._minus.onPress = function () {
_panel._minus.onEnterFrame = function () {
if (sapphire._xscale > 30) {
sapphire._xscale = (sapphire._yscale = sapphire._xscale - 2);
} else {
delete _panel._minus.onEnterFrame;
}
};
};
_panel.onMouseUp = function () {
delete _panel._plus.onEnterFrame;
delete _panel._minus.onEnterFrame;
if (_panel._cont._currentframe == 1) {
growth = 0;
}
};
_panel._expand.onPress = function () {
if (pregnancy >= sapphire.pregnant._totalframes) {
growth = 0;
reset = true;
} else {
growth = 1;
}
};
_panel._expand.onRelease = function () {
if (reset) {
growth = 0;
pregnancy = 1;
sapphire.drop.gotoAndStop(1);
sapphire.pregnant.gotoAndStop(1);
sapphire.pregnant2.gotoAndStop(1);
sapphire.shorts.gotoAndStop(1);
condition = "";
timer = 0;
delete _root.onEnterFrame;
setState("sleeping");
reset = false;
}
};
_panel._expand.onReleaseOutside = function () {
reset = false;
};
_panel._revert.onPress = function () {
growth = -1;
};
sapphire.onMouseDown = function () {
if (_panel._y > 550) {
sapphire.startDrag();
}
};
sapphire.onMouseUp = function () {
sapphire.stopDrag();
};
var rub = 0;
sapphire.breast1.onPress = (sapphire.breast2.onPress = function () {
if (condition == "") {
canBlink = false;
if (state == "sleeping") {
sapphire.mouth.gotoAndPlay("happy");
sapphire.eye.gotoAndPlay("shut");
} else if (pregnancy < 300) {
sapphire.mouth.gotoAndPlay("smile2");
sapphire.eye.gotoAndPlay("open");
} else {
sapphire.mouth.gotoAndPlay("smile2");
sapphire.eye.gotoAndPlay("sad");
}
if (sapphire.wing1._currentlabel.indexOf("down") != -1) {
sapphire.wing1.gotoAndPlay("moveflap");
sapphire.wing2.gotoAndPlay("moveflap");
}
timer = 30;
condition = "breastpoke";
state = "special";
_root.onEnterFrame = timeout_fn;
}
});
sapphire.breast1.onRollOver = (sapphire.breast2.onRollOver = function () {
if ((condition == "") && (!(rub % 6))) {
canBlink = false;
sapphire.mouth.gotoAndPlay("happy");
sapphire.eye.gotoAndPlay("closed");
if (sapphire.wing1._currentlabel.indexOf("down") != -1) {
sapphire.wing1.gotoAndPlay("moveup");
sapphire.wing2.gotoAndPlay("moveup");
}
sapphire.blush.gotoAndPlay(2);
timer = 30;
condition = "breastrub";
state = "special";
_root.onEnterFrame = timeout_fn;
}
rub++;
});
sapphire.pregnant.onPress = (sapphire.pregnant2.onPress = function () {
if ((condition == "") && (pregnancy > 100)) {
canBlink = false;
if (pregnancy < 300) {
sapphire.mouth.gotoAndPlay("smile");
sapphire.eye.gotoAndPlay("small");
} else {
sapphire.mouth.gotoAndPlay("sad");
sapphire.eye.gotoAndPlay("shut");
}
timer = 30;
condition = "bellypoke";
state = "special";
_root.onEnterFrame = timeout_fn;
}
rub++;
});
sapphire.pregnant.onRollOver = (sapphire.pregnant2.onRollOver = function () {
if (((condition == "") && (!(rub % 3))) && (pregnancy > 100)) {
canBlink = false;
if (pregnancy < 300) {
sapphire.mouth.gotoAndPlay("happy");
sapphire.eye.gotoAndPlay("small");
} else {
sapphire.mouth.gotoAndPlay("smile");
sapphire.eye.gotoAndPlay("sad");
}
timer = 30;
condition = "bellyrub";
state = "special";
_root.onEnterFrame = timeout_fn;
}
rub++;
});
Symbol 9 MovieClip Frame 1
_currentlabel = "down";
Symbol 9 MovieClip Frame 2
gotoAndPlay(_currentlabel);
Symbol 9 MovieClip Frame 5
_currentlabel = "flap";
Symbol 9 MovieClip Frame 19
gotoAndPlay ("down");
Symbol 9 MovieClip Frame 30
_currentlabel = "up";
Symbol 9 MovieClip Frame 31
gotoAndPlay(_currentlabel);
Symbol 9 MovieClip Frame 37
gotoAndPlay ("down");
Symbol 14 MovieClip Frame 1
_currentlabel = "down";
Symbol 14 MovieClip Frame 2
gotoAndPlay(_currentlabel);
Symbol 14 MovieClip Frame 5
_currentlabel = "flap";
Symbol 14 MovieClip Frame 19
gotoAndPlay ("down");
Symbol 14 MovieClip Frame 30
_currentlabel = "up";
Symbol 14 MovieClip Frame 31
gotoAndPlay(_currentlabel);
Symbol 14 MovieClip Frame 37
gotoAndPlay ("down");
Symbol 28 MovieClip Frame 1
_currentlabel = "open";
Symbol 28 MovieClip Frame 2
gotoAndPlay(_currentlabel);
Symbol 28 MovieClip Frame 3
_currentlabel = "closed";
Symbol 28 MovieClip Frame 4
gotoAndPlay(_currentlabel);
Symbol 28 MovieClip Frame 5
_currentlabel = "small";
Symbol 28 MovieClip Frame 6
gotoAndPlay(_currentlabel);
Symbol 28 MovieClip Frame 7
_currentlabel = "blink";
Symbol 28 MovieClip Frame 11
_currentlabel = "endblink";
Symbol 28 MovieClip Frame 12
gotoAndPlay(_currentlabel);
Symbol 28 MovieClip Frame 13
_currentlabel = "shut";
Symbol 28 MovieClip Frame 14
gotoAndPlay(_currentlabel);
Symbol 28 MovieClip Frame 15
_currentlabel = "shut2";
Symbol 28 MovieClip Frame 18
gotoAndPlay ("small");
Symbol 28 MovieClip Frame 19
_currentlabel = "mad";
Symbol 28 MovieClip Frame 20
gotoAndPlay(_currentlabel);
Symbol 28 MovieClip Frame 21
_currentlabel = "medium";
Symbol 28 MovieClip Frame 22
gotoAndPlay(_currentlabel);
Symbol 28 MovieClip Frame 23
_currentlabel = "sad";
Symbol 28 MovieClip Frame 24
gotoAndPlay(_currentlabel);
Symbol 40 MovieClip Frame 1
_currentlabel = "smile";
Symbol 40 MovieClip Frame 2
gotoAndPlay(_currentlabel);
Symbol 40 MovieClip Frame 3
_currentlabel = "closed";
Symbol 40 MovieClip Frame 4
gotoAndPlay(_currentlabel);
Symbol 40 MovieClip Frame 5
_currentlabel = "open";
Symbol 40 MovieClip Frame 6
gotoAndPlay(_currentlabel);
Symbol 40 MovieClip Frame 7
_currentlabel = "mad";
Symbol 40 MovieClip Frame 10
gotoAndPlay ("closed");
Symbol 40 MovieClip Frame 11
_currentlabel = "small";
Symbol 40 MovieClip Frame 12
gotoAndPlay(_currentlabel);
Symbol 40 MovieClip Frame 13
_currentlabel = "sad";
Symbol 40 MovieClip Frame 14
gotoAndPlay(_currentlabel);
Symbol 40 MovieClip Frame 17
_currentlabel = "opens";
Symbol 40 MovieClip Frame 18
gotoAndPlay(_currentlabel);
Symbol 40 MovieClip Frame 19
_currentlabel = "happy";
Symbol 40 MovieClip Frame 20
gotoAndPlay(_currentlabel);
Symbol 40 MovieClip Frame 21
_currentlabel = "smile2";
Symbol 40 MovieClip Frame 22
gotoAndPlay(_currentlabel);
Symbol 45 MovieClip Frame 1
stop();
Symbol 48 MovieClip Frame 1
stop();
Symbol 48 MovieClip Frame 20
stop();
Symbol 59 MovieClip Frame 1
_currentlabel = "breathing";
Symbol 59 MovieClip Frame 60
gotoAndPlay(_currentlabel);
Symbol 59 MovieClip Frame 65
_currentlabel = "faster";
Symbol 59 MovieClip Frame 84
gotoAndPlay(_currentlabel);
Symbol 59 MovieClip Frame 90
_currentlabel = "normal";
Symbol 59 MovieClip Frame 121
gotoAndPlay(_currentlabel);
Symbol 67 MovieClip Frame 1
_currentlabel = "breathing";
Symbol 67 MovieClip Frame 60
gotoAndPlay(_currentlabel);
Symbol 67 MovieClip Frame 65
_currentlabel = "faster";
Symbol 67 MovieClip Frame 84
gotoAndPlay(_currentlabel);
Symbol 67 MovieClip Frame 90
_currentlabel = "normal";
Symbol 67 MovieClip Frame 121
gotoAndPlay(_currentlabel);
Symbol 82 MovieClip Frame 1
_currentlabel = "breathing";
Symbol 82 MovieClip Frame 60
gotoAndPlay(_currentlabel);
Symbol 82 MovieClip Frame 65
_currentlabel = "faster";
Symbol 82 MovieClip Frame 84
gotoAndPlay(_currentlabel);
Symbol 82 MovieClip Frame 90
_currentlabel = "normal";
Symbol 82 MovieClip Frame 121
gotoAndPlay(_currentlabel);
Symbol 95 MovieClip Frame 204
stop();
Symbol 103 MovieClip Frame 1
_currentlabel = "growing";
Symbol 103 MovieClip Frame 203
stop();
Symbol 121 MovieClip Frame 1
_currentlabel = "growing";
Symbol 121 MovieClip Frame 203
stop();
Symbol 140 MovieClip Frame 1
_currentlabel = "belly";
Symbol 140 MovieClip Frame 2
gotoAndPlay(_currentlabel);
Symbol 140 MovieClip Frame 5
_currentlabel = "movedown";
Symbol 140 MovieClip Frame 10
_currentlabel = "down";
Symbol 140 MovieClip Frame 11
gotoAndPlay(_currentlabel);
Symbol 140 MovieClip Frame 12
_currentlabel = "movedown";
Symbol 140 MovieClip Frame 16
gotoAndPlay ("belly");
Symbol 140 MovieClip Frame 20
_currentlabel = "moveup";
Symbol 140 MovieClip Frame 25
_currentlabel = "up";
Symbol 140 MovieClip Frame 26
gotoAndPlay(_currentlabel);
Symbol 140 MovieClip Frame 27
_currentlabel = "movedown2";
Symbol 140 MovieClip Frame 31
gotoAndPlay ("down");
Symbol 149 MovieClip Frame 1
stop();