Add initiative and ammo

This commit is contained in:
LeRatierBretonnien 2023-10-21 10:25:39 +02:00
parent 78edf6b80b
commit 06e265586b
62 changed files with 398 additions and 207 deletions

View File

@ -40,6 +40,7 @@ export class DarkStarsActorSheet extends ActorSheet {
skills: this.actor.getSkills( ), skills: this.actor.getSkills( ),
perks: this.actor.getPerks( ), perks: this.actor.getPerks( ),
weapons: this.actor.checkAndPrepareEquipments( duplicate(this.actor.getWeapons()) ), weapons: this.actor.checkAndPrepareEquipments( duplicate(this.actor.getWeapons()) ),
ammos: this.actor.checkAndPrepareEquipments( duplicate(this.actor.getAmmos()) ),
armors: this.actor.checkAndPrepareEquipments( duplicate(this.actor.getArmors())), armors: this.actor.checkAndPrepareEquipments( duplicate(this.actor.getArmors())),
shields: this.actor.checkAndPrepareEquipments( duplicate(this.actor.getShields())), shields: this.actor.checkAndPrepareEquipments( duplicate(this.actor.getShields())),
equipments: this.actor.checkAndPrepareEquipments(duplicate(this.actor.getEquipmentsOnly()) ), equipments: this.actor.checkAndPrepareEquipments(duplicate(this.actor.getEquipmentsOnly()) ),
@ -109,6 +110,11 @@ export class DarkStarsActorSheet extends ActorSheet {
this.actor.delSubActor(actorId); this.actor.delSubActor(actorId);
}); });
html.find('.edit-weapon-ammo').change(ev => {
const li = $(ev.currentTarget).parents(".item")
let weaponId = li.data("item-id")
this.actor.setWeaponAmmo( weaponId, ev.currentTarget.value )
})
html.find('.skill-used-id').change(event => { html.find('.skill-used-id').change(event => {
const li = $(event.currentTarget).parents(".item"); const li = $(event.currentTarget).parents(".item");
this.actor.setSkillUsed( li.data("item-id"), event.currentTarget.checked ); this.actor.setSkillUsed( li.data("item-id"), event.currentTarget.checked );

View File

@ -158,6 +158,13 @@ export class DarkStarsActor extends Actor {
} }
/* -------------------------------------------- */ /* -------------------------------------------- */
checkAndPrepareEquipment(item) { checkAndPrepareEquipment(item) {
// Dynamic assign ammo for the weapon
if (item.type == "weapon" && item.system.needammo) {
let ammo = this.items.find(ammo => ammo.type == "ammo" && item.system.ammoid == ammo.id)
if (ammo) {
item.ammo = duplicate(ammo)
}
}
} }
/* -------------------------------------------- */ /* -------------------------------------------- */
@ -177,6 +184,12 @@ export class DarkStarsActor extends Actor {
/* -------------------------------------------- */ /* -------------------------------------------- */
getWeapons() { getWeapons() {
let comp = duplicate(this.items.filter(item => item.type == 'weapon') || []); let comp = duplicate(this.items.filter(item => item.type == 'weapon') || []);
DarkStarsUtility.sortArrayObjectsByName(comp)
return comp;
}
/* -------------------------------------------- */
getAmmos() {
let comp = duplicate(this.items.filter(item => item.type == 'ammo') || []);
DarkStarsUtility.sortArrayObjectsByName(comp) DarkStarsUtility.sortArrayObjectsByName(comp)
return comp; return comp;
} }
@ -188,7 +201,13 @@ export class DarkStarsActor extends Actor {
} }
return item; return item;
} }
/* -------------------------------------------- */
setWeaponAmmo(weaponId, ammoId) {
let weapon = this.items.get(weaponId)
if(weapon) {
this.updateEmbeddedDocuments('Item', [ {_id: weapon.id, 'system.ammoid': ammoId} ])
}
}
/* -------------------------------------------- */ /* -------------------------------------------- */
setSkillUsed( skillId, checked) { setSkillUsed( skillId, checked) {
let skill = this.items.get(skillId) let skill = this.items.get(skillId)
@ -391,12 +410,14 @@ export class DarkStarsActor extends Actor {
} }
} }
/* -------------------------------------------- */ /* -------------------------------------------- */
getInitiativeScore(combatId, combatantId) { hasLastWord() {
if (this.type == 'character') { return this.items.find(i => i.type == "perk" && i.name.toLowerCase() === "last word")
this.rollMR(true, combatId, combatantId) }
} /* -------------------------------------------- */
console.log("Init required !!!!") getInitiativeScore() {
return -1; let initFormula = (this.system.derivated.si.value + this.system.derivated.si.bonus) + "d6"
let initRoll = new Roll(initFormula).roll({ async: false })
return initRoll.total
} }
/* -------------------------------------------- */ /* -------------------------------------------- */
@ -622,6 +643,7 @@ export class DarkStarsActor extends Actor {
rollData.mode = "weapon" rollData.mode = "weapon"
rollData.skill = skill rollData.skill = skill
rollData.weapon = weapon rollData.weapon = weapon
this.checkAndPrepareEquipment(weapon)
rollData.img = weapon.img rollData.img = weapon.img
this.startRoll(rollData) this.startRoll(rollData)
} else { } else {

View File

@ -2,17 +2,29 @@ import { DarkStarsUtility } from "./dark-stars-utility.js";
/* -------------------------------------------- */ /* -------------------------------------------- */
export class DarkStarsCombat extends Combat { export class DarkStarsCombat extends Combat {
/* -------------------------------------------- */
async rollInitiative(ids, formula = undefined, messageOptions = {} ) {
ids = typeof ids === "string" ? [ids] : ids;
for (let cId = 0; cId < ids.length; cId++) {
const c = this.combatants.get(ids[cId]);
let id = c._id || c.id;
let initBonus = c.actor ? c.actor.getInitiativeScore( this.id, id ) : -1;
await this.updateEmbeddedDocuments("Combatant", [ { _id: id, initiative: initBonus } ]);
}
/* -------------------------------------------- */
processOtherTurns(c, initScore) {
let toCreate = []
let token = canvas.tokens.get(c.tokenId)
let hasLastWord = token.actor.hasLastWord()
while ( (initScore > 5) || (hasLastWord && initScore >= 5)) {
initScore -= 5;
toCreate.push({tokenId: c.tokenId, sceneId: c.sceneId, actorId: c.actorId, hidden: c.hidden, initiative: initScore, isDuplicated: true});
}
this.createEmbeddedDocuments("Combatant", toCreate);
}
/* -------------------------------------------- */
async rollInitiative(ids, formula = undefined, messageOptions = {}) {
ids = typeof ids === "string" ? [ids] : ids;
for (let cId of ids) {
const c = this.combatants.get(cId);
let id = c._id || c.id;
let initScore = c.actor ? c.actor.getInitiativeScore(this.id, id) : -1;
await this.updateEmbeddedDocuments("Combatant", [{ _id: id, initiative: initScore }]);
setTimeout(() => this.processOtherTurns(c, initScore), 400)
}
return this; return this;
} }
@ -20,11 +32,4 @@ export class DarkStarsCombat extends Combat {
_onUpdate(changed, options, userId) { _onUpdate(changed, options, userId) {
} }
/* -------------------------------------------- */
static async checkTurnPosition() {
while (game.combat.turn > 0) {
await game.combat.previousTurn()
}
}
} }

View File

@ -1 +1 @@
MANIFEST-000086 MANIFEST-000098

View File

@ -1,8 +1,8 @@
2023/10/19-14:23:17.464021 7f8105ffb6c0 Recovering log #84 2023/10/21-09:46:53.172622 7f8106ffd6c0 Recovering log #96
2023/10/19-14:23:17.473986 7f8105ffb6c0 Delete type=3 #82 2023/10/21-09:46:53.183332 7f8106ffd6c0 Delete type=3 #94
2023/10/19-14:23:17.474084 7f8105ffb6c0 Delete type=0 #84 2023/10/21-09:46:53.183472 7f8106ffd6c0 Delete type=0 #96
2023/10/19-14:23:44.289799 7f7e677006c0 Level-0 table #89: started 2023/10/21-10:25:16.591050 7f7e677006c0 Level-0 table #101: started
2023/10/19-14:23:44.289832 7f7e677006c0 Level-0 table #89: 0 bytes OK 2023/10/21-10:25:16.591087 7f7e677006c0 Level-0 table #101: 0 bytes OK
2023/10/19-14:23:44.296197 7f7e677006c0 Delete type=0 #87 2023/10/21-10:25:16.597356 7f7e677006c0 Delete type=0 #99
2023/10/19-14:23:44.308133 7f7e677006c0 Manual compaction at level-0 from '!items!3O3MjRkrmX4HeaPY' @ 72057594037927935 : 1 .. '!items!q9JGWL4y4udYrzvD' @ 0 : 0; will stop at (end) 2023/10/21-10:25:16.608021 7f7e677006c0 Manual compaction at level-0 from '!items!3O3MjRkrmX4HeaPY' @ 72057594037927935 : 1 .. '!items!q9JGWL4y4udYrzvD' @ 0 : 0; will stop at (end)
2023/10/19-14:23:44.315305 7f7e677006c0 Manual compaction at level-1 from '!items!3O3MjRkrmX4HeaPY' @ 72057594037927935 : 1 .. '!items!q9JGWL4y4udYrzvD' @ 0 : 0; will stop at (end) 2023/10/21-10:25:16.619288 7f7e677006c0 Manual compaction at level-1 from '!items!3O3MjRkrmX4HeaPY' @ 72057594037927935 : 1 .. '!items!q9JGWL4y4udYrzvD' @ 0 : 0; will stop at (end)

View File

@ -1,8 +1,8 @@
2023/10/19-14:21:21.592351 7f81067fc6c0 Recovering log #80 2023/10/21-09:05:36.542041 7f8105ffb6c0 Recovering log #92
2023/10/19-14:21:21.605971 7f81067fc6c0 Delete type=3 #78 2023/10/21-09:05:36.602565 7f8105ffb6c0 Delete type=3 #90
2023/10/19-14:21:21.606020 7f81067fc6c0 Delete type=0 #80 2023/10/21-09:05:36.602727 7f8105ffb6c0 Delete type=0 #92
2023/10/19-14:21:29.423091 7f7e677006c0 Level-0 table #85: started 2023/10/21-09:46:38.900681 7f7e677006c0 Level-0 table #97: started
2023/10/19-14:21:29.423116 7f7e677006c0 Level-0 table #85: 0 bytes OK 2023/10/21-09:46:38.900730 7f7e677006c0 Level-0 table #97: 0 bytes OK
2023/10/19-14:21:29.429490 7f7e677006c0 Delete type=0 #83 2023/10/21-09:46:38.908919 7f7e677006c0 Delete type=0 #95
2023/10/19-14:21:29.429754 7f7e677006c0 Manual compaction at level-0 from '!items!3O3MjRkrmX4HeaPY' @ 72057594037927935 : 1 .. '!items!q9JGWL4y4udYrzvD' @ 0 : 0; will stop at (end) 2023/10/21-09:46:38.909203 7f7e677006c0 Manual compaction at level-0 from '!items!3O3MjRkrmX4HeaPY' @ 72057594037927935 : 1 .. '!items!q9JGWL4y4udYrzvD' @ 0 : 0; will stop at (end)
2023/10/19-14:21:29.429781 7f7e677006c0 Manual compaction at level-1 from '!items!3O3MjRkrmX4HeaPY' @ 72057594037927935 : 1 .. '!items!q9JGWL4y4udYrzvD' @ 0 : 0; will stop at (end) 2023/10/21-09:46:38.909242 7f7e677006c0 Manual compaction at level-1 from '!items!3O3MjRkrmX4HeaPY' @ 72057594037927935 : 1 .. '!items!q9JGWL4y4udYrzvD' @ 0 : 0; will stop at (end)

Binary file not shown.

BIN
packs/armor/MANIFEST-000098 Normal file

Binary file not shown.

View File

@ -1 +1 @@
MANIFEST-000086 MANIFEST-000098

View File

@ -1,7 +1,7 @@
2023/10/19-14:23:17.514181 7f8105ffb6c0 Recovering log #84 2023/10/21-09:46:53.229244 7f8106ffd6c0 Recovering log #96
2023/10/19-14:23:17.524402 7f8105ffb6c0 Delete type=3 #82 2023/10/21-09:46:53.239724 7f8106ffd6c0 Delete type=3 #94
2023/10/19-14:23:17.524492 7f8105ffb6c0 Delete type=0 #84 2023/10/21-09:46:53.239823 7f8106ffd6c0 Delete type=0 #96
2023/10/19-14:23:44.349622 7f7e677006c0 Level-0 table #89: started 2023/10/21-10:25:16.646538 7f7e677006c0 Level-0 table #101: started
2023/10/19-14:23:44.349700 7f7e677006c0 Level-0 table #89: 0 bytes OK 2023/10/21-10:25:16.646627 7f7e677006c0 Level-0 table #101: 0 bytes OK
2023/10/19-14:23:44.359464 7f7e677006c0 Delete type=0 #87 2023/10/21-10:25:16.654130 7f7e677006c0 Delete type=0 #99
2023/10/19-14:23:44.366187 7f7e677006c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end) 2023/10/21-10:25:16.674543 7f7e677006c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)

View File

@ -1,7 +1,7 @@
2023/10/19-14:21:21.649569 7f81067fc6c0 Recovering log #80 2023/10/21-09:05:36.797969 7f8105ffb6c0 Recovering log #92
2023/10/19-14:21:21.659028 7f81067fc6c0 Delete type=3 #78 2023/10/21-09:05:36.849645 7f8105ffb6c0 Delete type=3 #90
2023/10/19-14:21:21.659086 7f81067fc6c0 Delete type=0 #80 2023/10/21-09:05:36.849750 7f8105ffb6c0 Delete type=0 #92
2023/10/19-14:21:29.450398 7f7e677006c0 Level-0 table #85: started 2023/10/21-09:46:38.929884 7f7e677006c0 Level-0 table #97: started
2023/10/19-14:21:29.450420 7f7e677006c0 Level-0 table #85: 0 bytes OK 2023/10/21-09:46:38.929933 7f7e677006c0 Level-0 table #97: 0 bytes OK
2023/10/19-14:21:29.457998 7f7e677006c0 Delete type=0 #83 2023/10/21-09:46:38.937826 7f7e677006c0 Delete type=0 #95
2023/10/19-14:21:29.458158 7f7e677006c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end) 2023/10/21-09:46:38.938170 7f7e677006c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)

Binary file not shown.

Binary file not shown.

View File

@ -1 +1 @@
MANIFEST-000086 MANIFEST-000098

View File

@ -1,7 +1,7 @@
2023/10/19-14:23:17.526061 7f81067fc6c0 Recovering log #84 2023/10/21-09:46:53.241977 7f81067fc6c0 Recovering log #96
2023/10/19-14:23:17.536635 7f81067fc6c0 Delete type=3 #82 2023/10/21-09:46:53.252607 7f81067fc6c0 Delete type=3 #94
2023/10/19-14:23:17.536706 7f81067fc6c0 Delete type=0 #84 2023/10/21-09:46:53.252753 7f81067fc6c0 Delete type=0 #96
2023/10/19-14:23:44.359668 7f7e677006c0 Level-0 table #89: started 2023/10/21-10:25:16.654235 7f7e677006c0 Level-0 table #101: started
2023/10/19-14:23:44.359693 7f7e677006c0 Level-0 table #89: 0 bytes OK 2023/10/21-10:25:16.654260 7f7e677006c0 Level-0 table #101: 0 bytes OK
2023/10/19-14:23:44.365782 7f7e677006c0 Delete type=0 #87 2023/10/21-10:25:16.660290 7f7e677006c0 Delete type=0 #99
2023/10/19-14:23:44.374031 7f7e677006c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end) 2023/10/21-10:25:16.674565 7f7e677006c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)

View File

@ -1,7 +1,7 @@
2023/10/19-14:21:21.661284 7f8105ffb6c0 Recovering log #80 2023/10/21-09:05:36.852656 7f81067fc6c0 Recovering log #92
2023/10/19-14:21:21.672219 7f8105ffb6c0 Delete type=3 #78 2023/10/21-09:05:36.913271 7f81067fc6c0 Delete type=3 #90
2023/10/19-14:21:21.672266 7f8105ffb6c0 Delete type=0 #80 2023/10/21-09:05:36.913385 7f81067fc6c0 Delete type=0 #92
2023/10/19-14:21:29.471453 7f7e677006c0 Level-0 table #85: started 2023/10/21-09:46:38.952342 7f7e677006c0 Level-0 table #97: started
2023/10/19-14:21:29.471474 7f7e677006c0 Level-0 table #85: 0 bytes OK 2023/10/21-09:46:38.952387 7f7e677006c0 Level-0 table #97: 0 bytes OK
2023/10/19-14:21:29.477920 7f7e677006c0 Delete type=0 #83 2023/10/21-09:46:38.959129 7f7e677006c0 Delete type=0 #95
2023/10/19-14:21:29.485644 7f7e677006c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end) 2023/10/21-09:46:38.966401 7f7e677006c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)

Binary file not shown.

Binary file not shown.

View File

@ -1 +1 @@
MANIFEST-000014 MANIFEST-000026

View File

@ -1,8 +1,8 @@
2023/10/19-14:23:17.564165 7f8105ffb6c0 Recovering log #12 2023/10/21-09:46:53.283509 7f8106ffd6c0 Recovering log #24
2023/10/19-14:23:17.574763 7f8105ffb6c0 Delete type=3 #10 2023/10/21-09:46:53.293910 7f8106ffd6c0 Delete type=3 #22
2023/10/19-14:23:17.574939 7f8105ffb6c0 Delete type=0 #12 2023/10/21-09:46:53.294097 7f8106ffd6c0 Delete type=0 #24
2023/10/19-14:23:44.381284 7f7e677006c0 Level-0 table #17: started 2023/10/21-10:25:16.674800 7f7e677006c0 Level-0 table #29: started
2023/10/19-14:23:44.381329 7f7e677006c0 Level-0 table #17: 0 bytes OK 2023/10/21-10:25:16.674835 7f7e677006c0 Level-0 table #29: 0 bytes OK
2023/10/19-14:23:44.388649 7f7e677006c0 Delete type=0 #15 2023/10/21-10:25:16.680984 7f7e677006c0 Delete type=0 #27
2023/10/19-14:23:44.388809 7f7e677006c0 Manual compaction at level-0 from '!items!0JlVJvgxQQWY8lpO' @ 72057594037927935 : 1 .. '!items!zjxV4mcELwbZU8Et' @ 0 : 0; will stop at (end) 2023/10/21-10:25:16.681147 7f7e677006c0 Manual compaction at level-0 from '!items!0JlVJvgxQQWY8lpO' @ 72057594037927935 : 1 .. '!items!zjxV4mcELwbZU8Et' @ 0 : 0; will stop at (end)
2023/10/19-14:23:44.388823 7f7e677006c0 Manual compaction at level-1 from '!items!0JlVJvgxQQWY8lpO' @ 72057594037927935 : 1 .. '!items!zjxV4mcELwbZU8Et' @ 0 : 0; will stop at (end) 2023/10/21-10:25:16.681203 7f7e677006c0 Manual compaction at level-1 from '!items!0JlVJvgxQQWY8lpO' @ 72057594037927935 : 1 .. '!items!zjxV4mcELwbZU8Et' @ 0 : 0; will stop at (end)

View File

@ -1,8 +1,8 @@
2023/10/19-14:21:21.698718 7f81067fc6c0 Recovering log #8 2023/10/21-09:05:37.030189 7f8105ffb6c0 Recovering log #20
2023/10/19-14:21:21.708742 7f81067fc6c0 Delete type=3 #6 2023/10/21-09:05:37.086732 7f8105ffb6c0 Delete type=3 #18
2023/10/19-14:21:21.708788 7f81067fc6c0 Delete type=0 #8 2023/10/21-09:05:37.086828 7f8105ffb6c0 Delete type=0 #20
2023/10/19-14:21:29.478169 7f7e677006c0 Level-0 table #13: started 2023/10/21-09:46:38.959328 7f7e677006c0 Level-0 table #25: started
2023/10/19-14:21:29.478226 7f7e677006c0 Level-0 table #13: 0 bytes OK 2023/10/21-09:46:38.959384 7f7e677006c0 Level-0 table #25: 0 bytes OK
2023/10/19-14:21:29.485516 7f7e677006c0 Delete type=0 #11 2023/10/21-09:46:38.966078 7f7e677006c0 Delete type=0 #23
2023/10/19-14:21:29.485668 7f7e677006c0 Manual compaction at level-0 from '!items!0JlVJvgxQQWY8lpO' @ 72057594037927935 : 1 .. '!items!zjxV4mcELwbZU8Et' @ 0 : 0; will stop at (end) 2023/10/21-09:46:38.966424 7f7e677006c0 Manual compaction at level-0 from '!items!0JlVJvgxQQWY8lpO' @ 72057594037927935 : 1 .. '!items!zjxV4mcELwbZU8Et' @ 0 : 0; will stop at (end)
2023/10/19-14:21:29.485692 7f7e677006c0 Manual compaction at level-1 from '!items!0JlVJvgxQQWY8lpO' @ 72057594037927935 : 1 .. '!items!zjxV4mcELwbZU8Et' @ 0 : 0; will stop at (end) 2023/10/21-09:46:38.966478 7f7e677006c0 Manual compaction at level-1 from '!items!0JlVJvgxQQWY8lpO' @ 72057594037927935 : 1 .. '!items!zjxV4mcELwbZU8Et' @ 0 : 0; will stop at (end)

