particle not playing after I Instantiate it (solved)

i instantiate a weapon with a particle system as a child, when i use the weapon it does not play the particle system. it automatically tells the attack system which particle to play. all that is working. it just won’t play. when i drag it into the scene and then tell it which particle system to play then attack it plays fine (i can attack without a weapon, the weapon just changes the attack stats). also is playing is false.

this is the attack script:

using UnityEngine.UI;
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
using System;

public class Atac : MonoBehaviour
{

    public PlaeryStats stats;
    public Text caic;
    public Text ca;
    public Camera Plar;
    public AudioSource AtacSoowd;
    public ParticleSystem Flas;

    public float D;
    public float R;
    public float F;
    public float fr;
    public int MAIC = 40;
    public int CAIC;
    public int CA;

    private float Nexstimtofr = 0f;
    void Start()
    {
        CAIC = MAIC;
    }

    void Update()
    {
        if (CA <= 0 && CAIC <= -1)
        {
            return;
        }

        
        if (CAIC <= 0)
        {
            Reload();
        }

        if (Input.GetButtonDown("Fire1") && Time.time >= Nexstimtofr)
        {

            Nexstimtofr = Time.time + 1f / fr;
            Shoot();
        }

        caic.text = ("" + CAIC);
        ca.text = ("" + CA);

        D = stats.damage.GetValue();
        fr = stats.firRate.GetValue();
        R = stats.rage.GetValue();
    }


    void Shoot()
    {

        CAIC -= 1;
       
        RaycastHit hit;
        if (Physics.Raycast(Plar.transform.position, Plar.transform.forward, out hit, R))
        {

            Debug.Log(hit.transform.name);

            Trap trap = hit.transform.GetComponent<Trap>();
            if (trap != null)
            {

            }
        }

        Flas.Play();
        Debug.Log(Flas.isPlaying);
        AtacSoowd.Play();
    }
    void Reload()
    {

        if (CA < 40)
        {
            CAIC += CA;
            CA -= CA;
            return;
        }
        CAIC = MAIC;
        CA -= CAIC;
    }


}

@winonanassey you marked this question as solved but failed to provide your solution. Would you mind adding it so the rest of us can learn from you?