feat: invulnerable when dying
This commit is contained in:
parent
6e0c8809db
commit
c1643180df
|
@ -16,6 +16,7 @@ export class Vulnerable extends Trait {
|
|||
initialize() {
|
||||
this.damageId = 0;
|
||||
this.damageList = {};
|
||||
this._isInvulnerable = false;
|
||||
this.locks = new Map();
|
||||
if (hasGraphics) {
|
||||
this.emitter = new DamageEmitter();
|
||||
|
@ -43,6 +44,14 @@ export class Vulnerable extends Trait {
|
|||
}
|
||||
}
|
||||
|
||||
get isInvulnerable() {
|
||||
return this._isInvulnerable;
|
||||
}
|
||||
|
||||
set isInvulnerable(isInvulnerable) {
|
||||
this._isInvulnerable = isInvulnerable;
|
||||
}
|
||||
|
||||
setRenderer() {
|
||||
if (this.entity.is('staged') && this.entity.stage) {
|
||||
const renderer = new TextNodeRenderer('.damage', this.entity.stage);
|
||||
|
@ -69,6 +78,10 @@ export class Vulnerable extends Trait {
|
|||
listeners() {
|
||||
return {
|
||||
|
||||
dying: () => {
|
||||
this._isInvulnerable = true;
|
||||
},
|
||||
|
||||
stageChanged: () => {
|
||||
this.setRenderer();
|
||||
},
|
||||
|
|
Loading…
Reference in New Issue
Block a user