private void Player_Update(On.Terraria.Player.orig_Update orig, Player self, int index)
        {
            // 'orig' is a delegate that lets you call back into the original method.
            // 'self' is the 'this' parameter that would have been passed to the original method.


            orig(self, index);
        }
        private static void Player_Update(On.Terraria.Player.orig_Update orig, Player self, int i)
        {
            if (self != null && self.active && Items.Placeable.CelestialMonolithManager.queueRenderTargetUpdate > 0)
            {
                if (self.SGAPly().invertedTime > 0)
                {
                    double time    = Main.time;
                    bool   dayTime = Main.dayTime;

                    Main.dayTime = !Main.dayTime;
                    Main.time    = Items.Placeable.CelestialMonolithManager.GetInvertedTime(time);

                    orig(self, i);

                    Main.dayTime = dayTime;
                    Main.time    = time;
                    return;
                }
            }
            orig(self, i);
        }