gaber-elsayed

buy roles

Sep 9th, 2021
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.07 KB | None | 0 0
  1. const buy = JSON.parse(fs.readFileSync('./buy.json' , 'utf8'));
  2. client.on('message',message =>{
  3. if(message.content.startsWith(prefix + 'buy role')) {
  4. if(!buy[message.guild.id]) buy[message.guild.id] = {
  5. role:'null',
  6. price:'null',
  7. transfer:'null',
  8. onoff:'Off'
  9. };fs.writeFile("./buy.json",JSON.stringify(buy),(err)=>{if(err)console.error(err)})
  10. if(!message.member.hasPermission('MANAGE_GUILD')) return;
  11. let args = message.content.split(" ").slice(2).join(" ");
  12. if(!args) return message.channel.send(`🙄 Please Type the role Name/ID`);
  13. let role = message.guild.roles.find('name',args)||message.guild.roles.find('id',args);
  14. if(!role) return message.channel.send(`🙄 I Can't find this role`);
  15. buy[message.guild.id].role = role.id
  16. fs.writeFile("./buy.json", JSON.stringify(buy), (err) => {if (err) console.error(err)})
  17. message.channel.send(new Discord.RichEmbed()
  18. .setColor('#35393e').setFooter(message.author.tag,message.author.avatarURL).setTimestamp()
  19. .setAuthor('Change settings',message.guild.iconURL)
  20. .addField(`**Role Now**`,`**\`\`\`${role.name}\`\`\`**`,true)
  21. )
  22. }
  23. if(message.content.startsWith(prefix+'buy price')) {
  24. if(!message.member.hasPermission('MANAGE_GUILD')) return;
  25. if(!buy[message.guild.id]) buy[message.guild.id] = {
  26. role:'null',
  27. price:'null',
  28. transfer:'null',
  29. onoff:'Off'
  30. };fs.writeFile("./buy.json",JSON.stringify(buy),(err)=>{if(err)console.error(err)})
  31. let args = message.content.split(" ").slice(2).join(" ");
  32. if(!args) return message.channel.send(`🙄 Please Type the role Price`)
  33. if(isNaN(parseInt(args))) return message.channel.send(`🙄 The price is wrong!`)
  34. if(parseInt(args)<0) return message.channel.send(`🙄 The price is wrong!`)
  35. buy[message.guild.id].price = args
  36. fs.writeFile("./buy.json", JSON.stringify(buy),(err)=>{if(err)console.error(err)})
  37. message.channel.send(new Discord.RichEmbed()
  38. .setColor('#36393e').setFooter(message.author.tag,message.author.avatarURL).setTimestamp()
  39. .setAuthor('Change settings',message.guild.iconURL)
  40. .addField(`**Role Price Now**`,`**\`\`\`${args}$\`\`\`**`,true)
  41. )
  42. }
  43. if(message.content.startsWith(prefix+'buy tran')) {
  44. if(!message.member.hasPermission('MANAGE_GUILD')) return;
  45. if(!buy[message.guild.id]) buy[message.guild.id] = {
  46. role:'null',
  47. price:'null',
  48. transfer:'null',
  49. onoff:'Off'
  50. };fs.writeFile("./buy.json",JSON.stringify(buy),(err)=>{if(err)console.error(err)})
  51. let user = message.mentions.members.first() || message.guild.members.get(message.content.split(" ")[2])
  52. buy[message.guild.id].transfer = user.id
  53. fs.writeFile("./buy.json", JSON.stringify(buy), (err) => {if (err) console.error(err)})
  54. message.channel.send(new Discord.RichEmbed()
  55. .setColor('#36393e').setFooter(message.author.tag,message.author.avatarURL).setTimestamp()
  56. .setAuthor('Change settings',message.guild.iconURL)
  57. .addField(`**Trans To**`,`**${user}**`,true)
  58. )
  59. }
  60. if(message.content.startsWith(prefix+'buy on')) {
  61. if(!message.member.hasPermission('MANAGE_GUILD')) return;
  62. if(!buy[message.guild.id]) buy[message.guild.id] = {
  63. role:'null',
  64. price:'null',
  65. transfer:'null',
  66. onoff:'Off'
  67. };fs.writeFile("./buy.json",JSON.stringify(buy),(err)=>{if(err)console.error(err)})
  68. buy[message.guild.id].onoff = 'On'
  69. fs.writeFile("./buy.json", JSON.stringify(buy), (err) => {if (err) console.error(err)})
  70. let on1 = new Discord.RichEmbed()
  71. .setColor('#36393e')
  72. .setDescription(`**\`\`\`The BuyRole Has Been Enabled\`\`\`**`)
  73. message.channel.send(on1)
  74. }
  75. if(message.content.startsWith(prefix+'buy off')) {
  76. if(!message.member.hasPermission('MANAGE_GUILD')) return;
  77. if(!buy[message.guild.id]) buy[message.guild.id] = {
  78. role:'null',
  79. price:'null',
  80. transfer:'null',
  81. onoff:'Off'
  82. };fs.writeFile("./buy.json",JSON.stringify(buy),(err)=>{if(err)console.error(err)})
  83. buy[message.guild.id].onoff = 'Off'
  84. fs.writeFile("./buy.json", JSON.stringify(buy), (err) => {if (err) console.error(err)})
  85. let off1 = new Discord.RichEmbed()
  86. .setColor('#36393e')
  87. .setDescription(`**\`\`\`The BuyRole has been disabled\`\`\`**`)
  88. message.channel.send(off1)
  89. }
  90. if(message == prefix + 'buy VIP') {
  91. if(!buy[message.guild.id]) buy[message.guild.id] = {
  92. role:'null',
  93. price:'null',
  94. transfer:'null',
  95. onoff:'Off'
  96. };fs.writeFile("./buy.json",JSON.stringify(buy),(err)=>{if(err)console.error(err)})
  97. let pp = buy[message.guild.id].price
  98. let brole = message.guild.roles.find('id',buy[message.guild.id].role)
  99. let btrans = buy[message.guild.id].transfer
  100. if(!brole) return message.channel.send(`🙁 Please setup the command again`)
  101. if(!message.guild.members.find('id',buy[message.guild.id].transfer))return message.channel.send(`🙁 Please setup the command again`)
  102. if(buy[message.guild.id].onoff === 'Off') return message.channel.send(`🙁 - the command has been disabled\nplease type __${prefix}buy on__ to turn it on`)
  103. if(message.author.id === buy[message.guild.id].transfer) return message.channel.send(`you can't buy a rank because you can't transfer credits to your self 🤗`)
  104. if(message.member.roles.find(r=>r.id == buy[message.guild.id].role)) return message.reply(`**You already have the rank \`${brole.name}\` ✅**`);
  105. message.channel.send(new Discord.RichEmbed()
  106. .setColor('#36393e')
  107. .addField(`**Command:**`, `**\`#credits ${message.guild.members.get(buy[message.guild.id].transfer)} ${buy[message.guild.id].price}\`**`)).then(msgs=>{
  108. let lPrice = Math.floor(pp-(pp*(5/100)));
  109. let filter = response => response.author.id == "282859044593598464" && response.mentions._content.includes(`:moneybag: | ${message.author.username}, has transferred \`$${lPrice}\` to <@${buy[message.guild.id].transfer}>`);
  110. message.channel.awaitMessages(filter, { maxMatches: 1, time: 240000, errors: ['time'] })
  111. .then( collected =>{
  112. let log = message.guild.channels.find("name", `❖・log・vip`);
  113. let gg = new Discord.RichEmbed()
  114. .setColor('#36393e')
  115. .setThumbnail(`https://cdn.discordapp.com/attachments/584630360017469461/588151955063570433/582096911448801288.png`)
  116. .setAuthor(`New purchase`,`https://cdn.discordapp.com/attachments/584630360017469461/584687464334098432/581239984376381455.gif`)
  117. .addField(`**User :**`,`\`\`\`${message.author.username}\`\`\``,true)
  118. .addField(`**Role :**`,`\`\`\`${brole.name}\`\`\``,true)
  119. .addField(`**💰 Rank Price :**`,`\`\`\`${buy[message.guild.id].price}$\`\`\``,true)
  120. .addField(`**💳 Transferd To :**`,`<@${buy[message.guild.id].transfer}>`,true)
  121. .setTimestamp();
  122. if(log) log.send(gg)
  123. const done = new Discord.RichEmbed()
  124. .setColor('#36393e')
  125. .setDescription(`**\`\`\`Done Buy Role ${brole.name}\`\`\`**`)
  126. .setTimestamp();
  127. message.member.addRole(brole)
  128. message.channel.send(done);
  129. var mmm = setTimeout(() => {
  130. message.member.removeRole(brole)
  131. }, 2592000000)
  132. message.author.send(new Discord.RichEmbed()
  133. .setColor("#36393e")
  134. .setTitle('Role VIP')
  135. .setDescription(`\`\`\`RANK NAME: ${brole.name} RANK PRICE: ${buy[message.guild.id].price}$ \`\`\``)
  136. .setFooter(message.guild.name,message.guild.iconURL))
  137. })
  138. })
  139. }
  140. });
Advertisement
Add Comment
Please, Sign In to add comment