debut group sheet

This commit is contained in:
rwanoux
2024-05-15 10:37:06 +02:00
parent 5c3301b88e
commit cf4b6a2b01
3 changed files with 65 additions and 51 deletions
+7
View File
@@ -9,6 +9,13 @@
-[ ] fixer les cases hexas , comprtement chelou , piste = un click à l'air d'envoyer 2 update, verifier le onChange
-[ ] dialog d'edition des min-max
### fiche de groupe
-[ ] pas encore penché dessus
### fiche de pnj créature
-[ ]à faire
### les jets de dés
- [ ] envoyer les spécialités utilisables au rollDialog
+43 -43
View File
@@ -1,4 +1,4 @@
import {onManageActiveEffect, prepareActiveEffectCategories} from "../system/effects.mjs";
import { onManageActiveEffect, prepareActiveEffectCategories } from "../system/effects.mjs";
import { VermineActorSheet } from "./actor-sheet.mjs";
import { TotemPicker, ActorPicker } from "../system/applications.mjs";
@@ -41,7 +41,7 @@ export class VermineGroupSheet extends VermineActorSheet {
context.system = actorData.system;
context.flags = actorData.flags;
context.config = CONFIG.VERMINE;
// Prepare character data and items.
if (actorData.type == 'character') {
this._prepareItems(context);
@@ -58,7 +58,7 @@ export class VermineGroupSheet extends VermineActorSheet {
}
// Add roll data for TinyMCE editors.
context.rollData = context.actor.getRollData();
context.rollData = this.actor.getRollData();
// Prepare active effects
context.effects = prepareActiveEffectCategories(this.actor.effects);
@@ -92,23 +92,23 @@ export class VermineGroupSheet extends VermineActorSheet {
context.backgrounds = this.actor.itemTypes['background'];
context.evolutions = this.actor.itemTypes['evolution'];
context.traumas = this.actor.itemTypes['trauma'];
context.gear = this.actor.itemTypes['item'];
context.weapons = this.actor.itemTypes['weapon'];
context.defenses = this.actor.itemTypes['defense'];
context.defenses = this.actor.itemTypes['defense'];
context.vehicles = this.actor.itemTypes['vehicle'];
context.totem_abilities = this.actor.itemTypes['ability'].filter(i=>i.system.type === 'totem');
context.abilities = this.actor.itemTypes['ability'].filter(i=>i.system.type !== 'totem');
context.totem_abilities = this.actor.itemTypes['ability'].filter(i => i.system.type === 'totem');
context.abilities = this.actor.itemTypes['ability'].filter(i => i.system.type !== 'totem');
context.members = [];
context.encounters = [];
for(let memberId of context.actor.system.members){
for (let memberId of context.actor.system.members) {
context.members.push(game.actors.get(memberId));
}
for(let encounterId of context.actor.system.encounters){
for (let encounterId of context.actor.system.encounters) {
context.encounters.push(game.actors.get(encounterId));
}
@@ -120,17 +120,17 @@ export class VermineGroupSheet extends VermineActorSheet {
/** @override */
activateListeners(html) {
super.activateListeners(html);
// Choose Totem
html.find('.chooseTotem').click(this._onTotemButton.bind(this));
// Choose Members / Encounters
html.find('.chooseActor').click(this._onRoadButton.bind(this));
html.find('.member-delete').click(ev => {
// Choose Members / Encounters
html.find('.chooseActor').click(this._onRoadButton.bind(this));
html.find('.member-delete').click(ev => {
const li = $(ev.currentTarget).parents("li.actor");
const actorId = li.data("actor-id");
const actorIdIndex = this.actor.system.members.indexOf(actorId);
if (actorIdIndex !== -1){
if (actorIdIndex !== -1) {
this.actor.system.members.splice(actorIdIndex, 1);
}
this.actor.update({ "system.members": this.actor.system.members });
@@ -141,42 +141,42 @@ export class VermineGroupSheet extends VermineActorSheet {
const li = $(ev.currentTarget).parents("li.actor");
const actorId = li.data("actor-id");
const actorIdIndex = this.actor.system.encounters.indexOf(actorId);
if (actorIdIndex !== -1){
if (actorIdIndex !== -1) {
this.actor.system.encounters.splice(actorIdIndex, 1);
}
this.actor.update({ "system.encounters": this.actor.system.encounters });
this.render(true);
});
}
/**
* Handle totem pick
* @param {Event} event The originating click event
* @private
*/
_onTotemButton(event) {
event.preventDefault();
const el = event.currentTarget;
// const dataset = el.dataset;
const totemPicker = new TotemPicker(el, this.actor);
totemPicker.render(true);
}
/**
* Handle totem pick
* @param {Event} event The originating click event
* @private
*/
_onTotemButton(event) {
event.preventDefault();
const el = event.currentTarget;
// const dataset = el.dataset;
/**
* Handle actor pick
* @param {Event} event The originating click event
* @private
*/
_onRoadButton(event) {
event.preventDefault();
const el = event.currentTarget;
// const dataset = el.dataset;
const totemPicker = new TotemPicker(el, this.actor);
totemPicker.render(true);
}
const actorPicker = new ActorPicker(el, this.actor);
actorPicker.render(true);
}
/**
* Handle actor pick
* @param {Event} event The originating click event
* @private
*/
_onRoadButton(event) {
event.preventDefault();
const el = event.currentTarget;
// const dataset = el.dataset;
const actorPicker = new ActorPicker(el, this.actor);
actorPicker.render(true);
}
}
+15 -8
View File
@@ -2,13 +2,21 @@
{{!-- Sheet Header --}}
{{> "systems/vermine2047/templates/actor/group/group-header.hbs"}}
{{!-- Sheet Tab Navigation --}}
<nav class="sheet-tabs tabs" data-group="primary">
<nav class="sheet-tabs tabs sheet-navigation" data-group="primary">
{{!-- Default tab is specified in actor-sheet.mjs --}}
<a class="item" data-tab="description">{{localize 'VERMINE.information' }}</a>
<a class="item" data-tab="gear">{{localize 'VERMINE.gear' }}</a>
<a class="item" data-tab="totem">{{localize 'VERMINE.road' }}</a>
<a class="item" data-tab="description">
<i data-tooltip="{{localize 'VERMINE.information' }}"
class="fas fa-star"></i>
</a>
<a class="item" data-tab="gear">
<i data-tooltip="{{localize 'VERMINE.gear' }}" class="fas fa-gear"></i>
</a>
<a class="item" data-tab="totem">
<i data-tooltip="{{localize 'VERMINE.road' }}" class="fas fa-map"></i>
</a>
</nav>
{{!-- Sheet Body --}}
@@ -22,8 +30,8 @@
{{!-- Owned Items Tab --}}
<div class="tab items" data-group="primary" data-tab="gear">
<h3>{{ localize 'VERMINE.gear'}}</h3>
{{> "systems/vermine2047/templates/actor/group/group-items.hbs"}}
<h3>{{ localize 'VERMINE.gear'}}</h3>
{{> "systems/vermine2047/templates/actor/group/group-items.hbs"}}
</div>
{{!-- Road Tab --}}
@@ -34,4 +42,3 @@
</section>
</form>