コード例 #1
0
        private void Step_SmartKeys()
        {
            PaintKey smartCursorKey = _smartCursorKey;
            PaintKey smartSelectKey = _smartSelectKey;

            if (_player.DeadOrGhost || _player.frozen || _player.tongued || _player.webbed || _player.stoned || _player.noItems)
            {
                smartCursorKey.SetClear();
                smartSelectKey.SetClear();
                return;
            }
            if (Main.SmartCursorEnabled)
            {
                smartCursorKey.SetSolid(PainterColors.SmartCursor);
            }
            else
            {
                smartCursorKey.SetClear();
            }
            if (_player.nonTorch >= 0)
            {
                smartSelectKey.SetSolid(PainterColors.SmartSelect);
            }
            else
            {
                smartSelectKey.SetClear();
            }
        }
コード例 #2
0
        private void Step_Jump()
        {
            PaintKey jumpKey = _jumpKey;

            if (_player.DeadOrGhost)
            {
                jumpKey.SetClear();
            }
            else if (_player.frozen || _player.tongued || _player.webbed || _player.stoned)
            {
                jumpKey.SetSolid(PainterColors.DangerKeyBlocked);
            }
            else
            {
                jumpKey.SetSolid(PainterColors.MovementKeys);
            }
        }
コード例 #3
0
        private void Step_Grapple()
        {
            PaintKey grappleKey = _grappleKey;

            if (_player.QuickGrapple_GetItemToUse() == null || _player.DeadOrGhost)
            {
                grappleKey.SetClear();
            }
            else if (_player.frozen || _player.tongued || _player.webbed || _player.stoned || _player.noItems)
            {
                grappleKey.SetSolid(PainterColors.DangerKeyBlocked);
            }
            else
            {
                grappleKey.SetSolid(PainterColors.QuickGrapple);
            }
        }
コード例 #4
0
        private void Step_QuickHeal()
        {
            PaintKey healKey = _healKey;

            if (_player.QuickHeal_GetItemToUse() == null || _player.DeadOrGhost)
            {
                healKey.SetClear();
                _quickHealAlert = 0;
            }
            else if (_player.potionDelay > 0)
            {
                float lerpValue = Utils.GetLerpValue(_player.potionDelayTime, 0f, _player.potionDelay, clamped: true);
                Color solid     = Color.Lerp(PainterColors.DangerKeyBlocked, PainterColors.QuickHealCooldown, lerpValue) * lerpValue * lerpValue * lerpValue;
                healKey.SetSolid(solid);
                _quickHealAlert = 0;
            }
            else if (_player.statLife == _player.statLifeMax2)
            {
                healKey.SetClear();
                _quickHealAlert = 0;
            }
            else if ((float)_player.statLife <= (float)_player.statLifeMax2 / 4f)
            {
                if (_quickHealAlert != 1)
                {
                    _quickHealAlert = 1;
                    healKey.SetAlert(Color.Black, PainterColors.QuickHealReadyUrgent, -1f, 2f);
                }
            }
            else if ((float)_player.statLife <= (float)_player.statLifeMax2 / 2f)
            {
                if (_quickHealAlert != 2)
                {
                    _quickHealAlert = 2;
                    healKey.SetAlert(Color.Black, PainterColors.QuickHealReadyUrgent, -1f, 2f);
                }
            }
            else
            {
                healKey.SetSolid(PainterColors.QuickHealReady);
                _quickHealAlert = 0;
            }
        }
コード例 #5
0
        private void Step_Mount()
        {
            PaintKey mountKey = _mountKey;

            if (_player.QuickMount_GetItemToUse() == null || _player.DeadOrGhost)
            {
                mountKey.SetClear();
            }
            else if (_player.frozen || _player.tongued || _player.webbed || _player.stoned || _player.gravDir == -1f || _player.noItems)
            {
                mountKey.SetSolid(PainterColors.DangerKeyBlocked);
                if (_player.gravDir == -1f)
                {
                    mountKey.SetSolid(PainterColors.DangerKeyBlocked * 0.6f);
                }
            }
            else
            {
                mountKey.SetSolid(PainterColors.QuickMount);
            }
        }
コード例 #6
0
        private void Step_QuickMana()
        {
            PaintKey manaKey = _manaKey;

            if (_player.QuickMana_GetItemToUse() == null || _player.DeadOrGhost || _player.statMana == _player.statManaMax2)
            {
                manaKey.SetClear();
            }
            else
            {
                manaKey.SetSolid(PainterColors.QuickMana);
            }
        }
コード例 #7
0
 private void Step_KeybindsMenu()
 {
     SetGroupColorBase(_wasdKeys, PainterColors.MovementKeys);
     _jumpKey.SetSolid(PainterColors.MovementKeys);
     _grappleKey.SetSolid(PainterColors.QuickGrapple);
     _mountKey.SetSolid(PainterColors.QuickMount);
     _quickHealAlert = 0;
     _healKey.SetSolid(PainterColors.QuickHealReady);
     _manaKey.SetSolid(PainterColors.QuickMana);
     _throwKey.SetSolid(PainterColors.Throw);
     _smartCursorKey.SetSolid(PainterColors.SmartCursor);
     _smartSelectKey.SetSolid(PainterColors.SmartSelect);
 }
コード例 #8
0
        private void Step_Throw()
        {
            PaintKey throwKey = _throwKey;

            _ = _player.HeldItem;
            if (_player.DeadOrGhost || _player.HeldItem.favorited || _player.noThrow > 0)
            {
                throwKey.SetClear();
            }
            else if (_player.frozen || _player.tongued || _player.webbed || _player.stoned || _player.noItems)
            {
                throwKey.SetClear();
            }
            else
            {
                throwKey.SetSolid(PainterColors.Throw);
            }
        }