2017-01-25 1 views
0

Я делаю карточную игру, и я случайно вызываю некоторые карты из библиотеки. Но я не могу использовать эти карты. Есть ли способ сделать этот ребенок доступным? И еще один вопрос. Если у вас есть шанс использовать один массив печати для всех 22 карт, которые мне нужно показать на сцене? Или я должен создать новый шрифт и новое случайное число для каждой карты? Примечание: каждая карта имеет разные точки.Используйте ребенка в as3 adobe aimate

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) 
} 
+0

'mc1.addEventListener (MouseEvent.CLICK, clickCard);' –

+0

Положи, где у вас есть другие МС1-х. Затем в других местах, помимо любых других функций, это: 'private function clickCard (e: MouseEvent): void {trace (e.target)}' –

+0

Я просто добавил это как ответ. Вы также можете просто оставить комментарий. –

ответ

0
mc1.addEventListener(MouseEvent.CLICK, clickCard); 

Положи, где у вас есть другие МС1-х. Тогда в другом месте, за пределами любых других функций поставить это:

private function clickCard(e:MouseEvent):void{ 
    //trace(e.target); 
} 
Смежные вопросы