Instance of Symbol 200 MovieClip in Frame 1
on (release) {
getURL ("http://www.funcorder.com", "_self");
}
Frame 66
loaded = this.getBytesLoaded();
total = this.getBytesTotal();
percent = int((loaded / total) * 100) + " %";
setProperty("bar", _xscale , graph);
graph = int((loaded / total) * 100);
if (loaded >= total) {
gotoAndPlay ("end");
}
Frame 67
stop();
gotoAndPlay ("loop");
Frame 68
Frame 69
stop();
var openSound = new Sound(_root);
openSound.attachSound("opening.wav");
openSound.start();
var levelState = [2, 1, 1, 1, 1, 1, 1];
var scoreArr = [0, 0, 0, 0, 0, 0, 0];
var hitArr = [0, 0, 0, 0, 0, 0, 0];
var shootArr = [0, 0, 0, 0, 0, 0, 0];
var userName = "";
var scoreNum = 0;
var shootNum = 0;
var hitNum = 0;
var life = 3;
startBtn.onRelease = function () {
openSound.stop();
_root.gotoAndStop("selStg");
};
playMore.onRelease = function () {
getURL ("http://www.funcorder.com", "_blank");
};
Instance of Symbol 200 MovieClip in Frame 69
on (release) {
getURL ("http://www.funcorder.com", "_self");
}
Instance of Symbol 254 MovieClip in Frame 69
on (rollOver) {
_root.help_box._visible = 1;
}
on (rollOut) {
_root.help_box._visible = 0;
}
Instance of Symbol 274 MovieClip "help_box" in Frame 69
onClipEvent (load) {
this._visible = 0;
}
Frame 70
stop();
var level;
if ((level == undefined) || (level == "")) {
level = 4;
}
ShootGame.main(_root, level);
Frame 71
stop();
_root.button.onRelease = function () {
_root.gotoAndStop("startGame");
_root.scoreArr[_root.level - 1] = _root.scoreNum;
_root.shootArr[_root.level - 1] = _root.shootNum;
_root.hitArr[_root.level - 1] = _root.hitNum;
_root.level++;
if (_root.level > 7) {
_root.level = 1;
}
};
Instance of Symbol 200 MovieClip in Frame 71
on (release) {
getURL ("http://www.funcorder.com", "_self");
}
Frame 72
function gotoStage() {
var _local4 = this + "";
var _local3 = _local4.substr(_local4.lastIndexOf("_") + 1);
_root.gotoAndStop("startGame");
_root.level = _local3;
if (_local3 > 1) {
_root.scoreNum = _root.scoreArr[_root.level - 2];
_root.shootNum = _root.shootArr[_root.level - 2];
_root.hitNum = _root.hitArr[_root.level - 2];
} else {
_root.scoreNum = 0;
_root.shootNum = 0;
_root.hitNum = 0;
}
}
var btnState = levelState;
var i = 0;
while (i < btnState.length) {
_root["selStg_" + (i + 1)].gotoAndStop(btnState[i]);
if (btnState[i] == 2) {
_root["selStg_" + (i + 1)].onRelease = gotoStage;
}
i++;
}
Instance of Symbol 200 MovieClip in Frame 72
on (release) {
getURL ("http://www.funcorder.com", "_self");
}
Instance of Symbol 200 MovieClip in Frame 73
on (release) {
getURL ("http://www.funcorder.com", "_self");
}
Frame 292
stop();
btn_next.onPress = function () {
_root.gotoAndStop("startGame");
_root.level = 4;
};
Instance of Symbol 200 MovieClip in Frame 293
on (release) {
getURL ("http://www.funcorder.com", "_self");
}
Frame 552
stop();
btn_next.onPress = function () {
_root.gotoAndPlay("finish");
};
Frame 553
function sendAndLoad_data_fun() {
if (txtUsername.text == "") {
tipTxt.text = "Please input your name.";
return(undefined);
}
var _local2 = new LoadVars();
_local2.username = txtUsername.text;
_local2.score = _root.scoreNum;
_local2.gameid = gameid;
_root.userName = _local2.username;
trace(_local2.username);
trace(_local2.score);
var _local3 = new LoadVars();
_local3.onLoad = function (success) {
_root.gotoAndStop("highscore");
};
_local2.sendAndLoad(link_b_url, _local3, "POST");
}
stop();
_root.playAgain.onRelease = function () {
_root.scoreNum = (_root.hitNum = 0);
_root.rating.text = "0%";
_root.life = 3;
_root.gotoAndStop("selStg");
};
playMore.onRelease = function () {
getURL ("http://www.funcorder.com", "_blank");
};
submit.onRelease = function () {
sendAndLoad_data_fun();
};
var score_txt = 0;
var gameid = "game008";
var user_txt;
var highscore_act;
var link_a_url = ((("http://www.funcorder.com/getXML.php?gameid=" + gameid) + "&rand=") + Math.random());
var link_b_url = "http://www.funcorder.com/ins_post.php";
_root.scoreNum = int(((_root.scoreNum * _root.hitNum) / _root.shootNum) * 1000);
trace((((_root.scoreNum + "==") + _root.hitNum) + "==") + _root.shootNum);
txtScore.text = _root.scoreNum;
txtUsername.onSetFocus = function (oldFocus) {
tipTxt.text = "";
};
Instance of Symbol 200 MovieClip in Frame 553
on (release) {
getURL ("http://www.funcorder.com", "_self");
}
Frame 554
function sendAndLoad_data_fun() {
if (txtUsername.text == "") {
tipTxt.text = "Please input your name.";
return(undefined);
}
var _local2 = new LoadVars();
_local2.username = txtUsername.text;
_local2.score = _root.scoreNum;
_local2.gameid = gameid;
_root.userName = _local2.username;
trace(_local2.username);
trace(_local2.score);
var _local3 = new LoadVars();
_local3.onLoad = function (success) {
_root.gotoAndStop("highscore");
};
_local2.sendAndLoad(link_b_url, _local3, "POST");
}
stop();
_root.playAgain.onRelease = function () {
_root.scoreNum = (_root.hitNum = 0);
_root.rating.text = "0%";
_root.life = 3;
_root.levelState = [2, 2, 2, 2, 2, 2, 2];
_root.gotoAndStop("selStg");
};
playMore.onRelease = function () {
getURL ("http://www.funcorder.com", "_blank");
};
submit.onRelease = function () {
sendAndLoad_data_fun();
};
var score_txt = 0;
var gameid = "game008";
var user_txt;
var highscore_act;
var link_a_url = ((("http://www.funcorder.com/getXML.php?gameid=" + gameid) + "&rand=") + Math.random());
var link_b_url = "http://www.funcorder.com/ins_post.php";
_root.scoreNum = int(((_root.scoreNum * _root.hitNum) / _root.shootNum) * 1000);
trace((((_root.scoreNum + "==") + _root.hitNum) + "==") + _root.shootNum);
txtScore.text = _root.scoreNum;
txtUsername.onSetFocus = function (oldFocus) {
tipTxt.text = "";
};
Instance of Symbol 200 MovieClip in Frame 554
on (release) {
getURL ("http://www.funcorder.com", "_self");
}
Frame 603
function rank_ini() {
var _local4 = 1;
if (name_arry.length < 9) {
_local4 = name_arry.length;
} else {
_local4 = 9;
}
var _local3 = 0;
while (_local3 < _local4) {
this["text_co_mc" + (_local3 + 1)]._y = this.text_co_mc._y + (40 * _local3);
this["text_co_mc" + (_local3 + 1)].list_txt.text = _root.score_arry[_local3];
this["text_co_mc" + (_local3 + 1)].v = _local3 + 1;
this["text_id_mc" + (_local3 + 1)]._y = this.text_id_mc._y + (40 * _local3);
this["text_id_mc" + (_local3 + 1)].list_txt.text = _root.name_arry[_local3];
this["text_id_mc" + (_local3 + 1)].v = _local3 + 1;
if (this["text_id_mc" + (_local3 + 1)].list_txt.text == yourname_text) {
this["text_id_mc" + (_local3 + 1)].gotoAndStop(2);
}
_local3++;
}
_root.scoreNum = (_root.hitNum = 0);
_root.rating.text = "0%";
_root.life = 3;
}
_root.playAgain.onRelease = function () {
_root.gotoAndStop("selStg");
_root.levelState = [2, 2, 2, 2, 2, 2, 2];
};
playMore.onRelease = function () {
getURL ("http://www.funcorder.com", "_blank");
};
var gameid = "game008";
var user_txt;
var yourname_text = _root.userName;
txtUsername.text = _root.userName;
txtScore.text = _root.scoreNum;
var highscore_act;
var link_a_url = ((("http://www.funcorder.com/getXML.php?gameid=" + gameid) + "&rand=") + Math.random());
var link_b_url = "http://www.funcorder.com/ins_post.php";
var name_arry = new Array();
var score_arry = new Array();
var myXML = new XML();
myXML.ignoreWhite = true;
myXML.onLoad = function (success) {
trace("load xml");
var _local3 = this.firstChild;
var _local2 = 0;
while (_local2 < _local3.childNodes.length) {
name_arry[_local2] = _local3.childNodes[_local2].attributes.name;
score_arry[_local2] = _local3.childNodes[_local2].attributes.score;
trace("score: " + score_arry[_local2]);
_local2++;
}
rank_ini();
};
myXML.load(link_a_url);
Instance of Symbol 200 MovieClip in Frame 603
on (release) {
getURL ("http://www.funcorder.com", "_self");
}
Symbol 16 MovieClip [target_blooding7] Frame 1
stop();
this.removeMovieClip();
Symbol 17 MovieClip [target_blooding4] Frame 1
stop();
this.removeMovieClip();
Symbol 18 MovieClip [target_blooding3] Frame 1
stop();
this.removeMovieClip();
Symbol 27 MovieClip [target_blooding2] Frame 13
stop();
this.removeMovieClip();
Symbol 28 MovieClip [target_blooding6] Frame 1
stop();
this.removeMovieClip();
Symbol 61 MovieClip Frame 9
stop();
this.removeMovieClip();
Symbol 62 MovieClip [target_6] Frame 33
gotoAndPlay (1);
Symbol 93 MovieClip Frame 22
stop();
this.removeMovieClip();
Symbol 94 MovieClip [target_7] Frame 16
gotoAndPlay (1);
Symbol 99 MovieClip [target_blooding5] Frame 5
stop();
this.removeMovieClip();
Symbol 117 MovieClip [target_5] Frame 18
stop();
Symbol 126 MovieClip Frame 12
stop();
this.removeMovieClip();
Symbol 127 MovieClip [target_3] Frame 5
gotoAndPlay (1);
Symbol 138 MovieClip [target_2] Frame 19
gotoAndPlay (1);
Symbol 168 MovieClip [target_1] Frame 13
gotoAndPlay (1);
Symbol 168 MovieClip [target_1] Frame 29
gotoAndPlay (15);
Symbol 179 MovieClip [arrow] Frame 1
stop();
Symbol 179 MovieClip [arrow] Frame 2
stop();
Symbol 179 MovieClip [arrow] Frame 3
stop();
Symbol 179 MovieClip [arrow] Frame 4
stop();
Symbol 179 MovieClip [arrow] Frame 5
stop();
Symbol 179 MovieClip [arrow] Frame 6
stop();
Symbol 179 MovieClip [arrow] Frame 7
stop();
Symbol 189 MovieClip [target_blooding1] Frame 17
stop();
this.removeMovieClip();
Symbol 685 MovieClip [__Packages.ShootGame] Frame 0
class ShootGame
{
var score, targetScore, level, shootNum, hitNum, life, levelScoreArr, readyArrowMc, man, engine, arrow, manTarget, shootSoundMc, shootSound, hitSoundMc1, hitSound1, hitManSoundMc, hitManSound, arrowSoundMc, arrowSound, flootLine, mouseEvent, _p, _visible, bigTarget, isCreatBigBird, intervalId;
function ShootGame (lev) {
score = _root.scoreNum;
targetScore = 10;
level = lev;
shootNum = _root.shootNum;
hitNum = _root.hitNum;
life = _root.life;
var _local3 = 3;
while (_local3 >= life) {
_root["life" + _local3]._visible = false;
_local3--;
}
_root.scord._visible = false;
_root.scord.text = score;
_root.extra._visible = false;
_root.bar2._visible = false;
var _local4 = int((hitNum / shootNum) * 10000);
_root.rating.text = (_local4 / 100) + "%";
_root.levelTxt.text = "LEVEL" + level;
levelScoreArr = [100, 100, 100, 100, 100, 100, 100];
readyArrowMc = _root.readyArrowMc;
man = _root.man;
engine = new org.cove.flade.DynamicsEngine();
engine.setDamping(1);
engine.setGravity(0, 0.7);
engine.setSurfaceBounce(0);
engine.setSurfaceFriction(0.1);
arrow = new Array();
setBg(level);
manTarget = new org.cove.flade.surfaces.RectangleTile(357, 460.5, 31, 70);
manTarget.isShowByDraw = false;
manTarget.isEffect = false;
manTarget.addEventListener("onContact", this);
manTarget._p = this;
engine.addSurface(manTarget);
shootSoundMc = _root.createEmptyMovieClip("shootSoundMc", _root.getNextHighestDepth());
shootSound = new Sound(_root);
shootSound.attachSound("shoot");
hitSoundMc1 = _root.createEmptyMovieClip("hitSoundMc1", _root.getNextHighestDepth());
hitSound1 = new Sound(_root);
hitManSoundMc = _root.createEmptyMovieClip("hitManSoundMc", _root.getNextHighestDepth());
hitManSound = new Sound(_root);
hitManSound.attachSound("hitManSound");
arrowSoundMc = _root.createEmptyMovieClip("arrowSoundMc", _root.getNextHighestDepth());
arrowSound = new Sound(_root);
arrowSound.attachSound("arrowSound");
flootLine = new org.cove.flade.surfaces.LineSurface(-100, 580, 1000, 580);
flootLine.setVisible(false);
flootLine.addEventListener("onContact", this);
engine.addSurface(flootLine);
engine.paintSurfaces();
mouseEvent = new CountByMouse(180);
mouseEvent.addEventListener("shoot", this);
mouseEvent.addEventListener("readyShoot", this);
_local3 = 1;
while (_local3 <= 7) {
this["hint_" + _local3] = _root.bg["hint_" + _local3];
this["hint_" + _local3].onRollOut = hintOut;
this["hint_" + _local3]._p = this;
_local3++;
}
}
static function main(mc, lev) {
var _local1 = lev;
if ((_local1 == undefined) && (_local1 == null)) {
_local1 = 1;
}
var s = new ShootGame(_local1);
mc.onEnterFrame = function () {
s.run();
};
}
function run() {
engine.timeStep();
engine.paintSurfaces();
engine.paintPrimitives();
engine.paintConstraints();
setArrow();
}
function hintOut() {
trace((this + "==") + _p);
_visible = 0;
_p.beginInterval(_p);
}
function setArrow() {
for (var _local3 in arrow) {
var _local2 = arrow[_local3]._p.curr.minusNew(arrow[_local3]._p.prev);
arrow[_local3]._rotation = _local2.__get__angle() + 90;
}
}
function readyShoot(evt) {
readyArrowMc._rotation = evt.data.angle - 90;
readyArrowMc._y = 437.5;
readyArrowMc._y = readyArrowMc._y + (evt.data.power / 20);
readyArrowMc.gotoAndStop(("Lv" + level) + "Arrow");
man.rightHand._rotation = evt.data.angle;
man.rightHand.clear();
man.rightHand.p3._x = -63;
man.rightHand.lineStyle(2, 15380033);
man.rightHand.p3._x = man.rightHand.p3._x + (evt.data.power / 5);
man.rightHand.moveTo(man.rightHand.p1._x, man.rightHand.p1._y);
man.rightHand.lineTo(man.rightHand.p3._x, man.rightHand.p3._y);
man.rightHand.lineTo(man.rightHand.p2._x, man.rightHand.p2._y);
var _local8 = new org.cove.flade.util.Vector(man.rightHand.p3._x, man.rightHand.p3._y);
var _local11 = new org.cove.flade.util.Vector(man.leftArm.p2._x, man.leftArm.p2._y);
man.rightHand.p3.localToGlobal(_local8);
man.leftArm.p2.localToGlobal(_local11);
var _local4 = 57.7;
var _local3 = 46.9;
var _local5 = _local8.minusNew(_local11);
var _local2 = _local5.__get__length();
var _local16 = ((Math.pow(_local2, 2) + Math.pow(_local3, 2)) - Math.pow(_local4, 2)) / ((2 * _local3) * _local2);
var _local12 = org.cove.flade.util.fOperate.acosD(_local16);
var _local7 = _local5.__get__angle() + _local12;
man.leftArm._rotation = _local7 + 90;
var _local15 = ((Math.pow(_local2, 2) + Math.pow(_local4, 2)) - Math.pow(_local3, 2)) / ((2 * _local4) * _local2);
var _local17 = org.cove.flade.util.fOperate.acosD(_local15);
var _local14 = _local5.__get__angle() - _local17;
man.leftHand._rotation = _local14 + 90;
var _local9 = new org.cove.flade.util.Vector(-12, -57);
var _local13 = new org.cove.flade.util.Vector(135, 62);
_local9.rotate(_local7 + 90);
var _local10 = _local9.plusNew(_local13);
man.leftHand._x = _local10.x;
man.leftHand._y = _local10.y;
}
function shoot(evt) {
var _local10 = readyArrowMc._x;
var _local9 = readyArrowMc._y;
var _local5 = readyArrowMc._rotation + 90;
var _local8 = (readyArrowMc._height / 2) * Math.cos(_local5 * (Math.PI/180));
var _local7 = (readyArrowMc._height / 2) * Math.sin(_local5 * (Math.PI/180));
man.rightHand.clear();
man.rightHand.p3._x = -63;
shootSound.start();
if (((level + "") == "5") || ((level + "") == "6")) {
arrowSound.start();
}
var _local3 = new org.cove.flade.primitives.CircleParticle(_local10 + _local8, _local9 + _local7, 5);
var _local4 = new org.cove.flade.util.Vector(1, 1);
_local4.__set__length(evt.data.power / 7);
_local4.__set__angle(180 + evt.data.angle);
_local3.__set__velocity(_local4);
_local3.isShowByDraw = false;
var _local6 = _local3.dmc.attachMovie("arrow", "arrowMc", _local3.dmc.getNextHighestDepth(), {_x:0, _y:0});
_local6._p = _local3;
arrow.push(_local6);
engine.addPrimitive(_local3);
man.gotoAndPlay("looseHand");
readyArrowMc.gotoAndPlay("looseHand");
_root.shootNum++;
}
function onContact(evt) {
if (evt.target == flootLine) {
var _local7 = evt.data.velocity;
for (var _local5 in arrow) {
if (evt.data.dmc.arrowMc == arrow[_local5]) {
arrow[_local5]._rotation = _local7.angle + 90;
arrow.splice(_local5, 1);
break;
}
}
evt.data.velocity = new org.cove.flade.util.Vector(0, 0);
} else if (evt.target == manTarget) {
var _local8 = evt.data.velocity;
if (((evt.data.velocity.angle > 0) && (_local8.__get__length() > 12)) && (evt.data.dmc.target == undefined)) {
evt.data.isActivated = false;
evt.data.velocity = new org.cove.flade.util.Vector(0, 0);
life--;
_root.life = life;
trace("life==" + _root.life);
_root["life" + life]._visible = false;
_root.man.gotoAndPlay("shooted");
hitManSound.start();
if (life <= 0) {
clearUp();
closeTime();
_root.levelState = [1, 1, 1, 1, 1, 1, 1];
var _local5 = 0;
while (_local5 < level) {
_root.levelState[_local5] = 2;
_local5++;
}
_root.gotoAndStop("gameOver");
}
}
} else {
var _local8 = evt.data.velocity;
if (_local8.__get__length() > 5) {
if (((evt.data.dmc.target == undefined) || ((evt.data.dmc.target != undefined) && (evt.data.velocity.angle < 0))) || ((((evt.data.dmc.target != undefined) && (evt.data.velocity.angle > 0)) && (evt.data.dmc.arrowMc._rotation > 90)) && (evt.data.dmc.arrowMc._rotation < 270))) {
var _local6 = evt.target;
_local6.setActiveState(false);
var _local14 = _local6.center.x;
var _local15 = evt.data.dmc._x;
var _local12 = _local6.center.y;
var _local13 = evt.data.dmc._y;
var _local11 = evt.data.dmc.attachMovie("target_" + level, "target", evt.data.dmc.getNextHighestDepth(), {_x:_local14 - _local15, _y:(_local12 - _local13) * 0.8});
_local11._xscale = _local6.dmc.target._xscale;
_local11.gotoAndStop("shooted");
_local6.dmc.removeMovieClip();
_local8.__set__length(_local8.__get__length() / 3);
var _local9 = evt.target.velocity;
_local9.__set__length(_local9.__get__length() / 2);
_local8.plus(_local9);
evt.data.velocity = _local8;
var _local4 = 0;
while (_local4 < arrow.length) {
if (arrow[_local4] == evt.data.dmc.arrowMc) {
arrow.splice(_local4, 1);
}
_local4++;
}
_root.hitNum++;
if (evt.data.velocity.angle < 0) {
_root.scoreNum = _root.scoreNum + _local6._p.targetScore;
} else {
_root.scoreNum = _root.scoreNum + (_local6._p.targetScore / 2);
}
var _local10 = _root.scoreNum - score;
if (_local10 < levelScoreArr[_local6._p.level - 1]) {
_root.bar.scoreBar._width = _root.bar.scoreBg._width * (_local10 / levelScoreArr[_local6._p.level - 1]);
} else {
_root.bar.scoreBar._width = _root.bar.scoreBg._width;
_root.bar.pass._visible = true;
_root.extra._visible = true;
_root.bar2._visible = true;
_root.bar2.scoreBar._width = _root.bar2.scoreBg._width * ((_local10 - levelScoreArr[_local6._p.level - 1]) / levelScoreArr[_local6._p.level - 1]);
}
_root.scord.text = _root.scoreNum;
hitSound1.attachSound("hitSound" + level);
hitSound1.start();
_root.attachMovie("target_blooding" + level, "blood" + evt.data, _root.getNextHighestDepth()(), {_x:_local6.center.x, _y:_local6.center.y});
if (evt.target == bigTarget) {
_root.scord.text = Number(_root.scord.text) + 500;
changeLevel(++level);
}
}
}
}
var _local18 = evt.data;
}
function createTarget() {
if (level == 1) {
var _local10 = Math.floor(Math.random() * 3) + 1;
var _local11 = new Array(_local10);
var _local4 = 0;
while (_local4 < _local10) {
var _local5;
var _local3 = Math.random() - 0.5;
if (_local3 >= 0) {
_local3 = 1;
_local5 = (Math.random() * 100) + 810;
} else {
_local3 = -1;
_local5 = -((Math.random() * 100) + 10);
}
var _local7 = (Math.random() * 100) + 50;
var _local2 = new org.cove.flade.surfaces.RectangleTile(_local5, _local7, 45, 16);
var _local6 = (Math.floor(Math.random() * 4) + 5) * (-_local3);
var _local8 = Math.floor(Math.random() * 2) + 0;
_local2.__set__velocity(new org.cove.flade.util.Vector(_local6, _local8));
var _local9 = _local2.dmc.attachMovie("target_" + level, "target", _local2.dmc.getNextHighestDepth());
if (_local3 > 0) {
_local9._xscale = -100;
}
_local2.isShowByDraw = false;
_local2.isEffect = false;
_local2.addEventListener("onContact", this);
_local2._p = this;
engine.addSurface(_local2);
_local11[_local4] = _local2;
_local4++;
}
} else if (level == 2) {
var _local10 = Math.floor(Math.random() * 3) + 1;
var _local11 = new Array(_local10);
var _local4 = 0;
while (_local4 < _local10) {
var _local3 = Math.random() - 0.5;
if (_local3 >= 0) {
_local3 = 1;
var _local5 = (Math.random() * 100) + 810;
} else {
_local3 = -1;
var _local5 = -((Math.random() * 100) + 10);
}
var _local7 = (Math.random() * 100) + 50;
var _local2 = new org.cove.flade.surfaces.RectangleTile(_local5, _local7, 40, 22);
var _local6 = (Math.floor(Math.random() * 5) + 6) * (-_local3);
var _local8 = Math.floor(Math.random() * 2) + 0;
_local2.__set__velocity(new org.cove.flade.util.Vector(_local6, _local8));
var _local9 = _local2.dmc.attachMovie("target_" + level, "target", _local2.dmc.getNextHighestDepth());
if (_local3 > 0) {
_local9._xscale = -100;
}
_local2.isShowByDraw = false;
_local2.isEffect = false;
_local2.addEventListener("onContact", this);
_local2._p = this;
engine.addSurface(_local2);
_local11[_local4] = _local2;
_local4++;
}
} else if (level == 3) {
var _local10 = Math.floor(Math.random() * 2) + 1;
var _local11 = new Array(_local10);
var _local4 = 0;
while (_local4 < _local10) {
var _local3 = Math.random() - 0.5;
if (_local3 >= 0) {
_local3 = 1;
var _local5 = (Math.random() * 100) + 810;
} else {
_local3 = -1;
var _local5 = -((Math.random() * 100) + 10);
}
var _local7 = (Math.random() * 100) + 50;
var _local2 = new org.cove.flade.surfaces.RectangleTile(_local5, _local7, 25, 25);
var _local6 = (Math.floor(Math.random() * 3) + 4) * (-_local3);
var _local8 = Math.floor(Math.random() * 2) + 0;
_local2.__set__velocity(new org.cove.flade.util.Vector(_local6, _local8));
var _local9 = _local2.dmc.attachMovie("target_" + level, "target", _local2.dmc.getNextHighestDepth());
if (_local3 > 0) {
_local9._xscale = -100;
}
_local2.isShowByDraw = false;
_local2.isEffect = false;
_local2.addEventListener("onContact", this);
_local2._p = this;
engine.addSurface(_local2);
_local11[_local4] = _local2;
_local4++;
}
} else if (level == 4) {
var _local10 = Math.floor(Math.random() * 2) + 1;
var _local11 = new Array(_local10);
var _local4 = 0;
while (_local4 < _local10) {
var _local3 = Math.random() - 0.5;
if (_local3 >= 0) {
_local3 = 1;
var _local5 = (Math.random() * 100) + 710;
} else {
_local3 = -1;
var _local5 = -(Math.random() * 0);
}
var _local7 = 200 - (Math.random() * 100);
var _local2 = new org.cove.flade.surfaces.RectangleTile(_local5, _local7, 60, 25);
var _local6 = (Math.floor(Math.random() * 1) + 17) * (-_local3);
var _local8 = (-Math.floor(Math.random() * 1)) - 10;
_local2.__set__velocity(new org.cove.flade.util.Vector(_local6, _local8));
var _local9 = _local2.dmc.attachMovie("target_" + level, "target", _local2.dmc.getNextHighestDepth());
if (_local3 > 0) {
_local9._xscale = -100;
}
_local2.isShowByDraw = false;
_local2.isEffect = false;
_local2.isAffectOnEng = true;
_local2.addEventListener("onContact", this);
_local2._p = this;
engine.addSurface(_local2);
_local11[_local4] = _local2;
_local4++;
}
} else if (level == 5) {
var _local10 = 1;
var _local11 = new Array(_local10);
var _local4 = 0;
while (_local4 < _local10) {
var _local3 = Math.random() - 0.5;
if (_local3 >= 0) {
_local3 = 1;
var _local5 = 690 - (Math.random() * 200);
} else {
_local3 = -1;
var _local5 = 10 + (Math.random() * 200);
}
var _local7 = (Math.random() * 100) + 50;
var _local2 = new org.cove.flade.surfaces.RectangleTile(_local5, _local7, 72, 32);
var _local6 = 0.5 * (-_local3);
var _local8 = 0;
_local2.__set__velocity(new org.cove.flade.util.Vector(_local6, _local8));
var _local9 = _local2.dmc.attachMovie("target_" + level, "target", _local2.dmc.getNextHighestDepth());
if (_local3 > 0) {
_local9._xscale = -100;
}
_local2.isShowByDraw = false;
_local2.isEffect = false;
_local2.addEventListener("onContact", this);
_local2._p = this;
_local2.start = count;
engine.addSurface(_local2);
_local11[_local4] = _local2;
_local4++;
}
} else if (level == 6) {
var _local10 = Math.floor(Math.random() * 1) + 1;
var _local11 = new Array(_local10);
var _local4 = 0;
while (_local4 < _local10) {
var _local3 = Math.random() - 0.5;
if (_local3 >= 0) {
_local3 = 1;
var _local5 = (Math.random() * 300) + 350;
} else {
_local3 = -1;
var _local5 = 350 - (Math.random() * 300);
}
var _local7 = (-Math.random()) * 100;
var _local2 = new org.cove.flade.surfaces.RectangleTile(_local5, _local7, 20, 35);
var _local6 = (Math.floor(Math.random() * 1) + 2) * _local3;
var _local8 = Math.floor(Math.random() * 3) + 4;
_local2.__set__velocity(new org.cove.flade.util.Vector(_local6, _local8));
var _local9 = _local2.dmc.attachMovie("target_" + level, "target", _local2.dmc.getNextHighestDepth());
if (_local3 > 0) {
_local9._xscale = -100;
}
_local2.isShowByDraw = false;
_local2.isEffect = false;
_local2.addEventListener("onContact", this);
_local2._p = this;
engine.addSurface(_local2);
_local11[_local4] = _local2;
_local4++;
}
} else if (level == 7) {
var _local10 = 1;
var _local11 = new Array(_local10);
var _local4 = 0;
while (_local4 < _local10) {
var _local3 = Math.random() - 0.5;
if (_local3 >= 0) {
_local3 = 1;
var _local5 = 690 - (Math.random() * 200);
} else {
_local3 = -1;
var _local5 = 10 + (Math.random() * 200);
}
var _local7 = (Math.random() * 10) + 250;
var _local2 = new org.cove.flade.surfaces.RectangleTile(_local5, _local7, 38, 14);
var _local6 = (Math.floor(Math.random() * 5) + 1) * (-_local3);
var _local8 = -(Math.random() * 4);
_local2.__set__velocity(new org.cove.flade.util.Vector(_local6, _local8));
var _local9 = _local2.dmc.attachMovie("target_" + level, "target", _local2.dmc.getNextHighestDepth());
if (_local3 > 0) {
_local9._xscale = -100;
}
_local2.isShowByDraw = false;
_local2.isEffect = false;
_local2.addEventListener("onContact", this);
_local2._p = this;
_local2.start = count;
engine.addSurface(_local2);
_local11[_local4] = _local2;
_local4++;
}
}
}
function setTargetVinTime(levelNum) {
switch (Number(levelNum)) {
case 3 :
for (var _local7 in engine.surfaces) {
var _local4 = engine.surfaces[_local7].velocity;
var _local2 = engine.surfaces[_local7].dmc.target._xscale;
if (_local2 == undefined) {
_local2 = 1;
}
if (_local2 > 0) {
if (_local4.__get__angle() >= 0) {
_local4.__set__angle(-45);
} else {
_local4.__set__angle(45);
}
} else if ((_local4.__get__angle() >= 180) || ((_local4.__get__angle() >= -180) && (_local4.__get__angle() <= -90))) {
_local4.__set__angle(135);
} else {
_local4.__set__angle(225);
}
engine.surfaces[_local7].velocity = _local4;
}
break;
case 5 :
for (var _local7 in engine.surfaces) {
var _local3 = engine.surfaces[_local7].start;
if (((_local3 != undefined) && (_local3 != null)) && ((_local3 - count) == 4)) {
var _local2 = engine.surfaces[_local7].dmc.target._xscale;
if ((_local2 == undefined) || (_local2 >= 0)) {
_local2 = 1;
} else if (_local2 < 0) {
_local2 = -1;
}
var _local5 = (Math.floor(Math.random() * 4) + 20) * _local2;
var _local6 = Math.floor(Math.random() * 4) - 2;
var _local4 = new org.cove.flade.util.Vector(_local5, _local6);
engine.surfaces[_local7].velocity = _local4;
engine.surfaces[_local7].start = null;
}
}
break;
case 7 :
for (var _local7 in engine.surfaces) {
var _local3 = engine.surfaces[_local7].start;
if (((_local3 - count) % 2) == 0) {
if (((_local3 - count) % 6) == 0) {
var _local4 = engine.surfaces[_local7].velocity;
var _local2 = Math.random() - 0.5;
if ((_local2 == undefined) || (_local2 >= 0)) {
_local2 = 1;
} else if (_local2 < 0) {
_local2 = -1;
}
var _local5 = (Math.floor(Math.random() * 5) + 20) * _local2;
_local4.x = _local5;
engine.surfaces[_local7].velocity = _local4;
} else {
var _local4 = engine.surfaces[_local7].velocity;
_local4.x = 1;
engine.surfaces[_local7].velocity = _local4;
}
}
}
}
}
function setBg(lev) {
_root.bg.gotoAndStop(lev);
}
function timer() {
count--;
setTargetVinTime(level);
if ((count % 5) == 0) {
timeCount--;
if (timeCount <= minCount) {
trace("\u65F6\u95F4\u5230\u4E86!!!");
if ((_root.scoreNum - score) >= levelScoreArr[level - 1]) {
changeLevel(++level);
} else {
clearUp();
closeTime();
_root.levelState = [1, 1, 1, 1, 1, 1, 1];
var _local5 = 0;
while (_local5 < level) {
_root.levelState[_local5] = 2;
_local5++;
}
_root.gotoAndStop("gameOver");
}
return(undefined);
}
if ((count % 10) == 0) {
createTarget();
}
if ((count % 50) == 0) {
for (var _local5 in engine.surfaces) {
if (((engine.surfaces[_local5].center.x > 900) || (engine.surfaces[_local5].center.x < -100)) || (engine.surfaces[_local5].center.y > 700)) {
engine.surfaces[_local5].dmc.removeMovieClip();
engine.surfaces.splice(_local5, 1);
}
}
var _local3 = engine.primitives.length;
while (_local3 >= 0) {
if ((((engine.primitives[_local3].curr.x > 900) || (engine.primitives[_local3].curr.x < -100)) || (engine.primitives[_local3].curr.y > 700)) || (engine.primitives[_local3].velocity.length < 1)) {
engine.primitives[_local3].dmc.removeMovieClip();
engine.primitives.splice(_local3, 1);
}
_local3--;
}
}
if (((timeCount < 30) && (level == 1)) && (!isCreatBigBird)) {
var _local11 = 1;
var _local12 = new Array(_local11);
var _local17 = Math.random() - 0.5;
if (_local17 >= 0) {
isCreatBigBird = true;
} else {
isCreatBigBird = false;
}
if (isCreatBigBird) {
var _local5 = 0;
while (_local5 < _local11) {
var _local6;
var _local4 = Math.random() - 0.5;
if (_local4 >= 0) {
_local4 = 1;
_local6 = (Math.random() * 100) + 810;
} else {
_local4 = -1;
_local6 = -((Math.random() * 100) + 10);
}
var _local9 = (Math.random() * 100) + 50;
bigTarget = new org.cove.flade.surfaces.RectangleTile(_local6, _local9, 45, 16);
var _local8 = (Math.floor(Math.random() * 4) + 9) * (-_local4);
var _local10 = Math.floor(Math.random() * 2) + 2;
bigTarget.__set__velocity(new org.cove.flade.util.Vector(_local8, _local10));
var _local7 = bigTarget.dmc.attachMovie("target_" + level, "target", bigTarget.dmc.getNextHighestDepth());
_local7.gotoAndPlay("bigTarget");
if (_local4 > 0) {
_local7._xscale = -100;
}
bigTarget.isShowByDraw = false;
bigTarget.isEffect = false;
bigTarget.addEventListener("onContact", this);
bigTarget._p = this;
engine.addSurface(bigTarget);
_local12[_local5] = bigTarget;
_local5++;
}
}
}
var _local14 = "00";
var _local18 = "00";
var _local15 = "00";
var _local13 = int(timeCount / 60);
if (_local13 > 10) {
if (_local13 > 60) {
_local15 = int(_local13 / 60) + "";
_local14 = (_local13 % 60) + "";
} else {
_local14 = _local13 + "";
}
} else {
_local14 = "0" + _local13;
}
if ((timeCount % 60) < 10) {
_local18 = "0" + (timeCount % 60);
} else {
_local18 = (timeCount % 60) + "";
}
_root.timeTxt.text = _local18;
var _local16 = int((_root.hitNum / _root.shootNum) * 10000);
_root.rating.text = (_local16 / 100) + "%";
}
}
function beginInterval(target) {
if ((intervalId != null) && (intervalId != undefined)) {
clearInterval(intervalId);
}
intervalId = setInterval(target, "timer", duration);
}
function closeTime() {
clearInterval(intervalId);
_root.timeTxt.text = "00:00:00";
}
function changeLevel(lev) {
clearUp();
closeTime();
if (level == 4) {
_root.gotoAndPlay("\u5438\u5165");
} else if (level == 8) {
_root.gotoAndPlay("\u5438\u51FA");
} else {
_root.gotoAndStop("passLevel");
}
}
function clearUp() {
mouseEvent.removeEventListener("shoot", this);
mouseEvent.removeEventListener("readyShoot", this);
mouseEvent.clearUp();
delete mouseEvent;
mouseEvent = null;
engine.clearUp();
}
var count = 250;
var timeCount = 50;
var minCount = 0;
var duration = 200;
}
Symbol 686 MovieClip [__Packages.org.cove.flade.DynamicsEngine] Frame 0
class org.cove.flade.DynamicsEngine
{
var primitives, surfaces, constraints, gravity, coeffRest, coeffFric, coeffDamp;
function DynamicsEngine () {
primitives = new Array();
surfaces = new Array();
constraints = new Array();
gravity = new org.cove.flade.util.Vector(0, 1);
coeffRest = 1.5;
coeffFric = 0.01;
coeffDamp = 0.99;
}
function addPrimitive(p) {
primitives.push(p);
}
function addSurface(s) {
surfaces.push(s);
}
function addConstraint(c) {
constraints.push(c);
}
function paintSurfaces() {
var _local2 = 0;
while (_local2 < surfaces.length) {
surfaces[_local2].paint();
_local2++;
}
}
function paintPrimitives() {
var _local2 = 0;
while (_local2 < primitives.length) {
primitives[_local2].paint();
_local2++;
}
}
function paintConstraints() {
var _local2 = 0;
while (_local2 < constraints.length) {
constraints[_local2].paint();
_local2++;
}
}
function setSurfaceBounce(kfr) {
coeffRest = 1 + kfr;
}
function setSurfaceFriction(f) {
coeffFric = f;
}
function setDamping(d) {
coeffDamp = d;
}
function setGravity(gx, gy) {
gravity.x = gx;
gravity.y = gy;
}
function verlet() {
var _local2 = 0;
while (_local2 < primitives.length) {
primitives[_local2].verlet(this);
_local2++;
}
for (_local2 in surfaces) {
surfaces[_local2].verlet(this);
}
}
function satisfyConstraints() {
var _local2 = 0;
while (_local2 < constraints.length) {
constraints[_local2].resolve();
_local2++;
}
}
function checkCollisions() {
var _local4 = 0;
while (_local4 < surfaces.length) {
var _local3 = surfaces[_local4];
if (_local3.getActiveState()) {
var _local2 = 0;
while (_local2 < primitives.length) {
if (primitives[_local2].isActivated) {
primitives[_local2].checkCollision(_local3, this);
}
_local2++;
}
}
_local4++;
}
}
function timeStep() {
verlet();
satisfyConstraints();
checkCollisions();
}
function removeSurface(target) {
if ((target != null) && (target != undefined)) {
for (var _local3 in surfaces) {
if (surfaces[_local3] == target) {
surfaces.splice(_local3, 1);
break;
}
}
}
}
function removePrimitive(target) {
if ((target != null) && (target != undefined)) {
for (var _local3 in primitives) {
if (primitives[_local3] == target) {
primitives.splice(_local3, 1);
break;
}
}
}
}
function clearUp() {
for (var _local3 in surfaces) {
for (var _local2 in surfaces[_local3].dmc) {
surfaces[_local3].dmc[_local2].removeMovieClip();
}
surfaces[_local3].dmc.removeMovieClip();
delete surfaces[_local3];
surfaces[_local3] = null;
}
delete surfaces;
surfaces = null;
for (var _local3 in primitives) {
primitives[_local3].dmc.removeMovieClip();
delete primitives[_local3];
primitives[_local3] = null;
}
delete primitives;
primitives = null;
for (var _local3 in constraints) {
delete constraints[_local3];
constraints[_local3] = null;
}
delete constraints;
constraints = null;
}
}
Symbol 687 MovieClip [__Packages.org.cove.flade.util.Vector] Frame 0
class org.cove.flade.util.Vector
{
var x, y, __length, __angle;
function Vector (px, py) {
x = px;
y = py;
}
function setTo(px, py) {
x = px;
y = py;
}
function copy(v) {
x = v.x;
y = v.y;
}
function dot(v) {
return((x * v.x) + (y * v.y));
}
function cross(v) {
return((x * v.y) - (y * v.x));
}
function plus(v) {
x = x + v.x;
y = y + v.y;
return(this);
}
function plusNew(v) {
return(new org.cove.flade.util.Vector(x + v.x, y + v.y));
}
function minus(v) {
x = x - v.x;
y = y - v.y;
return(this);
}
function minusNew(v) {
return(new org.cove.flade.util.Vector(x - v.x, y - v.y));
}
function mult(s) {
x = x * s;
y = y * s;
return(this);
}
function multNew(s) {
return(new org.cove.flade.util.Vector(x * s, y * s));
}
function distance(v) {
var _local3 = x - v.x;
var _local2 = y - v.y;
return(Math.sqrt((_local3 * _local3) + (_local2 * _local2)));
}
function normalize() {
var _local2 = Math.sqrt((x * x) + (y * y));
x = x / _local2;
y = y / _local2;
return(this);
}
function magnitude() {
return(Math.sqrt((x * x) + (y * y)));
}
function project(b) {
var _local5 = dot(b);
var _local4 = (b.x * b.x) + (b.y * b.y);
var _local3 = new org.cove.flade.util.Vector(0, 0);
_local3.x = (_local5 / _local4) * b.x;
_local3.y = (_local5 / _local4) * b.y;
return(_local3);
}
function negateNew() {
return(new org.cove.flade.util.Vector(-x, -y));
}
function scaleNew(s) {
return(new org.cove.flade.util.Vector(x * s, y * s));
}
function negate() {
x = -x;
y = -y;
}
function scale(s) {
x = x * s;
y = y * s;
}
function rotate(ang) {
var _local3 = org.cove.flade.util.fOperate.cosD(ang);
var _local2 = org.cove.flade.util.fOperate.sinD(ang);
var _local5 = (x * _local3) - (y * _local2);
var _local4 = (x * _local2) + (y * _local3);
x = _local5;
y = _local4;
}
function rotateNew(ang) {
var _local3 = org.cove.flade.util.fOperate.cosD(ang);
var _local2 = org.cove.flade.util.fOperate.sinD(ang);
var _local5 = (x * _local3) - (y * _local2);
var _local4 = (x * _local2) + (y * _local3);
return(new org.cove.flade.util.Vector(_local5, _local4));
}
function dotMulti(v) {
return((x * v.x) + (y * v.y));
}
function getNormal(v) {
return(new org.cove.flade.util.Vector(-y, x));
}
function isNormalTo(v) {
return(dotMulti(v) == 0);
}
function angleBetween(v) {
var _local3 = dotMulti(v);
var _local2 = _local3 / (length * v.__get__length());
return(org.cove.flade.util.fOperate.acosD(_local2));
}
function splitVector(angle) {
var _local2 = rotateNew(angle);
var _local3 = length * org.cove.flade.util.fOperate.cosD(angle);
_local2.__set__length(_local3);
return(_local2);
}
function get length() {
__length = Math.sqrt((x * x) + (y * y));
return(__length);
}
function set length(len) {
var _local2 = length;
if (_local2) {
scale(len / _local2);
} else {
x = len;
}
__length = len;
//return(length);
}
function get angle() {
__angle = org.cove.flade.util.fOperate.atan2D(y, x);
return(__angle);
}
function set angle(ang) {
var _local2 = length;
x = _local2 * org.cove.flade.util.fOperate.cosD(ang);
y = _local2 * org.cove.flade.util.fOperate.sinD(ang);
__angle = ang;
//return(angle);
}
function toString() {
return((x + ",") + y);
}
}
Symbol 688 MovieClip [__Packages.org.cove.flade.util.fOperate] Frame 0
class org.cove.flade.util.fOperate
{
function fOperate () {
}
static function sinD(angle) {
return(Math.sin(angle * (Math.PI/180)));
}
static function cosD(angle) {
return(Math.cos(angle * (Math.PI/180)));
}
static function tanD(angle) {
return(Math.tan(angle * (Math.PI/180)));
}
static function asinD(ratio) {
return((Math.asin(ratio) / Math.PI) * 180);
}
static function acosD(ratio) {
return(Math.acos(ratio) * 57.2957795130823);
}
static function atanD(ratio) {
return(Math.atan(ratio) * 57.2957795130823);
}
static function atan2D(y, x) {
return(Math.atan2(y, x) * 57.2957795130823);
}
static function unExponential(num) {
return(parseInt(num.toString(2), 2));
}
static function getAngel2P(x1, y1, x2, y2) {
return((Math.atan((y2 - y1) / (x2 - x1)) * 180) / Math.PI);
}
static function getAngel2PV(x1, y1, x2, y2) {
var _local2 = new org.cove.flade.util.Vector(x1, y1);
var _local1 = new org.cove.flade.util.Vector(x2, y2);
var _local3 = _local2.minusNew(_local1);
return(_local3.__get__angle());
}
}
Symbol 689 MovieClip [__Packages.org.cove.flade.primitives.Particle] Frame 0
class org.cove.flade.primitives.Particle
{
var init, curr, prev, temp, extents, bmin, bmax, mtd, isVisible, isShowByDraw, isActivated, dmc;
function Particle (posX, posY) {
init = new org.cove.flade.util.Vector(posX, posY);
curr = new org.cove.flade.util.Vector(posX, posY);
prev = new org.cove.flade.util.Vector(posX, posY);
temp = new org.cove.flade.util.Vector(0, 0);
extents = new org.cove.flade.util.Vector(0, 0);
bmin = 0;
bmax = 0;
mtd = new org.cove.flade.util.Vector(0, 0);
initializeContainer();
isVisible = true;
isShowByDraw = true;
isActivated = true;
}
function initializeContainer() {
var _local3 = _root.getNextHighestDepth();
var _local4 = "_" + _local3;
dmc = _root.createEmptyMovieClip(_local4, _local3);
}
function setVisible(v) {
isVisible = v;
}
function verlet(sysObj) {
temp.x = curr.x;
temp.y = curr.y;
curr.x = curr.x + ((sysObj.coeffDamp * (curr.x - prev.x)) + sysObj.gravity.x);
curr.y = curr.y + ((sysObj.coeffDamp * (curr.y - prev.y)) + sysObj.gravity.y);
prev.x = temp.x;
prev.y = temp.y;
}
function pin() {
curr.x = init.x;
curr.y = init.y;
prev.x = init.x;
prev.y = init.y;
}
function setPos(px, py) {
curr.x = px;
curr.y = py;
prev.x = px;
prev.y = py;
}
function getCardXProjection() {
bmin = curr.x - extents.x;
bmax = curr.x + extents.x;
}
function getCardYProjection() {
bmin = curr.y - extents.y;
bmax = curr.y + extents.y;
}
function getAxisProjection(axis) {
var _local5 = new org.cove.flade.util.Vector(Math.abs(axis.x), Math.abs(axis.y));
var _local2 = curr.dot(axis);
var _local3 = extents.dot(_local5);
bmin = _local2 - _local3;
bmax = _local2 + _local3;
}
function setMTD(depthX, depthY, depthN, surfNormal) {
var _local4 = Math.abs(depthX);
var _local3 = Math.abs(depthY);
var _local2 = Math.abs(depthN);
if ((_local4 < _local3) && (_local4 < _local2)) {
mtd.setTo(depthX, 0);
} else if ((_local3 < _local4) && (_local3 < _local2)) {
mtd.setTo(0, depthY);
} else if ((_local2 < _local4) && (_local2 < _local3)) {
mtd = surfNormal.multNew(depthN);
}
}
function setXYMTD(depthX, depthY) {
var _local3 = Math.abs(depthX);
var _local2 = Math.abs(depthY);
if (_local3 < _local2) {
mtd.setTo(depthX, 0);
} else {
mtd.setTo(0, depthY);
}
}
function resolveCollision(normal, sysObj) {
var _local2 = curr.minusNew(prev);
var _local3 = normal.dot(_local2);
var _local8 = _local2.minusNew(normal.multNew(_local3));
var _local4 = _local8.multNew(sysObj.coeffFric);
var _local5 = normal.multNew(_local3 * sysObj.coeffRest);
var _local6 = _local5.plusNew(_local4);
var _local7 = _local2.minusNew(_local6);
curr.plus(mtd);
prev = curr.minusNew(_local7);
}
function paint() {
}
function checkCollision(surface, sysObj) {
}
function get velocity() {
return(curr.minusNew(prev));
}
function set velocity(v) {
prev = curr.minusNew(v);
//return(velocity);
}
}
Symbol 690 MovieClip [__Packages.org.cove.flade.surfaces.Surface] Frame 0
interface org.cove.flade.surfaces.Surface
{
}
Symbol 691 MovieClip [__Packages.org.cove.flade.primitives.CircleParticle] Frame 0
class org.cove.flade.primitives.CircleParticle extends org.cove.flade.primitives.Particle
{
var radius, contactRadius, extents, closestPoint, isVisible, isShowByDraw, dmc, curr;
function CircleParticle (px, py, r) {
super(px, py);
radius = r;
contactRadius = r;
extents = new org.cove.flade.util.Vector(r, r);
closestPoint = new org.cove.flade.util.Vector(0, 0);
}
function paint() {
if (isVisible) {
if (isShowByDraw) {
dmc.clear();
dmc.lineStyle(0, 6710886, 100);
org.cove.flade.graphics.Graphics.paintCircle(dmc, curr.x, curr.y, radius);
} else {
dmc._x = curr.x;
dmc._y = curr.y;
}
}
}
function checkCollision(surface, sysObj) {
surface.resolveCircleCollision(this, sysObj);
}
}
Symbol 692 MovieClip [__Packages.org.cove.flade.graphics.Graphics] Frame 0
class org.cove.flade.graphics.Graphics
{
function Graphics () {
}
static function paintLine(dmc, x0, y0, x1, y1) {
dmc.moveTo(x0, y0);
dmc.lineTo(x1, y1);
}
static function paintCircle(dmc, x, y, r) {
var mtp8r = (0.414213562373095 * r);
var msp4r = (0.707106781186547 * r);
with (dmc) {
moveTo(x + r, y);
curveTo(r + x, mtp8r + y, msp4r + x, msp4r + y);
curveTo(mtp8r + x, r + y, x, r + y);
curveTo((-mtp8r) + x, r + y, (-msp4r) + x, msp4r + y);
curveTo((-r) + x, mtp8r + y, (-r) + x, y);
curveTo((-r) + x, (-mtp8r) + y, (-msp4r) + x, (-msp4r) + y);
curveTo((-mtp8r) + x, (-r) + y, x, (-r) + y);
curveTo(mtp8r + x, (-r) + y, msp4r + x, (-msp4r) + y);
curveTo(r + x, (-mtp8r) + y, r + x, y);
}
}
static function paintRectangle(dmc, x, y, w, h) {
var w2 = (w / 2);
var h2 = (h / 2);
with (dmc) {
moveTo(x - w2, y - h2);
lineTo(x + w2, y - h2);
lineTo(x + w2, y + h2);
lineTo(x - w2, y + h2);
lineTo(x - w2, y - h2);
}
}
}
Symbol 693 MovieClip [__Packages.org.cove.flade.primitives.RectangleParticle] Frame 0
class org.cove.flade.primitives.RectangleParticle extends org.cove.flade.primitives.Particle
{
var width, height, vertex, extents, isVisible, isShowByDraw, dmc, curr;
function RectangleParticle (px, py, w, h) {
super(px, py);
width = w;
height = h;
vertex = new org.cove.flade.util.Vector(0, 0);
extents = new org.cove.flade.util.Vector(w / 2, h / 2);
}
function paint() {
if (isVisible) {
if (isShowByDraw) {
dmc.clear();
dmc.lineStyle(0, 6710886, 100);
org.cove.flade.graphics.Graphics.paintRectangle(dmc, curr.x, curr.y, width, height);
} else {
dmc._x = curr.x;
dmc._y = curr.y;
}
}
}
function checkCollision(surface, sysObj) {
surface.resolveRectangleCollision(this, sysObj);
}
}
Symbol 694 MovieClip [__Packages.org.cove.flade.constraints.Constraint] Frame 0
interface org.cove.flade.constraints.Constraint
{
}
Symbol 695 MovieClip [__Packages.org.cove.flade.surfaces.AbstractTile] Frame 0
class org.cove.flade.surfaces.AbstractTile
{
var center, prev, temp, verts, normal, isVisible, isActivated, isShowByDraw, isEffect, isAffectOnEng, dmc, minX, maxX, minY, maxY;
function AbstractTile (cx, cy) {
mx.events.EventDispatcher.initialize(this);
center = new org.cove.flade.util.Vector(cx, cy);
prev = new org.cove.flade.util.Vector(cx, cy);
temp = new org.cove.flade.util.Vector(cx, cy);
verts = new Array();
normal = new org.cove.flade.util.Vector(0, 0);
isVisible = true;
isActivated = true;
isShowByDraw = true;
isEffect = true;
isAffectOnEng = false;
initializeContainer();
}
function dispatchEvent() {
}
function addEventListener() {
}
function removeEventListener() {
}
function initializeContainer() {
var _local3 = _root.getNextHighestDepth();
var _local4 = "_" + _local3;
dmc = _root.createEmptyMovieClip(_local4, _local3);
}
function setVisible(v) {
isVisible = v;
}
function setActiveState(a) {
isActivated = a;
}
function getActiveState() {
return(isActivated);
}
function createBoundingRect(rw, rh) {
var _local2 = center.y - (rh / 2);
var _local3 = center.y + (rh / 2);
var _local5 = center.x - (rw / 2);
var _local4 = center.x + (rw / 2);
verts = new Array();
verts.push(new org.cove.flade.util.Vector(_local4, _local3));
verts.push(new org.cove.flade.util.Vector(_local4, _local2));
verts.push(new org.cove.flade.util.Vector(_local5, _local2));
verts.push(new org.cove.flade.util.Vector(_local5, _local3));
setCardProjections();
}
function testIntervals(boxMin, boxMax, tileMin, tileMax) {
if (boxMax < tileMin) {
return(0);
}
if (tileMax < boxMin) {
return(0);
}
var _local2 = tileMax - boxMin;
var _local1 = tileMin - boxMax;
if (Math.abs(_local2) < Math.abs(_local1)) {
return(_local2);
}
return(_local1);
}
function setCardProjections() {
getCardXProjection();
getCardYProjection();
}
function getCardXProjection() {
minX = verts[0].x;
var _local2 = 1;
while (_local2 < verts.length) {
if (verts[_local2].x < minX) {
minX = verts[_local2].x;
}
_local2++;
}
maxX = verts[0].x;
_local2 = 1;
while (_local2 < verts.length) {
if (verts[_local2].x > maxX) {
maxX = verts[_local2].x;
}
_local2++;
}
}
function getCardYProjection() {
minY = verts[0].y;
var _local2 = 1;
while (_local2 < verts.length) {
if (verts[_local2].y < minY) {
minY = verts[_local2].y;
}
_local2++;
}
maxY = verts[0].y;
_local2 = 1;
while (_local2 < verts.length) {
if (verts[_local2].y > maxY) {
maxY = verts[_local2].y;
}
_local2++;
}
}
function onContact() {
}
function verlet(sysObj) {
if (!isAffectOnEng) {
temp.x = center.x;
temp.y = center.y;
var _local2 = center.x - prev.x;
var _local3 = center.y - prev.y;
center.x = center.x + _local2;
center.y = center.y + _local3;
minX = minX + _local2;
minY = minY + _local3;
maxX = maxX + _local2;
maxY = maxY + _local3;
prev.x = temp.x;
prev.y = temp.y;
} else {
temp.x = center.x;
temp.y = center.y;
var _local2 = (sysObj.coeffDamp * (center.x - prev.x)) + sysObj.gravity.x;
var _local3 = (sysObj.coeffDamp * (center.y - prev.y)) + sysObj.gravity.y;
center.x = center.x + _local2;
center.y = center.y + _local3;
minX = minX + _local2;
minY = minY + _local3;
maxX = maxX + _local2;
maxY = maxY + _local3;
prev.x = temp.x;
prev.y = temp.y;
}
}
function get velocity() {
return(center.minusNew(prev));
}
function set velocity(v) {
prev = center.minusNew(v);
//return(velocity);
}
}
Symbol 696 MovieClip [__Packages.mx.events.EventDispatcher] Frame 0
class mx.events.EventDispatcher
{
function EventDispatcher () {
}
static function _removeEventListener(queue, event, handler) {
if (queue != undefined) {
var _local4 = queue.length;
var _local1;
_local1 = 0;
while (_local1 < _local4) {
var _local2 = queue[_local1];
if (_local2 == handler) {
queue.splice(_local1, 1);
return(undefined);
}
_local1++;
}
}
}
static function initialize(object) {
if (_fEventDispatcher == undefined) {
_fEventDispatcher = new mx.events.EventDispatcher();
}
object.addEventListener = _fEventDispatcher.addEventListener;
object.removeEventListener = _fEventDispatcher.removeEventListener;
object.dispatchEvent = _fEventDispatcher.dispatchEvent;
object.dispatchQueue = _fEventDispatcher.dispatchQueue;
}
function dispatchQueue(queueObj, eventObj) {
var _local7 = "__q_" + eventObj.type;
var _local4 = queueObj[_local7];
if (_local4 != undefined) {
var _local5;
for (_local5 in _local4) {
var _local1 = _local4[_local5];
var _local3 = typeof(_local1);
if ((_local3 == "object") || (_local3 == "movieclip")) {
if (_local1.handleEvent != undefined) {
_local1.handleEvent(eventObj);
}
if (_local1[eventObj.type] != undefined) {
if (exceptions[eventObj.type] == undefined) {
_local1[eventObj.type](eventObj);
}
}
} else {
_local1.apply(queueObj, [eventObj]);
}
}
}
}
function dispatchEvent(eventObj) {
if (eventObj.target == undefined) {
eventObj.target = this;
}
this[eventObj.type + "Handler"](eventObj);
dispatchQueue(this, eventObj);
}
function addEventListener(event, handler) {
var _local3 = "__q_" + event;
if (this[_local3] == undefined) {
this[_local3] = new Array();
}
_global.ASSetPropFlags(this, _local3, 1);
_removeEventListener(this[_local3], event, handler);
this[_local3].push(handler);
}
function removeEventListener(event, handler) {
var _local2 = "__q_" + event;
_removeEventListener(this[_local2], event, handler);
}
static var _fEventDispatcher = undefined;
static var exceptions = {move:1, draw:1, load:1};
}
Symbol 697 MovieClip [__Packages.org.cove.flade.surfaces.RectangleTile] Frame 0
class org.cove.flade.surfaces.RectangleTile extends org.cove.flade.surfaces.AbstractTile implements org.cove.flade.surfaces.Surface
{
var rectWidth, rectHeight, createBoundingRect, isVisible, dmc, isShowByDraw, center, onContact, dispatchEvent, isEffect, normal, testIntervals, minX, maxX, minY, maxY;
function RectangleTile (cx, cy, rw, rh) {
super(cx, cy);
rectWidth = rw;
rectHeight = rh;
createBoundingRect(rw, rh);
}
function paint() {
if (((isVisible && (dmc != undefined)) && (dmc != null)) && ((dmc + "") != "")) {
if (isShowByDraw) {
dmc.clear();
dmc.lineStyle(0, 2237064, 100);
org.cove.flade.graphics.Graphics.paintRectangle(dmc, center.x, center.y, rectWidth, rectHeight);
} else {
dmc.clear();
dmc.lineStyle(0, 2237064, 100);
dmc._x = center.x;
dmc._y = center.y;
}
}
}
function resolveCircleCollision(p, sysObj) {
if (isCircleColliding(p)) {
onContact();
dispatchEvent({type:"onContact", target:this, data:p});
if (isEffect) {
p.resolveCollision(normal, sysObj);
}
}
}
function resolveRectangleCollision(p, sysObj) {
if (isRectangleColliding(p)) {
onContact();
dispatchEvent({type:"onContact", target:this, data:p});
if (isEffect) {
p.resolveCollision(normal, sysObj);
}
}
}
function isCircleColliding(p) {
p.getCardXProjection();
var _local6 = testIntervals(p.bmin, p.bmax, minX, maxX);
if (_local6 == 0) {
return(false);
}
p.getCardYProjection();
var _local5 = testIntervals(p.bmin, p.bmax, minY, maxY);
if (_local5 == 0) {
return(false);
}
var _local11 = Math.abs(_local6) < p.radius;
var _local12 = Math.abs(_local5) < p.radius;
if (_local11 && (_local12)) {
var _local10 = center.x + (sign(p.curr.x - center.x) * (rectWidth / 2));
var _local9 = center.y + (sign(p.curr.y - center.y) * (rectHeight / 2));
var _local4 = p.curr.x - _local10;
var _local3 = p.curr.y - _local9;
var _local8 = Math.sqrt((_local4 * _local4) + (_local3 * _local3));
var _local7 = p.radius - _local8;
if (_local7 > 0) {
_local4 = _local4 / _local8;
_local3 = _local3 / _local8;
p.mtd.setTo(_local4 * _local7, _local3 * _local7);
normal.setTo(_local4, _local3);
return(true);
}
return(false);
}
p.setXYMTD(_local6, _local5);
normal.setTo(p.mtd.x / Math.abs(_local6), p.mtd.y / Math.abs(_local5));
return(true);
}
function isRectangleColliding(p) {
p.getCardXProjection();
var _local4 = testIntervals(p.bmin, p.bmax, minX, maxX);
if (_local4 == 0) {
return(false);
}
p.getCardYProjection();
var _local3 = testIntervals(p.bmin, p.bmax, minY, maxY);
if (_local3 == 0) {
return(false);
}
p.setXYMTD(_local4, _local3);
normal.setTo(p.mtd.x / Math.abs(_local4), p.mtd.y / Math.abs(_local3));
return(true);
}
function sign(val) {
if (val < 0) {
return(-1);
}
if (val > 0) {
return(1);
}
}
}
Symbol 698 MovieClip [__Packages.CountByMouse] Frame 0
class CountByMouse
{
var painter, limitPower, myListener, _p, clickX, clickY, power, angle;
function CountByMouse (limitP) {
mx.events.EventDispatcher.initialize(this);
painter = _root.createEmptyMovieClip("painter", _root.getNextHighestDepth());
limitPower = limitP;
myListener = new Object();
myListener._p = this;
myListener.onMouseDown = mouseDown;
myListener.onMouseUp = mouseUp;
Mouse.addListener(myListener);
}
function dispatchEvent() {
}
function addEventListener() {
}
function removeEventListener() {
}
function mouseMoving() {
if ((_p != undefined) && (_p != null)) {
this=_p;//parameter overwritten
_p;
}
var _local2 = new org.cove.flade.util.Vector(painter._xmouse, painter._ymouse);
var _local4 = new org.cove.flade.util.Vector(clickX, clickY);
var _local3 = _local2.minusNew(_local4);
power = Math.abs(_local3.__get__length());
if (((limitPower != undefined) && (limitPower != null)) && (limitPower > 0)) {
if (power > limitPower) {
power = limitPower;
}
}
angle = _local3.angle;
_local3.__set__length(power);
_local2 = _local3.plusNew(_local4);
painter.clear();
painter.lineStyle(2, 16763904);
painter.moveTo(clickX, clickY);
painter.lineTo(_local2.x, _local2.y);
dispatchEvent({type:"readyShoot", target:this, data:{power:power, angle:angle}});
}
function mouseUp() {
if ((_p != undefined) && (_p != null)) {
this=_p;//parameter overwritten
_p;
}
painter.clear();
myListener.onMouseMove = null;
var _local3 = new org.cove.flade.util.Vector(painter._xmouse, painter._ymouse);
var _local4 = new org.cove.flade.util.Vector(clickX, clickY);
var _local2 = _local3.minusNew(_local4);
power = Math.abs(_local2.__get__length());
angle = _local2.angle;
dispatchEvent({type:"shoot", target:this, data:{power:power, angle:angle}});
}
function mouseDown() {
if ((_p != undefined) && (_p != null)) {
this=_p;//parameter overwritten
_p;
}
clickX = painter._xmouse;
clickY = painter._ymouse;
myListener.onMouseMove = mouseMoving;
}
function clearUp() {
painter.removeMovieClip();
painter = null;
Mouse.removeListener(myListener);
myListener = null;
}
}
Symbol 699 MovieClip [__Packages.org.cove.flade.surfaces.LineSurface] Frame 0
class org.cove.flade.surfaces.LineSurface extends org.cove.flade.surfaces.AbstractTile implements org.cove.flade.surfaces.Surface
{
var p1, p2, collNormal, isVisible, dmc, onContact, dispatchEvent, isEffect, faceNormal, collisionDepth, testIntervals, minY, maxY, minX, maxX, sideNormal, minS, maxS, minF, maxF, rise, run, sign, slope, invB, setCardProjections, p3, p4, verts;
function LineSurface (p1x, p1y, p2x, p2y) {
super(0, 0);
p1 = new org.cove.flade.util.Vector(p1x, p1y);
p2 = new org.cove.flade.util.Vector(p2x, p2y);
calcFaceNormal();
collNormal = new org.cove.flade.util.Vector(0, 0);
setCollisionDepth(30);
}
function paint() {
if (isVisible) {
dmc.clear();
dmc.lineStyle(0, 2237064, 100);
org.cove.flade.graphics.Graphics.paintLine(dmc, p1.x, p1.y, p2.x, p2.y);
}
}
function resolveCircleCollision(p, sysObj) {
if (isCircleColliding(p)) {
onContact();
dispatchEvent({type:"onContact", target:this, data:p});
if (isEffect) {
p.resolveCollision(faceNormal, sysObj);
}
}
}
function resolveRectangleCollision(p, sysObj) {
if (isRectangleColliding(p)) {
onContact();
p.resolveCollision(collNormal, sysObj);
}
}
function setCollisionDepth(d) {
collisionDepth = d;
precalculate();
}
function isCircleColliding(p) {
findClosestPoint(p.curr, p.closestPoint);
var _local3 = p.closestPoint.minusNew(p.curr);
_local3.normalize();
if (inequality(p.curr)) {
var _local5 = Math.abs(_local3.x);
_local3.x = ((faceNormal.x < 0) ? (_local5) : (-_local5));
_local3.y = Math.abs(_local3.y);
}
var _local4 = p.curr.plusNew(_local3.mult(p.radius));
if (segmentInequality(_local4)) {
if (_local4.distance(p.closestPoint) > collisionDepth) {
return(false);
}
var _local7 = _local4.x - p.closestPoint.x;
var _local6 = _local4.y - p.closestPoint.y;
p.mtd.setTo(-_local7, -_local6);
return(true);
}
return(false);
}
function isRectangleColliding(p) {
p.getCardYProjection();
var _local7 = testIntervals(p.bmin, p.bmax, minY, maxY);
if (_local7 == 0) {
return(false);
}
p.getCardXProjection();
var _local8 = testIntervals(p.bmin, p.bmax, minX, maxX);
if (_local8 == 0) {
return(false);
}
p.getAxisProjection(sideNormal);
var _local10 = testIntervals(p.bmin, p.bmax, minS, maxS);
if (_local10 == 0) {
return(false);
}
p.getAxisProjection(faceNormal);
var _local9 = testIntervals(p.bmin, p.bmax, minF, maxF);
if (_local9 == 0) {
return(false);
}
var _local4 = Math.abs(_local8);
var _local3 = Math.abs(_local7);
var _local6 = Math.abs(_local10);
var _local5 = Math.abs(_local9);
if (((_local4 <= _local3) && (_local4 <= _local6)) && (_local4 <= _local5)) {
p.mtd.setTo(_local8, 0);
collNormal.setTo(p.mtd.x / _local4, 0);
} else if (((_local3 <= _local4) && (_local3 <= _local6)) && (_local3 <= _local5)) {
p.mtd.setTo(0, _local7);
collNormal.setTo(0, p.mtd.y / _local3);
} else if (((_local5 <= _local4) && (_local5 <= _local3)) && (_local5 <= _local6)) {
p.mtd = faceNormal.multNew(_local9);
collNormal.copy(faceNormal);
} else if (((_local6 <= _local4) && (_local6 <= _local3)) && (_local6 <= _local5)) {
p.mtd = sideNormal.multNew(_local10);
collNormal.copy(sideNormal);
}
return(true);
}
function precalculate() {
rise = p2.y - p1.y;
run = p2.x - p1.x;
sign = ((run >= 0) ? 1 : -1);
slope = rise / run;
invB = 1 / ((run * run) + (rise * rise));
createRectangle();
calcSideNormal();
setCardProjections();
setAxisProjections();
}
function calcFaceNormal() {
faceNormal = new org.cove.flade.util.Vector(0, 0);
var _local3 = p2.x - p1.x;
var _local2 = p2.y - p1.y;
faceNormal.setTo(_local2, -_local3);
faceNormal.normalize();
}
function segmentInequality(toPoint) {
var _local2 = findU(toPoint);
var _local3 = inequality(toPoint);
return(((_local2 >= 0) && (_local2 <= 1)) && (_local3));
}
function inequality(toPoint) {
var _local2 = ((slope * (toPoint.x - p1.x)) + (p1.y - toPoint.y)) * sign;
return(_local2 <= 0);
}
function findClosestPoint(toPoint, returnVect) {
var _local2 = findU(toPoint);
if (_local2 <= 0) {
returnVect.copy(p1);
return(undefined);
}
if (_local2 >= 1) {
returnVect.copy(p2);
return(undefined);
}
var _local5 = p1.x + (_local2 * (p2.x - p1.x));
var _local4 = p1.y + (_local2 * (p2.y - p1.y));
returnVect.setTo(_local5, _local4);
}
function findU(p) {
var _local2 = ((p.x - p1.x) * run) + ((p.y - p1.y) * rise);
return(_local2 * invB);
}
function createRectangle() {
var _local5 = p2.x + ((-faceNormal.x) * collisionDepth);
var _local3 = p2.y + ((-faceNormal.y) * collisionDepth);
var _local4 = p1.x + ((-faceNormal.x) * collisionDepth);
var _local2 = p1.y + ((-faceNormal.y) * collisionDepth);
p3 = new org.cove.flade.util.Vector(_local5, _local3);
p4 = new org.cove.flade.util.Vector(_local4, _local2);
verts.push(p1);
verts.push(p2);
verts.push(p3);
verts.push(p4);
}
function setAxisProjections() {
var _local2;
minF = p2.dot(faceNormal);
maxF = p3.dot(faceNormal);
if (minF > maxF) {
_local2 = minF;
minF = maxF;
maxF = _local2;
}
minS = p1.dot(sideNormal);
maxS = p2.dot(sideNormal);
if (minS > maxS) {
_local2 = minS;
minS = maxS;
maxS = _local2;
}
}
function calcSideNormal() {
sideNormal = new org.cove.flade.util.Vector(0, 0);
var _local3 = p3.x - p2.x;
var _local2 = p3.y - p2.y;
sideNormal.setTo(_local2, -_local3);
sideNormal.normalize();
}
}
Symbol 214 Button
on (release) {
stopAllSounds();
gotoAndPlay ("loop0");
}
Symbol 238 Button
on (release) {
getURL ("http://www.funcorder.com", "_self");
}
Symbol 239 Button
on (release) {
getURL ("http://www.funcorder.com", "_self");
}
Symbol 240 Button
on (release) {
getURL ("http://www.funcorder.com/exclusive.php", "_self");
}
Symbol 256 MovieClip Frame 1
stop();
Symbol 349 MovieClip Frame 1
stop();
Instance of Symbol 200 MovieClip in Symbol 349 MovieClip Frame 1
on (release) {
getURL ("http://www.funcorder.com", "_self");
}
Symbol 349 MovieClip Frame 2
stop();
Symbol 349 MovieClip Frame 3
stop();
Symbol 349 MovieClip Frame 4
stop();
Symbol 349 MovieClip Frame 5
stop();
Symbol 349 MovieClip Frame 6
stop();
Symbol 349 MovieClip Frame 7
stop();
_root.openSound = new Sound(_root);
Symbol 371 MovieClip Frame 1
pass._visible = false;
Symbol 403 MovieClip Frame 1
stop();
Symbol 403 MovieClip Frame 8
gotoAndPlay (1);
Symbol 437 MovieClip Frame 1
stop();
Symbol 437 MovieClip Frame 2
stop();
Symbol 437 MovieClip Frame 3
stop();
Symbol 437 MovieClip Frame 4
stop();
Symbol 437 MovieClip Frame 5
stop();
Symbol 437 MovieClip Frame 6
stop();
Symbol 437 MovieClip Frame 7
stop();
Symbol 437 MovieClip Frame 8
stop();
Symbol 454 MovieClip Frame 1
stop();
Symbol 454 MovieClip Frame 2
stop();
Symbol 684 MovieClip Frame 1
stop();
Symbol 684 MovieClip Frame 2
stop();