Вторник, 30 Мая 2023, 11:00

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Форум игроделов » Конструкторы игр и лёгкие в освоении системы разработки игр » Adobe Flash и Создание флэш-игр » давайте все таки разберемся с пользовательским курсором
давайте все таки разберемся с пользовательским курсором
VislouhДата: Среда, 26 Января 2011, 21:51 | Сообщение # 1
частый гость
Сейчас нет на сайте
да,вроде бы во всех справочниках об этом написано,но повесить движущуюся картинку на курсор это не значит сделать ее действительно курсором. у меня сейчас есть прицел-курсор,который двигается относительно перемещения мышки и даже реагирует на события клика. но на сцену добавляются по таймеру враги, и курсор прячется за ними а не располагается поверх всего как и положено курсору.они же в одном контейнере, что курсор что враги. пытался решить вопрос тем что курсор оставил в контейнере stage а врагов разместил в новом спрайте поверх сцены.теперь курсор пошел поверх врагов но вот мышей не ловит( то есть у него там на сцене пусто, нет врагов.враги этажом выше,скажем так. так получается нужно сделать так чтобы мой курсор был всегда сверху всего что будет в контейнере (а в контейнере количество обьектов непостоянно,враги ж то появляются то исчезают) . как это сделать? привожу код который у меня сейчас есть

package
{
import flash.display.DisplayObject;
import flash.display.Loader;
import flash.display.Sprite;
import flash.events.Event;
import flash.events.MouseEvent;
import flash.events.TimerEvent;
import flash.net.URLRequest;
import flash.utils.Timer;
import flash.ui.Mouse;

public class Main extends Sprite
{
private var container:Sprite = new Sprite;
private var blabla:Loader;
private var minutes:Timer = new Timer(500, 0);



public function Main():void
{
if (stage) init();
else addEventListener(Event.ADDED_TO_STAGE, init);
}

private function init(e:Event = null):void
{
removeEventListener(Event.ADDED_TO_STAGE, init);
// entry point
Mouse.hide();
this.blabla = new Loader;
this.blabla.load(new URLRequest("./images/cursor.png"));
addChild(this.container);
addChild(this.blabla);
stage.addEventListener(MouseEvent.MOUSE_MOVE, this.drawcursor);
minutes.addEventListener(TimerEvent.TIMER, this.vremechko);
minutes.start();


}

private function drawcursor(Event:MouseEvent):void {
this.blabla.x = Event.stageX-43;
this.blabla.y = Event.stageY - 43;
}


private function delVrag(Event:MouseEvent):void {
container.removeChild(Event.currentTarget as DisplayObject);

}


private function vremechko(Event:TimerEvent):void {
var nov:enemy = new enemy;
container.addChild(nov);
nov.x = Math.random()*200;
nov.y = Math.random()*300;
nov.addEventListener(MouseEvent.CLICK, this.delVrag);
var a:Number = stage.stageWidth;
var b:Number = stage.stageHeight;
trace(a, b);

}


}
}

Добавлено (26.01.2011, 21:51)
---------------------------------------------
это у меня сейчас вариант с размещением врагов и курсора на разных спрайтах. и вот вопрос: ведь если убрать все то что отвечает за появление пользовательского курсора-то стандартный курсор будет работать-то есть для него не существует такого понятия-не в том контейнере.стандартный работает везде ,во всех контейнерах. стало быть, есть какое то свойство какое я не учел при создании своего курсора?


новичок в изучении actionscript 3.0
AssasinДата: Среда, 26 Января 2011, 22:24 | Сообщение # 2
web-coder
Сейчас нет на сайте
Quote (Vislouh)
addChild(this.container);addChild(this.blabla);

Ты читал справку по addChild?
У тебя сейчас идет на первом плане this.container, а за ним this.blabla.
Сделай так
Code

addChild(this.blabla);addChild(this.container);

Почитай внимательно про addChild, addChildAt.
VislouhДата: Четверг, 27 Января 2011, 16:48 | Сообщение # 3
частый гость
Сейчас нет на сайте
ага.поменял.в результате курсор опять прячется за обьектами...

Добавлено (27.01.2011, 16:48)
---------------------------------------------
Ассасин,у меня видишь там по таймеру функция работает. private function vremechko(Event:TimerEvent):void {
var nov:enemy = new enemy;
container.addChild(nov); то есть каждый промежуток времени у меня должны появляться новые враги,и выполняется аддчилд. вот поэтому наверное?


новичок в изучении actionscript 3.0
Форум игроделов » Конструкторы игр и лёгкие в освоении системы разработки игр » Adobe Flash и Создание флэш-игр » давайте все таки разберемся с пользовательским курсором
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2023 Рейтинг