Frame 1
function grow() {
if (size < scyther.front._totalframes) {
size++;
scyther.front.gotoAndStop(size);
scyther.body.gotoAndStop(size);
scyther.breasts.gotoAndStop(size);
scyther.frontleg._x = leg1X - ((size * 20) / 400);
scyther.backleg._x = leg2X + ((size * 10) / 400);
scyther.frontleg._rotation = (size * 10) / 400;
} else {
growth = 0;
}
}
function revert() {
if (size > 1) {
size--;
scyther.front.gotoAndStop(size);
scyther.body.gotoAndStop(size);
scyther.breasts.gotoAndStop(size);
scyther.frontleg._x = leg1X - ((size * 20) / 400);
scyther.backleg._x = leg2X + ((size * 10) / 400);
scyther.frontleg._rotation = (size * 10) / 400;
} 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];
}
scyther.eye.gotoAndPlay(curState.eye);
scyther.mouth.gotoAndPlay(curState.mouth);
if (frontarmList[curState.frontarm][scyther.frontarm._currentlabel]) {
scyther.frontarm.gotoAndPlay(frontarmList[curState.frontarm][scyther.frontarm._currentlabel]);
}
if ((curState.backarm == "up") && ((scyther.backarm._currentlabel == "down") || (scyther.backarm._currentlabel == "movedown"))) {
scyther.backarm.gotoAndPlay("moveup");
} else if ((curState.backarm == "down") && ((scyther.backarm._currentlabel == "up") || (scyther.backarm._currentlabel == "moveup"))) {
scyther.backarm.gotoAndPlay("movedown");
} else {
scyther.backarm.gotoAndPlay(curState.backarm);
}
scyther.eye.pupil._x = curState.pX + pX;
scyther.eye.pupil._y = curState.pY + pY;
canBlink = curState.canBlink;
}
}
function speak(n) {
if (scyther.speech._visible && (speech[n])) {
storage.push(n);
return(undefined);
}
if ((scyther.speech._currentframe == 1) && (speech[n])) {
scyther.speech.counter = 0;
scyther.speech.phrase = n;
scyther.speech.wait = 30;
scyther.speech._txt.text = "";
scyther.speech.gotoAndPlay(1);
scyther.speech._visible = true;
scyther.speech.onEnterFrame = function () {
if (this._currentframe == 1) {
this.play();
}
if (this._currentframe == 5) {
if (this.counter < speech[this.phrase].length) {
this._txt.text = this._txt.text + speech[this.phrase].charAt(this.counter++);
this._txt.text = this._txt.text + speech[this.phrase].charAt(this.counter++);
} else if (this.wait > 0) {
this.wait--;
} else {
this._txt.text = "";
this.play();
}
}
if (this._currentframe == this._totalframes) {
delete this.onEnterFrame;
speech[this.phrase] = "";
this._visible = false;
this.gotoAndStop(1);
if ((this.phrase = storage.pop())) {
speak(this.phrase);
}
}
};
}
}
_level0.bgColor = 39168;
_level0.flashWidth = 800;
_level0.flashHeight = 600;
var state = "";
var condition = "";
var states = new Array();
var size = 1;
var growth = 0;
var curState = new Object();
var canBlink = false;
var blinking = false;
var pX = scyther.eye.pupil._x;
var pY = scyther.eye.pupil._y;
var leg1X = scyther.frontleg._x;
var leg2X = scyther.backleg._x;
var speech = ["Ah, a visitor! Don't you think I'm pretty?", "Hee, hee! That's a weird power you have over me, show me what you can do.", "Ooh, look at me! Do you really think I look good this big?", "I'm getting even bigger! Yay! Push that button!", "Uh... maybe this is a bit too big...", "Ee... Enough now-mmmpphh, uwmmmph!!!", "Gmph-ff, unnghh, Help!", "Wow! You're making me so big. Is it safe?", "Hey! I don't need to be smaller.", "This size is comfortable, you can stop it now.", "Mmff! Yes, a bit smaller please!", "Ooh! Hee, hee. You like me?", "Ah, my belly. It's big, isn't it?"];
var obj = new Object();
var storage = new Array();
var frontarmList = new Array();
scyther.front.stop();
scyther.body.stop();
scyther.breasts.stop();
scyther.speech._visible = false;
frontarmList.down = new Array();
frontarmList.down.up = (frontarmList.down.moveup = "movedown");
frontarmList.down.onbelly = (frontarmList.down.bellyrub = (frontarmList.down.tobelly = (frontarmList.down.tobellyrub = "frombelly")));
frontarmList.down.frombelly2 = "down";
frontarmList.up = new Array();
frontarmList.up.down = (frontarmList.up.movedown = (frontarmList.up.movedown2 = (frontarmList.up.movedown3 = (frontarmList.up.frombelly = "moveup"))));
frontarmList.up.bellyrub = (frontarmList.up.onbelly = (frontarmList.up.tobelly = (frontarmList.up.tobellyrub = "frombelly2")));
frontarmList.onbelly = new Array();
frontarmList.onbelly.down = (frontarmList.onbelly.movedown = (frontarmList.onbelly.movedown3 = (frontarmList.onbelly.frombelly = (frontarmList.onbelly.frombelly2 = "tobelly"))));
frontarmList.onbelly.up = (frontarmList.onbelly.moveup = "movedown2");
frontarmList.bellyrub = new Array();
frontarmList.bellyrub.down = (frontarmList.bellyrub.movedown = (frontarmList.bellyrub.movedown3 = (frontarmList.bellyrub.frombelly = (frontarmList.bellyrub.frombelly2 = "tobellyrub"))));
frontarmList.bellyrub.up = (frontarmList.bellyrub.moveup = "movedown3");
frontarmList.wave = new Array();
frontarmList.wave.up = (frontarmList.wave.down = "wave");
scyther.frontarm._currentlabel = "down";
states.resting = {eye:"open", mouth:"closed", frontarm:"down", backarm:"down", pX:0, pY:0, canBlink:true};
states.laugh = {eye:"happy", mouth:"laugh", frontarm:"onbelly", backarm:"down", pX:0, pY:0, canBlink:false};
states.bigger = {eye:"open", mouth:"closed", frontarm:"up", backarm:"up", pX:5, pY:5, canBlink:true};
states.relaxed = {eye:"small", mouth:"closed", frontarm:"bellyrub", backarm:"down", pX:0, pY:0, canBlink:true};
states.happy = {eye:"happy", mouth:"happy", frontarm:"up", backarm:"up", pX:0, pY:0, canBlink:false};
states.worried = {eye:"sad", mouth:"open", frontarm:"down", backarm:"down", pX:0, pY:0, canBlink:true};
states.unhappy = {eye:"shut", mouth:"sad", frontarm:"wave", backarm:"wave", pX:0, pY:0, canBlink:false};
states.revert = {eye:"small", mouth:"sad", frontarm:"bellyrub", backarm:"down", pX:0, pY:0, canBlink:true};
states.fine = {eye:"open", mouth:"closed", frontarm:"down", backarm:"up", pX:0, pY:0, canBlink:false};
states.almost = {eye:"small", mouth:"open", frontarm:"down", backarm:"down", pX:0, pY:0, canBlink:false};
states.breastpoke = {eye:"small", mouth:"happy", frontarm:"tobelly", backarm:"up", pX:-5, pY:5, canBlink:false};
states.bellypoke1 = {eye:"medium", mouth:"laugh", frontarm:"bellyrub", backarm:"down", pX:10, pY:5, canBlink:false};
states.bellypoke2 = {eye:"sad", mouth:"closed", frontarm:"bellyrub", backarm:"up", pX:10, pY:5, canBlink:false};
setState("resting");
speak(0);
scyther.onEnterFrame = function () {
if (canBlink && (Math.random() > 0.98)) {
scyther.eye.gotoAndPlay("blink");
if (Math.random() > 0.75) {
scyther.eye.gotoAndPlay("doubleblink");
}
scyther.eye.pupil._x = curState.pX + pX;
scyther.eye.pupil._y = curState.pY + pY;
blinking = true;
}
if (Math.random() > 0.99) {
scyther.wing1.play();
scyther.wing2.play();
}
if (blinking && (scyther.eye._currentlabel == "endblink")) {
scyther.eye.gotoAndPlay(curState.eye);
scyther.eye.pupil._x = curState.pX + pX;
scyther.eye.pupil._y = curState.pY + pY;
blinking = false;
}
if (growth == 1) {
grow();
switch (true) {
case size < 20 :
break;
case size < 100 :
setState("laugh");
speak(1);
break;
case size < 200 :
setState("bigger");
speak(7);
break;
case size == 200 :
growth = 0;
setState("relaxed");
speak(2);
break;
case size < 250 :
setState("happy");
speak(3);
break;
case size < 310 :
speak(4);
setState("worried");
break;
case size < 400 :
speak(5);
setState("unhappy");
break;
case size == 400 :
growth = 0;
setState("unhappy");
speak(6);
}
} else if (growth == -1) {
revert();
switch (true) {
case size == 1 :
setState("resting");
break;
case size < 200 :
if (size > 100) {
speak(8);
}
setState("almost");
break;
case size < 300 :
speak(9);
setState("fine");
break;
case size < 400 :
speak(10);
setState("revert");
}
}
if ((size == 200) && (growth != -1)) {
setState("relaxed");
} else if (size == 400) {
setState("unhappy");
}
};
var reset = false;
_panel._plus._txt.text = "+";
_panel._minus._txt.text = "-";
_panel._expand._txt.text = "Expand";
_panel._revert._txt.text = "Revert";
_panel._info.text = "Anthro Scyther expansion. Drawn and programmed by Doom the wolf (http://doom-the-wolf.deviantart.com). Click 'Expand' or 'Revert' to change her size. 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 (size < 200) {
_panel._expand._txt.text = "Expand";
} else if (size < 400) {
_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 () {
scyther._xscale = (scyther._yscale = scyther._xscale + 2);
};
};
_panel._minus.onPress = function () {
_panel._minus.onEnterFrame = function () {
if (scyther._xscale > 2) {
scyther._xscale = (scyther._yscale = scyther._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 (size >= scyther.front._totalframes) {
growth = 0;
reset = true;
} else {
growth = 1;
}
};
_panel._expand.onRelease = function () {
if (reset) {
growth = 0;
size = 1;
scyther.body.gotoAndStop(1);
scyther.front.gotoAndStop(1);
scyther.breasts.gotoAndStop(1);
scyther.frontleg._x = leg1X;
scyther.backleg._x = leg2X;
scyther.frontleg._rotation = 0;
condition = "";
delete _root.onEnterFrame;
setState("resting");
reset = false;
}
};
_panel._expand.onReleaseOutside = function () {
reset = false;
};
_panel._revert.onPress = function () {
growth = -1;
};
scyther.onMouseDown = function () {
if (_panel._y > 550) {
scyther.startDrag();
}
};
scyther.onMouseUp = function () {
scyther.stopDrag();
};
scyther.front.onPress = function () {
if ((((condition == "") && (speech[12])) && (scyther.speech.phrase <= 10)) && (size > 20)) {
scyther.speech._visible = false;
scyther.speech._txt.text = "";
scyther.speech.gotoAndStop(1);
speech[scyther.speech.phrase] = "";
delete scyther.speech.phrase;
var _local3 = state;
if (size < 300) {
setState("bellypoke1");
condition = "bellypoke1";
speak(12);
} else {
setState("bellypoke2");
condition = "bellypoke2";
speech[12] = "Ah! Enough now... My big belly is too sensitive.";
speak(12);
}
curState.state = _local3;
scyther.front.onEnterFrame = function () {
if (!speech[12]) {
speech[12] = "Are you playing with me?";
delete this.onEnterFrame;
}
};
timer = 30;
_root.onEnterFrame = timeout_fn;
}
};
scyther.breasts.onPress = function () {
trace(scyther.speech.phrase);
if ((condition == "") && (scyther.speech.phrase <= 10)) {
trace(scyther.speech.phrase);
scyther.speech._visible = false;
scyther.speech._txt.text = "";
scyther.speech.gotoAndStop(1);
speech[scyther.speech.phrase] = "";
delete scyther.speech.phrase;
var _local3 = state;
setState("breastpoke");
condition = "breastpoke";
curState.state = _local3;
speak(11);
if (size > 300) {
speech[11] = "Uhh! Hey, could you make me a bit smaller?";
}
scyther.breasts.onEnterFrame = function () {
if (!speech[11]) {
speech[11] = "Mmm... You're persistent too.";
delete this.onEnterFrame;
}
};
timer = 30;
_root.onEnterFrame = timeout_fn;
}
};
Symbol 7 MovieClip [speech] Frame 1
stop();
Symbol 7 MovieClip [speech] Frame 5
stop();
Symbol 14 MovieClip Frame 1
stop();
Symbol 20 MovieClip Frame 1
stop();
Symbol 30 MovieClip Frame 1
_currentlabel = "down";
Symbol 30 MovieClip Frame 2
gotoAndPlay(_currentlabel);
Symbol 30 MovieClip Frame 3
_currentlabel = "moveup";
Symbol 30 MovieClip Frame 8
_currentlabel = "up";
Symbol 30 MovieClip Frame 9
gotoAndPlay(_currentlabel);
Symbol 30 MovieClip Frame 10
_currentlabel = "movedown";
Symbol 30 MovieClip Frame 14
gotoAndPlay ("down");
Symbol 30 MovieClip Frame 20
_currentlabel = "wave";
Symbol 30 MovieClip Frame 44
gotoAndPlay ("down");
Symbol 50 MovieClip Frame 1
_currentlabel = "closed";
Symbol 50 MovieClip Frame 2
gotoAndPlay(_currentlabel);
Symbol 50 MovieClip Frame 3
_currentlabel = "laugh";
Symbol 50 MovieClip Frame 30
gotoAndPlay(_currentlabel);
Symbol 50 MovieClip Frame 32
_currentlabel = "happy";
Symbol 50 MovieClip Frame 33
gotoAndPlay(_currentlabel);
Symbol 50 MovieClip Frame 34
_currentlabel = "open";
Symbol 50 MovieClip Frame 35
gotoAndPlay(_currentlabel);
Symbol 50 MovieClip Frame 36
_currentlabel = "sad";
Symbol 50 MovieClip Frame 37
gotoAndPlay(_currentlabel);
Symbol 62 MovieClip Frame 1
_currentlabel = "open";
Symbol 62 MovieClip Frame 2
gotoAndPlay(_currentlabel);
Symbol 62 MovieClip Frame 3
_currentlabel = "closed";
Symbol 62 MovieClip Frame 4
gotoAndPlay(_currentlabel);
Symbol 62 MovieClip Frame 5
_currentlabel = "small";
Symbol 62 MovieClip Frame 6
gotoAndPlay(_currentlabel);
Symbol 62 MovieClip Frame 7
_currentlabel = "blink";
Symbol 62 MovieClip Frame 11
_currentlabel = "endblink";
Symbol 62 MovieClip Frame 12
gotoAndPlay(_currentlabel);
Symbol 62 MovieClip Frame 15
_currentlabel = "doubleblink";
Symbol 62 MovieClip Frame 25
_currentlabel = "endblink";
Symbol 62 MovieClip Frame 26
gotoAndPlay(_currentlabel);
Symbol 62 MovieClip Frame 27
_currentlabel = "happy";
Symbol 62 MovieClip Frame 28
gotoAndPlay(_currentlabel);
Symbol 62 MovieClip Frame 29
_currentlabel = "shut";
Symbol 62 MovieClip Frame 30
gotoAndPlay(_currentlabel);
Symbol 62 MovieClip Frame 31
_currentlabel = "sad";
Symbol 62 MovieClip Frame 32
gotoAndPlay(_currentlabel);
Symbol 62 MovieClip Frame 33
_currentlabel = "medium";
Symbol 62 MovieClip Frame 34
gotoAndPlay(_currentlabel);
Symbol 140 MovieClip Frame 1
_currentlabel = "down";
Symbol 140 MovieClip Frame 2
gotoAndPlay(_currentlabel);
Symbol 140 MovieClip Frame 3
_currentlabel = "moveup";
Symbol 140 MovieClip Frame 8
_currentlabel = "up";
Symbol 140 MovieClip Frame 9
gotoAndPlay(_currentlabel);
Symbol 140 MovieClip Frame 10
_currentlabel = "movedown";
Symbol 140 MovieClip Frame 14
gotoAndPlay ("down");
Symbol 140 MovieClip Frame 15
_currentlabel = "tobelly";
Symbol 140 MovieClip Frame 21
_currentlabel = "onbelly";
Symbol 140 MovieClip Frame 22
gotoAndPlay(_currentlabel);
Symbol 140 MovieClip Frame 23
_currentlabel = "frombelly";
Symbol 140 MovieClip Frame 28
gotoAndPlay ("down");
Symbol 140 MovieClip Frame 29
_currentlabel = "frombelly2";
Symbol 140 MovieClip Frame 34
gotoAndPlay ("moveup");
Symbol 140 MovieClip Frame 36
_currentlabel = "movedown2";
Symbol 140 MovieClip Frame 40
gotoAndPlay ("tobelly");
Symbol 140 MovieClip Frame 45
_currentlabel = "tobellyrub";
Symbol 140 MovieClip Frame 50
gotoAndPlay ("bellyrub");
Symbol 140 MovieClip Frame 54
_currentlabel = "bellyrub";
Symbol 140 MovieClip Frame 100
gotoAndPlay ("onbelly");
Symbol 140 MovieClip Frame 102
_currentlabel = "wave";
Symbol 140 MovieClip Frame 126
gotoAndPlay ("down");
Symbol 140 MovieClip Frame 128
_currentlabel = "movedown3";
Symbol 140 MovieClip Frame 132
gotoAndPlay ("tobellyrub");
Symbol 149 MovieClip Frame 1
stop();