Advertisement
Guest User

Untitled

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