Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function onInstall(e) {
- onOpen(e);
- }
- function onOpen(e) {
- SpreadsheetApp.getUi()
- .createAddonMenu()
- .addItem('Generate String', 'showSidebar')
- .addToUi();
- }
- function showSidebar() {
- var ui = HtmlService.createHtmlOutputFromFile('Sidebar')
- .setTitle('BH Scouting Report to Text');
- SpreadsheetApp.getUi()
- .showSidebar(ui);
- }
- function formatPosition(position){
- if(position==1){
- //throw error
- }else if(position==2){
- return "2nd";
- }else if(position==3){
- return "3rd";
- }else{
- return position + "th";
- }
- }
- function easyPosition(position, totalMembers){
- if(position==1){
- return "leader";
- }else if(position==totalMembers){
- return "last";
- }else if(position <= totalMembers/2){
- return formatPosition(position) + " from top";
- }else{
- return formatPosition(totalMembers-position+1) + " from bottom";
- }
- }
- function formatFrom2DArray(array, rowLimit){
- var output = ""
- var totalMembers = 0;
- for (var row = 0; row < 20; row++) {
- if(array[row][0]!=""){
- totalMembers++;
- }
- }
- for (var row = 0; row < rowLimit; row++) {
- if(array[row][0]==""){
- continue;
- }
- output += array[row][0];
- output += "(Fame " + array[row][2];
- output += ", " + easyPosition(parseInt(array[row][1]), totalMembers) + "): ";
- output += array[row][3] + " (" + array[row][5] + " hp, ~" + Math.round(parseFloat(array[row][6])*100) + "% pw" + (array[row][7]=="Y"?", has god!":"") + ") + ";
- output += array[row][8] + " (" + array[row][10] + " hp, ~" + Math.round(parseFloat(array[row][11])*100) + "% pw" + (array[row][12]=="Y"?", has god!":"") + ")\n";
- }
- return output;
- }
- function getFormattedString() {
- var rowLimit = 20;
- var sheet = SpreadsheetApp.getActiveSheet();
- var textToDisplay = "";
- var valuesSortedByHP = sheet.getRange(4, 114, 20, 13).getValues();
- var valuesSortedByPW = sheet.getRange(4, 128, 20, 13).getValues();
- textToDisplay += "Enemies sorted by HP:\n";
- textToDisplay += formatFrom2DArray(valuesSortedByHP, rowLimit);
- textToDisplay += "Enemies sorted by PW:\n";
- textToDisplay += formatFrom2DArray(valuesSortedByPW, rowLimit);
- return textToDisplay;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement