krustev_84

Untitled

Sep 7th, 2020
108
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.69 KB | None | 0 0
  1. function legendaryFarming(input) {
  2. let items = input.split(' ');
  3. let keyMaterials = {
  4. fragments: 0,
  5. shards: 0,
  6. motes: 0
  7. }
  8. let junk = {}
  9. let item;
  10. let winner = ''
  11.  
  12. for (let i = 0; i < items.length; i += 2) {
  13.  
  14. let quantity = Number(items[i]);
  15. item = items[i + 1].toLowerCase();
  16.  
  17. if (item === 'motes' || item === 'shards' || item === 'fragments') {
  18.  
  19. let oldQuantity = keyMaterials[item];
  20. oldQuantity += quantity;
  21. keyMaterials[item] = oldQuantity;
  22.  
  23. if (keyMaterials[item] >= 250) {
  24.  
  25. if (item === 'motes') {
  26. winner = 'Dragonwrath'
  27. } else if (item === 'shards') {
  28. winner = 'Shadowmourne'
  29. } else if (item === 'fragments') {
  30. winner = 'Valanyr'
  31. }
  32.  
  33. keyMaterials[item] -= 250;
  34. console.log(`${winner} obtained!`);
  35.  
  36. break;
  37. }
  38.  
  39. } else {
  40. if (!junk[item]) {
  41. junk[item] = quantity;
  42.  
  43. } else {
  44. let oldQuantity = junk[item];
  45. oldQuantity += quantity;
  46. junk[item] = oldQuantity
  47. }
  48.  
  49. }
  50. }
  51.  
  52. let sortedKeyMater = Object.entries(keyMaterials).sort((a, b) => {
  53. return b[1] - a[1] || a[0].localeCompare(b[0]);
  54. });
  55. sortedKeyMater.forEach(el => console.log(`${el[0]}: ${el[1]}`));
  56.  
  57.  
  58. let sortedJunks = Object.entries(junk).sort((a, b) => {
  59. return a[0].localeCompare(b[0])
  60. });
  61. sortedJunks.forEach(el => console.log(`${el[0]}: ${el[1]}`));
  62. }
Advertisement
Add Comment
Please, Sign In to add comment