Section 1
//Elastic (fl.transitions.easing.Elastic)
package fl.transitions.easing {
public class Elastic {
public static function easeOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number=0, _arg6:Number=0):Number{
var _local7:Number;
if (_arg1 == 0){
return (_arg2);
};
_arg1 = (_arg1 / _arg4);
if (_arg1 == 1){
return ((_arg2 + _arg3));
};
if (!_arg6){
_arg6 = (_arg4 * 0.3);
};
if (((!(_arg5)) || ((_arg5 < Math.abs(_arg3))))){
_arg5 = _arg3;
_local7 = (_arg6 / 4);
} else {
_local7 = ((_arg6 / (2 * Math.PI)) * Math.asin((_arg3 / _arg5)));
};
return (((((_arg5 * Math.pow(2, (-10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _arg6))) + _arg3) + _arg2));
}
public static function easeIn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number=0, _arg6:Number=0):Number{
var _local7:Number;
if (_arg1 == 0){
return (_arg2);
};
_arg1 = (_arg1 / _arg4);
if (_arg1 == 1){
return ((_arg2 + _arg3));
};
if (!_arg6){
_arg6 = (_arg4 * 0.3);
};
if (((!(_arg5)) || ((_arg5 < Math.abs(_arg3))))){
_arg5 = _arg3;
_local7 = (_arg6 / 4);
} else {
_local7 = ((_arg6 / (2 * Math.PI)) * Math.asin((_arg3 / _arg5)));
};
--_arg1;
return ((-(((_arg5 * Math.pow(2, (10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _arg6)))) + _arg2));
}
public static function easeInOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number=0, _arg6:Number=0):Number{
var _local7:Number;
if (_arg1 == 0){
return (_arg2);
};
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 == 2){
return ((_arg2 + _arg3));
};
if (!_arg6){
_arg6 = (_arg4 * (0.3 * 1.5));
};
if (((!(_arg5)) || ((_arg5 < Math.abs(_arg3))))){
_arg5 = _arg3;
_local7 = (_arg6 / 4);
} else {
_local7 = ((_arg6 / (2 * Math.PI)) * Math.asin((_arg3 / _arg5)));
};
if (_arg1 < 1){
--_arg1;
return (((-0.5 * ((_arg5 * Math.pow(2, (10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _arg6)))) + _arg2));
};
--_arg1;
return ((((((_arg5 * Math.pow(2, (-10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _arg6))) * 0.5) + _arg3) + _arg2));
}
}
}//package fl.transitions.easing
Section 2
//Regular (fl.transitions.easing.Regular)
package fl.transitions.easing {
public class Regular {
public static function easeOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
_arg1 = (_arg1 / _arg4);
return ((((-(_arg3) * _arg1) * (_arg1 - 2)) + _arg2));
}
public static function easeIn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
_arg1 = (_arg1 / _arg4);
return ((((_arg3 * _arg1) * _arg1) + _arg2));
}
public static function easeInOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return (((((_arg3 / 2) * _arg1) * _arg1) + _arg2));
};
--_arg1;
return ((((-(_arg3) / 2) * ((_arg1 * (_arg1 - 2)) - 1)) + _arg2));
}
}
}//package fl.transitions.easing
Section 3
//Tween (fl.transitions.Tween)
package fl.transitions {
import flash.events.*;
import flash.display.*;
import flash.utils.*;
public class Tween extends EventDispatcher {
private var _position:Number;// = NAN
public var prevTime:Number;// = NAN
public var prevPos:Number;// = NAN
public var isPlaying:Boolean;// = false
public var begin:Number;// = NAN
private var _fps:Number;// = NAN
private var _time:Number;// = NAN
public var change:Number;// = NAN
private var _finish:Number;// = NAN
public var looping:Boolean;// = false
private var _intervalID:uint;// = 0
public var func:Function;
private var _timer:Timer;// = null
private var _startTime:Number;// = NAN
public var prop:String;// = ""
private var _duration:Number;// = NAN
public var obj:Object;// = null
public var useSeconds:Boolean;// = false
protected static var _mc:MovieClip = new MovieClip();
public function Tween(_arg1:Object, _arg2:String, _arg3:Function, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Boolean=false){
isPlaying = false;
obj = null;
prop = "";
func = function (_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
return ((((_arg3 * _arg1) / _arg4) + _arg2));
};
begin = NaN;
change = NaN;
useSeconds = false;
prevTime = NaN;
prevPos = NaN;
looping = false;
_duration = NaN;
_time = NaN;
_fps = NaN;
_position = NaN;
_startTime = NaN;
_intervalID = 0;
_finish = NaN;
_timer = null;
super();
if (!arguments.length){
return;
};
this.obj = _arg1;
this.prop = _arg2;
this.begin = _arg4;
this.position = _arg4;
this.duration = _arg6;
this.useSeconds = _arg7;
if ((_arg3 is Function)){
this.func = _arg3;
};
this.finish = _arg5;
this._timer = new Timer(100);
this.start();
}
public function continueTo(_arg1:Number, _arg2:Number):void{
this.begin = this.position;
this.finish = _arg1;
if (!isNaN(_arg2)){
this.duration = _arg2;
};
this.start();
}
public function stop():void{
this.stopEnterFrame();
this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_STOP, this._time, this._position));
}
private function fixTime():void{
if (this.useSeconds){
this._startTime = (getTimer() - (this._time * 1000));
};
}
public function set FPS(_arg1:Number):void{
var _local2:Boolean;
_local2 = this.isPlaying;
this.stopEnterFrame();
this._fps = _arg1;
if (_local2){
this.startEnterFrame();
};
}
public function get finish():Number{
return ((this.begin + this.change));
}
public function get duration():Number{
return (this._duration);
}
protected function startEnterFrame():void{
var _local1:Number;
if (isNaN(this._fps)){
_mc.addEventListener(Event.ENTER_FRAME, this.onEnterFrame, false, 0, true);
} else {
_local1 = (1000 / this._fps);
this._timer.delay = _local1;
this._timer.addEventListener(TimerEvent.TIMER, this.timerHandler, false, 0, true);
this._timer.start();
};
this.isPlaying = true;
}
public function set time(_arg1:Number):void{
this.prevTime = this._time;
if (_arg1 > this.duration){
if (this.looping){
this.rewind((_arg1 - this._duration));
this.update();
this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_LOOP, this._time, this._position));
} else {
if (this.useSeconds){
this._time = this._duration;
this.update();
};
this.stop();
this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_FINISH, this._time, this._position));
};
} else {
if (_arg1 < 0){
this.rewind();
this.update();
} else {
this._time = _arg1;
this.update();
};
};
}
protected function stopEnterFrame():void{
if (isNaN(this._fps)){
_mc.removeEventListener(Event.ENTER_FRAME, this.onEnterFrame);
} else {
this._timer.stop();
};
this.isPlaying = false;
}
public function getPosition(_arg1:Number=NaN):Number{
if (isNaN(_arg1)){
_arg1 = this._time;
};
return (this.func(_arg1, this.begin, this.change, this._duration));
}
public function set finish(_arg1:Number):void{
this.change = (_arg1 - this.begin);
}
public function set duration(_arg1:Number):void{
this._duration = ((_arg1)<=0) ? Infinity : _arg1;
}
public function setPosition(_arg1:Number):void{
this.prevPos = this._position;
if (this.prop.length){
this.obj[this.prop] = (this._position = _arg1);
};
this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_CHANGE, this._time, this._position));
}
public function resume():void{
this.fixTime();
this.startEnterFrame();
this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_RESUME, this._time, this._position));
}
public function fforward():void{
this.time = this._duration;
this.fixTime();
}
protected function onEnterFrame(_arg1:Event):void{
this.nextFrame();
}
public function get position():Number{
return (this.getPosition(this._time));
}
public function yoyo():void{
this.continueTo(this.begin, this.time);
}
public function nextFrame():void{
if (this.useSeconds){
this.time = ((getTimer() - this._startTime) / 1000);
} else {
this.time = (this._time + 1);
};
}
protected function timerHandler(_arg1:TimerEvent):void{
this.nextFrame();
_arg1.updateAfterEvent();
}
public function get FPS():Number{
return (this._fps);
}
public function rewind(_arg1:Number=0):void{
this._time = _arg1;
this.fixTime();
this.update();
}
public function set position(_arg1:Number):void{
this.setPosition(_arg1);
}
public function get time():Number{
return (this._time);
}
private function update():void{
this.setPosition(this.getPosition(this._time));
}
public function start():void{
this.rewind();
this.startEnterFrame();
this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_START, this._time, this._position));
}
public function prevFrame():void{
if (!this.useSeconds){
this.time = (this._time - 1);
};
}
}
}//package fl.transitions
Section 4
//TweenEvent (fl.transitions.TweenEvent)
package fl.transitions {
import flash.events.*;
public class TweenEvent extends Event {
public var time:Number;// = NAN
public var position:Number;// = NAN
public static const MOTION_START:String = "motionStart";
public static const MOTION_STOP:String = "motionStop";
public static const MOTION_LOOP:String = "motionLoop";
public static const MOTION_CHANGE:String = "motionChange";
public static const MOTION_FINISH:String = "motionFinish";
public static const MOTION_RESUME:String = "motionResume";
public function TweenEvent(_arg1:String, _arg2:Number, _arg3:Number, _arg4:Boolean=false, _arg5:Boolean=false){
time = NaN;
position = NaN;
super(_arg1, _arg4, _arg5);
this.time = _arg2;
this.position = _arg3;
}
override public function clone():Event{
return (new TweenEvent(this.type, this.time, this.position, this.bubbles, this.cancelable));
}
}
}//package fl.transitions
Section 5
//i6intro_2 (game_fla.i6intro_2)
package game_fla {
import flash.display.*;
public dynamic class i6intro_2 extends MovieClip {
public var gauge:MovieClip;
}
}//package game_fla
Section 6
//i6LOADER_3 (game_fla.i6LOADER_3)
package game_fla {
import flash.display.*;
public dynamic class i6LOADER_3 extends MovieClip {
public var bar:MovieClip;
public function i6LOADER_3(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package game_fla
Section 7
//MainTimeline (game_fla.MainTimeline)
package game_fla {
import flash.events.*;
import flash.display.*;
import flash.geom.*;
import flash.utils.*;
import flash.media.*;
import sdf.*;
import flash.text.*;
import flash.net.*;
import flash.system.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.ui.*;
import flash.xml.*;
public dynamic class MainTimeline extends MovieClip {
public var counter:Number;
public var mcMain:Main;
public var mcStart:MovieClip;
public var mcPreloader:MovieClip;
public var myTimer:Timer;
public function MainTimeline(){
addFrameScript(0, frame1, 18, frame19);
}
public function hClick(_arg1:MouseEvent):void{
navigateToURL(new URLRequest("http://www.i6.com/most-played-games.php?utm_source=games&utm_medium=archerspl"), "_blank");
}
public function timerHandler(_arg1:TimerEvent):void{
counter++;
if (counter == 2){
mcStart.visible = true;
};
}
function frame1(){
MochiBot.track(this, "33a711ee");
stop();
counter = 0;
mcStart.visible = false;
mcStart.buttonMode = true;
mcPreloader.buttonMode = true;
mcPreloader.addEventListener(MouseEvent.CLICK, hClick);
mcStart.addEventListener(MouseEvent.CLICK, hStart);
addEventListener(Event.ENTER_FRAME, update);
myTimer = new Timer(12000, 1);
myTimer.addEventListener("timer", timerHandler);
myTimer.start();
}
function frame19(){
stop();
}
public function update(_arg1:Event):void{
var _local2:Number;
var _local3:Number;
var _local4:String;
var _local5:Number;
_local2 = stage.loaderInfo.bytesLoaded;
_local3 = stage.loaderInfo.bytesTotal;
_local4 = "";
_local5 = 0;
if (_local3 > 0){
_local5 = Math.floor(((_local2 / _local3) * 100));
mcPreloader.intro.gauge.gotoAndStop(_local5);
};
if ((((_local2 == _local3)) || ((_local3 == 0)))){
counter++;
if (counter == 2){
mcStart.visible = true;
};
removeEventListener(Event.ENTER_FRAME, update);
};
}
public function hStart(_arg1:MouseEvent):void{
play();
mcStart.visible = false;
}
}
}//package game_fla
Section 8
//mcArcherUp_27 (game_fla.mcArcherUp_27)
package game_fla {
import flash.display.*;
public dynamic class mcArcherUp_27 extends MovieClip {
public var mcShirt:MovieClip;
}
}//package game_fla
Section 9
//mcArrowPlayer_29 (game_fla.mcArrowPlayer_29)
package game_fla {
import flash.display.*;
public dynamic class mcArrowPlayer_29 extends MovieClip {
public var mcHit:MovieClip;
}
}//package game_fla
Section 10
//mcBlood_23 (game_fla.mcBlood_23)
package game_fla {
import flash.display.*;
public dynamic class mcBlood_23 extends MovieClip {
public function mcBlood_23(){
addFrameScript(19, frame20);
}
function frame20(){
stop();
}
}
}//package game_fla
Section 11
//mcDmg_26 (game_fla.mcDmg_26)
package game_fla {
import flash.display.*;
import flash.text.*;
public dynamic class mcDmg_26 extends MovieClip {
public var tf:TextField;
}
}//package game_fla
Section 12
//mcHit_21 (game_fla.mcHit_21)
package game_fla {
import flash.display.*;
public dynamic class mcHit_21 extends MovieClip {
public var mcT02:MovieClip;
public var mcT00:MovieClip;
public var mcT01:MovieClip;
public var mcT03:MovieClip;
public var mcT11:MovieClip;
public var mcFloor:MovieClip;
public var mcT10:MovieClip;
public var mcT12:MovieClip;
public var mcT30:MovieClip;
public var mcT32:MovieClip;
public var mcT31:MovieClip;
public var mcT13:MovieClip;
public var mcT33:MovieClip;
public var mcT41:MovieClip;
public var mcT42:MovieClip;
public var mcT43:MovieClip;
public var mcT50:MovieClip;
public var mcT51:MovieClip;
public var mcT40:MovieClip;
public var mcT52:MovieClip;
public var mcT53:MovieClip;
}
}//package game_fla
Section 13
//mcHit_30 (game_fla.mcHit_30)
package game_fla {
import flash.display.*;
public dynamic class mcHit_30 extends MovieClip {
public var mcFoot:MovieClip;
public var mcBody:MovieClip;
public var mcHead:MovieClip;
}
}//package game_fla
Section 14
//mcHPLine_35 (game_fla.mcHPLine_35)
package game_fla {
import flash.display.*;
public dynamic class mcHPLine_35 extends MovieClip {
public var mcLine:MovieClip;
}
}//package game_fla
Section 15
//mcLvl_38 (game_fla.mcLvl_38)
package game_fla {
import flash.display.*;
import flash.text.*;
public dynamic class mcLvl_38 extends MovieClip {
public var tf:TextField;
}
}//package game_fla
Section 16
//mcMoreGames_47 (game_fla.mcMoreGames_47)
package game_fla {
import flash.display.*;
public dynamic class mcMoreGames_47 extends MovieClip {
public var mc:MovieClip;
}
}//package game_fla
Section 17
//mcMoreGames2_49 (game_fla.mcMoreGames2_49)
package game_fla {
import flash.display.*;
public dynamic class mcMoreGames2_49 extends MovieClip {
public var mc:MovieClip;
}
}//package game_fla
Section 18
//mcPlay_53 (game_fla.mcPlay_53)
package game_fla {
import flash.display.*;
public dynamic class mcPlay_53 extends MovieClip {
public var mc:MovieClip;
}
}//package game_fla
Section 19
//mcPlay2_55 (game_fla.mcPlay2_55)
package game_fla {
import flash.display.*;
public dynamic class mcPlay2_55 extends MovieClip {
public var mc:MovieClip;
}
}//package game_fla
Section 20
//mcPlayAgaine_43 (game_fla.mcPlayAgaine_43)
package game_fla {
import flash.display.*;
public dynamic class mcPlayAgaine_43 extends MovieClip {
public var mc:MovieClip;
}
}//package game_fla
Section 21
//mcPlayAgaine2_45 (game_fla.mcPlayAgaine2_45)
package game_fla {
import flash.display.*;
public dynamic class mcPlayAgaine2_45 extends MovieClip {
public var mc:MovieClip;
}
}//package game_fla
Section 22
//mcPreloader_1 (game_fla.mcPreloader_1)
package game_fla {
import flash.display.*;
public dynamic class mcPreloader_1 extends MovieClip {
public var intro:MovieClip;
}
}//package game_fla
Section 23
//mcRuls_57 (game_fla.mcRuls_57)
package game_fla {
import flash.display.*;
public dynamic class mcRuls_57 extends MovieClip {
public var mcBtn:MovieClip;
}
}//package game_fla
Section 24
//mcTowers_16 (game_fla.mcTowers_16)
package game_fla {
import flash.display.*;
public dynamic class mcTowers_16 extends MovieClip {
public var mcTower2:MovieClip;
public var mcTower3:MovieClip;
public var mcTower1:MovieClip;
}
}//package game_fla
Section 25
//Symbol1_12 (game_fla.Symbol1_12)
package game_fla {
import flash.display.*;
public dynamic class Symbol1_12 extends MovieClip {
public var mcCloud:MovieClip;
}
}//package game_fla
Section 26
//Symbol13_39 (game_fla.Symbol13_39)
package game_fla {
import flash.display.*;
import flash.text.*;
public dynamic class Symbol13_39 extends MovieClip {
public var tfArrows:TextField;
}
}//package game_fla
Section 27
//Symbol9_37 (game_fla.Symbol9_37)
package game_fla {
import flash.display.*;
public dynamic class Symbol9_37 extends MovieClip {
public var mcLvl:MovieClip;
public function Symbol9_37(){
addFrameScript(19, frame20);
}
function frame20(){
stop();
}
}
}//package game_fla
Section 28
//Arrow (sdf.archgame.Arrow)
package sdf.archgame {
import flash.events.*;
import flash.display.*;
import flash.geom.*;
import flash.utils.*;
public class Arrow extends MovieClip {
public var objHit:MovieClip;
private var _nAngle:Number;// = 0
public var mcHit:MovieClip;
private var _nStartTime:Number;// = 0
private var _nPower:Number;// = 0
private var _nGravity:Number;// = 1.1
private var _nNumObj:Number;// = 0
private var _aHitObjs:Array;
private var _nVX:Number;// = 0
private var _nVY:Number;// = 0
public function Arrow(_arg1:Point){
_aHitObjs = [];
_nAngle = 0;
_nPower = 0;
_nGravity = 1.1;
_nVX = 0;
_nVY = 0;
_nStartTime = 0;
_nNumObj = 0;
super();
changePos(_arg1);
visible = false;
}
public function set hitObjs(_arg1):void{
_aHitObjs = _arg1;
}
public function shoot():void{
visible = true;
_nVX = (_nPower * Math.cos(((_nAngle * Math.PI) / 180)));
_nVY = (_nPower * Math.sin(((_nAngle * Math.PI) / 180)));
_nStartTime = getTimer();
addEventListener(Event.ENTER_FRAME, move);
}
private function moveBird(_arg1:Event):void{
x = (MovieClip(objHit.parent).x + _nVX);
y = (MovieClip(objHit.parent).y + _nVY);
}
public function setData(_arg1, _arg2):void{
_nAngle = _arg1;
_nPower = _arg2;
rotation = -(_nAngle);
}
private function hitTestCheck():void{
var _local1:int;
_nNumObj = _aHitObjs.length;
_local1 = 0;
while (_local1 < _nNumObj) {
if (mcHit.hitTestObject(_aHitObjs[_local1])){
objHit = _aHitObjs[_local1];
removeEventListener(Event.ENTER_FRAME, move);
if (objHit.points < 0){
_nVX = (x - MovieClip(objHit.parent).x);
_nVY = (y - MovieClip(objHit.parent).y);
addEventListener(Event.ENTER_FRAME, moveBird);
MovieClip(objHit.parent).down();
};
removeEventListener(Event.ENTER_FRAME, move);
dispatchEvent(new Event("hit"));
break;
};
_local1++;
};
}
public function changePos(_arg1):void{
x = _arg1.x;
y = _arg1.y;
}
private function move(_arg1:Event):void{
var _local2:*;
x = (x + (_nVX / 2));
y = (y - ((_nVY / 2) - ((_nGravity * (getTimer() - _nStartTime)) / 50)));
_local2 = ((Math.atan2(((_nVY / 2) - ((_nGravity * (getTimer() - _nStartTime)) / 50)), (_nVX / 2)) * 180) / Math.PI);
if (_local2 < 0){
rotation = (360 - _local2);
} else {
rotation = -(_local2);
};
if (y > 800){
removeEventListener(Event.ENTER_FRAME, move);
} else {
hitTestCheck();
};
}
}
}//package sdf.archgame
Section 29
//Bird (sdf.archgame.Bird)
package sdf.archgame {
import flash.events.*;
import flash.display.*;
public class Bird extends MovieClip {
public var mcHit:MovieClip;
private var _nSpeed:Number;// = 5
public var mc:MovieClip;
private var _bIsFly:Boolean;// = true
public function Bird(){
_bIsFly = true;
_nSpeed = 5;
super();
addEventListener(Event.ENTER_FRAME, hEnterFrame);
_nSpeed = (2 + Math.floor((Math.random() * 3)));
x = 3000;
y = Math.floor((Math.random() * 250));
this.mcHit.points = -10;
}
public function down():void{
_bIsFly = false;
this.mc.gotoAndStop(9);
}
private function hEnterFrame(_arg1:Event):void{
if (_bIsFly){
x = (x - _nSpeed);
if (x < -3000){
removeEventListener(Event.ENTER_FRAME, hEnterFrame);
MovieClip(parent).removeChild(this);
};
} else {
y = (y + 10);
if (y > 480){
removeEventListener(Event.ENTER_FRAME, hEnterFrame);
};
};
}
}
}//package sdf.archgame
Section 30
//GamePage (sdf.archgame.GamePage)
package sdf.archgame {
import flash.events.*;
import flash.display.*;
import flash.utils.*;
import flash.media.*;
public class GamePage extends MovieClip {
private var _compTimer:Timer;
public var mcPanel:Panel;
private var _aArrows:Array;
private var _arrow:Arrow;
private var _nTurn:Number;// = 0
private var _shoot:ShootController;
private var _soundHit:Sound;
private var _rightPlayer:PlayerRight;
private var _aPlayers:Array;
private var _leftPlayer:Player;
private var _aBirds:Array;
private var _timer:Timer;
private var _soundD1:Sound;
private var _nSD:Number;// = 1
private var _bIsTurn:Boolean;// = false
public var bIsMultiplayer:Boolean;// = true
private var _soundD3:Sound;
private var _map:Map;
public var nLevl:Number;// = 0
public var nArrows:Number;// = 0
private var _birdTimer:Timer;
private var _soundD2:Sound;
private var _currentPlayer:MovieClip;
private var _enemyPlayer:MovieClip;
private var _soundShoot:Sound;
private var _nMaxPlayers:Number;// = 2
public function GamePage(){
_aArrows = [];
_nMaxPlayers = 2;
_nTurn = 0;
_aPlayers = [];
_bIsTurn = false;
_aBirds = [];
bIsMultiplayer = true;
_nSD = 1;
nLevl = 0;
nArrows = 0;
super();
_soundShoot = new ShootSound();
_soundHit = new HitSound();
_soundD1 = new DeathS1();
_soundD2 = new DeathS2();
_soundD3 = new DeathS3();
this.mcPanel.addEventListener("left_win", showLeftPlayerWin);
this.mcPanel.addEventListener("right_win", showRightPlayerWin);
_birdTimer = new Timer((2 + (Math.random() * 10)), 1);
_birdTimer.addEventListener(TimerEvent.TIMER_COMPLETE, createBird);
}
private function comp(_arg1:TimerEvent):void{
hShoot();
}
private function onHit(_arg1:Event):void{
var _local2:*;
_timer = new Timer(1500, 1);
_timer.addEventListener(TimerEvent.TIMER_COMPLETE, changePlayer);
_timer.start();
if (_arg1.currentTarget.objHit.points > 0){
this[("_soundD" + _nSD)].play();
_nSD++;
if (_nSD > 3){
_nSD = 1;
};
_local2 = (_arg1.currentTarget.objHit.points + Math.floor(((Math.random() * _arg1.currentTarget.objHit.points) / 3)));
if (_nTurn == 1){
this.mcPanel.leftDmg = _local2;
_map.mcLeftBlood.y = (_arrow.y + 10);
_map.mcLeftBlood.gotoAndPlay(1);
} else {
_map.mcRightBlood.y = (_arrow.y + 10);
_map.mcRightBlood.gotoAndPlay(1);
this.mcPanel.rightDmg = _local2;
};
_enemyPlayer.dmg = _local2;
} else {
_soundHit.play();
};
removeEventListener(Event.ENTER_FRAME, moveMap);
trace(nArrows);
if (nArrows == 0){
_bIsTurn = false;
_timer.stop();
dispatchEvent(new Event("suck"));
};
}
private function showLeftPlayerWin(_arg1:Event):void{
trace("L win");
dispatchEvent(new Event("left_win"));
_bIsTurn = false;
_timer.stop();
}
private function hChangeArrowData(_arg1:Event=null):void{
var _local2:Number;
_local2 = 0;
_local2 = _shoot.angle;
if (_nTurn == 0){
if ((((_local2 > 70)) && ((_local2 < 250)))){
_local2 = 70;
};
if ((((_local2 < 330)) && ((_local2 >= 250)))){
_local2 = 330;
};
_arrow.setData(_local2, _shoot.pow);
_currentPlayer.setData(_local2, _shoot.pow);
if (_local2 >= 330){
_local2 = (_local2 - 360);
};
this.mcPanel.setData(_local2, (Math.floor(_shoot.pow) * 4));
} else {
if (_local2 > 210){
_local2 = 210;
};
if (_local2 < 110){
_local2 = 110;
};
_arrow.setData(_local2, _shoot.pow);
_currentPlayer.setData(_local2, _shoot.pow);
this.mcPanel.setData((180 - _local2), (Math.floor(_shoot.pow) * 4));
};
}
private function showRightPlayerWin(_arg1:Event):void{
trace("R win");
dispatchEvent(new Event("right_win"));
_bIsTurn = false;
_timer.stop();
}
private function hShoot(_arg1:Event=null):void{
_soundShoot.play();
_arrow.hitObjs = _map.hitObjs.concat(_enemyPlayer.hitObjs).concat(_aBirds);
_arrow.shoot();
_currentPlayer.shoot();
addEventListener(Event.ENTER_FRAME, moveMap);
this.mcPanel.setData(0, 0);
if (((!(bIsMultiplayer)) && ((_nTurn == 0)))){
nArrows--;
this.mcPanel.mcArrows.tfArrows.text = nArrows;
};
}
private function changePlayer(_arg1:TimerEvent):void{
_enemyPlayer = _currentPlayer;
_nTurn++;
if (_nTurn == _nMaxPlayers){
_nTurn = 0;
};
_currentPlayer = _aPlayers[_nTurn];
_currentPlayer.showArrow();
_arrow = new Arrow(_currentPlayer.arrowPos);
_arrow.addEventListener("hit", onHit);
_aArrows.push(_arrow);
if (_nTurn == 1){
_arrow.rotation = 180;
_currentPlayer.setData(180, 0);
} else {
_currentPlayer.setData(0, 0);
};
_map.mcArrows.addChild(_arrow);
_map.slowMoveMap((-(_arrow.x) + _currentPlayer.delta));
if (((!(bIsMultiplayer)) && ((_nTurn == 1)))){
_compTimer = new Timer(1000, 1);
_compTimer.addEventListener(TimerEvent.TIMER_COMPLETE, comp);
_compTimer.start();
_shoot.pow = 225;
if (nLevl == 1){
_shoot.angle = (168 - Math.floor((Math.random() * 16)));
};
if (nLevl == 2){
_shoot.angle = (160 - Math.floor((Math.random() * 10)));
};
if (nLevl == 3){
_shoot.pow = 172;
_shoot.angle = (135 - Math.floor((Math.random() * 10)));
};
if (nLevl == 4){
_shoot.angle = (162 - Math.floor((Math.random() * 4)));
};
if (nLevl == 5){
_shoot.angle = 151;
};
hChangeArrowData();
} else {
_bIsTurn = true;
};
}
private function createField(){
_birdTimer.stop();
_aArrows.length = 0;
_nTurn = 0;
_aPlayers.length = 0;
_aBirds.length = 0;
this.mcPanel.reset();
_map = new Map();
addChild(_map);
_leftPlayer = new Player();
_leftPlayer.type = "left";
_aPlayers.push(_leftPlayer);
_rightPlayer = new PlayerRight();
_rightPlayer.type = "right";
_aPlayers.push(_rightPlayer);
_nMaxPlayers = _aPlayers.length;
_map.lpConteiner.addChild(_leftPlayer);
_map.rpConteiner.addChild(_rightPlayer);
_enemyPlayer = _rightPlayer;
_currentPlayer = _leftPlayer;
_shoot = new ShootController();
addChild(_shoot);
_shoot.addEventListener("on_change", hChangeArrowData);
_shoot.addEventListener("shoot", hShoot);
addChild(_shoot);
stage.addEventListener(MouseEvent.MOUSE_DOWN, startFire);
if (!bIsMultiplayer){
this.mcPanel.mcArrows.visible = true;
if ((((((nLevl == 3)) || ((nLevl == 2)))) || ((nLevl == 1)))){
if (nLevl == 3){
_map.level3();
} else {
_map.level();
};
_leftPlayer.pArrow.y = (_leftPlayer.pArrow.y + 138);
_rightPlayer.pArrow.y = (_rightPlayer.pArrow.y + 138);
_leftPlayer.x = (_leftPlayer.x + 100);
_rightPlayer.x = (_rightPlayer.x - 100);
_leftPlayer.pArrow.x = (_leftPlayer.pArrow.x + 100);
_rightPlayer.pArrow.x = (_rightPlayer.pArrow.x - 100);
if ((((nLevl == 2)) || ((nLevl == 5)))){
_leftPlayer.x = (_leftPlayer.x - 300);
_rightPlayer.x = (_rightPlayer.x + 300);
_leftPlayer.pArrow.x = (_leftPlayer.pArrow.x - 300);
_rightPlayer.pArrow.x = (_rightPlayer.pArrow.x + 300);
};
};
if ((((nLevl == 5)) || ((nLevl == 4)))){
_map.level4();
if (nLevl == 5){
_leftPlayer.x = (_leftPlayer.x - 300);
_rightPlayer.x = (_rightPlayer.x + 300);
_leftPlayer.pArrow.x = (_leftPlayer.pArrow.x - 300);
_rightPlayer.pArrow.x = (_rightPlayer.pArrow.x + 300);
_map.level5();
};
};
} else {
_map.level4();
this.mcPanel.mcArrows.visible = false;
};
if (bIsMultiplayer){
mcPanel.mcLvl.visible = false;
};
_arrow = new Arrow(_currentPlayer.arrowPos);
_map.mcArrows.addChild(_arrow);
_arrow.hitObjs = _map.hitObjs.concat(_enemyPlayer.hitObjs);
_map.moveMap((-(_arrow.x) + _currentPlayer.delta));
swapChildren(_map, this.mcPanel);
_arrow.addEventListener("hit", onHit);
_bIsTurn = true;
_birdTimer.start();
}
public function clearMap():void{
if (_map){
removeChild(_map);
};
nLevl++;
if (nLevl == 6){
nLevl = 1;
};
mcPanel.mcLvl.mcLvl.tf.text = nLevl;
mcPanel.mcLvl.gotoAndPlay(1);
createField();
}
private function startFire(_arg1:MouseEvent):void{
if (_bIsTurn){
_bIsTurn = false;
_shoot.startDraw();
};
}
private function moveMap(_arg1:Event):void{
_map.moveMap((-(_arrow.x) + _currentPlayer.delta));
}
private function createBird(_arg1:TimerEvent):void{
var _local2:*;
_local2 = new Bird();
_aBirds.push(_local2.mcHit);
_map.mcBirds.addChild(_local2);
_birdTimer = new Timer((2000 + (Math.random() * 8000)), 1);
_birdTimer.addEventListener(TimerEvent.TIMER_COMPLETE, createBird);
_birdTimer.start();
}
}
}//package sdf.archgame
Section 31
//Intro (sdf.archgame.Intro)
package sdf.archgame {
import flash.events.*;
import flash.display.*;
import flash.net.*;
public class Intro extends MovieClip {
public var mcPVC:MovieClip;
public var mcPMG:MovieClip;
public var mcPVP:MovieClip;
public var mcFG:MovieClip;
public function Intro(){
this.mcPVC.buttonMode = true;
this.mcPVP.buttonMode = true;
this.mcPVC.mc.visible = false;
this.mcPVP.mc.visible = false;
this.mcPMG.buttonMode = true;
this.mcPMG.mc.visible = false;
this.mcFG.buttonMode = true;
this.mcFG.mc.visible = false;
this.mcPVC.addEventListener(MouseEvent.CLICK, hPVC);
this.mcPVC.addEventListener(MouseEvent.MOUSE_OVER, over);
this.mcPVC.addEventListener(MouseEvent.MOUSE_OUT, out);
this.mcPVP.addEventListener(MouseEvent.CLICK, hPVP);
this.mcPVP.addEventListener(MouseEvent.MOUSE_OVER, over);
this.mcPVP.addEventListener(MouseEvent.MOUSE_OUT, out);
this.mcPMG.addEventListener(MouseEvent.CLICK, hPMG);
this.mcPMG.addEventListener(MouseEvent.MOUSE_OVER, over);
this.mcPMG.addEventListener(MouseEvent.MOUSE_OUT, out);
this.mcFG.addEventListener(MouseEvent.CLICK, hFG);
this.mcFG.addEventListener(MouseEvent.MOUSE_OVER, over);
this.mcFG.addEventListener(MouseEvent.MOUSE_OUT, out);
}
private function hFG(_arg1:MouseEvent):void{
navigateToURL(new URLRequest("http://www.i6.com/freegamesforyoursite.html?utm_source=games&utm_medium=archersfgfyws"), "_blank");
}
public function disableButtos(_arg1):void{
if (_arg1){
this.mcPMG.buttonMode = false;
this.mcFG.buttonMode = false;
this.mcPVC.buttonMode = false;
this.mcPVP.buttonMode = false;
this.mcPVC.removeEventListener(MouseEvent.CLICK, hPVC);
this.mcPVP.removeEventListener(MouseEvent.CLICK, hPVP);
this.mcFG.removeEventListener(MouseEvent.CLICK, hFG);
this.mcPMG.removeEventListener(MouseEvent.CLICK, hPMG);
} else {
this.mcPMG.buttonMode = true;
this.mcFG.buttonMode = true;
this.mcPVC.buttonMode = true;
this.mcPVP.buttonMode = true;
this.mcPVC.addEventListener(MouseEvent.CLICK, hPVC);
this.mcPVP.addEventListener(MouseEvent.CLICK, hPVP);
this.mcFG.addEventListener(MouseEvent.CLICK, hFG);
this.mcPMG.addEventListener(MouseEvent.CLICK, hPMG);
};
}
private function out(_arg1:MouseEvent):void{
_arg1.currentTarget.mc.visible = false;
}
private function hPMG(_arg1:MouseEvent):void{
navigateToURL(new URLRequest("http://www.i6.com/most-played-games.php?utm_source=games&utm_medium=archersplg"), "_blank");
}
private function hPVC(_arg1:MouseEvent):void{
dispatchEvent(new Event("PVC"));
}
private function hPVP(_arg1:MouseEvent):void{
dispatchEvent(new Event("PVP"));
}
private function over(_arg1:MouseEvent):void{
_arg1.currentTarget.mc.visible = true;
}
}
}//package sdf.archgame
Section 32
//Map (sdf.archgame.Map)
package sdf.archgame {
import flash.display.*;
import fl.transitions.easing.*;
import fl.transitions.*;
public class Map extends MovieClip {
public var mcLeftPlayer:MovieClip;
public var mcBirds:MovieClip;
public var mcHit:MovieClip;
public var mcLeftBlood:MovieClip;
public var mcBG:MovieClip;
public var mcRightBlood:MovieClip;
private var tw:Tween;
public var mcRightPlayer:MovieClip;
public var mcTowers:MovieClip;
public var mcArrows:MovieClip;
public var aHitObjs:Array;
public function Map(){
aHitObjs = [];
super();
mcLeftBlood.gotoAndStop(20);
mcRightBlood.gotoAndStop(20);
aHitObjs = [mcHit.mcFloor, mcHit.mcT10, mcHit.mcT11, mcHit.mcT12, mcHit.mcT13, mcHit.mcT00, mcHit.mcT01, mcHit.mcT02, mcHit.mcT03];
}
public function level4():void{
mcTowers.mcTower3.visible = false;
}
public function level5():void{
mcTowers.mcTower3.visible = false;
mcTowers.mcTower1.x = (mcTowers.mcTower1.x - 300);
mcTowers.mcTower2.x = (mcTowers.mcTower2.x + 300);
aHitObjs = [mcHit.mcFloor, mcHit.mcT40, mcHit.mcT41, mcHit.mcT42, mcHit.mcT43, mcHit.mcT50, mcHit.mcT51, mcHit.mcT52, mcHit.mcT53];
}
public function level3():void{
mcTowers.mcTower1.visible = false;
mcTowers.mcTower2.visible = false;
aHitObjs = [mcHit.mcFloor, mcHit.mcT30, mcHit.mcT31, mcHit.mcT31, mcHit.mcT32];
mcRightPlayer.y = (mcLeftPlayer.y = (mcLeftPlayer.y + 138));
}
public function get lpConteiner():MovieClip{
return (mcLeftPlayer);
}
public function level():void{
aHitObjs = [mcHit.mcFloor];
mcTowers.visible = false;
mcRightPlayer.y = (mcLeftPlayer.y = (mcLeftPlayer.y + 138));
}
public function slowMoveMap(_arg1):void{
tw = new Tween(this, "x", Regular.easeOut, this.x, _arg1, 20);
}
public function get hitObjs():Array{
return (aHitObjs);
}
public function moveMap(_arg1):void{
x = _arg1;
}
public function get rpConteiner():MovieClip{
return (mcRightPlayer);
}
}
}//package sdf.archgame
Section 33
//Panel (sdf.archgame.Panel)
package sdf.archgame {
import flash.events.*;
import flash.display.*;
import flash.text.*;
public dynamic class Panel extends MovieClip {
private var _nLeftPH:Number;// = 100
public var tfHPLeft:TextField;
private var _nRightHP:Number;// = 100
public var mcHPLeft:MovieClip;
public var tfAngle:TextField;
public var mcLvl:MovieClip;
public var mcHPRight:MovieClip;
public var tfPower:TextField;
public var tfHPRight:TextField;
public var mcArrows:MovieClip;
public function Panel(){
_nLeftPH = 100;
_nRightHP = 100;
super();
}
public function setData(_arg1, _arg2):void{
this.tfAngle.text = _arg1;
this.tfPower.text = _arg2;
}
public function reset():void{
_nLeftPH = 100;
_nRightHP = 100;
this.mcHPLeft.mcLine.width = _nLeftPH;
this.tfHPLeft.text = String(_nLeftPH);
this.mcHPRight.mcLine.width = _nRightHP;
this.tfHPRight.text = String(_nRightHP);
}
public function set rightDmg(_arg1):void{
_nRightHP = (_nRightHP - _arg1);
if (_nRightHP <= 0){
_nRightHP = 0;
dispatchEvent(new Event("left_win"));
};
trace(_nRightHP);
this.mcHPRight.mcLine.width = _nRightHP;
this.tfHPRight.text = String(_nRightHP);
}
public function set leftDmg(_arg1):void{
_nLeftPH = (_nLeftPH - _arg1);
if (_nLeftPH <= 0){
_nLeftPH = 0;
dispatchEvent(new Event("right_win"));
};
trace(_nLeftPH);
this.mcHPLeft.mcLine.width = _nLeftPH;
this.tfHPLeft.text = String(_nLeftPH);
}
}
}//package sdf.archgame
Section 34
//Player (sdf.archgame.Player)
package sdf.archgame {
import flash.display.*;
import flash.geom.*;
import fl.transitions.easing.*;
import fl.transitions.*;
public dynamic class Player extends MovieClip {
public var mcArrow:MovieClip;
public var sLeft:String;// = "left"
public var mcHit:MovieClip;
public var pArrow:Point;
public var mcDmg:MovieClip;
public var delta:Number;// = 100
public var mcUp:MovieClip;
public var aHitObjs:Array;
public function Player(){
aHitObjs = [];
sLeft = "left";
delta = 100;
super();
mcHit.mcFoot.points = 12;
mcHit.mcBody.points = 30;
mcHit.mcHead.points = 70;
aHitObjs = [mcHit.mcFoot, mcHit.mcBody, mcHit.mcHead];
this.mcDmg.alpha = 0;
}
public function set dmg(_arg1):void{
var _local2:*;
var _local3:*;
var _local4:*;
this.mcDmg.tf.text = ("-" + String(_arg1));
_local2 = new Tween(this.mcDmg, "alpha", Regular.easeIn, 1, 0, 80);
_local3 = new Tween(this.mcDmg, "x", Elastic.easeOut, -40, 0, 150);
_local4 = new Tween(this.mcDmg, "y", Regular.easeInOut, -30, -100, 80);
}
public function showArrow():void{
this.mcArrow.visible = true;
}
public function shoot():void{
this.mcArrow.visible = false;
}
public function setData(_arg1, _arg2):void{
this.mcArrow.rotation = -(_arg1);
this.mcUp.rotation = -(_arg1);
}
public function set type(_arg1):void{
if (_arg1 == "left"){
this.mcUp.mcShirt.visible = false;
pArrow = new Point(-348, 274);
delta = 100;
} else {
pArrow = new Point(1530, 310);
delta = 500;
};
sLeft = _arg1;
}
public function get arrowPos():Point{
return (pArrow);
}
public function get hitObjs():Array{
return (aHitObjs);
}
public function get type():String{
return (sLeft);
}
}
}//package sdf.archgame
Section 35
//PlayerRight (sdf.archgame.PlayerRight)
package sdf.archgame {
import flash.display.*;
import flash.geom.*;
import fl.transitions.easing.*;
import fl.transitions.*;
public dynamic class PlayerRight extends MovieClip {
public var mcArrow:MovieClip;
public var sLeft:String;// = "left"
public var mcHit:MovieClip;
public var pArrow:Point;
public var mcDmg:MovieClip;
public var delta:Number;// = 100
public var mcUp:MovieClip;
public var aHitObjs:Array;
public function PlayerRight(){
aHitObjs = [];
sLeft = "left";
delta = 100;
super();
mcHit.mcFoot.points = 12;
mcHit.mcBody.points = 30;
mcHit.mcHead.points = 70;
aHitObjs = [mcHit.mcFoot, mcHit.mcBody, mcHit.mcHead];
this.mcDmg.alpha = 0;
}
public function set dmg(_arg1):void{
var _local2:*;
var _local3:*;
var _local4:*;
this.mcDmg.tf.text = ("-" + String(_arg1));
_local2 = new Tween(this.mcDmg, "alpha", Regular.easeIn, 1, 0, 80);
_local3 = new Tween(this.mcDmg, "x", Elastic.easeOut, -40, 0, 150);
_local4 = new Tween(this.mcDmg, "y", Regular.easeInOut, -30, -100, 80);
}
public function showArrow():void{
this.mcArrow.visible = true;
}
public function shoot():void{
this.mcArrow.visible = false;
}
public function setData(_arg1, _arg2):void{
this.mcArrow.rotation = -(_arg1);
this.mcUp.rotation = -(_arg1);
}
public function set type(_arg1):void{
if (_arg1 == "left"){
pArrow = new Point(-348, 274);
delta = 100;
} else {
pArrow = new Point(1557, 274);
delta = 500;
};
sLeft = _arg1;
}
public function get arrowPos():Point{
return (pArrow);
}
public function get hitObjs():Array{
return (aHitObjs);
}
public function get type():String{
return (sLeft);
}
}
}//package sdf.archgame
Section 36
//ShootController (sdf.archgame.ShootController)
package sdf.archgame {
import flash.events.*;
import flash.display.*;
public class ShootController extends MovieClip {
private var _nAngle:Number;// = 0
private var _nLineThickness:Number;// = 1
private var _nX:Number;// = 0
private var _nPower:Number;// = 0
private var _nY:Number;// = 0
private var _nLineColor:uint;// = 0
public function ShootController(){
_nLineThickness = 1;
_nLineColor = 0;
_nX = 0;
_nY = 0;
_nPower = 0;
_nAngle = 0;
super();
}
public function shoot(_arg1:MouseEvent):void{
stage.removeEventListener(MouseEvent.MOUSE_MOVE, redrawLine);
stage.removeEventListener(MouseEvent.MOUSE_UP, shoot);
graphics.clear();
dispatchEvent(new Event("shoot"));
}
public function get pow():Number{
return ((_nPower / 3));
}
private function redrawLine(_arg1:MouseEvent):void{
graphics.clear();
graphics.lineStyle(_nLineThickness, _nLineColor);
graphics.moveTo(_nX, _nY);
graphics.lineTo(mouseX, mouseY);
_nPower = Math.sqrt((((_nX - mouseX) * (_nX - mouseX)) + ((_nY - mouseY) * (_nY - mouseY))));
_nAngle = Math.floor(((Math.acos(((_nX - mouseX) / _nPower)) * 180) / Math.PI));
if ((_nY - mouseY) > 0){
_nAngle = (360 - _nAngle);
};
if (_nPower > 230){
_nPower = 230;
};
if (_nPower < 20){
_nPower = 20;
};
dispatchEvent(new Event("on_change"));
}
public function set angle(_arg1):void{
_nAngle = _arg1;
}
public function set pow(_arg1):void{
_nPower = _arg1;
}
public function startDraw():void{
_nX = mouseX;
_nY = mouseY;
stage.addEventListener(MouseEvent.MOUSE_UP, shoot);
stage.addEventListener(MouseEvent.MOUSE_MOVE, redrawLine);
}
public function get angle():Number{
return (_nAngle);
}
}
}//package sdf.archgame
Section 37
//Win (sdf.archgame.Win)
package sdf.archgame {
import flash.events.*;
import flash.display.*;
import flash.text.*;
import flash.net.*;
public class Win extends MovieClip {
public var tfName:TextField;
public var mcWin:MovieClip;
public var mcPMG:MovieClip;
public var mcLvl:MovieClip;
public var mcFG:MovieClip;
public var mcPlay:MovieClip;
public function Win(){
visible = false;
mcPlay.mc.visible = false;
mcLvl.mc.visible = false;
this.mcPMG.buttonMode = true;
this.mcPMG.mc.visible = false;
this.mcFG.buttonMode = true;
this.mcFG.mc.visible = false;
}
private function hFG(_arg1:MouseEvent):void{
navigateToURL(new URLRequest("http://www.i6.com/freegamesforyoursite.html?utm_source=games&utm_medium=archersfgfyws"), "_blank");
}
private function out(_arg1:MouseEvent):void{
_arg1.currentTarget.mc.visible = false;
}
private function hNext(_arg1:MouseEvent):void{
visible = false;
dispatchEvent(new Event("new_game"));
}
public function winer(_arg1, _arg2, _arg3, _arg4):void{
visible = true;
if (_arg3 == 0){
this.tfName.text = _arg1;
} else {
this.tfName.text = ((_arg1 + "\nYou level score: ") + ((_arg3 * _arg4) + Math.floor((((Math.random() * _arg4) * _arg4) * 3))));
};
mcPlay.buttonMode = true;
mcPlay.addEventListener(MouseEvent.CLICK, hNext);
mcPlay.addEventListener(MouseEvent.MOUSE_OVER, over);
mcPlay.addEventListener(MouseEvent.MOUSE_OUT, out);
if (_arg2){
mcLvl.visible = false;
} else {
mcLvl.visible = true;
};
mcLvl.buttonMode = true;
mcLvl.addEventListener(MouseEvent.CLICK, hNextLvl);
mcLvl.addEventListener(MouseEvent.MOUSE_OVER, over);
mcLvl.addEventListener(MouseEvent.MOUSE_OUT, out);
this.mcPMG.addEventListener(MouseEvent.CLICK, hPMG);
this.mcPMG.addEventListener(MouseEvent.MOUSE_OVER, over);
this.mcPMG.addEventListener(MouseEvent.MOUSE_OUT, out);
this.mcFG.addEventListener(MouseEvent.CLICK, hFG);
this.mcFG.addEventListener(MouseEvent.MOUSE_OVER, over);
this.mcFG.addEventListener(MouseEvent.MOUSE_OUT, out);
}
private function hPMG(_arg1:MouseEvent):void{
navigateToURL(new URLRequest("http://www.i6.com/most-played-games.php?utm_source=games&utm_medium=archersplg"), "_blank");
}
private function hNextLvl(_arg1:MouseEvent):void{
visible = false;
dispatchEvent(new Event("new_lvl"));
}
private function over(_arg1:MouseEvent):void{
_arg1.currentTarget.mc.visible = true;
}
}
}//package sdf.archgame
Section 38
//Main (sdf.Main)
package sdf {
import flash.events.*;
import flash.display.*;
import sdf.archgame.*;
public class Main extends MovieClip {
private var _gamePage:GamePage;
private var _winPage:Win;
public var mcWin:Win;
public var mcIntro:Intro;
public var mcGame:GamePage;
public var mcRuls:MovieClip;
public function Main(){
mcRuls.visible = false;
mcRuls.mcBtn.buttonMode = true;
mcRuls.mcBtn.addEventListener(MouseEvent.CLICK, go);
_gamePage = this.mcGame;
_winPage = this.mcWin;
this.mcIntro.addEventListener("PVC", hPVC);
this.mcIntro.addEventListener("PVP", hPVP);
_gamePage.addEventListener("left_win", hWinLeft);
_gamePage.addEventListener("right_win", hWinRight);
_gamePage.addEventListener("suck", suck);
_winPage.addEventListener("new_game", hNewGame);
_winPage.addEventListener("new_lvl", hNewLvl);
}
private function hNewGame(_arg1:Event):void{
this.mcIntro.visible = true;
this.mcIntro.alpha = 1;
this.mcIntro.disableButtos(false);
_winPage.visible = false;
}
private function suck(_arg1:Event):void{
this.mcIntro.visible = false;
_winPage.mcWin.visible = false;
_winPage.winer("You could'nt complete the game with 50 arrows, you suck!", true, 0, 0);
}
private function hWinLeft(_arg1:Event):void{
this.mcIntro.visible = false;
_winPage.mcWin.visible = true;
_winPage.winer("Left player", _gamePage.bIsMultiplayer, _gamePage.nArrows, _gamePage.nLevl);
}
private function hWinRight(_arg1:Event):void{
this.mcIntro.visible = false;
_winPage.mcWin.visible = true;
_winPage.winer("Right player", true, 0, 0);
}
private function hPVC(_arg1:Event):void{
_gamePage.bIsMultiplayer = false;
mcRuls.visible = true;
}
private function hPVP(_arg1:Event):void{
_gamePage.bIsMultiplayer = true;
mcRuls.visible = true;
}
private function go(_arg1:MouseEvent=null):void{
mcRuls.visible = false;
_gamePage.nLevl = 0;
_gamePage.nArrows = 50;
_gamePage.clearMap();
this.mcIntro.visible = false;
this.mcIntro.disableButtos(true);
}
private function hNewLvl(_arg1:Event):void{
_gamePage.clearMap();
_winPage.visible = false;
}
}
}//package sdf
Section 39
//DeathS1 (DeathS1)
package {
import flash.media.*;
public dynamic class DeathS1 extends Sound {
}
}//package
Section 40
//DeathS2 (DeathS2)
package {
import flash.media.*;
public dynamic class DeathS2 extends Sound {
}
}//package
Section 41
//DeathS3 (DeathS3)
package {
import flash.media.*;
public dynamic class DeathS3 extends Sound {
}
}//package
Section 42
//HitSound (HitSound)
package {
import flash.media.*;
public dynamic class HitSound extends Sound {
}
}//package
Section 43
//MochiBot (MochiBot)
package {
import flash.display.*;
import flash.net.*;
import flash.system.*;
public dynamic class MochiBot extends Sprite {
public static function track(_arg1:Sprite, _arg2:String):MochiBot{
var _local3:MochiBot;
var _local4:String;
var _local5:URLVariables;
var _local6:String;
var _local7:URLRequest;
var _local8:Loader;
if (Security.sandboxType == "localWithFile"){
return (null);
};
_local3 = new (MochiBot);
_arg1.addChild(_local3);
Security.allowDomain("*");
Security.allowInsecureDomain("*");
_local4 = "http://core.mochibot.com/my/core.swf";
_local5 = new URLVariables();
_local5["sb"] = Security.sandboxType;
_local5["v"] = Capabilities.version;
_local5["swfid"] = _arg2;
_local5["mv"] = "8";
_local5["fv"] = "9";
_local6 = _local3.root.loaderInfo.loaderURL;
if (_local6.indexOf("http") == 0){
_local5["url"] = _local6;
} else {
_local5["url"] = "local";
};
_local7 = new URLRequest(_local4);
_local7.contentType = "application/x-www-form-urlencoded";
_local7.method = URLRequestMethod.POST;
_local7.data = _local5;
_local8 = new Loader();
_local3.addChild(_local8);
_local8.load(_local7);
return (_local3);
}
}
}//package
Section 44
//ShootSound (ShootSound)
package {
import flash.media.*;
public dynamic class ShootSound extends Sound {
}
}//package