1. 程式人生 > >純AS 3.0幼兒辨識圖形個數flash框架模型

純AS 3.0幼兒辨識圖形個數flash框架模型

import flash.display.MovieClip;
import flash.events.Event;
import flash.display.TriangleCulling;
import flash.text.TextField;
import flash.text.TextFormat;
import flash.events.MouseEvent;


var ball_mc:ball,square_mc:square,triangle_mc:triangle,inputa_txt:input,inputb_txt:input,inputc_txt:input,submit_btn:submit,ball_num:Number,triangle_num:Number,square_num:Number,num:Number,hitArr:Array,next_btn:next,correct_txt:TextField,label_txt:TextField,strformat:TextFormat,strformat2:TextFormat;

function clearAll():void
{
	while (this.numChildren > 0)
	{
		this.removeChildAt(0);
	}
}
function init()
{
	hitArr=new Array();
	num=(int)(Math.random()*5)+1;
	for (var i=0; i<num; i++)
	{
		ball_mc=new ball();
		this.addChild(ball_mc);
		digui(ball_mc);
		hitArr.push(ball_mc);
		ball_num = num;
	}
	num=(int)(Math.random()*5)+1;
	for (var k=0; k<num; k++)
	{
		square_mc=new square();
		this.addChild(square_mc);
		digui(square_mc);
		hitArr.push(square_mc);
		square_num = num;
	}
	num=(int)(Math.random()*5)+1;
	for (var l=0; l<num; l++)
	{
		triangle_mc=new triangle();
		this.addChild(triangle_mc);
		digui(triangle_mc);
		hitArr.push(triangle_mc);
		triangle_num = num;
	}
	ball_mc=new ball();
	square_mc=new square();
	triangle_mc=new triangle();
	triangle_mc.x = 30;
	triangle_mc.y = 430;
	this.addChild(triangle_mc);
	ball_mc.x = 30;
	ball_mc.y = 490;
	this.addChild(ball_mc);
	square_mc.x = 30;
	square_mc.y = 550;
	this.addChild(square_mc);

	inputa_txt=new input();
	inputa_txt.x = 100;
	inputa_txt.y = 405;
	inputa_txt.txt.restrict = "0-9";
	inputa_txt.txt.maxChars = 1;
	this.addChild(inputa_txt);
	inputb_txt=new input();
	inputb_txt.x = 100;
	inputb_txt.y = 465;
	inputb_txt.txt.restrict = "0-9";
	inputb_txt.txt.maxChars = 1;
	this.addChild(inputb_txt);
	inputc_txt=new input();
	inputc_txt.x = 100;
	inputc_txt.y = 525;
	inputc_txt.txt.restrict = "0-9";
	inputc_txt.txt.maxChars = 1;
	this.addChild(inputc_txt);
	submit_btn=new submit();
	submit_btn.x = 350;
	submit_btn.y = 525;
	submit_btn.buttonMode = true;
	this.addChild(submit_btn);
	next_btn=new next();
	next_btn.x = 350;
	next_btn.y = 525;
	next_btn.buttonMode = true;
	correct_txt=new TextField();
	label_txt=new TextField();
	strformat=new TextFormat();
	strformat2=new TextFormat();
	label_txt.height = 100;
	label_txt.width = 200;
	label_txt.wordWrap = true;
	label_txt.x = 350;
	label_txt.y = 405;
	label_txt.text = "請數一下上圖一共有幾個一樣圖形並填入框中";
	strformat2.size = 24;
	strformat2.bold = true;
	this.addChild(label_txt);

	submit_btn.addEventListener(MouseEvent.CLICK,submited);
}
function submited(e:MouseEvent):void
{


	correct_txt.height = 60;
	correct_txt.width = 200;
	correct_txt.x = 350;
	correct_txt.y = 465;
	strformat.size = 36;
	strformat.bold = true;

	this.addChild(correct_txt);
	if (String(triangle_num)==inputa_txt.txt.text&&String(ball_num)==inputb_txt.txt.text&&String(square_num)==inputc_txt.txt.text)
	{
		correct_txt.text = "回答正確";
		strformat.color = 0x00ff00;
		correct_txt.setTextFormat(strformat);
		this.removeChild(submit_btn);
		this.addChild(next_btn);
		next_btn.addEventListener(MouseEvent.CLICK,next_f);

	}
	else
	{
		correct_txt.text = "回答錯誤";
		strformat.color = 0xff0000;
		correct_txt.setTextFormat(strformat);
		this.removeChild(submit_btn);
		this.addChild(next_btn);
		next_btn.addEventListener(MouseEvent.CLICK,next_f);
	}
}

function digui(mc:MovieClip):void
{

	mc.x = Math.random() * 490 + 30;
	mc.y = Math.random() * 340 + 30;
	for (var j=0; j<hitArr.length; j++)
	{
		if (mc.hitTestObject(hitArr[j]))
		{
			digui(mc);
			break;
		}
	}
}
function next_f(e:MouseEvent):void
{
	clearAll();
	init();
}
clearAll();
init();