I'm trying to decrease size of instanced RigidBody2D scene through code.

With "scale()" method I'm trying to decrease the size of the image/sprite that's attached to the RigidBody2D. The problem is, it's not working.

No matter how much I try to scale down, the size of the blood drop circle remains the same.

Why is this?

This is my example code.

    const blood_druple_scn = preload("res://Scenes/blood.tscn")

    func spawnBlood():
    	var newBlood = Blood_druple_scn.instance()
    	
    	rotationAdd = rotationAdd + 30
    	
    	if(switchBloodSize == 0):
    		set_scale(Vector2(2,1)) //This part is my problem
    		print("blood size: ", newBlood.get_scale())
    		add_child(newBlood)
    		switchBloodSize = 1
    	
    	elif(switchBloodSize == 1):
    		newBlood.scale(Vector2(0.5,0.5)) //This part is my problem
    		print("Blood size: ", newBlood.get_scale())
    		add_child(newBlood)
    		switchBloodSize = 0
    	
    	newBlood.set_pos(Vector2(100,100))
    	rotate(rotationAdd)

As you can see I have 2 different If conditions each with different scale() size. Sadly they are both remain the same size even tho I gave different values to each of them.

Strange part is, it does print that the scale values has been altered. So I guess Blood instance isn't visually changing.