→ Schelfaniel:不懂,你要的平衡是指怎麼樣的平衡? 163.29.29.137 09/08 12:50
推 BadNanEpi:直接設定抽到機率~ 調高你想提高的球.. 220.134.96.34 09/08 16:27
→ BadNanEpi:不就可以了?? 220.134.96.34 09/08 16:27
以下是我目前的程式碼,是action script的
circle_mc.visible=false;//一開始先把他們隱藏起來
cross_mc.visible=false;
var checkKey:int=0;
var totalCorrect:int=0;
var correct:int=0;
var totalAnswered:int=0;
var colorFormat:TextFormat=new TextFormat();
var time:int=90;
var gameTimer:Timer=new Timer(1000,90);
gameTimer.addEventListener(TimerEvent.TIMER,tickGame);
function tickGame(event:TimerEvent):void {
time=time-1;
timer_txt.text=time.toString();
}
gameTimer.addEventListener(TimerEvent.TIMER_COMPLETE,endGame);
function endGame(event:TimerEvent):void {
gotoAndStop(2);
}
gameTimer.start();
var empty:Sprite = new Sprite();//增加一個容器
addChild(empty);
game();//執行function game
function game():void {//整個用function包起來
checkKey=0;
correct=0;
var r:int=(int)(Math.random()*7);
switch (r) {
case 0 :
colorFormat.color=0x00CCFF;//blue
break;
case 1 :
colorFormat.color=0x00FF00;//green
break;
case 2 :
colorFormat.color=0xFF3333;//red
break;
case 3 :
colorFormat.color=0x000000;//black
break;
case 4 :
colorFormat.color=0x000000;//black
break;
case 5 :
colorFormat.color=0xFF3333;//red
break;
case 6 :
colorFormat.color=0x00FF00;//green
break;
}
colorFormat.size=40;
colorFormat.font="Cambria";
color_txt.defaultTextFormat=colorFormat;
empty.addChild(color_txt);
//讓meaning文字方塊裡的文字顏色為隨機顏色
var meaningFormat:TextFormat=new TextFormat();
meaningFormat.size=40;
meaningFormat.font="Cambria";
var n:int=(int)(Math.random()*4);
switch (n) {
case 0 :
meaningFormat.color=0x00CCFF;
break;
case 1 :
meaningFormat.color=0x00FF00;
break;
case 2 :
meaningFormat.color=0xFF3333;
break;
case 3 :
meaningFormat.color=0x000000;
break;
}
meaning_txt.defaultTextFormat=meaningFormat;
empty.addChild(meaning_txt);
var c:int=(int)(Math.random()*4);
switch (c) {
case 0 :
color_txt.text="blue";
break;
case 1 :
color_txt.text="green";
break;
case 2 :
color_txt.text="red";
break;
case 3 :
color_txt.text="black";
break;
}
//match if r = m
var m:int=(int)(Math.random()*4);
//提高match的機率(如果r>=4直接給定m的值)
if (r==4) {
m=3;
}
if (r==5) {
m=2;
}
if (r==6) {
m=1;
}
switch (m) {
case 0 :
meaning_txt.text="blue";
break;
case 1 :
meaning_txt.text="green";
break;
case 2 :
meaning_txt.text="red";
break;
case 3 :
meaning_txt.text="black";
break;
}
stage.addEventListener(KeyboardEvent.KEY_DOWN, onKeyPressed);
function onKeyPressed(e:KeyboardEvent):void {
switch (e.keyCode) {
case Keyboard.RIGHT :
checkAnswer1();
checkKey=1;
break;
case Keyboard.LEFT :
checkAnswer2();
checkKey=1;
break;
}
}
function checkAnswer1():void {
if (r==m||r==4||r==5||r==6) {
circle_mc.visible=true;
cross_mc.visible=false;
correct=1
} else {
cross_mc.visible=true;
circle_mc.visible=false;
correct=0;
}
}
function checkAnswer2():void {
if (r!=m&&r!=4&&r!=5&&r!=6) {
circle_mc.visible=true;
cross_mc.visible=false;
correct=1;
} else {
cross_mc.visible=true;
circle_mc.visible=false;
correct=0;
}
}
}
stage.addEventListener(KeyboardEvent.KEY_UP, onKeyUps);
function onKeyUps(e:KeyboardEvent):void {
if (checkKey==1) {
for (var j:int=0; j<2; j++) {
empty.removeChild(empty.getChildAt(0));
}//洗掉容器裡面的題目
if (correct!=0) {
totalCorrect=totalCorrect+1;
}
totalAnswered=totalAnswered+1;
circle_mc.visible=false;//再度隱藏起來,準備下一題
cross_mc.visible=false;
game();//重新啟動一次fuction game
}
}
※ 編輯: sarah21 來自: 220.136.181.180 (09/08 20:08)