Binary file not shown.

Binary file not shown.

View File

@ -1 +1 @@
MANIFEST-000086 MANIFEST-000098

View File

@ -1,7 +1,7 @@
2023/10/19-14:23:17.476233 7f81067fc6c0 Recovering log #84 2023/10/21-09:46:53.186412 7f81067fc6c0 Recovering log #96
2023/10/19-14:23:17.486711 7f81067fc6c0 Delete type=3 #82 2023/10/21-09:46:53.197532 7f81067fc6c0 Delete type=3 #94
2023/10/19-14:23:17.486835 7f81067fc6c0 Delete type=0 #84 2023/10/21-09:46:53.197674 7f81067fc6c0 Delete type=0 #96
2023/10/19-14:23:44.308192 7f7e677006c0 Level-0 table #89: started 2023/10/21-10:25:16.619385 7f7e677006c0 Level-0 table #101: started
2023/10/19-14:23:44.308251 7f7e677006c0 Level-0 table #89: 0 bytes OK 2023/10/21-10:25:16.619433 7f7e677006c0 Level-0 table #101: 0 bytes OK
2023/10/19-14:23:44.315142 7f7e677006c0 Delete type=0 #87 2023/10/21-10:25:16.626151 7f7e677006c0 Delete type=0 #99
2023/10/19-14:23:44.327450 7f7e677006c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end) 2023/10/21-10:25:16.646310 7f7e677006c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)

View File

@ -1,7 +1,7 @@
2023/10/19-14:21:21.608294 7f8105ffb6c0 Recovering log #80 2023/10/21-09:05:36.606696 7f81067fc6c0 Recovering log #92
2023/10/19-14:21:21.621354 7f8105ffb6c0 Delete type=3 #78 2023/10/21-09:05:36.670021 7f81067fc6c0 Delete type=3 #90
2023/10/19-14:21:21.621556 7f8105ffb6c0 Delete type=0 #80 2023/10/21-09:05:36.670242 7f81067fc6c0 Delete type=0 #92
2023/10/19-14:21:29.429880 7f7e677006c0 Level-0 table #85: started 2023/10/21-09:46:38.909319 7f7e677006c0 Level-0 table #97: started
2023/10/19-14:21:29.429923 7f7e677006c0 Level-0 table #85: 0 bytes OK 2023/10/21-09:46:38.909373 7f7e677006c0 Level-0 table #97: 0 bytes OK
2023/10/19-14:21:29.436342 7f7e677006c0 Delete type=0 #83 2023/10/21-09:46:38.916048 7f7e677006c0 Delete type=0 #95
2023/10/19-14:21:29.458121 7f7e677006c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end) 2023/10/21-09:46:38.938073 7f7e677006c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)

Binary file not shown.

Binary file not shown.

View File

@ -1 +1 @@
MANIFEST-000086 MANIFEST-000098

View File

@ -1,8 +1,8 @@
2023/10/19-14:23:17.550892 7f81077fe6c0 Recovering log #84 2023/10/21-09:46:53.269089 7f8105ffb6c0 Recovering log #96
2023/10/19-14:23:17.561350 7f81077fe6c0 Delete type=3 #82 2023/10/21-09:46:53.280127 7f8105ffb6c0 Delete type=3 #94
2023/10/19-14:23:17.561430 7f81077fe6c0 Delete type=0 #84 2023/10/21-09:46:53.280264 7f8105ffb6c0 Delete type=0 #96
2023/10/19-14:23:44.366215 7f7e677006c0 Level-0 table #89: started 2023/10/21-10:25:16.667464 7f7e677006c0 Level-0 table #101: started
2023/10/19-14:23:44.366274 7f7e677006c0 Level-0 table #89: 0 bytes OK 2023/10/21-10:25:16.667505 7f7e677006c0 Level-0 table #101: 0 bytes OK
2023/10/19-14:23:44.373732 7f7e677006c0 Delete type=0 #87 2023/10/21-10:25:16.674303 7f7e677006c0 Delete type=0 #99
2023/10/19-14:23:44.381253 7f7e677006c0 Manual compaction at level-0 from '!items!0LA7gMBDogO56AZK' @ 72057594037927935 : 1 .. '!items!zwZoHMkWYtMCNx9f' @ 0 : 0; will stop at (end) 2023/10/21-10:25:16.674595 7f7e677006c0 Manual compaction at level-0 from '!items!0LA7gMBDogO56AZK' @ 72057594037927935 : 1 .. '!items!zwZoHMkWYtMCNx9f' @ 0 : 0; will stop at (end)
2023/10/19-14:23:44.388799 7f7e677006c0 Manual compaction at level-1 from '!items!0LA7gMBDogO56AZK' @ 72057594037927935 : 1 .. '!items!zwZoHMkWYtMCNx9f' @ 0 : 0; will stop at (end) 2023/10/21-10:25:16.674627 7f7e677006c0 Manual compaction at level-1 from '!items!0LA7gMBDogO56AZK' @ 72057594037927935 : 1 .. '!items!zwZoHMkWYtMCNx9f' @ 0 : 0; will stop at (end)

View File

@ -1,8 +1,8 @@
2023/10/19-14:21:21.686224 7f81077fe6c0 Recovering log #80 2023/10/21-09:05:36.976673 7f81077fe6c0 Recovering log #92
2023/10/19-14:21:21.695950 7f81077fe6c0 Delete type=3 #78 2023/10/21-09:05:37.026203 7f81077fe6c0 Delete type=3 #90
2023/10/19-14:21:21.696001 7f81077fe6c0 Delete type=0 #80 2023/10/21-09:05:37.026297 7f81077fe6c0 Delete type=0 #92
2023/10/19-14:21:29.464823 7f7e677006c0 Level-0 table #85: started 2023/10/21-09:46:38.945662 7f7e677006c0 Level-0 table #97: started
2023/10/19-14:21:29.464848 7f7e677006c0 Level-0 table #85: 0 bytes OK 2023/10/21-09:46:38.945728 7f7e677006c0 Level-0 table #97: 0 bytes OK
2023/10/19-14:21:29.471318 7f7e677006c0 Delete type=0 #83 2023/10/21-09:46:38.952174 7f7e677006c0 Delete type=0 #95
2023/10/19-14:21:29.485633 7f7e677006c0 Manual compaction at level-0 from '!items!0LA7gMBDogO56AZK' @ 72057594037927935 : 1 .. '!items!zwZoHMkWYtMCNx9f' @ 0 : 0; will stop at (end) 2023/10/21-09:46:38.966374 7f7e677006c0 Manual compaction at level-0 from '!items!0LA7gMBDogO56AZK' @ 72057594037927935 : 1 .. '!items!zwZoHMkWYtMCNx9f' @ 0 : 0; will stop at (end)
2023/10/19-14:21:29.485659 7f7e677006c0 Manual compaction at level-1 from '!items!0LA7gMBDogO56AZK' @ 72057594037927935 : 1 .. '!items!zwZoHMkWYtMCNx9f' @ 0 : 0; will stop at (end) 2023/10/21-09:46:38.966462 7f7e677006c0 Manual compaction at level-1 from '!items!0LA7gMBDogO56AZK' @ 72057594037927935 : 1 .. '!items!zwZoHMkWYtMCNx9f' @ 0 : 0; will stop at (end)

Binary file not shown.

BIN
packs/perks/MANIFEST-000098 Normal file

Binary file not shown.

View File

@ -1 +1 @@
MANIFEST-000086 MANIFEST-000098

View File

@ -1,7 +1,7 @@
2023/10/19-14:23:17.488686 7f8106ffd6c0 Recovering log #84 2023/10/21-09:46:53.199962 7f81077fe6c0 Recovering log #96
2023/10/19-14:23:17.499250 7f8106ffd6c0 Delete type=3 #82 2023/10/21-09:46:53.211394 7f81077fe6c0 Delete type=3 #94
2023/10/19-14:23:17.499317 7f8106ffd6c0 Delete type=0 #84 2023/10/21-09:46:53.211491 7f81077fe6c0 Delete type=0 #96
2023/10/19-14:23:44.315318 7f7e677006c0 Level-0 table #89: started 2023/10/21-10:25:16.626403 7f7e677006c0 Level-0 table #101: started
2023/10/19-14:23:44.315347 7f7e677006c0 Level-0 table #89: 0 bytes OK 2023/10/21-10:25:16.626435 7f7e677006c0 Level-0 table #101: 0 bytes OK
2023/10/19-14:23:44.327312 7f7e677006c0 Delete type=0 #87 2023/10/21-10:25:16.633066 7f7e677006c0 Delete type=0 #99
2023/10/19-14:23:44.359651 7f7e677006c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end) 2023/10/21-10:25:16.646322 7f7e677006c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)

View File

@ -1,7 +1,7 @@
2023/10/19-14:21:21.623245 7f8106ffd6c0 Recovering log #80 2023/10/21-09:05:36.672950 7f8106ffd6c0 Recovering log #92
2023/10/19-14:21:21.634568 7f8106ffd6c0 Delete type=3 #78 2023/10/21-09:05:36.722365 7f8106ffd6c0 Delete type=3 #90
2023/10/19-14:21:21.634612 7f8106ffd6c0 Delete type=0 #80 2023/10/21-09:05:36.722463 7f8106ffd6c0 Delete type=0 #92
2023/10/19-14:21:29.436593 7f7e677006c0 Level-0 table #85: started 2023/10/21-09:46:38.916263 7f7e677006c0 Level-0 table #97: started
2023/10/19-14:21:29.436653 7f7e677006c0 Level-0 table #85: 0 bytes OK 2023/10/21-09:46:38.916316 7f7e677006c0 Level-0 table #97: 0 bytes OK
2023/10/19-14:21:29.443853 7f7e677006c0 Delete type=0 #83 2023/10/21-09:46:38.923082 7f7e677006c0 Delete type=0 #95
2023/10/19-14:21:29.458132 7f7e677006c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end) 2023/10/21-09:46:38.938109 7f7e677006c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)

Binary file not shown.

Binary file not shown.

View File

@ -1 +1 @@
MANIFEST-000086 MANIFEST-000098

View File

@ -1,8 +1,8 @@
2023/10/19-14:23:17.538148 7f8106ffd6c0 Recovering log #84 2023/10/21-09:46:53.254913 7f81077fe6c0 Recovering log #96
2023/10/19-14:23:17.548230 7f8106ffd6c0 Delete type=3 #82 2023/10/21-09:46:53.266376 7f81077fe6c0 Delete type=3 #94
2023/10/19-14:23:17.548293 7f8106ffd6c0 Delete type=0 #84 2023/10/21-09:46:53.266469 7f81077fe6c0 Delete type=0 #96
2023/10/19-14:23:44.374140 7f7e677006c0 Level-0 table #89: started 2023/10/21-10:25:16.660405 7f7e677006c0 Level-0 table #101: started
2023/10/19-14:23:44.374218 7f7e677006c0 Level-0 table #89: 0 bytes OK 2023/10/21-10:25:16.660579 7f7e677006c0 Level-0 table #101: 0 bytes OK
2023/10/19-14:23:44.380552 7f7e677006c0 Delete type=0 #87 2023/10/21-10:25:16.667324 7f7e677006c0 Delete type=0 #99
2023/10/19-14:23:44.388786 7f7e677006c0 Manual compaction at level-0 from '!items!5YJWuGaagmi1dgbv' @ 72057594037927935 : 1 .. '!items!yo7mOkfbbOogx8na' @ 0 : 0; will stop at (end) 2023/10/21-10:25:16.674581 7f7e677006c0 Manual compaction at level-0 from '!items!5YJWuGaagmi1dgbv' @ 72057594037927935 : 1 .. '!items!yo7mOkfbbOogx8na' @ 0 : 0; will stop at (end)
2023/10/19-14:23:44.388816 7f7e677006c0 Manual compaction at level-1 from '!items!5YJWuGaagmi1dgbv' @ 72057594037927935 : 1 .. '!items!yo7mOkfbbOogx8na' @ 0 : 0; will stop at (end) 2023/10/21-10:25:16.674617 7f7e677006c0 Manual compaction at level-1 from '!items!5YJWuGaagmi1dgbv' @ 72057594037927935 : 1 .. '!items!yo7mOkfbbOogx8na' @ 0 : 0; will stop at (end)

View File

@ -1,8 +1,8 @@
2023/10/19-14:21:21.674379 7f8106ffd6c0 Recovering log #80 2023/10/21-09:05:36.915510 7f8106ffd6c0 Recovering log #92
2023/10/19-14:21:21.684244 7f8106ffd6c0 Delete type=3 #78 2023/10/21-09:05:36.973675 7f8106ffd6c0 Delete type=3 #90
2023/10/19-14:21:21.684289 7f8106ffd6c0 Delete type=0 #80 2023/10/21-09:05:36.973827 7f8106ffd6c0 Delete type=0 #92
2023/10/19-14:21:29.458222 7f7e677006c0 Level-0 table #85: started 2023/10/21-09:46:38.938371 7f7e677006c0 Level-0 table #97: started
2023/10/19-14:21:29.458243 7f7e677006c0 Level-0 table #85: 0 bytes OK 2023/10/21-09:46:38.938498 7f7e677006c0 Level-0 table #97: 0 bytes OK
2023/10/19-14:21:29.464567 7f7e677006c0 Delete type=0 #83 2023/10/21-09:46:38.945449 7f7e677006c0 Delete type=0 #95
2023/10/19-14:21:29.485621 7f7e677006c0 Manual compaction at level-0 from '!items!5YJWuGaagmi1dgbv' @ 72057594037927935 : 1 .. '!items!yo7mOkfbbOogx8na' @ 0 : 0; will stop at (end) 2023/10/21-09:46:38.966340 7f7e677006c0 Manual compaction at level-0 from '!items!5YJWuGaagmi1dgbv' @ 72057594037927935 : 1 .. '!items!yo7mOkfbbOogx8na' @ 0 : 0; will stop at (end)
2023/10/19-14:21:29.485652 7f7e677006c0 Manual compaction at level-1 from '!items!5YJWuGaagmi1dgbv' @ 72057594037927935 : 1 .. '!items!yo7mOkfbbOogx8na' @ 0 : 0; will stop at (end) 2023/10/21-09:46:38.966443 7f7e677006c0 Manual compaction at level-1 from '!items!5YJWuGaagmi1dgbv' @ 72057594037927935 : 1 .. '!items!yo7mOkfbbOogx8na' @ 0 : 0; will stop at (end)

Binary file not shown.

Binary file not shown.

View File

@ -1 +1 @@
MANIFEST-000087 MANIFEST-000099

View File

@ -1,8 +1,8 @@
2023/10/19-14:23:17.501171 7f81077fe6c0 Recovering log #85 2023/10/21-09:46:53.214012 7f8105ffb6c0 Recovering log #97
2023/10/19-14:23:17.512341 7f81077fe6c0 Delete type=3 #83 2023/10/21-09:46:53.225802 7f8105ffb6c0 Delete type=3 #95
2023/10/19-14:23:17.512406 7f81077fe6c0 Delete type=0 #85 2023/10/21-09:46:53.225949 7f8105ffb6c0 Delete type=0 #97
2023/10/19-14:23:44.327463 7f7e677006c0 Level-0 table #90: started 2023/10/21-10:25:16.639905 7f7e677006c0 Level-0 table #102: started
2023/10/19-14:23:44.327490 7f7e677006c0 Level-0 table #90: 0 bytes OK 2023/10/21-10:25:16.639966 7f7e677006c0 Level-0 table #102: 0 bytes OK
2023/10/19-14:23:44.349170 7f7e677006c0 Delete type=0 #88 2023/10/21-10:25:16.646212 7f7e677006c0 Delete type=0 #100
2023/10/19-14:23:44.366131 7f7e677006c0 Manual compaction at level-0 from '!items!265V8wzrrH3EEgtM' @ 72057594037927935 : 1 .. '!items!zx96NZdE3GrK999G' @ 0 : 0; will stop at (end) 2023/10/21-10:25:16.646343 7f7e677006c0 Manual compaction at level-0 from '!items!265V8wzrrH3EEgtM' @ 72057594037927935 : 1 .. '!items!zx96NZdE3GrK999G' @ 0 : 0; will stop at (end)
2023/10/19-14:23:44.374062 7f7e677006c0 Manual compaction at level-1 from '!items!265V8wzrrH3EEgtM' @ 72057594037927935 : 1 .. '!items!zx96NZdE3GrK999G' @ 0 : 0; will stop at (end) 2023/10/21-10:25:16.646390 7f7e677006c0 Manual compaction at level-1 from '!items!265V8wzrrH3EEgtM' @ 72057594037927935 : 1 .. '!items!zx96NZdE3GrK999G' @ 0 : 0; will stop at (end)

View File

@ -1,8 +1,8 @@
2023/10/19-14:21:21.636140 7f81077fe6c0 Recovering log #81 2023/10/21-09:05:36.724936 7f81077fe6c0 Recovering log #93
2023/10/19-14:21:21.647041 7f81077fe6c0 Delete type=3 #79 2023/10/21-09:05:36.794933 7f81077fe6c0 Delete type=3 #91
2023/10/19-14:21:21.647106 7f81077fe6c0 Delete type=0 #81 2023/10/21-09:05:36.795073 7f81077fe6c0 Delete type=0 #93
2023/10/19-14:21:29.443983 7f7e677006c0 Level-0 table #86: started 2023/10/21-09:46:38.923258 7f7e677006c0 Level-0 table #98: started
2023/10/19-14:21:29.444004 7f7e677006c0 Level-0 table #86: 0 bytes OK 2023/10/21-09:46:38.923308 7f7e677006c0 Level-0 table #98: 0 bytes OK
2023/10/19-14:21:29.450269 7f7e677006c0 Delete type=0 #84 2023/10/21-09:46:38.929697 7f7e677006c0 Delete type=0 #96
2023/10/19-14:21:29.458143 7f7e677006c0 Manual compaction at level-0 from '!items!265V8wzrrH3EEgtM' @ 72057594037927935 : 1 .. '!items!zx96NZdE3GrK999G' @ 0 : 0; will stop at (end) 2023/10/21-09:46:38.938140 7f7e677006c0 Manual compaction at level-0 from '!items!265V8wzrrH3EEgtM' @ 72057594037927935 : 1 .. '!items!zx96NZdE3GrK999G' @ 0 : 0; will stop at (end)
2023/10/19-14:21:29.458168 7f7e677006c0 Manual compaction at level-1 from '!items!265V8wzrrH3EEgtM' @ 72057594037927935 : 1 .. '!items!zx96NZdE3GrK999G' @ 0 : 0; will stop at (end) 2023/10/21-09:46:38.938202 7f7e677006c0 Manual compaction at level-1 from '!items!265V8wzrrH3EEgtM' @ 72057594037927935 : 1 .. '!items!zx96NZdE3GrK999G' @ 0 : 0; will stop at (end)

View File

@ -109,14 +109,14 @@
"styles": [ "styles": [
"styles/simple.css" "styles/simple.css"
], ],
"version": "11.0.7", "version": "11.0.8",
"compatibility": { "compatibility": {
"minimum": "11", "minimum": "11",
"verified": "11" "verified": "11"
}, },
"title": "Dark Stars RPG", "title": "Dark Stars RPG",
"manifest": "https://www.uberwald.me/gitea/uberwald/fvtt-dark-stars/raw/branch/main/system.json", "manifest": "https://www.uberwald.me/gitea/uberwald/fvtt-dark-stars/raw/branch/main/system.json",
"download": "https://www.uberwald.me/gitea/uberwald/fvtt-dark-stars/archive/fvtt-dark-stars-v11.0.7.zip", "download": "https://www.uberwald.me/gitea/uberwald/fvtt-dark-stars/archive/fvtt-dark-stars-v11.0.8.zip",
"url": "https://www.uberwald.me/gitea/uberwald/", "url": "https://www.uberwald.me/gitea/uberwald/",
"background": "images/ui/dark_stars_welcome_page.webp", "background": "images/ui/dark_stars_welcome_page.webp",
"id": "fvtt-dark-stars" "id": "fvtt-dark-stars"

View File

