import flash.events.MouseEvent;//Импорт чего-то там...
import flash.display.MovieClip;
import flash.events.Event;
import flash.events.KeyboardEvent;
var gradus:Number;//Градус
var mousex:Number;//Переменная для оси х
var mousey:Number;//Переменная для оси у
var bullet:MovieClip = new mc_bullet;//Переменная для создания пули
var bulletSpeed:Number = 10;//Переменная для скорости пули
stage.addEventListener(MouseEvent.CLICK,mouseClick);//Слушатель для клика мыши
stage.addEventListener(Event.ENTER_FRAME,bulletMove);//Слушатель для движения пули
stage.addEventListener(KeyboardEvent.KEY_DOWN,moveHero);//Слушатель для движения Hero
function mouseClick(e:MouseEvent):void//Функция для клика мыши
{
mousex = mouseX;//Узнаем ось по х
mousey = mouseY;//Узнаем ось по у
addChild(bullet);//Рисуем пулю(Кубик)
bullet.x = hero.x;//Позиционируем кубик(Пулю) там где и Hero по х
bullet.y = hero.y;//Позиционируем кубик(Пулю) там где и Hero по у
trace(mousex, mousey);
gradus = Math.atan2(mousey-bullet.y,mousex-bullet.x)*180/Math.PI;//Узнаем градус клика по отношению к пули.
}
function moveHero(e:KeyboardEvent):void//Функция для движения Hero.
{
//Движение с помощью WASD(У меня кнопка Left не пашет на буке
)
if (e.keyCode == 87)//W
{
hero.y -= 5;
}
if (e.keyCode == 83)//S
{
hero.y += 5;
}
if (e.keyCode == 65)//A
{
hero.x -= 5;
}
if (e.keyCode == 68)//D
{
hero.x +=5;
}
}
function bulletMove(e:Event):void {
var radians:Number = gradus * Math.PI / 180;//Переводим градус в радиан.
var vx:Number = Math.cos(radians) * bulletSpeed;//Хрен знает зачем но надо...
var vy:Number = Math.sin(radians) * bulletSpeed;//Хрен знает зачем но надо...
bullet.x += vx;//Двигаем пулю по оси х.
bullet.y += vy;//Двигаем пулю по оси у
}