Showing
4 changed files
with
303 additions
and
257 deletions
... | @@ -8,7 +8,7 @@ app.set('view engine', 'ejs'); | ... | @@ -8,7 +8,7 @@ app.set('view engine', 'ejs'); |
8 | app.engine('html', require('ejs').renderFile); | 8 | app.engine('html', require('ejs').renderFile); |
9 | 9 | ||
10 | var server = app.listen(3000, function(){ | 10 | var server = app.listen(3000, function(){ |
11 | - console.log('good'); | 11 | + console.log('Success'); |
12 | }); | 12 | }); |
13 | 13 | ||
14 | -app.use(express.static('public')); | 14 | +app.use(express.static('public')); |
... | \ No newline at end of file | ... | \ No newline at end of file | ... | ... |
1 | -module.exports = function(app){ | 1 | +function func(info_match, championId, win, kills, deaths, assists, num) { |
2 | - | 2 | + for (var i = 0; i < 10; i++) { |
3 | -var request = require("request"); | 3 | + if (info_match["participants"][i]["championId"] == championId[num]) { |
4 | -var urlenconde = require('urlencode'); | 4 | + win[num] = info_match["participants"][i]["stats"]["win"]; |
5 | -var apikey = "RGAPI-3b791531-e731-4349-bab0-53068a86608c"//api | 5 | + kills[num] = info_match["participants"][i]["stats"]["kills"]; |
6 | - | 6 | + deaths[num] = info_match["participants"][i]["stats"]["deaths"]; |
7 | -var profileIconId; //아이콘 번호 | 7 | + assists[num] = info_match["participants"][i]["stats"]["assists"]; |
8 | -var revisionDate; //수정날짜 | ||
9 | -var id; //소환사ID | ||
10 | -var accountId; //계정Id | ||
11 | -var name; //소환사 이름 | ||
12 | -var summonerLevel; //소환사 | ||
13 | -var rotation_champ = new Array(); | ||
14 | - | ||
15 | - app.get('/', function(req, res) { | ||
16 | - res.render('main', { title: 'LOL Helper' }); | ||
17 | - }); | ||
18 | - | ||
19 | - app.get('/search/:username/', function(req, res, next){ | ||
20 | - //롤 api url | ||
21 | - name = req.params.username; | ||
22 | - var nameUrl = "https://kr.api.riotgames.com/lol/summoner/v4/summoners/by-name/" + urlenconde(name)+"?api_key="+ apikey; | ||
23 | - request(nameUrl,function(error,response,body){ | ||
24 | - | ||
25 | - // 요청에 대한 응답이 성공적으로 왔는지 검사. | ||
26 | - // status code가 200이 아니면 오류가 있었던 것으로 간주하고 함수 종료. | ||
27 | - console.log('response code ', response.statusCode); | ||
28 | - if (response.statusCode != 200) { | ||
29 | - console.log('Error with response code22 ', response.statusCode); | ||
30 | - res.end(); | ||
31 | - return; | ||
32 | } | 8 | } |
9 | + } | ||
10 | +} | ||
33 | 11 | ||
34 | - var info_summoner_json = JSON.parse(body); | 12 | +module.exports = function(app) { |
35 | 13 | ||
36 | - accountId = info_summoner_json["accountId"]; | 14 | + var request = require("request"); |
37 | - id = info_summoner_json["id"]; | 15 | + var urlenconde = require('urlencode'); |
38 | - summoner = info_summoner_json["name"]; | 16 | + var apikey = "RGAPI-a0598a8a-a326-4c0d-a115-3f0ae332e86f"; //api |
39 | - profileIconId = info_summoner_json["profileIconId"]; | ||
40 | - summonerLevel = info_summoner_json["summonerLevel"]; | ||
41 | - revisionDate = info_summoner_json["revisionDate"]; | ||
42 | 17 | ||
43 | - var champUrl = "https://kr.api.riotgames.com/lol/champion-mastery/v4/champion-masteries/by-summoner/" + urlenconde(id) + "?api_key=" + apikey; | 18 | + var profileIconId; //아이콘 번호 |
44 | - request(champUrl,function(error,response,body){ | 19 | + var revisionDate; //수정날짜 |
45 | - var info_champ_json = JSON.parse(body); | 20 | + var id; //소환사ID |
46 | - var champ_point = new Array(); | 21 | + var accountId; //계정Id |
47 | - var champ_id = new Array(); | 22 | + var name; //소환사 이름 |
48 | - var champ_name = new Array(); | 23 | + var summonerLevel; //소환사 |
49 | - var rotation_name = new Array(); | 24 | + var rotation_champ = new Array(); |
50 | - var champ_pic = new Array(); | ||
51 | - var rotation_pic =new Array(); | ||
52 | - var champions_length = Object.keys(info_champ_json).length; | ||
53 | 25 | ||
54 | - //console.log("\n\ninfo_champ_json\n\n", info_champ_json); | 26 | + app.get('/', function(req, res) { |
27 | + res.render('main', { title: 'LOL Helper' }); | ||
28 | + }); | ||
55 | 29 | ||
56 | - // status code가 200이 아니면 종료. | 30 | + app.get('/search/:username/', function(req, res, next) { |
57 | - if (info_champ_json["status"] != undefined) { | 31 | + //롤 api url |
58 | - if (info_champ_json["status"]["status_code"] != 200) { | 32 | + name = req.params.username; |
59 | - console.log('Error with response code11 ', info_champ_json["status"]["status_code"]); | 33 | + var nameUrl = "https://kr.api.riotgames.com/lol/summoner/v4/summoners/by-name/" + urlenconde(name) + "?api_key=" + apikey; |
34 | + request(nameUrl, function(error, response, body) { | ||
35 | + // 요청에 대한 응답이 성공적으로 왔는지 검사. | ||
36 | + // status code가 200이 아니면 오류가 있었던 것으로 간주하고 함수 종료. | ||
37 | + console.log('response code ', response.statusCode); | ||
38 | + if (response.statusCode != 200) { | ||
39 | + console.log('Error with response code22 ', response.statusCode); | ||
60 | res.end(); | 40 | res.end(); |
61 | return; | 41 | return; |
62 | } | 42 | } |
63 | - } | ||
64 | - | ||
65 | - for(var i=0; i < champions_length; i++){ | ||
66 | - champ_point[i] = (info_champ_json[i]["championPoints"]); | ||
67 | - champ_id[i] = info_champ_json[i]["championId"]; | ||
68 | - | ||
69 | - } | ||
70 | - var rotationUrl = "https://kr.api.riotgames.com/lol/platform/v3/champion-rotations?api_key="+apikey; | ||
71 | - request(rotationUrl,function(error,response,body){ | ||
72 | - var info_rotation = JSON.parse(body); | ||
73 | - var keys = Object.keys(info_rotation); | ||
74 | - for(var k =0; k < info_rotation[keys[0]].length;k++) | ||
75 | - { | ||
76 | - rotation_champ[k] =info_rotation[keys[0]][k] | ||
77 | - console.log("rotation_champ:"+rotation_champ[k]); | ||
78 | - console.log("로테길이:"+rotation_champ.length); | ||
79 | - } | ||
80 | - | ||
81 | - | ||
82 | - | ||
83 | - | ||
84 | - | ||
85 | - var staticUrl = "http://ddragon.leagueoflegends.com/cdn/9.23.1/data/en_US/champion.json"; | ||
86 | - request(staticUrl,function(error,response,body){ | ||
87 | - var info_static_champ_json = JSON.parse(body); | ||
88 | - var champion = info_static_champ_json["data"]; | ||
89 | - for(var i=0; i < champ_id.length; i++){ | ||
90 | - for(js in champion){ | ||
91 | - for(j in champion[js]){ | ||
92 | - if(champion[js]["key"] == champ_id[i]){ | ||
93 | - champ_name[i] = champion[js]["id"]; | ||
94 | - champ_pic[i] = "http://ddragon.leagueoflegends.com/cdn/9.23.1/img/champion/" + champ_name[i] + ".png"; | ||
95 | - | ||
96 | - } | ||
97 | - } | ||
98 | - } | ||
99 | - } | ||
100 | - for(var i=0; i < champ_id.length; i++){ | ||
101 | - for(js in champion){ | ||
102 | - for(j in champion[js]){ | ||
103 | - if(champion[js]["key"] == rotation_champ[i]){ | ||
104 | - rotation_name[i] = champion[js]["id"]; | ||
105 | - rotation_pic[i] = "http://ddragon.leagueoflegends.com/cdn/9.23.1/img/champion/"+rotation_name[i]+".png"; | ||
106 | - | ||
107 | - } | ||
108 | - } | ||
109 | - } | ||
110 | - } | ||
111 | - | ||
112 | - console.log("챔프길이:"+champ_pic.length); | ||
113 | - | ||
114 | - var userLeagueUrl = "https://kr.api.riotgames.com/lol/league/v4/entries/by-summoner/"+ urlenconde(id)+"?api_key=" + apikey; | ||
115 | - request(userLeagueUrl,function(error,response,body){ | ||
116 | - var info_user_league_json = JSON.parse(body); | ||
117 | - //console.log("userLeagueUrl:", userLeagueUrl); | ||
118 | - if(info_user_league_json[0] != null){ | ||
119 | - var leagueId = info_user_league_json[0]["leagueId"]; | ||
120 | - var wins = info_user_league_json[0]["wins"]; | ||
121 | - var losses = info_user_league_json[0]["losses"]; | ||
122 | - var leagueName = info_user_league_json[0]["leagueName"] | ||
123 | - var tier = info_user_league_json[0]["tier"]; | ||
124 | - var rank = info_user_league_json[0]["rank"]; | ||
125 | - var leaguePoints = info_user_league_json[0]["leaguePoints"]; | ||
126 | - var img_tier; | ||
127 | - if(tier == "MASTER"){ | ||
128 | - img_tier = "https://i.imgur.com/nvQjonh.png"; | ||
129 | - }else if(tier == "CHALLENGER"){ | ||
130 | - img_tier = "https://i.imgur.com/sbK1Edj.png"; | ||
131 | - }else if(tier == "DIAMOND"){ | ||
132 | - img_tier = "https://i.imgur.com/5VBu8PF.png" | ||
133 | - }else if(tier == "PLATINUM"){ | ||
134 | - img_tier = "https://i.imgur.com/Eqi6858.png" | ||
135 | - }else if(tier == "GRANDMASTER"){ | ||
136 | - img_tier = "https://i.imgur.com/mcEhz1o.png" | ||
137 | - }else if(tier == "GOLD"){ | ||
138 | - img_tier = "https://i.imgur.com/Ec4hPuO.png" | ||
139 | - }else if(tier == "SILVER"){ | ||
140 | - img_tier = "https://i.imgur.com/GKnPu7s.png" | ||
141 | - }else if(tier == "BRONZE"){ | ||
142 | - img_tier ="https://i.imgur.com/TPZVXIr.png" | ||
143 | - }else{ | ||
144 | - img_tier = "https://i.imgur.com/kcdoC4r.png" | ||
145 | - } | ||
146 | -} | ||
147 | - var matchListUrl = "https://kr.api.riotgames.com/lol/match/v4/matchlists/by-account/" + urlenconde(accountId) + "?api_key=" + apikey; | ||
148 | - request(matchListUrl, function(error, response, body){ | ||
149 | - var info_matchList = JSON.parse(body); | ||
150 | - var championId = new Array(); | ||
151 | - var picture = new Array(); | ||
152 | - if(info_matchList["matches"] != null){ | ||
153 | - var gameId = info_matchList["matches"][0]["gameId"]; | ||
154 | - for(var num = 0; num < 10; num++){ | ||
155 | - championId[num] = info_matchList["matches"][num]["champion"]; | ||
156 | - for (var i = 0; i < champ_id.length; i++) { | ||
157 | - for (j in champion) { | ||
158 | - if (champion[j]["key"] == championId[num]) { | ||
159 | - picture[num] = "http://ddragon.leagueoflegends.com/cdn/9.23.1/img/champion/" + champion[j]["id"] + ".png"; | ||
160 | - } | ||
161 | - } | ||
162 | - } | ||
163 | - } | ||
164 | - } | ||
165 | 43 | ||
166 | - var matchUrl = "https://kr.api.riotgames.com/lol/match/v4/matches/" + urlenconde(gameId) + "?api_key=" + apikey; | 44 | + var info_summoner_json = JSON.parse(body); |
167 | - request(matchUrl, function(error, response, body){ | ||
168 | - var info_match = JSON.parse(body); | ||
169 | - if(info_match["teams"] != null){ | ||
170 | - for (var i = 0; i < 10; i++){ | ||
171 | - if(info_match["participants"][i]["championId"] == championId[0]){ | ||
172 | - var win = info_match["participants"][i]["stats"]["win"]; | ||
173 | - var kills = info_match["participants"][i]["stats"]["kills"]; | ||
174 | - var deaths = info_match["participants"][i]["stats"]["deaths"]; | ||
175 | - var assists = info_match["participants"][i]["stats"]["assists"]; | ||
176 | - } | ||
177 | - } | ||
178 | - } | ||
179 | - champ_name[champ_name.length] = "total"; | ||
180 | - var temp_id; | ||
181 | - var temp_name; | ||
182 | - var temp_point; | ||
183 | - var temp_pic; | ||
184 | - for(var i=0; i < champ_id.length-1; i++){ | ||
185 | - for(var j=i+1;j <champ_id.length-1; j++) | ||
186 | - if(champ_point[i] > champ_point[j]){ | ||
187 | - temp_id = champ_id[i]; | ||
188 | - temp_name = champ_name[i]; | ||
189 | - temp_point = champ_point[i]; | ||
190 | - temp_pic = champ_pic[i]; | ||
191 | - champ_id[i] = champ_id[j] | ||
192 | - champ_name[i] = champ_name[j]; | ||
193 | - champ_point[i] = champ_point[j]; | ||
194 | - champ_pic[i] = champ_pic[j]; | ||
195 | - champ_id[j] = temp_id | ||
196 | - champ_name[j] = temp_name; | ||
197 | - champ_point[j] = temp_point; | ||
198 | - champ_pic[j] = temp_pic; | ||
199 | - } | ||
200 | - } | ||
201 | - const defaultMMR = [ | ||
202 | - {"mmr" : 900, "tier" : "iron", "rank": 4}, | ||
203 | - {"mmr" : 950, "tier" : "iron", "rank": 3}, | ||
204 | - {"mmr" : 1000, "tier" : "iron", "rank": 2}, | ||
205 | - {"mmr" : 1050, "tier" : "iron", "rank": 1}, | ||
206 | - { "mmr" : 1100, "tier" : "bronze", "rank": 4 }, | ||
207 | - { "mmr" : 1150, "tier" : "bronze", "rank": 3 }, | ||
208 | - { "mmr" : 1200, "tier" : "bronze", "rank": 2 }, | ||
209 | - { "mmr" : 1250, "tier" : "bronze", "rank": 1 }, | ||
210 | - { "mmr" : 1300, "tier" : "silver", "rank": 4 }, | ||
211 | - { "mmr" : 1350, "tier" : "silver", "rank": 3 }, | ||
212 | - { "mmr" : 1400, "tier" : "silver", "rank": 2 }, | ||
213 | - { "mmr" : 1450, "tier" : "silver", "rank": 1 }, | ||
214 | - { "mmr" : 1500, "tier" : "gold", "rank": 4 }, | ||
215 | - { "mmr" : 1550, "tier" : "gold", "rank": 3 }, | ||
216 | - { "mmr" : 1600, "tier" : "gold", "rank": 2 }, | ||
217 | - { "mmr" : 1650, "tier" : "gold", "rank": 1 }, | ||
218 | - { "mmr" : 1700, "tier" : "platinum", "rank": 4 }, | ||
219 | - { "mmr" : 1750, "tier" : "platinum", "rank": 3 }, | ||
220 | - { "mmr" : 1800, "tier" : "platinum", "rank": 2 }, | ||
221 | - { "mmr" : 1850, "tier" : "platinum", "rank": 1 }, | ||
222 | - { "mmr" : 1900, "tier" : "diamond", "rank": 4 }, | ||
223 | - { "mmr" : 1950, "tier" : "diamond", "rank": 3 }, | ||
224 | - { "mmr" : 2000, "tier" : "diamond", "rank": 2 }, | ||
225 | - { "mmr" : 2050, "tier" : "diamond", "rank": 1 }, | ||
226 | - { "mmr" : 2100, "tier" : "master", "rank": 1 }, | ||
227 | - { "mmr" : 2700, "tier" : "challenger", "rank": 1 }, | ||
228 | - ] | ||
229 | 45 | ||
46 | + accountId = info_summoner_json["accountId"]; | ||
47 | + id = info_summoner_json["id"]; | ||
48 | + summoner = info_summoner_json["name"]; | ||
49 | + profileIconId = info_summoner_json["profileIconId"]; | ||
50 | + summonerLevel = info_summoner_json["summonerLevel"]; | ||
51 | + revisionDate = info_summoner_json["revisionDate"]; | ||
230 | 52 | ||
53 | + var champUrl = "https://kr.api.riotgames.com/lol/champion-mastery/v4/champion-masteries/by-summoner/" + urlenconde(id) + "?api_key=" + apikey; | ||
54 | + request(champUrl, function(error, response, body){ | ||
55 | + var info_champ_json = JSON.parse(body); | ||
56 | + var champ_point = new Array(); | ||
57 | + var champ_id = new Array(); | ||
58 | + var champ_name = new Array(); | ||
59 | + var rotation_name = new Array(); | ||
60 | + var champ_pic = new Array(); | ||
61 | + var rotation_pic = new Array(); | ||
62 | + var champions_length = Object.keys(info_champ_json).length; | ||
63 | + //console.log("\n\ninfo_champ_json\n\n", info_champ_json); | ||
64 | + // status code가 200이 아니면 종료. | ||
65 | + if (info_champ_json["status"] != undefined) { | ||
66 | + if (info_champ_json["status"]["status_code"] != 200) { | ||
67 | + console.log('Error with response code11 ', info_champ_json["status"]["status_code"]); | ||
68 | + res.end(); | ||
69 | + return; | ||
70 | + } | ||
71 | + } | ||
231 | 72 | ||
232 | - res.render('index', { title: req.params.username , | 73 | + for (var i = 0; i < champions_length; i++) { |
233 | - c_id: champ_id, | 74 | + champ_point[i] = (info_champ_json[i]["championPoints"]); |
234 | - c_name: champ_name, | 75 | + champ_id[i] = info_champ_json[i]["championId"]; |
235 | - c_point: champ_point, | 76 | + } |
236 | - c_pic: champ_pic, | 77 | + var rotationUrl = "https://kr.api.riotgames.com/lol/platform/v3/champion-rotations?api_key=" + apikey; |
237 | - c_rotation : rotation_pic, | 78 | + request(rotationUrl, function(error, response, body) { |
238 | - c_summoner: summoner, | 79 | + var info_rotation = JSON.parse(body); |
239 | - c_wins: wins, | 80 | + var keys = Object.keys(info_rotation); |
240 | - c_losses: losses, | 81 | + for (var k = 0; k < info_rotation[keys[0]].length; k++) { |
241 | - c_tier: tier, | 82 | + rotation_champ[k] = info_rotation[keys[0]][k]; |
242 | - c_imgtier: img_tier, | 83 | + } |
243 | - c_rank: rank, | 84 | + var staticUrl = "http://ddragon.leagueoflegends.com/cdn/9.23.1/data/en_US/champion.json"; |
244 | - c_leaguePoint: leaguePoints, | 85 | + request(staticUrl, function(error, response, body) { |
245 | - c_gameId : gameId, | 86 | + var info_static_champ_json = JSON.parse(body); |
246 | - c_championId : championId, | 87 | + var champion = info_static_champ_json["data"]; |
247 | - c_win : win, | 88 | + for (var i = 0; i < champ_id.length; i++) { |
248 | - c_kills : kills, | 89 | + for (js in champion) { |
249 | - c_deaths : deaths, | 90 | + for (j in champion[js]) { |
250 | - c_assists : assists, | 91 | + if (champion[js]["key"] == champ_id[i]) { |
251 | - c_picture : picture | 92 | + champ_name[i] = champion[js]["id"]; |
252 | - }); | 93 | + champ_pic[i] = "http://ddragon.leagueoflegends.com/cdn/9.23.1/img/champion/" + champ_name[i] + ".png"; |
253 | - }); | 94 | + } |
254 | - }); | 95 | + } |
255 | - }); | 96 | + } |
256 | - }); | 97 | + } |
257 | - }); | 98 | + for (var i = 0; i < champ_id.length; i++) { |
258 | - }); | 99 | + for (js in champion) { |
259 | - }); | 100 | + for (j in champion[js]) { |
260 | - }); | 101 | + if (champion[js]["key"] == rotation_champ[i]) { |
102 | + rotation_name[i] = champion[js]["id"]; | ||
103 | + rotation_pic[i] = "http://ddragon.leagueoflegends.com/cdn/9.23.1/img/champion/" + rotation_name[i] + ".png"; | ||
104 | + } | ||
105 | + } | ||
106 | + } | ||
107 | + } | ||
108 | + var userLeagueUrl = "https://kr.api.riotgames.com/lol/league/v4/entries/by-summoner/" + urlenconde(id) + "?api_key=" + apikey; | ||
109 | + request(userLeagueUrl, function(error, response, body){ | ||
110 | + var info_user_league_json = JSON.parse(body); | ||
111 | + if (info_user_league_json[0] != null) { | ||
112 | + var leagueId = info_user_league_json[0]["leagueId"]; | ||
113 | + var wins = info_user_league_json[0]["wins"]; | ||
114 | + var losses = info_user_league_json[0]["losses"]; | ||
115 | + var leagueName = info_user_league_json[0]["leagueName"]; | ||
116 | + var tier = info_user_league_json[0]["tier"]; | ||
117 | + var rank = info_user_league_json[0]["rank"]; | ||
118 | + var leaguePoints = info_user_league_json[0]["leaguePoints"]; | ||
119 | + var img_tier; | ||
120 | + if (tier == "MASTER") { | ||
121 | + img_tier = "https://i.imgur.com/nvQjonh.png"; | ||
122 | + } | ||
123 | + else if (tier == "CHALLENGER") { | ||
124 | + img_tier = "https://i.imgur.com/sbK1Edj.png"; | ||
125 | + } | ||
126 | + else if (tier == "DIAMOND") { | ||
127 | + img_tier = "https://i.imgur.com/5VBu8PF.png"; | ||
128 | + } | ||
129 | + else if (tier == "PLATINUM") { | ||
130 | + img_tier = "https://i.imgur.com/Eqi6858.png"; | ||
131 | + } | ||
132 | + else if (tier == "GRANDMASTER") { | ||
133 | + img_tier = "https://i.imgur.com/mcEhz1o.png"; | ||
134 | + } | ||
135 | + else if (tier == "GOLD") { | ||
136 | + img_tier = "https://i.imgur.com/Ec4hPuO.png"; | ||
137 | + } | ||
138 | + else if (tier == "SILVER") { | ||
139 | + img_tier = "https://i.imgur.com/GKnPu7s.png"; | ||
140 | + } | ||
141 | + else if (tier == "BRONZE") { | ||
142 | + img_tier = "https://i.imgur.com/TPZVXIr.png"; | ||
143 | + } | ||
144 | + else { | ||
145 | + img_tier = "https://i.imgur.com/kcdoC4r.png"; | ||
146 | + } | ||
147 | + } | ||
148 | + var matchListUrl = "https://kr.api.riotgames.com/lol/match/v4/matchlists/by-account/" + urlenconde(accountId) + "?api_key=" + apikey; | ||
149 | + request(matchListUrl, function(error, response, body){ | ||
150 | + var info_matchList = JSON.parse(body); | ||
151 | + var gameId = new Array(); | ||
152 | + var championId = new Array(); | ||
153 | + var picture = new Array(); | ||
154 | + if (info_matchList["matches"] != null) { | ||
155 | + for (var num = 0; num < 10; num++) { | ||
156 | + gameId[num] = info_matchList["matches"][num]["gameId"]; | ||
157 | + championId[num] = info_matchList["matches"][num]["champion"]; | ||
158 | + for (var i = 0; i < champ_id.length; i++) { | ||
159 | + for (j in champion) { | ||
160 | + if (champion[j]["key"] == championId[num]) { | ||
161 | + picture[num] = "http://ddragon.leagueoflegends.com/cdn/9.23.1/img/champion/" + champion[j]["id"] + ".png"; | ||
162 | + } | ||
163 | + } | ||
164 | + } | ||
165 | + } | ||
166 | + } | ||
167 | + var win = new Array(); | ||
168 | + var kills = new Array(); | ||
169 | + var deaths = new Array(); | ||
170 | + var assists = new Array(); | ||
171 | + var matchUrl; | ||
172 | + matchUrl = "https://kr.api.riotgames.com/lol/match/v4/matches/" + urlenconde(gameId[0]) + "?api_key=" + apikey; | ||
173 | + request(matchUrl, function(error, response, body){ | ||
174 | + var info_match = JSON.parse(body); | ||
175 | + func(info_match, championId, win, kills, deaths, assists, 0); | ||
176 | + matchUrl = "https://kr.api.riotgames.com/lol/match/v4/matches/" + urlenconde(gameId[1]) + "?api_key=" + apikey; | ||
177 | + request(matchUrl, function(error, response, body){ | ||
178 | + var info_match = JSON.parse(body); | ||
179 | + func(info_match, championId, win, kills, deaths, assists, 1); | ||
180 | + matchUrl = "https://kr.api.riotgames.com/lol/match/v4/matches/" + urlenconde(gameId[2]) + "?api_key=" + apikey; | ||
181 | + request(matchUrl, function(error, response, body){ | ||
182 | + var info_match = JSON.parse(body); | ||
183 | + func(info_match, championId, win, kills, deaths, assists, 2); | ||
184 | + matchUrl = "https://kr.api.riotgames.com/lol/match/v4/matches/" + urlenconde(gameId[3]) + "?api_key=" + apikey; | ||
185 | + request(matchUrl, function(error, response, body){ | ||
186 | + var info_match = JSON.parse(body); | ||
187 | + func(info_match, championId, win, kills, deaths, assists, 3); | ||
188 | + matchUrl = "https://kr.api.riotgames.com/lol/match/v4/matches/" + urlenconde(gameId[4]) + "?api_key=" + apikey; | ||
189 | + request(matchUrl, function(error, response, body){ | ||
190 | + var info_match = JSON.parse(body); | ||
191 | + func(info_match, championId, win, kills, deaths, assists, 4); | ||
192 | + matchUrl = "https://kr.api.riotgames.com/lol/match/v4/matches/" + urlenconde(gameId[5]) + "?api_key=" + apikey; | ||
193 | + request(matchUrl, function(error, response, body){ | ||
194 | + var info_match = JSON.parse(body); | ||
195 | + func(info_match, championId, win, kills, deaths, assists, 5); | ||
196 | + matchUrl = "https://kr.api.riotgames.com/lol/match/v4/matches/" + urlenconde(gameId[6]) + "?api_key=" + apikey; | ||
197 | + request(matchUrl, function(error, response, body){ | ||
198 | + var info_match = JSON.parse(body); | ||
199 | + func(info_match, championId, win, kills, deaths, assists, 6); | ||
200 | + matchUrl = "https://kr.api.riotgames.com/lol/match/v4/matches/" + urlenconde(gameId[7]) + "?api_key=" + apikey; | ||
201 | + request(matchUrl, function(error, response, body){ | ||
202 | + var info_match = JSON.parse(body); | ||
203 | + func(info_match, championId, win, kills, deaths, assists, 7); | ||
204 | + matchUrl = "https://kr.api.riotgames.com/lol/match/v4/matches/" + urlenconde(gameId[8]) + "?api_key=" + apikey; | ||
205 | + request(matchUrl, function(error, response, body){ | ||
206 | + var info_match = JSON.parse(body); | ||
207 | + func(info_match, championId, win, kills, deaths, assists, 8); | ||
208 | + matchUrl = "https://kr.api.riotgames.com/lol/match/v4/matches/" + urlenconde(gameId[9]) + "?api_key=" + apikey; | ||
209 | + request(matchUrl, function(error, response, body){ | ||
210 | + var info_match = JSON.parse(body); | ||
211 | + func(info_match, championId, win, kills, deaths, assists, 9); | ||
212 | + champ_name[champ_name.length] = "total"; | ||
213 | + var temp_id; | ||
214 | + var temp_name; | ||
215 | + var temp_point; | ||
216 | + var temp_pic; | ||
217 | + for (var i = 0; i < champ_id.length - 1; i++) { | ||
218 | + for (var j = i + 1; j < champ_id.length - 1; j++) { | ||
219 | + if (champ_point[i] > champ_point[j]) { | ||
220 | + temp_id = champ_id[i]; | ||
221 | + temp_name = champ_name[i]; | ||
222 | + temp_point = champ_point[i]; | ||
223 | + temp_pic = champ_pic[i]; | ||
224 | + champ_id[i] = champ_id[j]; | ||
225 | + champ_name[i] = champ_name[j]; | ||
226 | + champ_point[i] = champ_point[j]; | ||
227 | + champ_pic[i] = champ_pic[j]; | ||
228 | + champ_id[j] = temp_id; | ||
229 | + champ_name[j] = temp_name; | ||
230 | + champ_point[j] = temp_point; | ||
231 | + champ_pic[j] = temp_pic; | ||
232 | + } | ||
233 | + } | ||
234 | + } | ||
235 | + const defaultMMR = [ | ||
236 | + {"mmr" : 900, "tier" : "iron", "rank" : 4}, | ||
237 | + { "mmr" : 950, "tier" : "iron", "rank" : 3 }, | ||
238 | + { "mmr" : 1000, "tier" : "iron", "rank" : 2 }, | ||
239 | + { "mmr" : 1050, "tier" : "iron", "rank" : 1 }, | ||
240 | + { "mmr" : 1100, "tier" : "bronze", "rank" : 4 }, | ||
241 | + { "mmr" : 1150, "tier" : "bronze", "rank" : 3 }, | ||
242 | + { "mmr" : 1200, "tier" : "bronze", "rank" : 2 }, | ||
243 | + { "mmr" : 1250, "tier" : "bronze", "rank" : 1 }, | ||
244 | + { "mmr" : 1300, "tier" : "silver", "rank" : 4 }, | ||
245 | + { "mmr" : 1350, "tier" : "silver", "rank" : 3 }, | ||
246 | + { "mmr" : 1400, "tier" : "silver", "rank" : 2 }, | ||
247 | + { "mmr" : 1450, "tier" : "silver", "rank" : 1 }, | ||
248 | + { "mmr" : 1500, "tier" : "gold", "rank" : 4 }, | ||
249 | + { "mmr" : 1550, "tier" : "gold", "rank" : 3 }, | ||
250 | + { "mmr" : 1600, "tier" : "gold", "rank" : 2 }, | ||
251 | + { "mmr" : 1650, "tier" : "gold", "rank" : 1 }, | ||
252 | + { "mmr" : 1700, "tier" : "platinum", "rank" : 4 }, | ||
253 | + { "mmr" : 1750, "tier" : "platinum", "rank" : 3 }, | ||
254 | + { "mmr" : 1800, "tier" : "platinum", "rank" : 2 }, | ||
255 | + { "mmr" : 1850, "tier" : "platinum", "rank" : 1 }, | ||
256 | + { "mmr" : 1900, "tier" : "diamond", "rank" : 4 }, | ||
257 | + { "mmr" : 1950, "tier" : "diamond", "rank" : 3 }, | ||
258 | + { "mmr" : 2000, "tier" : "diamond", "rank" : 2 }, | ||
259 | + { "mmr" : 2050, "tier" : "diamond", "rank" : 1 }, | ||
260 | + { "mmr" : 2100, "tier" : "master", "rank" : 1 }, | ||
261 | + { "mmr" : 2700, "tier" : "challenger", "rank" : 1 }, | ||
262 | + ] | ||
263 | + res.render('index', { title: req.params.username , | ||
264 | + c_id : champ_id, | ||
265 | + c_name : champ_name, | ||
266 | + c_point : champ_point, | ||
267 | + c_pic : champ_pic, | ||
268 | + c_rotation : rotation_pic, | ||
269 | + c_summoner : summoner, | ||
270 | + c_wins : wins, | ||
271 | + c_losses : losses, | ||
272 | + c_tier : tier, | ||
273 | + c_imgtier : img_tier, | ||
274 | + c_rank : rank, | ||
275 | + c_leaguePoint : leaguePoints, | ||
276 | + c_gameId : gameId, | ||
277 | + c_championId : championId, | ||
278 | + c_win : win, | ||
279 | + c_kills : kills, | ||
280 | + c_deaths : deaths, | ||
281 | + c_assists : assists, | ||
282 | + c_pic : picture | ||
283 | + }); | ||
284 | + }); | ||
285 | + }); | ||
286 | + }); | ||
287 | + }); | ||
288 | + }); | ||
289 | + }); | ||
290 | + }); | ||
291 | + }); | ||
292 | + }); | ||
293 | + }); | ||
294 | + }); | ||
295 | + }); | ||
296 | + }); | ||
297 | + }); | ||
298 | + }); | ||
299 | + }); | ||
300 | + }); | ||
261 | }; | 301 | }; | ... | ... |
... | @@ -2,7 +2,7 @@ module.exports = function(app){ | ... | @@ -2,7 +2,7 @@ module.exports = function(app){ |
2 | 2 | ||
3 | var request = require("request"); | 3 | var request = require("request"); |
4 | var urlenconde = require('urlencode'); | 4 | var urlenconde = require('urlencode'); |
5 | -var apikey = "RGAPI-3b791531-e731-4349-bab0-53068a86608c"//api | 5 | +var apikey = "RGAPI-a0598a8a-a326-4c0d-a115-3f0ae332e86f"//api |
6 | 6 | ||
7 | var profileIconId; //아이콘 번호 | 7 | var profileIconId; //아이콘 번호 |
8 | var revisionDate; //수정날짜 | 8 | var revisionDate; //수정날짜 | ... | ... |
... | @@ -42,7 +42,6 @@ | ... | @@ -42,7 +42,6 @@ |
42 | <tr><td><%= "Tier : " + c_tier + " " + c_rank + " / " + c_leaguePoint + "점"%></td></tr> | 42 | <tr><td><%= "Tier : " + c_tier + " " + c_rank + " / " + c_leaguePoint + "점"%></td></tr> |
43 | <tr><td><%= "Win : " + c_wins + " / Lose : " + c_losses%></td></tr> | 43 | <tr><td><%= "Win : " + c_wins + " / Lose : " + c_losses%></td></tr> |
44 | <tr><td><%= "승률 : " + ((c_wins/(c_wins+c_losses))*100).toFixed(2) + "%" %></td></tr> | 44 | <tr><td><%= "승률 : " + ((c_wins/(c_wins+c_losses))*100).toFixed(2) + "%" %></td></tr> |
45 | - <tr><td><%= "캐리력 : " + (c_wins/c_losses*2).toFixed(2) %></td></tr> | ||
46 | </tbody> | 45 | </tbody> |
47 | </table> | 46 | </table> |
48 | <br></br> | 47 | <br></br> |
... | @@ -53,12 +52,19 @@ | ... | @@ -53,12 +52,19 @@ |
53 | <% for (var i=0; i<c_rotation.length-1; i++){ %> | 52 | <% for (var i=0; i<c_rotation.length-1; i++){ %> |
54 | <img src= <%=c_rotation[i]%> width=50, height=50> | 53 | <img src= <%=c_rotation[i]%> width=50, height=50> |
55 | <% } %> | 54 | <% } %> |
56 | - <br></br> | 55 | + </div> |
57 | - <% for (var i = 0; i < 10; i++){ %> | 56 | + <br></br> |
58 | - <img src = <%= c_picture[i]%> width = 50, height = 50> | 57 | + <% for (var i = 0; i < 10; i++){ %> |
59 | - <br></br> | 58 | + <% if (c_win[i]) { %> |
60 | - <% } %> | 59 | + <%= "승리" %> |
61 | - <%= c_kills + " / " + c_deaths + " / " + c_assists %> | 60 | + <% } %> |
61 | + <% if (!c_win[i]) { %> | ||
62 | + <%= "패배" %> | ||
63 | + <% } %> | ||
64 | + <img src= <%= c_pic[i]%> width=50, height=50> | ||
65 | + <%= c_kills[i] + " / " + c_deaths[i] + " / " + c_assists[i] %> | ||
66 | + <br></br> | ||
67 | + <% } %> | ||
62 | </div> | 68 | </div> |
63 | </body> | 69 | </body> |
64 | </html> | 70 | </html> |
... | \ No newline at end of file | ... | \ No newline at end of file | ... | ... |
-
Please register or login to post a comment