Frame 1
function grow() {
if (pregnancy < typhlosion.body._totalframes) {
pregnancy = pregnancy + growthSpeed;
if (pregnancy > typhlosion.body._totalframes) {
pregnancy = typhlosion.body._totalframes;
}
typhlosion.body.gotoAndStop(Math.floor(pregnancy));
} else {
growth = 0;
}
}
function revert() {
if (pregnancy > 1) {
pregnancy = pregnancy - growthSpeed;
if (pregnancy < 1) {
pregnancy = 1;
}
typhlosion.body.gotoAndStop(Math.floor(pregnancy));
} 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];
}
if (typhlosion.arm1front._currentlabel != curState.arm1) {
typhlosion.arm1front.gotoAndPlay("move" + curState.arm1);
typhlosion.arm1back.gotoAndPlay("move" + curState.arm1);
}
typhlosion.head.gotoAndPlay(curState.mouth);
typhlosion.eye.gotoAndPlay(curState.eye);
typhlosion.eye.pupil._x = pX + curState.pX;
typhlosion.eye.pupil._y = pY + curState.pY;
canBlink = curState.canBlink;
offset = curState.offset;
frequency = curState.frequency;
}
}
function writePhrase(n) {
if ((typhlosion.speech_mc.toSay == phraseList[n]) || (condition != "")) {
return(undefined);
}
if (n < curPhrase) {
return(undefined);
}
typhlosion.speech_mc._visible = true;
typhlosion.speech_mc.toSay = phraseList[n];
typhlosion.speech_mc.speechState = 0;
typhlosion.speech_mc.charPos = 0;
typhlosion.speech_mc._txt.text = "";
typhlosion.speech_mc.onEnterFrame = function () {
if (this._currentframe == this._totalframes) {
switch (this.speechState) {
case 0 :
if (this.charPos == this.toSay.length) {
this.speechState++;
} else {
this._txt.text = this._txt.text + this.toSay.charAt(this.charPos++);
this._txt.scroll = this._txt.maxscroll;
}
break;
case 1 :
if (!((this.charPos--) + 5)) {
this.speechState++;
}
break;
case 2 :
this.gotoAndStop(1);
this._txt.text = "";
this.speechState = 0;
delete this.onEnterFrame;
this._visible = false;
}
} else {
this.play();
}
};
}
_level0.bgColor = 9921331 /* 0x976333 */;
_level0.flashWidth = 800;
_level0.flashHeight = 600;
var state = "";
var condition = "";
var states = new Array();
var pregnancy = 1;
var growthSpeed = 1;
var growth = 0;
var curState = new Object();
var canBlink = false;
var blinking = false;
var pX = typhlosion.eye.pupil._x;
var pY = typhlosion.eye.pupil._y;
var b1X = typhlosion.breast1._x;
var b1Y = typhlosion.breast1._y;
var b2X = typhlosion.breast2._x;
var b2Y = typhlosion.breast2._y;
var offset = 0;
var frequency = 0;
var count = 0;
var curPhrase = 0;
typhlosion.arm1front._currentlabel = "down";
typhlosion.body.stop();
states.resting = {mouth:"smile", eye:"medium", arm1:"down", offset:1, frequency:0.15, pX:0, pY:0, canBlink:true};
states.curious = {mouth:"open", eye:"open", arm1:"down", offset:2, frequency:0.4, pX:8, pY:2, canBlink:true};
states.realize = {mouth:"happy", eye:"medium", arm1:"down", offset:1, frequency:0.2, pX:0, pY:0, canBlink:true};
states.happy = {mouth:"smile", eye:"small", arm1:"belly", offset:2, frequency:0.1, pX:5, pY:0, canBlink:true};
states.bigger = {mouth:"closed", eye:"medium", arm1:"down", offset:1.5, frequency:0.2, pX:5, pY:0, canBlink:true};
states.enjoy = {mouth:"happy", eye:"small", arm1:"belly", offset:1, frequency:0.4, pX:5, pY:0, canBlink:true};
states.over = {mouth:"smile", eye:"closed", arm1:"belly", offset:2, frequency:0.2, pX:5, pY:0, canBlink:false};
states.revert = {mouth:"open", eye:"closed", arm1:"down", offset:1, frequency:0.1, pX:0, pY:0, canBlink:false};
states.almost = {mouth:"smile", eye:"open", arm1:"down", offset:1, frequency:0.1, pX:0, pY:0, canBlink:open};
setState("resting");
typhlosion.onEnterFrame = function () {
typhlosion.breast1._y = (b1Y - ((offset * Math.cos(count)) * 0.5)) + (offset * 0.5);
typhlosion.breast1._rotation = (Math.cos(count) * offset) * 0.5;
typhlosion.breast2._rotation = ((-Math.cos(count)) * offset) * 0.5;
count = count + frequency;
if (canBlink && (Math.random() > 0.99)) {
typhlosion.eye.gotoAndPlay("blink");
blinking = true;
}
if (blinking && (typhlosion.eye._currentlabel == "endblink")) {
typhlosion.eye.gotoAndPlay(curState.eye);
blinking = false;
}
if (growth == 1) {
grow();
switch (true) {
case pregnancy < 30 :
break;
case pregnancy < 100 :
writePhrase(1);
setState("curious");
break;
case pregnancy < 250 :
writePhrase(2);
setState("realize");
break;
case (pregnancy > 250) && ((pregnancy - growthSpeed) < 250) :
pregnancy = 250;
typhlosion.body.gotoAndStop(pregnancy);
case pregnancy == 250 :
growth = 0;
writePhrase(3);
if (curPhrase < 4) {
curPhrase = 4;
}
setState("happy");
break;
case pregnancy < 350 :
writePhrase(4);
setState("bigger");
break;
case pregnancy < 500 :
writePhrase(5);
setState("enjoy");
break;
case (pregnancy > 500) && ((pregnancy - growthSpeed) < 500) :
pregnancy = 500;
typhlosion.body.gotoAndStop(pregnancy);
case pregnancy == 500 :
growth = 0;
writePhrase(6);
curPhrase = 7;
setState("over");
}
} else if (growth == -1) {
revert();
typhlosion.drop.gotoAndStop(1);
switch (true) {
case pregnancy == 1 :
setState("resting");
break;
case pregnancy < 250 :
writePhrase(8);
setState("almost");
if (curPhrase < 9) {
curPhrase = 9;
}
break;
case pregnancy < 500 :
writePhrase(7);
setState("revert");
}
} else if (pregnancy == 250) {
setState("happy");
} else if (pregnancy == 500) {
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 anthro Typhlosion. 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 '-' buttos.";
_panel._cont_txt.text = "continuous";
_panel._speed_txt.text = "1";
_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 < 250) {
_panel._expand._txt.text = "Expand";
} else if (pregnancy < 500) {
_panel._expand._txt.text = "Bigger";
} 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 () {
typhlosion._xscale = (typhlosion._yscale = typhlosion._xscale + 2);
};
};
_panel._minus.onPress = function () {
_panel._minus.onEnterFrame = function () {
if (typhlosion._xscale > 15) {
typhlosion._xscale = (typhlosion._yscale = typhlosion._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 >= typhlosion.body._totalframes) {
growth = 0;
reset = true;
} else {
growth = 1;
}
};
_panel._expand.onRelease = function () {
if (reset) {
growth = 0;
pregnancy = 1;
typhlosion.pregnant2.gotoAndStop(1);
condition = "";
delete _root.onEnterFrame;
setState("resting");
reset = false;
}
};
_panel._expand.onReleaseOutside = function () {
reset = false;
};
_panel._revert.onPress = function () {
growth = -1;
};
var kDown = new Object();
Key.addListener(kDown);
_panel._speed_txt.maxChars = 2;
_panel._speed_txt.restrict = "0123456789.";
_panel._speed_txt.background = true;
_panel._speed_txt.backgroundColor = 16777215 /* 0xFFFFFF */;
_panel._speed_txt.border = true;
kDown.onKeyDown = function (K) {
if ((Key.getCode() == 13) || (K != undefined)) {
if ((_panel._speed_txt.text.length == 0) || (_panel._speed_txt.text == "..")) {
_panel._speed_txt.text = "1";
} else if (_panel._speed_txt.text == "0") {
_panel._speed_txt.text = "1";
} else if (Number(_panel._speed_txt.text) > 50) {
_panel._speed_txt.text = "50";
}
growthSpeed = Number(_panel._speed_txt.text);
_panel._speed_txt.backgroundColor = 16777215 /* 0xFFFFFF */;
if (_panel._tip.getDepth() > _panel._ok.getDepth()) {
_panel._tip.swapDepths(_panel._ok);
}
}
};
_panel._speed_txt.onChanged = function () {
_panel._speed_txt.backgroundColor = 16746632 /* 0xFF8888 */;
if (_panel._tip.getDepth() < _panel._ok.getDepth()) {
_panel._tip.swapDepths(_panel._ok);
}
};
_panel._speed_txt.onSetFocus = function () {
if (_panel._tip.getDepth() < _panel._ok.getDepth()) {
_panel._tip.swapDepths(_panel._ok);
}
_panel._speed_txt.backgroundColor = 16746632 /* 0xFF8888 */;
};
_panel._speed_txt.onKillFocus = function () {
kDown.onKeyDown(true);
};
var tF = new TextFormat();
tF.size = 12;
_panel._ok._txt.setNewTextFormat(tF);
_panel._ok._txt.text = "ok";
_panel._ok.onPress = function () {
kDown.onKeyDown(true);
};
typhlosion.onMouseDown = function () {
if (_panel._y > 550) {
typhlosion.startDrag();
}
};
typhlosion.onMouseUp = function () {
typhlosion.stopDrag();
};
var phraseList = new Array();
phraseList.push("Ahh... you look interesting, why don't you stick around for a while to keep me company?");
phraseList.push("My body... Am I getting heavier?");
phraseList.push("Ah, it's you! I'm pregnant, right?");
phraseList.push("You're so unusual, I never heard of anyone who could do this before.\n What more can you do?");
phraseList.push("Uhhh.... How big are you planning to make me? ");
phraseList.push("You think I look cute when I'm pregnant, isn't that right?\n \nThen go on, make me bigger! Ah, I love the attention.");
phraseList.push("Could you put me back to normal now?");
phraseList.push("That's much better, I don't want to be pregnant anymore.");
phraseList.push("Great, that was fun. Don't forget put me back to normal before you leave.");
phraseList[9] = "What do you think you're trying to do?";
phraseList[10] = "Don't touch me there! ";
phraseList[11] = "Ah, I knew you wanted to touch my belly.";
phraseList[12] = "Ouch! Why are you poking me?";
typhlosion.speech_mc._visible = false;
writePhrase(0);
typhlosion.breast1.onPress = function () {
if (condition == "") {
writePhrase(10);
condition = "breastpoke";
state = "special";
typhlosion.head.gotoAndPlay("open");
typhlosion.eye.gotoAndPlay("small");
_root.onEnterFrame = function () {
if (!typhlosion.speech_mc._visible) {
condition = "";
typhlosion.speech_mc.toSay = 0;
setState(curState.state);
delete _root.onEnterFrame;
}
};
}
};
typhlosion.breast2.onPress = typhlosion.breast1.onPress;
var rub = 1;
typhlosion.breast1.onRollOver = function () {
if ((condition == "") && (!(rub % 5))) {
writePhrase(9);
condition = "breastrub";
state = "special";
typhlosion.head.gotoAndPlay("closed");
typhlosion.eye.gotoAndPlay("small");
_root.onEnterFrame = function () {
if (!typhlosion.speech_mc._visible) {
condition = "";
typhlosion.speech_mc.toSay = 0;
setState(curState.state);
delete _root.onEnterFrame;
}
};
}
rub++;
};
typhlosion.breast2.onRollOver = typhlosion.breast1.onRollOver;
typhlosion.body.onRollOver = function () {
if ((((condition == "") && (pregnancy > 50)) && (typhlosion.body._xmouse > 200)) && (!(rub % 5))) {
writePhrase(11);
condition = "bellyrub";
state = "special";
typhlosion.head.gotoAndPlay("happy");
typhlosion.eye.gotoAndPlay("open");
_root.onEnterFrame = function () {
if (!typhlosion.speech_mc._visible) {
condition = "";
typhlosion.speech_mc.toSay = 0;
setState(curState.state);
delete _root.onEnterFrame;
}
};
}
rub++;
};
typhlosion.body.onPress = function () {
if (((condition == "") && (pregnancy > 50)) && (typhlosion.body._xmouse > 200)) {
writePhrase(12);
condition = "bellypoke";
state = "special";
typhlosion.head.gotoAndPlay("open");
typhlosion.eye.gotoAndPlay("medium");
_root.onEnterFrame = function () {
if (!typhlosion.speech_mc._visible) {
condition = "";
typhlosion.speech_mc.toSay = 0;
setState(curState.state);
delete _root.onEnterFrame;
}
};
}
};
Symbol 12 MovieClip Frame 1
_currentlabel = "down";
Symbol 12 MovieClip Frame 2
gotoAndPlay(_currentlabel);
Symbol 12 MovieClip Frame 5
_currentlabel = "belly";
Symbol 12 MovieClip Frame 10
_currentlabel = "belly";
Symbol 12 MovieClip Frame 11
gotoAndPlay(_currentlabel);
Symbol 12 MovieClip Frame 15
_currentlabel = "down";
Symbol 30 MovieClip Frame 1
_currentlabel = "smile";
Symbol 30 MovieClip Frame 2
gotoAndPlay(_currentlabel);
Symbol 30 MovieClip Frame 3
_currentlabel = "closed";
Symbol 30 MovieClip Frame 4
gotoAndPlay(_currentlabel);
Symbol 30 MovieClip Frame 5
_currentlabel = "happy";
Symbol 30 MovieClip Frame 6
gotoAndPlay(_currentlabel);
Symbol 30 MovieClip Frame 7
_currentlabel = "open";
Symbol 30 MovieClip Frame 8
gotoAndPlay(_currentlabel);
Symbol 41 MovieClip Frame 1
_currentlabel = "open";
Symbol 41 MovieClip Frame 2
gotoAndPlay(_currentlabel);
Symbol 41 MovieClip Frame 3
_currentlabel = "closed";
Symbol 41 MovieClip Frame 4
gotoAndPlay(_currentlabel);
Symbol 41 MovieClip Frame 5
_currentlabel = "small";
Symbol 41 MovieClip Frame 6
gotoAndPlay(_currentlabel);
Symbol 41 MovieClip Frame 7
_currentlabel = "blink";
Symbol 41 MovieClip Frame 11
_currentlabel = "endblink";
Symbol 41 MovieClip Frame 12
gotoAndPlay(_currentlabel);
Symbol 41 MovieClip Frame 13
_currentlabel = "medium";
Symbol 41 MovieClip Frame 14
gotoAndPlay(_currentlabel);
Symbol 61 MovieClip Frame 1
_currentlabel = "down";
Symbol 61 MovieClip Frame 2
gotoAndPlay(_currentlabel);
Symbol 61 MovieClip Frame 5
_currentlabel = "belly";
Symbol 61 MovieClip Frame 10
_currentlabel = "belly";
Symbol 61 MovieClip Frame 11
gotoAndPlay(_currentlabel);
Symbol 61 MovieClip Frame 15
_currentlabel = "down";
Symbol 80 MovieClip Frame 1
stop();