Bingo
クリックで数字が出ます
package
{
import flash.text.TextField;
import flash.display.Sprite;
import flash.events.MouseEvent;
public class Bingo extends Sprite
{
private const NUM_MAX:Number = 75;
private var _numbers:Array = [];
private var _selectedNumbers:Array = [];
private var _txtFld:TextField;
public function Bingo()
{
setNumberAsset();
setTextField();
stage.addEventListener(MouseEvent.CLICK,clickHandler);
}
private function setTextField():void
{
_txtFld = new TextField();
_txtFld.width = stage.stageWidth;
_txtFld.height = stage.stageHeight;
_txtFld.multiline = true;
_txtFld.wordWrap = true;
addChild(_txtFld);
}
private function clickHandler(event:MouseEvent):void
{
selectNumbers();
}
private function setNumberAsset():void
{
for (var i:int = 0; i < NUM_MAX; i++) {
_numbers.push(i + 1);
}
}
private function selectNumbers():void
{
var check:Boolean = false;
while (!check) {
check = checkNumber();
}
removeChild(_txtFld);
setTextField();
_txtFld.text = String(_selectedNumbers);
}
private function checkNumber():Boolean
{
var nMax:Number = 75;
var nMin:Number = 1;
var check:Boolean;
var selectNum:int = Math.floor(Math.random() * (nMax - nMin + 1)) + nMin;
//元データがなかったら何もしない。
if (_numbers.length == 0) return true;
for (var i:int = 0; i < _numbers.length; i++) {
if (_numbers[i] == selectNum) {
_numbers.splice(_numbers.indexOf(selectNum),1);
_selectedNumbers.push(selectNum);
return true;
}else {
check = false;
}
}
return check;
}
}
}