#33 Wrong wealth calculation
Changes: + add function to adjust item value depending on currency
This commit is contained in:
parent
cfdba0ee75
commit
a5c5b6c9e7
|
|
@ -145,11 +145,10 @@ export class M5Character extends Actor {
|
||||||
ret.stats.perceptionFW = 6;
|
ret.stats.perceptionFW = 6;
|
||||||
ret.stats.drinking = this.modResult(0);
|
ret.stats.drinking = this.modResult(0);
|
||||||
ret.stats.drinkingFW = Math.floor(ret.attributes.ko.value / 10);
|
ret.stats.drinkingFW = Math.floor(ret.attributes.ko.value / 10);
|
||||||
ret.stats.hoardMin = M5Character.levelThreshold.at (ret.level - 1)/2;
|
ret.stats.hoardMin = M5Character.levelThreshold.at(ret.level - 1) / 2;
|
||||||
ret.stats.hoardNext = M5Character.levelThreshold.at (ret.level)/2;
|
ret.stats.hoardNext = M5Character.levelThreshold.at(ret.level) / 2;
|
||||||
ret.stats.wealth = data.info.gold + data.info.silver/10 + data.info.copper/100;
|
ret.stats.wealth = data.info.gold + data.info.silver / 10 + data.info.copper / 100;
|
||||||
ret.stats.hoard = 0;
|
ret.stats.hoard = 0;
|
||||||
|
|
||||||
|
|
||||||
if (!skip?.mods) {
|
if (!skip?.mods) {
|
||||||
const aggregate = new M5ModAggregate(data, ret);
|
const aggregate = new M5ModAggregate(data, ret);
|
||||||
|
|
@ -177,14 +176,14 @@ export class M5Character extends Actor {
|
||||||
let label = item.name;
|
let label = item.name;
|
||||||
if (item.system.magic) {
|
if (item.system.magic) {
|
||||||
label += "*";
|
label += "*";
|
||||||
};
|
}
|
||||||
if (item.system.valuable) {
|
if (item.system.valuable) {
|
||||||
ret.stats.wealth += item.system.value || 0;
|
ret.stats.wealth += this.calculateValue(item.system.value, item.system.currency);
|
||||||
};
|
}
|
||||||
if (item.system.hoarded) {
|
if (item.system.hoarded) {
|
||||||
ret.stats.hoard += item.system.value || 0;
|
ret.stats.hoard += item.system.value || 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
let icon = item.img;
|
let icon = item.img;
|
||||||
let rollable = false;
|
let rollable = false;
|
||||||
|
|
||||||
|
|
@ -195,7 +194,7 @@ export class M5Character extends Actor {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
ret.gear.items[item.id] = {
|
ret.gear.items[item.id] = {
|
||||||
label: label,
|
label: label,
|
||||||
icon: icon,
|
icon: icon,
|
||||||
|
|
@ -249,7 +248,6 @@ export class M5Character extends Actor {
|
||||||
quantity: item.system.quantity || 0,
|
quantity: item.system.quantity || 0,
|
||||||
rollExist: rollable,
|
rollExist: rollable,
|
||||||
};
|
};
|
||||||
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -262,8 +260,8 @@ export class M5Character extends Actor {
|
||||||
let label = item.name;
|
let label = item.name;
|
||||||
if (item.system.magic) {
|
if (item.system.magic) {
|
||||||
label += "*";
|
label += "*";
|
||||||
};
|
}
|
||||||
|
|
||||||
ret.gear.effects[item.id] = {
|
ret.gear.effects[item.id] = {
|
||||||
label: label,
|
label: label,
|
||||||
magic: item.system.magic,
|
magic: item.system.magic,
|
||||||
|
|
@ -306,21 +304,21 @@ export class M5Character extends Actor {
|
||||||
(item.system.stats.damageBonus < 0 ? "" : "+") +
|
(item.system.stats.damageBonus < 0 ? "" : "+") +
|
||||||
item.system.stats.damageBonus +
|
item.system.stats.damageBonus +
|
||||||
")";
|
")";
|
||||||
};
|
}
|
||||||
if (item.system.valuable) {
|
if (item.system.valuable) {
|
||||||
ret.stats.wealth += item.system.value || 0;
|
ret.stats.wealth += this.calculateValue(item.system.value, item.system.currency);
|
||||||
};
|
}
|
||||||
if (item.system.hoarded) {
|
if (item.system.hoarded) {
|
||||||
ret.stats.hoard += item.system.value || 0;
|
ret.stats.hoard += item.system.value || 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
ret.gear.weapons[item.id] = {
|
ret.gear.weapons[item.id] = {
|
||||||
label: label,
|
label: label,
|
||||||
skillId: item.system.skillId,
|
skillId: item.system.skillId,
|
||||||
magic: item.system.magic,
|
magic: item.system.magic,
|
||||||
valuable: item.system?.valuable,
|
valuable: item.system?.valuable,
|
||||||
hoarded: item.system?.hoarded,
|
hoarded: item.system?.hoarded,
|
||||||
value: item.system.value || 0,
|
value: item.system.value || 0,
|
||||||
calc: item.system.calc,
|
calc: item.system.calc,
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
|
@ -335,14 +333,14 @@ export class M5Character extends Actor {
|
||||||
let label = item.name;
|
let label = item.name;
|
||||||
if (item.system.magic) {
|
if (item.system.magic) {
|
||||||
label += "*(" + (item.system.stats.defenseBonus < 0 ? "" : "+") + item.system.stats.defenseBonus + ")";
|
label += "*(" + (item.system.stats.defenseBonus < 0 ? "" : "+") + item.system.stats.defenseBonus + ")";
|
||||||
};
|
}
|
||||||
if (item.system.valuable) {
|
if (item.system.valuable) {
|
||||||
ret.stats.wealth += item.system.value || 0;
|
ret.stats.wealth += this.calculateValue(item.system.value, item.system.currency);
|
||||||
};
|
}
|
||||||
if (item.system.hoarded) {
|
if (item.system.hoarded) {
|
||||||
ret.stats.hoard += item.system.value || 0;
|
ret.stats.hoard += item.system.value || 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
ret.gear.defensiveWeapons[item.id] = {
|
ret.gear.defensiveWeapons[item.id] = {
|
||||||
label: label,
|
label: label,
|
||||||
skillId: item.system.skillId,
|
skillId: item.system.skillId,
|
||||||
|
|
@ -364,14 +362,14 @@ export class M5Character extends Actor {
|
||||||
let label = item.name;
|
let label = item.name;
|
||||||
if (item.system.magic) {
|
if (item.system.magic) {
|
||||||
label += "*";
|
label += "*";
|
||||||
};
|
}
|
||||||
if (item.system.valuable) {
|
if (item.system.valuable) {
|
||||||
ret.stats.wealth += item.system.value || 0;
|
ret.stats.wealth += this.calculateValue(item.system.value, item.system.currency);
|
||||||
};
|
}
|
||||||
if (item.system.hoarded) {
|
if (item.system.hoarded) {
|
||||||
ret.stats.hoard += item.system.value || 0;
|
ret.stats.hoard += item.system.value || 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
ret.gear.armor[item.id] = {
|
ret.gear.armor[item.id] = {
|
||||||
label: label,
|
label: label,
|
||||||
magic: item.system.magic,
|
magic: item.system.magic,
|
||||||
|
|
@ -521,6 +519,19 @@ export class M5Character extends Actor {
|
||||||
return (this as any).getEmbeddedDocument("Item", itemId);
|
return (this as any).getEmbeddedDocument("Item", itemId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private calculateValue(value: number, currency: string): number {
|
||||||
|
switch (currency) {
|
||||||
|
case "gold":
|
||||||
|
return value;
|
||||||
|
case "silver":
|
||||||
|
return value / 10;
|
||||||
|
case "copper":
|
||||||
|
return value / 100;
|
||||||
|
default:
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private modResult(value: number): M5ModResult {
|
private modResult(value: number): M5ModResult {
|
||||||
return {
|
return {
|
||||||
value: value,
|
value: value,
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue