Как создать собственное свойство / метод внутри MovieClip? (AS3) - PullRequest
0 голосов
/ 11 апреля 2011

Я программирую что-то вроде «Lights Off» во Flash Professional (не Flash / Flex Builder) и было бы очень хорошо, если бы я мог управлять состоянием вкл / выкл в графически оформленном Символе, как это:

square1.on();
/* calling this method produces the same as */
square1.on = true;
square1.gotoAndStop("onState");

/* obviously, the next method: */
square1.off();
/* will produce */
square1.on = false;
square1.gotoAndStop("offState");

Возможно ли это? Как создать собственное свойство on и пользовательские методы on() и off()? Если это невозможно, что еще я могу сделать? Спасибо.

Ответы [ 3 ]

2 голосов
/ 11 апреля 2011

Используйте свойство, подобное state, и создайте две функции для изменения этого состояния и перемещения по точке воспроизведения.

Кроме того, вам следует расширить MovieClip для создания этих пользовательских свойств ... лучше практиковаться.

class MySquare extends MovieClip {
    public function on ():void {
        this.state = 'on';
        this.gotoAndStop('onState');
    }
    public function off ():void {
        // same, but for off
    }

[Учебник] Экспорт для ActionScript

0 голосов
/ 12 сентября 2012

У меня есть мувиклип с именем btn1, для которого мне понадобилось настраиваемое свойство sel (для выбранного состояния)

Вот как я это использовал.

btn1.sel = 1;

Вы также можете добавить новые свойства, такие как

btn1.name = "Prabhat";

или

btn1.selected = false;

Надеюсь, это поможет ... хотя я вижу довольно старый пост ... только в случае, если вам все еще нужна информация

0 голосов
/ 11 апреля 2011

Вы должны создать свой собственный класс, который расширяет MovieClip следующим образом:

public class CustomMovieclip extends MovieClip
{
   public function CustomMovieclip() {
     //constructor, here you do any initialization stuff
   {

   public function on() {
     //here you turn on the lights
   {

   public function off() {
     //here you turn off the lights
   {
}

И тогда вы можете просто назвать их так:

var bulb = new CustomMovieclip();
bulb.off();
...