예제 #1
0
        static void Prefix(MainButtonWorker __instance, Rect rect, ref Rect?__state)
        {
            if (Multiplayer.Client == null)
            {
                return;
            }
            if (__instance.def != MainButtonDefOf.World)
            {
                return;
            }
            if (__instance.Disabled)
            {
                return;
            }
            if (Find.CurrentMap == null)
            {
                return;
            }
            if (!Multiplayer.WorldComp.asyncTime)
            {
                return;
            }

            Rect button = new Rect(rect.xMax - TimeControls.TimeButSize.x - 5f, rect.y + (rect.height - TimeControls.TimeButSize.y) / 2f, TimeControls.TimeButSize.x, TimeControls.TimeButSize.y);

            __state = button;

            if (Event.current.type == EventType.MouseDown || Event.current.type == EventType.MouseUp)
            {
                TimeControl.TimeControlButton(__state.Value, Multiplayer.WorldComp, 0.5f);
            }
        }
예제 #2
0
        static void Postfix(MainButtonWorker __instance, Rect?__state)
        {
            if (__state == null)
            {
                return;
            }

            if (Event.current.type == EventType.Repaint)
            {
                TimeControl.TimeControlButton(__state.Value, Multiplayer.WorldComp, 0.5f);
            }
        }
        //public virtual void DoButton(Rect rect)
        //
        public static void Postfix(MainButtonWorker __instance, Rect rect)
        {
            if (!(__instance is MainButtonWorker_ToggleResearchTab))
            {
                return;
            }

            if (!Settings.Get().ResearchingArrow)
            {
                return;
            }

            if (GenTicks.TicksGame > showUntilTick)
            {
                return;
            }

            Rect iconRect = rect.LeftPartPixels(rect.height);//.ContractedBy(1);

            GUI.color = new Color(1, 1, 1, amount);
            Widgets.DrawTextureFitted(iconRect, Textures.GoingArrow, 1.0f);
            GUI.color = Color.white;
        }