0

So I'm a beginning programmer and I'm trying to make four in a row using javascript and html. The game works just fine, but I'm using a prompt to make the players choose a column. This isn't very user friendly, so I would like to use html buttons for this (one for every column). However, I can't get it to work. I think the code is being executed before the buttonclick.

the button should give the var column the right value every turn. place will place a 1 or 2 (resembling the player) into a 2d array checkField will check if there are 4 in a row

This is what I have now:

in the body :

<button onclick="clickButton(1)" style="position:absolute; left:300px; top:10px">A</button>

And in the script:

var turn = 1;
var wichPlayer = 0;
var noFourInARow = true;
while(noFourInARow){

    if(turn%2 == 1){
        wichPlayer = 1;
    }

    else{
        wichPlayer = 2;

    }


    function clickButton(k){
    var column = k;
    array = place(row,wichplayer,column);
    turn++;
    noFourInARow = checkField(row, wichPlayer, player1, player2);
    }

}

1 Answer 1

1

When you click button your code is not re-evaluated. SO you run only portion inside button function. Why not move all actions into button?

function action() {
var turn = 1;
var wichPlayer = 0;
var noFourInARow = true;
while(noFourInARow){

    if(turn%2 == 1){
        wichPlayer = 1;
    }

    else{
        wichPlayer = 2;

    }
}


    function clickButton(k){
    var column = k;
    array = place(row,wichplayer,column);
    turn++;
    noFourInARow = checkField(row, wichPlayer, player1, player2);
    action();
    }

This is just an example to change point of view. I'm not sure what you are doing with your code so...

Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.