Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // метод для случайного броска кубика
- const dice = {
- roll:function rollDice() {
- return Math.floor(Math.random() * 6) + 1
- }
- }
- function game() {
- let board = [
- [[], [], [], [], [], [], [], [], [], [], []],
- [[], [], [], [], [], [], [], [], [], [], []]
- ];
- let charA = 'A';
- let charB = 'B';
- race(board, charA, charB);
- }
- function whoWon(finishCar) {
- const winCar = finishCar;
- console.log(`Win Win Win! Car ${finishCar} finished!`);
- }
- function race(board, charA, charB) {
- board[0][0] = charA;
- board[1][0] = charB;
- let positionA = board[0].indexOf(charA);
- let positionB = board[1].indexOf(charB);
- const distance = board[0].length;
- const trackA = 0;
- const trackB = 1;
- printBoard(board);
- setTimeout(start, 1000, board, charA, charB, positionA, positionB, distance, trackA, trackB);
- // while (positionA < distance && positionB < distance) {
- // let movingB = dice.roll();
- // let movingA = dice.roll();
- // board = movingA > movingB ? changePosition(board, trackA, charA)
- // : changePosition(board, trackB, charB);
- // positionA = board[trackA].indexOf(charA);
- // positionB = board[trackB].indexOf(charB);
- // if (positionA == distance) {
- // whoWon(charA);
- // break;
- // }
- // if (positionB == distance) {
- // whoWon(charB);
- // break;
- // }
- // console.clear();
- // // setTimeout(printBoard, 1000, board);
- // printBoard(board);
- // }
- }
- function changePosition(board, track, figure) {
- position = board[track].indexOf(figure);
- board[track][position] = [];
- board[track][position + 1] = figure;
- return board;
- }
- function start(board, charA, charB, positionA, positionB, distance, trackA, trackB) {
- while (positionA < distance && positionB < distance) {
- let movingB = dice.roll();
- let movingA = dice.roll();
- board = movingA > movingB ? changePosition(board, trackA, charA)
- : changePosition(board, trackB, charB);
- positionA = board[trackA].indexOf(charA);
- positionB = board[trackB].indexOf(charB);
- if (positionA == distance) {
- whoWon(charA);
- break;
- }
- if (positionB == distance) {
- whoWon(charB);
- break;
- }
- console.clear();
- console.table(board);
- }
- }
- function printBoard(board) {
- console.table(board);
- }
- // вызывает игру
- game();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement