Showing source for: https://playtictactoe.org/
Duration: 0.05835s
Server: cloudflare

<!DOCTYPE html>
<html lang="en">
<head prefix="og: http://ogp.me/ns#">
<meta charset="utf-8">
<title>Tic-Tac-Toe - Play retro Tic-Tac-Toe online for free</title>
<meta name="description" content="Play the classic Tic-Tac-Toe game (also called Noughts and Crosses) for free online with one or two players.">
<meta name="author" content="Neave Interactive">
<meta name="viewport" content="width=device-width, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0, shrink-to-fit=no, viewport-fit=cover">
<meta name="referrer" content="origin">
<meta name="mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<meta name="apple-mobile-web-app-title" content="Tic-Tac-Toe">
<meta name="application-name" content="Tic-Tac-Toe">
<meta name="msapplication-tooltip" content="Tic-Tac-Toe">
<meta name="msapplication-starturl" content="https://playtictactoe.org/">
<meta name="msapplication-TileImage" content="https://playtictactoe.org/assets/images/icon-200.png">
<meta name="msapplication-TileColor" content="#000">
<meta name="msapplication-navbutton-color" content="#000">
<meta name="theme-color" content="#000">
<meta property="og:type" content="website">
<meta property="og:url" content="https://playtictactoe.org/">
<meta property="og:site_name" content="Tic-Tac-Toe">
<meta property="og:title" content="Tic-Tac-Toe - Play retro Tic-Tac-Toe online for free">
<meta property="og:description" content="Play the classic Tic-Tac-Toe game (also called Noughts and Crosses) for free online with one or two players.">
<meta property="og:image" content="https://playtictactoe.org/assets/images/icon-200.png">
<meta name="twitter:card" content="summary">
<meta name="twitter:site" content="@neave">
<meta name="twitter:title" content="Tic-Tac-Toe">
<meta name="twitter:description" content="Play the classic Tic-Tac-Toe game (also called Noughts and Crosses) for free online with one or two players.">
<meta name="twitter:image" content="https://playtictactoe.org/assets/images/icon-200.png">
<link rel="shortcut icon" href="https://playtictactoe.org/assets/images/icon-16.png">
<link rel="icon" sizes="16x16" href="https://playtictactoe.org/assets/images/icon-16.png">
<link rel="icon" sizes="32x32" href="https://playtictactoe.org/assets/images/icon-32.png">
<link rel="icon" sizes="100x100" href="https://playtictactoe.org/assets/images/icon-100.png">
<link rel="icon" sizes="200x200" href="https://playtictactoe.org/assets/images/icon-200.png">
<link rel="icon" sizes="800x800" href="https://playtictactoe.org/assets/images/icon-800.png">
<link rel="image_src" href="https://playtictactoe.org/assets/images/icon-200.png">
<link rel="apple-touch-icon-precomposed" href="https://playtictactoe.org/assets/images/icon-200.png">
<style>@keyframes neave-anim{to{background-position:0 400%}}@keyframes fade-anim{0%{opacity:0}40%{opacity:0}50%{opacity:1}60%{opacity:0}100%{opacity:0}}@keyframes fade-mid-anim{0%{opacity:.5}40%{opacity:.5}50%{opacity:1}60%{opacity:.5}100%{opacity:.5}}.neave{position:absolute;display:block;left:15px;left:calc(15px + env(safe-area-inset-left));top:15px;top:calc(15px + env(safe-area-inset-top));width:44px;height:44px;margin:0;padding:0;z-index:100}.neave .title{display:none}.neave svg{position:absolute;left:0;top:0;z-index:100;border-radius:50%;border:2px solid #fff;margin:0;padding:0;box-sizing:content-box;pointer-events:none}.mobile .neave svg{animation:fade-mid-anim 5s infinite ease-in-out}.neave .disc{position:absolute;display:block;width:44px;height:44px;background-color:#9fc;background-image:linear-gradient(to bottom,#9fc 0%,#9cf 25%,#f9c 50%,#fc9 75%,#9fc 100%);background-size:100% 400%;border-radius:50%;pointer-events:none;animation:neave-anim 8s infinite linear;opacity:0;will-change:opacity;transition:opacity .2s ease-out}.mobile .neave .disc{animation:neave-anim 8s infinite linear,fade-anim 5s infinite ease-in-out}body:not(.mobile) .neave:hover .disc{opacity:1}.neave:active{margin-top:1px}html{-moz-box-sizing:border-box;box-sizing:border-box}.neave{-moz-box-sizing:content-box;box-sizing:content-box}*,*:before,*:after{-moz-box-sizing:inherit;box-sizing:inherit}body{margin:0;background-color:#000;color:#fff;font-family:sans-serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%}a{color:#fff}.game{position:absolute;top:50%;left:50%;width:600px;height:600px;margin-left:-300px;margin-top:-370px;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;tap-highlight-color:transparent}.alt{display:none}.error{text-align:center;padding:40px 20px;line-height:1.5}.error a{color:#fff;text-decoration:underline}.board{width:100%;height:100%}@-webkit-keyframes border-blink{50%{border-color:#000}}@-moz-keyframes border-blink{50%{border-color:#000}}@keyframes border-blink{50%{border-color:#000}}@-webkit-keyframes blink{50%{visibility:hidden}}@-moz-keyframes blink{50%{visibility:hidden}}@keyframes blink{50%{visibility:hidden}}@-webkit-keyframes appear{from{-webkit-transform:scale(0.3);transform:scale(0.3)}to{-webkit-transform:scale(1);transform:scale(1)}}@-moz-keyframes appear{from{-moz-transform:scale(0.3);transform:scale(0.3)}to{-moz-transform:scale(1);transform:scale(1)}}@keyframes appear{from{transform:scale(0.3)}to{transform:scale(1)}}.square{float:left;width:33.333333333%;height:33.333333333%;border-width:5px;border-color:#fff;-webkit-transition:background-color .1s;-moz-transition:background-color .1s;transition:background-color .1s;will-change:background-color,border-color;cursor:pointer}.square:focus{outline:0;background-color:#333}.square.top{border-bottom-style:solid}.square.bottom{border-top-style:solid}.square.left{clear:both;border-right-style:solid}.square.right{border-left-style:solid}.square.right>div{margin-left:-5px}.square.bottom>div{margin-top:-5px}.board.tie .square{-webkit-animation:border-blink .3s steps(1) 3;-moz-animation:border-blink .3s steps(1) 3;animation:border-blink .3s steps(1) 3}.board .square>div{-webkit-transition:opacity .1s;-moz-transition:opacity .1s;transition:opacity .1s}.board.tie .square>div,.board.win .square:not(.win)>div{opacity:.5}.square.win>div{-webkit-animation:blink .3s steps(1) 3;-moz-animation:blink .3s steps(1) 3;animation:blink .3s steps(1) 3}.o{left:16.666666667%;top:16.666666667%;width:66.666666667%;height:66.666666667%;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;border:20px solid #fff}.x{width:100%;height:100%}.square .x,.square .o{position:relative;will-change:transform;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);-webkit-animation:appear .2s cubic-bezier(0.5,1.8,0.1,1.1);-moz-animation:appear .2s cubic-bezier(0.5,1.8,0.1,1.1);animation:appear .2s cubic-bezier(0.5,1.8,0.1,1.1)}.x:before,.x:after{position:absolute;content:"";display:block;background-color:#fff;left:90px;top:20px;width:20px;height:160px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.x:before{-webkit-transform:rotate(-45deg);-moz-transform:rotate(-45deg);transform:rotate(-45deg)}.x:after{-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);transform:rotate(45deg)}.restart{position:absolute;top:0;width:100%;height:100%;cursor:pointer;background-color:rgba(0,0,0,0)}.scores{position:absolute;left:50%;top:50%;width:600px;margin-left:-300px;margin-top:280px;text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none}.scores p{font:20px "Raleway",sans-serif;font-weight:400;text-transform:uppercase;line-height:1;display:inline-block;margin:0;padding:0;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.scores .swap{display:inline-block;vertical-align:top;width:30px;height:30px;margin:-5px -30px 0 0;opacity:.5;cursor:pointer;outline:0;-webkit-transition:opacity .1s;-moz-transition:opacity .1s;transition:opacity .1s}body:not(.mobile) .scores:hover .swap{opacity:1}body:not(.mobile) .scores:active .swap{opacity:.75}.scores .score{font-size:50px;display:block;height:60px;padding:10px 0 0 0;will-change:transform;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.scores .score.appear{-webkit-animation:appear .3s cubic-bezier(0.5,4,0.1,1.1);-moz-animation:appear .3s cubic-bezier(0.5,4,0.1,1.1);animation:appear .3s cubic-bezier(0.5,4,0.1,1.1)}.scores .o{display:inline-block;width:13px;height:13px;border-width:2px;margin:1px;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.scores .x{display:inline-block;width:17px;height:17px;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.scores .x:before,.scores .x:after{left:0;top:2px;margin-left:7px;width:2px;height:17px}.player1,.player2{width:230px;white-space:nowrap}.scores.p1 .p2{display:none}.scores.p2 .p1{display:none}.scores .turn{opacity:.5}.mute{position:absolute;width:38px;height:38px;right:15px;right:calc(15px + env(safe-area-inset-right));top:15px;top:calc(15px + env(safe-area-inset-top));opacity:.5;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-transition:opacity .1s;-moz-transition:opacity .1s;transition:opacity .1s}body:not(.mobile) .mute:hover{opacity:1}.share{display:inline-block;vertical-align:top}.ad{outline:1px solid #333;background-color:#333;overflow:hidden}.adsbygoogle{display:inline-block}.ad.skyscraper1,.ad.skyscraper2,.ad.skyscraper1 .adsbygoogle,.ad.skyscraper2 .adsbygoogle{width:160px;height:600px}.ad.skyscraper1{position:absolute;top:50%;margin-top:-300px;left:0}.ad.skyscraper2{position:absolute;top:50%;margin-top:-300px;right:0}.ad.mobile,.ad.mobile .adsbygoogle{display:block;width:100%;height:50px}.ad.mobile{position:absolute;bottom:0;bottom:env(safe-area-inset-bottom);width:100%;margin:0;overflow:hidden}.ad.mobile .adsbygoogle{margin:0 auto}.cookies{position:absolute;box-sizing:border-box;display:table;background-color:#fff;color:#000;width:100%;bottom:0;text-align:left;padding:40px;padding-bottom:calc(40px + env(safe-area-inset-bottom));padding-left:calc(40px + env(safe-area-inset-left));padding-right:calc(40px + env(safe-area-inset-right));font-size:17px;line-height:1.3;user-select:none}.cookies p{display:table-cell;margin:0;padding-right:20px;vertical-align:top}.cookies a{color:#666;text-decoration:underline;white-space:nowrap}.cookies button{padding:12px 20px;border:0;font:inherit;font-weight:bold;color:#fff;background-color:#000;cursor:pointer;outline:0;cursor:pointer;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;border-radius:6px;white-space:nowrap}body.cookies-consent .cookies{display:none}@media(min-width:1261px){.ad.skyscraper1{margin-left:110px}.ad.skyscraper2{margin-right:110px}}@media(max-width:800px) and (min-height:661px){.ad.skyscraper2{display:none}}@media(max-height:800px){.ad.skyscraper1,.ad.skyscraper2{margin-top:-270px}}@media(max-height:660px){.neave,.mute{display:none}.ad.skyscraper1,.ad.skyscraper2{margin-top:-300px}}@media(max-width:960px),(max-height:800px){.game{width:450px;height:450px;margin-left:-225px;margin-top:-280px}.square{border-width:4px}.square.right>div{margin-left:-4px}.square.bottom>div{margin-top:-4px}.square .o{border-width:15px}.square .x:before,.square .x:after{left:67.5px;top:16px;width:15px;height:118px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.scores{width:450px;margin-left:-225px;margin-top:210px}.scores p{font-size:17px;letter-spacing:0}.scores .score{font-size:40px;padding-top:8px;height:50px}.scores .o{width:12px;height:12px;border-width:2px;margin:0 1px}.scores .x{width:12px;height:12px}.scores .x:before,.scores .x:after{top:0;margin-left:5px;width:2px;height:14px}.player1,.player2{width:180px}}@media(max-width:800px){.ad.skyscraper2{display:none}.mute{display:block}.game,.scores{margin-left:-150px}.mobile .game,.mobile .scores{margin-left:-225px}.ipad .game,.ipad .scores{margin-left:-150px}}@media(max-width:630px){.ad.skyscraper1,.ad.skyscraper2{display:none}.neave,.mute{display:block}.game,.scores{margin-left:-225px}.cookies{display:block;font-size:15px;padding:18px;padding-bottom:calc(18px + env(safe-area-inset-bottom));padding-left:calc(18px + env(safe-area-inset-left));padding-right:calc(18px + env(safe-area-inset-right))}.cookies p{display:block;padding-right:0}.cookies button{display:block;width:100%;margin-top:18px}}@media(max-width:540px){.ad.skyscraper1,.ad.skyscraper2{display:none}.neave,.mute{display:block}}@media(max-width:540px),(max-height:630px){.game{width:300px;height:300px;margin-left:-150px;margin-top:-205px}.mobile .game{margin-left:-150px;margin-top:-215px}.square{border-width:3px}.square.right>div{margin-left:-3px}.square.bottom>div{margin-top:-3px}.square .o{border-width:10px}.square .x:before,.square .x:after{left:45px;top:13px;width:10px;height:74px;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}.scores{width:320px;margin-left:-160px;margin-top:135px}.mobile .scores{margin-left:-160px;margin-top:125px}.scores p{font-size:15px}.scores .score{font-size:25px;padding-top:9px;height:50px}.scores .o{width:9px;height:9px;margin:0}.scores .x{width:10px;height:10px}.scores .x:before,.scores .x:after{margin-left:4px;height:11px}.player1,.player2{width:130px}.scores .swap svg{margin-bottom:-2px}}@media(max-height:520px){.ad.mobile,.ad.skyscraper1,.ad.skyscraper2{display:none}.neave,.mute{display:block}.mobile .game,.game{top:60px;margin-top:0}.mobile .scores,.scores{top:380px;margin-top:0;padding-bottom:0}}@media(max-width:350px){.scores .swap{display:none}}@media(min-width:421px) and (max-height:450px){.mobile .game,.game{top:10px}.mobile .scores,.scores{top:320px}}</style>
<link rel="stylesheet" href="//fonts.googleapis.com/css?family=Raleway:400">
</head>
<body>
<a href="https://neave.com/" target="_top" class="neave">
<span class="disc"></span>
<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="0 0 512 512">
<path fill="#fff" d="M361 360.95L191 290.5v57.1l-40 16.6V151.05l170 70.3v-57.2l1-.4.1-.05 38.9-15.9"></path>
</svg>
<span class="title">Neave Interactive</span>
</a>
<div class="alt">
<h1>Tic-Tac-Toe</h1>
<p>Play a retro version of tic-tac-toe (noughts and crosses, tres en raya) against the computer or with two players.</p>
</div>
<div class="mute">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100">
<g fill="#fff">
<polygon points="14.025,38.004 14.025,61.993 31.548,61.993 55.537,85.982 55.537,14.018 31.552,38.004"></polygon>
<path d="M67.41,34.095l-4.243,4.239c6.43,6.432,6.43,16.896,0,23.324L67.41,65.9C76.179,57.129,76.179,42.864,67.41,34.095z"></path>
<path d="M75.89,25.616l-4.241,4.239c11.105,11.105,11.105,29.176,0,40.284l4.241,4.241C89.337,60.934,89.337,39.06,75.89,25.616z"></path>
</g>
</svg>
</div>
<div class="game">
<div class="board">
<div class="square top left" tabindex="0"><div></div></div>
<div class="square top" tabindex="0"><div></div></div>
<div class="square top right" tabindex="0"><div></div></div>
<div class="square left" tabindex="0"><div></div></div>
<div class="square" tabindex="0"><div></div></div>
<div class="square right" tabindex="0"><div></div></div>
<div class="square bottom left" tabindex="0"><div></div></div>
<div class="square bottom" tabindex="0"><div></div></div>
<div class="square bottom right" tabindex="0"><div></div></div>
</div>
<div class="restart"></div>
</div>
<div class="scores p1">
<p class="player1"><span class="p1">Player</span><span class="p2">Player 1</span> (<span class="x"></span>)<span class="score">0</span></p>
<p class="ties">Tie<span class="score">0</span></p>
<p class="player2"><span class="p1">Computer</span><span class="p2">Player 2</span> (<span class="o"></span>)<span class="score">0</span></p>
<div class="swap" tabindex="0">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100">
<g fill="#fff">
<path class="p1" d="M49.947,90.991c0.693,0,1.41,0.02,2.104,0c13.547-0.201,26.439-1.723,28.775-3.945 c0.537-4.928,1.195-7.311-20.65-17.644c-3.107-1.742-1.465-8.492-1.465-8.492c6.578-4.969,11.096-16.463,11.096-25.676 c0-15.921-7.18-23.453-17.756-24.234h-2.104c-10.557,0.781-17.734,8.312-17.734,24.234c0,9.213,4.496,20.707,11.078,25.676 c0,0,1.641,6.75-1.449,8.492C19.979,79.735,20.635,82.118,21.176,87.046C23.51,89.269,36.402,90.79,49.947,90.991z"></path>
<path class="p2" d="M66.219,85h1.562c9.92-0.14,19.38-1.2,21.08-2.779c0.422-3.44,0.9-5.101-15.142-12.341 c-2.279-1.22-1.059-5.939-1.059-5.939c4.822-3.48,8.123-11.521,8.123-17.98c0-11.14-5.263-16.419-13.001-16.959h-1.562 c-7.738,0.54-13,5.799-13,16.959c0,6.46,3.301,14.5,8.121,17.98c0,0,1.221,4.719-1.059,5.939c-16.041,7.24-15.562,8.9-15.14,12.341 C46.84,83.8,56.301,84.86,66.219,85z M30.217,69h1.564c9.918-0.14,19.378-1.2,21.078-2.779c0.422-3.44,0.9-5.1-15.14-12.34 c-2.279-1.22-1.059-5.939-1.059-5.939c4.82-3.48,8.121-11.521,8.121-17.98c0-11.14-5.262-16.42-13-16.96h-1.564 c-7.738,0.54-13,5.8-13,16.96c0,6.459,3.301,14.5,8.121,17.98c0,0,1.221,4.72-1.059,5.939c-16.041,7.24-15.562,8.9-15.14,12.34 C10.839,67.8,20.299,68.86,30.217,69z"></path>
</g>
</svg>
<p class="p1">1P</p>
<p class="p2">2P</p>
</div>
</div>
<div class="ad skyscraper1">
<ins class="adsbygoogle" data-ad-client="ca-pub-9316345695176880" data-ad-slot="1133449940" data-page-url="https://playtictactoe.org/"></ins>
<script> (adsbygoogle=window.adsbygoogle||[]).requestNonPersonalizedAds=1;(adsbygoogle=window.adsbygoogle||[]).pauseAdRequests=1;(adsbygoogle=window.adsbygoogle||[]).push({}); </script>
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
</div>
<div class="ad skyscraper2">
<ins class="adsbygoogle" data-ad-client="ca-pub-9316345695176880" data-ad-slot="1133449940" data-page-url="https://playtictactoe.org/"></ins>
<script> (adsbygoogle=window.adsbygoogle||[]).push({}); </script>
</div>
<div class="cookies">
<p>Tic-Tac-Toe uses <strong>cookies</strong> to analyze traffic, measure ads, and to show non-personalized ads. Read&nbsp;our <a href="https://neave.com/legal/cookies/" target="_blank">cookie policy</a> and <a href="https://policies.google.com/technologies/partner-sites" target="_blank" rel="noopener">Google’s policy</a> to learn&nbsp;more.</p>
<button id="consent">I Accept</button>
</div>
<script>(function(t,r){"use strict";function a(e,t,r,o){ga("send","event",e,t,r,o)}t.onerror=function(e,t,r){if(e){a("Error",e,t&&r?"["+t+":"+r+"]":"",true)}return false};t.AudioContext=t.AudioContext||t.webkitAudioContext;var o=function(e){try{var t="_";e.setItem(t,t);e.removeItem(t);return true}catch(e){return false}}(t.localStorage);if(t.location!==t.top.location||t.location.href&&!t.location.href.match(/playtictactoe\.org|192\.168/)){top.location.href="https://playtictactoe.org/"}(function(e,t,r,o,s,a,n){e["GoogleAnalyticsObject"]=s;e[s]=e[s]||function(){(e[s].q=e[s].q||[]).push(arguments)},e[s].l=1*new Date;a=t.createElement(r),n=t.getElementsByTagName(r)[0];a.async=1;a.src=o;n.parentNode.insertBefore(a,n)})(t,r,"script","https://www.google-analytics.com/analytics.js","ga");var e=r.getElementById("consent");var s=!!e;var n="UA-56095-18";t["ga-disable-"+n]=s;ga("set","anonymizeIp",true);ga("create",n,"auto");function i(){(t.adsbygoogle||[]).pauseAdRequests=0;t["ga-disable-"+n]=false;ga("send","pageview");if(s){r.body.classList.add("cookies-consent")}}function c(){if(!s||o&&localStorage.getItem("consent")){i()}else{e.addEventListener("click",function(){i();if(o){localStorage.setItem("consent",true)}})}}function u(t){var e=new XMLHttpRequest;e.open("GET","/assets/audio/"+t+".mp3",true);e.responseType="arraybuffer";e.onload=function(){g.decodeAudioData(e.response,function(e){v[t]=e},function(){})};e.send()}function y(e){if(L||!v[e]){return}if(g&&g.resume){g.resume()}var t=g.createBufferSource();t.buffer=v[e];t.connect(g.destination);if(t.start){t.start(0)}else{t.noteOn(0)}}var l={},f={player1:0,player2:0,ties:0},d={player1:0,player2:0,ties:0},p="x",m="o",v={},g,h=9,L,q,w=true,S=true,b=false,T=300,M=.75,A,k=[[0,1,2],[3,4,5],[6,7,8],[0,3,6],[1,4,7],[2,5,8],[0,4,8],[2,4,6]];function D(){for(var e=l.mute.length;e--;){l.mute[e].style.display=L?"none":""}}function I(){L=!L;if(o){localStorage.setItem("muted",L.toString())}D();a("Mute",L?"muted":"unmuted")}function B(){b=!b;var e=l.scores.scores.classList;if(b){e.remove("p1");e.add("p2");S=true}else{e.remove("p2");e.add("p1");S=false}a("Mode",b?"players":"computer");l.scores.player1.innerHTML=b?d.player1:f.player1;l.scores.player2.innerHTML=b?d.player2:f.player2;l.scores.ties.innerHTML=b?d.ties:f.ties;q=false;j()}function E(e,t){l.squares[t].querySelector("div").classList.add(e)}function H(){var e=l.scores.turn1.classList,t=l.scores.turn2.classList,r=l.scores.turnTies.classList;if(b&&l.restart.style.display==="none"){if(w){t.remove("turn");e.add("turn")}else{e.remove("turn");t.add("turn")}r.add("turn")}else{e.remove("turn");t.remove("turn");r.remove("turn")}}function x(e){if(A[e]!==0||G()||!b&&w){return}if(b){w=!w;A[e]=w?-1:1;E(w?p:m,e);y("note-"+(w?"low":"high"));G()}else{A[e]=-1;E(p,e);w=true;y("note-low");setTimeout(N,T)}H()}function C(o,s){l.restart.style.display="block";setTimeout(function(){var e="Game",t=b?"players ":"computer ";setTimeout(function(){q=false},T);if(s){for(var r=3;r--;){l.squares[s[r]].classList.add("win")}}switch(o){case p:l.scores.player1.innerHTML=b?++d.player1:++f.player1;l.scores.player1.classList.add("appear");l.board.classList.add("win");y("game-over");a(e,t+(b?p:"lose"));break;case m:l.scores.player2.innerHTML=b?++d.player2:++f.player2;l.scores.player2.classList.add("appear");l.board.classList.add("win");y("game-over");a(e,t+(b?m:"win"));break;default:l.scores.ties.innerHTML=b?++d.ties:++f.ties;l.scores.ties.classList.add("appear");l.board.classList.add("tie");y("game-over-tie");a(e,t+"tie");break}},w&&!b?100:T+100)}function G(){for(var e=k.length;e--;){var t=k[e],r=A[t[0]]+A[t[1]]+A[t[2]];if(r===3||r===-3){C(r===3?m:p,t);return true}}var o=0;for(e=h;e--;){if(A[e]!==0){o++}}if(o===9){C();return true}return false}function N(){if(G()){return}var e,t,r,o,s,a,n=0;w=false;H();y("note-high");for(e=h;e--;){if(A[e]!==0){n++;if(n===1){a=e}}}if(n<2&&Math.random()>.2){do{s=Math.floor(Math.random()*h)}while(s===a)}else{for(e=h;e--;){for(t=h;t--;){if(A[t]!==0){continue}A[t]=1;if(G()){E(m,t);return}A[t]=0}if(A[e]!==0){continue}A[e]=1;var i=null,c=A.concat();for(t=h;t--;){if(c[t]!==0){continue}c[t]=-1;for(r=k.length;r--;){if(c[k[r][0]]+c[k[r][1]]+c[k[r][2]]===-3&&Math.random()>M){A[e]=0;A[t]=1;E(m,t);G();return}}var u=0,l=0,f=c.concat(),d=c.concat();for(r=h;r--;){if(f[r]===0){f[r]=1}if(d[r]===0){d[r]=-1}}for(r=k.length;r--;){if(f[k[r][0]]+f[k[r][1]]+f[k[r][2]]===3){u++}if(d[k[r][0]]+d[k[r][1]]+d[k[r][2]]===-3){l++}}var p=u-l;i=i==null?p:i>p?p:i;c[t]=0}if(o==null||o<i){o=i;s=e}A[e]=0}}A[s]=1;E(m,s);G()}function O(t){l.squares[t].ontouchstart=l.squares[t].onmousedown=function(e){e.preventDefault();x(t)}}function j(){if(q){return}q=true;l.restart.style.display="none";A=[0,0,0,0,0,0,0,0,0];for(var e=h;e--;){l.squares[e].classList.remove("win");l.squares[e].querySelector("div").className=""}l.scores.ties.classList.remove("appear");l.scores.player1.classList.remove("appear");l.scores.player2.classList.remove("appear");l.board.classList.remove("win");l.board.classList.remove("tie");w=S=!S;H();if(S&&!b){setTimeout(N,T)}}r.addEventListener("DOMContentLoaded",function(){l={board:r.querySelector(".board"),squares:r.querySelectorAll(".square"),restart:r.querySelector(".restart"),muteButton:r.querySelector(".mute"),mute:r.querySelectorAll(".mute path"),privacy:r.querySelector(".privacy"),scores:{scores:r.querySelector(".scores"),swap:r.querySelector(".swap"),player1:r.querySelector(".player1 .score"),player2:r.querySelector(".player2 .score"),ties:r.querySelector(".ties .score"),turn1:r.querySelector(".player1"),turn2:r.querySelector(".player2"),turnTies:r.querySelector(".ties")}};for(var e=h;e--;){O(e)}l.restart.ontouchstart=l.scores.scores.ontouchstart=function(e){e.preventDefault()};l.scores.scores.ontouchend=l.scores.scores.onclick=function(e){e.preventDefault();B()};l.restart.ontouchend=l.restart.onclick=function(e){e.preventDefault();j()};if(t.AudioContext){g=new AudioContext;u("note-high");u("note-low");u("game-over");u("game-over-tie");L=o?localStorage.getItem("muted")==="true":false;D();l.muteButton.ontouchstart=l.muteButton.onclick=function(e){e.preventDefault();I()}}c();j()})})(window,document);</script>
</body>
</html>

Latest requests

# Url Url Source Date
1 https://playtictactoe.org/ 2020-11-29 13:04:12
2 https://kudtkoekiewet.nl/?t=http:/… 2020-11-29 12:59:15
3 https://getimiskon.neocities.org/2… 2020-11-29 12:53:48
4 https://planetnews.com/live/fox-ne… 2020-11-29 12:51:51
5 https://temp.cool/ 2020-11-29 12:49:42
6 https://free-ss.site/ 2020-11-29 12:47:25
7 https://sexy-girl-4-you.blogspot.c… 2020-11-29 12:42:43
8 https://theaxischurch.org/acts-2/ 2020-11-29 12:35:37
9 https://noodlemagazine.com/video/e… 2020-11-29 12:20:50
10 https://www.apple.com/nl/ 2020-11-29 12:07:03
11 https://www.eetspruit.nl/ 2020-11-29 11:46:09
12 https://amazonaccessories4u.blogsp… 2020-11-29 11:37:01
13 https://www.rainews.it/tgr/piemont… 2020-11-29 11:36:53
14 https://www.criffelstationwoolshed… 2020-11-29 11:36:52
15 https://us.loungeunderwear.com/col… 2020-11-29 11:36:47
16 https://www.windowscentral.com/ 2020-11-29 11:36:42
17 https://camgirlfap.com/heyhorny_cb… 2020-11-29 11:36:39
18 http://gamer.nl/?API_COOKIE_REDIRE… 2020-11-29 11:36:37
19 http://kawitiga.com/m/ 2020-11-29 11:36:34
20 https://www.theatlantic.com/magazi… 2020-11-29 11:36:30