diff --git a/client/src/components/game.construct.jsx b/client/src/components/game.construct.jsx index 68e53cad..a5c163c2 100644 --- a/client/src/components/game.construct.jsx +++ b/client/src/components/game.construct.jsx @@ -59,11 +59,16 @@ class GameConstruct extends preact.Component { player, } = this.props; - const ko = construct.green_life.value === 0 ? 'ko' : ''; + // construct green_life comes from game state and won't update during animations + // treat the construct as ko for the remainder of the anims if ko event occurs + const ko = construct.green_life.value === 0 || this.ko ? 'ko' : ''; const koEvent = () => { if (resolution) { const [type, variant] = resolution.event; - if (variant.construct === construct.id && type === 'Ko') return 'ko-transition'; + if (variant.construct === construct.id && type === 'Ko') { + this.ko = true; + return 'ko-transition'; + } } return ''; };