@ -278,7 +278,8 @@
"weapon", "weapon",
"money", "money",
"genetic", "genetic",
"cyber" "cyber",
"ammo"
], ],
"skill": { "skill": {
"base": "", "base": "",
@ -394,11 +395,23 @@
"quantity": 0, "quantity": 0,
"description": "" "description": ""
}, },
"ammo": {
"ava": "",
"damage": "",
"bulk": 0,
"br": 0,
"cost": 0,
"sp": 0,
"quantity": 0,
"properties": ""
},
"weapon": { "weapon": {
"weapontype": "", "weapontype": "",
"associatedskill": "", "associatedskill": "",
"penetrationmin": "", "penetrationmin": "",
"penetrationmax": "", "penetrationmax": "",
"needammo": false,
"ammoid": "",
"hashpdamage": true, "hashpdamage": true,
"damage": "", "damage": "",
"hasfatiguedamage": false, "hasfatiguedamage": false,

View File

@ -153,12 +153,15 @@
<span class="item-name-label-header-long"> <span class="item-name-label-header-long">
<h3><label class="items-title-text">Weapons</label></h3> <h3><label class="items-title-text">Weapons</label></h3>
</span> </span>
<span class="item-field-label-short"> <span class="item-field-label-medium">
<label class="short-label">Type</label> <label class="short-label">Type</label>
</span> </span>
<span class="item-field-label-long"> <span class="item-field-label-long">
<label class="short-label">Skill</label> <label class="short-label">Skill</label>
</span> </span>
<span class="item-field-label-long">
<label class="short-label">Ammo</label>
</span>
<span class="item-field-label-medium"> <span class="item-field-label-medium">
<label class="short-label">Damage</label> <label class="short-label">Damage</label>
</span> </span>
@ -169,13 +172,28 @@
src="{{weapon.img}}" /></a> src="{{weapon.img}}" /></a>
<span class="item-name-label-long"><a class ="roll-weapon">{{weapon.name}}</a></span> <span class="item-name-label-long"><a class ="roll-weapon">{{weapon.name}}</a></span>
<span class="item-field-label-short">{{upperFirst weapon.system.weapontype}}</span> <span class="item-field-label-medium">{{upperFirst weapon.system.weapontype}}</span>
<span class="item-field-label-long">{{weapon.system.skill}}</span>
<span class="item-field-label-long">{{weapon.system.damage}}</span>
<span class="item-field-label-long">{{upperFirst weapon.system.associatedskill}}</span>
{{#if weapon.system.needammo}}
<select class="item-field-label-long edit-weapon-ammo" type="text" data-dtype="String">
{{#select system.ammoid}}
<option value="">None</option>
{{#each @root.ammos as |ammo index|}}
<option value="{{ammo._id}}">{{ammo.name}}</option>
{{/each}}
{{/select}}
</select>
{{#if weapon.ammo}}
<span class="item-field-label-medium"><label>{{weapon.ammo.system.damage}}</label></span>
{{else}}
<span class="item-field-label-medium"><label>-</label></span>
{{/if}}
{{else}}
<span class="item-field-label-long"><label>N/A</label></span>
<span class="item-field-label-medium"><label>{{weapon.system.damage}}</label></span>
{{/if}}
<div class="item-filler">&nbsp;</div> <div class="item-filler">&nbsp;</div>
<div class="item-controls item-controls-fixed"> <div class="item-controls item-controls-fixed">
@ -296,12 +314,20 @@
<span class="item-name-label-header"> <span class="item-name-label-header">
<h3><label class="items-title-text">Weapons</label></h3> <h3><label class="items-title-text">Weapons</label></h3>
</span> </span>
<span class="item-field-label-short">
<span class="item-field-label-medium">
<label class="short-label">Attack</label> <label class="short-label">Attack</label>
</span> </span>
<span class="item-field-label-short">
<label class="short-label">Damage</label> <span class="item-field-label-vlong">
<label class="short-label">Ammo</label>
</span> </span>
<span class="item-field-label-medium">
<label class="short-label">Damage</label>
</span>
<div class="item-filler">&nbsp;</div>
<div class="item-controls item-controls-fixed"> <div class="item-controls item-controls-fixed">
<a class="item-control item-add" data-type="weapon" title="Create Item"><i class="fas fa-plus"></i></a> <a class="item-control item-add" data-type="weapon" title="Create Item"><i class="fas fa-plus"></i></a>
</div> </div>
@ -311,8 +337,27 @@
<a class="item-edit item-name-img" title="Edit Item"><img class="sheet-competence-img" <a class="item-edit item-name-img" title="Edit Item"><img class="sheet-competence-img"
src="{{weapon.img}}" /></a> src="{{weapon.img}}" /></a>
<span class="item-name-label">{{weapon.name}}</span> <span class="item-name-label">{{weapon.name}}</span>
<span class="item-field-label-short"><label>{{weapon.system.ability}}</label></span>
<span class="item-field-label-short"><label>{{weapon.system.damage}}</label></span> <span class="item-field-label-medium"><label>{{weapon.system.weapontype}}</label></span>
{{#if weapon.system.needammo}}
<select class="item-field-label-vlong edit-weapon-ammo" type="text" data-dtype="String">
{{#select system.ammoid}}
<option value="">None</option>
{{#each @root.ammos as |ammo index|}}
<option value="{{ammo._id}}">{{ammo.name}}</option>
{{/each}}
{{/select}}
</select>
{{#if weapon.ammo}}
<span class="item-field-label-medium"><label>{{weapon.ammo.system.damage}}</label></span>
{{else}}
<span class="item-field-label-medium"><label>-</label></span>
{{/if}}
{{else}}
<span class="item-field-label-vlong"><label>N/A</label></span>
<span class="item-field-label-medium"><label>{{weapon.system.damage}}</label></span>
{{/if}}
<div class="item-filler">&nbsp;</div> <div class="item-filler">&nbsp;</div>
<div class="item-controls item-controls-fixed"> <div class="item-controls item-controls-fixed">
@ -324,15 +369,47 @@
{{/each}} {{/each}}
</ul> </ul>
<ul class="item-list alternate-list">
<li class="item flexrow list-item items-title-bg">
<span class="item-name-label-header">
<h3><label class="items-title-text">Ammos</label></h3>
</span>
<span class="item-field-label-short">
<label class="short-label">Quantity</label>
</span>
<span class="item-field-label-short">
<label class="short-label">Damage</label>
</span>
<div class="item-filler">&nbsp;</div>
<div class="item-controls item-controls-fixed">
<a class="item-control item-add" data-type="weapon" title="Create Item"><i class="fas fa-plus"></i></a>
</div>
</li>
{{#each ammos as |ammo key|}}
<li class="item flexrow list-item list-item-shadow" data-item-id="{{ammo._id}}">
<a class="item-edit item-name-img" title="Edit Item"><img class="sheet-competence-img"
src="{{ammo.img}}" /></a>
<span class="item-name-label">{{ammo.name}}</span>
<span class="item-field-label-short"><label>{{ammo.system.quantity}}</label></span>
<span class="item-field-label-short"><label>{{ammo.system.damage}}</label></span>
<div class="item-filler">&nbsp;</div>
<div class="item-controls item-controls-fixed">
<a class="item-control item-delete" title="Delete Item"><i class="fas fa-trash"></i></a>
</div>
</li>
{{/each}}
</ul>
<ul class="item-list alternate-list"> <ul class="item-list alternate-list">
<li class="item flexrow list-item items-title-bg"> <li class="item flexrow list-item items-title-bg">
<span class="item-name-label-header"> <span class="item-name-label-header">
<h3><label class="items-title-text">Armors</label></h3> <h3><label class="items-title-text">Armors</label></h3>
</span> </span>
<span class="item-field-label-short"> <span class="item-field-label-medium">
<label class="short-label">Type</label> <label class="short-label">Type</label>
</span> </span>
<span class="item-field-label-short"> <span class="item-field-label-medium">
<label class="short-label">Absorption</label> <label class="short-label">Absorption</label>
</span> </span>
@ -346,8 +423,8 @@
<a class="item-edit item-name-img" title="Edit Item"><img class="sheet-competence-img" <a class="item-edit item-name-img" title="Edit Item"><img class="sheet-competence-img"
src="{{armor.img}}" /></a> src="{{armor.img}}" /></a>
<span class="item-name-label">{{armor.name}}</span> <span class="item-name-label">{{armor.name}}</span>
<span class="item-field-label-short">{{upper armor.system.armortype}}</span> <span class="item-field-label-medium">{{upper armor.system.armortype}}</span>
<span class="item-field-label-short">{{armor.system.absorprionroll}}</span> <span class="item-field-label-medium">{{armor.system.absorprionroll}}</span>
<div class="item-filler">&nbsp;</div> <div class="item-filler">&nbsp;</div>
<div class="item-controls item-controls-fixed"> <div class="item-controls item-controls-fixed">

View File

@ -50,11 +50,15 @@
{{/if}} {{/if}}
{{#if (and weapon isSuccess)}} {{#if (and weapon isSuccess)}}
{{#if weapon.system.hashpdamage}} {{#if weapon.ammo}}
<li>Roll HP Damage: [[/r {{weapon.system.damage}}]]</li> <li>Roll Ammo Damage ({{weapon.ammo.name}}): [[/r {{weapon.ammo.system.damage}}]]</li>
{{/if}} {{else}}
{{#if weapon.system.hasfatiguedamage}} {{#if weapon.system.hashpdamage}}
<li>Roll Fatigue Damage: [[/r {{weapon.system.fatiguedamage}}]]</li> <li>Roll HP Damage: [[/r {{weapon.system.damage}}]]</li>
{{/if}}
{{#if weapon.system.hasfatiguedamage}}
<li>Roll Fatigue Damage: [[/r {{weapon.system.fatiguedamage}}]]</li>
{{/if}}
{{/if}} {{/if}}
{{/if}} {{/if}}

View File

@ -0,0 +1,56 @@
<form class="{{cssClass}}" autocomplete="off">
<header class="sheet-header">
<img class="item-sheet-img" src="{{img}}" data-edit="img" title="{{name}}"/>
<div class="header-fields">
<h1 class="charname"><input name="name" type="text" value="{{name}}" placeholder="Name"/></h1>
</div>
</header>
{{> systems/fvtt-dark-stars/templates/partials/partial-item-nav.hbs}}
{{!-- Sheet Body --}}
<section class="sheet-body">
{{> systems/fvtt-dark-stars/templates/partials/partial-item-description.hbs}}
<div class="tab details" data-group="primary" data-tab="details">
<div class="tab" data-group="primary">
<ul>
<li class="flexrow"><label class="item-field-label-long">Damage formula</label>
<input type="text" class="right item-field-label-long" name="system.damage" value="{{system.damage}}" data-dtype="String"/>
</li>
<li class="flexrow"><label class="item-field-label-long">Bulk</label>
<input type="text" class="input-numeric-short padd-right" name="system.bulk" value="{{system.bulk}}" data-dtype="Number"/>
</li>
<li class="flexrow"><label class="item-field-label-long">BR</label>
<input type="text" class="input-numeric-short padd-right" name="system.br" value="{{system.br}}" data-dtype="Number"/>
</li>
<li class="flexrow"><label class="item-field-label-long">SP</label>
<input type="text" class="input-numeric-short padd-right" name="system.sp" value="{{system.sp}}" data-dtype="Number"/>
</li>
<li class="flexrow"><label class="item-field-label-long">Properties</label>
<input type="text" class="right item-field-label-long" name="system.properties" value="{{system.properties}}" data-dtype="String"/>
</li>
<li class="flexrow"><label class="item-field-label-long">Quantity</label>
<input type="text" class="input-numeric-short padd-right" name="system.quantity" value="{{system.quantity}}"
data-dtype="Number" />
</li>
<li class="flexrow"><label class="item-field-label-long">Cost</label>
<input type="text" class="input-numeric-short padd-right" name="system.cost" value="{{system.cost}}" data-dtype="Number"/>
</li>
</ul>
</div>
</div>
</section>
</form>

View File

@ -47,22 +47,30 @@
<input type="text" class="right item-field-label-long" name="system.penetrationmax" value="{{system.penetrationmax}}" data-dtype="String"/> <input type="text" class="right item-field-label-long" name="system.penetrationmax" value="{{system.penetrationmax}}" data-dtype="String"/>
</li> </li>
<li class="flexrow"><label class="item-field-label-vlong">HP damage ?</label> <li class="flexrow"><label class="item-field-label-vlong">Needs Ammunition ?</label>
<label class="attribute-value checkbox"><input type="checkbox" name="system.hashpdamage" {{checked system.hashpdamage}}/></label> <label class="attribute-value checkbox"><input type="checkbox" name="system.needammo" {{checked system.needammo}}/></label>
</li> </li>
{{#if system.hashpdamage}}
<li class="flexrow"><label class="item-field-label-vlong">HP Damage formula</label>
<input type="text" class="right item-field-label-long" name="system.damage" value="{{system.damage}}" data-dtype="String"/>
</li>
{{/if}}
<li class="flexrow"><label class="item-field-label-vlong">Fatigue damage ?</label> {{#if system.needammo}}
<label class="attribute-value checkbox"><input type="checkbox" name="system.hasfatiguedamage" {{checked system.hasfatiguedamage}}/></label>
</li> {{else}}
{{#if system.hasfatiguedamage}} <li class="flexrow"><label class="item-field-label-vlong">HP damage ?</label>
<li class="flexrow"><label class="item-field-label-vlong">Fatigue damage formula</label> <label class="attribute-value checkbox"><input type="checkbox" name="system.hashpdamage" {{checked system.hashpdamage}}/></label>
<input type="text" class="right item-field-label-long" name="system.fatiguedamage" value="{{system.fatiguedamage}}" data-dtype="String"/> </li>
</li> {{#if system.hashpdamage}}
<li class="flexrow"><label class="item-field-label-vlong">HP Damage formula</label>
<input type="text" class="right item-field-label-long" name="system.damage" value="{{system.damage}}" data-dtype="String"/>
</li>
{{/if}}
<li class="flexrow"><label class="item-field-label-vlong">Fatigue damage ?</label>
<label class="attribute-value checkbox"><input type="checkbox" name="system.hasfatiguedamage" {{checked system.hasfatiguedamage}}/></label>
</li>
{{#if system.hasfatiguedamage}}
<li class="flexrow"><label class="item-field-label-vlong">Fatigue damage formula</label>
<input type="text" class="right item-field-label-long" name="system.fatiguedamage" value="{{system.fatiguedamage}}" data-dtype="String"/>
</li>
{{/if}}
{{/if}} {{/if}}
<li class="flexrow"><label class="item-field-label-long">Bulk</label> <li class="flexrow"><label class="item-field-label-long">Bulk</label>