fix banish and invert
This commit is contained in:
parent
4ea3adcff3
commit
2026530370
@ -185,7 +185,7 @@
|
|||||||
|
|
||||||
.game-construct.ko {
|
.game-construct.ko {
|
||||||
animation: none;
|
animation: none;
|
||||||
opacity: 0.35;
|
opacity: 0.20;
|
||||||
/* filter: grayscale(100%);
|
/* filter: grayscale(100%);
|
||||||
*/}
|
*/}
|
||||||
|
|
||||||
@ -199,6 +199,7 @@
|
|||||||
*/}
|
*/}
|
||||||
|
|
||||||
.game-construct.unfocus.ko {
|
.game-construct.unfocus.ko {
|
||||||
|
opacity: 0.20;
|
||||||
/* filter: blur(5px) grayscale(100%);
|
/* filter: blur(5px) grayscale(100%);
|
||||||
*/}
|
*/}
|
||||||
|
|
||||||
|
|||||||
@ -32,30 +32,46 @@ function createSocket(store) {
|
|||||||
return eachSeries(newRes, (r, cb) => {
|
return eachSeries(newRes, (r, cb) => {
|
||||||
if (['Disable', 'TargetKo'].includes(r.event[0])) return cb();
|
if (['Disable', 'TargetKo'].includes(r.event[0])) return cb();
|
||||||
|
|
||||||
|
store.dispatch(actions.setResolution(r));
|
||||||
|
|
||||||
// convert server enum into anims keywords
|
// convert server enum into anims keywords
|
||||||
// todo make serersideonly
|
// todo make serersideonly
|
||||||
const sequence = animations.getSequence(r);
|
const sequence = animations.getSequence(r);
|
||||||
const timeout = animations.getTime(sequence);
|
const timeout = animations.getTime(sequence);
|
||||||
const anims = animations.getObjects(r, sequence, game, account);
|
const anims = animations.getObjects(r, sequence, game, account);
|
||||||
|
const text = animations.getText(r, sequence);
|
||||||
|
|
||||||
store.dispatch(actions.setAnimSource(anims.animSource));
|
if (sequence.includes('START_SKILL')) store.dispatch(actions.setAnimSource(anims.animSource));
|
||||||
store.dispatch(actions.setAnimTarget(anims.animTarget));
|
if (sequence.includes('END_SKILL')) store.dispatch(actions.setAnimTarget(anims.animTarget));
|
||||||
|
if (sequence.includes('POST_SKILL')) {
|
||||||
|
// timeout to prevent text classes from being added too soon
|
||||||
|
setTimeout(
|
||||||
|
() => store.dispatch(actions.setAnimText(text)),
|
||||||
|
timeout - 1000,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
return setTimeout(() => {
|
return setTimeout(() => {
|
||||||
store.dispatch(actions.setAnimSource(null));
|
store.dispatch(actions.setAnimSource(null));
|
||||||
store.dispatch(actions.setAnimTarget(null));
|
store.dispatch(actions.setAnimTarget(null));
|
||||||
|
store.dispatch(actions.setAnimText(null));
|
||||||
return setTimeout(cb, 50);
|
return setTimeout(cb, 50);
|
||||||
}, 3000);
|
}, timeout);
|
||||||
|
|
||||||
}, err => {
|
}, err => {
|
||||||
if (err) return console.error(err);
|
if (err) return console.error(err);
|
||||||
|
// clear animation state
|
||||||
store.dispatch(actions.setAnimSource(null));
|
store.dispatch(actions.setAnimSource(null));
|
||||||
store.dispatch(actions.setAnimTarget(null));
|
store.dispatch(actions.setAnimTarget(null));
|
||||||
|
store.dispatch(actions.setAnimText(null));
|
||||||
store.dispatch(actions.setAnimating(false));
|
store.dispatch(actions.setAnimating(false));
|
||||||
|
|
||||||
// stop skipping resolutions
|
|
||||||
store.dispatch(actions.setSkip(false));
|
store.dispatch(actions.setSkip(false));
|
||||||
|
store.dispatch(actions.setResolution(null));
|
||||||
|
|
||||||
// ws.sendGameState(currentGame.id);
|
// set the game state so resolutions don't fire twice
|
||||||
|
store.dispatch(actions.setGame(game));
|
||||||
|
ws.sendGameState(game.id);
|
||||||
return true;
|
return true;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@ -33,7 +33,7 @@ class Hybrid extends Component {
|
|||||||
class="green-one"
|
class="green-one"
|
||||||
cx='50'
|
cx='50'
|
||||||
cy='150'
|
cy='150'
|
||||||
r='10'
|
r="15"
|
||||||
fill={COLOURS.GREEN}
|
fill={COLOURS.GREEN}
|
||||||
stroke="none"
|
stroke="none"
|
||||||
/>
|
/>
|
||||||
@ -41,7 +41,7 @@ class Hybrid extends Component {
|
|||||||
class="green-two"
|
class="green-two"
|
||||||
cx='250'
|
cx='250'
|
||||||
cy='150'
|
cy='150'
|
||||||
r='10'
|
r="15"
|
||||||
fill={COLOURS.GREEN}
|
fill={COLOURS.GREEN}
|
||||||
stroke="none"
|
stroke="none"
|
||||||
/>
|
/>
|
||||||
@ -49,7 +49,7 @@ class Hybrid extends Component {
|
|||||||
class="bluewhite-one"
|
class="bluewhite-one"
|
||||||
cx='150'
|
cx='150'
|
||||||
cy='50'
|
cy='50'
|
||||||
r='10'
|
r="15"
|
||||||
fill={COLOURS.BLUE}
|
fill={COLOURS.BLUE}
|
||||||
stroke="none"
|
stroke="none"
|
||||||
/>
|
/>
|
||||||
@ -65,7 +65,7 @@ class Hybrid extends Component {
|
|||||||
class="bluewhite-two"
|
class="bluewhite-two"
|
||||||
cx='150'
|
cx='150'
|
||||||
cy='250'
|
cy='250'
|
||||||
r='10'
|
r="15"
|
||||||
fill={COLOURS.BLUE}
|
fill={COLOURS.BLUE}
|
||||||
stroke="none"
|
stroke="none"
|
||||||
/>
|
/>
|
||||||
@ -77,7 +77,6 @@ class Hybrid extends Component {
|
|||||||
fill={COLOURS.WHITE}
|
fill={COLOURS.WHITE}
|
||||||
stroke="none"
|
stroke="none"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
</g>
|
</g>
|
||||||
</svg>
|
</svg>
|
||||||
);
|
);
|
||||||
@ -100,6 +99,7 @@ class Hybrid extends Component {
|
|||||||
}));
|
}));
|
||||||
|
|
||||||
this.animations.push(anime({
|
this.animations.push(anime({
|
||||||
|
r: [10, anime.random(10, 30)],
|
||||||
targets: ['#hybrid circle.green-one'],
|
targets: ['#hybrid circle.green-one'],
|
||||||
cx: [50, 250, 50, 250],
|
cx: [50, 250, 50, 250],
|
||||||
delay: TIMES.TARGET_DELAY_MS,
|
delay: TIMES.TARGET_DELAY_MS,
|
||||||
@ -109,6 +109,7 @@ class Hybrid extends Component {
|
|||||||
}));
|
}));
|
||||||
|
|
||||||
this.animations.push(anime({
|
this.animations.push(anime({
|
||||||
|
r: [10, anime.random(10, 30)],
|
||||||
targets: ['#hybrid circle.green-two'],
|
targets: ['#hybrid circle.green-two'],
|
||||||
cy: [250, 50, 250, 50],
|
cy: [250, 50, 250, 50],
|
||||||
delay: TIMES.TARGET_DELAY_MS,
|
delay: TIMES.TARGET_DELAY_MS,
|
||||||
@ -118,6 +119,7 @@ class Hybrid extends Component {
|
|||||||
}));
|
}));
|
||||||
|
|
||||||
this.animations.push(anime({
|
this.animations.push(anime({
|
||||||
|
r: [10, anime.random(10, 30)],
|
||||||
targets: ['#hybrid circle.bluewhite-one'],
|
targets: ['#hybrid circle.bluewhite-one'],
|
||||||
fill: [COLOURS.WHITE, COLOURS.BLUE],
|
fill: [COLOURS.WHITE, COLOURS.BLUE],
|
||||||
cy: [50, 250, 50, 250],
|
cy: [50, 250, 50, 250],
|
||||||
@ -128,6 +130,7 @@ class Hybrid extends Component {
|
|||||||
}));
|
}));
|
||||||
|
|
||||||
this.animations.push(anime({
|
this.animations.push(anime({
|
||||||
|
r: [10, anime.random(10, 30)],
|
||||||
targets: ['#hybrid circle.bluewhite-two'],
|
targets: ['#hybrid circle.bluewhite-two'],
|
||||||
cx: [250, 50, 250, 50],
|
cx: [250, 50, 250, 50],
|
||||||
fill: [COLOURS.WHITE, COLOURS.BLUE],
|
fill: [COLOURS.WHITE, COLOURS.BLUE],
|
||||||
|
|||||||
@ -88,8 +88,8 @@ class ConstructAvatar extends Component {
|
|||||||
}
|
}
|
||||||
|
|
||||||
switch (animTarget.skill) {
|
switch (animTarget.skill) {
|
||||||
case 'banish': return banish(construct.id);
|
case 'Banish': return banish(construct.id);
|
||||||
case 'invert': return invert(construct.id);
|
case 'Invert': return invert(construct.id);
|
||||||
default: return null;
|
default: return null;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@ -112,8 +112,8 @@ class ConstructAvatar extends Component {
|
|||||||
this.resetAnimations();
|
this.resetAnimations();
|
||||||
}
|
}
|
||||||
|
|
||||||
shouldComponentUpdate({ animSource, construct }) {
|
shouldComponentUpdate({ animSource, animTarget, construct }) {
|
||||||
if (animSource === this.props.animSource) {
|
if (animSource === this.props.animSource && animTarget === this.props.animTarget) {
|
||||||
// console.warn(construct.name, 'thinks its same props')
|
// console.warn(construct.name, 'thinks its same props')
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@ -128,12 +128,18 @@ class ConstructAvatar extends Component {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// this is the target
|
// this is the target
|
||||||
// if (animTarget && animTarget.constructId === construct.id) return true;
|
if (animTarget && animTarget.constructId === construct.id) {
|
||||||
|
// console.warn(construct.name, 'should update')
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
// we were previously doing src anim
|
// we were previously doing src anim
|
||||||
const prevSrc = this.props.animSource && this.props.animSource.constructId === construct.id;
|
const prevSrc = this.props.animSource && this.props.animSource.constructId === construct.id;
|
||||||
if (prevSrc && !animSource) return true;
|
if (prevSrc && !animSource) return true;
|
||||||
|
|
||||||
|
const prevTarget = this.props.animTarget && this.props.animTarget.constructId === construct.id;
|
||||||
|
if (prevTarget && !animTarget) return true;
|
||||||
|
|
||||||
// console.warn(construct.name, 'not updating');
|
// console.warn(construct.name, 'not updating');
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user