Advertisement
Guest User

Schiffeversenken

a guest
Sep 25th, 2013
144
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.74 KB | None | 0 0
  1. var colorEmpty = "white";
  2. var colorMouseOver = "#dddddd";
  3. var colorCantPlaceShip = "red";
  4. var colorOwnShip = "blue";
  5.  
  6. var allowSet = false;
  7.  
  8. var actualShipLength = 4
  9. var actualShipDirection = "e" //north, east
  10. var actualFieldPosX;
  11. var actualFieldPosY;
  12. var fieldWidth = 9;
  13. var fieldHeight = 9;
  14.  
  15.  
  16.  
  17. function changeColor(field){
  18. setPositions(field);
  19. clearField();
  20. checkShipInField();
  21.  
  22.  
  23.  
  24. function colorize(x, y, color){
  25. //console.log("colorize, "+x+", "+y);
  26. document.getElementById("f"+x+"_"+y).style.backgroundColor=color;
  27. }
  28.  
  29. function clearField(){
  30. for(var x=0;x<=9;x++){
  31. for(var y=0;y<=9;y++){
  32. colorize(x, y, colorEmpty);
  33.  
  34. }
  35. }
  36. }
  37.  
  38. function setPositions(field){
  39. //console.log("getPositions");
  40. var posUnderscore = field.id.indexOf("_");
  41. actualFieldPosX = parseInt(field.id.substr(1,posUnderscore - 1));
  42. actualFieldPosY = parseInt(field.id.substr(posUnderscore + 1));
  43. //console.log(actualFieldPosX+" "+actualFieldPosY);
  44. }
  45.  
  46. function checkShipInField(){
  47. if(actualShipDirection == "n"){
  48. if(!(actualFieldPosX - actualShipLength + 1 < 0)){
  49. for(var i=0;i<actualShipLength;i++){
  50. colorize((actualFieldPosX - i), actualFieldPosY, colorMouseOver);
  51. allowSet = true;
  52. //console.log(actualFieldPosX+", "+ (actualFieldPosY+i));
  53. }
  54. }else{
  55. colorize(actualFieldPosX, actualFieldPosY, colorCantPlaceShip);
  56. allowSet = false;
  57. }
  58. }else if(actualShipDirection == "e"){
  59. if((actualFieldPosY + actualShipLength - 1 < 10)){
  60. for(var i=0;i<actualShipLength;i++){
  61. colorize(actualFieldPosX, (actualFieldPosY +i), colorMouseOver);
  62. allowSet = true;
  63. }
  64. }else{
  65. colorize(actualFieldPosX, actualFieldPosY, colorCantPlaceShip);
  66. allowSet = false;
  67. }
  68. }
  69. console.log(allowSet);
  70. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement