繁体   English   中英

AS3-如何更改所有相同Movieclips运行时的内容?

[英]AS3 - How can I change contents of all the same Movieclips runtime?

因此,基本上,我想做的是替换已经在Player MovieClip中的剑MovieClip的内容,并对其进行动画处理,因此它在Player MovieClip中具有剑MovieClip的多个实例。

我可以以某种方式在动作脚本中编辑剑MovieClip的内容,以便所有剑MovieClips都可以更新和更改吗?

我要实现的只是改变角色动画的武器,不需要我等待每一帧并删除武器的每个实例的前一个武器的removeChild()和addChild()的新武器。

我不确定我是否知道,但是也许您需要武器事件类包WeaponEvents {import flash.events.Event;。

[Event(name="sword1", type="event.sword1")]
[Event(name="sword2", type="event.sword2")] 


public class SwordEvent extends Event
{

    public static const SWORD_1 : String = "sword1";
    public static const SWORD_2 : String = "sword2";

    public var arg:*;

    public function SwordEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false, ... a:*) {
        super(type, bubbles, cancelable);
        arg = a;

    }

//重写clone重写公共函数clone():Event {返回新的LoadEvent(type,bubble,cancelable,arg); }}}

只需在用户使用武器时添加事件即可。

我和你在同一条船上。 除了要覆盖30-50个身体部位之外,我真的不能走蛮力之路。

如果只是要替换的剑,我会在动画中假设它在自己的图层上? 然后我发现的“便宜的方法”是:

  1. 复制将该层(仅该层)中的所有帧粘贴到另一个动画片段中,即Sword1Swing。
  2. 从MC动画中删除该图层(并且仅删除该图层)。
  3. 在另一个电影图层中,将Sword1Swing放在第1帧上,将Sword2Swing放在第2帧上,依此类推。
  4. MC.gotoAndStop("SwordSwing"); SwordMC.gotoAndStop("Sword1Swing");
  5. 只要您保持SwordMC的.x和.y与MC同步,动画就应该始终对齐。
  6. 手通常会越过剑的顶部,在这种情况下...您也可以复制手。 或整个手臂。 或者,您可以自定义库中剑符号的基本图形的形状,使其与手指之间的空白完全匹配(在适当的位置复制并粘贴手形图形以删除不需要的部分,然后删除手形图形,这样您将拥有完美的形状) 。

这是我知道的贫民区方式,我非常需要实际的有效交换。 但这可以帮助您快速完成项目。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM