コード例 #1
0
ファイル: BulkChangeTool.cs プロジェクト: pyromanci/ONIMods
 /// <summary>
 /// Creates a popup on the cell of all buildings where a tool is applied.
 /// </summary>
 /// <param name="enable">true if the "enable" tool was used, false for "disable".</param>
 /// <param name="enabled">The enable tool.</param>
 /// <param name="disabled">The disable tool.</param>
 /// <param name="cell">The cell where the change occurred.</param>
 private static void ShowPopup(bool enable, BulkToolMode enabled, BulkToolMode disabled,
                               int cell)
 {
     PUtil.CreatePopup(enable ? PopFXManager.Instance.sprite_Plus : PopFXManager.
                       Instance.sprite_Negative, enable ? enabled.PopupText : disabled.PopupText,
                       cell);
 }
コード例 #2
0
ファイル: BulkChangeHover.cs プロジェクト: skairunner/ONIMods
        public override void UpdateHoverElements(List <KSelectable> selected)
        {
            var hoverInstance = HoverTextScreen.Instance;
            // Find the active mode
            var drawer = hoverInstance.BeginDrawing();
            var mode   = BulkToolMode.FromKey(ToolMenu.Instance.toolParameterMenu.
                                              GetLastEnabledFilter());

            // Draw the tool title
            drawer.BeginShadowBar(false);
            drawer.DrawText(mode?.Title ?? BulkChangeStrings.TOOL_TITLE, ToolTitleTextStyle);
            // Draw the instructions
            ActionName = mode?.Name ?? BulkChangeStrings.TOOL_TITLE;
            DrawInstructions(hoverInstance, drawer);
            drawer.EndShadowBar();
            drawer.EndDrawing();
        }
コード例 #3
0
        protected override void OnActivateTool()
        {
            var menu  = ToolMenu.Instance.toolParameterMenu;
            var modes = ListPool <PToolMode, BulkChangeTool> .Allocate();

            base.OnActivateTool();
            // Create mode list
            foreach (var mode in BulkToolMode.AllTools())
            {
                modes.Add(mode.ToToolMode(modes.Count == 0 ? ToolParameterMenu.ToggleState.On :
                                          ToolParameterMenu.ToggleState.Off));
            }
            options = PToolMode.PopulateMenu(menu, modes);
            modes.Recycle();
            // When the parameters are changed, update the view settings
            menu.onParametersChanged += UpdateViewMode;
            SetMode(Mode.Box);
            UpdateViewMode();
        }