2015-04-28 4 views
0

Так что этот бит кода выглядит так, как будто он должен работать плавно, но я не могу использовать инструкцию if для проверки оценки, а затем кнопку. Какие-либо предложения?AS3: Как проверить переменную с помощью оператора if?

//Score variable 
var score = 0; 

//Multiplier variable 
var multiplier = 1; 

//Point Scorer 
function PointScore() { 
score = score + multiplier; 
} 

//update score function 
function updateScore() { 
txtPlayerScore.text = "Smash Points: " + score; 
} 

//Score Text 
txtPlayerScore.text = "Smash Points: " + score; 

//Make Power Up button invis 
btnPowerUp.visible = false; 

//If the score is 50 the button is now visible 
if (score == 50){ 
btnPowerUp.visible = true; 
} 

//Power Up button 
btnPowerUp.addEventListener(MouseEvent.MOUSE_DOWN, UpClicked); 

function UpClicked (e:MouseEvent){ 
multiplier = 5; 
} 

ответ

2

на основе кода, публикуемую, тем, если проверка не имеет смысла, потому что это происходит сразу после того, как вы установите счет в 0. Вы хотите, чтобы проверить счет каждый раз, когда она изменяется, например, поместить его внутри PointScore() функции , Кроме того, вы, вероятно, хотите, чтобы это было if(score >= 50) вместо == 50, в противном случае, если оценка пройдет на 50, это не вызовет условия.

function PointScore() { 
    score = score + multiplier; 
    checkScore(); 
} 

function checkScore(){ 
    if(score >= 50){ 
     btnPowerUp.visible = true; 
    } 
} 
+0

работает отлично. просто использовал == 50 вместо этого, чтобы сделать то, что мне нужно. Благодаря :) –

Смежные вопросы