Advertisement
Guest User

Untitled

a guest
Nov 27th, 2016
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.32 KB | None | 0 0
  1. //the program cannot operate correctly because the canvas does not respond with the changed status of the player
  2. //this means that when you fire 3 bullets and click save, there is no way to transfer the current state of the player
  3. //because in canvas you only fill the text ->
  4. function attachEvents() {
  5. const appId = 'kid_Sk5kEu3bx/west/';
  6. const username = 'guest';
  7. const password = 'pass';
  8. const base64Auth = btoa(`${username}:${password}`);
  9. const authorizationHeader = {Authorization: `Basic ${base64Auth}`};
  10. const apiUrl = `https://baas.kinvey.com/appdata/`;
  11.  
  12. $(document).ready(function () {
  13. $("#addPlayer").on('click', addPlayer);
  14.  
  15. loadPlayers();
  16. });
  17.  
  18. function addPlayer() {
  19. let name = $("#addName").val();
  20. $.post({
  21. method: "POST",
  22. url: apiUrl + appId,
  23. data: {
  24. name: name,
  25. money: 500,
  26. bullets: 6
  27. },
  28. headers: authorizationHeader
  29. }).then(loadPlayers).catch(printError)
  30. }
  31.  
  32. function modifyPlayer(data) {
  33. let money = Number(data.data.money);
  34. let name = data.data.name;
  35. let id = data.data._id;
  36. let currBullets = Number(data.data.bullets);
  37.  
  38. if (data.data.reload == true) {
  39. money -= 60;
  40. currBullets = 6;
  41. }
  42. $('div[data-ID="' + id + '"] .name').text(name);
  43. $('div[data-ID="' + id + '"] .money').text(money);
  44. $('div[data-ID="' + id + '"] .bullets').text(currBullets);
  45. let currplayer = {
  46. name: name,
  47. money: money,
  48. bullets: currBullets
  49. }
  50.  
  51. reloadCanvas(currplayer);
  52. if (id) {
  53. $.ajax({
  54. method: "PUT",
  55. url: apiUrl + appId + `${id}`,
  56. data: {
  57. name: name,
  58. bullets: currBullets,
  59. money: money
  60. },
  61. headers: authorizationHeader
  62. }).then(loadPlayers).catch(printError)
  63. }
  64. }
  65.  
  66. function saveGame(data) {
  67. modifyPlayer(data);
  68. $("#canvas").hide();
  69. $("#save").hide();
  70. $("#reload").hide();
  71.  
  72. let canvas = document.getElementById("canvas");
  73. clearInterval(canvas.intervalId);
  74. }
  75.  
  76. function reloadCanvas(player) {
  77. let canvas = document.getElementById("canvas");
  78. clearInterval(canvas.intervalId);
  79. loadCanvas(player);
  80. }
  81.  
  82. function loadPlayers() {
  83. $.ajax({
  84. method: "GET",
  85. url: apiUrl + appId,
  86. headers: authorizationHeader
  87. }).then(displayPlayers).catch(printError)
  88. }
  89.  
  90. function displayPlayers(playerData) {
  91. $("#players").empty();
  92. for (let player of playerData) {
  93. let playerDiv = $("<div>").addClass("player").attr("data-id", `${player._id}`);
  94.  
  95. playerDiv.append(
  96. $("<div>").addClass("row")
  97. .append($("<label>").text("Name:"))
  98. .append($("<label>").addClass("name").text(player.name))
  99. )
  100. .append(
  101. $("<div>").addClass("row")
  102. .append($("<label>").text("Money:"))
  103. .append($("<label>").addClass("money").text(player.money))
  104. )
  105. .append(
  106. $("<div>").addClass("row")
  107. .append($("<label>").text("Bullets:"))
  108. .append($("<label>").addClass("bullets").text(player.bullets))
  109. )
  110. .append($("<button>").addClass("play").text("Play").on('click', {
  111. _id: player._id,
  112. name: player.name,
  113. money: Number(player.money),
  114. bullets: Number(player.bullets)
  115. }, playGame))
  116. .append($("<button>").addClass("delete").text("Delete").on('click', {_id: player._id}, deletePlayer));
  117. $("#players").append(playerDiv);
  118. }
  119. }
  120.  
  121. function playGame(data) {
  122. saveGame(data);
  123. $("#canvas").show();
  124. $("#save").show();
  125. $("#reload").show();
  126.  
  127. let money = Number(data.data.money);
  128. let name = data.data.name;
  129. let id = data.data._id;
  130. let currBullets = Number(data.data.bullets);
  131.  
  132. let player = {
  133. name: name,
  134. money: money,
  135. bullets: currBullets
  136. };
  137.  
  138. $("#reload").on('click', {
  139. money: money,
  140. name: name,
  141. bullets: currBullets,
  142. _id: id,
  143. reload: true
  144. }, modifyPlayer);
  145.  
  146. //here is the problem with saving the game for the money
  147. $("#save").on('click', {
  148. money: money,
  149. name: name,
  150. bullets: currBullets,
  151. _id: id,
  152. reload: false
  153. }, saveGame);
  154.  
  155. loadCanvas(player);
  156. }
  157.  
  158. function deletePlayer(data) {
  159. $.ajax({
  160. method: "DELETE",
  161. url: apiUrl + appId + `${data.data._id}`,
  162. headers: authorizationHeader
  163. }).then(loadPlayers).catch(printError)
  164. }
  165.  
  166. function printError(error) {
  167. console.log(error);
  168. }
  169. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement