Generic roll and update items
This commit is contained in:
@@ -200,15 +200,19 @@ export class PegasusActorSheet extends ActorSheet {
|
||||
this.actor.equipItem( li.data("item-id") );
|
||||
this.render(true);
|
||||
});
|
||||
html.find('.update-field').change(ev => {
|
||||
const fieldName = $(ev.currentTarget).data("field-name");
|
||||
let value = ev.currentTarget.value;
|
||||
this.actor.update( { [`${fieldName}`]: value } );
|
||||
});
|
||||
html.find('.perk-active').click(ev => {
|
||||
const li = $(ev.currentTarget).parents(".item");
|
||||
this.actor.activatePerk( li.data("item-id") );
|
||||
this.render(true);
|
||||
|
||||
this.render(true);
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
|
||||
/* -------------------------------------------- */
|
||||
/** @override */
|
||||
setPosition(options = {}) {
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
import { PegasusUtility } from "./pegasus-utility.js";
|
||||
import { PegasusActor } from "./pegasus-actor.js";
|
||||
import { PegasusActorSheet } from "./pegasus-actor-sheet.js";
|
||||
import { PegasusItemSheet } from "./pegasus-item-sheet.js";
|
||||
|
||||
export class PegasusActorCreate {
|
||||
|
||||
@@ -176,6 +177,42 @@ export class PegasusActorCreate {
|
||||
}
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
async openItemView( event) {
|
||||
let step = $(event.currentTarget).data("step");
|
||||
let itemId = $(event.currentTarget).data("item-id");
|
||||
let itemData
|
||||
|
||||
if ( step == 'select-race') {
|
||||
itemData = this.races.find( item => item._id == itemId );
|
||||
}
|
||||
if ( step == 'select-race-optionnal') {
|
||||
itemData = this.raceOptionnalAbilities.optionnalabilities.find( item => item._id == itemId );
|
||||
}
|
||||
if ( step == 'select-race-perks') {
|
||||
itemData = this.perks.find( item => item._id == itemId );
|
||||
}
|
||||
if ( step == 'select-race-perks'){
|
||||
itemData = this.racePerks.find( item => item._id == itemId );
|
||||
}
|
||||
if ( step == 'select-role') {
|
||||
itemData = this.roles.find( item => item._id == itemId );
|
||||
}
|
||||
if ( step == 'select-role-start-spec') {
|
||||
itemData = this.roleSpecStart.find( item => item._id == itemId );
|
||||
}
|
||||
if (step == 'select-role-spec') {
|
||||
itemData = this.roleSpec.find( item => item._id == itemId );
|
||||
}
|
||||
if (step == 'select-role-perk') {
|
||||
itemData = this.rolePerks.find( item => item._id == itemId );
|
||||
}
|
||||
if (itemData) {
|
||||
let item = await Item.create(itemData, {temporary: true});
|
||||
new PegasusItemSheet(item).render(true);
|
||||
}
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
manageSelectableStats( race ) {
|
||||
this.raceSelectableStats = {
|
||||
|
||||
@@ -128,10 +128,11 @@ export class PegasusUtility {
|
||||
static async chatListeners(html) {
|
||||
|
||||
html.on("click", '.chat-create-actor', event => {
|
||||
console.log("Event !")
|
||||
game.system.pegasus.creator.processChatEvent(event);
|
||||
} );
|
||||
|
||||
html.on("click", '.view-item-from-chat', event => {
|
||||
game.system.pegasus.creator.openItemView( event)
|
||||
} );
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
|
||||
Reference in New Issue
Block a user