Esempio n. 1
0
        public static void AddPermissionTextIfNeeded(ICreativePower power, ref string originalText)
        {
            if (CreativePowersHelper.IsAvailableForPlayer(power, Main.myPlayer))
            {
                return;
            }
            string textValue = Language.GetTextValue("CreativePowers.CantUsePowerBecauseOfNoPermissionFromServer");

            originalText = originalText + "\n" + textValue;
        }
Esempio n. 2
0
        public static UIImageFramed GetIconImage(Point iconLocation)
        {
            Asset <Texture2D> powerIconAsset = CreativePowersHelper.GetPowerIconAsset("Images/UI/Creative/Infinite_Powers");
            UIImageFramed     uiImageFramed  = new UIImageFramed(powerIconAsset, powerIconAsset.Frame(21, 1, iconLocation.X, iconLocation.Y, 0, 0));

            uiImageFramed.MarginLeft = 4f;
            uiImageFramed.MarginTop  = 4f;
            uiImageFramed.VAlign     = 0.5f;
            uiImageFramed.HAlign     = 1f;
            uiImageFramed.IgnoresMouseInteraction = true;
            return(uiImageFramed);
        }
Esempio n. 3
0
        public static void UpdateUnlockStateByPower(
            ICreativePower power,
            UIElement button,
            Color colorWhenSelected)
        {
            IGroupOptionButton asButton = button as IGroupOptionButton;

            if (asButton == null)
            {
                return;
            }
            button.OnUpdate += (UIElement.ElementEvent)(element => CreativePowersHelper.UpdateUnlockStateByPowerInternal(power, colorWhenSelected, asButton));
        }
Esempio n. 4
0
        private static void UpdateUnlockStateByPowerInternal(
            ICreativePower power,
            Color colorWhenSelected,
            IGroupOptionButton asButton)
        {
            bool isUnlocked = power.GetIsUnlocked();
            bool flag       = !CreativePowersHelper.IsAvailableForPlayer(power, Main.myPlayer);

            asButton.SetBorderColor(flag ? Color.DimGray : Color.White);
            if (flag)
            {
                asButton.SetColorsBasedOnSelectionState(new Color(60, 60, 60), new Color(60, 60, 60), 0.7f, 0.7f);
            }
            else if (isUnlocked)
            {
                asButton.SetColorsBasedOnSelectionState(colorWhenSelected, Colors.InventoryDefaultColor, 1f, 0.7f);
            }
            else
            {
                asButton.SetColorsBasedOnSelectionState(Color.Crimson, Color.Red, 0.7f, 0.7f);
            }
        }