matthewdvista

Untitled

Nov 24th, 2016
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. package {
  2.     import flash.display.MovieClip;
  3.     import flash.events.MouseEvent;
  4.     import flash.events.Event;
  5.     import flash.geom.ColorTransform;
  6.     import flash.media.Sound;
  7.     import flash.media.SoundChannel;
  8.  
  9.     public class BowAndArrowCode extends MovieClip {
  10.  
  11.         public function BowAndArrowCode() {
  12.  
  13.             // variables and arrays ********************************************************************************
  14.  
  15.             var aArray: Array = new Array();
  16.             var xArray: Array = new Array();
  17.             var yArray: Array = new Array();
  18.             var okArray: Array = new Array();
  19.  
  20.             var okFire: Boolean = true;
  21.  
  22.             var speed: Number = 18;
  23.  
  24.             var dir: String = "up";
  25.  
  26.             var aColor: ColorTransform = new ColorTransform();
  27.             var bColor: ColorTransform = new ColorTransform();
  28.  
  29.             // on load **********************************************************************************************
  30.  
  31.             var b: bow = new bow();
  32.             addChild(b);
  33.             b.x = 275;
  34.             b.y = 350;
  35.             b.width = 75;
  36.             b.height = 50;
  37.  
  38.             // event listeners ***************************************************************************************
  39.  
  40.             addEventListener(Event.ENTER_FRAME, mainFun);
  41.             function mainFun(evt: Event): void {
  42.                 moveArrows();
  43.                 if (dir == "up") {
  44.                     speed++;
  45.                     trace (speed);
  46.                     if (speed > 55) dir = "down";
  47.                 } else if (dir == "down") {
  48.                     speed--;
  49.                     if (speed < 0) dir = "up";
  50.                 }
  51.             }
  52.  
  53.             stage.addEventListener(MouseEvent.MOUSE_UP, shootFun);
  54.             function shootFun(evt: MouseEvent): void {
  55.                 var tempAngle: Number = (b.rotation + 90) * Math.PI / 180;
  56.                 xArray[xArray.length - 1] = Math.cos(tempAngle) * speed;
  57.                 yArray[yArray.length - 1] = Math.sin(tempAngle) * speed;
  58.                 okArray[okArray.length - 1] = true;
  59.                 okFire = true;
  60.             }
  61.  
  62.             stage.addEventListener(MouseEvent.MOUSE_DOWN, fireFun);
  63.             function fireFun(evt: MouseEvent): void {
  64.  
  65.                 if (okFire) {
  66.                     speed = 0;
  67.                     var a: arrow = new arrow();
  68.                     aArray.push(a);
  69.                     addChild(aArray[aArray.length - 1]);
  70.                     aArray[aArray.length - 1].x = b.x;
  71.                     aArray[aArray.length - 1].y = b.y;
  72.                     aArray[aArray.length - 1].rotation = b.rotation;
  73.  
  74.                     aColor.color = Math.random() * 0xFFFFFF;
  75.                     bColor.color = Math.random() * 0xFFFFFF;
  76.                     aArray[aArray.length - 1].transform.colorTransform = aColor;
  77.                     b.transform.colorTransform = bColor;
  78.  
  79.                     var tempAngle: Number = (b.rotation + 90) * Math.PI / 180;
  80.                     xArray.push(0);
  81.                     yArray.push(0);
  82.                     okArray.push(false);
  83.                     okFire = false;
  84.                 }
  85.  
  86.             }
  87.  
  88.             stage.addEventListener(MouseEvent.MOUSE_MOVE, aimingFun);
  89.             function aimingFun(evt: MouseEvent): void {
  90.  
  91.                 b.rotation = (Math.atan2(b.y - mouseY, b.x - mouseX) * 180 / Math.PI) - 90;
  92.  
  93.                 if (okArray[okArray.length - 1] == false) {
  94.                     aArray[aArray.length - 1].rotation = b.rotation;
  95.                 }
  96.  
  97.             }
  98.  
  99.             // functions ******************************************************************************************
  100.  
  101.             function moveArrows(): void {
  102.  
  103.                 for (var i: Number = 0; i < aArray.length; i++) {
  104.  
  105.                     if (okArray[i] == true) {
  106.                         aArray[i].x -= xArray[i];
  107.                         aArray[i].y -= yArray[i];
  108.                         yArray[i] -= .5;
  109.                         aArray[i].rotation = Math.atan2(yArray[i], xArray[i]) * 180 / Math.PI - 90;
  110.                     }
  111.  
  112.                 }
  113.             }
  114.         }
  115.     }
  116. }
Advertisement
Add Comment
Please, Sign In to add comment