Big News: Socket raises $60M Series C at a $1B valuation to secure software supply chains for AI-driven development.Announcement
Sign In

tictactoejs

Package Overview
Dependencies
Maintainers
1
Versions
4
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

tictactoejs

provide a library like chess.js but for tic tac toe.. you can make your own GUI

latest
Source
npmnpm
Version
1.0.3
Version published
Weekly downloads
15
-28.57%
Maintainers
1
Weekly downloads
 
Created
Source

TicTacToeJS

provide a library like chess.js but for tic tac toe.. you can make your own GUI

installation

npm command line: npm install tictactoejs

bower command line: bower install tictactoejs

usage example as NPM module

var TicTacToe = require('tictactoejs');
var game = new TicTacToe.TicTacToe();

	game.turn(); // first move will be X
	game.move(2, 2));
	
	game.turn(); // will be O
	game.move(2, 1));
	
	console.log(game.ascii()); // check board

usage example in web / bower

<script type="text/javascript" src="bower_components/tictactoejs/TicTacToe.min.js"></script>
<script type="text/javascript">
var game = new TicTacToe();

	game.turn(); // first move will be X
	game.move(2, 2));
	
	game.turn(); // will be O
	game.move(2, 1));
	console.log(game.ascii()); // check board
</script>

a bit of documentation

	var game = new TicTacToe(boardSize);  // default 3
	
	game.turn();		// check whos turn X or O
	
	/*
	 * default move
	 * move with Cartesian coordinate system, but array still in normal style :-)
	 * 
	 * usually board game like chess using cartesian coordinate, but x in alphabet
	 * since tic tac toe have no formal notation, lets use this
	 * 
	 * Y
	 * 3   1,3 | 2,3 | 3,3
	 *     ---------------
	 * 2   1,2 | 2,2 | 3,2
	 *     ---------------
	 * 1   1,1 | 2,1 | 3,1
	 *
	 *      1     2     3	X	
	 * */
	game.move(x, y);
	
	
	game.ascii();		// print table in ascii mode
	game.ascii2();		// print table in ascii mode, just different style
	
	
	game.game_over();	// check if game is over true or false
	game.isDraw();		// check if game is draw true or false
	
	/*
	 * if game draw,  return 'draw'
	 * if game X win, return 'X'
	 * if game O win, return 'O'
	 * if game still in progress, return 'in progress'
	 */
	game.status();
	
	game.legalMoves(); // return an array of objects that x,y still available
	
	
	/*
	 * AI moves, just random :-p
	 * */
	game.randomMove();

inspiration

actually i made this project because i need to make a 3D game for my finalterm in ITB (GPU subject) and i made tic tac toe game with three.js, and this library inspired by chess.js (separating GUI and the game)

license

MIT

example / demo

https://ryanhs.github.io/TicTacToeJS/

Keywords

tic

FAQs

Package last updated on 06 May 2016

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts