我已经在AS3代码(AIR(中制作了这个小游戏,用户可以在不同区域拖放星星。目的是将一定数量的恒星放在每个区域。
我该如何计算用户放入区域的恒星数?
在舞台上,我有:area1
,area2
和area3
和
star1
, star2
,... to star10
到目前为止,这是我的代码:
函数dragobject(e:mouseevent(:void { getPosition(e.target(;
e.target.startDrag(true);
}
function stopDragObject(e:MouseEvent):void
{
if (e.target.name == "area1" &&
//I think I should put something here to say area1 has been hit 4 times (hitTestObject for example ?)){
trace("Sucess");
}
有建议吗?
编辑
我在想类似的事情:
function stopDragObject(e:MouseEvent):void{
if (e.target && e.target.hitTestObject(getChildByName("area1"))){
e.target.stopDrag();
count++;
}
else{
e.target.stopDrag();
}
}
现在,当我将实例放置在area1
中时,它会添加" 1"。但是,如何从area 1
中删除实例,并告诉它从area 1
删除时进行count--
?
我认为,您应该尝试使用此功能 - 拖动对象并在掉落区域上计数 。
function dragObject(e:MouseEvent):void
{
getPosition(e.target);
e.target.startDrag(true);
count--;
}
function stopDragObject(e:MouseEvent):void
{
if (e.target && e.target.hitTestObject(getChildByName("area1")))
{
e.target.stopDrag();
count++;
}
else
{
e.target.stopDrag();
}
}
我不确定,但它可以起作用。