add guardian powerplant, gauss cannon and also plasma charger

This commit is contained in:
willyb321
2018-04-25 15:07:13 +10:00
parent f4cc9fc722
commit b14e7473f3
3 changed files with 27 additions and 5 deletions

View File

@@ -56,7 +56,11 @@ const GRPCAT = {
'ch': 'defence', 'ch': 'defence',
'po': 'defence', 'po': 'defence',
'ec': 'defence', 'ec': 'defence',
'sfn': 'defence' 'sfn': 'defence',
// Standard
'gpp': 'guardian',
'gpc': 'guardian',
'ggc': 'guardian'
}; };
// Order here is the order in which items will be shown in the modules menu // Order here is the order in which items will be shown in the modules menu
const CATEGORIES = { const CATEGORIES = {
@@ -82,7 +86,10 @@ const CATEGORIES = {
'defence': ['ch', 'po', 'ec'], 'defence': ['ch', 'po', 'ec'],
'scanners': ['sc', 'ss', 'cs', 'kw', 'ws'], // Overloaded with internal scanners 'scanners': ['sc', 'ss', 'cs', 'kw', 'ws'], // Overloaded with internal scanners
// Experimental // Experimental
'experimental': ['axmc', 'axmr', 'rfl', 'xs', 'sfn'] 'experimental': ['axmc', 'axmr', 'rfl', 'xs', 'sfn'],
// Guardian
'guardian': ['gpp', 'gpc', 'ggc']
}; };
/** /**
@@ -208,7 +215,7 @@ export default class AvailableModulesMenu extends TranslatedComponent {
* @return {React.Component} Available Module Group contents * @return {React.Component} Available Module Group contents
*/ */
_buildGroup(translate, mountedModule, warningFunc, mass, onSelect, grp, modules) { _buildGroup(translate, mountedModule, warningFunc, mass, onSelect, grp, modules) {
let prevClass = null, prevRating = null; let prevClass = null, prevRating = null, prevName;
let elems = []; let elems = [];
const sortedModules = modules.sort(this._moduleOrder); const sortedModules = modules.sort(this._moduleOrder);
@@ -223,6 +230,7 @@ export default class AvailableModulesMenu extends TranslatedComponent {
let m = sortedModules[i]; let m = sortedModules[i];
let mount = null; let mount = null;
let disabled = false; let disabled = false;
prevName = m.name
if (ModuleUtils.isShieldGenerator(m.grp)) { if (ModuleUtils.isShieldGenerator(m.grp)) {
// Shield generators care about maximum hull mass // Shield generators care about maximum hull mass
disabled = mass > m.maxmass; disabled = mass > m.maxmass;
@@ -258,7 +266,10 @@ export default class AvailableModulesMenu extends TranslatedComponent {
case 'G': mount = <MountGimballed className={'lg'}/>; break; case 'G': mount = <MountGimballed className={'lg'}/>; break;
case 'T': mount = <MountTurret className={'lg'}/>; break; case 'T': mount = <MountTurret className={'lg'}/>; break;
} }
if (m.name && m.name === prevName) {
// elems.push(<br key={'b' + m.grp + i} />);
itemsOnThisRow = 0;
}
if (itemsOnThisRow == 6 || i > 0 && sortedModules.length > 3 && itemsPerClass > 2 && m.class != prevClass && (m.rating != prevRating || m.mount)) { if (itemsOnThisRow == 6 || i > 0 && sortedModules.length > 3 && itemsPerClass > 2 && m.class != prevClass && (m.rating != prevRating || m.mount)) {
elems.push(<br key={'b' + m.grp + i} />); elems.push(<br key={'b' + m.grp + i} />);
itemsOnThisRow = 0; itemsOnThisRow = 0;
@@ -273,6 +284,7 @@ export default class AvailableModulesMenu extends TranslatedComponent {
itemsOnThisRow++; itemsOnThisRow++;
prevClass = m.class; prevClass = m.class;
prevRating = m.rating; prevRating = m.rating;
prevName = m.name;
} }
return <ul key={'modules' + grp} >{elems}</ul>; return <ul key={'modules' + grp} >{elems}</ul>;

View File

@@ -117,6 +117,10 @@
"pl": "Pulse Laser", "pl": "Pulse Laser",
"po": "Point Defence", "po": "Point Defence",
"pp": "Power Plant", "pp": "Power Plant",
"gpp": "Guardian Hybrid Power Plant",
"gpd": "Guardian Hybrid Power Distributor",
"gpc": "Guardian Plasma Charger",
"ggc": "Guardian Gauss Cannon",
"psg": "Prismatic Shield Generator", "psg": "Prismatic Shield Generator",
"pv": "Planetary Vehicle Hangar", "pv": "Planetary Vehicle Hangar",
"rf": "Refinery", "rf": "Refinery",

View File

@@ -9,12 +9,16 @@ export const StandardArray = [
'pd', // Power Distributor 'pd', // Power Distributor
's', // Sensors 's', // Sensors
'ft', // Fuel Tank 'ft', // Fuel Tank
'gpp', // Guardian Hybrid Power Plant
'gpd' // Guardian Hybrid Power Distributor
]; ];
// Map to lookup group labels/names for component grp, used for JSON Serialization // Map to lookup group labels/names for component grp, used for JSON Serialization
export const ModuleGroupToName = { export const ModuleGroupToName = {
// Standard // Standard
pp: 'Power Plant', pp: 'Power Plant',
gpp: 'Guardian Hybrid Power Plant',
gpd: 'Guardian Hybrid Power Distributor',
t: 'Thrusters', t: 'Thrusters',
fsd: 'Frame Shift Drive', fsd: 'Frame Shift Drive',
ls: 'Life Support', ls: 'Life Support',
@@ -75,7 +79,9 @@ export const ModuleGroupToName = {
sb: 'Shield Booster', sb: 'Shield Booster',
tp: 'Torpedo Pylon', tp: 'Torpedo Pylon',
sfn: 'Shutdown Field Neutraliser', sfn: 'Shutdown Field Neutraliser',
xs: 'Xeno Scanner' xs: 'Xeno Scanner',
gpc: 'Guardian Plasma Charger',
ggc: 'Guardian Gauss Cannon',
}; };
let GrpNameToCodeMap = {}; let GrpNameToCodeMap = {};