Я делаю файтинг во Flash, и хотя у меня все работает, мне чего-то не хватает: экрана победы/поражения. Логически я знаю, как это сделать:
if character.hp < 0
{
character.dead = true;
dispatchevent("death", event)
}
Моя проблема в том, что я понятия не имею, как его кодировать. Я знаю, что буду использовать два класса и два моих файла .fla (если я не ошибаюсь).
У меня есть два файла .fla, которые здесь используются: файл Menu.fla
и файл Arena.fla
. Menu.fla
содержит всю навигацию по игре, опции, экраны выбора персонажей и т. д., а когда игроку пора вступать в бой, загружает файл Arena.fla
, содержащий только фоны (в зависимости от выбранного этапа) и для теперь установлена длина только одного кадра. Для Arena.fla
настоящее действие происходит в моих классах, но по логике мне нужны только HP.as
и Character.as
.
В Character.as
я объявил следующую переменную:
var isDead:Boolean = false; //is character dead?
В HP.as
, поверьте, у меня должно быть следующее:
if(currentHp<0)
{
currentHp = 0;
character.isDead = true; //declared as var `character:Object;`
EventDispatcher.dispatchEventListener("playerDead", playerDead);
}
И, наконец, в Arena.fla
я хочу иметь возможность обнаруживать вышеупомянутый прослушиватель событий и просто переходить ко второму кадру, который будет отображать сообщение в стиле «ПЕРВЫЙ ИГРОК ВЫИГРАЛ» или «ПЕРВЫЙ ИГРОК ПРОИГРАЛ» с кнопка, которая позволит мне вернуться к экрану выбора персонажа. Это первая часть, в которой я застрял: как мне обнаружить отправленный прослушиватель событий в моем основном файле .fla?
Во-вторых, если игрок нажимает кнопку «ПРОДОЛЖИТЬ», которая отображается независимо от того, выиграл игрок или проиграл, как мой Menu.fla
(который загружает Arena.swf
) может обнаружить это событие нажатия, выгрузить игру и вернуться к выбору персонажа. экран?
Заранее благодарю вас за помощь. Я понимаю, что это много текста, но это самое описательное, на что я способен. Если у вас есть какие-либо вопросы или вам нужны какие-либо разъяснения по моему вопросу, не стесняйтесь высказываться.
-Кристофер