1

我的舞台上有一个可拖动的影片剪辑。当它击中另一个对象/电影剪辑时,会出现“击中”这个词。到目前为止,一切都很好。但是,我希望可拖动的影片剪辑以不同的反应击中多个其他对象(例如加载其他影片剪辑或其他内容)。

这是我最热门的部分的代码:

import flash.events.Event;

this.addEventListener( Event.ENTER_FRAME, handleCollision)

function handleCollision( e:Event ):void
{
    if(blok3.hitTestObject(schaap))

       {
           output_txt.text = "HIT"
       }
       else
       {
           output_txt.text = ""
       }

}

SCHAAP是可拖动对象,blok3是当可拖动对象碰到它时触发单词“hit”的对象。

我希望你们能帮助我!

4

1 回答 1

0

你已经有一个碰撞的触发器和一个输出(如果 blok3 htis schaap,输出“HIT”),所以一个简单的扩展是在现有的下面添加另一个 if 语句:

function handleCollision( e:Event ):void
{
    if(blok3.hitTestObject(schaap))    
    {
        output_txt.text = "HIT"
    }
    // else if statement to check for collision on second object
    else if(differentBlok.hitTestObject(schaap))
    {
        output_txt.text = "SMASH"
    }
    else
    {
        output_txt.text = ""         
    }

}

从这里您可以查看将对象存储在数组中并遍历数组以检查冲突,而不是为每个对象使用单独的 if 语句。

于 2012-10-11T12:16:10.573 回答