playerAttack

by PXshadow
♥0 | Line 93 | Modified 2015-09-24 02:25:59 | MIT License
play

ActionScript3 source code

/**
 * Copyright PXshadow ( http://wonderfl.net/user/PXshadow )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/2YsE
 */

package {
    import flash.display.MovieClip;
    import flash.display.Sprite;
     import flash.text.TextFieldAutoSize;
    import flash.text.TextField;
    
   
    import flash.events.Event;
    import flash.events.KeyboardEvent;
    import flash.events.MouseEvent;
    public class FlashTest extends Sprite {
        public function FlashTest() {
            // write as3 code here..
            
            //vars
            var player:MovieClip = new MovieClip();
         var playerSize:Number = 20;
         
         var playerSpeed:Number = 5;
         
         var upPressed:Boolean = false;
         var downPressed:Boolean = false;
         var leftPressed:Boolean = false;
         var rightPressed:Boolean = false;
         
         var i:Number = 0;
         
         
         //hitbox vars
         var hbDist:Number = 120;
         var hbWidth:Number = 20;
         var hbHeight:Number = 50;
         
         
         var hitBox:MovieClip = new MovieClip();
         
         var spacePressed:Boolean = false;
         
         
         
         
         var keyPressed:String = "";
         
         
         
         
            
           
            
            
            var devText:TextField = new TextField();
            
            
            
            
            
            
            
            
             //create player
       
       player.graphics.lineStyle(0x000000);







            player.graphics.beginFill(0xFFFFFF);







            player.graphics.drawRect(-50,-50,100,100);
            







            player.graphics.endFill();       
            
            
            
            //creat tiles
            
            //add to stage 
            addChild(player);
            addChild(devText);
            addChild(hitBox);
            
            
            
            
            
            //update

            addEventListener(Event.ENTER_FRAME, function(_:Event):void {
            
            
                stage.addEventListener(KeyboardEvent.KEY_DOWN, function(event:KeyboardEvent):void {

                    

                



if(event.keyCode == 16){
    
    spacePressed = true;
}


                    

                    

                    

    

    
    if (event.keyCode == 38) {

    //up

    upPressed = true;



           

    

    

        

        

    }

    

    if (event.keyCode == 40) {

    //down

    downPressed = true;

    


    

        

    }

    

        if (event.keyCode == 37) {

    //left

    leftPressed = true;

    }

    

        if (event.keyCode == 39) {

    //right

    rightPressed = true;

    }

    

    

    

                 devText.text = String(event.keyCode);
                    

                });

                

                

                stage.addEventListener(KeyboardEvent.KEY_UP, function(event:KeyboardEvent):void {

                    

                    
                    

if(event.keyCode == 16){

    

    spacePressed = false;

}

    

    

    if (event.keyCode == 38) {

    //up

    upPressed = false;

    

    

        

        

        

    }

    

    if (event.keyCode == 40) {

    //down

    downPressed = false;

        

    }

    

        if (event.keyCode == 37) {

    //left

    leftPressed = false;

    }

    

        if (event.keyCode == 39) {

    //right

    rightPressed = false;

    }
            
            
            
            
            
            });
            
            //update 
            player.rotation = Math.atan2(stage.mouseY - player.y, stage.mouseX - player.x) * 180/Math.PI;
           
           
           if(player.hitTestPoint(stage.mouseX, stage.mouseY,true)){
               
           }else{
            if(upPressed == true){
                player.x += Math.round(Math.cos(player.rotation * Math.PI/180) * playerSpeed);
                player.y += Math.round(Math.sin(player.rotation * Math.PI/180) * playerSpeed);
                
                
            }
            
            if(spacePressed == true){
                
                
                
                
                hitBox.graphics.clear();
                 hitBox.graphics.lineStyle(0x000000);
            hitBox.graphics.beginFill(0xFFFFFF);
            hitBox.graphics.drawEllipse(-hbWidth/2,-hbHeight/2,hbWidth,hbHeight);
           
            hitBox.x = player.x + Math.cos(player.rotation * Math.PI/180) * hbDist;
            hitBox.y = player.y + Math.sin(player.rotation * Math.PI/180) * hbDist;
            
            hitBox.rotation = player.rotation;
            
            
            }
      
            
            


      
     
           
           
           }



//hitcollison for hitbox to player
if(hitBox.hitTestPoint(player.x + 50,player.y,true)){
    

    player.x += 5;
    player.y += 5;
}

            
            
            
            
            
            
            });
            
        }
    }
}

Forked