Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Классы, объекты, свойства... (http://www.flasher.ru/forum/showthread.php?t=141949)

KipSyS 08.07.2010 18:29

Классы, объекты, свойства...
 
Решил занятся ООП. Уж расхвалили его все. вроде код более читабельнее..А с моим способом кодирования без ООП...Сам блевать хочу после того как увижу свой код...В общем, момент такой, я фиг знает как сделать
Ball.as:
Код AS1/AS2:

dynamic class Ball {
        var xPos:Number;
        var yPos:Number;
        var speed:Number;
        var vector:Number;
        //Создаем шар
        function createBall(param_x:Number, param_y:Number, param_speed:Number) {
                this._x = xPos=param_x;
                this._y = yPos=param_y;
                speed = param_speed;
                for (i=0; i<=1; i++) {
                        var Clip:MovieClip = attachMovie("hero", "z"+i, i);
                        Clip._x = xPos;
                        Clip._y = yPos;
                }
        }
        //"Слушаем" нажатия
        function setKey(param_code:String) {
                if (param_code == "LEFT") {
                        this._x += speed;
                }
                if (param_code == "RIGHT") {
                        this._x -= speed;
                }
        }
}

Ball.fla
Код AS1/AS2:

var MyBall:Ball = new Ball();
//Cтавим мяч где нибуть
MyBall.createBall(random(300), random(300), 3);
//Отправляем нажатия
onEnterFrame = function () {
        if (Key.isDown(Key.LEFT)) {
                MyBall.setKey("LEFT");
        }
};

И он не двигается =(((
А почему?
И еще, есть ли способ присваивать координаты(this._x,this._y), не объявляя класс динамическим (dynamic)? Без него он выдает, что свойство не существует вроде.

Добавлено через 3 часа 17 минут
12 просмотров, 0 ответов...
NoCD на тебя вся надежда =)))

in4core 09.07.2010 02:54

ваще на меня скорее. я по классам работаю)) завтра отпишу если никто не ответит

rainbowrussia 09.07.2010 03:18

Если опустить момент про "блевать", то не понимаю, чего вы пытаетесь сдвинуть при помощи "this._x"? Класс? На мой взгляд это примерно как "повернуть класс Math на 90 градусов"... Двигайте мувиклипы, а не классы. Чтобы двигать this, класс должен быть хотя бы наследником MovieClip.

NoCD 09.07.2010 10:41

Здесь я думаю исчерпывающий ответ!

Котяра 09.07.2010 11:39

Код AS1/AS2:

class Ball  extends MovieClip

но тогда никакого
Код AS1/AS2:

var MyBall:Ball = new Ball();



Часовой пояс GMT +4, время: 12:06.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.