Enhance styling
This commit is contained in:
@@ -19,7 +19,7 @@ export class PegasusActorSheet extends ActorSheet {
|
||||
height: 720,
|
||||
tabs: [{ navSelector: ".sheet-tabs", contentSelector: ".sheet-body", initial: "combat" }],
|
||||
dragDrop: [{ dragSelector: ".item-list .item", dropSelector: null }],
|
||||
editScore: false
|
||||
editScore: true
|
||||
});
|
||||
}
|
||||
|
||||
@@ -43,11 +43,10 @@ export class PegasusActorSheet extends ActorSheet {
|
||||
specs: this.actor.getSpecs( ),
|
||||
optionsDiceList: PegasusUtility.getOptionsDiceList(),
|
||||
optionsLevel: PegasusUtility.getOptionsLevel(),
|
||||
weapons: this.actor.checkAndPrepareWeapons( duplicate(this.actor.getWeapons()) ),
|
||||
armors: this.actor.checkAndPrepareArmors( duplicate(this.actor.getArmors())),
|
||||
shields: duplicate(this.actor.getShields()),
|
||||
equipments: duplicate(this.actor.getEquipments()),
|
||||
equipments: duplicate(this.actor.getEquipmentsOnly()),
|
||||
weapons: this.actor.checkAndPrepareEquipments( duplicate(this.actor.getWeapons()) ),
|
||||
armors: this.actor.checkAndPrepareEquipments( duplicate(this.actor.getArmors())),
|
||||
shields: this.actor.checkAndPrepareEquipments( duplicate(this.actor.getShields()) ),
|
||||
equipments: this.actor.checkAndPrepareEquipments(duplicate(this.actor.getEquipmentsOnly()) ),
|
||||
perks: duplicate(this.actor.getPerks()),
|
||||
abilities: duplicate(this.actor.getAbilities()),
|
||||
activePerks: duplicate(this.actor.getActivePerks()),
|
||||
@@ -77,12 +76,20 @@ export class PegasusActorSheet extends ActorSheet {
|
||||
let rollData = PegasusUtility.getBasicRollData()
|
||||
rollData.alias = "Dice Pool Roll",
|
||||
rollData.mode = "generic"
|
||||
rollData.title = `Dice Pool Roll`;
|
||||
rollData.title = `Dice Pool Roll`
|
||||
rollData.img = "icons/dice/d12black.svg"
|
||||
|
||||
let rollDialog = await PegasusRollDialog.create( this.actor, rollData);
|
||||
rollDialog.render( true );
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
async rollIDR( diceValue) {
|
||||
let myRoll = new Roll(diceValue+"x").roll({ async: false })
|
||||
//await PegasusUtility.showDiceSoNice(myRoll, game.settings.get("core", "rollMode"))
|
||||
myRoll.toMessage()
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
/** @override */
|
||||
activateListeners(html) {
|
||||
@@ -183,6 +190,15 @@ export class PegasusActorSheet extends ActorSheet {
|
||||
this.actor.incDecQuantity( li.data("item-id"), +1 );
|
||||
} );
|
||||
|
||||
html.find('.ammo-minus').click(event => {
|
||||
const li = $(event.currentTarget).parents(".item");
|
||||
this.actor.incDecAmmo( li.data("item-id"), -1 );
|
||||
} );
|
||||
html.find('.ammo-plus').click(event => {
|
||||
const li = $(event.currentTarget).parents(".item");
|
||||
this.actor.incDecAmmo( li.data("item-id"), +1 );
|
||||
} );
|
||||
|
||||
html.find('.momentum-minus').click(event => {
|
||||
this.actor.modifyMomentum( -1 )
|
||||
} )
|
||||
@@ -222,6 +238,10 @@ export class PegasusActorSheet extends ActorSheet {
|
||||
html.find('.roll-mr').click((event) => {
|
||||
this.actor.rollMR();
|
||||
});
|
||||
html.find('.roll-idr').click((event) => {
|
||||
const diceValue = $(event.currentTarget).data("dice-value")
|
||||
this.rollIDR( diceValue)
|
||||
})
|
||||
|
||||
html.find('.roll-spec').click((event) => {
|
||||
const li = $(event.currentTarget).parents(".item");
|
||||
|
||||
@@ -116,39 +116,39 @@ export class PegasusActor extends Actor {
|
||||
}
|
||||
/* -------------------------------------------- */
|
||||
getShields() {
|
||||
let comp = this.data.items.filter(item => item.type == 'shield');
|
||||
let comp = this.data.items.filter(item => item.type == 'shield')
|
||||
return comp;
|
||||
}
|
||||
getRace() {
|
||||
let race = this.data.items.filter(item => item.type == 'race');
|
||||
let race = this.data.items.filter(item => item.type == 'race')
|
||||
return race[0] ?? [];
|
||||
}
|
||||
getRole() {
|
||||
let role = this.data.items.filter(item => item.type == 'role');
|
||||
let role = this.data.items.filter(item => item.type == 'role')
|
||||
return role[0] ?? [];
|
||||
}
|
||||
/* -------------------------------------------- */
|
||||
checkAndPrepareArmor(armor) {
|
||||
armor.data.resistanceDice = PegasusUtility.getDiceFromLevel(armor.data.resistance);
|
||||
}
|
||||
/* -------------------------------------------- */
|
||||
checkAndPrepareArmors(armors) {
|
||||
for (let item of armors) {
|
||||
this.checkAndPrepareArmor(item);
|
||||
checkAndPrepareEquipment(item) {
|
||||
if ( item.data.resistance ) {
|
||||
item.data.resistanceDice = PegasusUtility.getDiceFromLevel(item.data.resistance)
|
||||
}
|
||||
if ( item.data.idr ) {
|
||||
item.data.idrDice = PegasusUtility.getDiceFromLevel(item.data.idr)
|
||||
}
|
||||
if ( item.data.damage) {
|
||||
item.data.damageDice = PegasusUtility.getDiceFromLevel(item.data.damage)
|
||||
}
|
||||
if( item.data.level) {
|
||||
item.data.levelDice = PegasusUtility.getDiceFromLevel(item.data.level)
|
||||
}
|
||||
return armors;
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
checkAndPrepareWeapon(weapon) {
|
||||
weapon.data.damageDice = PegasusUtility.getDiceFromLevel(weapon.data.damage);
|
||||
}
|
||||
/* -------------------------------------------- */
|
||||
checkAndPrepareWeapons(weapons) {
|
||||
for (let item of weapons) {
|
||||
this.checkAndPrepareWeapon(item);
|
||||
checkAndPrepareEquipments(listItem) {
|
||||
for (let item of listItem) {
|
||||
this.checkAndPrepareEquipment(item)
|
||||
}
|
||||
return weapons;
|
||||
return listItem
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
@@ -314,10 +314,11 @@ export class PegasusActor extends Actor {
|
||||
// Compute whole enc
|
||||
let enc = 0
|
||||
for (let item of equipments) {
|
||||
item.data.idrDice = PegasusUtility.getDiceFromLevel( Number(item.data.idr))
|
||||
if (item.data.equipped) {
|
||||
if (item.data.iscontainer) {
|
||||
enc += item.data.contentsEnc
|
||||
} else {
|
||||
} else if (item.data.containerid == "") {
|
||||
enc += item.data.weight
|
||||
}
|
||||
}
|
||||
@@ -789,7 +790,7 @@ export class PegasusActor extends Actor {
|
||||
updates['data.secondary.socialhealth.value'] = socDiceValue
|
||||
}
|
||||
|
||||
let nrgValue = PegasusUtility.getDiceValue(this.data.data.statistics.foc.value) + this.data.data.nrg.mod + this.data.data.statistics.foc.mod;
|
||||
let nrgValue = PegasusUtility.getDiceValue(this.data.data.statistics.foc.value) + this.data.data.nrg.mod + this.data.data.statistics.foc.mod
|
||||
if (nrgValue != this.data.data.nrg.absolutemax) {
|
||||
updates['data.nrg.absolutemax'] = nrgValue
|
||||
}
|
||||
@@ -823,7 +824,7 @@ export class PegasusActor extends Actor {
|
||||
if (role && role.name && (role.name != this.data.data.biodata.rolename)) {
|
||||
updates['data.biodata.rolename'] = role.name
|
||||
}
|
||||
console.log("UPD", updates, this.data.data.biodata)
|
||||
//console.log("UPD", updates, this.data.data.biodata)
|
||||
await this.update(updates)
|
||||
}
|
||||
|
||||
@@ -878,6 +879,16 @@ export class PegasusActor extends Actor {
|
||||
const updated = await this.updateEmbeddedDocuments('Item', [{ _id: objetQ.id, 'data.quantity': newQ }]); // pdates one EmbeddedEntity
|
||||
}
|
||||
}
|
||||
/* -------------------------------------------- */
|
||||
async incDecAmmo(objetId, incDec = 0) {
|
||||
let objetQ = this.data.items.get(objetId)
|
||||
if (objetQ) {
|
||||
let newQ = objetQ.data.data.ammocurrent + incDec;
|
||||
if ( newQ >= 0 && newQ <= objetQ.data.data.ammomax) {
|
||||
const updated = await this.updateEmbeddedDocuments('Item', [{ _id: objetQ.id, 'data.ammocurrent': newQ }]); // pdates one EmbeddedEntity
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
async applyAbility(ability, updates = [], directUpdate = false) {
|
||||
@@ -1082,7 +1093,11 @@ export class PegasusActor extends Actor {
|
||||
rollData.statMod = rollData.stat.mod
|
||||
rollData.specList = this.getRelevantSpec(statKey)
|
||||
rollData.selectedSpec = "0"
|
||||
rollData.img = `systems/fvtt-pegasus-rpg/images/icons/${rollData.stat.abbrev}.webp`
|
||||
if (statKey.toLowerCase() == "mr") {
|
||||
rollData.img = "systems/fvtt-pegasus-rpg/images/icons/MR.webp"
|
||||
} else {
|
||||
rollData.img = `systems/fvtt-pegasus-rpg/images/icons/${rollData.stat.abbrev}.webp`
|
||||
}
|
||||
}
|
||||
|
||||
this.addEffects(rollData)
|
||||
@@ -1119,6 +1134,7 @@ export class PegasusActor extends Actor {
|
||||
let rollData = this.getCommonRollData(statKey, useShield)
|
||||
rollData.mode = "stat"
|
||||
rollData.title = `Roll : ${stat.label} `
|
||||
rollData.img = "icons/dice/d12black.svg"
|
||||
|
||||
this.startRoll(rollData)
|
||||
} else {
|
||||
@@ -1181,10 +1197,11 @@ export class PegasusActor extends Actor {
|
||||
|
||||
let rollData = this.getCommonRollData("mr")
|
||||
rollData.mode = "MR"
|
||||
rollData.img = "systems/fvtt-pegasus-rpg/images/icons/MR.webp"
|
||||
rollData.isInit = isInit
|
||||
rollData.combatId = combatId
|
||||
rollData.combatantId = combatantId
|
||||
|
||||
console.log("MR ROLL", rollData)
|
||||
this.startRoll(rollData);
|
||||
} else {
|
||||
ui.notifications.warn("MR not found !");
|
||||
@@ -1199,7 +1216,7 @@ export class PegasusActor extends Actor {
|
||||
let rollData = this.getCommonRollData(armor.data.statistic)
|
||||
|
||||
armor = duplicate(armor);
|
||||
this.checkAndPrepareArmor(armor);
|
||||
this.checkAndPrepareEquipment(armor);
|
||||
|
||||
rollData.mode = "armor"
|
||||
rollData.armor = armor
|
||||
|
||||
@@ -211,6 +211,7 @@ export class PegasusUtility {
|
||||
'systems/fvtt-pegasus-rpg/templates/partial-actor-status.html',
|
||||
'systems/fvtt-pegasus-rpg/templates/partial-item-nav.html',
|
||||
'systems/fvtt-pegasus-rpg/templates/partial-item-description.html',
|
||||
'systems/fvtt-pegasus-rpg/templates/partial-actor-equipment.html'
|
||||
]
|
||||
return loadTemplates(templatePaths);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user