Showing
1 changed file
with
81 additions
and
66 deletions
| ... | @@ -12,8 +12,14 @@ module.exports = { | ... | @@ -12,8 +12,14 @@ module.exports = { |
| 12 | var isMaintainence = false; | 12 | var isMaintainence = false; |
| 13 | await axios.get("https://lostark.game.onstove.com").then(html=>{ | 13 | await axios.get("https://lostark.game.onstove.com").then(html=>{ |
| 14 | const $ = cheerio.load(html.data); | 14 | const $ = cheerio.load(html.data); |
| 15 | + textMaintainence = $("div.time_wraper").find("h3").text(); | ||
| 16 | + timeMaintainence = $("strong#inspectionTime").text(); | ||
| 17 | + console.log(timeMaintainence); | ||
| 18 | + if(textMaintainence == "예상 점검 완료 시간") | ||
| 19 | + isMaintainence = true; | ||
| 15 | }) | 20 | }) |
| 16 | - const buttonsRow = new MessageActionRow() | 21 | + if(!isMaintainence){ |
| 22 | + const buttonsRow = new MessageActionRow() | ||
| 17 | .addComponents( | 23 | .addComponents( |
| 18 | new MessageButton() | 24 | new MessageButton() |
| 19 | .setCustomId("12time_ago") | 25 | .setCustomId("12time_ago") |
| ... | @@ -32,72 +38,81 @@ module.exports = { | ... | @@ -32,72 +38,81 @@ module.exports = { |
| 32 | .setLabel("현재 마리샵 정보 조회") | 38 | .setLabel("현재 마리샵 정보 조회") |
| 33 | .setStyle("SECONDARY") | 39 | .setStyle("SECONDARY") |
| 34 | ); | 40 | ); |
| 35 | - async function getHTML() { | ||
| 36 | - try { | ||
| 37 | - return await axios.get("https://lostark.game.onstove.com/Shop#mari"); | ||
| 38 | - } catch (error) { | ||
| 39 | - console.error(error); | ||
| 40 | - } | ||
| 41 | - }; | ||
| 42 | - await getHTML().then(html => { | ||
| 43 | - const $ = cheerio.load(html.data); | ||
| 44 | - const bodyList = $("ul.list-items").children("li"); | ||
| 45 | - bodyList.each(function(i, elem) { | ||
| 46 | - itemInfo[i] = { | ||
| 47 | - name: $(this).find("span.item-name").text(), | ||
| 48 | - amount: $(this).find("span.amount").text()}; | ||
| 49 | - }); | ||
| 50 | - return itemInfo; | ||
| 51 | - }); | ||
| 52 | - | ||
| 53 | - const embed = new MessageEmbed() | ||
| 54 | - .setTitle("마리샵 성장 추천 목록") | ||
| 55 | - .setColor("#FAA8F0") | ||
| 56 | - .setDescription("성장 추천"); | ||
| 57 | - for(idx = 0; idx < 6; idx++) { | ||
| 58 | - embed.addField(`${(itemInfo[idx]).name}`, `${(itemInfo[idx]).amount}<:bluecrystal:952747773097295932>`, true); } | ||
| 59 | - embed.addField("\u200B", "전투ㆍ생활 추천", false); | ||
| 60 | - for(idx = 18; idx < 24; idx++) { | ||
| 61 | - embed.addField(`${(itemInfo[idx]).name}`, `${(itemInfo[idx]).amount}<:bluecrystal:952747773097295932>`, true); } | ||
| 62 | - interaction.reply({ embeds: [embed], components: [buttonsRow], allowedMentions: {repliedUser: false}}); | ||
| 63 | 41 | ||
| 64 | - const filter = (interaction) => { return interaction.customId === "12time_ago" || "6time_ago" || "0time_ago" ;}; | 42 | + async function getHTML() { |
| 65 | - const collector = interaction.channel.createMessageComponentCollector({ filter, time: 60000}); | 43 | + try { |
| 66 | - collector.on("collect", async (interaction) => { | 44 | + return await axios.get("https://lostark.game.onstove.com/Shop#mari"); |
| 67 | - if(interaction.customId === "12time_ago") { | 45 | + } catch (error) { |
| 68 | - const embed = new MessageEmbed() | 46 | + console.error(error); |
| 69 | - .setTitle("마리샵 성장 추천 목록") | ||
| 70 | - .setColor("#FAA8F0") | ||
| 71 | - .setDescription("성장 추천"); | ||
| 72 | - for(idx = 6; idx < 12; idx++) { | ||
| 73 | - embed.addField(`${(itemInfo[idx]).name}`, `${(itemInfo[idx]).amount}<:bluecrystal:952747773097295932>`, true); } | ||
| 74 | - embed.addField("\u200B", "전투ㆍ생활 추천", false); | ||
| 75 | - for(idx = 24; idx < 30; idx++) { | ||
| 76 | - embed.addField(`${(itemInfo[idx]).name}`, `${(itemInfo[idx]).amount}<:bluecrystal:952747773097295932>`, true); } | ||
| 77 | - interaction.update({ embeds: [embed], components: [buttonsRow], allowedMentions: {repliedUser: false}}); | ||
| 78 | - } else if(interaction.customId === "6time_ago"){ | ||
| 79 | - const embed = new MessageEmbed() | ||
| 80 | - .setTitle("마리샵 성장 추천 목록") | ||
| 81 | - .setColor("#FAA8F0") | ||
| 82 | - .setDescription("성장 추천"); | ||
| 83 | - for(idx = 12; idx < 18; idx++) { | ||
| 84 | - embed.addField(`${(itemInfo[idx]).name}`, `${(itemInfo[idx]).amount}<:bluecrystal:952747773097295932>`, true); } | ||
| 85 | - embed.addField("\u200B", "전투ㆍ생활 추천", false); | ||
| 86 | - for(idx = 30; idx < 36; idx++) { | ||
| 87 | - embed.addField(`${(itemInfo[idx]).name}`, `${(itemInfo[idx]).amount}<:bluecrystal:952747773097295932>`, true); } | ||
| 88 | - interaction.update({ embeds: [embed], components: [buttonsRow], allowedMentions: {repliedUser: false}}); | ||
| 89 | - } else if(interaction.customId === "0time_ago"){ | ||
| 90 | - const embed = new MessageEmbed() | ||
| 91 | - .setTitle("마리샵 성장 추천 목록") | ||
| 92 | - .setColor("#FAA8F0") | ||
| 93 | - .setDescription("성장 추천"); | ||
| 94 | - for(idx = 0; idx < 6; idx++) { | ||
| 95 | - embed.addField(`${(itemInfo[idx]).name}`, `${(itemInfo[idx]).amount}<:bluecrystal:952747773097295932>`, true); } | ||
| 96 | - embed.addField("\u200B", "전투ㆍ생활 추천", false); | ||
| 97 | - for(idx = 18; idx <24; idx++) { | ||
| 98 | - embed.addField(`${(itemInfo[idx]).name}`, `${(itemInfo[idx]).amount}<:bluecrystal:952747773097295932>`, true); } | ||
| 99 | - interaction.update({ embeds: [embed], components: [buttonsRow], allowedMentions: {repliedUser: false}}); | ||
| 100 | } | 47 | } |
| 101 | - }); | 48 | + }; |
| 49 | + await getHTML().then(html => { | ||
| 50 | + const $ = cheerio.load(html.data); | ||
| 51 | + const bodyList = $("ul.list-items").children("li"); | ||
| 52 | + bodyList.each(function(i, elem) { | ||
| 53 | + itemInfo[i] = { | ||
| 54 | + name: $(this).find("span.item-name").text(), | ||
| 55 | + amount: $(this).find("span.amount").text()}; | ||
| 56 | + }); | ||
| 57 | + return itemInfo; | ||
| 58 | + }); | ||
| 59 | + | ||
| 60 | + const embed = new MessageEmbed() | ||
| 61 | + .setTitle("마리샵 성장 추천 목록") | ||
| 62 | + .setColor("#FAA8F0") | ||
| 63 | + .setDescription("성장 추천"); | ||
| 64 | + for(idx = 0; idx < 6; idx++) { | ||
| 65 | + embed.addField(`${(itemInfo[idx]).name}`, `${(itemInfo[idx]).amount}<:bluecrystal:952747773097295932>`, true); } | ||
| 66 | + embed.addField("\u200B", "전투ㆍ생활 추천", false); | ||
| 67 | + for(idx = 18; idx < 24; idx++) { | ||
| 68 | + embed.addField(`${(itemInfo[idx]).name}`, `${(itemInfo[idx]).amount}<:bluecrystal:952747773097295932>`, true); } | ||
| 69 | + interaction.reply({ embeds: [embed], components: [buttonsRow], allowedMentions: {repliedUser: false}}); | ||
| 70 | + | ||
| 71 | + const filter = (interaction) => { return interaction.customId === "12time_ago" || "6time_ago" || "0time_ago" ;}; | ||
| 72 | + const collector = interaction.channel.createMessageComponentCollector({ filter, time: 60000}); | ||
| 73 | + collector.on("collect", async (interaction) => { | ||
| 74 | + if(interaction.customId === "12time_ago") { | ||
| 75 | + const embed = new MessageEmbed() | ||
| 76 | + .setTitle("마리샵 성장 추천 목록") | ||
| 77 | + .setColor("#FAA8F0") | ||
| 78 | + .setDescription("성장 추천"); | ||
| 79 | + for(idx = 6; idx < 12; idx++) { | ||
| 80 | + embed.addField(`${(itemInfo[idx]).name}`, `${(itemInfo[idx]).amount}<:bluecrystal:952747773097295932>`, true); } | ||
| 81 | + embed.addField("\u200B", "전투ㆍ생활 추천", false); | ||
| 82 | + for(idx = 24; idx < 30; idx++) { | ||
| 83 | + embed.addField(`${(itemInfo[idx]).name}`, `${(itemInfo[idx]).amount}<:bluecrystal:952747773097295932>`, true); } | ||
| 84 | + interaction.update({ embeds: [embed], components: [buttonsRow], allowedMentions: {repliedUser: false}}); | ||
| 85 | + } else if(interaction.customId === "6time_ago"){ | ||
| 86 | + const embed = new MessageEmbed() | ||
| 87 | + .setTitle("마리샵 성장 추천 목록") | ||
| 88 | + .setColor("#FAA8F0") | ||
| 89 | + .setDescription("성장 추천"); | ||
| 90 | + for(idx = 12; idx < 18; idx++) { | ||
| 91 | + embed.addField(`${(itemInfo[idx]).name}`, `${(itemInfo[idx]).amount}<:bluecrystal:952747773097295932>`, true); } | ||
| 92 | + embed.addField("\u200B", "전투ㆍ생활 추천", false); | ||
| 93 | + for(idx = 30; idx < 36; idx++) { | ||
| 94 | + embed.addField(`${(itemInfo[idx]).name}`, `${(itemInfo[idx]).amount}<:bluecrystal:952747773097295932>`, true); } | ||
| 95 | + interaction.update({ embeds: [embed], components: [buttonsRow], allowedMentions: {repliedUser: false}}); | ||
| 96 | + } else if(interaction.customId === "0time_ago"){ | ||
| 97 | + const embed = new MessageEmbed() | ||
| 98 | + .setTitle("마리샵 성장 추천 목록") | ||
| 99 | + .setColor("#FAA8F0") | ||
| 100 | + .setDescription("성장 추천"); | ||
| 101 | + for(idx = 0; idx < 6; idx++) { | ||
| 102 | + embed.addField(`${(itemInfo[idx]).name}`, `${(itemInfo[idx]).amount}<:bluecrystal:952747773097295932>`, true); } | ||
| 103 | + embed.addField("\u200B", "전투ㆍ생활 추천", false); | ||
| 104 | + for(idx = 18; idx <24; idx++) { | ||
| 105 | + embed.addField(`${(itemInfo[idx]).name}`, `${(itemInfo[idx]).amount}<:bluecrystal:952747773097295932>`, true); } | ||
| 106 | + interaction.update({ embeds: [embed], components: [buttonsRow], allowedMentions: {repliedUser: false}}); | ||
| 107 | + } | ||
| 108 | + }); | ||
| 109 | + } | ||
| 110 | + else{ | ||
| 111 | + const embed = new MessageEmbed() | ||
| 112 | + .setTitle("현재 로스트아크가 점검중입니다.") | ||
| 113 | + .setColor("#FAA8F0") | ||
| 114 | + .setDescription(`예상 점검 시간: ${timeMaintainence}`); | ||
| 115 | + interaction.reply({ embeds: [embed], allowedMentions: {repliedUser: false} }); | ||
| 116 | + } | ||
| 102 | }, | 117 | }, |
| 103 | }; | 118 | }; |
| ... | \ No newline at end of file | ... | \ No newline at end of file | ... | ... |
-
Please register or login to post a comment