Flash CS4 + ActionScript 3.0으로 이전에 만들었던 '3이 많이 나오는 주사위' 프로그램을 약간 수정하여 '주사위 2개 굴리기' 프로그램으로 변경.

주사위 굴리기 버튼을 마우스로 클릭할하거나 키보드 스페이스나 좌측 ctrl키나 엔터키를 누르면 주사위가 2개가 각각 새 번호를 표시한다.
현재 주사위가 나온 수의 뒷쪽에 밝은 하늘색이 표시되고 지금껏 나온 각 주사위 번호의 나온 횟수와 확률을 표시한다.

게임북 플레이하려다가 주사위 2개를 굴려야 하는데 주사위가 주변에 안보여 플래시로 뚝딱 만들었다.

15/11/11 수

화면상에 'diceM1', 'diceM2'란 이름의 6개의 프레임으로 주사위 6개의 눈을 표현하는 주사위 무비클립 2개, 'pointM1', 'pointM2' 이란 이름의 현재 나온 주사위 눈 수 뒷쪽에 밝은 하늘색을 비추는 무비클립, 'rollButM'이란 이름의 버튼 모양 무비클립과 주사위 눈 수 표시용 'd1'~'d6', 주사위 눈 등장 확률 표시용 'p1'~'p6', 두 주사위 눈의 합 표시용 'dSum'의 이름을 가진 다이나믹 텍스트 박스를 만들어 뒀다.
var n1=0,n2=0,n3=0,n4=0,n5=0,n6=0; //주사위 눈 나온 숫자 저장용
var r1=0,r2=0,r3=0,r4=0,r5=0,r6=0; //주사위 눈 나온 확률 저장용
var totNum=0, perc=0, dNum2 = 2;

function init(){
	displayDiceNums(); //각 주사위 눈 나온 숫자 표시
	rollButM.addEventListener(MouseEvent.MOUSE_DOWN, butDown);
	stage.addEventListener(KeyboardEvent.KEY_DOWN, keyClick);
}

function butDown(e:MouseEvent){ // 마우스 좌클릭시
	var diceNum1 = throwDice();
	diceM1.gotoAndStop(diceNum1); //주사위 1 모양 변경
	var diceNum2 = throwDice(); 
	diceM2.gotoAndStop(diceNum2); //주사위 2 모양 변경
	dNum2 = diceNum1 + diceNum2; //두 주사위 눈 합하기
	pointDiceNum(pointM1, diceNum1);
	pointDiceNum(pointM2, diceNum2);
	dNum2 = 0; //두 주사위 눈의 합 초기화
}
function keyClick(e:KeyboardEvent){ //키보드 클릭시
	//스페이스, 좌ctrl, 엔터키 클릭시
	if(e.keyCode == 32 || e.keyCode == 17 || e.keyCode == 13){
		butDown(null);
	}
}

function pointDiceNum(point, dNum){ //주사위 눈 표시
	point.gotoAndStop(dNum); //나온 숫자 비추기
	switch(dNum){
		case(1): n1++; break;
		case(2): n2++; break;
		case(3): n3++; break;
		case(4): n4++; break;
		case(5): n5++; break;
		case(6): n6++; break;
	}
	displayDiceNums(); //각 주사위 눈 나온 숫자, 확률 표시
}

function throwDice(){ //일반 주사위 던지기 
	return Math.floor(Math.random()*6+1);
}

function displayDiceNums(){ //각 주사위 눈 나온 숫자, 확률 표시
	d1.text = n1; //나온 숫자들 표시
	d2.text = n2;
	d3.text = n3;
	d4.text = n4;
	d5.text = n5;
	d6.text = n6;
	//나온 확률 구해 표시하기
	totNum = n1+n2+n3+n4+n5+n6;
	if(totNum == 0) totNum = 1; //맨처음 0으로 나누기 방지
	r1 = n1 / totNum * 100;
	r2 = n2 / totNum * 100;
	r3 = n3 / totNum * 100;
	r4 = n4 / totNum * 100;
	r5 = n5 / totNum * 100;
	r6 = n6 / totNum * 100;
	p1.text = r1;
	p2.text = r2;
	p3.text = r3;
	p4.text = r4;
	p5.text = r5;
	p6.text = r6;
	dSum.text = dNum2;
}
init();