[10]: hitTestObject

Приветствую вас, флешеры :) Сегодня расскажу вам как определять столкновения и пересечения объектов в action script 3.0. :)
Начнём, пожалуй, с самого простого метода – hitTestObject. Этот метод определяет пересечение между ограничивающими прямоугольниками двух объектов, т.е. необязательно сам объект внутри должен пересекаться с другим. Если сложно понять на словах – смотрите видео :)
Допустим у нас есть на сцене 2 мувиклипа – ball1 и ball2, и чтобы определить их пересечение нужно написать вот это:

И если есть пересечение, то выполняем какое-либо действие. :)  Подробнее смотрите в видео, там подробно описаны ограничивающие прямоугольники и пересечения. :)

Обо всём этом (и не только этом) смотрите в видеоуроке ниже:

Исходник: yadi.sk/d/YYkE6PruF48Zx
Код ActionScript 3.0 из урока:

Всё подробно рассказано в видео :) Если будут какие-либо вопросы, пишите в комментариях к видео. Надеюсь, данный урок по реализации скорости в action script 3.0 в программе adobe flash, поможет вам в разработке игр. :)

 

Комментарии
  1. Rauf

    Я создал много таких шариков и прямоугольников. И написал таких кодов много. Каждому свой instance name. Они все правильные. Но бывает что только одна работает или только несколько

    • admin

      кинь исходник на codeforgames@gmail.com или в облаке выложи, у тебя по-любому в коде ошибки есть :)

  2. Светлана

    for(var i=1;i<=28;i++){
    var a:Array=new Array();
    for(var j=0;j<28;j++){
    a.push(["pr_mc.pl"+j+"_mc"]);

    if(ball_mc.hitTestObject(a[i])){
    speedY=-speedY;
    }
    }
    }
    подскажите, почему тут выдает ошибку
    TypeError: Error #2007: Параметр hitTestObject не должен быть равен нулю.
    at flash.display::DisplayObject/_hitTest()
    at flash.display::DisplayObject/hitTestObject()
    at kursovaya4_fla::MainTimeline/move2()

    • admin

      Привет, Света :) Не очень понял что вы хотите сделать этим странным кодом…
      Тут на самом деле много ошибок. Если вы хотите узнать, пересекается ли клип ball_mc с 27 клипами pl”+j+”_mc в клипе pr_mc, то подойдёт такой код
      https://yadi.sk/i/1ojjcUMHe6ong

Добавить комментарий для admin Отменить ответ

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">