[英]AS3 Check if two movie clips are the same colour?
我试图进行点对点游戏,但遇到了障碍。
如何检查两个动画片段的颜色相同? 使用colorTransforms,我做到了,这样当您将鼠标悬停在一个点上时,它会变为绿色;如果将鼠标悬停在下一个正确的点上,则该点也会变为绿色,其余的保持为红色。
当两个点的颜色相同(绿色)时,我需要一个函数来将连接两个点的线更改为可见。 我将如何编写条件语句?
这是我的代码:
line1.visible = false;
var red:ColorTransform = new ColorTransform();
red.color = 0xFF0000;
var green:ColorTransform = new ColorTransform();
green.color = 0x00FF00;
dot1.addEventListener(MouseEvent.MOUSE_OVER, color1Toggle, false, 0, true);
dot2.addEventListener(MouseEvent.MOUSE_OVER, color2Toggle, false, 0, true);
function color1Toggle(event:Event):void{
dot1.transform.colorTransform = green;
dot2.transform.colorTransform = red;
}
function color2Toggle(event:Event):void{
dot2.transform.colorTransform = green;
}
因此,当dot1和dot2为绿色时,我希望line1的可见性更改为true。
有什么建议么? 谢谢 :)
function color1Toggle(event:Event):void{
dot1.transform.colorTransform = green;
dot2.transform.colorTransform = red;
checkSameColors()
}
function color2Toggle(event:Event):void{
dot2.transform.colorTransform = green;
checkSameColors()
}
function checkSameColors():void {
if (dot2.transform.colorTransform.color == dot1.transform.colorTransform.color) {
//same color
if (dot1.transform.colorTransform.color == 0x00FF00 ) {
//both are 0x00FF00
line1.visible = true;
}
}
}
这不是通用代码,但可以回答您的问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.