Day/night cycle with 'RotateAroundDistance' and 'setAmbientColor'

Hello, I am struggling really bad to figure out the math involving a circle and tint at a specific interveral, in a cycle.

IE, what I want to do is set a light on the centery left of screen for sun, and centery right of screen for moon. These 2 lights would rotate around the sprite, the sprite is in the center of screen. This looks something like this:
Phaser.Actions.RotateAroundDistance([this.sun,this.moon], {x:this.cameras.main.centerX, y:this.cameras.main.centerY}, radian, 1000);

Now, what I also want is when the sun is at the far north of the circle, the tint will be 0xFFFFFF or rgb, and when the sun is far south, the tint will be 0x000000. Right now, I am using a setTimeout, and iterating this:
if(this.rgbcolor == 1) this.tonight = false;
if(this.rgbcolor == 254) this.tonight = true;
this.rgbcolor += this.tonight ? -1 : 1;
let col = Phaser.Display.Color.RGBStringToColor(rgb(${this.rgbcolor},${this.rgbcolor},${this.rgbcolor}))
let colourInt = Phaser.Display.Color.GetColor(col.r, col.g, col.b);
$this.lights.setAmbientColor(colourInt);

Does anyone know how I can keep the 2 in sync, so that the tint will match the time of day, in a full cycle?

Thank you!