2017-04-07 7 views
1

私はcode.org JavaScriptライブラリを使用しています。私はそれを持っているようにしようとしているので、選択された2つに基づいてチームが3つのアウトに達するとそれに基づいて変更されます。私はteam1team2を宣言しようとし、それらを選択されたチェックボックスと同じに設定しましたが正しく動作しませんでした。チームのjavascript野球プログラムを変更しようとしています

最初にチームを選択したときと同じように、チーム名はラベル上で変更されません。私はどのようにそれを行うかについてはまだよく分かっていませんが、主な目標は、現在のチームが3アウトを獲得したときにチーム名を変更することです。選択された第1チームを表示するプレーヤー選択機能で使用されているラベルがあります。

var outs = 0; 
var team1 = ""; 
var team2 = ""; 
var strikes = 0; 
var balls = 0; 
var fouls = 0; 
var inning = 0; 
var hit = 0; 
var currentPlayer = team1, team2; 

//Player Selection 
onEvent("btnStart","click", function() { 
    var chkBoxs = ["Yankees", "Boston", "Astros"]; 
    var selected = []; 
    for (var index = 0; selected.length < 2 && index < chkBoxs.length; index++) { 
    if (getChecked(chkBoxs[index])) { selected.push(index); } 
    } 
    setScreen("game"); 
    if (selected.length == 2) { 
    console.log("The Teams are: " + chkBoxs[selected[0]] + " and " + chkBoxs[selected[1]]); 
    } 
    if (chkBoxs[selected[0]]) { 
    setText("lblTeamGame",chkBoxs[selected[0]]); 
    team1 = chkBoxs[selected[0]]; 
    team2 = chkBoxs[selected[1]]; 
    } else { 
    setText("lblTeamGame",chkBoxs[selected[1]]); 
    } 
}); 

//Pitching Rules 
function Count() { 
    if (balls == 4) 
    { 
    console.log("Walk"); 
    setText("lblBallCount", 0); 
    setText("lblStrikeCount", 0); 
    balls = 0; 
    strikes = 0; 
    } 
    if (strikes == 3) 
    { 
    console.log("Strike Out"); 
    outs++; 
    setText("lblStrikeCount", 0); 
    setText("lblOutCount", outs); 
    setText("lblBallCount", 0); 
    strikes = 0; 
    balls = 0; 
    } 
    if (outs == 3) 
    { 
    inning++; 
    setText("lblInningCount", inning); 
    switchPlayer(); 
    } 
    if(hit) 
    { 
    setText("lblStrikeCount", 0); 
    setText("lblBallCount", 0); 
    strikes = 0; 
    balls = 0; 
    } 
} 
//Switch Teams 
function switchPlayer() { 
    if(currentPlayer == team1) { 
    currentPlayer = team2; 
    showElement("player2_highlight"); 
    hideElement("player1_highlight"); 
    } else { 
    showElement("player1_highlight"); 
    hideElement("player2_highlight"); 
    currentPlayer = 1; 
    } 
    console.log("current player is: " + currentPlayer); 
} 
+0

"それは正しく動作しません。問題の詳細について教えてください。 – driconmax

+0

正確に「正しく動作しません」とは何ですか? *何かが起こるか?エラーは報告されていますか? – Pointy

答えて

0

これはあなたの問題である可能性があります:

function switchPlayer(){ 
if(currentPlayer==team1){ 
    currentPlayer=team2; 
    showElement("player2_highlight"); 
    hideElement("player1_highlight"); 
} else { 
    showElement("player1_highlight"); 
    hideElement("player2_highlight"); 
    currentPlayer=team1; // Specify team1 instead of just 1 
} 
console.log("current player is: "+currentPlayer); 
} 

はまた、チームを切り替えた後、あなたはアウトの数をリセットする必要があります。

if(outs==3) 
    { 
     inning++; 
     setText("lblInningCount",inning); 
     switchPlayer(); 
     outs=0; 
    } 
関連する問題