nbarber20

Oceanport

Jan 6th, 2019
536
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. let progressionVars = [false, //picked up key in kitchen
  2.                       false, //picked up house key
  3.                       false, //Took Fish
  4.                       false, //gave fish to cat
  5.                       false, //took the twine
  6.                        false
  7.                       ];
  8. let roomInfo = [[],[],[],[],[],[]]
  9. let roomLookDesc = [[],[],[],[],[],[]];
  10. let isroomAccessable = [[],[],[],[],[],[]];
  11. let RoomAction = [[],[],[],[],[],[]];
  12. let inventory = [0,0,0,0]
  13. let itemnames = ["Empty","Silver Key","House Key","Fish","Wick","Unlit Lantern","Lantern"]
  14.  
  15.  
  16. roomInfo[0][0] = "My Bedroom";
  17. roomInfo[0][1] = "Hallway";
  18. roomInfo[1][1] = "Hallway";
  19. roomInfo[2][1] = "Hallway";
  20. roomInfo[2][2] = "Stairs";
  21. roomInfo[3][1] = "Office";
  22. roomInfo[3][0] = "Coat Rack";
  23. roomInfo[2][3] = "Foyer";
  24. roomInfo[1][3] = "Kitchen";
  25. roomInfo[2][4] = "Outside";
  26. roomInfo[3][4] = "Street";
  27. roomInfo[4][4] = "Dark Street";
  28. roomInfo[4][3] = "END"; //alleyway
  29. roomInfo[4][5] = "Trade Yard";
  30.  
  31. roomLookDesc[0][0] = "Its my bedroom.There is a bed and plain furniture in this room. Beside my bed is a burnt out lantern";
  32. roomLookDesc[0][1] = "An empty hallway. The door to my bedroom is here.";
  33. roomLookDesc[1][1] = "An empty hallway.";
  34. roomLookDesc[2][1] = "An empty hallway. The door to my office is here.";
  35. roomLookDesc[2][2] = "Somewhat crooked wooden stairs.";
  36. roomLookDesc[3][1] = "My office. There are files scattered across my desk.";
  37. roomLookDesc[3][0] = "A coat rack. My coat and hat are here.";
  38. roomLookDesc[2][3] = "The stairs lead toward the front door, which appears to be locked.";
  39. roomLookDesc[1][3] = "The kitchen is neatly kept, except for a silver key sat on the kitchen table.";
  40. roomLookDesc[2][4] = "The night streets of Oceanport. You are surrounded by small two story buildings. All coated in a dense fog";
  41. roomLookDesc[3][4] = "The street grows darker as i follow it. In the darkness a black cat scuttles across my path.";
  42. roomLookDesc[4][4] = "It is to dark to see down the alleyways i pass by in the darkness. The road leads south towards the harbor.";
  43. roomLookDesc[4][3] = "This ends the demo.";
  44. roomLookDesc[4][5] = "The trade yard doors are shuttered for the night. A large net of fish is dragged in by a lone fisher.";
  45.  
  46. RoomAction[0][0] = "I straighten the covers. Nothing happens.";
  47. RoomAction[0][1] = "Nothing happens.";
  48. RoomAction[1][1] = "Nothing happens.";
  49. RoomAction[2][1] = "Nothing happens.";
  50. RoomAction[2][2] = "Nothing happens.";
  51. RoomAction[3][1] = "The news clipping reads: 'Mysterious dissapearances in OceanPort'";
  52. RoomAction[3][0] = "I take my coat. The house key is in my pocket.";
  53. RoomAction[2][3] = "Nothing happens.";
  54. RoomAction[1][3] = "I take the silver key.";
  55. RoomAction[2][4] = "Nothing happens.";
  56. RoomAction[3][4] = "Nothing happens.";
  57. RoomAction[4][4] = "Nothing happens.";
  58. RoomAction[4][3] = "Nothing happens.";
  59. RoomAction[4][5] = "You hand the fisher a coin and take one of the fish.";
  60.  
  61. isroomAccessable[0][0] = true;
  62. isroomAccessable[0][1] = true;
  63. isroomAccessable[1][1] = true;
  64. isroomAccessable[2][1] = true;
  65. isroomAccessable[2][2] = true;
  66. isroomAccessable[3][1] = false;//office
  67. isroomAccessable[3][0] = true;
  68. isroomAccessable[2][3] = true;
  69. isroomAccessable[1][3] = true;
  70. isroomAccessable[2][4] = false;//street
  71. isroomAccessable[3][4] = true;
  72. isroomAccessable[4][4] = true;
  73. isroomAccessable[4][3] = false;//alleyway
  74. isroomAccessable[4][5] = true;
  75.  
  76. var playerX =0;
  77. var playerY =0;
  78.  
  79.  
  80. var lookBtn = document.getElementById("lookButton");
  81. var actBtn = document.getElementById("useButton");
  82. var bagBtn = document.getElementById("bagButton");
  83.  
  84. var lookExit = document.getElementById("lookExit");
  85. var leftRoom = document.getElementById("leftRoom");
  86. var rightRoom = document.getElementById("rightRoom");
  87. var upRoom = document.getElementById("upRoom");
  88. var downRoom = document.getElementById("downRoom");
  89.  
  90. var upleftRoom = document.getElementById("upleftRoom");
  91. var uprightRoom = document.getElementById("uprightRoom");
  92. var downleftRoom = document.getElementById("downleftRoom");
  93. var downrightRoom = document.getElementById("downrightRoom");
  94.  
  95. var inventory1 = document.getElementById("inventory1");
  96. var inventory2 = document.getElementById("inventory2");
  97. var inventory3 = document.getElementById("inventory3");
  98. var inventory4 = document.getElementById("inventory4");
  99. UpdateWorld();
  100.  
  101. function moveUp(){ 
  102.     console.log("up");
  103.     if(RoomExisitsAt(playerX,playerY-1)){        
  104.       if(isroomAccessable[playerX][playerY-1]){  
  105.         playerY--;
  106.       }
  107.     }
  108.   UpdateWorld();
  109. }
  110. function moveDown(){   
  111.     console.log("down");
  112.     if(RoomExisitsAt(playerX,playerY+1)){  
  113.         if(isroomAccessable[playerX][playerY+1]){        
  114.             playerY++;
  115.         }
  116.     }
  117.   UpdateWorld();
  118. }
  119. function moveRight(){  
  120.     console.log("right");
  121.     if(RoomExisitsAt(playerX+1,playerY)){      
  122.       if(isroomAccessable[playerX+1][playerY]){  
  123.         playerX++;
  124.       }
  125.     }
  126.   UpdateWorld();
  127. }
  128. function moveLeft(){
  129.     console.log("left");
  130.     if(RoomExisitsAt(playerX-1,playerY)){      
  131.       if(isroomAccessable[playerX-1][playerY]){  
  132.         playerX--;
  133.       }
  134.     }  
  135.     UpdateWorld();
  136. }
  137.  
  138. function ItemBtn(item){
  139.  
  140.   document.getElementById("inventory0").style.display = "none";
  141.   document.getElementById("lookWindow").style.visibility = "visible";
  142.   UseItem(inventory[item]);
  143. }
  144.  
  145. lookExit.onmousedown = function(evt){
  146.   let lookWindow = document.getElementById("lookWindow");
  147.   lookWindow.style.visibility = "hidden";
  148. }
  149.  
  150.  
  151. lookBtn.onmousedown = function(evt){  
  152.   let lookWindow = document.getElementById("lookWindow");
  153.   lookWindow.style.visibility = "visible";
  154.  
  155.   let lookText = document.getElementById("lookText");
  156.   lookText.innerHTML = roomLookDesc[playerX][playerY];
  157.   console.log("Looked");
  158. }
  159.  
  160.  
  161.  
  162.  
  163. actBtn.onmousedown = function(evt){
  164.   let lookWindow = document.getElementById("lookWindow");
  165.   lookWindow.style.visibility = "visible";
  166.  
  167.   let lookText = document.getElementById("lookText");
  168.   lookText.innerHTML = RoomAction[playerX][playerY];
  169.   console.log("Acted");
  170.  
  171.   //all actions//////////////////////////////////////////////////////
  172.   //pickup silver key
  173.   if(playerX == 1 && playerY == 3 && progressionVars[0] == false ){
  174.     if(AddItemToInventory(1)){
  175.       progressionVars[0] = true;
  176.       roomLookDesc[1][3] = "The kitchen is neatly kept.";
  177.       RoomAction[1][3] = "Nothing happens.";      
  178.     }else{
  179.       lookText.innerHTML = "My inventory is full";
  180.     }
  181.   }  
  182.   //pickup housekey
  183.   if(playerX == 3 && playerY == 0 && progressionVars[1] == false ){
  184.     if(AddItemToInventory(2)){
  185.       progressionVars[1] = true;
  186.       roomLookDesc[3][0] = "A coat rack.";
  187.       RoomAction[3][0] = "Nothing happens.";      
  188.     }else{
  189.       lookText.innerHTML = "My inventory is full";
  190.     }
  191.   }  
  192.   //pickup Fish
  193.   if(playerX == 4 && playerY == 5 && progressionVars[2] == false ){
  194.     if(AddItemToInventory(3)){
  195.       progressionVars[2] = true;
  196.       roomLookDesc[4][5] = "You are alone in the trade yard. Saliors can be herd down by the harbor.";
  197.       RoomAction[4][5] = "Nothing happens.";      
  198.     }else{
  199.       lookText.innerHTML = "My inventory is full";
  200.     }
  201.   }  
  202.  
  203.   if(playerX==3 && playerY ==4 && progressionVars[3] ==true && progressionVars[4]==false){ //picking up ball of twine
  204.     if(AddItemToInventory(4)){
  205.       progressionVars[4] = true;
  206.       roomLookDesc[3][4] = "The street grows darker as i follow it.";
  207.       RoomAction[3][4] = "Nothing happens.";      
  208.     }else{
  209.       lookText.innerHTML = "My inventory is full";
  210.     }
  211.   }
  212.   /////////////////////////////////////////////////////////////////////
  213. }
  214.  
  215.  
  216.  
  217.  
  218. bagBtn.onmousedown = function(evt){
  219.   document.getElementById("inventory0").style.display = "inline";
  220.   document.getElementById("inventory1text").innerHTML = itemnames[inventory[0]];
  221.  
  222.   document.getElementById("inventory2text").innerHTML = itemnames[inventory[1]];
  223.  
  224.   document.getElementById("inventory3text").innerHTML = itemnames[inventory[2]];
  225.  
  226.   document.getElementById("inventory4text").innerHTML = itemnames[inventory[3]];
  227.  
  228.  
  229.  
  230.   console.log("iventory");
  231. }
  232.  
  233.  
  234.  
  235.  
  236.  
  237. function UpdateWorld(){
  238.   //Update Room Description
  239.   let demotext = document.getElementById("demotext");
  240.   demotext.innerHTML = roomInfo[playerX][playerY];
  241.  
  242.   //drawmap
  243.   leftRoom.style.fill= "black";
  244.   rightRoom.style.fill = "black";
  245.   upRoom.style.fill = "black";
  246.   downRoom.style.fill = "black";  
  247.   upleftRoom.style.fill = "black";
  248.   uprightRoom.style.fill = "black";
  249.   downleftRoom.style.fill = "black";
  250.   downrightRoom.style.fill = "black";
  251.  
  252.  
  253.   if(RoomExisitsAt(playerX-1,playerY)){    
  254.      leftRoom.style.fill= "white";
  255.      if(isroomAccessable[playerX-1][playerY]){
  256.        leftRoom.innerHTML ="O";
  257.      }else{      
  258.        leftRoom.innerHTML = "8";
  259.      }
  260.   }
  261.   if(RoomExisitsAt(playerX+1,playerY)){    
  262.      rightRoom.style.fill= "white";
  263.      if(isroomAccessable[playerX+1][playerY]){
  264.        rightRoom.innerHTML ="O";
  265.      }else{      
  266.        rightRoom.innerHTML = "8";
  267.      }
  268.   }
  269.   if(RoomExisitsAt(playerX,playerY-1)){    
  270.      upRoom.style.fill= "white";
  271.      if(isroomAccessable[playerX][playerY-1]){
  272.        upRoom.innerHTML ="O";
  273.      }else{      
  274.        upRoom.innerHTML = "8";
  275.      }
  276.   }
  277.   if(RoomExisitsAt(playerX,playerY+1)){    
  278.      downRoom.style.fill= "white";
  279.      if(isroomAccessable[playerX][playerY+1]){
  280.        downRoom.innerHTML ="O";
  281.      }else{      
  282.        downRoom.innerHTML = "8";
  283.      }
  284.   }
  285.  
  286.   if(RoomExisitsAt(playerX-1,playerY-1)){    
  287.      upleftRoom.style.fill= "white";
  288.      if(isroomAccessable[playerX-1][playerY-1]){
  289.        upleftRoom.innerHTML ="O";
  290.      }else{      
  291.        upleftRoom.innerHTML = "8";
  292.      }
  293.   }
  294.   if(RoomExisitsAt(playerX+1,playerY-1)){    
  295.      uprightRoom.style.fill= "white";
  296.      if(isroomAccessable[playerX+1][playerY-1]){
  297.        uprightRoom.innerHTML ="O";
  298.      }else{      
  299.        uprightRoom.innerHTML = "8";
  300.      }
  301.   }
  302.   if(RoomExisitsAt(playerX-1,playerY+1)){    
  303.      downleftRoom.style.fill= "white";
  304.      if(isroomAccessable[playerX-1][playerY+1]){
  305.        downleftRoom.innerHTML ="O";
  306.      }else{      
  307.        downleftRoom.innerHTML = "8";
  308.      }
  309.   }
  310.   if(RoomExisitsAt(playerX+1,playerY+1)){    
  311.      downrightRoom.style.fill= "white";
  312.      if(isroomAccessable[playerX+1][playerY+1]){
  313.        downrightRoom.innerHTML ="O";
  314.      }else{      
  315.        downrightRoom.innerHTML = "8";
  316.      }
  317.   }
  318. }
  319.  
  320.  
  321. function RoomExisitsAt(x,y){
  322.   if(x>-1 && y>-1){
  323.      if(roomInfo[x][y] !=null){  
  324.        return true;
  325.      }
  326.   }
  327.   return false;
  328. }
  329.  
  330. function AddItemToInventory(itemid){
  331.   var i;
  332.   for (i = 0; i < 4; i++) {
  333.       if(inventory[i]==0){
  334.         inventory[i]=itemid;
  335.         return true;
  336.       }
  337.   }
  338.   return false; // full inventory
  339. }
  340. function RemoveItemFromInventory(itemid){
  341.   var i;
  342.   for (i = 0; i < 4; i++) {
  343.       if(inventory[i]==itemid){
  344.         inventory[i]=0;
  345.       }
  346.   }
  347. }
  348.  
  349.  
  350. function UseItem(itemid){
  351.   let lookWindow = document.getElementById("lookWindow");
  352.   lookWindow.style.visibility = "visible";  
  353.   let lookText = document.getElementById("lookText");  
  354.   if(itemid==1 && playerX == 2 && playerY == 1){    //using silver key to unlock office
  355.     lookText.innerHTML = "I unlock the office.";    
  356.     isroomAccessable[3][1] = true;
  357.     RemoveItemFromInventory(1);
  358.   }
  359.   else if(itemid==2 && playerX == 2 && playerY == 3){
  360.     lookText.innerHTML = "I unlock the front door.";    
  361.     isroomAccessable[2][4] = true;
  362.     RemoveItemFromInventory(2);
  363.   }
  364.   else if(itemid==3 && playerX == 3 && playerY == 4){    
  365.     lookText.innerHTML = "I give the fish to the cat. It takes it in its mouth and saunters off into the darkness";        
  366.     roomLookDesc[3][4] = "The street grows darker as i follow it. Out of the darkness rolls a ball of twine.";
  367.     RoomAction[3][4] = "I take the ball of twine.";      
  368.     progressionVars[3] = true;
  369.     RemoveItemFromInventory(3);
  370.   }
  371.   else if(itemid==4 && playerX == 0 && playerY == 0){
  372.     lookText.innerHTML = "I place the wick in the lantern and take it";  
  373.     RemoveItemFromInventory(4);
  374.     AddItemToInventory(5);
  375.   }
  376.   else if(itemid==5 && playerX == 1 && playerY == 3){
  377.     lookText.innerHTML = "I take a match from the kitchen and light the lantern.";
  378.     RemoveItemFromInventory(5);
  379.     AddItemToInventory(6);    
  380.   }
  381.   else if(itemid==6 && playerX == 4 && playerY == 4){
  382.     lookText.innerHTML = "I hold the lantern and peer into the darkness.";
  383.     isroomAccessable[4][3] = true;
  384.   }
  385.   else{    
  386.     lookText.innerHTML = "Nothing happens.";
  387.   }
  388.   UpdateWorld();
  389. }
Advertisement
Add Comment
Please, Sign In to add comment