Показать сообщение отдельно
Старый 22.06.2016, 11:27
ZackMercury вне форума Посмотреть профиль Отправить личное сообщение для ZackMercury Найти все сообщения от ZackMercury
  № 15  
Ответить с цитированием
ZackMercury
 
Аватар для ZackMercury

блогер
Регистрация: Jul 2013
Адрес: Север
Сообщений: 1,921
Записей в блоге: 23
Отправить сообщение для ZackMercury с помощью ICQ Отправить сообщение для ZackMercury с помощью Skype™
не делайте так. вы не в курсе, что это такое и как называется, поэтому просто не делайте так.
Код AS3:
function ...():void
{
   function ...():void
   {
   }
}
Правильно:
Код AS3:
import flash.events.MouseEvent;
import flash.display.MovieClip;
import flash.display.Sprite;
 
var speed:Number = 10;// скорость пули = 10
var depth:Number = 0;// глубина = 0
var nose:int = 50;// нос корабля
var xmov:Number;
var ymov:Number;
var bullets:Array = [];
 
stage.addEventListener(MouseEvent.MOUSE_MOVE , moveShip);
stage.addEventListener(MouseEvent.CLICK, fire);
stage.addEventListener(Event.ENTER_FRAME, update);
 
function moveShip(e:MouseEvent):void
{
	var xDiff = mouseX - ship.x;// находим  
	var yDiff = mouseY - ship.y;// координаты 
	var angle = Math.atan2(yDiff,xDiff);
	angle = angle * 180 / Math.PI;// переводим в градусы
	ship.rotation = angle;// поворачиваем
 
}
function fire(e:MouseEvent):void
{
 
	var angle = ship.rotation * Math.PI / 180;;
	var bull:MovieClip = new bul();
	addChild(bull);
	bullets.push(bull);
	bull.angle = angle;//ну можно и ymov/xmov записать, так просто короче, а производительность это сейчас не посадит.
	bull.x = ship.x + nose * Math.cos(angle);
	bull.y = ship.y + nose * Math.sin(angle);
}
 
function update(e:Event = null):void
{
	for(var i:int = 0; i < bullets.length; i ++)
	{
		bullets[i].x +=  Math.cos(bullets[i].angle) * speed;
		bullets[i].y +=  Math.sin(bullets[i].angle) * speed;
	}
}
__________________
There is no thing in this world that is not simple.