public TrapBulletModel(TrapModel trapModel)
    {
        MoveSpeed = MoveSpeedFromAttackType(trapModel.AttackType);

        Damage = Random.Range(trapModel.MinDamage, trapModel.MaxDamage + 1);

        AttackType = trapModel.AttackType;
    }
    private static float MoveSpeedFromAttackType(TrapAttackType trapModelAttackType)
    {
        switch (trapModelAttackType)
        {
        case TrapAttackType.Fear:
            return(10f);

        case TrapAttackType.Light:
            return(25f);

        case TrapAttackType.Chaos:
            return(15f);

        case TrapAttackType.Poison:
            return(10f);

        default:
            throw new ArgumentOutOfRangeException("trapModelAttackType", trapModelAttackType, null);
        }
    }