topical media & game development

talk show tell print

game-javascript-casual-joggle-joggle-main.htm / htm



  <!-- NOTE:  Remember to unzip and upload the joggle images -->
  <!-- to the same web site directory that the joggle HTML -->
  <!-- files will be in.  You can download the image ZIP at: -->
  
  <!-- http://javascript.internet.com/img/joggle/joggle.zip -->
  
  <html>
  <body onLoad="document.joggle.user.value = 'New Game';GameStatus = 1;" text="#000000" bgcolor="#ffffff">
  <SCRIPT LANGUAGE="JavaScript">
  <!-- Original:  Serban Oprescu (serban@pixelsharp.com) -->
  
  <!-- This script and many more are available free online at -->
  <!-- The JavaScript Source!! http://javascript.internet.com -->
  
  <!-- Begin
  var Words = "";
  var CurrentWord = "";
  var GameStatus = 0;
  var GameTime = 0;
  var LastTile = -10;
  var LastTileX = -10;
  var LastTileY = -10;
  var TilesOn = "";
  var TileMap = "";
  var LookUp = "abcdefghijklmnopqrstuvwxyz";
  var Cubes = "qbzjkxhhlrdotelpcittotemaeaeeetouotonhdthossnseusctiepyifpsrovwrgrlhnrodriyprheandnneeeemaaaafsrafaisrdordlnmnneagititieaumeegyifasrccwnstuotownetilic";
  function clearword(DoMap) {
  CurrentWord = "";
  LastTile = -10;
  LastTileX = -10;
  LastTileY = -10;
  if (DoMap) {
  for (i=0; i<TilesOn.length; i++) {
  WhichTile = LookUp.indexOf(TilesOn.charAt(i));
  if (WhichTile == -1) {
  WhichTile = i;
  WhichLetter = "0";
  }
  else {
  WhichLetter = TileMap.charAt(WhichTile);
  }
  document.images[WhichTile].src = "game-javascript-casual-joggle-" + WhichLetter + "0.gif";
     }
  }
  TilesOn = "";
  }
  function endgame() {
  GameStatus = 1;
  clearword(1);
  document.joggle.user.value = "New Game";
  parent.wordframe.document.write("<FORM ACTION=http://www.pixelsharp.com/projects/joggle/score.asp METHOD=POST><INPUT TYPE=Hidden NAME=words VALUE=" + Words + "><INPUT TYPE=Submit VALUE=Score></FORM><BR>");
  }
  function buttonpress() {
  var ActingStatus = GameStatus;
  if (ActingStatus == 1) {
  Words = ":";
  clearword();
  TileMap = "";
  GameTime = 75;
  TempCubes = Cubes;
  Position = 0;
  while (TileMap.length != 25) {
  Position = Math.floor(Math.random() * (TempCubes.length - 1));
  TileMap = TileMap + TempCubes.charAt(Position);
  Position = Math.floor(Position / 6);
  TempCubes = TempCubes.substring(0, Position * 6) + TempCubes.substring(6 + Position * 6, TempCubes.length);
  }
  for (i=0; i<25; i++) {
  document.images[i].src = "game-javascript-casual-joggle-" + TileMap.charAt(i) + "0.gif";
  }
  parent.wordframe.document.location = "game-javascript-casual-joggle-joggle-empty.htm";
  GameTime = 181;
  setTimeout("countdown()", 1);
  
  GameStatus = 2;
  }
  if ((ActingStatus == 2) || (ActingStatus == 3)) {
  GameStatus = 4;
  GameTime = GameTime * -1;
  TilesOn = "0000000000000000000000000";
  clearword(1);
  document.joggle.user.value = "Paused";
  }
  if (ActingStatus == 4) {
  for (i=0; i<25; i++) {
  document.images[i].src = "game-javascript-casual-joggle-" + TileMap.charAt(i) + "0.gif"
  }
  GameStatus = 2;
  setTimeout("countdown()", 1);
     }
  }
  function countdown() {
  if (GameTime > -1) {
  GameTime = GameTime - 1;
  Division = ":";
  if (GameTime % 60 < 10) {Division = ":0"}
  document.joggle.user.value = Math.floor(GameTime / 60) + Division + GameTime % 60;
  if (GameTime != 0) {
  setTimeout("countdown()", 1000);
  }
  else {
  endgame();
     }
  }
  else { GameTime = GameTime * -1; }
  }
  function slide(TileX, TileY) {
  WhichTile = TileX * 5 + TileY;
  WhichLetter = TileMap.charAt(WhichTile);
  if (GameStatus == 3) {
  if ((Math.abs(TileX - LastTileX) < 2) && (Math.abs(TileY - LastTileY) < 2)) {
  if (TilesOn.indexOf(LookUp.charAt(WhichTile)) == -1) {
  CurrentWord = CurrentWord + WhichLetter;
  if (WhichLetter == 'q') { CurrentWord = CurrentWord + "u"; }
  document.images[WhichTile].src = "game-javascript-casual-joggle-" +  WhichLetter + "1.gif";
  LastTile = WhichTile;
  LastTileX = TileX;
  LastTileY = TileY;
  TilesOn = TilesOn + LookUp.charAt(WhichTile);
           }
        }
     }
  }
  function click(TileX, TileY) {
  var NewStatus = GameStatus;
  WhichTile = TileX * 5 + TileY;
  WhichLetter = TileMap.charAt(WhichTile);
  if (GameStatus == 2) {
  CurrentWord = WhichLetter;
  if (WhichLetter == 'q') { CurrentWord = CurrentWord + "u"; }
  document.images[WhichTile].src = "game-javascript-casual-joggle-" + WhichLetter + "1.gif";
  LastTile = WhichTile;
  LastTileX = TileX;
  LastTileY = TileY;
  TilesOn = LookUp.charAt(WhichTile);
  NewStatus = 3;
  }
  if (GameStatus == 3) {
  if (CurrentWord.length > 3) {
  if (Words.indexOf(":" + CurrentWord + ":") == -1) {
  if (Words == ":") { parent.wordframe.document.write("<CENTER><B>Word List</B></CENTER><BR>"); }
  parent.wordframe.document.write(CurrentWord + "<BR>");
  Words = Words + CurrentWord + ":";
     }
  }
  clearword(1);
  NewStatus = 2;
  }
  GameStatus = NewStatus;
  }
  function abandon() {
  if (GameStatus == 4) {
  endgame();
     }
  }
  // End -->
  </SCRIPT>
  <CENTER>
  <H1><A HREF="Javascript:abandon()">Joggle</A></H1>
  <FORM NAME=joggle>
  <TABLE BORDER=0 CELLPADDING=8 CELLSPACING=0 BGCOLOR="#C8CEC4">
  <TR><TD><A HREF="Javascript:click(0,0)" onmouseover="slide(0,0)"><IMG SRC=game-javascript-casual-joggle-00.gif BORDER=0></A></TD><TD><A HREF="Javascript:click(0,1)" onmouseover="slide(0,1)"><IMG SRC=game-javascript-casual-joggle-00.gif BORDER=0></A></TD><TD><A HREF="Javascript:click(0,2)" onmouseover="slide(0,2)"><IMG SRC=game-javascript-casual-joggle-00.gif BORDER=0></A></TD><TD><A HREF="Javascript:click(0,3)" onmouseover="slide(0,3)"><IMG SRC=game-javascript-casual-joggle-00.gif BORDER=0></A></TD><TD><A HREF="Javascript:click(0,4)" onmouseover="slide(0,4)"><IMG SRC=game-javascript-casual-joggle-00.gif BORDER=0></A></TD></TR>
  <TR><TD><A HREF="Javascript:click(1,0)" onmouseover="slide(1,0)"><IMG SRC=game-javascript-casual-joggle-00.gif BORDER=0></A></TD><TD><A HREF="Javascript:click(1,1)" onmouseover="slide(1,1)"><IMG SRC=game-javascript-casual-joggle-00.gif BORDER=0></A></TD><TD><A HREF="Javascript:click(1,2)" onmouseover="slide(1,2)"><IMG SRC=game-javascript-casual-joggle-00.gif BORDER=0></A></TD><TD><A HREF="Javascript:click(1,3)" onmouseover="slide(1,3)"><IMG SRC=game-javascript-casual-joggle-00.gif BORDER=0></A></TD><TD><A HREF="Javascript:click(1,4)" onmouseover="slide(1,4)"><IMG SRC=game-javascript-casual-joggle-00.gif BORDER=0></A></TD></TR>
  <TR><TD><A HREF="Javascript:click(2,0)" onmouseover="slide(2,0)"><IMG SRC=game-javascript-casual-joggle-00.gif BORDER=0></A></TD><TD><A HREF="Javascript:click(2,1)" onmouseover="slide(2,1)"><IMG SRC=game-javascript-casual-joggle-00.gif BORDER=0></A></TD><TD><A HREF="Javascript:click(2,2)" onmouseover="slide(2,2)"><IMG SRC=game-javascript-casual-joggle-00.gif BORDER=0></A></TD><TD><A HREF="Javascript:click(2,3)" onmouseover="slide(2,3)"><IMG SRC=game-javascript-casual-joggle-00.gif BORDER=0></A></TD><TD><A HREF="Javascript:click(2,4)" onmouseover="slide(2,4)"><IMG SRC=game-javascript-casual-joggle-00.gif BORDER=0></A></TD></TR>
  <TR><TD><A HREF="Javascript:click(3,0)" onmouseover="slide(3,0)"><IMG SRC=game-javascript-casual-joggle-00.gif BORDER=0></A></TD><TD><A HREF="Javascript:click(3,1)" onmouseover="slide(3,1)"><IMG SRC=game-javascript-casual-joggle-00.gif BORDER=0></A></TD><TD><A HREF="Javascript:click(3,2)" onmouseover="slide(3,2)"><IMG SRC=game-javascript-casual-joggle-00.gif BORDER=0></A></TD><TD><A HREF="Javascript:click(3,3)" onmouseover="slide(3,3)"><IMG SRC=game-javascript-casual-joggle-00.gif BORDER=0></A></TD><TD><A HREF="Javascript:click(3,4)" onmouseover="slide(3,4)"><IMG SRC=game-javascript-casual-joggle-00.gif BORDER=0></A></TD></TR>
  <TR><TD><A HREF="Javascript:click(4,0)" onmouseover="slide(4,0)"><IMG SRC=game-javascript-casual-joggle-00.gif BORDER=0></A></TD><TD><A HREF="Javascript:click(4,1)" onmouseover="slide(4,1)"><IMG SRC=game-javascript-casual-joggle-00.gif BORDER=0></A></TD><TD><A HREF="Javascript:click(4,2)" onmouseover="slide(4,2)"><IMG SRC=game-javascript-casual-joggle-00.gif BORDER=0></A></TD><TD><A HREF="Javascript:click(4,3)" onmouseover="slide(4,3)"><IMG SRC=game-javascript-casual-joggle-00.gif BORDER=0></A></TD><TD><A HREF="Javascript:click(4,4)" onmouseover="slide(4,4)"><IMG SRC=game-javascript-casual-joggle-00.gif BORDER=0></A></TD></TR>
  </TABLE>
  <br><input type=button name="user" value=" Loading... " onclick="buttonpress()"><br>
  <img src=game-javascript-casual-joggle-a0.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-b0.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-c0.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-d0.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-e0.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-f0.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-g0.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-h0.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-i0.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-j0.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-k0.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-l0.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-m0.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-n0.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-o0.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-p0.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-q0.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-r0.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-s0.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-t0.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-u0.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-v0.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-w0.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-x0.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-y0.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-z0.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-a1.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-b1.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-c1.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-d1.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-e1.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-f1.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-g1.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-h1.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-i1.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-j1.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-k1.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-l1.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-m1.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-n1.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-o1.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-p1.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-q1.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-r1.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-s1.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-t1.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-u1.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-v1.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-w1.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-x1.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-y1.gif width=1 height=1>
  <img src=game-javascript-casual-joggle-z1.gif width=1 height=1>
  </center>
  <small><ul>
  <li>To enter a word, click the first letter of the word, then move the mouse over the next letters in turn, and finally click the last letter of the word.
  <li>To pause the game, click the button displaying the time. Click it again to unpause. Pausing the game reduces the remaining time by 1 second.
  <li>To abandon the current game, first pause the game, then click on "Joggle."
  <li>To score the game, after the game has ended or been abandoned, click the "Score" button in the frame on the right.
  </body>
  </html>
  


(C) Æliens 20/2/2008

You may not copy or print any of this material without explicit permission of the author or the publisher. In case of other copyright issues, contact the author.