One way to achieve this effect could be multiplying sampled value by 3, adding TIME uniform to it and taking the fraction part. Here’s something to get you started:
shader_type canvas_item;
uniform float waves = 3.0;
uniform float speed = 0.4;
void fragment()
{
COLOR = texture(TEXTURE, UV);
float a = COLOR.r - .1; // Fade darker areas away
COLOR = COLOR * waves + TIME * speed;
COLOR = fract(COLOR);
COLOR.a = a;
}