Wednesday, December 29, 2010

Simple Hit Game

import fl.transitions.Tween;
import fl.transitions.easing.None;
import fl.transitions.easing.Bounce;
import fl.transitions.TweenEvent;
import flash.utils.Timer;

var score:Number=0;
score_txt.text="Score : "+String(score);
win_mc.alpha=0;
function mouseMoveListener(evt:MouseEvent):void {
    if (evt.currentTarget.mouseY<=(stage.stageHeight-tankar_mc.height)) {
        tankar_mc.y=evt.currentTarget.mouseY;
    }
}
stage.addEventListener(MouseEvent.MOUSE_MOVE, mouseMoveListener);
stage.addEventListener(MouseEvent.MOUSE_DOWN, clickHandler);


tankar_mc.fire_mc.alpha=100;
function clickHandler(evt:MouseEvent):void {
    var myTween:Tween=new Tween(tankar_mc.fire_mc,"x",None.easeNone,0,(stage.stageWidth),1,true);
    myTween.addEventListener(TweenEvent.MOTION_FINISH, finishFireHandler);
}
var repeat:Number=30;
var delay:Number=1000;
var t:Timer=new Timer(delay,repeat);
t.start();
t.addEventListener(TimerEvent.TIMER_COMPLETE, timerComplete);
t.addEventListener(TimerEvent.TIMER, timerHandler);

function timerHandler(e:TimerEvent):void {
    repeat--;
    statusTextField.text = ((delay * repeat) / 1000) + " seconds left.";
}

function timerComplete(evt:TimerEvent):void {
    stage.removeEventListener(MouseEvent.MOUSE_MOVE, mouseMoveListener);
    stage.removeEventListener(MouseEvent.MOUSE_DOWN, clickHandler);
    myTween.removeEventListener(TweenEvent.MOTION_FINISH, motionFinishHandler);
    score_txt.text="Times Up";
    tankar_mc.fire_mc.alpha=0;
}

function finishFireHandler(evt:TweenEvent):void {

    var fire:MovieClip=tankar_mc.fire_mc as MovieClip;
    if (tankar_mc.fire_mc.hitTestObject(target_mc)) {
        tankar_mc.fire_mc.x=0;
        tankar_mc.fire_mc.alpha=100;
        trace("Hit");
        score++;
        if (score==10) {
            stage.removeEventListener(MouseEvent.MOUSE_MOVE, mouseMoveListener);
            stage.removeEventListener(MouseEvent.MOUSE_DOWN, clickHandler);
            myTween.removeEventListener(TweenEvent.MOTION_FINISH, motionFinishHandler);

            var winTween:Tween=new Tween(win_mc,"alpha",None.easeInOut,0,100,1,true);
            t.stop();
            stage.removeEventListener(MouseEvent.MOUSE_DOWN, clickHandler);
        }
        score_txt.text="Score : "+String(score);
    } else {

    }
}

function motionFinishHandler(evt:TweenEvent):void {
    evt.currentTarget.yoyo();
}
var myTween:Tween=new Tween(target_mc,"y",None.easeNone,0,(stage.stageHeight-target_mc.height),3,true);
myTween.addEventListener(TweenEvent.MOTION_FINISH, motionFinishHandler);

No comments:

Post a Comment