Alpha Self Illuminated Particle

I’m not very good at shader scripting.
I found this script for a self-illuminated material with alpha that worked for nearly all my purposes. Until I tried to use it with particles. The particles are set to fade out over time, but with this material the alpha stops working. Anybody have a solution for this? Thanks!

Shader "AlphaSelfIllum" {
Properties {
    _Color ("Main Color", Color) = (1,1,1,1)
    _MainTex ("Texture", 2D) = "white" { }
}
SubShader {
	Tags { "Queue" = "Transparent" "RenderType"="Transparent"}
    Pass {
		
		
		Cull Back
        Blend SrcAlpha OneMinusSrcAlpha 
        
		
		CGPROGRAM
		#pragma vertex vert
		#pragma fragment frag
		
		#include "UnityCG.cginc"
		
		float4 _Color;
		sampler2D _MainTex;
			
		struct v2f {
		    float4  pos : SV_POSITION;
		    float2  uv : TEXCOORD0;
		};
		
		float4 _MainTex_ST;
		
		v2f vert (appdata_base v)
		{
		    v2f o;
		    o.pos = mul (UNITY_MATRIX_MVP, v.vertex);
		    o.uv = TRANSFORM_TEX (v.texcoord, _MainTex);
		    return o;
		}
		
		half4 frag (v2f i) : COLOR
		{
		    half4 texcol = tex2D (_MainTex, i.uv);
		    return texcol * _Color;
		}
		ENDCG
    }
}
Fallback off
}

Fading of particles is controlled by the alpha channel of the vertex color. For your shader to support it you need to pass this through to your fragment shader and multiply it by the texture’s alpha channel. In fact you should probably multiply the entire vertex color by the texture color so your shader also supports tinting of particles.