【发布时间】:2017-01-25 10:04:55
【问题描述】:
我制作了一个纸牌游戏,我从图书馆随机调用了一些卡片。 但是我不能用这张卡。 有没有办法让这个孩子可以点击? 请再问一个问题。 如果有机会为我需要在舞台上展示的所有 22 张卡片使用一个打印阵列?或者我必须为每张卡片创建一个新的打印阵列和一个新的随机数? 注意:每张卡都有不同的积分。
var cards:Array = [k1, p1, s1, r1, r3,k4,p4,s4,r4,k5,p5,s5,r5
,k6,p6,s6,r6,k7,p7,s7,r7,k8,p8,s8,r8,k9,p9,s9,r9,k10,p10,s10,r10,
kj,pj,sj,rj,kq,pq,sq,rq,kk,pk,sk,rk];
var printArray:Array = [];
for (var n:int = 1; n <= 1; n++)
{
var randNo:int = int(Math.random() * 51);
printArray.push(randNo);
}
for (var c:int = 0; c < printArray.length; c++)
{
trace(printArray[c]);
var mc:MovieClip = new cards[printArray[c] ];
addChild(mc);
mc.width = 60;
mc.height = 80;
mc.x = 100;
mc.y = 50;
}
var print1Array:Array = [];
for (var n1:int = 1; n1 <= 1; n1++)
{
var rand1No:int = int(Math.random() * 51);
print1Array.push(rand1No);
}
for (var c1:int = 0; c1 < print1Array.length; c1++)
{
trace(print1Array[c1]);
var mc1:MovieClip = new cards[print1Array[c1] ];
addChild(mc1);
mc1.width = 60;
mc1.height = 80;
mc1.x = 70;
mc1.y = 80;
}
stage.addEventListener(Event.ENTER_FRAME,looping);
function looping(event:Event):void
{
//here ia want use the cards.Let say i want to if(mc1 is clicked)
}
【问题讨论】:
-
mc1.addEventListener(MouseEvent.CLICK, clickCard); -
把它放在你有其他 mc1 的地方。然后在其他地方,在任何其他功能之外放这个:
private function clickCard(e:MouseEvent):void{ trace(e.target) } -
我刚刚添加它作为答案。您也可以只为评论点赞。
标签: actionscript-3