Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Some very cleaned up, but poorly executing code
- function getAPI(toonName,toonRealm) {
- var cache = CacheService.getDocumentCache();
- var value = cache.get(toonName+"-"+toonRealm);
- if (value == null) {
- for (var n = 0; n < 6; n++) {
- try {
- var toonJSON = UrlFetchApp.fetch("https://us.api.battle.net/wow/character/"+toonRealm+"/"+toonName+"?fields=items,statistics,progression,audit&apikey=YOUR_API_KEY_HERE");
- if (toonJSON.getResponseCode() === 200) {
- value = JSON.parse(toonJSON.getContentText());
- cache.put(toonName+"-"+toonRealm, value, 10800);
- }
- } catch (err) {
- if (n == 5) {
- throw err;
- }
- Utilities.sleep((Math.pow(2,n)*1000) + (Math.round(Math.random() * 1000)));
- }
- }
- }
- return value;
- }
- function pull(toonName,toonRealm) {
- if(!toonName || !toonRealm) {
- return ""
- }
- var toon;
- for (var n = 0; n < 6; n++) {
- try {
- var toonJSON = UrlFetchApp.fetch("https://us.api.battle.net/wow/character/"+toonRealm+"/"+toonName+"?fields=items,statistics,progression,audit&apikey=YOUR_API_KEY_HERE");
- if (toonJSON.getResponseCode() === 200) {
- toon = JSON.parse(toonJSON.getContentText());
- }
- } catch (err) {
- if (n == 5) {
- throw err;
- }
- Utilities.sleep((Math.pow(2,n)*1000) + (Math.round(Math.random() * 1000)));
- }
- }
- var wodstats = toon.statistics.subCategories[5].subCategories[5].statistics
- var bosskills = 0
- for (var i = 1; i <= 15; i+=2){
- bosskills += wodstats[i].quantity
- }
- var grgemindex = [115809, 115811, 115812, 115813, 115814, 115815],
- gemindex = [115803, 115804, 115805, 115806, 115807, 115808],
- gem75index = [127760, 127761, 127762, 127763, 127764, 127765],
- gems75 = 0,
- grgems = 0,
- gems = 0
- var getItem = function(item){
- var itemlevel = 0,
- itemlevelcm = 0
- if (item) {
- itemlevel = item.itemLevel,
- itemlevelcm = itemlevel
- if (itemlevel > 630) { var itemlevelcm = 630 }
- if (gem75index.indexOf(item.tooltipParams["gem0"]) > -1) {
- gems75++
- } else if (grgemindex.indexOf(item.tooltipParams["gem0"]) > -1) {
- grgems++
- } else if (gemindex.indexOf(item.tooltipParams["gem0"]) > -1) {
- gems++
- }
- }
- return [itemlevel, itemlevelcm]
- }
- var head = getItem(toon.items.head),
- neck = getItem(toon.items.neck),
- shoulders = getItem(toon.items.shoulder),
- back = getItem(toon.items.back),
- chest = getItem(toon.items.chest),
- wrist = getItem(toon.items.wrist),
- hands = getItem(toon.items.hands),
- waist = getItem(toon.items.waist),
- legs = getItem(toon.items.legs),
- feet = getItem(toon.items.feet),
- finger1 = getItem(toon.items.finger1),
- finger2 = getItem(toon.items.finger2),
- trinket1 = getItem(toon.items.trinket1),
- trinket2 = getItem(toon.items.trinket2),
- mainHand = getItem(toon.items.mainHand),
- offHand = getItem(toon.items.offHand)
- var CM_iL_Total = head[1]+neck[1]+shoulders[1]+back[1]+chest[1]+wrist[1]+hands[1]+waist[1]+legs[1]+feet[1]+finger1[1]+finger2[1]+trinket1[1]+trinket2[1]+mainHand[1]+offHand[1]
- var CM_iL = CM_iL_Total / 16 //Kept this portion of code for future expansions
- if (offHand[1] == 0) { CM_iL = CM_iL_Total / 15 }
- var killsforRaidId = function(raid_id){
- var normal = 0,
- heroic = 0,
- mythic = 0;
- toon.progression.raids[raid_id].bosses.forEach(function(boss){
- normal += boss.normalKills
- heroic += boss.heroicKills
- mythic += boss.mythicKills
- })
- return [normal, heroic, mythic]
- }
- var highmaul = killsforRaidId(32),
- highmaulNormal = highmaul[0],
- highmaulHeroic = highmaul[1],
- highmaulMythic = highmaul[2]
- var brf = killsforRaidId(33),
- brfNormal = brf[0],
- brfHeroic = brf[1],
- brfMythic = brf[2]
- var hfc = killsforRaidId(34),
- hfcNormal = hfc[0],
- hfcHeroic = hfc[1],
- hfcMythic = hfc[2]
- var giftindex = [5310, 5317, 5311, 5324, 5318, 5325, 5312, 5319, 5326, 5313, 5320, 5327, 5314, 5321, 5328],
- breathindex = [5281, 5285, 5284, 5298, 5292, 5297, 5300, 5293, 5299, 5302, 5294, 5301, 5304, 5295, 5303]
- var enchantsByItem = function(item) {
- if (item) {
- var enchant
- if (giftindex.indexOf(item.tooltipParams["enchant"]) > -1) {
- enchant = "Gift"
- } else if (breathindex.indexOf(item.tooltipParams["enchant"]) > -1) {
- enchant = "Breath"
- } else {
- enchant = "None"
- }
- }
- else { enchant = "N/A" }
- return enchant
- }
- var neckchant = enchantsByItem(toon.items.neck),
- backchant = enchantsByItem(toon.items.back),
- finger1chant = enchantsByItem(toon.items.finger1),
- finger2chant = enchantsByItem(toon.items.finger2)
- var getWeaponEnchant = function(enchantid) {
- if (toon.class == 6 && enchantid) {return "DK"}
- switch (enchantid) {
- case 5336:
- return "Blackrock"
- break;
- case 5335:
- return "Shadowmoon"
- break;
- case 5334:
- return "Frostwolf"
- break;
- case 5331:
- return "Shattered Hand"
- break;
- case 5276:
- return "Megawatt"
- break;
- case 5275:
- return "Oglethorp's"
- break;
- case 5383:
- return "Hemet's"
- break;
- case 5330:
- return "Thunderlord"
- break;
- case 5337:
- return "Warsong"
- break;
- case 5384:
- return "Bleeding Hollow"
- break;
- default:
- return "None"
- }
- }
- var wepchant,
- wepchantoh
- if (toon.items.mainHand) {
- wepchant = getWeaponEnchant(toon.items.mainHand.tooltipParams["enchant"])
- } else { wepchant = "N/A" }
- if (toon.items.offHand && toon.items.offHand.weaponInfo) {
- wepchantoh = getWeaponEnchant(toon.items.offHand.tooltipParams["enchant"])
- }
- var currentdate = new Date()
- var lastupdate = (currentdate.getMonth()+1) + "/"
- + currentdate.getDate() + "/"
- + currentdate.getFullYear() + " @ "
- + currentdate.getHours() + ":"
- + currentdate.getMinutes() + ":"
- + currentdate.getSeconds() + " GMT"
- var T18Sets = ["Arcanic Conclave",
- "Oathclaw",
- "Pious",
- "Reathrattle",
- "Demongaze",
- "Ceaseless Vigil",
- "Iron Wrath",
- "Felblade",
- "Hurricane's Eye",
- "Living Mountain", // TECTUS
- "Savage Hunt"]
- var setPiece = function(slot) {
- var setsT18 = 0,
- setsT17 = 0
- if (slot.tooltipParams.set && (slot.itemLevel == 695 || slot.itemLevel == 710 || slot.itemLevel == 725 || slot.itemLevel == 701 || slot.itemLevel == 716 || slot.itemLevel == 731 || slot.itemLevel == 705 || slot.itemLevel == 720 || slot.itemLevel == 735 || slot.itemLevel == 711 || slot.itemLevel == 726 || slot.itemLevel == 741)) { //T18
- setsT18 = slot.tooltipParams.set.length
- }
- else if (slot.tooltipParams.set && (slot.itemLevel == 670 || slot.itemLevel == 685 || slot.itemLevel == 700 || slot.itemLevel == 676 || slot.itemLevel == 691 || slot.itemLevel == 706)) { //T17
- setsT17 = slot.tooltipParams.set.length
- }
- return [setsT18, setsT17]
- }
- var tierHead = setPiece(toon.items.head),
- tierShoulder = setPiece(toon.items.shoulder),
- tierChest = setPiece(toon.items.chest),
- tierHands = setPiece(toon.items.hands),
- tierLegs = setPiece(toon.items.legs)
- var tier18pieces = Math.max(tierHead[0], tierShoulder[0], tierChest[0], tierHands[0], tierLegs[0]),
- tier17pieces = Math.max(tierHead[1], tierShoulder[1], tierChest[1], tierHands[1], tierLegs[1])
- var toonInfo = new Array(
- toon.items.averageItemLevelEquipped, tier18pieces+"/"+tier17pieces,
- head[0], neck[0],
- shoulders[0], back[0],
- chest[0], wrist[0],
- hands[0], waist[0],
- legs[0], feet[0],
- finger1[0], finger2[0],
- trinket1[0],trinket2[0],
- mainHand[0], offHand[0],
- wepchant, wepchantoh, neckchant, finger1chant, finger2chant, backchant,
- toon.audit.emptySockets, gems, grgems, gems75,
- hfcNormal, hfcHeroic, hfcMythic,
- lastupdate
- )
- return toonInfo;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement