forked from GitHub-Mirrors/foundry-sw5e
More work on starship sizes as "classes"
getting there, this seems to be droppable, but doesn't show on sheet yet.
This commit is contained in:
parent
8b60052f65
commit
b3007aeecb
7 changed files with 95 additions and 13 deletions
16
lang/en.json
16
lang/en.json
|
@ -19,10 +19,11 @@
|
|||
"ITEM.TypeLoot": "Loot",
|
||||
"ITEM.TypePower": "Power",
|
||||
"ITEM.TypeSpecies": "Species",
|
||||
"ITEM.TypeStarshipfeature": "Starship Feature",
|
||||
"ITEM.TypeStarshipfeaturePl": "Starship Features",
|
||||
"ITEM.TypeStarshipmod": "Starship Modification",
|
||||
"ITEM.TypeStarshipmodPl": "Starship Modifications",
|
||||
"ITEM.TypeStarship": "Starship",
|
||||
"ITEM.TypeStarshipfeature": "Starship Feature",
|
||||
"ITEM.TypeStarshipfeaturePl": "Starship Features",
|
||||
"ITEM.TypeStarshipmod": "Starship Modification",
|
||||
"ITEM.TypeStarshipmodPl": "Starship Modifications",
|
||||
"ITEM.TypeTool": "Tool",
|
||||
"ITEM.TypeVenture": "Venture",
|
||||
"ITEM.TypeWeapon": "Weapon",
|
||||
|
@ -621,8 +622,9 @@
|
|||
"SW5E.ItemTypePowerPl": "Powers",
|
||||
"SW5E.ItemTypeSpecies": "Species",
|
||||
"SW5E.ItemTypeSpeciesPl": "Species",
|
||||
"SW5E.ItemTypeStarshipMod": "Starship Modification",
|
||||
"SW5E.ItemTypeStarshipModPl": "Starship Modifications",
|
||||
"SW5E.ItemTypeStarship": "Starship",
|
||||
"SW5E.ItemTypeStarshipMod": "Starship Modification",
|
||||
"SW5E.ItemTypeStarshipModPl": "Starship Modifications",
|
||||
"SW5E.ItemTypeTool": "Tool",
|
||||
"SW5E.ItemTypeToolPl": "Tools",
|
||||
"SW5E.ItemTypeVenture": "Venture",
|
||||
|
@ -1061,7 +1063,7 @@
|
|||
"SW5E.StarshipSkillDat": "Data",
|
||||
"SW5E.StarshipSkillHid": "Hide",
|
||||
"SW5E.StarshipSkillImp": "Impress",
|
||||
"SW5E.StarshipSkillInt": "Interfere",
|
||||
"SW5E.StarshipSkillInf": "Interfere",
|
||||
"SW5E.StarshipSkillMan": "Maneuvering",
|
||||
"SW5E.StarshipSkillMen": "Menace",
|
||||
"SW5E.StarshipSkillPat": "Patch",
|
||||
|
|
|
@ -362,6 +362,29 @@ export default class Actor5e extends Actor {
|
|||
// Proficiency
|
||||
data.attributes.prof = Math.floor((Math.max(data.details.tier, 1) + 7) / 4);
|
||||
|
||||
// Determine Starship Tier and available Hull/Shield dice based on owned starship items
|
||||
const size = actorData.items.filter(i => i.type === "starship");
|
||||
if (size.length === 0) return;
|
||||
const sizeData = size[0].data;
|
||||
const tiers = parseInt(sizeData.tier) || 0;
|
||||
data.details.tier = tiers;
|
||||
data.traits.size = sizeData.size;
|
||||
data.attributes.cargcap = (parseInt(sizeData.cargoCap) || 0);
|
||||
data.attributes.crewcap = (parseInt(sizeData.minCrew) || 1);
|
||||
data.attributes.fuel.cap = (parseInt(sizeData.fuelCap) || 5);
|
||||
data.attributes.fuel.cost = sizeData.fuelCost;
|
||||
data.attributes.hsm = sizeData.hardpointSizeMod;
|
||||
data.attributes.hull.die = sizeData.hullDice;
|
||||
data.attributes.hull.dicemax = sizeData.hullDiceStart + tiers;
|
||||
data.attributes.hull.dice = sizeData.hullDiceStart + tiers - (parseInt(sizeData.hullDiceUsed) || 0);
|
||||
// if hull.value .max = null then calculate them out
|
||||
data.attributes.shld.die = sizeData.shldDice;
|
||||
data.attributes.shld.dicemax = sizeData.shldDiceStart + tiers;
|
||||
data.attributes.shld.dice = sizeData.shldDiceStart + tiers - (parseInt(sizeData.shldDiceUsed) || 0);
|
||||
// if shld.value .max = null then calculate them out
|
||||
data.attributes.mods.max = sizeData.modBaseCap;
|
||||
data.attributes.pwrdice.die = SW5E.powerDieTypes[tiers];
|
||||
|
||||
// Link hull to hp and shields to temp hp
|
||||
//data.attributes.hull.value = data.attributes.hp.value;
|
||||
//data.attributes.hull.max = data.attributes.hp.max;
|
||||
|
|
|
@ -169,7 +169,7 @@ export default class ActorSheet5eStarship extends ActorSheet5e {
|
|||
const refuel = this.actor.data.effect.changes[fuelcappos].value;
|
||||
this.actor.update({"data.attributes.fuel.value": refuel});
|
||||
}
|
||||
|
||||
}
|
||||
function engineSliderUpdate(num) {
|
||||
var symbol;
|
||||
var coefficient;
|
||||
|
@ -232,4 +232,3 @@ export default class ActorSheet5eStarship extends ActorSheet5e {
|
|||
document.querySelector('#weaponslideroutput').value = slideroutput;
|
||||
this.actor.update({"data.attributes.weaponpow": coefficient});
|
||||
}
|
||||
}
|
||||
|
|
|
@ -642,7 +642,6 @@ SW5E.healingTypes = {
|
|||
"temphp": "SW5E.HealingTemp"
|
||||
};
|
||||
|
||||
|
||||
/* -------------------------------------------- */
|
||||
|
||||
|
||||
|
@ -822,7 +821,7 @@ SW5E.starshipSkills = {
|
|||
"dat": "SW5E.StarshipSkillDat",
|
||||
"hid": "SW5E.StarshipSkillHid",
|
||||
"imp": "SW5E.StarshipSkillImp",
|
||||
"int": "SW5E.StarshipSkillInt",
|
||||
"inf": "SW5E.StarshipSkillInf",
|
||||
"man": "SW5E.StarshipSkillMan",
|
||||
"men": "SW5E.StarshipSkillMen",
|
||||
"pat": "SW5E.StarshipSkillPat",
|
||||
|
|
6
packs/packs/starships.db
Normal file
6
packs/packs/starships.db
Normal file
|
@ -0,0 +1,6 @@
|
|||
{"name":"Small Starship","permission":{"default":0,"yXqD5rPwgjXHtqeZ":3},"type":"starship","data":{"description":{"value":""},"size":"Small","tier":0,"hullDice":"d6","hullDiceStart":3,"hullDiceRolled":[6],"hullDiceUsed":0,"shldDice":"d6","shldDiceStart":3,"shldDiceRolled":[6],"shldDiceUsed":0,"modMaxSuitesBase":1,"modBaseCap":20,"modSizeCostMult":1,"modMinWorkforce":2,"suiteCap":1,"equipCostMult":1,"equipMinWorkforce":1,"cargoCap":2,"fuelCost":50,"fuelCap":10,"foodCap":10,"baseTurnSpeed":250,"hardpointSizeMod":2,"minCrew":1,"pwrDice":"1","source":"SotG"},"flags":{},"img":"systems/sw5e/packs/Icons/Starship%20Features/Small.webp","effects":[],"_id":"6BN8l5E8QtYt103T"}
|
||||
{"name":"Medium Starship","permission":{"default":0,"yXqD5rPwgjXHtqeZ":3},"type":"starship","data":{"description":{"value":""},"size":"Medium","tier":0,"hullDice":"d8","hullDiceStart":5,"hullDiceRolled":[8],"hullDiceUsed":0,"shldDice":"d8","shldDiceStart":5,"shldDiceRolled":[8],"shldDiceUsed":0,"modMaxSuitesBase":1,"modBaseCap":30,"modSizeCostMult":2,"modMinWorkforce":4,"suiteCap":4,"equipCostMult":2,"equipMinWorkforce":2,"cargoCap":25,"fuelCost":100,"fuelCap":30,"foodCap":120,"baseTurnSpeed":200,"hardpointSizeMod":3,"minCrew":1,"pwrDice":"1","source":"SotG"},"flags":{},"img":"systems/sw5e/packs/Icons/Starship%20Features/Medium.webp","effects":[],"_id":"6liD1m4hqKSeS5sp"}
|
||||
{"_id":"FH8iBT4uujRUR0j7","name":"Gargantuan Starship","permission":{"default":0,"yXqD5rPwgjXHtqeZ":3},"type":"starship","data":{"description":{"value":null},"size":"Gargantuan","tier":0,"hullDice":"d20","hullDiceStart":11,"hullDiceRolled":[20],"hullDiceUsed":0,"shldDice":"d20","shldDiceStart":11,"shldDiceRolled":[20],"shldDiceUsed":0,"modMaxSuitesBase":4,"modBaseCap":70,"modSizeCostMult":500,"modMinWorkforce":1000,"suiteCap":40000,"equipCostMult":500,"equipMinWorkforce":500,"cargoCap":200000,"fuelCost":100000,"fuelCap":1800,"foodCap":576000000,"baseTurnSpeed":50,"hardpointSizeMod":3,"minCrew":80000,"pwrDice":"1","source":"SotG"},"flags":{},"img":"systems/sw5e/packs/Icons/Starship%20Features/Gargantuan.webp","effects":[]}
|
||||
{"name":"Large Starship","permission":{"default":0,"yXqD5rPwgjXHtqeZ":3},"type":"starship","data":{"description":{"value":""},"size":"Large","tier":0,"hullDice":"d10","hullDiceStart":7,"hullDiceRolled":[10],"hullDiceUsed":0,"shldDice":"d10","shldDiceStart":7,"shldDiceRolled":[10],"shldDiceUsed":0,"modMaxSuitesBase":2,"modBaseCap":50,"modSizeCostMult":5,"modMinWorkforce":10,"suiteCap":400,"equipCostMult":5,"equipMinWorkforce":5,"cargoCap":500,"fuelCost":1000,"fuelCap":300,"foodCap":240000,"baseTurnSpeed":150,"hardpointSizeMod":4,"minCrew":200,"pwrDice":"1","source":"SotG"},"flags":{},"img":"systems/sw5e/packs/Icons/Starship%20Features/Large.webp","effects":[],"_id":"RFKvLuqE13INBxqd"}
|
||||
{"name":"Huge Starship","permission":{"default":0,"yXqD5rPwgjXHtqeZ":3},"type":"starship","data":{"description":{"value":null},"size":"Huge","tier":0,"hullDice":"d12","hullDiceStart":9,"hullDiceRolled":[12],"hullDiceUsed":0,"shldDice":"d12","shldDiceStart":9,"shldDiceRolled":[12],"shldDiceUsed":0,"modMaxSuitesBase":3,"modBaseCap":60,"modSizeCostMult":50,"modMinWorkforce":100,"suiteCap":4000,"equipCostMult":50,"equipMinWorkforce":50,"cargoCap":10000,"fuelCost":10000,"fuelCap":600,"foodCap":9600000,"baseTurnSpeed":100,"hardpointSizeMod":2,"minCrew":4000,"pwrDice":"1","source":"SotG"},"flags":{},"img":"systems/sw5e/packs/Icons/Starship%20Features/Huge.webp","effects":[],"_id":"pgmf0rMYLt4LQtfN"}
|
||||
{"name":"Tiny Starship","permission":{"default":0,"yXqD5rPwgjXHtqeZ":3},"type":"starship","data":{"description":{"value":""},"size":"Tiny","tier":0,"hullDice":"d4","hullDiceStart":1,"hullDiceRolled":[4],"hullDiceUsed":0,"shldDice":"d4","shldDiceStart":1,"shldDiceRolled":[4],"shldDiceUsed":0,"modMaxSuitesBase":0,"modBaseCap":10,"modSizeCostMult":0.5,"modMinWorkforce":1,"suiteCap":0,"equipCostMult":0.5,"equipMinWorkforce":1,"cargoCap":0,"fuelCost":25,"fuelCap":5,"foodCap":0,"baseTurnSpeed":300,"hardpointSizeMod":1,"minCrew":0,"pwrDice":"1","source":"SotG"},"flags":{},"img":"systems/sw5e/packs/Icons/Starship%20Features/Tiny.webp","effects":[],"_id":"zC4qM8JMmMzCjMJK"}
|
36
system.json
36
system.json
|
@ -109,6 +109,42 @@
|
|||
"label": "Species Traits",
|
||||
"path": "./packs/packs/speciestraits.db",
|
||||
"entity": "Item"
|
||||
},
|
||||
{
|
||||
"name": "starshiparmor",
|
||||
"label": "Starship Armor",
|
||||
"path": "./packs/packs/starshiparmor.db",
|
||||
"entity": "Item"
|
||||
},
|
||||
{
|
||||
"name": "starshipequipment",
|
||||
"label": "Starship Equipment",
|
||||
"path": "./packs/packs/starshipequipment.db",
|
||||
"entity": "Item"
|
||||
},
|
||||
{
|
||||
"name": "starshipfeatures",
|
||||
"label": "Starship Features",
|
||||
"path": "./packs/packs/starshipfeatures.db",
|
||||
"entity": "Item"
|
||||
},
|
||||
{
|
||||
"name": "starshipmodifications",
|
||||
"label": "Starship Modifications",
|
||||
"path": "./packs/packs/starshipmodifications.db",
|
||||
"entity": "Item"
|
||||
},
|
||||
{
|
||||
"name": "starships",
|
||||
"label": "Starship Types",
|
||||
"path": "./packs/packs/starships.db",
|
||||
"entity": "Item"
|
||||
},
|
||||
{
|
||||
"name": "starshipweapons",
|
||||
"label": "Starship Weapons",
|
||||
"path": "./packs/packs/starshipweapons.db",
|
||||
"entity": "Item"
|
||||
},
|
||||
{
|
||||
"name": "tables",
|
||||
|
|
|
@ -1045,11 +1045,28 @@
|
|||
"size": "",
|
||||
"tier": 0,
|
||||
"hullDice": "d6",
|
||||
"hullDiceStart": 1,
|
||||
"hullDiceStart": 3,
|
||||
"hullDiceRolled":[6],
|
||||
"hullDiceUsed": 0,
|
||||
"shldDice": "d6",
|
||||
"shldDiceStart": 1,
|
||||
"shldDiceStart": 3,
|
||||
"shldDiceRolled":[6],
|
||||
"shldDiceUsed": 0,
|
||||
"modMaxSuitesBase": 0,
|
||||
"modMaxSuitesMult": 1,
|
||||
"modBaseCap": 20,
|
||||
"modSizeCostMult": 1,
|
||||
"modMinWorkforce": 2,
|
||||
"suiteCap": 1,
|
||||
"equipCostMult": 1,
|
||||
"equipMinWorkforce": 1,
|
||||
"cargoCap": 2,
|
||||
"fuelCost": 50,
|
||||
"fuelCap": 10,
|
||||
"foodCap": 10,
|
||||
"baseTurnSpeed": 250,
|
||||
"hardpointSizeMod": 2,
|
||||
"minCrew": 1,
|
||||
"pwrDice": "1",
|
||||
"source": "SotG"
|
||||
},
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue