talent bug fix

This commit is contained in:
Vick Scarlet
2021-08-19 09:44:37 +08:00
parent 58b5a57721
commit 9aa9e3fe2d
2 changed files with 10 additions and 9 deletions

View File

@ -55,17 +55,17 @@ class Life {
const contents = [];
for(const talentId of talents) {
const result = this.#talent.do(talentId);
const result = this.#talent.do(talentId, this.#property);
if(!result) continue;
this.#triggerTalents.add(talentId);
const { effect, name, desctiption } = result;
const { effect, name, desctiption, grade } = result;
contents.push({
type: this.#property.TYPES.TLT,
name,
grade,
desctiption,
})
if(!result.effect) continue;
if(!effect) continue;
this.#property.effect(effect);
}
return contents;

View File

@ -1,4 +1,6 @@
import { clone } from './functions/util.js';
import { checkCondition } from './functions/condition.js';
class Talent {
constructor() {}
@ -13,9 +15,9 @@ class Talent {
}
}
check(talentId) {
check(talentId, property) {
const { condition } = this.get(talentId);
return checkCondition(condition);
return checkCondition(property, condition);
}
get(talentId) {
@ -71,10 +73,9 @@ class Talent {
return Number(this.get(talents).status) || 0;
}
do(talentId) {
const { effect, condition, initiative, grade, name, description } = this.get(talentId);
if(!initiative) return null;
if(condition && !checkCondition(condition))
do(talentId, property) {
const { effect, condition, grade, name, description } = this.get(talentId);
if(condition && !checkCondition(property, condition))
return null;
return { effect, grade, name, description };
}