diff --git a/app/icons/no-power.svg b/app/icons/no-power.svg new file mode 100644 index 00000000..00f7a9b5 --- /dev/null +++ b/app/icons/no-power.svg @@ -0,0 +1,3 @@ + + + diff --git a/app/icons/power.svg b/app/icons/power.svg new file mode 100644 index 00000000..08d19243 --- /dev/null +++ b/app/icons/power.svg @@ -0,0 +1,3 @@ + + + diff --git a/app/js/app.js b/app/js/app.js index a704a99e..b8e2f236 100755 --- a/app/js/app.js +++ b/app/js/app.js @@ -42,8 +42,6 @@ function($rootScope, $location, $window, $doc, $state, $translate, localeFormat, // Global Reference variables $rootScope.insurance = { opts: [{ name: 'standard', pct: 0.05 }, { name: 'alpha', pct: 0.025 }, { name: 'beta', pct: 0.0375 }] }; $rootScope.discounts = { opts: Discounts }; - $rootScope.STATUS = ['', 'disabled', 'off', 'on']; - $rootScope.STATUS_CLASS = ['', 'disabled', 'warning', 'secondary-disabled']; $rootScope.sizeRatio = Persist.getSizeRatio(); $rootScope.title = 'Coriolis'; diff --git a/app/js/controllers/controller-outfit.js b/app/js/controllers/controller-outfit.js index 5f03080a..b7b10da3 100755 --- a/app/js/controllers/controller-outfit.js +++ b/app/js/controllers/controller-outfit.js @@ -100,11 +100,12 @@ angular.module('app').controller('OutfitController', ['$window', '$rootScope', ' $scope.speedSeries = { xMin: 0, xMax: ship.cargoCapacity, - yMax: calcSpeed(ship.unladenMass, ship.speed, $scope.th.c, ship.pipSpeed)['4 Pips'], + yMax: calcSpeed(ship.unladenMass, ship.speed, ship.boost, $scope.th.c, ship.pipSpeed).boost, yMin: 0, - series: ['4 Pips', '2 Pips', '0 Pips'], + series: ['boost', '4 Pips', '2 Pips', '0 Pips'], + colors: ['#0088d2', '#ff8c0d', '#D26D00', '#c06400'], func: function(cargo) { // X Axis is Cargo - return calcSpeed(ship.unladenMass + $scope.fuel + cargo, ship.speed, $scope.th.c, ship.pipSpeed); + return calcSpeed(ship.unladenMass + $scope.fuel + cargo, ship.speed, ship.boost, $scope.th.c, ship.pipSpeed); } }; $scope.speedChart = { @@ -360,7 +361,7 @@ angular.module('app').controller('OutfitController', ['$window', '$rootScope', ' $scope.speedSeries.xMax = $scope.trSeries.xMax = $scope.jrSeries.xMax = ship.cargoCapacity; $scope.jrSeries.yMax = ship.unladenRange; $scope.trSeries.yMax = ship.unladenTotalRange; - $scope.speedSeries.yMax = calcSpeed(ship.unladenMass, ship.speed, $scope.th.c, ship.pipSpeed)['4 Pips']; + $scope.speedSeries.yMax = calcSpeed(ship.unladenMass, ship.speed, ship.boost, $scope.th.c, ship.pipSpeed).boost; updateRetrofitCosts(); win.triggerHandler('pwrchange'); } diff --git a/app/js/directives/directive-bar-chart.js b/app/js/directives/directive-bar-chart.js index ee9a743b..55e6018e 100755 --- a/app/js/directives/directive-bar-chart.js +++ b/app/js/directives/directive-bar-chart.js @@ -6,12 +6,14 @@ angular.module('app').directive('barChart', ['$window', '$translate', '$rootScop function insertLinebreaks(d) { var el = d3.select(this); - var words = d.split('\n'); + var lines = d.split('\n'); el.text('').attr('y', -6); - for (var i = 0; i < words.length; i++) { - var tspan = el.append('tspan').text(words[i]); + for (var i = 0; i < lines.length; i++) { + var tspan = el.append('tspan').text(lines[i].length > 18 ? lines[i].substring(0, 15) + '...' : lines[i]); if (i > 0) { tspan.attr('x', -9).attr('dy', '1em'); + } else { + tspan.attr('class', 'primary'); } } } diff --git a/app/js/directives/directive-line-chart.js b/app/js/directives/directive-line-chart.js index ecf5b85f..4ef45513 100644 --- a/app/js/directives/directive-line-chart.js +++ b/app/js/directives/directive-line-chart.js @@ -11,7 +11,7 @@ angular.module('app').directive('lineChart', ['$window', '$translate', '$rootSco link: function(scope, element) { var seriesConfig = scope.series, series = seriesConfig.series, - color = d3.scale.ordinal().range([ '#ff8c0d']), + color = d3.scale.ordinal().range(scope.series.colors ? scope.series.colors : ['#ff8c0d']), config = scope.config, labels = config.labels, margin = { top: 15, right: 15, bottom: 35, left: 60 }, @@ -42,16 +42,18 @@ angular.module('app').directive('lineChart', ['$window', '$translate', '$rootSco .attr('transform', 'rotate(-90)') .attr('y', -50) .attr('dy', '.1em') - .style('text-anchor', 'middle') - .text($translate.instant(labels.yAxis.title) + ' (' + $translate.instant(labels.yAxis.unit) + ')'); + .style('text-anchor', 'middle'); + // Create X Axis SVG Elements var xLbl = vis.append('g').attr('class', 'x axis'); var xTxt = xLbl.append('text') .attr('class', 'cap') .attr('y', 30) .attr('dy', '.1em') - .style('text-anchor', 'middle') - .text($translate.instant(labels.xAxis.title) + ' (' + $translate.instant(labels.xAxis.unit) + ')'); + .style('text-anchor', 'middle'); + + // xTxt.append('tspan').attr('class', 'metric'); + // yTxt.append('tspan').attr('class', 'metric'); // Create and Add tooltip var tipHeight = 2 + (1.25 * (series ? series.length : 0.75)); @@ -64,9 +66,9 @@ angular.module('app').directive('lineChart', ['$window', '$translate', '$rootSco .attr('class', 'tip'); tips.append('text') - .attr('class', 'label x') - .attr('dy', (-tipHeight / 2) + 'em') - .attr('y', '1.25em'); + .attr('class', 'label x') + .attr('dy', (-tipHeight / 2) + 'em') + .attr('y', '1.25em'); var background = vis.append('rect') // Background to capture hover/drag .attr('fill-opacity', 0) @@ -203,8 +205,8 @@ angular.module('app').directive('lineChart', ['$window', '$translate', '$rootSco tips.selectAll('text.label.y').text(function(d, i) { var yVal = series ? y0[series[i]] : y0; yTotal += yVal; - return (series ? series[i] : '') + ' ' + fmtLong(yVal) + ' ' + $translate.instant(labels.yAxis.unit); - }); + return (series ? $translate.instant(series[i]) : '') + ' ' + fmtLong(yVal); + }).append('tspan').attr('class', 'metric').text(' ' + $translate.instant(labels.yAxis.unit)); tips.selectAll('text').each(function() { if (this.getBBox().width > tipWidth) { @@ -215,7 +217,7 @@ angular.module('app').directive('lineChart', ['$window', '$translate', '$rootSco tipWidth += 8; markers.selectAll('circle.marker').attr('cx', x(x0)).attr('cy', function(d, i) { return y(series ? y0[series[i]] : y0); }); tips.selectAll('text.label').attr('x', flip ? -12 : 12).style('text-anchor', flip ? 'end' : 'start'); - tips.selectAll('text.label.x').text(fmtLong(x0) + ' ' + $translate.instant(labels.xAxis.unit)); + tips.selectAll('text.label.x').text(fmtLong(x0)).append('tspan').attr('class', 'metric').text(' ' + $translate.instant(labels.xAxis.unit)); tips.attr('transform', 'translate(' + x(x0) + ',' + Math.max(minTransY, y(yTotal / (series ? series.length : 1))) + ')'); tips.selectAll('rect') .attr('width', tipWidth + 4) @@ -225,8 +227,8 @@ angular.module('app').directive('lineChart', ['$window', '$translate', '$rootSco } function updateFormats() { - xTxt.text($translate.instant(labels.xAxis.title) + ' (' + $translate.instant(labels.xAxis.unit) + ')'); - yTxt.text($translate.instant(labels.yAxis.title) + ' (' + $translate.instant(labels.yAxis.unit) + ')'); + xTxt.text($translate.instant(labels.xAxis.title)).append('tspan').attr('class', 'metric').text(' (' + $translate.instant(labels.xAxis.unit) + ')'); + yTxt.text($translate.instant(labels.yAxis.title)).append('tspan').attr('class', 'metric').text(' (' + $translate.instant(labels.yAxis.unit) + ')'); fmtLong = $rootScope.localeFormat.numberFormat('.2f'); xAxis.tickFormat($rootScope.localeFormat.numberFormat('.2r')); yAxis.tickFormat($rootScope.localeFormat.numberFormat('.3r')); diff --git a/app/js/i18n/en.js b/app/js/i18n/en.js index f8855e86..c2818eb7 100644 --- a/app/js/i18n/en.js +++ b/app/js/i18n/en.js @@ -1,218 +1,216 @@ angular.module('app').config(['$translateProvider', function($translateProvider) { - - $translateProvider - .translations('en', { - PHRASE_EXPORT_DESC: 'A detailed JSON export of your build for use in other sites and tools', - 'A-Rated': 'A-Rated', - about: 'about', - action: 'action', - added: 'added', - Advanced: 'Advanced', - 'Advanced Discovery Scanner': 'Advanced Discovery Scanner', - agility: 'agility', - alpha: 'alpha', - ammo: 'ammo', - PHRASE_CONFIRMATION: 'Are You Sure?', - armour: 'armour', - am: 'Auto Field-Maintenance Unit', - available: 'available', - backup: 'backup', - 'Basic Discovery Scanner': 'Basic Discovery Scanner', - bl: 'Beam Laser', - beta: 'beta', - bins: 'bins', - boost: 'boost', - build: 'build', - 'build name': 'Build Name', - builds: 'builds', - bh: 'bulkheads', - ul: 'Burst Laser', - buy: 'buy', - cancel: 'cancel', - c: 'Cannon', - capital: 'capital', - cargo: 'cargo', - 'Cargo Hatch': 'Cargo Hatch', - cr: 'Cargo Rack', - cs: 'Cargo Scanner', - cells: 'cells', - 'Chaff Launcher': 'Chaff Launcher', - close: 'close', - cc: 'Collector Limpet Controller', - compare: 'compare', - 'compare all': 'compare all', - comparison: 'comparison', - comparisons: 'comparisons', - component: 'component', - cost: 'cost', - costs: 'costs', - cm: 'Countermeasure', - CR: 'CR', - create: 'create', - 'create new': 'create new', - credits: 'credits', - Cytoscrambler: 'Cytoscrambler', - damage: 'damage', - delete: 'delete', - 'delete all': 'delete all', - dep: 'dep', - deployed: 'deployed', - 'detailed export': 'detailed export', - 'Detailed Surface Scanner': 'Detailed Surface Scanner', - disabled: 'disabled', - discount: 'discount', - Distruptor: 'Distruptor', - dc: 'Docking Computer', - done: 'done', - DPS: 'DPS', - 'edit data': 'edit data', - efficiency: 'efficiency', - 'Electronic Countermeasure': 'Electronic Countermeasure', - empty: 'empty', - Enforcer: 'Enforcer', - ENG: 'ENG', - 'enter name': 'Enter Name', - EPS: 'EPS', - export: 'export', - fixed: 'fixed', - forum: 'forum', - fc: 'Fragment Cannon', - fd: 'Frame Shift Drive', - ws: 'Frame Shift Wake Scanner', - FSD: 'FSD', - fi: 'FSD Interdictor', - fuel: 'fuel', - fs: 'Fuel Scoop', - ft: 'Fuel Tank', - fx: 'Fuel Transfer Limpet Controller', - 'full tank': 'full tank', - Gimballed: 'Gimballed', - H: 'H', - hardpoints: 'hardpoints', - hb: 'Hatch Breaker Limpet Controller', - 'Heat Sink Launcher': 'Heat Sink Launcher', - huge: 'huge', - hull: 'hull', - hr: 'Hull Reinforcement Package', - 'Imperial Hammer': 'Imperial Hammer', - import: 'import', - 'import all': 'import all', - insurance: 'insurance', - 'Intermediate Discovery Scanner': 'Intermediate Discovery Scanner', - 'internal compartments': 'internal compartments', - 'jump range': 'jump range', - jumps: 'jumps', - kw: 'Kill Warrant Scanner', - L: 'L', - laden: 'laden', - language: 'language', - large: 'large', - ls: 'life support', - 'Lightweight Alloy': 'Lightweight Alloy', - 'lock factor': 'lock factor', - LS: 'Ls', - LY: 'LY', - M: 'M', - 'm/s': 'm/s', - mass: 'mass', - max: 'max', - 'max mass': 'max mass', - medium: 'medium', - 'Military Grade Composite': 'Military Grade Composite', - nl: 'Mine Launcher', - 'Mining Lance': 'Mining Lance', - ml: 'Mining Laser', - 'Mirrored Surface Composite': 'Mirrored Surface Composite', - mr: 'Missile Rack', - mc: 'Multi-cannon', - 'net cost': 'net cost', - no: 'no', - PHRASE_NO_BUILDS: 'No builds added to comparison!', - PHRASE_NO_RETROCH: 'No Retrofitting changes', - none: 'none', - 'none created': 'none created', - off: 'off', - on: 'on', - optimal: 'optimal', - 'optimal mass': 'optimal mass', - 'optimize mass': 'optimize mass', - overwrite: 'overwrite', - Pacifier: 'Pacifier', - 'Pack-Hound': 'Pack-Hound', - PHRASE_IMPORT: 'Paste JSON or import here', - pen: 'pen', - penetration: 'penetration', - permalink: 'permalink', - pa: 'Plasma Accelerator', - 'Point Defence': 'Point Defence', - power: 'power', - pd: 'power distributor', - pp: 'power plant', - pri: 'pri', - priority: 'priority', - psg: 'Prismatic Shield Generator', - proceed: 'proceed', - pc: 'Prospector Limpet Controller', - pl: 'Pulse Laser', - PWR: 'PWR', - rg: 'Rail Gun', - range: 'range', - rate: 'rate', - 'Reactive Surface Composite': 'Reactive Surface Composite', - recharge: 'recharge', - rf: 'Refinery', - 'refuel time': 'refuel time', - 'Reinforced Alloy': 'Reinforced Alloy', - reload: 'reload', - rename: 'rename', - repair: 'repair', - reset: 'reset', - ret: 'ret', - retracted: 'retracted', - 'retrofit costs': 'retrofit costs', - 'retrofit from': 'retrofit from', - ROF: 'ROF', - S: 'S', - save: 'save', - sc: 'scanner', - PHRASE_SELECT_BUILDS: 'Select Builds to Compare', - sell: 'sell', - s: 'sensors', - settings: 'settings', - sb: 'Shield Booster', - scb: 'Shield Cell Bank', - sg: 'Shield Generator', - shields: 'shields', - ship: 'ship', - ships: 'ships', - shortened: 'shortened', - size: 'size', - skip: 'skip', - small: 'small', - speed: 'speed', - standard: 'standard', - 'Standard Docking Computer': 'Standard Docking Computer', - Stock: 'Stock', - SYS: 'SYS', - T: 'T', - T_LOAD: 't-load', - 'The Retributor': 'The Retributor', - t: 'thrusters', - time: 'time', - tp: 'Torpedo Pylon', - total: 'total', - 'total range': 'total range', - turret: 'turret', - type: 'type', - U: 'U', - unladen: 'unladen', - PHRASE_UPDATE_RDY: 'Update Available! Click to Refresh', - URL: 'URL', - utility: 'utility', - 'utility mounts': 'utility mounts', - version: 'version', - WEP: 'WEP', - yes: 'yes', - PHRASE_BACKUP_DESC: 'Backup of all Coriolis data to save or transfer to another browser/device' - }); + $translateProvider.translations('en', { + PHRASE_EXPORT_DESC: 'A detailed JSON export of your build for use in other sites and tools', + 'A-Rated': 'A-Rated', + about: 'about', + action: 'action', + added: 'added', + Advanced: 'Advanced', + 'Advanced Discovery Scanner': 'Advanced Discovery Scanner', + agility: 'agility', + alpha: 'alpha', + ammo: 'ammo', + PHRASE_CONFIRMATION: 'Are You Sure?', + armour: 'armour', + am: 'Auto Field-Maintenance Unit', + available: 'available', + backup: 'backup', + 'Basic Discovery Scanner': 'Basic Discovery Scanner', + bl: 'Beam Laser', + beta: 'beta', + bins: 'bins', + boost: 'boost', + build: 'build', + 'build name': 'Build Name', + builds: 'builds', + bh: 'bulkheads', + ul: 'Burst Laser', + buy: 'buy', + cancel: 'cancel', + c: 'Cannon', + capital: 'capital', + cargo: 'cargo', + 'Cargo Hatch': 'Cargo Hatch', + cr: 'Cargo Rack', + cs: 'Cargo Scanner', + cells: 'cells', + 'Chaff Launcher': 'Chaff Launcher', + close: 'close', + cc: 'Collector Limpet Controller', + compare: 'compare', + 'compare all': 'compare all', + comparison: 'comparison', + comparisons: 'comparisons', + component: 'component', + cost: 'cost', + costs: 'costs', + cm: 'Countermeasure', + CR: 'CR', + create: 'create', + 'create new': 'create new', + credits: 'credits', + Cytoscrambler: 'Cytoscrambler', + damage: 'damage', + delete: 'delete', + 'delete all': 'delete all', + dep: 'dep', + deployed: 'deployed', + 'detailed export': 'detailed export', + 'Detailed Surface Scanner': 'Detailed Surface Scanner', + disabled: 'disabled', + discount: 'discount', + Distruptor: 'Distruptor', + dc: 'Docking Computer', + done: 'done', + DPS: 'DPS', + 'edit data': 'edit data', + efficiency: 'efficiency', + 'Electronic Countermeasure': 'Electronic Countermeasure', + empty: 'empty', + Enforcer: 'Enforcer', + ENG: 'ENG', + 'enter name': 'Enter Name', + EPS: 'EPS', + export: 'export', + fixed: 'fixed', + forum: 'forum', + fc: 'Fragment Cannon', + fd: 'Frame Shift Drive', + ws: 'Frame Shift Wake Scanner', + FSD: 'FSD', + fi: 'FSD Interdictor', + fuel: 'fuel', + fs: 'Fuel Scoop', + ft: 'Fuel Tank', + fx: 'Fuel Transfer Limpet Controller', + 'full tank': 'full tank', + Gimballed: 'Gimballed', + H: 'H', + hardpoints: 'hardpoints', + hb: 'Hatch Breaker Limpet Controller', + 'Heat Sink Launcher': 'Heat Sink Launcher', + huge: 'huge', + hull: 'hull', + hr: 'Hull Reinforcement Package', + 'Imperial Hammer': 'Imperial Hammer', + import: 'import', + 'import all': 'import all', + insurance: 'insurance', + 'Intermediate Discovery Scanner': 'Intermediate Discovery Scanner', + 'internal compartments': 'internal compartments', + 'jump range': 'jump range', + jumps: 'jumps', + kw: 'Kill Warrant Scanner', + L: 'L', + laden: 'laden', + language: 'language', + large: 'large', + ls: 'life support', + 'Lightweight Alloy': 'Lightweight Alloy', + 'lock factor': 'lock factor', + LS: 'Ls', + LY: 'LY', + M: 'M', + 'm/s': 'm/s', + mass: 'mass', + max: 'max', + 'max mass': 'max mass', + medium: 'medium', + 'Military Grade Composite': 'Military Grade Composite', + nl: 'Mine Launcher', + 'Mining Lance': 'Mining Lance', + ml: 'Mining Laser', + 'Mirrored Surface Composite': 'Mirrored Surface Composite', + mr: 'Missile Rack', + mc: 'Multi-cannon', + 'net cost': 'net cost', + no: 'no', + PHRASE_NO_BUILDS: 'No builds added to comparison!', + PHRASE_NO_RETROCH: 'No Retrofitting changes', + none: 'none', + 'none created': 'none created', + off: 'off', + on: 'on', + optimal: 'optimal', + 'optimal mass': 'optimal mass', + 'optimize mass': 'optimize mass', + overwrite: 'overwrite', + Pacifier: 'Pacifier', + 'Pack-Hound': 'Pack-Hound', + PHRASE_IMPORT: 'Paste JSON or import here', + pen: 'pen', + penetration: 'penetration', + permalink: 'permalink', + pa: 'Plasma Accelerator', + 'Point Defence': 'Point Defence', + power: 'power', + pd: 'power distributor', + pp: 'power plant', + pri: 'pri', + priority: 'priority', + psg: 'Prismatic Shield Generator', + proceed: 'proceed', + pc: 'Prospector Limpet Controller', + pl: 'Pulse Laser', + PWR: 'PWR', + rg: 'Rail Gun', + range: 'range', + rate: 'rate', + 'Reactive Surface Composite': 'Reactive Surface Composite', + recharge: 'recharge', + rf: 'Refinery', + 'refuel time': 'refuel time', + 'Reinforced Alloy': 'Reinforced Alloy', + reload: 'reload', + rename: 'rename', + repair: 'repair', + reset: 'reset', + ret: 'ret', + retracted: 'retracted', + 'retrofit costs': 'retrofit costs', + 'retrofit from': 'retrofit from', + ROF: 'ROF', + S: 'S', + save: 'save', + sc: 'scanner', + PHRASE_SELECT_BUILDS: 'Select Builds to Compare', + sell: 'sell', + s: 'sensors', + settings: 'settings', + sb: 'Shield Booster', + scb: 'Shield Cell Bank', + sg: 'Shield Generator', + shields: 'shields', + ship: 'ship', + ships: 'ships', + shortened: 'shortened', + size: 'size', + skip: 'skip', + small: 'small', + speed: 'speed', + standard: 'standard', + 'Standard Docking Computer': 'Standard Docking Computer', + Stock: 'Stock', + SYS: 'SYS', + T: 'T', + T_LOAD: 't-load', + 'The Retributor': 'The Retributor', + t: 'thrusters', + time: 'time', + tp: 'Torpedo Pylon', + total: 'total', + 'total range': 'total range', + turret: 'turret', + type: 'type', + U: 'U', + unladen: 'unladen', + PHRASE_UPDATE_RDY: 'Update Available! Click to Refresh', + URL: 'URL', + utility: 'utility', + 'utility mounts': 'utility mounts', + version: 'version', + WEP: 'WEP', + yes: 'yes', + PHRASE_BACKUP_DESC: 'Backup of all Coriolis data to save or transfer to another browser/device' + }); }]); diff --git a/app/js/i18n/es.js b/app/js/i18n/es.js index 3f789e8b..ee174fbc 100644 --- a/app/js/i18n/es.js +++ b/app/js/i18n/es.js @@ -17,247 +17,195 @@ angular.module('app').config(['$translateProvider', 'localeFormatProvider', func }); $translateProvider.translations('es', { - PHRASE_EXPORT_DESC: 'Ein detaillierter JSON-Export Ihrer Konfiguration für die Verwendung in anderen Websites und Tools', - A_RATED: 'A-Klasse', - ABOUT: 'Über', - ACTION: 'Aktion', - ADDED: 'Hinzugefügt', - ADDER: 'Adder', - ADVANCED: 'Fortgeschritten', - 'Advanced Discovery Scanner': 'Fortgeschrittener Aufklärungsscanner', - 'Advanced Plasma Laser': 'Fortgeschrittener Plasma-Laser', - AGILITY: 'Beweglichkeit', - ALPHA: 'Alpha', - AMMO: 'Munition', - ANACONDA: 'Anaconda', - PHRASE_CONFIRMATION: 'Sind Sie sicher?', - ARMOUR: 'Panzerung', - ASP_EXPLORER: 'Asp Explorer', - am: 'Automatische Feldwartungseinheit', - AVAILABLE: 'Verfügbar', - BACKUP: 'Sicherungsdatei', - 'Basic Discovery Scanner': 'Einfacher Aufklärungsscanner', - bl: 'Strahlenlaser', - BELUGA_LINER: 'Beluga Liner', - BETA: 'beta', - BINS: 'Behälter', - BOOST: 'Boost', - BUILD: 'Konfiguration', - BUILD_NAME: 'Konfigurationsname', - BUILDS: 'Konfigurationen', - BULKHEADS: 'Rumpfhüllenverstärkung', - ul: 'Salvenlaser', - BUY: 'Kaufen', - CANCEL: 'Abbrechen', - c: 'Kanone', - CAPITAL: 'kapital', - CARGO: 'Fracht', - CARGO_HATCH: 'Frachtluke', - cr: 'Frachtgestell', - cs: 'Frachtscanner', - CELLS: 'Zellen', - CHAFF_LAUNCHER: 'Düppel-Werfer', - CLOSE: 'Schließen', - COBRA_MK_III: 'Cobra MK III', - COBRA_MK_IV: 'Cobra MK IV', - cc: 'Krallensteuerung: Sammler', - COMPARE: 'Vergleichen', - COMPARE_ALL: 'Alles Vergleichen', - COMPARISON: 'Vergleich', - COMPARISONS: 'Vergleiche', - COMPONENT: 'Komponente', - COST: 'Kostet', - COSTS: 'Kosten', - cm: 'Gegenmaßnahme', - CR: 'CR', - CREATE: 'Erstellen', - CREATE_NEW: 'Neu Erstellen', - CREDITS: 'Credits', - Cytoscrambler: 'Zytostreuer', - DAMAGE: 'Schaden', - DELETE: 'Löschen', - DELETE_ALL: 'Alles Löschen', - DEP: 'Ausg', - DEPLOYED: 'Ausgefahren', - DETAILED_EXPORT: 'Detailiertes Exportieren', - 'Detailed Surface Scanner': 'Detailoberflächenscanner', - DIAMONDBACK_EXPLORER: 'Diamondback-Erkunder', - DIAMONDBACK_SCOUT: 'Diamondback-Aufklärer', - DISABLED: 'Deaktiviert', - DISCOUNT: 'Rabatt', - Distruptor: 'Disruptor', - dc: 'Standard-Landecomputer', - DOLPHIN: 'Dolphin', - DONE: 'Fertig', - DPS: 'DPS', - EAGLE: 'Eagle', - EDIT_DATA: 'Bearbeiten', - EFFICIENCY: 'Effizienz', - 'Electronic Countermeasure': 'Elektronische Gegenmaßnahme', - EMPTY: 'leer', - ENFORCER: 'Vollstrecker', - ENG: 'FAH', - PHRASE_ENTER_BUILD_NAME: '', - EPS: 'en/s', - EXPORT: 'Exportieren', - FEDERAL_CORVETTE: 'Föderale Korvette', - FEDERAL_DROPSHIP: 'Föderales Abwurfschiff', - FEDERAL_DROPSHIP_MK_II: 'Föderales Abwurfschiff Mk II', - FEDERAL_GUNSHIP: 'Föderales Kanonenschiff', - FER_DE_LANCE: 'Fer-de-Lance', - FIXED: '', - FORUM: 'Forum', - fc: 'Splitterkanone', - fd: 'Frameshift-Antrieb', - ws: 'Sogwolkenscanner', - FSD: 'FSA', - fi: 'FSA-Unterbrecher', - FUEL: 'Treibstoff', - fs: 'Treibstoffsammler', - ft: 'Treibstofftank', - fx: 'Krallensteuerung Treibstoffstransfer', - FULL_TANK: 'Tank voll', - GIMBALLED: 'Kardianisch', - H: 'H', - HARDPOINTS: 'Waffenaufhängungen', - hb: 'Krallen-Steuereinheit (Ladelukenöffner)', - HAULER: 'Hauler', - 'Heat Sink Launcher': 'Kühlkörperwerfer', - HUGE: 'Riesig', - HULL: 'Hülle', - hr: 'Rumpfhüllenverstärkung (Paket)', - IMPERIAL_CLIPPER: 'Imperialer Clipper', - IMPERIAL_COURIER: 'Imperialer Kurier', - IMPERIAL_CUTTER: 'Imperialer Cutter', - IMPERIAL_EAGLE: 'Imperialer Eagle', - IMPERIAL_HAMMER: 'Imperialer Hammer', - IMPORT: 'Importieren', - IMPORT_ALL: 'Alles Importieren', - INSURANCE: 'Versicherung', - 'Intermediate Discover Scanner': 'Mittlerer Aufklärungsscanner', - INTERNAL_COMPARTMENTS: 'Innenbereichkabine', - JUMP_RANGE: 'Sprungreichweite', - JUMPS: 'Sprünge', - kw: 'Tötungsbefehlscanner', - KRAIT: 'Krait', - L: 'L', - LADEN: 'Beladen', - LANGUAGE: 'Sprache', - LARGE: 'Groß', - ls: 'Lebenserhaltung', - 'Lightweight Alloy': 'Leichte Legierung', - LOCK_FACTOR: 'Massensperrefaktor', - LS: 'LS', - LY: 'LJ', - M: 'M', - 'm/s': 'M/Sec.', - MASS: 'Masse', - MAX: 'max', - MAX_MASS: 'maximale Masse', - MEDIUM: 'Mittel', - 'Military Grade Composite': 'Militär-Komposit', - nl: 'Minenwerfer', - 'Mining Lance': 'Lanzenabbaulaser', - ml: 'Abbaulaser', - 'Mirrored Surface Composite': 'Gespiegelte-Oberfläche-Komposit', - mr: 'Raketenbatterie', - mc: 'Mehrfachgeschütz', - NET_COST: 'Nettokosten', - NO: 'Nein', - NO_RETROFITTING_CHANGES: 'Keine Umrüständerungen', - NONE: 'Nichts', - NONE_CREATED: 'Nichts erstellt', - OFF: 'Aus', - ON: 'An', - OPTIMAL: 'optimal', - OPTIMAL_MASS: 'optimale Masse', - OPTIMIZE_MASS: 'Masse optimieren', - ORCA: 'Orca', - OVERWRITE: 'Überschreiben', - Pacifier: 'Friedensstifter', - 'Pack-Hound': 'Schwarmwerfer', - PANTHER_CLIPPER: 'Panter Clipper', - PHRASE_IMPORT: 'JSON hier einfügen oder hier importieren', - PEN: 'Durchdr', - PENETRATION: 'Durchdringung', - PERMALINK: 'Permalink', - pa: 'Plasmabeschleuniger', - POINT_DEFENCE: 'Punktverteidigung', - POWER: 'Energie', - pd: 'Energieverteiler', - pp: 'Kraftwerk', - PRI: 'Prio', - PRIORITY: 'Priorität', - psg: 'Prismaschildgenerator', - PROCEED: 'Fortfahren', - pc: 'Krallensteuerung: Erzsucher', - pl: 'Impulslaser', - PWR: 'En', - PYTHON: 'Python', - rg: 'Schienenkanone', - RANGE: 'Reichweite', - RATE: 'Rate', - 'Reactive Surface Composite': 'Reaktive-Oberfläche-Komposit', - RECHARGE: 'Aufladen', - rf: 'Raffinerie', - REFUEL_TIME: 'Auftankzeit', - 'Reinforced Alloy': 'Verstärkte Legierungen', - RELOAD: 'Aktualisieren', - RENAME: 'Umbenennen', - REPAIR: 'Reparieren', - RESET: 'Zurücksetzen', - RET: 'eing', - RETRACTED: 'Eingefahren', - RETROFIT_COSTS: 'Nachrüstkosten', - RETROFIT_FROM: 'Nachrüsten von', - ROF: 'Kad', - S: 'S', - SAVE: 'Speichern', - sc: 'Scanner', - PHRASE_SELECT_BUILDS: 'Wähle Konfigurationen zum Vergleichen', - SELL: 'Verkaufen', - s: 'Sensoren', - SETTINGS: 'Konfiguration', - sb: 'Schildverstärker', - scb: 'Schildzellenbank', - sg: 'Schildgenerator', - SHIELDS: 'Schilde', - SHIP: 'Schiff', - SHIPS: 'Schiffe', - SHORTENED: 'Gekürzt', - SIDEWINDER: 'Sidewinder', - SIZE: 'Größe', - SKIP: 'Überspringen', - SMALL: 'S', - SPEED: 'Geschwindigkeit', - STANDARD: 'Standard', - STANDARD_DOCKING_COMPUTER: 'Landecomputer', - STOCK: 'Standard', - SYS: 'SYS', - T: 'T', - T_LOAD: 'T-Lad', - THE_HUNTER: 'The Hunter', - 'The Retributor': 'Retributor', - t: 'Schubdüsen', - TIME: 'Dauer', - tp: 'Torpedoaufhängung', - TOTAL: 'Gesamt', - TOTAL_RANGE: 'Maximale Reichweite', - TURRET: 'Geschützturm', - TYPE: 'Typ', - TYPE_6_TRANSPORTER: 'Typ-6 Transporter', - TYPE_7_TRANSPORTER: 'Typ-7 Transporter', - TYPE_9_HEAVY: 'Typ-9 Transporter (schwer)', - U: 'U', - UNLADEN: 'Unbeladen', - UPDATE_NOTIFICATION: 'Update verfügbar! Klicken zum Aktualisieren', - URL: 'URL', - UTILITY: 'Werkzeug', - UTILITY_MOUNTS: 'Werkzeug-Steckplatz', - VERSION: 'Version', - VIPER: 'Viper', - VULTURE: 'Vulture', - WEP: 'WAF', - YES: 'Ja' + 'PHRASE_EXPORT_DESC': 'Una detallada exportaci\u00f3n JSON de tu construcci\u00f3n para usarlo en otros sitios web y herramientas', + 'A-Rated': 'Calidad-A', + 'about': 'Acerca', + 'action': 'Acci\u00f3n', + 'added': 'A\u00f1adido', + 'Advanced Discovery Scanner': 'Esc\u00e1ner de exploraci\u00f3n avanzado', + 'agility': 'Maniobrabilidad', + 'alpha': 'Alfa', + 'ammo': 'Munici\u00f3n', + 'PHRASE_CONFIRMATION': '\u00bfEst\u00e1s seguro?', + 'armour': 'Blindaje', + 'am': 'Unidad de auto-reparaciones', + 'available': 'Disponible', + 'backup': 'Reserva', + 'Basic Discovery Scanner': 'Esc\u00e1ner de exploraci\u00f3n b\u00e1sico', + 'bl': 'L\u00e1ser de haz', + 'bins': 'contenedores', + 'boost': 'incrementar', + 'build': 'Construcci\u00f3n', + 'build name': 'Nombre de la construcci\u00f3n', + 'builds': 'Construcciones', + 'bh': 'mamparos', + 'ul': 'Laser de r\u00e1fagas', + 'buy': 'Comprar', + 'cancel': 'Cancelar', + 'c': 'Ca\u00f1\u00f3n', + 'capital': 'capital', + 'cargo': 'Carga', + 'Cargo Hatch': 'Compuerta de carga', + 'cr': 'Compartimento de carga', + 'cs': 'Esc\u00e1ner de carga', + 'cells': 'celdas', + 'Chaff Launcher': 'Lanzador de birutas', + 'close': 'Cerrar', + 'cc': 'Controlador de Drones de Recogida', + 'compare': 'Comparar', + 'compare all': 'comparar todas', + 'comparison': 'Comparativa', + 'comparisons': 'Comparativas', + 'component': 'Componente', + 'cost': 'Coste', + 'costs': 'Costes', + 'cm': 'Contramedidas', + 'create': 'Crear', + 'create new': 'Crear nuevo', + 'credits': 'Cr\u00e9ditos', + 'damage': 'Da\u00f1o', + 'delete': 'Borrar', + 'delete all': 'Borrar todo', + 'dep': 'desp', + 'deployed': 'Desplegado', + 'detailed export': 'Exportacion detallada', + 'Detailed Surface Scanner': 'Escaner de exploraci\u00f3n detallada', + 'disabled': 'Desactivado', + 'discount': 'Descuento', + 'dc': 'Ordenador de aterrizaje', + 'done': 'Hecho', + 'DPS': 'DPS (Da\u00f1o Por Segundo)', + 'edit data': 'Editar datos', + 'efficiency': 'Eficiencia', + 'Electronic Countermeasure': 'Contramedidas electr\u00f3nicas', + 'empty': 'Vac\u00edo', + 'ENG': 'MOT', + 'enter name': 'Introduce el nombre', + 'export': 'exportar', + 'fixed': 'fijo', + 'forum': 'Foro', + 'fc': 'Ca\u00f1\u00f3n de fragmentaci\u00f3n', + 'fd': 'Motor de salto', + 'ws': 'Esc\u00e1ner de Salto', + 'fi': 'Interdictor FSD', + 'fuel': 'Combustible', + 'fs': 'Recolector de Combustible', + 'ft': 'Tanque de combustible', + 'fx': 'Sistema de Transferencia de Combustilble', + 'full tank': 'Tanque lleno', + 'Gimballed': 'Card\u00e1n', + 'H': 'E', + 'hardpoints': 'Montura de armas', + 'hb': 'Controlador de Apertura de Bah\u00eda de Carga', + 'Heat Sink Launcher': 'Eyector de Acumulador de Calor', + 'huge': 'enorme', + 'hull': 'Casco', + 'hr': 'Sistema de Casco Reforzado', + 'import': 'Importar', + 'import all': 'Importar todo', + 'insurance': 'Seguro', + 'Intermediate Discovery Scanner': 'Esc\u00e1ner de exploraci\u00f3n media', + 'internal compartments': 'Compartimentos internos', + 'jump range': 'Rango de salto', + 'jumps': 'Saltos', + 'kw': 'Esc\u00e1ner Detector de Recompensas', + 'L': 'G', + 'laden': 'Cargada', + 'language': 'Idioma', + 'large': 'Grande', + 'ls': 'Soporte vital', + 'Lightweight Alloy': 'Aleaci\u00f3n ligera', + 'lock factor': 'factor de bloqueo', + 'mass': 'Masa', + 'max': 'm\u00e1x', + 'max mass': 'Masa m\u00e1xima', + 'medium': 'medio', + 'Military Grade Composite': 'Blindaje Militar', + 'nl': 'Lanzaminas', + 'Mining Lance': 'Lanza de miner\u00eda', + 'ml': 'L\u00e1ser de miner\u00eda', + 'Mirrored Surface Composite': 'Blindaje Reflectante', + 'mr': 'Bah\u00eda de Misiles', + 'mc': 'Ca\u00f1\u00f3n m\u00faltiple', + 'net cost': 'Coste neto', + 'PHRASE_NO_BUILDS': '\u00a1No se a\u00f1adieron plantillas para comparaci\u00f3n!', + 'PHRASE_NO_RETROCH': 'No hay cambios en los ajutes', + 'none': 'Nada', + 'none created': 'Nada creado', + 'off': 'apagado', + 'on': 'encendido', + 'optimal': '\u00f3ptimo', + 'optimal mass': 'masa \u00f3ptima', + 'optimize mass': 'optimizar masa', + 'overwrite': 'Sobreescribir', + 'PHRASE_IMPORT': 'Pega el JSON o imp\u00f3rtalo aqu\u00ed', + 'penetration': 'penetraci\u00f3n', + 'permalink': 'enlace permanente', + 'pa': 'Acelerador de Plasma', + 'Point Defence': 'Punto de Defensa', + 'power': 'energ\u00eda', + 'pd': 'distribuidor de energ\u00eda', + 'pp': 'Planta de Energ\u00eda', + 'priority': 'prioridad', + 'proceed': 'Proceder', + 'pc': 'Controlador de drones de prospecci\u00f3n', + 'pl': 'L\u00e1ser de Pulso', + 'PWR': 'POT', + 'rg': 'Ca\u00f1\u00f3n de Riel', + 'range': 'rango', + 'rate': 'ratio', + 'Reactive Surface Composite': 'Blindaje Reactivo', + 'recharge': 'recargar', + 'rf': 'Refineria', + 'refuel time': 'Tiempo para repostar', + 'Reinforced Alloy': 'Armadura reforzada', + 'reload': 'Recargar', + 'rename': 'Renombrar', + 'repair': 'Reparar', + 'reset': 'Reiniciar', + 'ret': 'PLE', + 'retracted': 'plegadas', + 'retrofit costs': 'costes de equipamiento', + 'retrofit from': 'equipamiento desde', + 'ROF': 'RDF', + 'S': 'P', + 'save': 'guardar', + 'sc': 'sc\u00e1ner', + 'PHRASE_SELECT_BUILDS': 'Selecciona equipamientos para comparar', + 'sell': 'Vender', + 's': 'Sensores', + 'settings': 'Configuraci\u00f3n', + 'sb': 'Potenciador de Escudos', + 'scb': 'C\u00e9lula de Energ\u00eda de Escudos', + 'sg': 'Generador de escudos', + 'shields': 'Escudos', + 'ship': 'Nave ', + 'ships': 'Naves', + 'shortened': 'Abreviado', + 'size': 'Tama\u00f1o', + 'skip': 'omitir', + 'small': 'Peque\u00f1o', + 'speed': 'velocidad', + 'standard': 'est\u00e1ndar', + 'Standard Docking Computer': 'Computador de Atraque Est\u00e1ndar', + 'Stock': 'De serie', + 'SYS': 'SIS', + 'T_LOAD': 'c-t\u00e9rmica', + 't': 'Propulsores', + 'time': 'Tiempo', + 'tp': 'Anclaje de torpedo', + 'total': 'Total', + 'total range': 'Rango total', + 'turret': 'torreta', + 'type': 'Tipo', + 'unladen': 'Sin carga', + 'PHRASE_UPDATE_RDY': 'Actualizacion disponible! Haz click para recargar', + 'URL': 'Enlace', + 'utility': 'utilidad', + 'utility mounts': 'monturas de utilidad', + 'version': 'Versi\u00f3n', + 'WEP': 'ARM', + 'yes': 'si', + 'PHRASE_BACKUP_DESC': 'Copia de seguridad de todos los datos de Coriolis para guardarlos o transferirlos a otro navegador\/dispositivo' }); }]); diff --git a/app/js/i18n/fr.js b/app/js/i18n/fr.js index 23260ac7..8bfbf5db 100644 --- a/app/js/i18n/fr.js +++ b/app/js/i18n/fr.js @@ -20,17 +20,17 @@ angular.module('app').config(['$translateProvider', 'localeFormatProvider', func about: 'à propos', added: 'ajouté', Advanced: 'Avancé', - 'Advanced Discovery Scanner': 'Scanner de découverte avancé', + 'Advanced Discovery Scanner': 'Détecteur découverte avancé', agility: 'manœuvrabilité', ammo: 'munitions', PHRASE_CONFIRMATION: 'Êtes-vous sûr ?', armour: 'Armure', - am: 'Unité de réparation automatique', + am: 'Unité de maintenance de terrain auto', available: 'Disponibilité', backup: 'sauvegarde', - 'Basic Discovery Scanner': 'Scanner de découverte simple', + 'Basic Discovery Scanner': 'Détecteur découverte simple', bl: 'Rayon Laser', - bins: 'bacs', + bins: 'bennes', build: 'Configuration', 'build name': 'Nom de la configuration', builds: 'Configurations', @@ -40,9 +40,9 @@ angular.module('app').config(['$translateProvider', 'localeFormatProvider', func cancel: 'Annuler', c: 'Canon', cargo: 'Soute', - 'Cargo Hatch': 'Ecoutille de soute', + 'Cargo Hatch': 'Écoutille de soute', cr: 'Compartiment de soute', - cs: 'Scanner de soute', + cs: 'Détecteur de cargaison', cells: 'Cellules', 'Chaff Launcher': 'Lanceur de paillettes', close: 'fermer', @@ -64,15 +64,15 @@ angular.module('app').config(['$translateProvider', 'localeFormatProvider', func dep: 'depl', deployed: 'déployé', 'detailed export': 'export détaillé', - 'Detailed Surface Scanner': 'Scanner de surface détaillé', + 'Detailed Surface Scanner': 'Détecteur surface détaillé', disabled: 'désactivé', discount: 'réduction', Distruptor: 'Disrupteur', dc: 'Ordinateur d\'appontage', done: 'Valider', 'edit data': 'Editer donnée', - efficiency: 'efficience', - 'Electronic Countermeasure': 'Contre mesure électronique', + efficiency: 'efficacité', + 'Electronic Countermeasure': 'Contre-mesures électroniques', empty: 'Vide', 'enter name': 'Entrer un nom', fixed: 'fixé', @@ -83,28 +83,28 @@ angular.module('app').config(['$translateProvider', 'localeFormatProvider', func fuel: 'carburant', fs: 'Récupérateur de carburant', ft: 'Réservoir de carburant', - fx: 'Drone de ravitaillement', + fx: 'Contrôleur de ravitailleur', 'full tank': 'Réservoir plein', Gimballed: 'Point', hardpoints: 'Points d\'emport', hb: 'Contrôle de patelle perce-soute', - 'Heat Sink Launcher': 'Ejecteur de dissipateur thermique', + 'Heat Sink Launcher': 'Éjecteur de dissipateur thermique', huge: 'Très grand', hull: 'Coque', - hr: 'Renfort de soute', + hr: 'Ensemble de mesures permettant de', 'Imperial Hammer': 'Marteau impérial', import: 'Importer', 'import all': 'Importer tout', insurance: 'Assurance', - 'Intermediate Discovery Scanner': 'Scanner de découverte intermédiaire', + 'Intermediate Discovery Scanner': 'Détecteur découverte intermédiaire', 'internal compartments': 'compartiments internes', 'jump range': 'Distance de saut', jumps: 'Sauts', kw: 'Détecteur d\'avis de recherche', laden: 'chargé', - language: 'Langage', + language: 'Langue', large: 'large', - ls: 'Support vital', + ls: 'Systèmes de survie', 'Lightweight Alloy': 'alliage léger', 'lock factor': 'facteur inhibition de masse', LS: 'SL', @@ -115,8 +115,8 @@ angular.module('app').config(['$translateProvider', 'localeFormatProvider', func nl: 'Lance-mines', 'Mining Lance': 'Lance de minage', ml: 'Laser minier', - 'Mirrored Surface Composite': 'Composite à surface mirroir', - mr: 'Lance missiles', + 'Mirrored Surface Composite': 'Composite à surface miroir', + mr: 'Batterie de missiles', mc: 'Canon multiple', 'net cost': 'coûts nets', no: 'non', @@ -137,15 +137,15 @@ angular.module('app').config(['$translateProvider', 'localeFormatProvider', func pa: 'accélérateur plasma', 'Point Defence': 'Défense ponctuelle', power: 'énergie', - pd: 'distributeur d\'énérgie', - pp: 'centrale d\'énergie', + pd: 'Répartiteur de puissance', + pp: 'Générateur', priority: 'priorité', psg: 'générateur de bouclier prisme', proceed: 'continuer', - pc: 'Drône de minage', + pc: 'Contrôleur de prospecteur', pl: 'Laser à impulsion', PWR: 'P', - rg: 'Canon électromagnétique', + rg: 'Canon électrique', range: 'portée', rate: 'cadence', 'Reactive Surface Composite': 'Composite à surface réactive', @@ -166,7 +166,7 @@ angular.module('app').config(['$translateProvider', 'localeFormatProvider', func sc: 'scanner', PHRASE_SELECT_BUILDS: 'Sélectionner les configurations à comparer', sell: 'vendre', - s: 'détecteurs', + s: 'Capteurs', settings: 'paramètres', sb: 'Survolteur de bouclier', scb: 'Réserve de cellules d\'énergie', @@ -179,9 +179,9 @@ angular.module('app').config(['$translateProvider', 'localeFormatProvider', func skip: 'Suivant', small: 'petit', speed: 'vitesse', - 'Standard Docking Computer': 'ordinateur amarrage standard', + 'Standard Docking Computer': 'Ordinateur d\'appontage standard', Stock: 'de base', - T_LOAD: 'degrés', + T_LOAD: 'Charge thermique', 'The Retributor': 'Le Rétributeur', t: 'propulseurs', time: 'temps', @@ -189,7 +189,7 @@ angular.module('app').config(['$translateProvider', 'localeFormatProvider', func 'total range': 'Distance maximale', turret: 'tourelle', unladen: 'Non chargé', - PHRASE_UPDATE_RDY: 'Mise à jour disponible ! Cliquez pour rafraichir', + PHRASE_UPDATE_RDY: 'Mise à jour disponible ! Cliquez ici pour mettre à jour', utility: 'utilitaire', 'utility mounts': 'Support utilitaire', WEP: 'ARM', diff --git a/app/js/i18n/it.js b/app/js/i18n/it.js index 258a322f..38851e72 100644 --- a/app/js/i18n/it.js +++ b/app/js/i18n/it.js @@ -1,218 +1,133 @@ -angular.module('app').config(['$translateProvider', function($translateProvider) { +angular.module('app').config(['$translateProvider', 'localeFormatProvider', function($translateProvider, localeFormatProvider) { - $translateProvider - .translations('it', { - PHRASE_EXPORT_DESC: 'Un export dettagliato in formato JSON della tua configurazione per essere usato in altri siti o tools', - 'A-Rated': 'Classe A', - about: 'Info su Coriolis', - action: 'azione', - added: 'aggiunto', - Advanced: 'Avanzato', - 'Advanced Discovery Scanner': 'Advanced Discovery Scanner', - agility: 'agilità', - alpha: 'alpha', - ammo: 'munizioni', - PHRASE_CONFIRMATION: 'Sei sicuro ?', - armour: 'armatura', - am: 'Auto Field-Maintenance Unit', - available: 'disponibile', - backup: 'backup', - 'Basic Discovery Scanner': 'Basic Discovery Scanner', - bl: 'Beam Laser', - beta: 'beta', - bins: 'contenitore', - boost: 'boost', - build: 'configurazione', - 'build name': 'Nome Configurazione', - builds: 'configurazioni', - bh: 'bulkheads', - ul: 'Burst Laser', - buy: 'compra', - cancel: 'cancella', - c: 'Cannon', - capital: 'capital', - cargo: 'cargo', - 'Cargo Hatch': 'Cargo Hatch', - cr: 'Cargo Rack', - cs: 'Cargo Scanner', - cells: 'celle', - 'Chaff Launcher': 'Chaff Launcher', - close: 'chiudi', - cc: 'Collector Limpet Controller', - compare: 'confronta', - 'compare all': 'confronta tutti', - comparison: 'comparazione', - comparisons: 'comparazioni', - component: 'componente', - cost: 'costo', - costs: 'costi', - cm: 'Contromisure', - CR: 'CR', - create: 'crea', - 'create new': 'crea nuovo', - credits: 'crediti', - Cytoscrambler: 'Cytoscrambler', - damage: 'danno', - delete: 'elimina', - 'delete all': 'elimina tutto', - dep: 'dep', - deployed: 'deployed', - 'detailed export': 'esportazione dettagliata', - 'Detailed Surface Scanner': 'Detailed Surface Scanner', - disabled: 'disabilita', - discount: 'sconto', - Distruptor: 'Distruptor', - dc: 'Docking Computer', - done: 'fatto', - DPS: 'DPS', - 'edit data': 'modifica i dati', - efficiency: 'efficenza', - 'Electronic Countermeasure': 'Electronic Countermeasure', - empty: 'vuoto', - Enforcer: 'Rinforzatore', - ENG: 'ENG', - 'enter name': 'Inserisci un nome', - EPS: 'EPS', - export: 'esporta', - fixed: 'fissi', - forum: 'forum', - fc: 'Fragment Cannon', - fd: 'Frame Shift Drive', - ws: 'Frame Shift Wake Scanner', - FSD: 'FSD', - fi: 'FSD Interdictor', - fuel: 'carburante', - fs: 'Fuel Scoop', - ft: 'Fuel Tank', - fx: 'Fuel Transfer Limpet Controller', - 'full tank': 'Serbatoio Pieno', - Gimballed: 'Gimballed', - H: 'H', - hardpoints: 'hardpoints', - hb: 'Hatch Breaker Limpet Controller', - 'Heat Sink Launcher': 'Heat Sink Launcher', - huge: 'enorme', - hull: 'corazza', - hr: 'Hull Reinforcement Package', - 'Imperial Hammer': 'Imperial Hammer', - import: 'importa', - 'import all': 'importa tutto', - insurance: 'assicurazione', - 'Intermediate Discovery Scanner': 'Intermediate Discovery Scanner', - 'internal compartments': 'compartimenti interni', - 'jump range': 'distanza di salto', - jumps: 'salti', - kw: 'Kill Warrant Scanner', - L: 'L', - laden: 'carico', - language: 'lingua', - large: 'largo', - ls: 'life support', - 'Lightweight Alloy': 'Lightweight Alloy', - 'lock factor': 'lock factor', - LS: 'Ls', - LY: 'LY', - M: 'M', - 'm/s': 'm/s', - mass: 'massa', - max: 'massimo', - 'max mass': 'massa massimale', - medium: 'medio', - 'Military Grade Composite': 'Military Grade Composite', - nl: 'Mine Launcher', - 'Mining Lance': 'Mining Lance', - ml: 'Mining Laser', - 'Mirrored Surface Composite': 'Mirrored Surface Composite', - mr: 'Missile Rack', - mc: 'Multi-cannon', - 'net cost': 'costo netto', - no: 'no', - PHRASE_NO_BUILDS: 'nessuna configurazione è stata aggiunta per la comparazione!', - PHRASE_NO_RETROCH: 'Nessun cambiamento di Retrofitting', - none: 'nessuno', - 'none created': 'nessuno creato', - off: 'off', - on: 'on', - optimal: 'ottimale', - 'optimal mass': 'massa ottimale', - 'optimize mass': 'ottimizza la massa', - overwrite: 'sovrasscrivi', - Pacifier: 'Pacifier', - 'Pack-Hound': 'Pack-Hound', - PHRASE_IMPORT: 'Incolla un JSON o importalo qua', - pen: 'pen', - penetration: 'penetrazione', - permalink: 'permalink', - pa: 'Plasma Accelerator', - 'Point Defence': 'Point Defence', - power: 'potenza', - pd: 'power distributor', - pp: 'power plant', - pri: 'pri', - priority: 'priorità', - psg: 'Prismatic Shield Generator', - proceed: 'procedi', - pc: 'Prospector Limpet Controller', - pl: 'Pulse Laser', - PWR: 'PWR', - rg: 'Rail Gun', - range: 'distanza', - rate: 'rateo', - 'Reactive Surface Composite': 'Reactive Surface Composite', - recharge: 'ricarica', - rf: 'Refinery', - 'refuel time': 'refuel time', - 'Reinforced Alloy': 'Reinforced Alloy', - reload: 'ricarica', - rename: 'rinomina', - repair: 'ripara', - reset: 'resetta', - ret: 'ret', - retracted: 'retratti', - 'retrofit costs': 'costi di retrofit', - 'retrofit from': 'retrofit da', - ROF: 'ROF', - S: 'S', - save: 'salva', - sc: 'scanner', - PHRASE_SELECT_BUILDS: 'Select Builds to Compare', - sell: 'vendi', - s: 'Sensors', - settings: 'impostazioni', - sb: 'Shield Booster', - scb: 'Shield Cell Bank', - sg: 'Shield Generator', - shields: 'scudi', - ship: 'nave', - ships: 'navi', - shortened: 'accorciato', - size: 'grandezza', - skip: 'salta', - small: 'piccolo', - speed: 'velocità', - standard: 'standard', - 'Standard Docking Computer': 'Standard Docking Computer', - Stock: 'appena comprata', - SYS: 'SYS', - T: 'T', - T_LOAD: 't-load', - 'The Retributor': 'The Retributor', - t: 'Motori', - time: 'tempo', - tp: 'Torpedo Pylon', - total: 'totale', - 'total range': 'distanza totale', - turret: 'turrette', - type: 'tipo', - U: 'U', - unladen: 'scarico', - PHRASE_UPDATE_RDY: 'Aggiornamenti disponibili ! Clicca per Aggiornare', - URL: 'URL', - utility: 'supporti', - 'utility mounts': 'supporti di utilità', - version: 'versione', - WEP: 'WEP', - yes: 'sì', - PHRASE_BACKUP_DESC: 'Esportazione di tutti i dati su Coriolis per salvarli o trasferirli in un altro Browser/dispositivo' - }); + // Declare number format settings + localeFormatProvider.addFormat('es', { + decimal: ',', + thousands: '.', + grouping: [3], + currency: ['€', ''], + dateTime: '%A %e %B %Y, %X', + date: '%d/%m/%Y', + time: '%H:%M:%S', + periods: ['AM', 'PM'], // unused + days: ['Domenica', 'Lunedì', 'Martedì', 'Mercoledì', 'Giovedì', 'Venerdì', 'Sabato'], + shortDays: ['Dom', 'Lun', 'Mar', 'Mer', 'Gio', 'Ven', 'Sab'], + months: ['Gennaio', 'Febbraio', 'Marzo', 'Aprile', 'Maggio', 'Giugno', 'Luglio', 'Agosto', 'Settembre', 'Ottobre', 'Novembre', 'Dicembre'], + shortMonths: ['Gen', 'Feb', 'Mar', 'Apr', 'Mag', 'Giu', 'Lug', 'Ago', 'Set', 'Ott', 'Nov', 'Dic'] + }); + + $translateProvider.translations('it', { + PHRASE_EXPORT_DESC: 'Un export dettagliato in formato JSON della tua configurazione per essere usato in altri siti o tools', + 'A-Rated': 'Classe A', + about: 'Info su Coriolis', + action: 'azione', + added: 'aggiunto', + Advanced: 'Avanzato', + agility: 'agilità', + ammo: 'munizioni', + PHRASE_CONFIRMATION: 'Sei sicuro ?', + armour: 'armatura', + available: 'disponibile', + bins: 'contenitore', + build: 'configurazione', + 'build name': 'Nome Configurazione', + builds: 'configurazioni', + buy: 'compra', + cancel: 'cancella', + cells: 'celle', + close: 'chiudi', + compare: 'confronta', + 'compare all': 'confronta tutti', + comparison: 'comparazione', + comparisons: 'comparazioni', + component: 'componente', + cost: 'costo', + costs: 'costi', + cm: 'Contromisure', + create: 'crea', + 'create new': 'crea nuovo', + credits: 'crediti', + damage: 'danno', + delete: 'elimina', + 'delete all': 'elimina tutto', + dep: 'dep', + deployed: 'deployed', + 'detailed export': 'esportazione dettagliata', + disabled: 'disabilita', + discount: 'sconto', + done: 'fatto', + 'edit data': 'modifica i dati', + efficiency: 'efficenza', + empty: 'vuoto', + Enforcer: 'Rinforzatore', + 'enter name': 'Inserisci un nome', + export: 'esporta', + fixed: 'fissi', + fuel: 'carburante', + 'full tank': 'Serbatoio Pieno', + huge: 'enorme', + hull: 'corazza', + import: 'importa', + 'import all': 'importa tutto', + insurance: 'assicurazione', + 'internal compartments': 'compartimenti interni', + 'jump range': 'distanza di salto', + jumps: 'salti', + laden: 'carico', + language: 'lingua', + large: 'largo', + mass: 'massa', + max: 'massimo', + 'max mass': 'massa massimale', + medium: 'medio', + 'net cost': 'costo netto', + PHRASE_NO_BUILDS: 'nessuna configurazione è stata aggiunta per la comparazione!', + PHRASE_NO_RETROCH: 'Nessun cambiamento di Retrofitting', + none: 'nessuno', + 'none created': 'nessuno creato', + optimal: 'ottimale', + 'optimal mass': 'massa ottimale', + 'optimize mass': 'ottimizza la massa', + overwrite: 'sovrasscrivi', + PHRASE_IMPORT: 'Incolla un JSON o importalo qua', + penetration: 'penetrazione', + power: 'potenza', + priority: 'priorità', + proceed: 'procedi', + range: 'distanza', + rate: 'rateo', + recharge: 'ricarica', + reload: 'ricarica', + rename: 'rinomina', + repair: 'ripara', + reset: 'resetta', + retracted: 'retratti', + 'retrofit costs': 'costi di retrofit', + 'retrofit from': 'retrofit da', + save: 'salva', + sell: 'vendi', + settings: 'impostazioni', + shields: 'scudi', + ship: 'nave', + ships: 'navi', + shortened: 'accorciato', + size: 'grandezza', + skip: 'salta', + small: 'piccolo', + speed: 'velocità', + Stock: 'appena comprata', + t: 'Motori', + time: 'tempo', + total: 'totale', + 'total range': 'distanza totale', + turret: 'turrette', + type: 'tipo', + unladen: 'scarico', + PHRASE_UPDATE_RDY: 'Aggiornamenti disponibili ! Clicca per Aggiornare', + utility: 'supporti', + 'utility mounts': 'supporti di utilità', + version: 'versione', + yes: 'sì', + PHRASE_BACKUP_DESC: 'Esportazione di tutti i dati su Coriolis per salvarli o trasferirli in un altro Browser/dispositivo' + }); }]); diff --git a/app/js/i18n/languages.js b/app/js/i18n/languages.js index 91e59fc9..ad57247a 100644 --- a/app/js/i18n/languages.js +++ b/app/js/i18n/languages.js @@ -3,12 +3,12 @@ angular.module('app').config(['$translateProvider', function($translateProvider) .useSanitizeValueStrategy('escapeParameters') .useStorage('Persist') .fallbackLanguage('en') // Use English as default/fallback language - .registerAvailableLanguageKeys(['en', 'de', 'it', 'fr', 'ru'], { // TODO: add 'es' to the array when ready + .registerAvailableLanguageKeys(['en', 'de', 'es', 'fr', 'it', 'ru'], { 'en*': 'en', 'de*': 'de', - 'it*': 'it', - //'es*': 'es', + 'es*': 'es', 'fr*': 'fr', + 'it*': 'it', 'ru*': 'ru' }) .determinePreferredLanguage(); @@ -17,7 +17,7 @@ angular.module('app').config(['$translateProvider', function($translateProvider) en: 'English', de: 'Deutsh', it: 'Italiano', - //es: 'Español', + es: 'Español', fr: 'Français', ru: 'ру́сский' }); diff --git a/app/js/shipyard/factory-ship.js b/app/js/shipyard/factory-ship.js index e89187a4..bae22d2b 100755 --- a/app/js/shipyard/factory-ship.js +++ b/app/js/shipyard/factory-ship.js @@ -398,7 +398,9 @@ angular.module('shipyard').factory('Ship', ['Components', 'calcShieldStrength', }; Ship.prototype.updateTopSpeed = function() { - this.topSpeed = calcSpeed(this.unladenMass + this.fuelCapacity, this.speed, this.common[1].c, this.pipSpeed)['4 Pips']; + var speeds = calcSpeed(this.unladenMass + this.fuelCapacity, this.speed, this.boost, this.common[1].c, this.pipSpeed); + this.topSpeed = speeds['4 Pips']; + this.topBoost = speeds.boost; }; Ship.prototype.updateShieldStrength = function() { diff --git a/app/js/shipyard/module-shipyard.js b/app/js/shipyard/module-shipyard.js index 779c50ad..514acadc 100755 --- a/app/js/shipyard/module-shipyard.js +++ b/app/js/shipyard/module-shipyard.js @@ -33,7 +33,7 @@ angular.module('shipyard', ['ngLodash']) sc: 'Scanner', am: 'Auto Field-Maintenance Unit', cr: 'Cargo Rack', - fi: 'FSD Interdictor', + fi: 'Frame Shift Drive Interdictor', hb: 'Hatch Breaker Limpet Controller', hr: 'Hull Reinforcement Package', rf: 'Refinery', @@ -87,7 +87,7 @@ angular.module('shipyard', ['ngLodash']) }, { // 1 title: 'speed', - props: ['topSpeed', 'boost'], + props: ['topSpeed', 'topBoost'], lbls: ['thrusters', 'boost'], unit: 'm/s', fmt: 'fCrd' @@ -233,16 +233,19 @@ angular.module('shipyard', ['ngLodash']) * * @param {number} mass Current mass of the ship * @param {number} baseSpeed Base speed m/s for ship + * @param {number} baseBoost Base boost speed m/s for ship * @param {object} thrusters The Thrusters used * @param {number} pipSpeed Speed pip multiplier * @return {object} Approximate speed by pips */ - .value('calcSpeed', function(mass, baseSpeed, thrusters, pipSpeed) { - var speed = baseSpeed * ((1 - thrusters.M) + (thrusters.M * Math.pow(3 - (2 * Math.max(0.5, mass / thrusters.optmass)), thrusters.P))); + .value('calcSpeed', function(mass, baseSpeed, baseBoost, thrusters, pipSpeed) { + var multiplier = mass > thrusters.maxmass ? 0 : ((1 - thrusters.M) + (thrusters.M * Math.pow(3 - (2 * Math.max(0.5, mass / thrusters.optmass)), thrusters.P))); + var speed = baseSpeed * multiplier; return { '0 Pips': speed * (1 - (pipSpeed * 4)), '2 Pips': speed * (1 - (pipSpeed * 2)), - '4 Pips': speed + '4 Pips': speed, + 'boost': baseBoost * multiplier }; }); diff --git a/app/less/charts.less b/app/less/charts.less index 814a79ee..13a6be5a 100755 --- a/app/less/charts.less +++ b/app/less/charts.less @@ -39,12 +39,14 @@ svg { fill: @primary-disabled; } - &.y { - text tspan:first-child { - fill: @primary; - } - } + } + .label { + text-transform: capitalize; + } + + .metric { + text-transform: none; } .marker { diff --git a/app/views/_slot-hardpoint.html b/app/views/_slot-hardpoint.html index 4ce689bc..14d211fc 100755 --- a/app/views/_slot-hardpoint.html +++ b/app/views/_slot-hardpoint.html @@ -12,6 +12,6 @@
{{'pen' | translate}}: {{hp.c.armourpen}}
+{{$r.fRPct(hp.c.shieldmul)}}
{{hp.c.range}} km
-
{{'ammo' | translate}}: {{$r.fCrd(hp.c.clip)}}/{{$r.fCrd(hp.c.ammo)}}
+
{{'ammo' | translate}}: {{$r.fCrd(hp.c.clip)}}+{{$r.fCrd(hp.c.ammo)}}
diff --git a/app/views/page-outfit.html b/app/views/page-outfit.html index 22ae0af7..69dc716f 100644 --- a/app/views/page-outfit.html +++ b/app/views/page-outfit.html @@ -67,7 +67,7 @@ 0 - {{fRound(ship.boost)}} m/s + {{fCrd(ship.topBoost)}} m/s 0 @@ -229,8 +229,8 @@ - - + + @@ -250,11 +250,19 @@ {{c.priority + 1}} - {{fPwr(c.c.power)}} - {{f1Pct(c.c.power/ship.powerAvailable)}} - - {{STATUS[statusRetracted(c)] | translate}} - {{STATUS[statusDeployed(c)] | translate}} + {{fPwr(c.c.power)}} + {{f1Pct(c.c.power/ship.powerAvailable)}} + + + {{'on' | translate}} + {{'off' | translate}} + + + + {{'on' | translate}} + {{'off' | translate}} + + diff --git a/data/components/hardpoints/missile_rack.json b/data/components/hardpoints/missile_rack.json index 2428e6ef..42c6de96 100755 --- a/data/components/hardpoints/missile_rack.json +++ b/data/components/hardpoints/missile_rack.json @@ -90,7 +90,7 @@ "name": "Pack-Hound", "class": 2, "rating": "B", - "cost": 1000832, + "cost": 768600, "mass": 4, "power": 1.2, "mode": "F", diff --git a/data/components/hardpoints/plasma_accelerator.json b/data/components/hardpoints/plasma_accelerator.json index ad9a9a07..1135a1d9 100755 --- a/data/components/hardpoints/plasma_accelerator.json +++ b/data/components/hardpoints/plasma_accelerator.json @@ -63,7 +63,7 @@ { "id": "Ap", "grp": "pa", - "name": "Advanced", + "name": "Advanced Plasma Accelerator", "class": 3, "rating": "B", "cost": 4119120, diff --git a/data/components/hardpoints/torpedo_pylon.json b/data/components/hardpoints/torpedo_pylon.json index 6294f97b..7c1a99cb 100755 --- a/data/components/hardpoints/torpedo_pylon.json +++ b/data/components/hardpoints/torpedo_pylon.json @@ -13,7 +13,7 @@ "thermload": 10, "grp": "tp", "clip": 1, - "ammo": 1, + "ammo": 0, "missile": "S" }, { @@ -29,7 +29,7 @@ "thermload": 10, "grp": "tp", "clip": 2, - "ammo": 1, + "ammo": 0, "missile": "S" } ] diff --git a/data/components/internal/shield_cell_bank.json b/data/components/internal/shield_cell_bank.json index aab828d8..42522002 100755 --- a/data/components/internal/shield_cell_bank.json +++ b/data/components/internal/shield_cell_bank.json @@ -1,44 +1,51 @@ { "scb": [ - { "id": "65", "grp": "scb", "class": 8, "rating": "E", "cost": 697584, "mass": 160, "power": 1.44, "cells": 6, "rechargeRating": "C", "recharge": 0 }, - { "id": "64", "grp": "scb", "class": 8, "rating": "D", "cost": 1743961, "mass": 64, "power": 1.92, "cells": 4, "rechargeRating": "C", "recharge": 0 }, - { "id": "63", "grp": "scb", "class": 8, "rating": "C", "cost": 4359903, "mass": 160, "power": 2.4, "cells": 5, "rechargeRating": "B", "recharge": 0 }, - { "id": "62", "grp": "scb", "class": 8, "rating": "B", "cost": 10899756, "mass": 256, "power": 2.88, "cells": 6, "rechargeRating": "A", "recharge": 0 }, - { "id": "61", "grp": "scb", "class": 8, "rating": "A", "cost": 27249391, "mass": 160, "power": 3.36, "cells": 5, "rechargeRating": "A", "recharge": 0 }, - { "id": "60", "grp": "scb", "class": 7, "rating": "E", "cost": 249137, "mass": 80, "power": 1.24, "cells": 6, "rechargeRating": "D", "recharge": 97 }, + { "id": "65", "grp": "scb", "class": 8, "rating": "E", "cost": 697584, "mass": 160, "power": 1.44, "cells": 6, "rechargeRating": "C", "recharge": 105 }, + { "id": "64", "grp": "scb", "class": 8, "rating": "D", "cost": 1743961, "mass": 64, "power": 1.92, "cells": 4, "rechargeRating": "C", "recharge": 140 }, + { "id": "63", "grp": "scb", "class": 8, "rating": "C", "cost": 4359903, "mass": 160, "power": 2.4, "cells": 5, "rechargeRating": "B", "recharge": 175 }, + { "id": "62", "grp": "scb", "class": 8, "rating": "B", "cost": 10899756, "mass": 256, "power": 2.88, "cells": 6, "rechargeRating": "A", "recharge": 210 }, + { "id": "61", "grp": "scb", "class": 8, "rating": "A", "cost": 27249391, "mass": 160, "power": 3.36, "cells": 5, "rechargeRating": "A", "recharge": 245 }, + + { "id": "60", "grp": "scb", "class": 7, "rating": "E", "cost": 249137, "mass": 80, "power": 1.24, "cells": 6, "rechargeRating": "D", "recharge": 95 }, { "id": "5v", "grp": "scb", "class": 7, "rating": "D", "cost": 622843, "mass": 32, "power": 1.66, "cells": 4, "rechargeRating": "C", "recharge": 130 }, - { "id": "5u", "grp": "scb", "class": 7, "rating": "C", "cost": 1557108, "mass": 80, "power": 2.07, "cells": 5, "rechargeRating": "B", "recharge": 163 }, - { "id": "5t", "grp": "scb", "class": 7, "rating": "B", "cost": 3892770, "mass": 128, "power": 2.48, "cells": 6, "rechargeRating": "B", "recharge": 197 }, - { "id": "5s", "grp": "scb", "class": 7, "rating": "A", "cost": 9731925, "mass": 80, "power": 2.9, "cells": 5, "rechargeRating": "A", "recharge": 230 }, - { "id": "5r", "grp": "scb", "class": 6, "rating": "E", "cost": 88978, "mass": 40, "power": 1.06, "cells": 6, "rechargeRating": "D", "recharge": 92 }, - { "id": "5q", "grp": "scb", "class": 6, "rating": "D", "cost": 222444, "mass": 16, "power": 1.42, "cells": 4, "rechargeRating": "C", "recharge": 120 }, - { "id": "5p", "grp": "scb", "class": 6, "rating": "C", "cost": 556110, "mass": 40, "power": 1.77, "cells": 5, "rechargeRating": "C", "recharge": 148 }, - { "id": "5o", "grp": "scb", "class": 6, "rating": "B", "cost": 1390275, "mass": 64, "power": 2.12, "cells": 6, "rechargeRating": "B", "recharge": 176 }, - { "id": "5n", "grp": "scb", "class": 6, "rating": "A", "cost": 3475688, "mass": 40, "power": 2.48, "cells": 5, "rechargeRating": "A", "recharge": 204 }, - { "id": "5m", "grp": "scb", "class": 5, "rating": "E", "cost": 31778, "mass": 20, "power": 0.9, "cells": 5, "rechargeRating": "D", "recharge": 82 }, - { "id": "5l", "grp": "scb", "class": 5, "rating": "D", "cost": 79444, "mass": 8, "power": 1.2, "cells": 3, "rechargeRating": "C", "recharge": 109 }, - { "id": "5k", "grp": "scb", "class": 5, "rating": "C", "cost": 198611, "mass": 20, "power": 1.5, "cells": 4, "rechargeRating": "C", "recharge": 135 }, - { "id": "5j", "grp": "scb", "class": 5, "rating": "B", "cost": 496527, "mass": 32, "power": 1.8, "cells": 5, "rechargeRating": "B", "recharge": 162 }, - { "id": "5i", "grp": "scb", "class": 5, "rating": "A", "cost": 1241317, "mass": 20, "power": 2.1, "cells": 4, "rechargeRating": "B", "recharge": 189 }, - { "id": "5h", "grp": "scb", "class": 4, "rating": "E", "cost": 11349, "mass": 10, "power": 0.74, "cells": 5, "rechargeRating": "D", "recharge": 72 }, - { "id": "5g", "grp": "scb", "class": 4, "rating": "D", "cost": 28373, "mass": 4, "power": 0.98, "cells": 3, "rechargeRating": "D", "recharge": 94 }, - { "id": "5f", "grp": "scb", "class": 4, "rating": "C", "cost": 70932, "mass": 10, "power": 1.23, "cells": 4, "rechargeRating": "C", "recharge": 117 }, + { "id": "5u", "grp": "scb", "class": 7, "rating": "C", "cost": 1557108, "mass": 80, "power": 2.07, "cells": 5, "rechargeRating": "B", "recharge": 160 }, + { "id": "5t", "grp": "scb", "class": 7, "rating": "B", "cost": 3892770, "mass": 128, "power": 2.48, "cells": 6, "rechargeRating": "B", "recharge": 195 }, + { "id": "5s", "grp": "scb", "class": 7, "rating": "A", "cost": 9731925, "mass": 80, "power": 2.9, "cells": 5, "rechargeRating": "A", "recharge": 225 }, + + { "id": "5r", "grp": "scb", "class": 6, "rating": "E", "cost": 88978, "mass": 40, "power": 1.06, "cells": 6, "rechargeRating": "D", "recharge": 90 }, + { "id": "5q", "grp": "scb", "class": 6, "rating": "D", "cost": 222444, "mass": 16, "power": 1.42, "cells": 4, "rechargeRating": "C", "recharge": 115 }, + { "id": "5p", "grp": "scb", "class": 6, "rating": "C", "cost": 556110, "mass": 40, "power": 1.77, "cells": 5, "rechargeRating": "C", "recharge": 145 }, + { "id": "5o", "grp": "scb", "class": 6, "rating": "B", "cost": 1390275, "mass": 64, "power": 2.12, "cells": 6, "rechargeRating": "B", "recharge": 175 }, + { "id": "5n", "grp": "scb", "class": 6, "rating": "A", "cost": 3475688, "mass": 40, "power": 2.48, "cells": 5, "rechargeRating": "A", "recharge": 205 }, + + { "id": "5m", "grp": "scb", "class": 5, "rating": "E", "cost": 31778, "mass": 20, "power": 0.9, "cells": 5, "rechargeRating": "D", "recharge": 80 }, + { "id": "5l", "grp": "scb", "class": 5, "rating": "D", "cost": 79444, "mass": 8, "power": 1.2, "cells": 3, "rechargeRating": "C", "recharge": 105 }, + { "id": "5k", "grp": "scb", "class": 5, "rating": "C", "cost": 198611, "mass": 20, "power": 1.5, "cells": 4, "rechargeRating": "C", "recharge": 130 }, + { "id": "5j", "grp": "scb", "class": 5, "rating": "B", "cost": 496527, "mass": 32, "power": 1.8, "cells": 5, "rechargeRating": "B", "recharge": 160 }, + { "id": "5i", "grp": "scb", "class": 5, "rating": "A", "cost": 1241317, "mass": 20, "power": 2.1, "cells": 4, "rechargeRating": "B", "recharge": 185 }, + + { "id": "5h", "grp": "scb", "class": 4, "rating": "E", "cost": 11349, "mass": 10, "power": 0.74, "cells": 5, "rechargeRating": "D", "recharge": 70 }, + { "id": "5g", "grp": "scb", "class": 4, "rating": "D", "cost": 28373, "mass": 4, "power": 0.98, "cells": 3, "rechargeRating": "D", "recharge": 90 }, + { "id": "5f", "grp": "scb", "class": 4, "rating": "C", "cost": 70932, "mass": 10, "power": 1.23, "cells": 4, "rechargeRating": "C", "recharge": 115 }, { "id": "5e", "grp": "scb", "class": 4, "rating": "B", "cost": 177331, "mass": 16, "power": 1.48, "cells": 5, "rechargeRating": "C", "recharge": 140 }, - { "id": "5d", "grp": "scb", "class": 4, "rating": "A", "cost": 443328, "mass": 10, "power": 1.72, "cells": 4, "rechargeRating": "B", "recharge": 163 }, - { "id": "5c", "grp": "scb", "class": 3, "rating": "E", "cost": 4053, "mass": 5, "power": 0.61, "cells": 5, "rechargeRating": "D", "recharge": 61 }, - { "id": "5b", "grp": "scb", "class": 3, "rating": "D", "cost": 10133, "mass": 2, "power": 0.82, "cells": 3, "rechargeRating": "D", "recharge": 80 }, - { "id": "5a", "grp": "scb", "class": 3, "rating": "C", "cost": 25333, "mass": 5, "power": 1.02, "cells": 4, "rechargeRating": "D", "recharge": 100 }, - { "id": "59", "grp": "scb", "class": 3, "rating": "B", "cost": 63333, "mass": 8, "power": 1.22, "cells": 5, "rechargeRating": "C", "recharge": 119 }, - { "id": "58", "grp": "scb", "class": 3, "rating": "A", "cost": 158331, "mass": 5, "power": 1.43, "cells": 4, "rechargeRating": "C", "recharge": 138 }, - { "id": "57", "grp": "scb", "class": 2, "rating": "E", "cost": 1448, "mass": 2.5, "power": 0.5, "cells": 5, "rechargeRating": "E", "recharge": 46 }, - { "id": "56", "grp": "scb", "class": 2, "rating": "D", "cost": 3619, "mass": 1, "power": 0.67, "cells": 3, "rechargeRating": "D", "recharge": 61 }, - { "id": "55", "grp": "scb", "class": 2, "rating": "C", "cost": 9048, "mass": 2.5, "power": 0.84, "cells": 4, "rechargeRating": "D", "recharge": 77 }, - { "id": "54", "grp": "scb", "class": 2, "rating": "B", "cost": 22619, "mass": 4, "power": 1.01, "cells": 5, "rechargeRating": "D", "recharge": 92 }, - { "id": "53", "grp": "scb", "class": 2, "rating": "A", "cost": 56547, "mass": 2.5, "power": 1.18, "cells": 4, "rechargeRating": "C", "recharge": 107 }, - { "id": "52", "grp": "scb", "class": 1, "rating": "E", "cost": 517, "mass": 1.3, "power": 0.41, "cells": 4, "rechargeRating": "E", "recharge": 31 }, - { "id": "51", "grp": "scb", "class": 1, "rating": "D", "cost": 1293, "mass": 0.5, "power": 0.55, "cells": 2, "rechargeRating": "E", "recharge": 41 }, - { "id": "50", "grp": "scb", "class": 1, "rating": "C", "cost": 3231, "mass": 1.3, "power": 0.69, "cells": 3, "rechargeRating": "D", "recharge": 51 }, - { "id": "4v", "grp": "scb", "class": 1, "rating": "B", "cost": 8078, "mass": 2, "power": 0.83, "cells": 4, "rechargeRating": "D", "recharge": 61 }, - { "id": "4u", "grp": "scb", "class": 1, "rating": "A", "cost": 20195, "mass": 1.3, "power": 0.97, "cells": 3, "rechargeRating": "D", "recharge": 72 } + { "id": "5d", "grp": "scb", "class": 4, "rating": "A", "cost": 443328, "mass": 10, "power": 1.72, "cells": 4, "rechargeRating": "B", "recharge": 160 }, + + { "id": "5c", "grp": "scb", "class": 3, "rating": "E", "cost": 4053, "mass": 5, "power": 0.61, "cells": 5, "rechargeRating": "D", "recharge": 60 }, + { "id": "5b", "grp": "scb", "class": 3, "rating": "D", "cost": 10133, "mass": 2, "power": 0.82, "cells": 3, "rechargeRating": "D", "recharge": 75 }, + { "id": "5a", "grp": "scb", "class": 3, "rating": "C", "cost": 25333, "mass": 5, "power": 1.02, "cells": 4, "rechargeRating": "D", "recharge": 95 }, + { "id": "59", "grp": "scb", "class": 3, "rating": "B", "cost": 63333, "mass": 8, "power": 1.22, "cells": 5, "rechargeRating": "C", "recharge": 115 }, + { "id": "58", "grp": "scb", "class": 3, "rating": "A", "cost": 158331, "mass": 5, "power": 1.43, "cells": 4, "rechargeRating": "C", "recharge": 135 }, + + { "id": "57", "grp": "scb", "class": 2, "rating": "E", "cost": 1448, "mass": 2.5, "power": 0.5, "cells": 5, "rechargeRating": "E", "recharge": 45 }, + { "id": "56", "grp": "scb", "class": 2, "rating": "D", "cost": 3619, "mass": 1, "power": 0.67, "cells": 3, "rechargeRating": "D", "recharge": 60 }, + { "id": "55", "grp": "scb", "class": 2, "rating": "C", "cost": 9048, "mass": 2.5, "power": 0.84, "cells": 4, "rechargeRating": "D", "recharge": 75 }, + { "id": "54", "grp": "scb", "class": 2, "rating": "B", "cost": 22619, "mass": 4, "power": 1.01, "cells": 5, "rechargeRating": "D", "recharge": 90 }, + { "id": "53", "grp": "scb", "class": 2, "rating": "A", "cost": 56547, "mass": 2.5, "power": 1.18, "cells": 4, "rechargeRating": "C", "recharge": 105 }, + + { "id": "52", "grp": "scb", "class": 1, "rating": "E", "cost": 517, "mass": 1.3, "power": 0.41, "cells": 4, "rechargeRating": "E", "recharge": 30 }, + { "id": "51", "grp": "scb", "class": 1, "rating": "D", "cost": 1293, "mass": 0.5, "power": 0.55, "cells": 2, "rechargeRating": "E", "recharge": 40 }, + { "id": "50", "grp": "scb", "class": 1, "rating": "C", "cost": 3231, "mass": 1.3, "power": 0.69, "cells": 3, "rechargeRating": "D", "recharge": 50 }, + { "id": "4v", "grp": "scb", "class": 1, "rating": "B", "cost": 8078, "mass": 2, "power": 0.83, "cells": 4, "rechargeRating": "D", "recharge": 60 }, + { "id": "4u", "grp": "scb", "class": 1, "rating": "A", "cost": 20195, "mass": 1.3, "power": 0.97, "cells": 3, "rechargeRating": "D", "recharge": 70 } ] } diff --git a/data/ships/adder.json b/data/ships/adder.json index 8216a76e..9aa3de28 100755 --- a/data/ships/adder.json +++ b/data/ships/adder.json @@ -6,7 +6,7 @@ "class": 1, "hullCost": 39993, "speed": 220, - "boost": 321, + "boost": 320, "boostEnergy": 9, "agility": 8, "baseShieldStrength": 60, diff --git a/data/ships/anaconda.json b/data/ships/anaconda.json index 7c271c26..cf9bc117 100755 --- a/data/ships/anaconda.json +++ b/data/ships/anaconda.json @@ -6,7 +6,7 @@ "class": 3, "hullCost": 141889932, "speed": 180, - "boost": 244, + "boost": 240, "boostEnergy": 29, "agility": 2, "baseShieldStrength": 350, diff --git a/data/ships/asp.json b/data/ships/asp.json index 77cf3fa9..c0c2b9b6 100755 --- a/data/ships/asp.json +++ b/data/ships/asp.json @@ -6,7 +6,7 @@ "class": 2, "hullCost": 6135658, "speed": 250, - "boost": 345, + "boost": 340, "boostEnergy": 14, "agility": 6, "baseShieldStrength": 140, diff --git a/data/ships/cobra_mk_iii.json b/data/ships/cobra_mk_iii.json index 039a142d..bf69e9d1 100755 --- a/data/ships/cobra_mk_iii.json +++ b/data/ships/cobra_mk_iii.json @@ -6,7 +6,7 @@ "class": 1, "hullCost": 235787, "speed": 280, - "boost": 402, + "boost": 400, "boostEnergy": 11, "agility": 6, "baseShieldStrength": 80, diff --git a/data/ships/diamondback.json b/data/ships/diamondback.json index 3d8d76be..004f474c 100644 --- a/data/ships/diamondback.json +++ b/data/ships/diamondback.json @@ -6,7 +6,7 @@ "class": 1, "hullCost": 461341, "speed": 283, - "boost": 384, + "boost": 380, "boostEnergy": 11, "agility": 8, "baseShieldStrength": 118, diff --git a/data/ships/diamondback_explorer.json b/data/ships/diamondback_explorer.json index ebd19e0b..9844db70 100644 --- a/data/ships/diamondback_explorer.json +++ b/data/ships/diamondback_explorer.json @@ -5,8 +5,8 @@ "manufacturer": "Lakon", "class": 1, "hullCost": 1635691, - "speed": 242, - "boost": 316, + "speed": 260, + "boost": 340, "boostEnergy": 14, "agility": 5, "baseShieldStrength": 146, diff --git a/data/ships/eagle.json b/data/ships/eagle.json index a396b5cb..dde32524 100755 --- a/data/ships/eagle.json +++ b/data/ships/eagle.json @@ -6,7 +6,7 @@ "class": 1, "hullCost": 10446, "speed": 240, - "boost": 349, + "boost": 350, "boostEnergy": 9, "agility": 10, "baseShieldStrength": 60, diff --git a/data/ships/federal_assault_ship.json b/data/ships/federal_assault_ship.json index 4cb8589c..0e203e7d 100644 --- a/data/ships/federal_assault_ship.json +++ b/data/ships/federal_assault_ship.json @@ -6,7 +6,7 @@ "class": 2, "hullCost": 19071993, "speed": 210, - "boost": 361, + "boost": 350, "boostEnergy": 21, "agility": 6, "baseShieldStrength": 200, diff --git a/data/ships/federal_dropship.json b/data/ships/federal_dropship.json index dd97b38b..ee813628 100755 --- a/data/ships/federal_dropship.json +++ b/data/ships/federal_dropship.json @@ -6,7 +6,7 @@ "class": 2, "hullCost": 18969990, "speed": 180, - "boost": 304, + "boost": 300, "boostEnergy": 21, "agility": 2, "baseShieldStrength": 200, diff --git a/data/ships/federal_gunship.json b/data/ships/federal_gunship.json index 76c5e42c..7d9185eb 100644 --- a/data/ships/federal_gunship.json +++ b/data/ships/federal_gunship.json @@ -4,9 +4,9 @@ "name": "Federal Gunship", "manufacturer": "Core Dynamics", "class": 2, - "hullCost": 44774591, + "hullCost": 34774801, "speed": 170, - "boost": 284, + "boost": 280, "boostEnergy": 21, "agility": 2, "baseShieldStrength": 250, @@ -15,7 +15,7 @@ "masslock": 14, "pipSpeed": 0.1025 }, - "retailCost": 45814000, + "retailCost": 35814210, "slots": { "common": [ 6, diff --git a/data/ships/fer_de_lance.json b/data/ships/fer_de_lance.json index 00e10769..4ebb6476 100755 --- a/data/ships/fer_de_lance.json +++ b/data/ships/fer_de_lance.json @@ -6,7 +6,7 @@ "class": 2, "hullCost": 51232230, "speed": 260, - "boost": 357, + "boost": 350, "boostEnergy": 21, "agility": 6, "baseShieldStrength": 300, diff --git a/data/ships/hauler.json b/data/ships/hauler.json index 17460b9b..5a86ce52 100755 --- a/data/ships/hauler.json +++ b/data/ships/hauler.json @@ -6,7 +6,7 @@ "class": 1, "hullCost": 29807, "speed": 200, - "boost": 305, + "boost": 300, "agility": 6, "boostEnergy": 7, "baseShieldStrength": 50, diff --git a/data/ships/imperial_clipper.json b/data/ships/imperial_clipper.json index 654f63d7..2b8d43a9 100755 --- a/data/ships/imperial_clipper.json +++ b/data/ships/imperial_clipper.json @@ -6,7 +6,7 @@ "class": 3, "hullCost": 21077784, "speed": 300, - "boost": 388, + "boost": 380, "boostEnergy": 21, "agility": 2, "baseShieldStrength": 180, diff --git a/data/ships/imperial_courier.json b/data/ships/imperial_courier.json index a1d3b251..cf936ab5 100644 --- a/data/ships/imperial_courier.json +++ b/data/ships/imperial_courier.json @@ -5,7 +5,7 @@ "manufacturer": "Gutamaya", "class": 1, "hullCost": 2481552, - "speed": 277, + "speed": 280, "boost": 380, "boostEnergy": 11, "agility": 6, diff --git a/data/ships/imperial_eagle.json b/data/ships/imperial_eagle.json index 273ed066..9c67b24f 100644 --- a/data/ships/imperial_eagle.json +++ b/data/ships/imperial_eagle.json @@ -6,7 +6,7 @@ "class": 1, "hullCost": 72186, "speed": 300, - "boost": 405, + "boost": 400, "boostEnergy": 9, "agility": 6, "baseShieldStrength": 80, diff --git a/data/ships/orca.json b/data/ships/orca.json index 6eb72b57..6517dabe 100755 --- a/data/ships/orca.json +++ b/data/ships/orca.json @@ -6,7 +6,7 @@ "class": 3, "hullCost": 47798079, "speed": 300, - "boost": 385, + "boost": 380, "boostEnergy": 17, "agility": 2, "baseShieldStrength": 220, diff --git a/data/ships/python.json b/data/ships/python.json index c7b903ce..4901996d 100755 --- a/data/ships/python.json +++ b/data/ships/python.json @@ -6,7 +6,7 @@ "class": 2, "hullCost": 55171395, "speed": 230, - "boost": 305, + "boost": 300, "boostEnergy": 24, "agility": 6, "baseShieldStrength": 260, diff --git a/data/ships/sidewinder.json b/data/ships/sidewinder.json index 23e4232f..793ca8e0 100755 --- a/data/ships/sidewinder.json +++ b/data/ships/sidewinder.json @@ -6,7 +6,7 @@ "class": 1, "hullCost": 12887, "speed": 220, - "boost": 321, + "boost": 320, "boostEnergy": 7, "agility": 8, "baseShieldStrength": 40, diff --git a/data/ships/type_6_transporter.json b/data/ships/type_6_transporter.json index 34178e37..187b7485 100755 --- a/data/ships/type_6_transporter.json +++ b/data/ships/type_6_transporter.json @@ -6,7 +6,7 @@ "class": 2, "hullCost": 865782, "speed": 220, - "boost": 355, + "boost": 350, "boostEnergy": 11, "agility": 3, "baseShieldStrength": 90, diff --git a/data/ships/type_7_transport.json b/data/ships/type_7_transport.json index 873b9c97..d225bc14 100755 --- a/data/ships/type_7_transport.json +++ b/data/ships/type_7_transport.json @@ -6,7 +6,7 @@ "class": 3, "hullCost": 16881511, "speed": 180, - "boost": 301, + "boost": 300, "boostEnergy": 11, "agility": 2, "baseShieldStrength": 120, diff --git a/data/ships/type_9_heavy.json b/data/ships/type_9_heavy.json index da5e8130..ff5a9fe2 100755 --- a/data/ships/type_9_heavy.json +++ b/data/ships/type_9_heavy.json @@ -6,7 +6,7 @@ "class": 3, "hullCost": 73255168, "speed": 130, - "boost": 201, + "boost": 200, "boostEnergy": 21, "agility": 0, "baseShieldStrength": 240, diff --git a/data/ships/viper.json b/data/ships/viper.json index c5057386..05fec76a 100755 --- a/data/ships/viper.json +++ b/data/ships/viper.json @@ -6,7 +6,7 @@ "class": 1, "hullCost": 95893, "speed": 320, - "boost": 388, + "boost": 380, "boostEnergy": 11, "agility": 6, "baseShieldStrength": 105, diff --git a/data/ships/vulture.json b/data/ships/vulture.json index 22738d33..036d98d0 100755 --- a/data/ships/vulture.json +++ b/data/ships/vulture.json @@ -6,7 +6,7 @@ "class": 1, "hullCost": 4689629, "speed": 210, - "boost": 348, + "boost": 340, "boostEnergy": 17, "agility": 9, "baseShieldStrength": 240, diff --git a/package.json b/package.json index 3ead8ad2..b80f6075 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "coriolis_shipyard", - "version": "1.6.0", + "version": "1.7.3", "repository": { "type": "git", "url": "https://github.com/cmmcleod/coriolis" diff --git a/test/fixtures/anaconda-test-detailed-export-v1.json b/test/fixtures/anaconda-test-detailed-export-v1.json index 7342e58b..ccc80860 100644 --- a/test/fixtures/anaconda-test-detailed-export-v1.json +++ b/test/fixtures/anaconda-test-detailed-export-v1.json @@ -179,7 +179,7 @@ { "class": 2, "rating": "A", - "group": "FSD Interdictor" + "group": "Frame Shift Drive Interdictor" } ] }, diff --git a/test/fixtures/anaconda-test-detailed-export-v2.json b/test/fixtures/anaconda-test-detailed-export-v2.json index e452599c..10eeb754 100644 --- a/test/fixtures/anaconda-test-detailed-export-v2.json +++ b/test/fixtures/anaconda-test-detailed-export-v2.json @@ -245,7 +245,7 @@ "rating": "A", "enabled": true, "priority": 3, - "group": "FSD Interdictor" + "group": "Frame Shift Drive Interdictor" } ] }, @@ -254,8 +254,9 @@ "hullCost": 141889932, "speed": 180, "topSpeed": 186.5, - "boost": 244, + "boost": 240, "boostEnergy": 29, + "topBoost": 248.66, "agility": 2, "baseShieldStrength": 350, "baseArmour": 945, diff --git a/test/fixtures/valid-detailed-export.json b/test/fixtures/valid-detailed-export.json index 778c3060..42e0f475 100644 --- a/test/fixtures/valid-detailed-export.json +++ b/test/fixtures/valid-detailed-export.json @@ -2188,7 +2188,7 @@ { "class": 2, "rating": "A", - "group": "FSD Interdictor" + "group": "Frame Shift Drive Interdictor" } ] }, @@ -2885,7 +2885,7 @@ { "class": 2, "rating": "A", - "group": "FSD Interdictor" + "group": "Frame Shift Drive Interdictor" } ] }, @@ -3145,7 +3145,7 @@ { "class": 1, "rating": "A", - "group": "FSD Interdictor" + "group": "Frame Shift Drive Interdictor" }, { "class": 1,