public Texture2D GetHitEffectTexture(HitEffectTypes effectType, HitEffectDirections effectDirection)
        {
            if (_hitEffectDictionary is null)
            {
                throw new InvalidOperationException("Hit effect textures is not loaded.");
            }

            var key = new HitEffectKey(effectType, effectDirection);

            if (_hitEffectDictionary.TryGetValue(key, out var texture))
            {
                return(texture);
            }

            return(_hitEffectDictionary[new HitEffectKey(HitEffectTypes.ShortBlade, HitEffectDirections.Left)]);
        }
 public HitEffectKey(HitEffectTypes type, HitEffectDirections direction)
 {
     Type      = type;
     Direction = direction;
 }