Slide 32
Slide 32 text
www.swingdev.io
Show particles on box’s hit
Wall.js
state = {
boxes: getBoxesProps(),
explosionPosition: new THREE.Vector3(0, 0, -5),
showExplosion: false,
};
handleHit = (box) => {
const { id, x, y } = box;
const { boxes, explosionPosition } = this.state;
NativeModules.ShotBridge.emitShot();
const {
updatedBoxes,
boxesToRemove,
} = getUpdatedBoxes(boxes, id);
this.setState({
boxes: updatedBoxes,
explosionPosition: explosionPosition.clone().set(x, y, -5),
showExplosion: true,
}, () => this.afterHitUpdate(boxesToRemove));
};
afterHitUpdate = (boxesToRemove) => {
this.props.addHit(
getPoints(boxesToRemove),
boxesToRemove.length,
);
this.setState({
showExplosion: false,
});
};