Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 10.02.2013, 00:51
dimaMJ вне форума Посмотреть профиль Отправить личное сообщение для dimaMJ Найти все сообщения от dimaMJ
  № 1  
Ответить с цитированием
dimaMJ

Регистрация: Feb 2013
Сообщений: 51
По умолчанию Проблема с классами

Ребят обьясните почему когда код пишешь в кадре все ок работает когда пишешь в классе и вызываешь данную ф-цию через экземпляр класса все через одно место выходит! мне нужно просто по заданию чтоб все было через классы сделано а не просто в кадрах ф-циями, что я могу не так делать что у меня не получается, вот пример есть класс, он выполняет слежку за игроком, тестировал его в кадре все ок, когда в классе тестируй начинается полный бред, когда персонаж прыгает на какую то платформу камера начинает шататься вниз вверх с персонажем что это блин за бред!? вот класс данный
Код AS1/AS2:
class Camerap  {
 
	//крайнее положение, когда персонаж упирается влево
var x0 = 39;
//крайнее положение, когда персонаж упирается вправо
var x9 = -537;
//крайнее положение, когда персонаж упирается в потолок
var y0 = 10;
//крайнее положение, когда персонаж внизу
var y9 = -10;
 
public function Cam() 
{
 
_x = -(_root.cat._x - 375);
_y = -(_root.cat._y - 470);
 
_x = (_x > x0)? x0 : (_x < x9)? x9 : _x;
_y = (_y > y0)? y0 : (_y < y9)? y9 :_y;
}
 
 
 
}

Старый 10.02.2013, 14:00
Hauts вне форума Посмотреть профиль Отправить личное сообщение для Hauts Посетить домашнюю страницу Hauts Найти все сообщения от Hauts
  № 2  
Ответить с цитированием
Hauts
 
Аватар для Hauts

блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,113
Записей в блоге: 1
Отправить сообщение для Hauts с помощью ICQ Отправить сообщение для Hauts с помощью Skype™
Хм. Во-первых, не называйте методы с большой буквы. С большой буквы называются классы, но не их методы.

Во-вторых — у вас какое-то неправильное нагромождение логики, замешанное с классами. Давайте по-порядку:

Откуда берутся и кому принадлежат свойства _x и _y в методе Cam()? Нет же указания, что Camerap наследуется от MovieClip`а.

Вы понимаете, что вам нужно каждое обновление экрана вызывать метод Cam, для того, чтобы эти свойства _x и _y как-то менялись? Если вы так и хотите, то назовите метод, например, "updatePosition" или "follow".

Почему в классе, который ответственен за положение камеры (как я понимаю), есть указание на _root.cat? Может, все-таки, у класса, который описывает кота, сделать метод "constrain" и передавать в него экземпляр класса Rectangle, который, как раз, и описывает прямоугольную область?

Если у вас подразумевается одна камера (по-сути, вьюпорт игры), то вам вполне можно создать класс со статик-методами для управления, например.
__________________
hauts.ru

Создать новую тему Ответ Часовой пояс GMT +4, время: 12:42.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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