Hi Jospic.
When you say "Rotation point", you mean the origin of the rotation right?
If it's the case, you need to place a Node2D where you want your origin point of rotation and attach your TextureButton in this Node2D.
Node2D
-> TextureButton1
-> TextureButton2 ...
With this, you can move around your Node2D (and everything attached to it) to change where your rotation start with
func _ready():
set_process_input(true)
func _input(event):
if(event.type == InputEvent.KEY):
if(event.scancode == KEY_V) && (event.pressed):
## Everytime you gonna press V, the rotation will add +0.5 to the current rot position, you can change it to make it smoother or faster.
get_node("Node2D").set_rot(get_node("Node2D").get_rot()+0.5)
If you want to change the location of your rotation origin, just move around the Node2D like this (the movement won't be smoother with this method):
get_node("Node2D").set_pos( Vector2(x, y) )
Don't know if it's what you would like, but eh.