BluePink BluePink
XHost
Oferim servicii de instalare, configurare si monitorizare servere linux (router, firewall, dns, web, email, baze de date, aplicatii, server de backup, domain controller, share de retea) de la 50 eur / instalare. Pentru detalii accesati site-ul BluePink.
<?xml version="1.0" encoding="UTF-8" ?> 
<Module>
  <ModulePrefs title="X - 0 3D" height="650"/>
  <UserPref name="backcolor" display_name="Background Color" default_value="white" datatype="enum" >
	  <EnumValue value="red" />
	  <EnumValue value="violet" />
	  <EnumValue value="pink" />
	  <EnumValue value="orange" />
	  <EnumValue value="white" />
   </UserPref>
  <Content type="html">
     <![CDATA[
<html>

<head>

	<style type="text/css">
	<!--
		input.clicker{
			width:25px;
			color:#FFFFFF;
			font-weight:bold;
			background-color:#6D7B8D;
		}
		div.turn{
			font-family:Arial, Helvetica, sans-serif;
			font-weight:bold;
		}
		textarea.txt{
			font-family:Arial, Helvetica, sans-serif;
			font-weight:bold;
			overflow:hidden;
		}
	-->
	</style>
	<script>
		
		var prefs = new gadgets.Prefs();
		
		function initialization() {
		
			document.getElementById('main').style.backgroundColor = prefs.getString("backcolor");	
		}
		
		gadgets.util.registerOnLoadHandler(initialization);
		
	</script>

	<script language="Javascript">
	<!--
	
	var xo = 0;
	var scorex = 0;
	var score0 = 0;

	var game = new Array(new Array(new Array(0,0,0,0), new Array(0,0,0,0), new Array(0,0,0,0), new Array(0,0,0,0)), new Array(new Array(0,0,0,0), new Array(0,0,0,0), new Array(0,0,0,0), new Array(0,0,0,0)), new Array(new Array(0,0,0,0), new Array(0,0,0,0), new Array(0,0,0,0), new Array(0,0,0,0)), new Array(new Array(0,0,0,0), new Array(0,0,0,0), new Array(0,0,0,0), new Array(0,0,0,0)) );
	
	function checkGame() {

		var i;
		var j;
		var k;
		var s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,s11,s12,s13,s14,s15,s16;
		s13 = game[0][0][0] + game[1][1][1] + game[2][2][2] + game[3][3][3];
		s14 = game[0][0][3] + game[1][1][2] + game[2][2][1] + game[3][3][0];
		s15 = game[0][3][0] + game[1][2][1] + game[2][1][2] + game[3][0][3];
		s16 = game[0][3][3] + game[1][2][2] + game[2][1][1] + game[3][0][0];
		if(s13 == 4 || s14 == 4 || s15 == 4 || s16 == 4) {
			updateScore(scorex + 1, score0);
			alert("X wins");
			clearAll();
			return;
		}
		if(s13 == -4 || s14 == -4 || s15 == -4 || s16 == -4) {
			updateScore(scorex, score0 + 1);
			alert("0 wins");
			clearAll();
			return;
		}
		for(i = 0; i < 4; i++) {
			s7 = 0;
			s8 = 0;
			s9 = 0;
			s10 = 0;
			s11 = 0;
			s12 = 0;
			for(j = 0; j < 4; j++) {
				s1 = 0;
				s2 = 0;
				s3 = 0;
				s4 = 0;
				s5 = 0;
				s6 = 0;
				for(k = 0; k < 4; k++) {
					s1 = s1 + game[i][j][k];
					s2 = s2 + game[i][k][j];
					s3 = s3 + game[j][i][k];
					s4 = s4 + game[j][k][i];
					s5 = s5 + game[k][i][j];
					s6 = s6 + game[k][j][i];
					if(j == k) {
						s7 = s7 + game[i][j][k];
						s8 = s8 + game[j][i][k];
						s9 = s9 + game[j][k][i];
					}
					if(j + k == 3) {
						s10 = s10 + game[i][j][k];
						s11 = s11 + game[j][i][k];
						s12 = s12 + game[j][k][i];
					}
				}
				if(s1 == 4 || s2 == 4 || s3 == 4 || s4 == 4 || s5 == 4 || s6 == 4) {
					updateScore(scorex + 1, score0);
					alert("X wins");
					clearAll();
					return;
				}
				if(s1 == -4 || s2 == -4 || s3 == -4 || s4 == -4 || s5 == -4 || s6 == -4) {
					updateScore(scorex, score0 + 1);
					alert("0 wins");
					clearAll();
					return;
				}
			}
			if(s7 == 4 || s8 == 4 || s9 == 4 || s10 == 4 || s11 == 4 || s12 == 4) {
				updateScore(scorex + 1, score0);
				alert("X wins");
				clearAll();
				return;
			}
			if(s7 == -4 || s8 == -4 || s9 == -4 || s10 == -4 || s11 == -4 || s12 == -4) {
				updateScore(scorex, score0 + 1);
				alert("0 wins");
				clearAll();
				return;
			}
		}
		
	}

	function setGame(a, b, c, obj) {

		if(obj.value == "") {

			if(xo == 0) {
				var txtx = document.getElementById('movex').value;
				txtx = txtx + ' (' + a + ',' + b + ',' + c + ')';
				document.getElementById('movex').value = txtx;
				game[a][b][c] = 1;
			}
			else {
				var txt0 = document.getElementById('move0').value;
				txt0 = txt0 + ' (' + a + ',' + b + ',' + c + ')';
				document.getElementById('move0').value = txt0;
				game[a][b][c] = -1;
			}
		}
	}
	
	function updateScore(sx, s0) {

		scorex = sx;
		score0 = s0;
		var newscore = 'Score ' + scorex + ' - ' + score0;
		document.getElementById('scoreBoard').innerHTML = newscore;
	}

	function clearAll() {
	
		xo = 0;
		var i;
		var j;
		var k;
		for(i = 0; i < 4; i++)
			for(j = 0; j < 4; j++)
				for(k = 0; k < 4; k++)
					game[i][j][k] = 0;
		document.getElementById('turn').innerHTML = "X's turn";
		document.getElementById('movex').value = "X's moves";
		document.getElementById('move0').value = "0's moves";
		document.getElementById('b111').value = '';
		document.getElementById('b112').value = '';
		document.getElementById('b113').value = '';
		document.getElementById('b114').value = '';
		document.getElementById('b121').value = '';
		document.getElementById('b122').value = '';
		document.getElementById('b123').value = '';
		document.getElementById('b124').value = '';
		document.getElementById('b131').value = '';
		document.getElementById('b132').value = '';
		document.getElementById('b133').value = '';
		document.getElementById('b134').value = '';
		document.getElementById('b141').value = '';
		document.getElementById('b142').value = '';
		document.getElementById('b143').value = '';
		document.getElementById('b144').value = '';

		document.getElementById('b211').value = '';
		document.getElementById('b212').value = '';
		document.getElementById('b213').value = '';
		document.getElementById('b214').value = '';
		document.getElementById('b221').value = '';
		document.getElementById('b222').value = '';
		document.getElementById('b223').value = '';
		document.getElementById('b224').value = '';
		document.getElementById('b231').value = '';
		document.getElementById('b232').value = '';
		document.getElementById('b233').value = '';
		document.getElementById('b234').value = '';
		document.getElementById('b241').value = '';
		document.getElementById('b242').value = '';
		document.getElementById('b243').value = '';
		document.getElementById('b244').value = '';

		document.getElementById('b311').value = '';
		document.getElementById('b312').value = '';
		document.getElementById('b313').value = '';
		document.getElementById('b314').value = '';
		document.getElementById('b321').value = '';
		document.getElementById('b322').value = '';
		document.getElementById('b323').value = '';
		document.getElementById('b324').value = '';
		document.getElementById('b331').value = '';
		document.getElementById('b332').value = '';
		document.getElementById('b333').value = '';
		document.getElementById('b334').value = '';
		document.getElementById('b341').value = '';
		document.getElementById('b342').value = '';
		document.getElementById('b343').value = '';
		document.getElementById('b344').value = '';

		document.getElementById('b411').value = '';
		document.getElementById('b412').value = '';
		document.getElementById('b413').value = '';
		document.getElementById('b414').value = '';
		document.getElementById('b421').value = '';
		document.getElementById('b422').value = '';
		document.getElementById('b423').value = '';
		document.getElementById('b424').value = '';
		document.getElementById('b431').value = '';
		document.getElementById('b432').value = '';
		document.getElementById('b433').value = '';
		document.getElementById('b434').value = '';
		document.getElementById('b441').value = '';
		document.getElementById('b442').value = '';
		document.getElementById('b443').value = '';
		document.getElementById('b444').value = '';
	
		
	}
	
	function change(obj) {
		
		
		if(obj.value == "") {
			var element = document.getElementById('turn');
			if(xo == 0) {	
				obj.value = "X";
				element.innerHTML = "0's turn";
			}
			else {
				obj.value = "0";
				element.innerHTML = "X's turn";
			}
			xo = 1 - xo;
			checkGame();
		}
	}
	
	//-->
	</script>

</head>

<body>
	
	<table id="main" border>
	<tr>
	<td colspan="3">
		<div class="turn" id="scoreBoard" align="center">Score 0 - 0</div>
	</td>
	</tr>
	<tr>
	<td>
		<textarea class="txt" id="movex" rows="25" cols="8" readonly="readonly" style="background-color:#FFAA80">X's moves</textarea>
	</td>
	<td>
	<div class="turn" id="turn" align="center">X's turn</div>
	<table id="t1">
		<tr>
			<td><input class="clicker" id="b111" type="button" onClick="setGame(0,0,0,this); change(this)"/></td>
			<td><input class="clicker" id="b112" type="button" onClick="setGame(0,0,1,this); change(this)"/></td>
			<td><input class="clicker" id="b113" type="button" onClick="setGame(0,0,2,this); change(this)"/></td>
			<td><input class="clicker" id="b114" type="button" onClick="setGame(0,0,3,this); change(this)"/></td>
		</tr>
		 <tr>
			 <td><input class="clicker" id="b121" type="button" onClick="setGame(0,1,0,this); change(this)"/></td>
			 <td><input class="clicker" id="b122" type="button" onClick="setGame(0,1,1,this); change(this)"/></td>
			 <td><input class="clicker" id="b123" type="button" onClick="setGame(0,1,2,this); change(this)"/></td>
			 <td><input class="clicker" id="b124" type="button" onClick="setGame(0,1,3,this); change(this)"/></td>
                </tr>
		 <tr>
			 <td><input class="clicker" id="b131" type="button" onClick="setGame(0,2,0,this); change(this)"/></td>
			 <td><input class="clicker" id="b132" type="button" onClick="setGame(0,2,1,this); change(this)"/></td>
			 <td><input class="clicker" id="b133" type="button" onClick="setGame(0,2,2,this); change(this)"/></td>
			 <td><input class="clicker" id="b134" type="button" onClick="setGame(0,2,3,this); change(this)"/></td>
                </tr>
		 <tr>
			 <td><input class="clicker" id="b141" type="button" onClick="setGame(0,3,0,this); change(this)"/></td>
			 <td><input class="clicker" id="b142" type="button" onClick="setGame(0,3,1,this); change(this)"/></td>
			 <td><input class="clicker" id="b143" type="button" onClick="setGame(0,3,2,this); change(this)"/></td>
			 <td><input class="clicker" id="b144" type="button" onClick="setGame(0,3,3,this); change(this)"/></td>
                </tr>
	</table>
	<br>

	<table id="t2">
		<tr>
			<td><input class="clicker" id="b211" type="button" onClick="setGame(1,0,0,this); change(this)"/></td>
			<td><input class="clicker" id="b212" type="button" onClick="setGame(1,0,1,this); change(this)"/></td>
			<td><input class="clicker" id="b213" type="button" onClick="setGame(1,0,2,this); change(this)"/></td>
			<td><input class="clicker" id="b214" type="button" onClick="setGame(1,0,3,this); change(this)"/></td>
		</tr>
		 <tr>
			 <td><input class="clicker" id="b221" type="button" onClick="setGame(1,1,0,this); change(this)"/></td>
			 <td><input class="clicker" id="b222" type="button" onClick="setGame(1,1,1,this); change(this)"/></td>
			 <td><input class="clicker" id="b223" type="button" onClick="setGame(1,1,2,this); change(this)"/></td>
			 <td><input class="clicker" id="b224" type="button" onClick="setGame(1,1,3,this); change(this)"/></td>
                </tr>
		 <tr>
			 <td><input class="clicker" id="b231" type="button" onClick="setGame(1,2,0,this); change(this)"/></td>
			 <td><input class="clicker" id="b232" type="button" onClick="setGame(1,2,1,this); change(this)"/></td>
			 <td><input class="clicker" id="b233" type="button" onClick="setGame(1,2,2,this); change(this)"/></td>
			 <td><input class="clicker" id="b234" type="button" onClick="setGame(1,2,3,this); change(this)"/></td>
                </tr>
		 <tr>
			 <td><input class="clicker" id="b241" type="button" onClick="setGame(1,3,0,this); change(this)"/></td>
			 <td><input class="clicker" id="b242" type="button" onClick="setGame(1,3,1,this); change(this)"/></td>
			 <td><input class="clicker" id="b243" type="button" onClick="setGame(1,3,2,this); change(this)"/></td>
			 <td><input class="clicker" id="b244" type="button" onClick="setGame(1,3,3,this); change(this)"/></td>
                </tr>
	</table>
	<br>

	<table id="t3">
		<tr>
			<td><input class="clicker" id="b311" type="button" onClick="setGame(2,0,0,this); change(this)"/></td>
			<td><input class="clicker" id="b312" type="button" onClick="setGame(2,0,1,this); change(this)"/></td>
			<td><input class="clicker" id="b313" type="button" onClick="setGame(2,0,2,this); change(this)"/></td>
			<td><input class="clicker" id="b314" type="button" onClick="setGame(2,0,3,this); change(this)"/></td>
		</tr>
		 <tr>
			 <td><input class="clicker" id="b321" type="button" onClick="setGame(2,1,0,this); change(this)"/></td>
			 <td><input class="clicker" id="b322" type="button" onClick="setGame(2,1,1,this); change(this)"/></td>
			 <td><input class="clicker" id="b323" type="button" onClick="setGame(2,1,2,this); change(this)"/></td>
			 <td><input class="clicker" id="b324" type="button" onClick="setGame(2,1,3,this); change(this)"/></td>
                </tr>
		 <tr>
			 <td><input class="clicker" id="b331" type="button" onClick="setGame(2,2,0,this); change(this)"/></td>
			 <td><input class="clicker" id="b332" type="button" onClick="setGame(2,2,1,this); change(this)"/></td>
			 <td><input class="clicker" id="b333" type="button" onClick="setGame(2,2,2,this); change(this)"/></td>
			 <td><input class="clicker" id="b334" type="button" onClick="setGame(2,2,3,this); change(this)"/></td>
                </tr>
		 <tr>
			 <td><input class="clicker" id="b341" type="button" onClick="setGame(2,3,0,this); change(this)"/></td>
			 <td><input class="clicker" id="b342" type="button" onClick="setGame(2,3,1,this); change(this)"/></td>
			 <td><input class="clicker" id="b343" type="button" onClick="setGame(2,3,2,this); change(this)"/></td>
			 <td><input class="clicker" id="b344" type="button" onClick="setGame(2,3,3,this); change(this)"/></td>
                </tr>
	</table>
	<br>

	<table id="t4">
		<tr>
			<td><input class="clicker" id="b411" type="button" onClick="setGame(3,0,0,this); change(this)"/></td>
			<td><input class="clicker" id="b412" type="button" onClick="setGame(3,0,1,this); change(this)"/></td>
			<td><input class="clicker" id="b413" type="button" onClick="setGame(3,0,2,this); change(this)"/></td>
			<td><input class="clicker" id="b414" type="button" onClick="setGame(3,0,3,this); change(this)"/></td>
		</tr>
		 <tr>
			 <td><input class="clicker" id="b421" type="button" onClick="setGame(3,1,0,this); change(this)"/></td>
			 <td><input class="clicker" id="b422" type="button" onClick="setGame(3,1,1,this); change(this)"/></td>
			 <td><input class="clicker" id="b423" type="button" onClick="setGame(3,1,2,this); change(this)"/></td>
			 <td><input class="clicker" id="b424" type="button" onClick="setGame(3,1,3,this); change(this)"/></td>
                </tr>
		 <tr>
			 <td><input class="clicker" id="b431" type="button" onClick="setGame(3,2,0,this); change(this)"/></td>
			 <td><input class="clicker" id="b432" type="button" onClick="setGame(3,2,1,this); change(this)"/></td>
			 <td><input class="clicker" id="b433" type="button" onClick="setGame(3,2,2,this); change(this)"/></td>
			 <td><input class="clicker" id="b434" type="button" onClick="setGame(3,2,3,this); change(this)"/></td>
                </tr>
		 <tr>
			 <td><input class="clicker" id="b441" type="button" onClick="setGame(3,3,0,this); change(this)"/></td>
			 <td><input class="clicker" id="b442" type="button" onClick="setGame(3,3,1,this); change(this)"/></td>
			 <td><input class="clicker" id="b443" type="button" onClick="setGame(3,3,2,this); change(this)"/></td>
			 <td><input class="clicker" id="b444" type="button" onClick="setGame(3,3,3,this); change(this)"/></td>
                </tr>
	</table>
	<p align="center"><input class="clr" type="button" onClick="clearAll()" value="Clear Grid"/></p>
	<p align="center"><input class="clr" type="button" onClick="updateScore(0,0)" value="Reset Score"/></p>
	</td>
	<td>
		<textarea class="txt" id="move0" rows="25" cols="8" readonly="readonly" style="background-color:#FFAA80">0's moves</textarea>
	</td>
	</tr>
	</table>
	
</body>

</html>

     ]]>
  </Content> 
</Module>