Compare commits
8 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| e92b2deacf | |||
| dc4429f3e1 | |||
| 92684b0d32 | |||
| 9786c07f1b | |||
| 2520bec30f | |||
| 9ad34b4672 | |||
| ae36be975d | |||
| 69eaa8fc66 |
+18
-1
@@ -1,3 +1,20 @@
|
|||||||
{
|
{
|
||||||
|
"TYPES": {
|
||||||
|
"Actor": {
|
||||||
|
"character": "Character"
|
||||||
|
},
|
||||||
|
"Item": {
|
||||||
|
"armor": "Armor",
|
||||||
|
"weapon": "Weapon",
|
||||||
|
"equipment": "Equipment",
|
||||||
|
"skill": "Skill",
|
||||||
|
"perk": "Perk",
|
||||||
|
"ability": "Ability",
|
||||||
|
"cumulativetask": "Cumulative Task",
|
||||||
|
"genetic": "Genetic",
|
||||||
|
"money": "Money",
|
||||||
|
"cyber": "Cyber",
|
||||||
|
"ammo": "Ammo"
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -11,7 +11,7 @@ export class DarkStarsActorSheet extends ActorSheet {
|
|||||||
/** @override */
|
/** @override */
|
||||||
static get defaultOptions() {
|
static get defaultOptions() {
|
||||||
|
|
||||||
return mergeObject(super.defaultOptions, {
|
return foundry.utils.mergeObject(super.defaultOptions, {
|
||||||
classes: ["fvtt-dark-stars", "sheet", "actor"],
|
classes: ["fvtt-dark-stars", "sheet", "actor"],
|
||||||
template: "systems/fvtt-dark-stars/templates/actors/actor-sheet.hbs",
|
template: "systems/fvtt-dark-stars/templates/actors/actor-sheet.hbs",
|
||||||
width: 960,
|
width: 960,
|
||||||
@@ -25,7 +25,7 @@ export class DarkStarsActorSheet extends ActorSheet {
|
|||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
async getData() {
|
async getData() {
|
||||||
const objectData = this.object.system
|
const objectData = this.object.system
|
||||||
let actorData = duplicate(objectData)
|
let actorData = foundry.utils.duplicate(objectData)
|
||||||
|
|
||||||
let formData = {
|
let formData = {
|
||||||
title: this.title,
|
title: this.title,
|
||||||
@@ -39,21 +39,23 @@ export class DarkStarsActorSheet extends ActorSheet {
|
|||||||
limited: this.object.limited,
|
limited: this.object.limited,
|
||||||
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( foundry.utils.duplicate(this.actor.getWeapons()) ),
|
||||||
ammos: this.actor.checkAndPrepareEquipments( duplicate(this.actor.getAmmos()) ),
|
ammos: this.actor.checkAndPrepareEquipments( foundry.utils.duplicate(this.actor.getAmmos()) ),
|
||||||
spells: this.actor.checkAndPrepareEquipments( duplicate(this.actor.getSpells()) ),
|
spells: this.actor.checkAndPrepareEquipments( foundry.utils.duplicate(this.actor.getSpells()) ),
|
||||||
powers: this.actor.checkAndPrepareEquipments( duplicate(this.actor.getPowers()) ),
|
powers: this.actor.checkAndPrepareEquipments( foundry.utils.duplicate(this.actor.getPowers()) ),
|
||||||
armors: this.actor.checkAndPrepareEquipments( duplicate(this.actor.getArmors())),
|
armors: this.actor.checkAndPrepareEquipments( foundry.utils.duplicate(this.actor.getArmors())),
|
||||||
shields: this.actor.checkAndPrepareEquipments( duplicate(this.actor.getShields())),
|
shields: this.actor.checkAndPrepareEquipments( foundry.utils.duplicate(this.actor.getShields())),
|
||||||
equipments: this.actor.checkAndPrepareEquipments(duplicate(this.actor.getEquipmentsOnly()) ),
|
equipments: this.actor.checkAndPrepareEquipments(foundry.utils.duplicate(this.actor.getEquipmentsOnly()) ),
|
||||||
equippedWeapons: this.actor.checkAndPrepareEquipments(duplicate(this.actor.getEquippedWeapons()) ),
|
equippedWeapons: this.actor.checkAndPrepareEquipments(foundry.utils.duplicate(this.actor.getEquippedWeapons()) ),
|
||||||
cybers: this.actor.checkAndPrepareEquipments(duplicate(this.actor.getCybers()) ),
|
cybers: this.actor.checkAndPrepareEquipments(foundry.utils.duplicate(this.actor.getCybers()) ),
|
||||||
genetics: this.actor.checkAndPrepareEquipments(duplicate(this.actor.getGenetics()) ),
|
genetics: this.actor.checkAndPrepareEquipments(foundry.utils.duplicate(this.actor.getGenetics()) ),
|
||||||
equippedArmor: this.actor.getEquippedArmor(),
|
equippedArmor: this.actor.getEquippedArmor(),
|
||||||
equippedShield: this.actor.getEquippedShield(),
|
equippedShield: this.actor.getEquippedShield(),
|
||||||
subActors: duplicate(this.actor.getSubActors()),
|
subActors: foundry.utils.duplicate(this.actor.getSubActors()),
|
||||||
encCapacity: this.actor.getEncumbranceCapacity(),
|
encCapacity: this.actor.getEncumbranceCapacity(),
|
||||||
conditions: this.actor.getConditions(),
|
conditions: this.actor.getConditions(),
|
||||||
|
extendedTests: this.actor.getExtendedTests(),
|
||||||
|
config: game.system.darkstars.config,
|
||||||
description: await TextEditor.enrichHTML(this.object.system.biodata.description, {async: true}),
|
description: await TextEditor.enrichHTML(this.object.system.biodata.description, {async: true}),
|
||||||
notes: await TextEditor.enrichHTML(this.object.system.biodata.notes, {async: true}),
|
notes: await TextEditor.enrichHTML(this.object.system.biodata.notes, {async: true}),
|
||||||
containersTree: this.actor.containersTree,
|
containersTree: this.actor.containersTree,
|
||||||
@@ -145,6 +147,20 @@ export class DarkStarsActorSheet extends ActorSheet {
|
|||||||
const skillId = li.data("item-id")
|
const skillId = li.data("item-id")
|
||||||
this.actor.rollSkill(skillId)
|
this.actor.rollSkill(skillId)
|
||||||
});
|
});
|
||||||
|
html.find('.roll-attribute').click((event) => {
|
||||||
|
const attrKey = $(event.currentTarget).data("attr-key")
|
||||||
|
this.actor.rollAttribute(attrKey)
|
||||||
|
})
|
||||||
|
html.find('.start-extended-test').click((event) => {
|
||||||
|
const li = $(event.currentTarget).parents(".item")
|
||||||
|
const skillId = li.data("item-id")
|
||||||
|
this.actor.rollSkill(skillId, true)
|
||||||
|
})
|
||||||
|
html.find('.roll-extended-test').click((event) => {
|
||||||
|
const li = $(event.currentTarget).parents(".item")
|
||||||
|
const testId = li.data("item-id")
|
||||||
|
this.actor.continueExtendedTest(testId)
|
||||||
|
})
|
||||||
|
|
||||||
html.find('.roll-weapon').click((event) => {
|
html.find('.roll-weapon').click((event) => {
|
||||||
const li = $(event.currentTarget).parents(".item");
|
const li = $(event.currentTarget).parents(".item");
|
||||||
|
|||||||
+94
-45
@@ -43,8 +43,6 @@ export class DarkStarsActor extends Actor {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (data.type == 'character') {
|
if (data.type == 'character') {
|
||||||
const skills = await DarkStarsUtility.loadCompendium("fvtt-dark-stars.skills");
|
|
||||||
data.items = skills.map(i => i.toObject())
|
|
||||||
}
|
}
|
||||||
if (data.type == 'npc') {
|
if (data.type == 'npc') {
|
||||||
}
|
}
|
||||||
@@ -120,54 +118,59 @@ export class DarkStarsActor extends Actor {
|
|||||||
}
|
}
|
||||||
|
|
||||||
getEquippedWeapons() {
|
getEquippedWeapons() {
|
||||||
let comp = duplicate(this.items.filter(item => item.type == 'weapon' && item.system.equipped) || []);
|
let comp = foundry.utils.duplicate(this.items.filter(item => item.type == 'weapon' && item.system.equipped) || []);
|
||||||
DarkStarsUtility.sortArrayObjectsByName(comp)
|
DarkStarsUtility.sortArrayObjectsByName(comp)
|
||||||
return comp;
|
return comp;
|
||||||
}
|
}
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
getArmors() {
|
getArmors() {
|
||||||
let comp = duplicate(this.items.filter(item => item.type == 'armor') || []);
|
let comp = foundry.utils.duplicate(this.items.filter(item => item.type == 'armor') || []);
|
||||||
DarkStarsUtility.sortArrayObjectsByName(comp)
|
DarkStarsUtility.sortArrayObjectsByName(comp)
|
||||||
return comp;
|
return comp;
|
||||||
}
|
}
|
||||||
getSpells() {
|
getSpells() {
|
||||||
let comp = duplicate(this.items.filter(item => item.type == 'spell') || []);
|
let comp = foundry.utils.duplicate(this.items.filter(item => item.type == 'spell') || []);
|
||||||
DarkStarsUtility.sortArrayObjectsByName(comp)
|
DarkStarsUtility.sortArrayObjectsByName(comp)
|
||||||
return comp;
|
return comp;
|
||||||
}
|
}
|
||||||
getPowers() {
|
getPowers() {
|
||||||
let comp = duplicate(this.items.filter(item => item.type == 'psychic') || []);
|
let comp = foundry.utils.duplicate(this.items.filter(item => item.type == 'psychic') || []);
|
||||||
|
DarkStarsUtility.sortArrayObjectsByName(comp)
|
||||||
|
return comp;
|
||||||
|
}
|
||||||
|
getExtendedTests() {
|
||||||
|
let comp = foundry.utils.duplicate(this.items.filter(item => item.type == 'extendedtest') || []);
|
||||||
DarkStarsUtility.sortArrayObjectsByName(comp)
|
DarkStarsUtility.sortArrayObjectsByName(comp)
|
||||||
return comp;
|
return comp;
|
||||||
}
|
}
|
||||||
getEquippedArmor() {
|
getEquippedArmor() {
|
||||||
let comp = this.items.find(item => item.type == 'armor' && item.system.equipped)
|
let comp = this.items.find(item => item.type == 'armor' && item.system.equipped)
|
||||||
if (comp) {
|
if (comp) {
|
||||||
return duplicate(comp)
|
return foundry.utils.duplicate(comp)
|
||||||
}
|
}
|
||||||
return undefined
|
return undefined
|
||||||
}
|
}
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
getCybers() {
|
getCybers() {
|
||||||
let comp = duplicate(this.items.filter(item => item.type == 'cyber') || []);
|
let comp = foundry.utils.duplicate(this.items.filter(item => item.type == 'cyber') || []);
|
||||||
DarkStarsUtility.sortArrayObjectsByName(comp)
|
DarkStarsUtility.sortArrayObjectsByName(comp)
|
||||||
return comp;
|
return comp;
|
||||||
}
|
}
|
||||||
getGenetics() {
|
getGenetics() {
|
||||||
let comp = duplicate(this.items.filter(item => item.type == 'genetic') || []);
|
let comp = foundry.utils.duplicate(this.items.filter(item => item.type == 'genetic') || []);
|
||||||
DarkStarsUtility.sortArrayObjectsByName(comp)
|
DarkStarsUtility.sortArrayObjectsByName(comp)
|
||||||
return comp;
|
return comp;
|
||||||
}
|
}
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
getShields() {
|
getShields() {
|
||||||
let comp = duplicate(this.items.filter(item => item.type == 'shield') || []);
|
let comp = foundry.utils.duplicate(this.items.filter(item => item.type == 'shield') || []);
|
||||||
DarkStarsUtility.sortArrayObjectsByName(comp)
|
DarkStarsUtility.sortArrayObjectsByName(comp)
|
||||||
return comp;
|
return comp;
|
||||||
}
|
}
|
||||||
getEquippedShield() {
|
getEquippedShield() {
|
||||||
let comp = this.items.find(item => item.type == 'shield' && item.system.equipped)
|
let comp = this.items.find(item => item.type == 'shield' && item.system.equipped)
|
||||||
if (comp) {
|
if (comp) {
|
||||||
return duplicate(comp)
|
return foundry.utils.duplicate(comp)
|
||||||
}
|
}
|
||||||
return undefined
|
return undefined
|
||||||
}
|
}
|
||||||
@@ -177,7 +180,7 @@ export class DarkStarsActor extends Actor {
|
|||||||
if (item.type == "weapon" && item.system.needammo) {
|
if (item.type == "weapon" && item.system.needammo) {
|
||||||
let ammo = this.items.find(ammo => ammo.type == "ammo" && item.system.ammoid == ammo.id)
|
let ammo = this.items.find(ammo => ammo.type == "ammo" && item.system.ammoid == ammo.id)
|
||||||
if (ammo) {
|
if (ammo) {
|
||||||
item.ammo = duplicate(ammo)
|
item.ammo = foundry.utils.duplicate(ammo)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -192,29 +195,34 @@ export class DarkStarsActor extends Actor {
|
|||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
getConditions() {
|
getConditions() {
|
||||||
let comp = duplicate(this.items.filter(item => item.type == 'condition') || []);
|
let comp = foundry.utils.duplicate(this.items.filter(item => item.type == 'condition') || []);
|
||||||
DarkStarsUtility.sortArrayObjectsByName(comp)
|
DarkStarsUtility.sortArrayObjectsByName(comp)
|
||||||
return comp;
|
return comp;
|
||||||
}
|
}
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
getWeapons() {
|
getWeapons() {
|
||||||
let comp = duplicate(this.items.filter(item => item.type == 'weapon') || []);
|
let comp = foundry.utils.duplicate(this.items.filter(item => item.type == 'weapon') || []);
|
||||||
DarkStarsUtility.sortArrayObjectsByName(comp)
|
DarkStarsUtility.sortArrayObjectsByName(comp)
|
||||||
return comp;
|
return comp;
|
||||||
}
|
}
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
getAmmos() {
|
getAmmos() {
|
||||||
let comp = duplicate(this.items.filter(item => item.type == 'ammo') || []);
|
let comp = foundry.utils.duplicate(this.items.filter(item => item.type == 'ammo') || []);
|
||||||
DarkStarsUtility.sortArrayObjectsByName(comp)
|
DarkStarsUtility.sortArrayObjectsByName(comp)
|
||||||
return comp;
|
return comp;
|
||||||
}
|
}
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
getItemById(id) {
|
getItemById(id, duplicate = true) {
|
||||||
let item = this.items.find(item => item.id == id);
|
let item = this.items.find(it => it.id == id)
|
||||||
if (item) {
|
if (item && duplicate) {
|
||||||
item = duplicate(item)
|
item = foundry.utils.duplicate(item)
|
||||||
}
|
}
|
||||||
return item;
|
return item
|
||||||
|
}
|
||||||
|
/* -------------------------------------------- */
|
||||||
|
getItem(id) {
|
||||||
|
let item = this.items.get(id)
|
||||||
|
return item
|
||||||
}
|
}
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
setWeaponAmmo(weaponId, ammoId) {
|
setWeaponAmmo(weaponId, ammoId) {
|
||||||
@@ -233,14 +241,14 @@ export class DarkStarsActor extends Actor {
|
|||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
updateSkill(skill) {
|
updateSkill(skill) {
|
||||||
skill.derivated = duplicate(this.system.derivated[skill.system.base])
|
skill.derivated = foundry.utils.duplicate(this.system.derivated[skill.system.base])
|
||||||
skill.total = skill.system.value + skill.derivated.value + skill.system.bonus
|
skill.total = skill.system.value + skill.derivated.value + skill.system.bonus
|
||||||
}
|
}
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
getSkills() {
|
getSkills() {
|
||||||
this.computeDerivated()
|
this.computeDerivated()
|
||||||
let comp = duplicate(this.items.filter(item => item.type == 'skill') || [])
|
let comp = foundry.utils.duplicate(this.items.filter(item => item.type == 'skill') || [])
|
||||||
for (let skill of comp) {
|
for (let skill of comp) {
|
||||||
this.updateSkill(skill)
|
this.updateSkill(skill)
|
||||||
}
|
}
|
||||||
@@ -250,7 +258,7 @@ export class DarkStarsActor extends Actor {
|
|||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
getPerks() {
|
getPerks() {
|
||||||
let comp = duplicate(this.items.filter(item => item.type == 'perk') || [])
|
let comp = foundry.utils.duplicate(this.items.filter(item => item.type == 'perk') || [])
|
||||||
DarkStarsUtility.sortArrayObjectsByName(comp)
|
DarkStarsUtility.sortArrayObjectsByName(comp)
|
||||||
return comp
|
return comp
|
||||||
}
|
}
|
||||||
@@ -258,7 +266,7 @@ export class DarkStarsActor extends Actor {
|
|||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
async equipItem(itemId) {
|
async equipItem(itemId) {
|
||||||
let item = this.items.find(item => item.id == itemId)
|
let item = this.items.find(item => item.id == itemId)
|
||||||
if (item && item.system) {
|
if (item?.system) {
|
||||||
if (item.type == "armor") {
|
if (item.type == "armor") {
|
||||||
let armor = this.items.find(item => item.id != itemId && item.type == "armor" && item.system.equipped)
|
let armor = this.items.find(item => item.id != itemId && item.type == "armor" && item.system.equipped)
|
||||||
if (armor) {
|
if (armor) {
|
||||||
@@ -295,7 +303,7 @@ export class DarkStarsActor extends Actor {
|
|||||||
}
|
}
|
||||||
/* ------------------------------------------- */
|
/* ------------------------------------------- */
|
||||||
getEquipmentsOnly() {
|
getEquipmentsOnly() {
|
||||||
return duplicate(this.items.filter(item => item.type == "equipment") || [])
|
return foundry.utils.duplicate(this.items.filter(item => item.type == "equipment") || [])
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ------------------------------------------- */
|
/* ------------------------------------------- */
|
||||||
@@ -321,7 +329,7 @@ export class DarkStarsActor extends Actor {
|
|||||||
|
|
||||||
/* ------------------------------------------- */
|
/* ------------------------------------------- */
|
||||||
async buildContainerTree() {
|
async buildContainerTree() {
|
||||||
let equipments = duplicate(this.items.filter(item => item.type == "equipment") || [])
|
let equipments = foundry.utils.duplicate(this.items.filter(item => item.type == "equipment") || [])
|
||||||
for (let equip1 of equipments) {
|
for (let equip1 of equipments) {
|
||||||
if (equip1.system.iscontainer) {
|
if (equip1.system.iscontainer) {
|
||||||
equip1.system.contents = []
|
equip1.system.contents = []
|
||||||
@@ -375,7 +383,7 @@ export class DarkStarsActor extends Actor {
|
|||||||
async incDecHP(formula) {
|
async incDecHP(formula) {
|
||||||
let dmgRoll = new Roll(formula + "[dark-starsorange]").roll({ async: false })
|
let dmgRoll = new Roll(formula + "[dark-starsorange]").roll({ async: false })
|
||||||
await DarkStarsUtility.showDiceSoNice(dmgRoll, game.settings.get("core", "rollMode"))
|
await DarkStarsUtility.showDiceSoNice(dmgRoll, game.settings.get("core", "rollMode"))
|
||||||
let hp = duplicate(this.system.secondary.hp)
|
let hp = foundry.utils.duplicate(this.system.secondary.hp)
|
||||||
hp.value = Number(hp.value) + Number(dmgRoll.total)
|
hp.value = Number(hp.value) + Number(dmgRoll.total)
|
||||||
this.update({ 'system.secondary.hp': hp })
|
this.update({ 'system.secondary.hp': hp })
|
||||||
return Number(dmgRoll.total)
|
return Number(dmgRoll.total)
|
||||||
@@ -429,9 +437,10 @@ export class DarkStarsActor extends Actor {
|
|||||||
return this.items.find(i => i.type == "perk" && i.name.toLowerCase() === "last word")
|
return this.items.find(i => i.type == "perk" && i.name.toLowerCase() === "last word")
|
||||||
}
|
}
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
getInitiativeScore() {
|
async getInitiativeScore() {
|
||||||
let initFormula = (this.system.derivated.si.value + this.system.derivated.si.bonus) + "d6"
|
let initFormula = (this.system.derivated.si.value + this.system.derivated.si.bonus) + "d6"
|
||||||
let initRoll = new Roll(initFormula).roll({ async: false })
|
let initRoll = await new Roll(initFormula).roll()
|
||||||
|
await DarkStarsUtility.showDiceSoNice(initRoll, game.settings.get("core", "rollMode"))
|
||||||
return initRoll.total
|
return initRoll.total
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -439,13 +448,13 @@ export class DarkStarsActor extends Actor {
|
|||||||
getSubActors() {
|
getSubActors() {
|
||||||
let subActors = [];
|
let subActors = [];
|
||||||
for (let id of this.system.subactors) {
|
for (let id of this.system.subactors) {
|
||||||
subActors.push(duplicate(game.actors.get(id)))
|
subActors.push(foundry.utils.duplicate(game.actors.get(id)))
|
||||||
}
|
}
|
||||||
return subActors;
|
return subActors;
|
||||||
}
|
}
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
async addSubActor(subActorId) {
|
async addSubActor(subActorId) {
|
||||||
let subActors = duplicate(this.system.subactors);
|
let subActors = foundry.utils.duplicate(this.system.subactors);
|
||||||
subActors.push(subActorId);
|
subActors.push(subActorId);
|
||||||
await this.update({ 'system.subactors': subActors });
|
await this.update({ 'system.subactors': subActors });
|
||||||
}
|
}
|
||||||
@@ -464,7 +473,7 @@ export class DarkStarsActor extends Actor {
|
|||||||
getOneSkill(skillId) {
|
getOneSkill(skillId) {
|
||||||
let skill = this.items.find(item => item.type == 'skill' && item.id == skillId)
|
let skill = this.items.find(item => item.type == 'skill' && item.id == skillId)
|
||||||
if (skill) {
|
if (skill) {
|
||||||
skill = duplicate(skill);
|
skill = foundry.utils.duplicate(skill);
|
||||||
}
|
}
|
||||||
return skill;
|
return skill;
|
||||||
}
|
}
|
||||||
@@ -560,7 +569,7 @@ export class DarkStarsActor extends Actor {
|
|||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
modifyRerolls( value) {
|
modifyRerolls( value) {
|
||||||
let rerolls = duplicate(this.system.various.rerolls)
|
let rerolls = foundry.utils.duplicate(this.system.various.rerolls)
|
||||||
rerolls.value += value
|
rerolls.value += value
|
||||||
this.update({ 'system.various.rerolls': rerolls })
|
this.update({ 'system.various.rerolls': rerolls })
|
||||||
}
|
}
|
||||||
@@ -576,7 +585,9 @@ export class DarkStarsActor extends Actor {
|
|||||||
let rollData = DarkStarsUtility.getBasicRollData()
|
let rollData = DarkStarsUtility.getBasicRollData()
|
||||||
rollData.alias = this.name
|
rollData.alias = this.name
|
||||||
rollData.actorImg = this.img
|
rollData.actorImg = this.img
|
||||||
rollData.actorId = this.id
|
console.log("Prepare common roll data for actor", this)
|
||||||
|
rollData.tokenId = this.token?.id
|
||||||
|
rollData.actorId = this.id
|
||||||
rollData.img = this.img
|
rollData.img = this.img
|
||||||
rollData.armors = this.getArmors()
|
rollData.armors = this.getArmors()
|
||||||
rollData.conditions = this.getConditions()
|
rollData.conditions = this.getConditions()
|
||||||
@@ -616,24 +627,51 @@ export class DarkStarsActor extends Actor {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
rollAbility(abilityKey) {
|
rollAttribute(attrKey) {
|
||||||
let rollData = this.getCommonRollData(abilityKey)
|
let rollData = this.getCommonRollData()
|
||||||
rollData.mode = "ability"
|
rollData.attr = foundry.utils.duplicate(this.system.attributes[attrKey])
|
||||||
if (rollData.target) {
|
rollData.mode = "attribute"
|
||||||
ui.notifications.warn("You are targetting a token with a skill : please use a Weapon instead.")
|
rollData.title = "Attribute " + rollData.attr.label
|
||||||
return
|
this.startRoll(rollData)
|
||||||
|
}
|
||||||
|
/* -------------------------------------------- */
|
||||||
|
continueExtendedTest(testId) {
|
||||||
|
let test = this.items.get(testId)
|
||||||
|
if (test) {
|
||||||
|
let skill = this.items.find(it => it.type == "skill" && it.name.toLowerCase() == test.system.skill.toLowerCase())
|
||||||
|
if (skill) {
|
||||||
|
skill = foundry.utils.duplicate(skill)
|
||||||
|
this.updateSkill(skill)
|
||||||
|
let rollData = this.getCommonRollData()
|
||||||
|
rollData.mode = "extendedtest"
|
||||||
|
rollData.isExtended = true
|
||||||
|
rollData.extendedTest = test
|
||||||
|
rollData.title = "Extended test " + skill.name
|
||||||
|
rollData.skill = skill
|
||||||
|
rollData.img = skill.img
|
||||||
|
rollData.taskId = test.id
|
||||||
|
if (rollData.target) {
|
||||||
|
ui.notifications.warn("You are targetting a token with a skill : please use a Weapon instead.")
|
||||||
|
return
|
||||||
|
}
|
||||||
|
this.startRoll(rollData)
|
||||||
|
} else {
|
||||||
|
console.log("Unable to find the relevant skill for extended test " + test.system.skill)
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
console.log("Unable to find the extended test")
|
||||||
}
|
}
|
||||||
DarkStarsUtility.rollDarkStars(rollData)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
rollSkill(skillId) {
|
async rollSkill(skillId, isExtended = false, taskId = undefined) {
|
||||||
let skill = this.items.get(skillId)
|
let skill = this.items.get(skillId)
|
||||||
if (skill) {
|
if (skill) {
|
||||||
skill = duplicate(skill)
|
skill = foundry.utils.duplicate(skill)
|
||||||
this.updateSkill(skill)
|
this.updateSkill(skill)
|
||||||
let rollData = this.getCommonRollData()
|
let rollData = this.getCommonRollData()
|
||||||
rollData.mode = "skill"
|
rollData.mode = "skill"
|
||||||
|
rollData.isExtended = isExtended
|
||||||
rollData.title = "Skill " + skill.name
|
rollData.title = "Skill " + skill.name
|
||||||
rollData.skill = skill
|
rollData.skill = skill
|
||||||
rollData.img = skill.img
|
rollData.img = skill.img
|
||||||
@@ -641,6 +679,17 @@ export class DarkStarsActor extends Actor {
|
|||||||
ui.notifications.warn("You are targetting a token with a skill : please use a Weapon instead.")
|
ui.notifications.warn("You are targetting a token with a skill : please use a Weapon instead.")
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
if (isExtended) {
|
||||||
|
rollData.title = "Extended Test " + skill.name
|
||||||
|
if (!taskId) {
|
||||||
|
let extendedTest = await this.createEmbeddedDocuments("Item", [{name: "Extended test " + skill.name, type: "extendedtest",
|
||||||
|
'system.skill': skill.name}])
|
||||||
|
//console.log("Task", cumulativeTask)
|
||||||
|
rollData.taskId = extendedTest[0].id
|
||||||
|
}else {
|
||||||
|
rollData.taskId = extendedTest[0].id
|
||||||
|
}
|
||||||
|
}
|
||||||
this.startRoll(rollData)
|
this.startRoll(rollData)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -649,10 +698,10 @@ export class DarkStarsActor extends Actor {
|
|||||||
rollWeapon(weaponId) {
|
rollWeapon(weaponId) {
|
||||||
let weapon = this.items.get(weaponId)
|
let weapon = this.items.get(weaponId)
|
||||||
if (weapon) {
|
if (weapon) {
|
||||||
weapon = duplicate(weapon)
|
weapon = foundry.utils.duplicate(weapon)
|
||||||
let skill = this.items.find(item => item.name.toLowerCase() == weapon.system.skill.toLowerCase())
|
let skill = this.items.find(item => item.name.toLowerCase() == weapon.system.skill.toLowerCase())
|
||||||
if (skill) {
|
if (skill) {
|
||||||
skill = duplicate(skill)
|
skill = foundry.utils.duplicate(skill)
|
||||||
this.updateSkill(skill)
|
this.updateSkill(skill)
|
||||||
let rollData = this.getCommonRollData()
|
let rollData = this.getCommonRollData()
|
||||||
rollData.mode = "weapon"
|
rollData.mode = "weapon"
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ export class DarkStarsCombat extends Combat {
|
|||||||
for (let cId of ids) {
|
for (let cId of ids) {
|
||||||
const c = this.combatants.get(cId);
|
const c = this.combatants.get(cId);
|
||||||
let id = c._id || c.id;
|
let id = c._id || c.id;
|
||||||
let initScore = c.actor ? c.actor.getInitiativeScore(this.id, id) : -1;
|
let initScore = c.actor ? await c.actor.getInitiativeScore(this.id, id) : -1;
|
||||||
await this.updateEmbeddedDocuments("Combatant", [{ _id: id, initiative: initScore }]);
|
await this.updateEmbeddedDocuments("Combatant", [{ _id: id, initiative: initScore }]);
|
||||||
setTimeout(() => this.processOtherTurns(c, initScore), 400)
|
setTimeout(() => this.processOtherTurns(c, initScore), 400)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,72 @@
|
|||||||
|
|
||||||
export const DARKSTARS_CONFIG = {
|
export const DARKSTARS_CONFIG = {
|
||||||
|
|
||||||
|
sizeOptions: {
|
||||||
|
"1": "Tiny",
|
||||||
|
"2": "Small",
|
||||||
|
"3": "Medium",
|
||||||
|
"4": "Large",
|
||||||
|
"5": "Huge",
|
||||||
|
"6": "Gargantuan"
|
||||||
|
},
|
||||||
|
classNPC: {
|
||||||
|
"none": "None",
|
||||||
|
"chaplain": "Chaplain",
|
||||||
|
"magus": "Magus",
|
||||||
|
"martial": "Martial",
|
||||||
|
"skalawag": "Skalawag",
|
||||||
|
"warden": "Warden"
|
||||||
|
},
|
||||||
|
synergyBonus: {
|
||||||
|
"0": "0",
|
||||||
|
"5": "+5%",
|
||||||
|
"+6": "+6%",
|
||||||
|
"+7": "+7%",
|
||||||
|
"+8": "+8%",
|
||||||
|
"+9": "+9%",
|
||||||
|
"+10": "+10%"
|
||||||
|
},
|
||||||
|
attributeModifier: [
|
||||||
|
{value: "0", label: "None"},
|
||||||
|
{value: "-1", label: "Difficult (-1)"},
|
||||||
|
{value: "-3", label: "Hard (-3)"},
|
||||||
|
{value: "-6", label: "Very Hard (-6)"},
|
||||||
|
{value: "-9", label: "Impossible (-9)"}
|
||||||
|
],
|
||||||
|
weaponAiming: {
|
||||||
|
"none": "None",
|
||||||
|
" arm": "Arm (-50)",
|
||||||
|
"head": "Head (-50)",
|
||||||
|
"torso": "Torso(-30)",
|
||||||
|
"leg": "Leg (-30)",
|
||||||
|
"hand": "Hand/Weapon (-70)"
|
||||||
|
},
|
||||||
|
rollModifiers: [
|
||||||
|
{ "value": "-80", "label": "-80%" },
|
||||||
|
{ "value": "-70", "label": "-70%" },
|
||||||
|
{ "value": "-60", "label": "-60%" },
|
||||||
|
{ "value": "-50", "label": "-50%" },
|
||||||
|
{ "value": "-40", "label": "-40%" },
|
||||||
|
{ "value": "-30", "label": "-30%" },
|
||||||
|
{ "value": "-20", "label": "-20%" },
|
||||||
|
{ "value": "-10", "label": "-10%" },
|
||||||
|
{ "value": "0", "label": "0%" },
|
||||||
|
{ "value": "+10", "label": "+10%" },
|
||||||
|
{ "value": "+20", "label": "+20%" },
|
||||||
|
{ "value": "+30", "label": "+30%" },
|
||||||
|
{ "value": "+40", "label": "+40%" }
|
||||||
|
],
|
||||||
|
abilityValues: {
|
||||||
|
"0": "0",
|
||||||
|
"1": "1",
|
||||||
|
"2": "2",
|
||||||
|
"3": "3",
|
||||||
|
"4": "4",
|
||||||
|
"5": "5",
|
||||||
|
"6": "6",
|
||||||
|
"7": "7",
|
||||||
|
"8": "8"
|
||||||
|
},
|
||||||
basebonus : {
|
basebonus : {
|
||||||
"csb": "CSB",
|
"csb": "CSB",
|
||||||
"ssb": "SSB",
|
"ssb": "SSB",
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ export class DarkStarsItemSheet extends ItemSheet {
|
|||||||
/** @override */
|
/** @override */
|
||||||
static get defaultOptions() {
|
static get defaultOptions() {
|
||||||
|
|
||||||
return mergeObject(super.defaultOptions, {
|
return foundry.utils.mergeObject(super.defaultOptions, {
|
||||||
classes: ["fvtt-dark-stars", "sheet", "item"],
|
classes: ["fvtt-dark-stars", "sheet", "item"],
|
||||||
template: "systems/fvtt-dark-stars/templates/items/item-sheet.hbs",
|
template: "systems/fvtt-dark-stars/templates/items/item-sheet.hbs",
|
||||||
dragDrop: [{ dragSelector: null, dropSelector: null }],
|
dragDrop: [{ dragSelector: null, dropSelector: null }],
|
||||||
@@ -49,7 +49,7 @@ export class DarkStarsItemSheet extends ItemSheet {
|
|||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
async getData() {
|
async getData() {
|
||||||
|
|
||||||
let objectData = duplicate(this.object.system)
|
let objectData = foundry.utils.duplicate(this.object.system)
|
||||||
|
|
||||||
let formData = {
|
let formData = {
|
||||||
title: this.title,
|
title: this.title,
|
||||||
@@ -87,7 +87,7 @@ export class DarkStarsItemSheet extends ItemSheet {
|
|||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
postItem() {
|
postItem() {
|
||||||
let chatData = duplicate(DarkStarsUtility.data(this.item));
|
let chatData = foundry.utils.duplicate(DarkStarsUtility.data(this.item));
|
||||||
if (this.actor) {
|
if (this.actor) {
|
||||||
chatData.actor = { id: this.actor.id };
|
chatData.actor = { id: this.actor.id };
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -18,6 +18,7 @@ import { DarkStarsItem } from "./dark-stars-item.js";
|
|||||||
import { DarkStarsHotbar } from "./dark-stars-hotbar.js"
|
import { DarkStarsHotbar } from "./dark-stars-hotbar.js"
|
||||||
import { DarkStarsCommands } from "./dark-stars-commands.js"
|
import { DarkStarsCommands } from "./dark-stars-commands.js"
|
||||||
import { DARKSTARS_CONFIG } from "./dark-stars-config.js";
|
import { DARKSTARS_CONFIG } from "./dark-stars-config.js";
|
||||||
|
import { ClassCounter} from "https://www.uberwald.me/fvtt_appcount/count-class-ready.js"
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
/* Foundry VTT Initialization */
|
/* Foundry VTT Initialization */
|
||||||
@@ -91,15 +92,11 @@ Hooks.once("ready", function () {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
// CSS patch for v9
|
|
||||||
if (game.version) {
|
|
||||||
let sidebar = document.getElementById("sidebar");
|
|
||||||
sidebar.style.width = "min-content";
|
|
||||||
}
|
|
||||||
|
|
||||||
welcomeMessage();
|
welcomeMessage();
|
||||||
DarkStarsUtility.ready()
|
DarkStarsUtility.ready()
|
||||||
DarkStarsCommands.init()
|
DarkStarsCommands.init()
|
||||||
|
ClassCounter.registerUsageCount()
|
||||||
})
|
})
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ export class DarkStarsNPCSheet extends ActorSheet {
|
|||||||
/** @override */
|
/** @override */
|
||||||
static get defaultOptions() {
|
static get defaultOptions() {
|
||||||
|
|
||||||
return mergeObject(super.defaultOptions, {
|
return foundry.utils.mergeObject(super.defaultOptions, {
|
||||||
classes: ["dark-stars-rpg", "sheet", "actor"],
|
classes: ["dark-stars-rpg", "sheet", "actor"],
|
||||||
template: "systems/fvtt-dark-stars/templates/npc-sheet.hbs",
|
template: "systems/fvtt-dark-stars/templates/npc-sheet.hbs",
|
||||||
width: 640,
|
width: 640,
|
||||||
@@ -25,7 +25,7 @@ export class DarkStarsNPCSheet extends ActorSheet {
|
|||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
async getData() {
|
async getData() {
|
||||||
const objectData = this.object.system
|
const objectData = this.object.system
|
||||||
let actorData = duplicate(objectData)
|
let actorData = foundry.utils.duplicate(objectData)
|
||||||
|
|
||||||
let formData = {
|
let formData = {
|
||||||
title: this.title,
|
title: this.title,
|
||||||
@@ -38,21 +38,22 @@ export class DarkStarsNPCSheet extends ActorSheet {
|
|||||||
data: actorData,
|
data: actorData,
|
||||||
limited: this.object.limited,
|
limited: this.object.limited,
|
||||||
skills: this.actor.getSkills( ),
|
skills: this.actor.getSkills( ),
|
||||||
weapons: this.actor.checkAndPrepareEquipments( duplicate(this.actor.getWeapons()) ),
|
weapons: this.actor.checkAndPrepareEquipments( foundry.utils.duplicate(this.actor.getWeapons()) ),
|
||||||
armors: this.actor.checkAndPrepareEquipments( duplicate(this.actor.getArmors())),
|
armors: this.actor.checkAndPrepareEquipments( foundry.utils.duplicate(this.actor.getArmors())),
|
||||||
shields: this.actor.checkAndPrepareEquipments( duplicate(this.actor.getShields())),
|
shields: this.actor.checkAndPrepareEquipments( foundry.utils.duplicate(this.actor.getShields())),
|
||||||
spells: this.actor.checkAndPrepareEquipments( duplicate(this.actor.getLore())),
|
spells: this.actor.checkAndPrepareEquipments( foundry.utils.duplicate(this.actor.getLore())),
|
||||||
equipments: this.actor.checkAndPrepareEquipments(duplicate(this.actor.getEquipmentsOnly()) ),
|
equipments: this.actor.checkAndPrepareEquipments(foundry.utils.duplicate(this.actor.getEquipmentsOnly()) ),
|
||||||
equippedWeapons: this.actor.checkAndPrepareEquipments(duplicate(this.actor.getEquippedWeapons()) ),
|
equippedWeapons: this.actor.checkAndPrepareEquipments(foundry.utils.duplicate(this.actor.getEquippedWeapons()) ),
|
||||||
equippedArmor: this.actor.getEquippedArmor(),
|
equippedArmor: this.actor.getEquippedArmor(),
|
||||||
equippedShield: this.actor.getEquippedShield(),
|
equippedShield: this.actor.getEquippedShield(),
|
||||||
feats: duplicate(this.actor.getFeats()),
|
feats: foundry.utils.duplicate(this.actor.getFeats()),
|
||||||
subActors: duplicate(this.actor.getSubActors()),
|
subActors: foundry.utils.duplicate(this.actor.getSubActors()),
|
||||||
race: duplicate(this.actor.getRace()),
|
race: foundry.utils.duplicate(this.actor.getRace()),
|
||||||
moneys: duplicate(this.actor.getMoneys()),
|
moneys: foundry.utils.duplicate(this.actor.getMoneys()),
|
||||||
encCapacity: this.actor.getEncumbranceCapacity(),
|
encCapacity: this.actor.getEncumbranceCapacity(),
|
||||||
saveRolls: this.actor.getSaveRoll(),
|
saveRolls: this.actor.getSaveRoll(),
|
||||||
conditions: this.actor.getConditions(),
|
conditions: this.actor.getConditions(),
|
||||||
|
config: game.system.darkstars.config,
|
||||||
containersTree: this.actor.containersTree,
|
containersTree: this.actor.containersTree,
|
||||||
encCurrent: this.actor.encCurrent,
|
encCurrent: this.actor.encCurrent,
|
||||||
options: this.options,
|
options: this.options,
|
||||||
|
|||||||
@@ -67,8 +67,14 @@ export class DarkStarsRollDialog extends Dialog {
|
|||||||
html.find('#weapon-aiming').change((event) => {
|
html.find('#weapon-aiming').change((event) => {
|
||||||
this.rollData.weaponAiming = String(event.currentTarget.value)
|
this.rollData.weaponAiming = String(event.currentTarget.value)
|
||||||
})
|
})
|
||||||
|
html.find('#synergy-bonus').change((event) => {
|
||||||
|
this.rollData.synergyBonus = Number(event.currentTarget.value)
|
||||||
|
})
|
||||||
|
html.find('#extra-time').change((event) => {
|
||||||
|
this.rollData.extraTime = event.currentTarget.checked
|
||||||
|
})
|
||||||
|
html.find('#attribute-modifier').change((event) => {
|
||||||
|
this.rollData.attributeModifier = Number(event.currentTarget.value)
|
||||||
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -11,9 +11,7 @@ export class DarkStarsUtility {
|
|||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
static async init() {
|
static async init() {
|
||||||
Hooks.on('renderChatLog', (log, html, data) => DarkStarsUtility.chatListeners(html));
|
Hooks.on('renderChatLog', (log, html, data) => DarkStarsUtility.chatListeners(html));
|
||||||
/*Hooks.on("dropCanvasData", (canvas, data) => {
|
Hooks.on('renderChatMessage', (message, html, data) => DarkStarsUtility.chatMessageHandler(message, html, data))
|
||||||
DarkStarsUtility.dropItemOnToken(canvas, data)
|
|
||||||
});*/
|
|
||||||
|
|
||||||
DarkStarsCommands.init();
|
DarkStarsCommands.init();
|
||||||
|
|
||||||
@@ -43,13 +41,28 @@ export class DarkStarsUtility {
|
|||||||
return __locationNames[key]
|
return __locationNames[key]
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
this.gameSettings()
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*-------------------------------------------- */
|
/*-------------------------------------------- */
|
||||||
static gameSettings() {
|
static async processOpposed(rollData) {
|
||||||
|
if (this.currentOpposition) {
|
||||||
|
let opposed = {
|
||||||
|
winner: this.currentOpposition,
|
||||||
|
looser: rollData,
|
||||||
|
isOpposed : true
|
||||||
|
}
|
||||||
|
if (rollData.degrees > this.currentOpposition.degrees ) {
|
||||||
|
opposed.winner = rollData
|
||||||
|
opposed.looser = this.currentOpposition
|
||||||
|
}
|
||||||
|
let msg = await this.createChatWithRollMode(rollData.alias, {
|
||||||
|
content: await renderTemplate(`systems/fvtt-dark-stars/templates/chat/chat-opposition-result.hbs`, opposed)
|
||||||
|
})
|
||||||
|
await msg.setFlag("world", "darkstars-roll-data", opposed)
|
||||||
|
} else {
|
||||||
|
this.currentOpposition = rollData
|
||||||
|
ui.notifications.info("Opposed rolls started with " + rollData.alias );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/*-------------------------------------------- */
|
/*-------------------------------------------- */
|
||||||
@@ -60,14 +73,13 @@ export class DarkStarsUtility {
|
|||||||
|
|
||||||
/*-------------------------------------------- */
|
/*-------------------------------------------- */
|
||||||
static getSkills() {
|
static getSkills() {
|
||||||
return duplicate(this.skills)
|
return foundry.utils.duplicate(this.skills)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
static async ready() {
|
static async ready() {
|
||||||
const skills = await DarkStarsUtility.loadCompendium("fvtt-dark-stars.skills")
|
const skills = await DarkStarsUtility.loadCompendium("fvtt-dark-stars.sprawl");
|
||||||
this.skills = skills.map(i => i.toObject())
|
this.skills = skills.filter(i => i.type == "skill").map(i => i.toObject());
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
@@ -97,6 +109,13 @@ export class DarkStarsUtility {
|
|||||||
rollData.roll = undefined
|
rollData.roll = undefined
|
||||||
this.rollDarkStars(rollData)
|
this.rollDarkStars(rollData)
|
||||||
})
|
})
|
||||||
|
html.on("click", '.chat-roll-opposed', event => {
|
||||||
|
let messageId = this.findChatMessageId(event.currentTarget)
|
||||||
|
let message = game.messages.get(messageId)
|
||||||
|
let rollData = message.getFlag("world", "darkstars-roll-data")
|
||||||
|
this.processOpposed(rollData)
|
||||||
|
})
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
@@ -104,10 +123,8 @@ export class DarkStarsUtility {
|
|||||||
|
|
||||||
const templatePaths = [
|
const templatePaths = [
|
||||||
'systems/fvtt-dark-stars/templates/partials/editor-notes-gm.hbs',
|
'systems/fvtt-dark-stars/templates/partials/editor-notes-gm.hbs',
|
||||||
'systems/fvtt-dark-stars/templates/partials/partial-roll-select.hbs',
|
|
||||||
'systems/fvtt-dark-stars/templates/partials/partial-actor-ability-block.hbs',
|
'systems/fvtt-dark-stars/templates/partials/partial-actor-ability-block.hbs',
|
||||||
'systems/fvtt-dark-stars/templates/partials/partial-actor-status.hbs',
|
'systems/fvtt-dark-stars/templates/partials/partial-actor-status.hbs',
|
||||||
'systems/fvtt-dark-stars/templates/partials/partial-options-abilities.hbs',
|
|
||||||
'systems/fvtt-dark-stars/templates/partials/partial-item-nav.hbs',
|
'systems/fvtt-dark-stars/templates/partials/partial-item-nav.hbs',
|
||||||
'systems/fvtt-dark-stars/templates/partials/partial-item-description.hbs',
|
'systems/fvtt-dark-stars/templates/partials/partial-item-description.hbs',
|
||||||
'systems/fvtt-dark-stars/templates/partials/partial-actor-equipment.hbs'
|
'systems/fvtt-dark-stars/templates/partials/partial-actor-equipment.hbs'
|
||||||
@@ -276,12 +293,41 @@ export class DarkStarsUtility {
|
|||||||
static async rollDarkStars(rollData) {
|
static async rollDarkStars(rollData) {
|
||||||
|
|
||||||
let actor = game.actors.get(rollData.actorId)
|
let actor = game.actors.get(rollData.actorId)
|
||||||
|
if (rollData.tokenId) {
|
||||||
|
actor = game.canvas.tokens.get(rollData.tokenId).actor
|
||||||
|
}
|
||||||
|
|
||||||
|
// Specific attribute
|
||||||
|
if (rollData.attr) {
|
||||||
|
rollData.isSuccess = false
|
||||||
|
rollData.isFailure = false
|
||||||
|
rollData.targetNumber = Math.max( rollData.attr.value + rollData.attributeModifier, 0)
|
||||||
|
let myRoll = await new Roll("1d10").roll()
|
||||||
|
await this.showDiceSoNice(myRoll, game.settings.get("core", "rollMode"))
|
||||||
|
if (myRoll.total <= rollData.targetNumber) {
|
||||||
|
rollData.isSuccess = true
|
||||||
|
rollData.isFailure = false
|
||||||
|
}
|
||||||
|
rollData.roll = foundry.utils.duplicate(myRoll)
|
||||||
|
rollData.diceResult = myRoll.total
|
||||||
|
let msg = await this.createChatWithRollMode(rollData.alias, {
|
||||||
|
content: await renderTemplate(`systems/fvtt-dark-stars/templates/chat/chat-attribute-result.hbs`, rollData)
|
||||||
|
})
|
||||||
|
msg.setFlag("world", "darkstars-roll-data", rollData)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
// ability/save/size => 0
|
// ability/save/size => 0
|
||||||
rollData.percentValue = 0
|
rollData.percentValue = 0
|
||||||
if (rollData.skill) {
|
if (rollData.skill) {
|
||||||
rollData.percentValue = rollData.skill.total
|
rollData.percentValue = rollData.skill.total
|
||||||
}
|
}
|
||||||
|
if (rollData.synergyBonus) {
|
||||||
|
rollData.percentValue += rollData.synergyBonus
|
||||||
|
}
|
||||||
|
if (rollData.extraTime) {
|
||||||
|
rollData.percentValue += 30
|
||||||
|
}
|
||||||
rollData.percentValue += rollData.bonusMalus
|
rollData.percentValue += rollData.bonusMalus
|
||||||
rollData.diceFormula = "1d100"
|
rollData.diceFormula = "1d100"
|
||||||
|
|
||||||
@@ -294,20 +340,21 @@ export class DarkStarsUtility {
|
|||||||
rollData.locationMalus = this.getAimingMalus(rollData.weaponAiming)
|
rollData.locationMalus = this.getAimingMalus(rollData.weaponAiming)
|
||||||
rollData.percentValue += rollData.locationMalus
|
rollData.percentValue += rollData.locationMalus
|
||||||
}
|
}
|
||||||
|
rollData.percentValue = Math.max(rollData.percentValue, 0)
|
||||||
|
|
||||||
// Performs roll
|
// Performs roll
|
||||||
console.log("Roll formula", rollData.diceFormula)
|
|
||||||
let myRoll = rollData.roll
|
let myRoll = rollData.roll
|
||||||
if (!myRoll) { // New rolls only of no rerolls
|
if (!myRoll) { // New rolls only of no rerolls
|
||||||
myRoll = new Roll(rollData.diceFormula).roll({ async: false })
|
myRoll = await new Roll(rollData.diceFormula).roll()
|
||||||
await this.showDiceSoNice(myRoll, game.settings.get("core", "rollMode"))
|
await this.showDiceSoNice(myRoll, game.settings.get("core", "rollMode"))
|
||||||
}
|
}
|
||||||
rollData.roll = duplicate(myRoll)
|
rollData.roll = foundry.utils.duplicate(myRoll)
|
||||||
rollData.diceResult = myRoll.total
|
rollData.diceResult = myRoll.total
|
||||||
rollData.isCriticalSuccess = rollData.diceResult <= rollData.skill.derivated.value
|
rollData.isCriticalSuccess = rollData.diceResult <= rollData.skill.derivated.value
|
||||||
rollData.isCriticalFailure = rollData.diceResult == 100
|
rollData.isCriticalFailure = rollData.diceResult == 100
|
||||||
rollData.isSuccess = rollData.diceResult == 1 || rollData.diceResult <= rollData.percentValue
|
rollData.isSuccess = rollData.diceResult == 1 || rollData.diceResult <= rollData.percentValue
|
||||||
rollData.isFailure = rollData.diceResult == 100 || rollData.diceResult > rollData.percentValue
|
rollData.isFailure = rollData.diceResult == 100 || rollData.diceResult > rollData.percentValue
|
||||||
rollData.degrees = Math.floor(rollData.percentValue / 10) - Math.floor(rollData.diceResult / 10)
|
rollData.degrees = Math.floor((rollData.percentValue - rollData.diceResult) / 10)
|
||||||
rollData.damageMultiplier = rollData.isCriticalSuccess ? 2 : 1
|
rollData.damageMultiplier = rollData.isCriticalSuccess ? 2 : 1
|
||||||
|
|
||||||
if (rollData.reroll) {
|
if (rollData.reroll) {
|
||||||
@@ -324,6 +371,20 @@ export class DarkStarsUtility {
|
|||||||
rollData.locationMultiplier = this.locationMultiplier(rollData.weaponAiming)
|
rollData.locationMultiplier = this.locationMultiplier(rollData.weaponAiming)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Task management
|
||||||
|
if (rollData.taskId) {
|
||||||
|
let task = actor.getItem(rollData.taskId)
|
||||||
|
console.log(" Task", task, rollData.taskId)
|
||||||
|
if (task) {
|
||||||
|
let newCumulated = rollData.degrees + task.system.cumulated
|
||||||
|
let nbrolls = task.system.nbrolls + 1
|
||||||
|
task.update({ 'system.cumulated': newCumulated, 'system.nbrolls': nbrolls })
|
||||||
|
rollData.taskName = task.name
|
||||||
|
rollData.taskCumulated = newCumulated
|
||||||
|
rollData.taskNbrolls = nbrolls
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
let msg = await this.createChatWithRollMode(rollData.alias, {
|
let msg = await this.createChatWithRollMode(rollData.alias, {
|
||||||
content: await renderTemplate(`systems/fvtt-dark-stars/templates/chat/chat-generic-result.hbs`, rollData)
|
content: await renderTemplate(`systems/fvtt-dark-stars/templates/chat/chat-generic-result.hbs`, rollData)
|
||||||
})
|
})
|
||||||
@@ -351,6 +412,19 @@ export class DarkStarsUtility {
|
|||||||
static getUsers(filter) {
|
static getUsers(filter) {
|
||||||
return game.users.filter(filter).map(user => user.id);
|
return game.users.filter(filter).map(user => user.id);
|
||||||
}
|
}
|
||||||
|
/* -------------------------------------------- */
|
||||||
|
static async chatMessageHandler(message, html, data) {
|
||||||
|
const chatCard = html.find('.gm-actions')
|
||||||
|
if (chatCard.length > 0) {
|
||||||
|
// If the user is the message author or the actor owner, proceed
|
||||||
|
const actor = game.actors.get(data.message.speaker.actor)
|
||||||
|
if (actor?.isOwner) return
|
||||||
|
else if (game.user.isGM || data.author.id === game.user.id) return
|
||||||
|
const divButtons = chatCard.find('.gm-actions')
|
||||||
|
divButtons.hide()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
static getWhisperRecipients(rollMode, name) {
|
static getWhisperRecipients(rollMode, name) {
|
||||||
switch (rollMode) {
|
switch (rollMode) {
|
||||||
@@ -368,7 +442,7 @@ export class DarkStarsUtility {
|
|||||||
|
|
||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
static blindMessageToGM(chatOptions) {
|
static blindMessageToGM(chatOptions) {
|
||||||
let chatGM = duplicate(chatOptions);
|
let chatGM = foundry.utils.duplicate(chatOptions);
|
||||||
chatGM.whisper = this.getUsers(user => user.isGM);
|
chatGM.whisper = this.getUsers(user => user.isGM);
|
||||||
chatGM.content = "Blinde message of " + game.user.name + "<br>" + chatOptions.content;
|
chatGM.content = "Blinde message of " + game.user.name + "<br>" + chatOptions.content;
|
||||||
console.log("blindMessageToGM", chatGM);
|
console.log("blindMessageToGM", chatGM);
|
||||||
@@ -429,11 +503,15 @@ export class DarkStarsUtility {
|
|||||||
/* -------------------------------------------- */
|
/* -------------------------------------------- */
|
||||||
static getBasicRollData() {
|
static getBasicRollData() {
|
||||||
let rollData = {
|
let rollData = {
|
||||||
rollId: randomID(16),
|
rollId: foundry.utils.randomID(16),
|
||||||
rollMode: game.settings.get("core", "rollMode"),
|
rollMode: game.settings.get("core", "rollMode"),
|
||||||
bonusMalus: 0,
|
bonusMalus: 0,
|
||||||
isAboveEffectiveRange: false,
|
isAboveEffectiveRange: false,
|
||||||
weaponAiming: "none"
|
weaponAiming: "none",
|
||||||
|
synergyBonus: 0,
|
||||||
|
extraTime: false,
|
||||||
|
attributeModifier: 0,
|
||||||
|
config: game.system.darkstars.config,
|
||||||
}
|
}
|
||||||
DarkStarsUtility.updateWithTarget(rollData)
|
DarkStarsUtility.updateWithTarget(rollData)
|
||||||
return rollData
|
return rollData
|
||||||
|
|||||||
@@ -0,0 +1,6 @@
|
|||||||
|
[Dolphin]
|
||||||
|
HeaderColumnWidths=301,118,148,122
|
||||||
|
Timestamp=2024,1,26,8,35,29.906
|
||||||
|
Version=4
|
||||||
|
ViewMode=1
|
||||||
|
VisibleRoles=Details_text,Details_size,Details_modificationtime,Details_creationtime,CustomizedDetails
|
||||||
Binary file not shown.
Binary file not shown.
@@ -1 +1 @@
|
|||||||
MANIFEST-000040
|
MANIFEST-000208
|
||||||
|
|||||||
+7
-7
@@ -1,7 +1,7 @@
|
|||||||
2023/11/26-22:58:14.589215 7f3d1f7fe6c0 Recovering log #38
|
2024/06/12-11:13:40.413261 7f3f0d6006c0 Recovering log #206
|
||||||
2023/11/26-22:58:14.599060 7f3d1f7fe6c0 Delete type=3 #36
|
2024/06/12-11:13:40.424230 7f3f0d6006c0 Delete type=3 #204
|
||||||
2023/11/26-22:58:14.599171 7f3d1f7fe6c0 Delete type=0 #38
|
2024/06/12-11:13:40.424287 7f3f0d6006c0 Delete type=0 #206
|
||||||
2023/11/26-22:59:30.354804 7f3d1dffb6c0 Level-0 table #43: started
|
2024/06/12-11:16:23.489560 7f3f060006c0 Level-0 table #211: started
|
||||||
2023/11/26-22:59:30.354853 7f3d1dffb6c0 Level-0 table #43: 0 bytes OK
|
2024/06/12-11:16:23.489605 7f3f060006c0 Level-0 table #211: 0 bytes OK
|
||||||
2023/11/26-22:59:30.361332 7f3d1dffb6c0 Delete type=0 #41
|
2024/06/12-11:16:23.520840 7f3f060006c0 Delete type=0 #209
|
||||||
2023/11/26-22:59:30.375157 7f3d1dffb6c0 Manual compaction at level-0 from '!folders!MA6uFJMVebGeayIk' @ 72057594037927935 : 1 .. '!items!zWXriFfWH4wiyUzv' @ 0 : 0; will stop at (end)
|
2024/06/12-11:16:23.590686 7f3f060006c0 Manual compaction at level-0 from '!folders!MA6uFJMVebGeayIk' @ 72057594037927935 : 1 .. '!items!zhjdppKgrON7wJn7' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
2023/11/25-11:53:56.148290 7fd092bff6c0 Recovering log #35
|
2024/06/12-11:13:16.247740 7f3f0ea006c0 Recovering log #202
|
||||||
2023/11/25-11:53:56.158572 7fd092bff6c0 Delete type=0 #35
|
2024/06/12-11:13:16.258091 7f3f0ea006c0 Delete type=3 #200
|
||||||
2023/11/25-11:53:56.158657 7fd092bff6c0 Delete type=3 #34
|
2024/06/12-11:13:16.258153 7f3f0ea006c0 Delete type=0 #202
|
||||||
2023/11/25-11:54:27.006917 7fd090bfb6c0 Level-0 table #39: started
|
2024/06/12-11:13:34.719686 7f3f060006c0 Level-0 table #207: started
|
||||||
2023/11/25-11:54:27.006997 7fd090bfb6c0 Level-0 table #39: 0 bytes OK
|
2024/06/12-11:13:34.719708 7f3f060006c0 Level-0 table #207: 0 bytes OK
|
||||||
2023/11/25-11:54:27.015085 7fd090bfb6c0 Delete type=0 #37
|
2024/06/12-11:13:34.726803 7f3f060006c0 Delete type=0 #205
|
||||||
2023/11/25-11:54:27.015315 7fd090bfb6c0 Manual compaction at level-0 from '!folders!MA6uFJMVebGeayIk' @ 72057594037927935 : 1 .. '!items!zWXriFfWH4wiyUzv' @ 0 : 0; will stop at (end)
|
2024/06/12-11:13:34.733250 7f3f060006c0 Manual compaction at level-0 from '!folders!MA6uFJMVebGeayIk' @ 72057594037927935 : 1 .. '!items!zhjdppKgrON7wJn7' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+1
-1
@@ -1 +1 @@
|
|||||||
MANIFEST-000150
|
MANIFEST-000199
|
||||||
|
|||||||
+8
-8
@@ -1,8 +1,8 @@
|
|||||||
2023/11/26-22:58:14.465883 7f3d1ffff6c0 Recovering log #148
|
2024/02/25-13:11:04.806524 7f0422a006c0 Recovering log #197
|
||||||
2023/11/26-22:58:14.475277 7f3d1ffff6c0 Delete type=3 #146
|
2024/02/25-13:11:04.817703 7f0422a006c0 Delete type=3 #195
|
||||||
2023/11/26-22:58:14.475331 7f3d1ffff6c0 Delete type=0 #148
|
2024/02/25-13:11:04.817799 7f0422a006c0 Delete type=0 #197
|
||||||
2023/11/26-22:59:30.270666 7f3d1dffb6c0 Level-0 table #153: started
|
2024/02/25-13:14:07.532693 7f0421a006c0 Level-0 table #202: started
|
||||||
2023/11/26-22:59:30.270697 7f3d1dffb6c0 Level-0 table #153: 0 bytes OK
|
2024/02/25-13:14:07.532731 7f0421a006c0 Level-0 table #202: 0 bytes OK
|
||||||
2023/11/26-22:59:30.277045 7f3d1dffb6c0 Delete type=0 #151
|
2024/02/25-13:14:07.539153 7f0421a006c0 Delete type=0 #200
|
||||||
2023/11/26-22:59:30.283479 7f3d1dffb6c0 Manual compaction at level-0 from '!items!3O3MjRkrmX4HeaPY' @ 72057594037927935 : 1 .. '!items!q9JGWL4y4udYrzvD' @ 0 : 0; will stop at (end)
|
2024/02/25-13:14:07.539281 7f0421a006c0 Manual compaction at level-0 from '!items!0JWjCJaD6OOouqTj' @ 72057594037927935 : 1 .. '!items!zzDfuUJpQzzz262R' @ 0 : 0; will stop at (end)
|
||||||
2023/11/26-22:59:30.294416 7f3d1dffb6c0 Manual compaction at level-1 from '!items!3O3MjRkrmX4HeaPY' @ 72057594037927935 : 1 .. '!items!q9JGWL4y4udYrzvD' @ 0 : 0; will stop at (end)
|
2024/02/25-13:14:07.539306 7f0421a006c0 Manual compaction at level-1 from '!items!0JWjCJaD6OOouqTj' @ 72057594037927935 : 1 .. '!items!zzDfuUJpQzzz262R' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
+8
-8
@@ -1,8 +1,8 @@
|
|||||||
2023/11/25-11:53:55.987706 7fd091bfd6c0 Recovering log #144
|
2024/02/25-13:04:05.224949 7f0428e006c0 Recovering log #193
|
||||||
2023/11/25-11:53:55.997898 7fd091bfd6c0 Delete type=3 #142
|
2024/02/25-13:04:05.236046 7f0428e006c0 Delete type=3 #191
|
||||||
2023/11/25-11:53:55.997959 7fd091bfd6c0 Delete type=0 #144
|
2024/02/25-13:04:05.236134 7f0428e006c0 Delete type=0 #193
|
||||||
2023/11/25-11:54:26.939109 7fd090bfb6c0 Level-0 table #149: started
|
2024/02/25-13:10:09.480522 7f0421a006c0 Level-0 table #198: started
|
||||||
2023/11/25-11:54:26.939141 7fd090bfb6c0 Level-0 table #149: 0 bytes OK
|
2024/02/25-13:10:09.480555 7f0421a006c0 Level-0 table #198: 0 bytes OK
|
||||||
2023/11/25-11:54:26.946683 7fd090bfb6c0 Delete type=0 #147
|
2024/02/25-13:10:09.486678 7f0421a006c0 Delete type=0 #196
|
||||||
2023/11/25-11:54:26.959662 7fd090bfb6c0 Manual compaction at level-0 from '!items!3O3MjRkrmX4HeaPY' @ 72057594037927935 : 1 .. '!items!q9JGWL4y4udYrzvD' @ 0 : 0; will stop at (end)
|
2024/02/25-13:10:09.493365 7f0421a006c0 Manual compaction at level-0 from '!items!0JWjCJaD6OOouqTj' @ 72057594037927935 : 1 .. '!items!zzDfuUJpQzzz262R' @ 0 : 0; will stop at (end)
|
||||||
2023/11/25-11:54:26.959698 7fd090bfb6c0 Manual compaction at level-1 from '!items!3O3MjRkrmX4HeaPY' @ 72057594037927935 : 1 .. '!items!q9JGWL4y4udYrzvD' @ 0 : 0; will stop at (end)
|
2024/02/25-13:10:09.499939 7f0421a006c0 Manual compaction at level-1 from '!items!0JWjCJaD6OOouqTj' @ 72057594037927935 : 1 .. '!items!zzDfuUJpQzzz262R' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1 +1 @@
|
|||||||
MANIFEST-000043
|
MANIFEST-000201
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
2023/11/26-22:58:14.601405 7f3d1e7fc6c0 Recovering log #41
|
2024/06/12-11:13:40.426654 7f3f0ea006c0 Recovering log #199
|
||||||
2023/11/26-22:58:14.611967 7f3d1e7fc6c0 Delete type=3 #39
|
2024/06/12-11:13:40.437435 7f3f0ea006c0 Delete type=3 #197
|
||||||
2023/11/26-22:58:14.612027 7f3d1e7fc6c0 Delete type=0 #41
|
2024/06/12-11:13:40.437506 7f3f0ea006c0 Delete type=0 #199
|
||||||
2023/11/26-22:59:30.361430 7f3d1dffb6c0 Level-0 table #46: started
|
2024/06/12-11:16:23.521086 7f3f060006c0 Level-0 table #204: started
|
||||||
2023/11/26-22:59:30.361451 7f3d1dffb6c0 Level-0 table #46: 0 bytes OK
|
2024/06/12-11:16:23.521151 7f3f060006c0 Level-0 table #204: 0 bytes OK
|
||||||
2023/11/26-22:59:30.367909 7f3d1dffb6c0 Delete type=0 #44
|
2024/06/12-11:16:23.553911 7f3f060006c0 Delete type=0 #202
|
||||||
2023/11/26-22:59:30.375166 7f3d1dffb6c0 Manual compaction at level-0 from '!folders!Gh3dOV5MWEUqOK83' @ 72057594037927935 : 1 .. '!items!zwMpjsE84sk26eej' @ 0 : 0; will stop at (end)
|
2024/06/12-11:16:23.590700 7f3f060006c0 Manual compaction at level-0 from '!folders!47aGmBuk1mHtbFFU' @ 72057594037927935 : 1 .. '!items!zwMpjsE84sk26eej' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
2023/11/25-11:53:56.161415 7fd0913fc6c0 Recovering log #38
|
2024/06/12-11:13:16.262812 7f3f0d6006c0 Recovering log #195
|
||||||
2023/11/25-11:53:56.170729 7fd0913fc6c0 Delete type=0 #38
|
2024/06/12-11:13:16.272606 7f3f0d6006c0 Delete type=3 #193
|
||||||
2023/11/25-11:53:56.170780 7fd0913fc6c0 Delete type=3 #37
|
2024/06/12-11:13:16.272662 7f3f0d6006c0 Delete type=0 #195
|
||||||
2023/11/25-11:54:27.021721 7fd090bfb6c0 Level-0 table #42: started
|
2024/06/12-11:13:34.727044 7f3f060006c0 Level-0 table #200: started
|
||||||
2023/11/25-11:54:27.021762 7fd090bfb6c0 Level-0 table #42: 0 bytes OK
|
2024/06/12-11:13:34.727098 7f3f060006c0 Level-0 table #200: 0 bytes OK
|
||||||
2023/11/25-11:54:27.028409 7fd090bfb6c0 Delete type=0 #40
|
2024/06/12-11:13:34.733076 7f3f060006c0 Delete type=0 #198
|
||||||
2023/11/25-11:54:27.028540 7fd090bfb6c0 Manual compaction at level-0 from '!folders!Gh3dOV5MWEUqOK83' @ 72057594037927935 : 1 .. '!items!zwMpjsE84sk26eej' @ 0 : 0; will stop at (end)
|
2024/06/12-11:13:34.733265 7f3f060006c0 Manual compaction at level-0 from '!folders!47aGmBuk1mHtbFFU' @ 72057594037927935 : 1 .. '!items!zwMpjsE84sk26eej' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
@@ -1 +1 @@
|
|||||||
MANIFEST-000150
|
MANIFEST-000254
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
2023/11/26-22:58:14.515713 7f3d1ffff6c0 Recovering log #148
|
2024/06/12-11:13:40.356313 7f3f0d6006c0 Recovering log #252
|
||||||
2023/11/26-22:58:14.526380 7f3d1ffff6c0 Delete type=3 #146
|
2024/06/12-11:13:40.366003 7f3f0d6006c0 Delete type=3 #250
|
||||||
2023/11/26-22:58:14.526433 7f3d1ffff6c0 Delete type=0 #148
|
2024/06/12-11:13:40.366126 7f3f0d6006c0 Delete type=0 #252
|
||||||
2023/11/26-22:59:30.313953 7f3d1dffb6c0 Level-0 table #153: started
|
2024/06/12-11:16:23.317811 7f3f060006c0 Level-0 table #257: started
|
||||||
2023/11/26-22:59:30.313979 7f3d1dffb6c0 Level-0 table #153: 0 bytes OK
|
2024/06/12-11:16:23.317841 7f3f060006c0 Level-0 table #257: 0 bytes OK
|
||||||
2023/11/26-22:59:30.320020 7f3d1dffb6c0 Delete type=0 #151
|
2024/06/12-11:16:23.355645 7f3f060006c0 Delete type=0 #255
|
||||||
2023/11/26-22:59:30.320135 7f3d1dffb6c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
2024/06/12-11:16:23.460439 7f3f060006c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
2023/11/25-11:53:56.037176 7fd091bfd6c0 Recovering log #144
|
2024/06/12-11:13:16.189039 7f3f0ea006c0 Recovering log #248
|
||||||
2023/11/25-11:53:56.047186 7fd091bfd6c0 Delete type=3 #142
|
2024/06/12-11:13:16.200829 7f3f0ea006c0 Delete type=3 #246
|
||||||
2023/11/25-11:53:56.047263 7fd091bfd6c0 Delete type=0 #144
|
2024/06/12-11:13:16.200927 7f3f0ea006c0 Delete type=0 #248
|
||||||
2023/11/25-11:54:26.966421 7fd090bfb6c0 Level-0 table #149: started
|
2024/06/12-11:13:34.657802 7f3f060006c0 Level-0 table #253: started
|
||||||
2023/11/25-11:54:26.966444 7fd090bfb6c0 Level-0 table #149: 0 bytes OK
|
2024/06/12-11:13:34.657837 7f3f060006c0 Level-0 table #253: 0 bytes OK
|
||||||
2023/11/25-11:54:26.972594 7fd090bfb6c0 Delete type=0 #147
|
2024/06/12-11:13:34.663971 7f3f060006c0 Delete type=0 #251
|
||||||
2023/11/25-11:54:26.986318 7fd090bfb6c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
2024/06/12-11:13:34.681143 7f3f060006c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
@@ -1 +1 @@
|
|||||||
MANIFEST-000150
|
MANIFEST-000254
|
||||||
|
|||||||
+7
-7
@@ -1,7 +1,7 @@
|
|||||||
2023/11/26-22:58:14.528083 7f3d1effd6c0 Recovering log #148
|
2024/06/12-11:13:40.368093 7f3f0ea006c0 Recovering log #252
|
||||||
2023/11/26-22:58:14.537438 7f3d1effd6c0 Delete type=3 #146
|
2024/06/12-11:13:40.379978 7f3f0ea006c0 Delete type=3 #250
|
||||||
2023/11/26-22:58:14.537516 7f3d1effd6c0 Delete type=0 #148
|
2024/06/12-11:13:40.380078 7f3f0ea006c0 Delete type=0 #252
|
||||||
2023/11/26-22:59:30.320217 7f3d1dffb6c0 Level-0 table #153: started
|
2024/06/12-11:16:23.408873 7f3f060006c0 Level-0 table #257: started
|
||||||
2023/11/26-22:59:30.320240 7f3d1dffb6c0 Level-0 table #153: 0 bytes OK
|
2024/06/12-11:16:23.408929 7f3f060006c0 Level-0 table #257: 0 bytes OK
|
||||||
2023/11/26-22:59:30.326969 7f3d1dffb6c0 Delete type=0 #151
|
2024/06/12-11:16:23.460072 7f3f060006c0 Delete type=0 #255
|
||||||
2023/11/26-22:59:30.347752 7f3d1dffb6c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
2024/06/12-11:16:23.460493 7f3f060006c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
2023/11/25-11:53:56.048914 7fd0923fe6c0 Recovering log #144
|
2024/06/12-11:13:16.204139 7f3f0d6006c0 Recovering log #248
|
||||||
2023/11/25-11:53:56.058887 7fd0923fe6c0 Delete type=3 #142
|
2024/06/12-11:13:16.215399 7f3f0d6006c0 Delete type=3 #246
|
||||||
2023/11/25-11:53:56.058947 7fd0923fe6c0 Delete type=0 #144
|
2024/06/12-11:13:16.215490 7f3f0d6006c0 Delete type=0 #248
|
||||||
2023/11/25-11:54:26.959805 7fd090bfb6c0 Level-0 table #149: started
|
2024/06/12-11:13:34.692534 7f3f060006c0 Level-0 table #253: started
|
||||||
2023/11/25-11:54:26.959829 7fd090bfb6c0 Level-0 table #149: 0 bytes OK
|
2024/06/12-11:13:34.692577 7f3f060006c0 Level-0 table #253: 0 bytes OK
|
||||||
2023/11/25-11:54:26.966338 7fd090bfb6c0 Delete type=0 #147
|
2024/06/12-11:13:34.698872 7f3f060006c0 Delete type=0 #251
|
||||||
2023/11/25-11:54:26.986308 7fd090bfb6c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
2024/06/12-11:13:34.713306 7f3f060006c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1 +1 @@
|
|||||||
MANIFEST-000079
|
MANIFEST-000128
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
2023/11/26-22:58:14.563668 7f3d1ffff6c0 Recovering log #77
|
2024/02/25-13:11:04.911848 7f0422a006c0 Recovering log #126
|
||||||
2023/11/26-22:58:14.573793 7f3d1ffff6c0 Delete type=3 #75
|
2024/02/25-13:11:04.922320 7f0422a006c0 Delete type=3 #124
|
||||||
2023/11/26-22:58:14.573840 7f3d1ffff6c0 Delete type=0 #77
|
2024/02/25-13:11:04.922392 7f0422a006c0 Delete type=0 #126
|
||||||
2023/11/26-22:59:30.341302 7f3d1dffb6c0 Level-0 table #82: started
|
2024/02/25-13:14:07.578457 7f0421a006c0 Level-0 table #131: started
|
||||||
2023/11/26-22:59:30.341329 7f3d1dffb6c0 Level-0 table #82: 0 bytes OK
|
2024/02/25-13:14:07.578513 7f0421a006c0 Level-0 table #131: 0 bytes OK
|
||||||
2023/11/26-22:59:30.347583 7f3d1dffb6c0 Delete type=0 #80
|
2024/02/25-13:14:07.585654 7f0421a006c0 Delete type=0 #129
|
||||||
2023/11/26-22:59:30.347793 7f3d1dffb6c0 Manual compaction at level-0 from '!items!0SbSmYdxJSlcNr6x' @ 72057594037927935 : 1 .. '!items!yyCPVVl8vmMOfPcN' @ 0 : 0; will stop at (end)
|
2024/02/25-13:14:07.592632 7f0421a006c0 Manual compaction at level-0 from '!items!0SbSmYdxJSlcNr6x' @ 72057594037927935 : 1 .. '!items!yyCPVVl8vmMOfPcN' @ 0 : 0; will stop at (end)
|
||||||
2023/11/26-22:59:30.347823 7f3d1dffb6c0 Manual compaction at level-1 from '!items!0SbSmYdxJSlcNr6x' @ 72057594037927935 : 1 .. '!items!yyCPVVl8vmMOfPcN' @ 0 : 0; will stop at (end)
|
2024/02/25-13:14:07.592676 7f0421a006c0 Manual compaction at level-1 from '!items!0SbSmYdxJSlcNr6x' @ 72057594037927935 : 1 .. '!items!yyCPVVl8vmMOfPcN' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
2023/11/25-11:53:56.123402 7fd091bfd6c0 Recovering log #73
|
2024/02/25-13:04:05.332283 7f0428e006c0 Recovering log #122
|
||||||
2023/11/25-11:53:56.133061 7fd091bfd6c0 Delete type=3 #71
|
2024/02/25-13:04:05.343337 7f0428e006c0 Delete type=3 #120
|
||||||
2023/11/25-11:53:56.133163 7fd091bfd6c0 Delete type=0 #73
|
2024/02/25-13:04:05.343387 7f0428e006c0 Delete type=0 #122
|
||||||
2023/11/25-11:54:27.000544 7fd090bfb6c0 Level-0 table #78: started
|
2024/02/25-13:10:09.539934 7f0421a006c0 Level-0 table #127: started
|
||||||
2023/11/25-11:54:27.000572 7fd090bfb6c0 Level-0 table #78: 0 bytes OK
|
2024/02/25-13:10:09.539956 7f0421a006c0 Level-0 table #127: 0 bytes OK
|
||||||
2023/11/25-11:54:27.006700 7fd090bfb6c0 Delete type=0 #76
|
2024/02/25-13:10:09.546327 7f0421a006c0 Delete type=0 #125
|
||||||
2023/11/25-11:54:27.015300 7fd090bfb6c0 Manual compaction at level-0 from '!items!0SbSmYdxJSlcNr6x' @ 72057594037927935 : 1 .. '!items!yyCPVVl8vmMOfPcN' @ 0 : 0; will stop at (end)
|
2024/02/25-13:10:09.552649 7f0421a006c0 Manual compaction at level-0 from '!items!0SbSmYdxJSlcNr6x' @ 72057594037927935 : 1 .. '!items!yyCPVVl8vmMOfPcN' @ 0 : 0; will stop at (end)
|
||||||
2023/11/25-11:54:27.015342 7fd090bfb6c0 Manual compaction at level-1 from '!items!0SbSmYdxJSlcNr6x' @ 72057594037927935 : 1 .. '!items!yyCPVVl8vmMOfPcN' @ 0 : 0; will stop at (end)
|
2024/02/25-13:10:09.552755 7f0421a006c0 Manual compaction at level-1 from '!items!0SbSmYdxJSlcNr6x' @ 72057594037927935 : 1 .. '!items!yyCPVVl8vmMOfPcN' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1 @@
|
|||||||
|
MANIFEST-000066
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
2024/06/12-11:13:40.398008 7f3f0d6006c0 Recovering log #64
|
||||||
|
2024/06/12-11:13:40.408278 7f3f0d6006c0 Delete type=3 #62
|
||||||
|
2024/06/12-11:13:40.408353 7f3f0d6006c0 Delete type=0 #64
|
||||||
|
2024/06/12-11:16:23.554104 7f3f060006c0 Level-0 table #69: started
|
||||||
|
2024/06/12-11:16:23.554144 7f3f060006c0 Level-0 table #69: 0 bytes OK
|
||||||
|
2024/06/12-11:16:23.590465 7f3f060006c0 Delete type=0 #67
|
||||||
|
2024/06/12-11:16:23.590737 7f3f060006c0 Manual compaction at level-0 from '!folders!La3YsNYFddQnmsba' @ 72057594037927935 : 1 .. '!items!zzDfuUJpQzzz262R' @ 0 : 0; will stop at (end)
|
||||||
|
2024/06/12-11:16:23.590756 7f3f060006c0 Manual compaction at level-1 from '!folders!La3YsNYFddQnmsba' @ 72057594037927935 : 1 .. '!items!zzDfuUJpQzzz262R' @ 0 : 0; will stop at (end)
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
2024/06/12-11:13:16.233304 7f3f0ea006c0 Recovering log #60
|
||||||
|
2024/06/12-11:13:16.243341 7f3f0ea006c0 Delete type=3 #58
|
||||||
|
2024/06/12-11:13:16.243395 7f3f0ea006c0 Delete type=0 #60
|
||||||
|
2024/06/12-11:13:34.713340 7f3f060006c0 Level-0 table #65: started
|
||||||
|
2024/06/12-11:13:34.713379 7f3f060006c0 Level-0 table #65: 0 bytes OK
|
||||||
|
2024/06/12-11:13:34.719558 7f3f060006c0 Delete type=0 #63
|
||||||
|
2024/06/12-11:13:34.733213 7f3f060006c0 Manual compaction at level-0 from '!folders!La3YsNYFddQnmsba' @ 72057594037927935 : 1 .. '!items!zzDfuUJpQzzz262R' @ 0 : 0; will stop at (end)
|
||||||
|
2024/06/12-11:13:34.733290 7f3f060006c0 Manual compaction at level-1 from '!folders!La3YsNYFddQnmsba' @ 72057594037927935 : 1 .. '!items!zzDfuUJpQzzz262R' @ 0 : 0; will stop at (end)
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1 +1 @@
|
|||||||
MANIFEST-000150
|
MANIFEST-000199
|
||||||
|
|||||||
+8
-8
@@ -1,8 +1,8 @@
|
|||||||
2023/11/26-22:58:14.476977 7f3d1effd6c0 Recovering log #148
|
2024/02/25-13:11:04.819236 7f0428e006c0 Recovering log #197
|
||||||
2023/11/26-22:58:14.487561 7f3d1effd6c0 Delete type=3 #146
|
2024/02/25-13:11:04.829162 7f0428e006c0 Delete type=3 #195
|
||||||
2023/11/26-22:58:14.487805 7f3d1effd6c0 Delete type=0 #148
|
2024/02/25-13:11:04.829232 7f0428e006c0 Delete type=0 #197
|
||||||
2023/11/26-22:59:30.294449 7f3d1dffb6c0 Level-0 table #153: started
|
2024/02/25-13:14:07.545758 7f0421a006c0 Level-0 table #202: started
|
||||||
2023/11/26-22:59:30.294506 7f3d1dffb6c0 Level-0 table #153: 0 bytes OK
|
2024/02/25-13:14:07.545813 7f0421a006c0 Level-0 table #202: 0 bytes OK
|
||||||
2023/11/26-22:59:30.300665 7f3d1dffb6c0 Delete type=0 #151
|
2024/02/25-13:14:07.552067 7f0421a006c0 Delete type=0 #200
|
||||||
2023/11/26-22:59:30.313940 7f3d1dffb6c0 Manual compaction at level-0 from '!items!05RVU3UcRabogEvL' @ 72057594037927935 : 1 .. '!items!xNmOdMs4rQ0yiVzg' @ 0 : 0; will stop at (end)
|
2024/02/25-13:14:07.565492 7f0421a006c0 Manual compaction at level-0 from '!items!05RVU3UcRabogEvL' @ 72057594037927935 : 1 .. '!items!zaxcUsWUZ1vvl0p8' @ 0 : 0; will stop at (end)
|
||||||
2023/11/26-22:59:30.320119 7f3d1dffb6c0 Manual compaction at level-1 from '!items!05RVU3UcRabogEvL' @ 72057594037927935 : 1 .. '!items!xNmOdMs4rQ0yiVzg' @ 0 : 0; will stop at (end)
|
2024/02/25-13:14:07.565529 7f0421a006c0 Manual compaction at level-1 from '!items!05RVU3UcRabogEvL' @ 72057594037927935 : 1 .. '!items!zaxcUsWUZ1vvl0p8' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
2023/11/25-11:53:56.000006 7fd0923fe6c0 Recovering log #144
|
2024/02/25-13:04:05.239972 7f0423e006c0 Recovering log #193
|
||||||
2023/11/25-11:53:56.009809 7fd0923fe6c0 Delete type=3 #142
|
2024/02/25-13:04:05.249512 7f0423e006c0 Delete type=3 #191
|
||||||
2023/11/25-11:53:56.009912 7fd0923fe6c0 Delete type=0 #144
|
2024/02/25-13:04:05.249560 7f0423e006c0 Delete type=0 #193
|
||||||
2023/11/25-11:54:26.946787 7fd090bfb6c0 Level-0 table #149: started
|
2024/02/25-13:10:09.473431 7f0421a006c0 Level-0 table #198: started
|
||||||
2023/11/25-11:54:26.946809 7fd090bfb6c0 Level-0 table #149: 0 bytes OK
|
2024/02/25-13:10:09.473459 7f0421a006c0 Level-0 table #198: 0 bytes OK
|
||||||
2023/11/25-11:54:26.952758 7fd090bfb6c0 Delete type=0 #147
|
2024/02/25-13:10:09.480345 7f0421a006c0 Delete type=0 #196
|
||||||
2023/11/25-11:54:26.959673 7fd090bfb6c0 Manual compaction at level-0 from '!items!05RVU3UcRabogEvL' @ 72057594037927935 : 1 .. '!items!xNmOdMs4rQ0yiVzg' @ 0 : 0; will stop at (end)
|
2024/02/25-13:10:09.493344 7f0421a006c0 Manual compaction at level-0 from '!items!05RVU3UcRabogEvL' @ 72057594037927935 : 1 .. '!items!zaxcUsWUZ1vvl0p8' @ 0 : 0; will stop at (end)
|
||||||
2023/11/25-11:54:26.959705 7fd090bfb6c0 Manual compaction at level-1 from '!items!05RVU3UcRabogEvL' @ 72057594037927935 : 1 .. '!items!xNmOdMs4rQ0yiVzg' @ 0 : 0; will stop at (end)
|
2024/02/25-13:10:09.499930 7f0421a006c0 Manual compaction at level-1 from '!items!05RVU3UcRabogEvL' @ 72057594037927935 : 1 .. '!items!zaxcUsWUZ1vvl0p8' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
@@ -1 +1 @@
|
|||||||
MANIFEST-000027
|
MANIFEST-000075
|
||||||
|
|||||||
+8
-8
@@ -1,8 +1,8 @@
|
|||||||
2023/11/26-22:58:14.576205 7f3d1effd6c0 Recovering log #25
|
2024/02/25-13:11:04.925036 7f0428e006c0 Recovering log #73
|
||||||
2023/11/26-22:58:14.587249 7f3d1effd6c0 Delete type=3 #23
|
2024/02/25-13:11:04.935090 7f0428e006c0 Delete type=3 #71
|
||||||
2023/11/26-22:58:14.587302 7f3d1effd6c0 Delete type=0 #25
|
2024/02/25-13:11:04.935353 7f0428e006c0 Delete type=0 #73
|
||||||
2023/11/26-22:59:30.347856 7f3d1dffb6c0 Level-0 table #30: started
|
2024/02/25-13:14:07.585843 7f0421a006c0 Level-0 table #78: started
|
||||||
2023/11/26-22:59:30.347877 7f3d1dffb6c0 Level-0 table #30: 0 bytes OK
|
2024/02/25-13:14:07.585896 7f0421a006c0 Level-0 table #78: 0 bytes OK
|
||||||
2023/11/26-22:59:30.354594 7f3d1dffb6c0 Delete type=0 #28
|
2024/02/25-13:14:07.592513 7f0421a006c0 Delete type=0 #76
|
||||||
2023/11/26-22:59:30.375145 7f3d1dffb6c0 Manual compaction at level-0 from '!items!56A3sVsiN7KI6a45' @ 72057594037927935 : 1 .. '!items!zJiASbV3QqH2oHb1' @ 0 : 0; will stop at (end)
|
2024/02/25-13:14:07.592640 7f0421a006c0 Manual compaction at level-0 from '!items!56A3sVsiN7KI6a45' @ 72057594037927935 : 1 .. '!items!zJiASbV3QqH2oHb1' @ 0 : 0; will stop at (end)
|
||||||
2023/11/26-22:59:30.375173 7f3d1dffb6c0 Manual compaction at level-1 from '!items!56A3sVsiN7KI6a45' @ 72057594037927935 : 1 .. '!items!zJiASbV3QqH2oHb1' @ 0 : 0; will stop at (end)
|
2024/02/25-13:14:07.592670 7f0421a006c0 Manual compaction at level-1 from '!items!56A3sVsiN7KI6a45' @ 72057594037927935 : 1 .. '!items!zJiASbV3QqH2oHb1' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
2023/11/25-11:53:56.135361 7fd0923fe6c0 Recovering log #21
|
2024/02/25-13:04:05.347457 7f0423e006c0 Recovering log #69
|
||||||
2023/11/25-11:53:56.145751 7fd0923fe6c0 Delete type=3 #19
|
2024/02/25-13:04:05.356885 7f0423e006c0 Delete type=3 #67
|
||||||
2023/11/25-11:53:56.145806 7fd0923fe6c0 Delete type=0 #21
|
2024/02/25-13:04:05.356934 7f0423e006c0 Delete type=0 #69
|
||||||
2023/11/25-11:54:26.993034 7fd090bfb6c0 Level-0 table #26: started
|
2024/02/25-13:10:09.533502 7f0421a006c0 Level-0 table #74: started
|
||||||
2023/11/25-11:54:26.993055 7fd090bfb6c0 Level-0 table #26: 0 bytes OK
|
2024/02/25-13:10:09.533526 7f0421a006c0 Level-0 table #74: 0 bytes OK
|
||||||
2023/11/25-11:54:27.000358 7fd090bfb6c0 Delete type=0 #24
|
2024/02/25-13:10:09.539823 7f0421a006c0 Delete type=0 #72
|
||||||
2023/11/25-11:54:27.015280 7fd090bfb6c0 Manual compaction at level-0 from '!items!56A3sVsiN7KI6a45' @ 72057594037927935 : 1 .. '!items!zJiASbV3QqH2oHb1' @ 0 : 0; will stop at (end)
|
2024/02/25-13:10:09.552630 7f0421a006c0 Manual compaction at level-0 from '!items!56A3sVsiN7KI6a45' @ 72057594037927935 : 1 .. '!items!zJiASbV3QqH2oHb1' @ 0 : 0; will stop at (end)
|
||||||
2023/11/25-11:54:27.015355 7fd090bfb6c0 Manual compaction at level-1 from '!items!56A3sVsiN7KI6a45' @ 72057594037927935 : 1 .. '!items!zJiASbV3QqH2oHb1' @ 0 : 0; will stop at (end)
|
2024/02/25-13:10:09.552738 7f0421a006c0 Manual compaction at level-1 from '!items!56A3sVsiN7KI6a45' @ 72057594037927935 : 1 .. '!items!zJiASbV3QqH2oHb1' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1 +1 @@
|
|||||||
MANIFEST-000043
|
MANIFEST-000221
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
2023/11/26-22:58:14.615228 7f3d1ffff6c0 Recovering log #41
|
2024/06/12-11:13:40.440639 7f3f0d6006c0 Recovering log #219
|
||||||
2023/11/26-22:58:14.625406 7f3d1ffff6c0 Delete type=3 #39
|
2024/06/12-11:13:40.450523 7f3f0d6006c0 Delete type=3 #217
|
||||||
2023/11/26-22:58:14.625501 7f3d1ffff6c0 Delete type=0 #41
|
2024/06/12-11:13:40.450593 7f3f0d6006c0 Delete type=0 #219
|
||||||
2023/11/26-22:59:30.368017 7f3d1dffb6c0 Level-0 table #46: started
|
2024/06/12-11:16:23.645974 7f3f060006c0 Level-0 table #224: started
|
||||||
2023/11/26-22:59:30.368039 7f3d1dffb6c0 Level-0 table #46: 0 bytes OK
|
2024/06/12-11:16:23.646004 7f3f060006c0 Level-0 table #224: 0 bytes OK
|
||||||
2023/11/26-22:59:30.375036 7f3d1dffb6c0 Delete type=0 #44
|
2024/06/12-11:16:23.683161 7f3f060006c0 Delete type=0 #222
|
||||||
2023/11/26-22:59:30.375179 7f3d1dffb6c0 Manual compaction at level-0 from '!folders!2iZtDz80npHPIwkS' @ 72057594037927935 : 1 .. '!items!zv07ZCqoczWKdT2b' @ 0 : 0; will stop at (end)
|
2024/06/12-11:16:23.683408 7f3f060006c0 Manual compaction at level-0 from '!folders!2iZtDz80npHPIwkS' @ 72057594037927935 : 1 .. '!items!zyFR9C1jBTeFzbxg' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
2023/11/25-11:53:56.174133 7fd091bfd6c0 Recovering log #38
|
2024/06/12-11:13:16.276335 7f3f0ea006c0 Recovering log #215
|
||||||
2023/11/25-11:53:56.184063 7fd091bfd6c0 Delete type=0 #38
|
2024/06/12-11:13:16.287074 7f3f0ea006c0 Delete type=3 #213
|
||||||
2023/11/25-11:53:56.184110 7fd091bfd6c0 Delete type=3 #37
|
2024/06/12-11:13:16.287130 7f3f0ea006c0 Delete type=0 #215
|
||||||
2023/11/25-11:54:27.015463 7fd090bfb6c0 Level-0 table #42: started
|
2024/06/12-11:13:34.733411 7f3f060006c0 Level-0 table #220: started
|
||||||
2023/11/25-11:54:27.015494 7fd090bfb6c0 Level-0 table #42: 0 bytes OK
|
2024/06/12-11:13:34.733492 7f3f060006c0 Level-0 table #220: 0 bytes OK
|
||||||
2023/11/25-11:54:27.021563 7fd090bfb6c0 Delete type=0 #40
|
2024/06/12-11:13:34.741601 7f3f060006c0 Delete type=0 #218
|
||||||
2023/11/25-11:54:27.028525 7fd090bfb6c0 Manual compaction at level-0 from '!folders!2iZtDz80npHPIwkS' @ 72057594037927935 : 1 .. '!items!zv07ZCqoczWKdT2b' @ 0 : 0; will stop at (end)
|
2024/06/12-11:13:34.741825 7f3f060006c0 Manual compaction at level-0 from '!folders!2iZtDz80npHPIwkS' @ 72057594037927935 : 1 .. '!items!zyFR9C1jBTeFzbxg' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+1
-1
@@ -1 +1 @@
|
|||||||
MANIFEST-000150
|
MANIFEST-000199
|
||||||
|
|||||||
+8
-8
@@ -1,8 +1,8 @@
|
|||||||
2023/11/26-22:58:14.551254 7f3d1e7fc6c0 Recovering log #148
|
2024/02/25-13:11:04.899830 7f0428e006c0 Recovering log #197
|
||||||
2023/11/26-22:58:14.561024 7f3d1e7fc6c0 Delete type=3 #146
|
2024/02/25-13:11:04.909890 7f0428e006c0 Delete type=3 #195
|
||||||
2023/11/26-22:58:14.561528 7f3d1e7fc6c0 Delete type=0 #148
|
2024/02/25-13:11:04.909976 7f0428e006c0 Delete type=0 #197
|
||||||
2023/11/26-22:59:30.333656 7f3d1dffb6c0 Level-0 table #153: started
|
2024/02/25-13:14:07.614576 7f0421a006c0 Level-0 table #202: started
|
||||||
2023/11/26-22:59:30.333697 7f3d1dffb6c0 Level-0 table #153: 0 bytes OK
|
2024/02/25-13:14:07.614602 7f0421a006c0 Level-0 table #202: 0 bytes OK
|
||||||
2023/11/26-22:59:30.341193 7f3d1dffb6c0 Delete type=0 #151
|
2024/02/25-13:14:07.621467 7f0421a006c0 Delete type=0 #200
|
||||||
2023/11/26-22:59:30.347786 7f3d1dffb6c0 Manual compaction at level-0 from '!items!0LA7gMBDogO56AZK' @ 72057594037927935 : 1 .. '!items!zwZoHMkWYtMCNx9f' @ 0 : 0; will stop at (end)
|
2024/02/25-13:14:07.628014 7f0421a006c0 Manual compaction at level-0 from '!items!0K3CVEKsq67oKiYE' @ 72057594037927935 : 1 .. '!items!zwZoHMkWYtMCNx9f' @ 0 : 0; will stop at (end)
|
||||||
2023/11/26-22:59:30.347830 7f3d1dffb6c0 Manual compaction at level-1 from '!items!0LA7gMBDogO56AZK' @ 72057594037927935 : 1 .. '!items!zwZoHMkWYtMCNx9f' @ 0 : 0; will stop at (end)
|
2024/02/25-13:14:07.628055 7f0421a006c0 Manual compaction at level-1 from '!items!0K3CVEKsq67oKiYE' @ 72057594037927935 : 1 .. '!items!zwZoHMkWYtMCNx9f' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
+8
-8
@@ -1,8 +1,8 @@
|
|||||||
2023/11/25-11:53:56.109779 7fd0913fc6c0 Recovering log #144
|
2024/02/25-13:04:05.318599 7f0423e006c0 Recovering log #193
|
||||||
2023/11/25-11:53:56.120897 7fd0913fc6c0 Delete type=3 #142
|
2024/02/25-13:04:05.328529 7f0423e006c0 Delete type=3 #191
|
||||||
2023/11/25-11:53:56.120965 7fd0913fc6c0 Delete type=0 #144
|
2024/02/25-13:04:05.328597 7f0423e006c0 Delete type=0 #193
|
||||||
2023/11/25-11:54:26.986457 7fd090bfb6c0 Level-0 table #149: started
|
2024/02/25-13:10:09.519595 7f0421a006c0 Level-0 table #198: started
|
||||||
2023/11/25-11:54:26.986489 7fd090bfb6c0 Level-0 table #149: 0 bytes OK
|
2024/02/25-13:10:09.519645 7f0421a006c0 Level-0 table #198: 0 bytes OK
|
||||||
2023/11/25-11:54:26.992967 7fd090bfb6c0 Delete type=0 #147
|
2024/02/25-13:10:09.526863 7f0421a006c0 Delete type=0 #196
|
||||||
2023/11/25-11:54:27.015253 7fd090bfb6c0 Manual compaction at level-0 from '!items!0LA7gMBDogO56AZK' @ 72057594037927935 : 1 .. '!items!zwZoHMkWYtMCNx9f' @ 0 : 0; will stop at (end)
|
2024/02/25-13:10:09.527031 7f0421a006c0 Manual compaction at level-0 from '!items!0K3CVEKsq67oKiYE' @ 72057594037927935 : 1 .. '!items!zwZoHMkWYtMCNx9f' @ 0 : 0; will stop at (end)
|
||||||
2023/11/25-11:54:27.015329 7fd090bfb6c0 Manual compaction at level-1 from '!items!0LA7gMBDogO56AZK' @ 72057594037927935 : 1 .. '!items!zwZoHMkWYtMCNx9f' @ 0 : 0; will stop at (end)
|
2024/02/25-13:10:09.527062 7f0421a006c0 Manual compaction at level-1 from '!items!0K3CVEKsq67oKiYE' @ 72057594037927935 : 1 .. '!items!zwZoHMkWYtMCNx9f' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
@@ -1 +1 @@
|
|||||||
MANIFEST-000150
|
MANIFEST-000198
|
||||||
|
|||||||
+7
-7
@@ -1,7 +1,7 @@
|
|||||||
2023/11/26-22:58:14.491751 7f3d1f7fe6c0 Recovering log #148
|
2024/02/25-13:11:04.832847 7f0422a006c0 Recovering log #196
|
||||||
2023/11/26-22:58:14.501842 7f3d1f7fe6c0 Delete type=3 #146
|
2024/02/25-13:11:04.844534 7f0422a006c0 Delete type=3 #194
|
||||||
2023/11/26-22:58:14.501903 7f3d1f7fe6c0 Delete type=0 #148
|
2024/02/25-13:11:04.844584 7f0422a006c0 Delete type=0 #196
|
||||||
2023/11/26-22:59:30.307357 7f3d1dffb6c0 Level-0 table #153: started
|
2024/02/25-13:14:07.539362 7f0421a006c0 Level-0 table #201: started
|
||||||
2023/11/26-22:59:30.307385 7f3d1dffb6c0 Level-0 table #153: 0 bytes OK
|
2024/02/25-13:14:07.539386 7f0421a006c0 Level-0 table #201: 0 bytes OK
|
||||||
2023/11/26-22:59:30.313810 7f3d1dffb6c0 Delete type=0 #151
|
2024/02/25-13:14:07.545589 7f0421a006c0 Delete type=0 #199
|
||||||
2023/11/26-22:59:30.320127 7f3d1dffb6c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
2024/02/25-13:14:07.565459 7f0421a006c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
2023/11/25-11:53:56.013578 7fd092bff6c0 Recovering log #144
|
2024/02/25-13:04:05.255291 7f0428e006c0 Recovering log #192
|
||||||
2023/11/25-11:53:56.023494 7fd092bff6c0 Delete type=3 #142
|
2024/02/25-13:04:05.265834 7f0428e006c0 Delete type=3 #190
|
||||||
2023/11/25-11:53:56.023547 7fd092bff6c0 Delete type=0 #144
|
2024/02/25-13:04:05.265885 7f0428e006c0 Delete type=0 #192
|
||||||
2023/11/25-11:54:26.952877 7fd090bfb6c0 Level-0 table #149: started
|
2024/02/25-13:10:09.486767 7f0421a006c0 Level-0 table #197: started
|
||||||
2023/11/25-11:54:26.952930 7fd090bfb6c0 Level-0 table #149: 0 bytes OK
|
2024/02/25-13:10:09.486786 7f0421a006c0 Level-0 table #197: 0 bytes OK
|
||||||
2023/11/25-11:54:26.959512 7fd090bfb6c0 Delete type=0 #147
|
2024/02/25-13:10:09.493210 7f0421a006c0 Delete type=0 #195
|
||||||
2023/11/25-11:54:26.959683 7fd090bfb6c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
2024/02/25-13:10:09.499919 7f0421a006c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user