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

Регистрация: Jan 2014
Сообщений: 181
Отправить сообщение для zackscript с помощью Skype™
как то не корректно стреляет мой кораблик
выстрел.swf   (2.1 Кб)

Код 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 cont:Sprite = new Sprite  ;
 
stage.addEventListener(MouseEvent.MOUSE_MOVE , moveShip);
stage.addEventListener(MouseEvent.CLICK, fire);
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)
{
 
	var angle = ship.rotation;
	angle = angle * Math.PI / 180;
	var bull:MovieClip = new bul();
	cont.addChild(bull);
	this.addChild(cont);
	cont.getChildAt(cont.numChildren - 1).x = ship.x + nose * Math.cos(angle);
	cont.getChildAt(cont.numChildren - 1).y = ship.y + nose * Math.sin(angle);
	cont.getChildAt(cont.numChildren - 1).xmov = speed * Math.cos(angle);
	cont.getChildAt(cont.numChildren - 1).ymov = speed * Math.sin(angle);
	cont.getChildAt(cont.numChildren - 1).addEventListener(Event.ENTER_FRAME ,bullMove);
	function bullMove(e:Event)
	{
		cont.getChildAt(cont.numChildren - 1).x +=  cont.getChildAt(cont.numChildren - 1).xmov;
		cont.getChildAt(cont.numChildren - 1).y +=  cont.getChildAt(cont.numChildren - 1).ymov
	}
}
Вложения
Тип файла: swf выстрел.swf (2.1 Кб, 74 просмотров)