Combined Code
movieClip 7 {
}
movieClip 11 {
}
movieClip 31 {
}
movieClip 36 Field1 {
}
movieClip 42 {
}
movieClip 46 Field0 {
}
movieClip 78 {
}
movieClip 83 {
}
movieClip 87 Field {
}
movieClip 100 {
}
movieClip 163 {
}
movieClip 262 {
}
movieClip 264 {
}
movieClip 266 {
}
movieClip 267 Field2 {
}
movieClip 273 View {
}
movieClip 280 Field3 {
}
movieClip 285 {
}
movieClip 287 {
}
movieClip 289 {
}
movieClip 291 {
}
movieClip 293 {
}
movieClip 294 {
}
movieClip 297 Field4 {
}
movieClip 319 {
}
movieClip 320 {
}
movieClip 321 Field5 {
}
movieClip 332 Field6 {
}
movieClip 368 {
}
movieClip 373 {
}
movieClip 378 {
}
movieClip 395 {
}
movieClip 400 {
}
movieClip 405 {
}
movieClip 410 {
}
movieClip 415 {
}
movieClip 420 {
}
movieClip 423 {
}
movieClip 424 Field7 {
}
movieClip 438 {
}
movieClip 439 Field8 {
}
movieClip 441 Field9 {
}
frame 1 {
stop();
delete human;
delete this.onEnterFrame;
var human = new Human(this);
human.trans(new Vec(100, -100));
human.draw();
if (!mouseListener) {
this.mouseListener = {'onMouseDown': function () {
human.fire();
}};
Mouse.addListener(mouseListener);
}
this.onEnterFrame = function () {
this.clear();
human.hitTest(area);
human.update();
human.draw();
};
}
movieClip 444 {
}
instance of movieClip 444 {
onClipEvent (press) {
_parent.gotoAndPlay(2);
}
}
movieClip 448 {
}
movieClip 456 __Packages.Human {
#initclip
if (!_global.Human) {
var v1 = function (nmc) {
this.mc = nmc;
this.pts = new Array(11);
this.size = 3;
var v3 = 4;
var v4 = 6;
var v2 = 4;
this.pts[0] = new Vec(0, -this.size * 2.5);
this.pts[1] = new Vec(0, -this.size);
this.pts[2] = new Vec(0, v2 * this.size);
this.pts[3] = new Vec(-v3 * this.size, 0);
this.pts[4] = new Vec(v3 * this.size, 0);
this.pts[5] = new Vec(-this.size, v2 * this.size + v4 * this.size);
this.pts[6] = new Vec(this.size, v2 * this.size + v4 * this.size);
this.pts[7] = new Vec(-v3 * 2 * this.size, 0);
this.pts[8] = new Vec(v3 * 2 * this.size, 0);
this.pts[9] = new Vec(-this.size, v2 * this.size + v4 * 2 * this.size);
this.pts[10] = new Vec(this.size, v2 * this.size + v4 * 2 * this.size);
this.pts[0].addLink(this.pts[1]);
this.pts[1].addLink(this.pts[2]);
this.pts[1].addLink(this.pts[3]);
this.pts[1].addLink(this.pts[4]);
this.pts[2].addLink(this.pts[5]);
this.pts[2].addLink(this.pts[6]);
this.pts[3].addLink(this.pts[7]);
this.pts[4].addLink(this.pts[8]);
this.pts[5].addLink(this.pts[9]);
this.pts[6].addLink(this.pts[10]);
this.left_wire = new Wire(this.mc, this.left_hand());
this.right_wire = new Wire(this.mc, this.right_hand());
this.left_wire.trans(this.left_hand());
this.right_wire.trans(this.right_hand());
this.walk_state = 0;
this.on_the_ground = 0;
this.use_left = true;
};
_global.Human = v1;
var v2 = v1.prototype;
v2.left_hand = function () {
return this.pts[8];
};
v2.right_hand = function () {
return this.pts[7];
};
v2.trans = function (v) {
var v2 = 0;
while (v2 < this.pts.length) {
this.pts[v2].x += v.x;
this.pts[v2].y += v.y;
this.pts[v2].px += v.x;
this.pts[v2].py += v.y;
++v2;
}
this.left_wire.trans(v);
this.right_wire.trans(v);
};
v2.addForce = function (v) {
var v2 = 0;
while (v2 < this.pts.length) {
this.pts[v2].x += v.x;
this.pts[v2].y += v.y;
++v2;
}
};
v2.draw = function () {
var v3 = this.pts[0].x - this.pts[1].x;
var v2 = this.pts[0].y - this.pts[1].y;
var v4 = Math.sqrt(v3 * v3 + v2 * v2);
v3 /= v4;
v2 /= v4;
this.mc.lineStyle(this.size, 0, 100);
this.mc.moveTo(this.pts[0].x, this.pts[0].y);
this.mc.lineTo(this.pts[1].x, this.pts[1].y);
this.mc.lineStyle(this.size * 2, 0, 100);
this.mc.moveTo(this.pts[0].x, this.pts[0].y);
this.mc.lineTo(this.pts[0].x + v3, this.pts[0].y + v2);
this.mc.lineStyle(this.size * 2, 0, 100);
this.mc.moveTo(this.pts[1].x, this.pts[1].y);
this.mc.lineTo(this.pts[2].x, this.pts[2].y);
this.mc.lineStyle(this.size, 0, 100);
this.mc.moveTo(this.pts[1].x, this.pts[1].y);
this.mc.lineTo(this.pts[3].x, this.pts[3].y);
this.mc.lineTo(this.pts[7].x, this.pts[7].y);
this.mc.moveTo(this.pts[1].x, this.pts[1].y);
this.mc.lineTo(this.pts[4].x, this.pts[4].y);
this.mc.lineTo(this.pts[8].x, this.pts[8].y);
this.mc.lineStyle(this.size, 0, 100);
this.mc.moveTo(this.pts[2].x, this.pts[2].y);
this.mc.lineTo(this.pts[5].x, this.pts[5].y);
this.mc.lineTo(this.pts[9].x, this.pts[9].y);
this.mc.moveTo(this.pts[2].x, this.pts[2].y);
this.mc.lineTo(this.pts[6].x, this.pts[6].y);
this.mc.lineTo(this.pts[10].x, this.pts[10].y);
this.left_wire.draw();
this.right_wire.draw();
};
v2.update = function () {
this.adjust();
this.left_wire.update();
this.right_wire.update();
var v7 = false;
if (this.on_the_ground > 0) {
v7 = true;
--this.on_the_ground;
}
var v2 = 10 * this.size;
var v9 = 20;
this.pts[7].x += this.pts[7].vx * 0.1;
this.pts[8].y += this.pts[8].vy * 0.1;
if (v7) {
var v8 = -0.8;
if (this.walk_state < v9) {
this.pts[6].y += 0.02 * v2;
this.pts[10].y += 0.05 * v2;
this.pts[5].y -= 0.015 * v2;
this.pts[9].y -= 0.01 * v2;
this.pts[5].x -= 0.02 * v2 * v8;
this.pts[1].y -= 0.02 * v2;
this.pts[2].y += 0.02 * v2;
} else {
if (this.walk_state < v9 * 2) {
this.pts[5].y += 0.02 * v2;
this.pts[9].y += 0.05 * v2;
this.pts[6].y -= 0.015 * v2;
this.pts[10].y -= 0.01 * v2;
this.pts[6].x -= 0.02 * v2 * v8;
this.pts[1].y -= 0.02 * v2;
this.pts[2].y += 0.02 * v2;
} else {
this.walk_state = 0;
}
}
++this.walk_state;
}
if (v7) {
this.pts[0].y -= 0.01 * v2;
this.pts[1].y -= 0.001 * v2;
this.pts[5].x -= 0.001 * v2;
this.pts[6].x += 0.001 * v2;
this.pts[9].y += 0.02 * v2;
this.pts[10].y += 0.02 * v2;
this.pts[3].y += 0.001 * v2;
this.pts[4].y += 0.001 * v2;
this.pts[3].x -= 0.0001 * v2;
this.pts[4].x += 0.0001 * v2;
this.pts[7].y -= 0.001 * v2;
this.pts[8].y -= 0.001 * v2;
var v5 = this.pts[6].x - this.pts[5].x;
var v4 = this.pts[6].y - this.pts[5].y;
var v6 = Math.sqrt(v5 * v5 + v4 * v4);
v5 /= v6;
v4 /= v6;
this.pts[6].y += v4 * 0.001 * v2;
this.pts[6].x += v5 * 0.001 * v2;
this.pts[5].y -= v4 * 0.001 * v2;
this.pts[5].x -= v5 * 0.001 * v2;
this.pts[9].y -= v4 * 0.001 * v2;
this.pts[9].x -= v5 * 0.001 * v2;
this.pts[10].y += v4 * 0.001 * v2;
this.pts[10].x += v5 * 0.001 * v2;
} else {
var v3 = 0;
while (v3 < this.pts.length) {
this.pts[v3].y += 0.01 * v2;
++v3;
}
this.pts[0].y -= 0.01 * v2;
this.pts[1].y -= 0.001 * v2;
var v5 = this.pts[6].x - this.pts[5].x;
var v4 = this.pts[6].y - this.pts[5].y;
var v6 = Math.sqrt(v5 * v5 + v4 * v4);
v5 /= v6;
v4 /= v6;
this.pts[6].y -= v4 * 0.001 * v2;
this.pts[6].x -= v5 * 0.001 * v2;
this.pts[5].y += v4 * 0.001 * v2;
this.pts[5].x += v5 * 0.001 * v2;
this.pts[9].y += v4 * 0.001 * v2;
this.pts[9].x += v5 * 0.001 * v2;
this.pts[10].y -= v4 * 0.001 * v2;
this.pts[10].x -= v5 * 0.001 * v2;
}
v5 = this.pts[2].x - this.pts[5].x + this.pts[2].x - this.pts[6].x;
v4 = this.pts[2].y - this.pts[5].y + this.pts[2].y - this.pts[6].y;
v6 = Math.sqrt(v5 * v5 + v4 * v4);
v5 /= v6;
v4 /= v6;
this.pts[1].y += v4 * 0.005 * v2;
this.pts[1].x += v5 * 0.005 * v2;
v3 = 0;
while (v3 < this.pts.length) {
this.pts[v3].update(0.995);
++v3;
}
this.adjust();
};
v2.fire = function () {
if (this.use_left) {
this.left_wire.fire();
} else {
this.right_wire.fire();
}
this.use_left = !this.use_left;
};
v2.adjust = function () {
var v2 = 0;
while (v2 < this.pts.length) {
this.pts[v2].adjustLinks();
++v2;
}
};
v2.hitTest = function (field) {
this.left_wire.hitTest(field);
this.right_wire.hitTest(field);
var v2 = 0;
while (v2 < this.pts.length) {
var v5 = 0;
if (field.hitTest(this.pts[v2].x, this.pts[v2].y, true)) {
this.on_the_ground = 10;
this.pts[v2].x -= this.pts[v2].vx;
this.pts[v2].y -= this.pts[v2].vy;
while (field.hitTest(this.pts[v2].x, this.pts[v2].y, true)) {
var v4 = this.pts[v2].vx * 0.1;
var v3 = this.pts[v2].vy * 0.1;
if (v5 > 5) {
v4 -= (this.pts[2].x - this.pts[v2].x) * 0.1;
v3 -= (this.pts[2].y - this.pts[v2].y) * 0.1;
}
this.pts[v2].x -= v4;
this.pts[v2].y -= v3;
this.pts[v2].px -= v4;
this.pts[v2].py -= v3;
++v5;
if (v5 > 10) {
break;
}
}
}
++v2;
}
};
ASSetPropFlags(_global.Human.prototype, null, 1);
}
#endinitclip
}
movieClip 457 __Packages.Vec {
#initclip
if (!_global.Vec) {
var v1 = function (xx, yy) {
this.x = xx;
this.y = yy;
this.px = xx;
this.py = yy;
this.vx = 0;
this.vy = 0;
this.links = [];
this.distances = [];
};
_global.Vec = v1;
var v2 = v1.prototype;
v2.addLink = function (other) {
if (Math.random() < 0.5) {
this.links.push(other);
this.distances.push(this.distance(other));
} else {
this.links.unshift(other);
this.distances.unshift(this.distance(other));
}
};
v2.clearLinks = function () {
this.links = [];
this.distances = [];
};
v2.update = function (o) {
this.vx = this.x - this.px;
this.vy = this.y - this.py;
this.px = this.x;
this.py = this.y;
this.vx *= o;
this.vy *= o;
this.x += this.vx;
this.y += this.vy;
};
v2.distance = function (other) {
var v3 = this.x - other.x;
var v2 = this.y - other.y;
return Math.sqrt(v3 * v3 + v2 * v2);
};
v2.adjustUnit = function (other, distance) {
var v2 = other.x - this.x;
var v3 = other.y - this.y;
var v5 = Math.sqrt(v2 * v2 + v3 * v3);
var v6 = distance - v5;
if (v5 == 0) {
return undefined;
}
v2 = (v2 / v5) * (v6 * 0.5);
v3 = (v3 / v5) * (v6 * 0.5);
this.x -= v2;
this.y -= v3;
other.x += v2;
other.y += v3;
};
v2.adjustUnitRate = function (other, distance, alpha) {
var v2 = other.x - this.x;
var v3 = other.y - this.y;
var v6 = Math.sqrt(v2 * v2 + v3 * v3);
var v5 = distance - v6;
if (v6 == 0) {
return undefined;
}
v2 /= v6;
v3 /= v6;
this.x -= v2 * (v5 * alpha);
this.y -= v3 * (v5 * alpha);
other.x += v2 * (v5 * (1 - alpha));
other.y += v3 * (v5 * (1 - alpha));
};
v2.adjustLinks = function () {
var v2 = 0;
while (v2 < this.links.length) {
this.adjustUnit(this.links[v2], this.distances[v2]);
++v2;
}
};
v2.adjustLinks2 = function (scale) {
var v2 = 0;
while (v2 < this.links.length) {
this.adjustUnit(this.links[v2], this.distances[v2] * scale);
++v2;
}
};
ASSetPropFlags(_global.Vec.prototype, null, 1);
}
#endinitclip
}
movieClip 458 __Packages.Wire {
#initclip
if (!_global.Wire) {
var v1 = function (nmc, nhand) {
this.mc = nmc;
this.pts = [];
var v2 = 0;
while (v2 < 10) {
this.pts.push(new Vec(0, v2));
++v2;
}
v2 = 0;
while (v2 < this.pts.length - 1) {
this.pts[v2].addLink(this.pts[v2 + 1]);
++v2;
}
this.hand = nhand;
this.size = 0.1;
this.xtarget = 0;
this.ytarget = 0;
this.hit = 0;
this.fired = 0;
this.maxsize = 0.1;
};
_global.Wire = v1;
var v2 = v1.prototype;
v2.handpos = function () {
return this.pts[0];
};
v2.top = function () {
return this.pts[this.pts.length - 1];
};
v2.fire = function () {
if (this.fired > 0) {
return undefined;
}
var v3 = _xmouse - this.pts[this.pts.length - 1].x;
var v2 = _ymouse - this.pts[this.pts.length - 1].y;
var v4 = Math.sqrt(v3 * v3 + v2 * v2);
v3 /= v4;
v2 /= v4;
this.xtarget = v3 * 18;
this.ytarget = v2 * 18;
this.size = 1;
this.fired = 15;
this.hit = 0;
};
v2.update = function () {
if (this.size <= 0) {
this.size = 0.0001;
}
var v2 = 0;
while (v2 < this.pts.length) {
this.pts[v2].update(0.9);
++v2;
}
var v4 = this.pts[this.pts.length - 1].x;
var v5 = this.pts[this.pts.length - 1].y;
v2 = 0;
while (v2 < this.pts.length) {
this.pts[v2].adjustLinks2(this.size);
++v2;
}
this.pts[this.pts.length - 1].x = v4;
this.pts[this.pts.length - 1].y = v5;
var v3 = true;
if (this.fired > 0) {
--this.fired;
if (this.hit > 0) {
this.pts[this.pts.length - 1].x = this.xtarget;
this.pts[this.pts.length - 1].y = this.ytarget;
this.size = this.maxsize * 0.5;
--this.hit;
if (this.hit == 0) {
this.fired = 0;
}
this.hand.adjustUnit(this.pts[0], 0.1);
this.hand.x = this.pts[0].x;
this.hand.y = this.pts[0].y;
v3 = false;
} else {
this.size += 1;
if (this.size > 10) {
this.size = 10;
}
this.pts[this.pts.length - 1].x += this.xtarget;
this.pts[this.pts.length - 1].y += this.ytarget;
this.pts[this.pts.length - 1].px = this.pts[this.pts.length - 1].x;
this.pts[this.pts.length - 1].py = this.pts[this.pts.length - 1].y;
}
} else {
this.size = 0.01;
this.pts[this.pts.length - 1].x = this.pts[this.pts.length - 1].x * 0.95 + this.pts[0].x * 0.05;
this.pts[this.pts.length - 1].y = this.pts[this.pts.length - 1].y * 0.95 + this.pts[0].y * 0.05;
}
if (v3) {
this.pts[0].x = this.hand.x;
this.pts[0].y = this.hand.y;
}
this.hand.adjustUnitRate(this.handpos(), 0.1, 0.51);
};
v2.draw = function () {
this.mc.lineStyle(1, 16777215, 100);
this.mc.moveTo(this.hand.x, this.hand.y);
var v2 = 0;
while (v2 < this.pts.length) {
this.mc.lineTo(this.pts[v2].x, this.pts[v2].y);
++v2;
}
};
v2.hitTest = function (field) {
if (this.hit > 0 || this.fired == 0 || this.fired > 14) {
return undefined;
}
var v2 = this.pts.length - 1;
if (field.hitTest(this.pts[v2].x, this.pts[v2].y, true)) {
this.hit = 30;
this.fired = 999;
this.xtarget = this.pts[v2].x;
this.ytarget = this.pts[v2].y;
this.maxsize = this.size;
}
};
v2.trans = function (v) {
var v2 = 0;
while (v2 < this.pts.length) {
this.pts[v2].x += v.x;
this.pts[v2].y += v.y;
this.pts[v2].px += v.x;
this.pts[v2].py += v.y;
++v2;
}
};
v2.addForce = function (v) {
var v2 = 0;
while (v2 < this.pts.length) {
this.pts[v2].x += v.x;
this.pts[v2].y += v.y;
++v2;
}
};
ASSetPropFlags(_global.Wire.prototype, null, 1);
}
#endinitclip
}
frame 2 {
var human = new Human(this);
human.trans(new Vec(0, 200));
human.draw();
var line = -human.pts[0].x + Stage.width / 2;
var depth = 1000;
this.attachMovie('Field', 'field', depth++);
this.attachMovie('View', 'view', 100000);
var count = 0;
var level = 1;
var prev_level = 1;
this.onEnterFrame = function () {
this.clear();
human.hitTest(field);
human.hitTest(field2);
human.update();
human.draw();
var v3 = -(line - Stage.width / 2);
if (field._x + field._width < v3 + 600) {
if (!field2) {
if (count < 10) {
this.attachMovie('Field' + count, 'field' + depth, depth);
} else {
this.attachMovie('Field' + Math.floor(Math.random() * 10), 'field' + depth, depth);
}
++count;
field2 = this['field' + depth];
++depth;
field2._x = field._x + field._width;
}
}
if (field2) {
if (field._x + field._width < v3 - 600) {
field.removeMovieClip();
field = field2;
delete field2;
++prev_level;
}
}
if (prev_level == level) {
if (field2._x < human.pts[0].x) {
++level;
}
}
if (line > 100 - human.pts[0].x + Stage.width / 2) {
line = line * 0.8 + (100 - human.pts[0].x + Stage.width / 2) * 0.2;
}
line -= 1 - Math.floor(line / 50000);
_x = line;
view._x = -_x + 350;
view._y = -_y + 120;
view.level = 'level ' + level;
var v2 = '' + -int(line - Stage.width / 2);
if (v2.length == 1) {
v2 = '0' + v2;
}
if (v2.length == 2) {
v2 = '0' + v2;
}
view.m = v2.slice(0, v2.length - 2) + '.' + v2.slice(v2.length - 2, v2.length);
if (human.pts[0].x < v3 - 400 || human.pts[0].y > 1000) {
gotoAndPlay(3);
}
};
stop();
}
frame 3 {
stop();
field.removeMovieClip();
field2.removeMovieClip();
view.removeMovieClip();
delete human;
delete field;
delete field2;
delete view;
var str = '' + -int(line - Stage.width / 2);
if (str.length == 1) {
str = '0' + str;
}
if (str.length == 2) {
str = '0' + str;
}
str = str.slice(0, str.length - 2) + '.' + str.slice(str.length - 2, str.length);
text = 'Score : ' + str + ' YD';
_x = 0;
var human = new Human(this);
human.trans(new Vec(300, 200));
human.draw();
this.onEnterFrame = function () {
this.clear();
human.hitTest(area);
human.update();
human.draw();
};
}
movieClip 452 {
}
movieClip 455 {
}
instance of movieClip 455 {
onClipEvent (press) {
_parent.gotoAndPlay(1);
}
}