AS3 Flash复制movieclip cardgame

时间:2015-08-05 23:52:17

标签: arrays actionscript-3 flash duplicates movieclip

我在纸牌游戏中工作,你可以用一组卡片创建一个牌组。你可以创建总共3个不同的套牌。

该集合显示了一个对象数组,这些对象包含:

  • 动画片段(卡片图片+文字字段)
  • 文本字段值
  • 以及字符串形式的一些附加数据。

现在,当我点击集合中的一张卡片添加到例如套牌1.我不希望它从集合中删除因为我喜欢在其他套牌中使用它而不是我与构造函数重复方法:

var tempClass:Class = Object(target).constructor;
var tempcard = new tempClass() as Object;

所以这种做法的问题在于,无论何时我把这个套牌带入比赛,都没有真正的方法可以参考这张牌。由于套牌中的每张牌都被称为临时卡。

此外,我正在制作拖放系统,让我将1张牌从我牌组中的某个位置拖到我牌组中的另一个位置,或者将2张牌放在另一张牌上。所有这些" temp将使这项工作极其困惑和困难。

欢迎任何帮助

1 个答案:

答案 0 :(得分:0)

你应该创建一个名为' Card'并从MovieClip扩展它。在本课程中,您应该创建一个名为' id'的新属性,该属性对于每张卡都应该是唯一的。将这些类的实例存储在您的集合中。

这样,当您比较两张牌时,您应该能够轻松识别哪张牌。我在下面提供了一些示例代码。

package
{
    import flash.display.MovieClip;

    public class Card extends MovieClip
    {
        public var id:String;

        public function Card(cardID:String)
        {
            super();
            this.id = cardID;
        }
    }
}

希望这有帮助。