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

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

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

Регистрация: Nov 2007
Сообщений: 4
Question Передвижные объекты-препятствия - для флеш-игры

Делаю флеш-игру. Есть два квадратных объекта (мувиклипа). Первый перемещается стрелками курсора на 10 пикселей соответственно. Мне нужно, чтобы второй мувик был для него препятствием: чтобы со всех сторон он на него натыкался, а не проходил насквозь. Просмотрела весь AS help, ну никак. К томе же, я работаю не во FlashMX, а в другой, простой проге (Selteco), и поэтому там не все коды для MX подходят - сложно... (( Вообще, у меня получалось добиться того, чтобы 1й мувик натыкался на 2-й, но для этого мне пришлось "чесать левой ногой правое ухо": я описывала координатные промежутки относительно каждой стороны квадрата-"препятствия", но получилось очень громоздко... А ведь таких препятствий планируется несколько...

Код примерно такой:

Код:
onEnterFrame = function() {

////// stop

if (object1._y < Stage.heigh() + 145 ) 
{object1._x = object1._x; };
if (object1._x < Stage.width() + 195 ) 
{object1._y = object1._y; };

////// right

if (Key.isDown(Key.right)) 
{if (object1._y < Stage.heigh() + 55  || 
object1._y > Stage.heigh() + 135  || 
object1._x < Stage.width() + 95  || 
object1._x > Stage.width() + 155)
{ object1._x = 10 + object1._x; }};

////// left

if (Key.isDown(Key.left)) 
{if (object1._y < Stage.heigh() + 55  || 
object1._y > Stage.heigh() + 135  || 
object1._x < Stage.width() + 145  || 
object1._x > Stage.width() + 195 )
{ object1._x = -10 + object1._x; }};

////// down

if (Key.isDown(Key.down)) 
{if (object1._x < Stage.width() + 105  || 
object1._x > Stage.width() + 185  || 
object1._y < Stage.heigh() + 45  || 
object1._y > Stage.heigh() + 95 )
{ object1._y = 10 + object1._y; }};

////// up

if (Key.isDown(Key.up)) 
{if (object1._x < Stage.width() + 105  || 
object1._x > Stage.width() + 185  || 
object1._y < Stage.heigh() + 95  || 
object1._y > Stage.heigh() + 145 )
{ object1._y = -10 + object1._y; }};

}
Замучалась!!! Казалось бы, это же так просто сделать - много самых простых флеш игр ведь на этом построено (напр. "Socoban")... А у меня ничего не выходит, я ведь только дилетант в AS... Ребята, помогите, пожалуйста!!! Для меня это очень важно... Заранее спасибо.

ЗЫ: Извините, что в прошлый раз создала тему не в том разделе

Старый 05.11.2007, 01:08
udaaff вне форума Посмотреть профиль Отправить личное сообщение для udaaff Найти все сообщения от udaaff
  № 2  
Ответить с цитированием
udaaff
...

модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
Читайте про метод мувика hitTest

Старый 05.11.2007, 21:38
Anastasiart вне форума Посмотреть профиль Отправить личное сообщение для Anastasiart Найти все сообщения от Anastasiart
  № 3  
Ответить с цитированием
Anastasiart

Регистрация: Nov 2007
Сообщений: 4
Спасибо за совет! Буду разбираться...

Старый 05.11.2007, 23:13
D12 вне форума Посмотреть профиль Отправить личное сообщение для D12 Найти все сообщения от D12
  № 4  
Ответить с цитированием
D12
меценат
 
Аватар для D12

блогер
Регистрация: Jan 2004
Адрес: D
Сообщений: 1,592
Записей в блоге: 2
Вот держи
Вложения
Тип файла: rar tut05.rar (5.7 Кб, 79 просмотров)
__________________
Безвыходных положений небывает © Барон Мюнхаузен=)Исходники

Старый 06.11.2007, 21:42
Anastasiart вне форума Посмотреть профиль Отправить личное сообщение для Anastasiart Найти все сообщения от Anastasiart
  № 5  
Ответить с цитированием
Anastasiart

Регистрация: Nov 2007
Сообщений: 4
Ребята, спасибо еще раз!!!

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

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

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


 


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


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