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

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

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

Регистрация: Jul 2011
Сообщений: 15
По умолчанию Добавление на сцену масива объектов

Здравствуйте. Создаю класс Bonus, потом через массив добавляю бонусы на сцену(например 10 бонусов). Координаты х и у выбираются рандомно (бонусы появляются вверху видимой сцены и едут вниз). Фон игры состоит из двух мувиков которые двигаются вниз(back1, back2). Получается очень не красиво: иногда все объекты на одной куче. Как сделать чтобы объекты не налазили друг на друга, и появлялись по всей ширине сцены?
Добавляются бонусы вот так:
Код AS3:
                 for (var i:uint = 0; i < 10; i++)
			{
				allBonus = new Array();
				var type:Number = Math.floor(Math.random() * 3) + 1;// рандомно выбирается тип бонуса
				bon = new Bonus(type);
				bon.x = Math.round(Math.random() * (600 - 30)) + 30;
				bon.y = -250+Math.floor(Math.random()*200)+50;
				bon.onAdded();// функция в классе Bonus которая двигает бонусы
				back222.addChild(bon);
				allBonus.push(bon);
				bon.addEventListener(Event.ENTER_FRAME, checkBonus);
 
			}

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

Регистрация: May 2008
Адрес: {0,0}
Сообщений: 754
Записей в блоге: 1
Отправить сообщение для DaFive с помощью ICQ
В одну строку запихните.
Код AS3:
arr[i].x = arr[i-1].x+arr[i-1].width + offset;
Или важна неравномерность распределения?
__________________
Кодинг, багинг, алгоритминг. me @

Старый 23.08.2011, 15:05
toFL вне форума Посмотреть профиль Найти все сообщения от toFL
  № 3  
Ответить с цитированием
toFL
Banned

Регистрация: May 2011
Адрес: +48° 27' 57.93", +35° 2' 46.02"
Сообщений: 447
Записей в блоге: 2
Отправить сообщение для toFL с помощью Skype™
Цитата:
Координаты х и у выбираются рандомно
...
Как сделать чтобы объекты не налазили друг на друга, и появлялись по всей ширине сцены?
Следовательно, появляться они должны рандомно, но по правилам.
Предлагаю разбить ширину на секторы и уже в них делать рэндом. То есть, если ширина 400px - первый элемент будет располагаться случайно в пределах 0-100px, последующие в пределах 100-200px / 200-300px / 300-400px и т.п.

Старый 23.08.2011, 15:26
bogomol17 вне форума Посмотреть профиль Отправить личное сообщение для bogomol17 Найти все сообщения от bogomol17
  № 4  
Ответить с цитированием
bogomol17

Регистрация: Jul 2011
Сообщений: 15
Добавлено через 1 минуту
Цитата:
Сообщение от toFL Посмотреть сообщение
Следовательно, появляться они должны рандомно, но по правилам.
Предлагаю разбить ширину на секторы и уже в них делать рэндом. То есть, если ширина 400px - первый элемент будет располагаться случайно в пределах 0-100px, последующие в пределах 100-200px / 200-300px / 300-400px и т.п.
Спасибо, сейчас попробую.

Добавлено через 1 час 41 минуту
toFL суть идеи понятна. Не понятно как проверять элементы массива, то есть как к ним обращаться?


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

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

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


 


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


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