Advertisement
Guest User

Untitled

a guest
Jul 17th, 2019
1,395
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.08 KB | None | 0 0
  1. const EGClient = require('epicgames-client').Client;
  2. const Fortnite = require('epicgames-fortnite-client');
  3. const fetch = require('node-fetch');
  4. const { ESubGame } = Fortnite;
  5.  
  6. let eg = new EGClient({
  7. email: 'nlminecraftplay@gmail.com',
  8. password: 'Testbot123'
  9. });
  10.  
  11. var cosmeticsUrl = 'https://api-public-service.battledash.co/fortnite/cosmetics/search?q=';
  12. var cosmetic;
  13. var cloneOutfit = false;
  14. var cloneEmote = false;
  15. // Client stuff and some vars---------------------------------------------------
  16.  
  17. eg.init().then(async (success) => {
  18.  
  19. if(!success)
  20. throw new Error('Cannot initialize EpicGames launcher.');
  21.  
  22. if(!await eg.login())
  23. throw new Error('Cannot login on EpicGames account.');
  24.  
  25. var clientMember;
  26. var clientJid = eg.account.jid;
  27. var clientId = eg.account.id;
  28. const fortnite = await eg.runGame(Fortnite);
  29. const br = await fortnite.runSubGame(ESubGame.BattleRoyale);
  30. // Standard needed stuff--------------------------------------------------------
  31.  
  32. fortnite.communicator.on('friend:request', async (request) => {
  33. request.accept();
  34. });
  35.  
  36. fortnite.communicator.on('party:invitation', async (invitation) => {
  37. await invitation.accept();
  38. activeParty = invitation.party;
  39. });
  40.  
  41. fortnite.communicator.on('party:member:joined', async (member) => {
  42. if (member.id === clientId) {
  43. clientMember = member;
  44. }
  45. });
  46.  
  47. fortnite.communicator.on('friend:message', async (data) => {
  48. var message = data.message.toLowerCase();
  49. var args = message.split(' ');
  50.  
  51. if (message === 'stop') {
  52. clientMember.clearEmote();
  53. }
  54. if (args[0] === 'clone') {
  55. if (args[1] === 'outfit') {
  56. if (cloneOutfit) {
  57. cloneOutfit = false;
  58. data.reply('Cloning Outfit is now OFF.')
  59. }
  60. else {
  61. cloneOutfit =
  62. true;
  63. data.reply('Cloning Outfit is now ON.')
  64. }
  65. } else if (args[1] === 'emote') {
  66. if (cloneEmote) {
  67. cloneEmote = false;
  68. data.reply('Cloning Emote is now OFF.')
  69. }
  70. else {
  71. cloneEmote = true;
  72. data.reply('Cloning Emote is now ON.')
  73. }
  74. }
  75. }
  76. else if (message.includes('cid_') || message.includes('eid_') || message.includes('bid_')) {
  77. clientMember.setOutfit(message, clientJid);
  78. } else {
  79. fetch(cosmeticsUrl + message)
  80. .then(res => res.json())
  81. .catch(function(err){
  82. console.log(err);
  83. data.reply('Please provide a legitimate cosmetic.');
  84. })
  85. .then(json => cosmetic = json)
  86. .then(function(){
  87. if (cosmetic.readableType === 'Outfit') {
  88. clientMember.setOutfit(cosmetic.id);
  89. } else if (cosmetic.readableType === 'Emote') {
  90. clientMember.setEmote(cosmetic.id);
  91. } else if (cosmetic.readableType === 'Back Bling') {
  92. clientMember.setBackpack(cosmetic.id);
  93. } else if (cosmetic.readableType === 'Harvesting Tool') {
  94. clientMember.setPickaxe(cosmetic.id);
  95. }
  96. });
  97. }
  98. });
  99.  
  100. fortnite.communicator.on('party:member:state:updated', async (update) => {
  101. console.log(update.id);
  102. console.log(clientId);
  103. if (update.id != clientId) {
  104. var loadout = JSON.parse(update.meta.schema.AthenaCosmeticLoadout_j);
  105. var emote = JSON.parse(update.meta.schema.FrontendEmote_j);
  106. if (cloneOutfit) {
  107. await clientMember.setOutfit(loadout.AthenaCosmeticLoadout.characterDef);
  108. await clientMember.setBackpack(loadout.AthenaCosmeticLoadout.backpackDef);
  109. await
  110. clientMember.setPickaxe(loadout.AthenaCosmeticLoadout.pickaxeDef);
  111. console.log(loadout);
  112. }
  113.  
  114. if (cloneEmote) {
  115. console.log(emote);
  116. clientMember.setEmote(emote.FrontendEmote.emoteItemDef);
  117. }
  118. }
  119. });
  120. console.log("Online!");
  121. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement