const preact = require('preact'); const { Component } = require('preact'); const { connect } = require('preact-redux'); const Amplify = require('./anims/amplify'); const Absorb = require('./anims/absorb'); const Bash = require('./anims/bash'); const Blast = require('./anims/blast'); const Block = require('./anims/block'); const Buff = require('./anims/buff'); const Break = require('./anims/break'); const Chaos = require('./anims/chaos'); const Sustain = require('./anims/sustain'); const Counter = require('./anims/counter'); const Curse = require('./anims/curse'); const Debuff = require('./anims/debuff'); const Decay = require('./anims/decay'); const Electrify = require('./anims/electrify'); const Electrocute = require('./anims/electrocute'); const Haste = require('./anims/haste'); const Heal = require('./anims/heal'); const Hybrid = require('./anims/hybrid'); const Intercept = require('./anims/intercept'); const Link = require('./anims/link'); const Purify = require('./anims/purify'); const Purge = require('./anims/purge'); const Recharge = require('./anims/recharge'); const Refl = require('./anims/reflect'); const Restrict = require('./anims/restrict'); const Ruin = require('./anims/ruin'); const Silence = require('./anims/silence'); const Siphon = require('./anims/siphon'); const SiphonTick = require('./anims/siphon.tick'); const Slay = require('./anims/slay'); const Sleep = require('./anims/sleep'); const Strike = require('./anims/strike'); const Stun = require('./anims/stun'); const Triage = require('./anims/triage'); const TriageTick = require('./anims/triage.tick'); const actions = require('../actions'); const addState = connect( function receiveState(state) { const { animTarget } = state; return { animTarget }; }, ); class ConstructAnimation extends Component { render(props) { const { animTarget, construct, } = props; if (!animTarget) return false; const { skill, player, direction, constructId, } = animTarget; if (construct.id !== constructId) return false; // find target animation const chooseAnim = (skill) => { switch (skill) { // Attack base case 'Attack': return ; case 'Blast': return ; case 'Siphon': return ; case 'SiphonTick': return ; case 'Strike': return ; case 'Chaos': return ; case 'Slay': return ; case 'Heal': return ; // Buff Base case 'Buff': return ; case 'Amplify': return ; case 'Haste': return ; case 'Triage': return ; case 'TriageTick': return ; case 'Link': return ; case 'Hybrid': return ; case 'Intercept': return ; // Debuff base case 'Debuff': return ; case 'Curse': return ; case 'Decay': return ; case 'DecayTick': return ; // case 'Invert': return setAvatarAnimation(true, true, resolution.id, construct.id, 'invert', null); case 'Purge': return ; case 'Silence': return ; case 'Restrict': return ; // Stun Base case 'Stun': return ; // case 'Banish': return setAvatarAnimation(true, true, resolution.id, construct.id, 'banish', null); case 'Bash': return ; case 'Absorb': return ; case 'Sleep': return ; case 'Break': return ; case 'Ruin': return ; // Block Base case 'Block': return ; case 'Sustain': return ; case 'Electrify': return ; case 'Electrocute': return ; case 'ElectrocuteTick': return ; case 'Counter': return ; case 'Purify': return ; case 'Recharge': return ; case 'Reflect': return ; default: return false; }; }; const anim = chooseAnim(skill); if (!anim) return false; return (
{anim}
); } } module.exports = { ConstructAnimation: addState(ConstructAnimation), };