代码之家  ›  专栏  ›  技术社区  ›  Pieter888

如何访问AS3中Flash中的不同movieclip

  •  0
  • Pieter888  · 技术社区  · 16 年前

    在过去的几周里,我一直在尝试学习动作脚本3,制作小型互动游戏来学习基础知识。我偶尔会遇到一个问题,但大多数时候谷歌都在帮助我。

    但这个问题让我陷入困境,请帮助:

    主舞台包括两个物体(movieclips)、播放器和一面墙。 玩家有自己的代码,所以当我在玩家对象中拖动时,我不需要在主阶段编写任何代码来移动玩家。

    这一切都很好地工作,我现在想添加墙,这样球员实际上有东西反弹。

    现在问题来了,我想检查一下播放器是否接触到墙壁,我以前做过,但那是当我使用主舞台作为我的编码游戏,而不是把代码放在movieclips。如何检查玩家是否在玩家对象的移动代码内撞到墙?

    1 回复  |  直到 16 年前
        1
  •  1
  •   a--m    16 年前

    访问对象的方法有很多种,这里有一种可能的解决方案:

    var wall:MovieClip = this.parent.getChildByName("wall") as MovieClip;
    

    我假设你有一个播放器movieclip,直接添加到stage(没有容器),代码进入这个对象。墙对象必须具有“墙”的实例名称。

    编辑:关于碰撞,可以使用HitestObject进行,例如:

    var wall:MovieClip = this.parent.getChildByName("wall") as MovieClip;
    trace("check collision: "+this.hitTestObject(wall));