private static void DrawButton(ILContext il) { ILCursor cursor = new ILCursor(il); if (cursor.TryGotoNext(MoveType.AfterLabel, i => i.MatchLdloc(25), i => i.MatchStsfld(typeof(UILinkPointNavigator.Shortcuts), "INGAMEOPTIONS_BUTTONS_RIGHT"))) { cursor.Index += 2; cursor.Emit(OpCodes.Ldarg, 1); cursor.EmitDelegate <Action <SpriteBatch> >(spriteBatch => { spriteBatch.Draw(ModContent.GetTexture("Routed/Textures/UI/Mode"), toggleRectangle, new Rectangle(0, 32 * (int)Mode, 32, 32), Color.White); if (toggleRectangle.Contains(Main.mouseX, Main.mouseY)) { if (Main.mouseLeft && Main.mouseLeftRelease) { Mode = Mode.NextEnum(); } Main.blockMouse = true; Main.instance.MouseTextHackZoom("Current view: " + Mode); } }); } }