有的时候,我们希望元件的颜色可以随机变化,我做了个函数cRnd(
)就可以轻松解决。这里主要使用到了颜色和随机两个方面内容。可以应用在按钮、菜单、背景或游戏角色等。如设置随机背景,我们可以设置一个MC盖住舞台,命名为“bg”并置于最底层,执行函数cRnd(bg)即可。代码就不做过多说明了,下面的注释很详细。
//元件的随机颜色控制函数 //定义函数“cRnd”,mc为影片剪辑类型参数 function cRnd(mc:MovieClip) { //新建一“mycolor_c”颜色对象 var mycolor_c = new Color(mc); //“mycolor_s”为颜色字符串,如黑色为“0x000000” var mycolor_s = new String(); mycolor_s = "0x"; //由于颜色代码中有6个值,所以循环6次 for (var i = 0; i<6; i++) { //取出0~15的随机数并转换为字符串“temp” var temp:String = String(Math.floor(Math.random()*16)); //因为要转成16进制,当值为“10~15”时重新赋值 switch (temp) { case "10" : temp = "A"; case "11" : temp = "B"; case "12" : temp = "C"; case "13" : temp = "D"; case "14" : myc = "E"; case "15" : temp = "F"; default : } //为“mycolor_s”赋值 mycolor_s = mycolor_s+temp; } trace(mycolor_s); //为“mycolor_c”颜色对象设置颜色 mycolor_c.setRGB(mycolor_s); } //测试:新建一元件,画一个圆。拖入至舞台,命名为“mymc” //执行函数,OK了~ 圆每次的颜色均发生变化 cRnd(mymc); |