| mihael_p |
11.06.2013 13:55 |
добавление объекта в координаты не содержащие другой объект
Есть задача - расставить объекты на сцене так, чтобы ни один объект не налезал, не закрывал собой, другой объект. Я вроде начал писать решение и тут же застопорился. Помогите пожалуйста, подскажите как быть?
Вот, что надумал я:
Код AS3:
for (var i:int = 0; i < animalsCount; i++)
{
animal = new Animal(nowAnimals.pop(), i);
animal.addEventListener(AnimalEvents.ANIMAL_CHECKED, check);
animal.addEventListener(AnimalEvents.ANIMAL_REMOVED, remCLS);
animals.push(animal);
addChild(animal);
locateAnimals(animal);
}
private function locateAnimals(anim:Animal):void
{
if (animals.length == 0)
{
anim.x = int( 75 + ( Math.random() * ( 600 - 75 + 1 ) ));
anim.y = int( 75 + ( Math.random() * ( 600 - 75 + 1 ) ));
return;
}
var X:int = int( 75 + ( Math.random() * ( 600 - 75 + 1 ) ));
var Y:int = int( 75 + ( Math.random() * ( 600 - 75 + 1 ) ));
anim.x = X;
anim.y = Y;
for (var i:int = 0; i < animals.length; i++)
{
var obj:Animal = animals[i] as Animal;
if (anim.hitTestObject(obj))
{
}else {
anim.x = X;
anim.y = Y;
}
}
}
|