Unity之私人订制Debug

博客迁移

个人博客站点,欢迎访问,www.jiingfengji.tech

正文

其实原理很简单,这里用到的是富文本的知识,也许大家会觉得这种low定制反而显得麻烦了,那就直接跳过。。。

直接上代码:

using UnityEngine;
using System.Collections;
using System;
using System.Text;

namespace Scripts.CoreScripts.Core.Helper
{
    public class Debugger
    {
        /// <summary>
        /// 是否开启Debugger
        /// </summary>
        static public bool Enable = true;

        /// <summary>
        /// 默认错误颜色:红色
        /// </summary>
        static public string ErrorColor = "red";

        /// <summary>
        /// 默认警告颜色:黄色
        /// </summary>
        static public string WarningColor = "yellow";

        /// <summary>
        /// 默认输出颜色:白色
        /// </summary>
        static public string LogColor = "white";

        /// <summary>
        /// 默认字号:20
        /// </summary>
        static public int FontSize = 20;

        /// <summary>
        /// 默认颜色,默认字号输出
        /// </summary>
        /// <param name="message">输出内容</param>
        static public void Log(object message)
        {
            if (Enable)
            {
                Debug.Log("<color=" + LogColor + ">" + "<size=" + FontSize + ">" + message + "</size>" + "</color>");
            }
        }

        /// <summary>
        /// 默认颜色,默认字号输出
        /// </summary>
        /// <param name="message">输出内容</param>
        /// <param name="context">连接上下文</param>
        static public void Log(object message, UnityEngine.Object context)
        {
            if (Enable)
            {
                Debug.Log("<color=" + LogColor + ">" + "<size=" + FontSize + ">" + message + "</size>" + "</color>", context);
            }
        }

        /// <summary>
        /// 自定义颜色输出
        /// </summary>
        /// <param name="message">输出内容</param>
        /// <param name="color">颜色</param>
        static public void Log(object message, Color32 color)
        {
            if (Enable)
            {
                Debug.Log("<color=" + FormatColor32(color) + ">" + message + "</color>");
            }
        }

        /// <summary>
        /// 自定义颜色、默认字号输出
        /// </summary>
        /// <param name="message">输出内容</param>
        /// <param name="color">颜色</param>
        /// <param name="context">连接上下文</param>
        static public void Log(object message, Color32 color, UnityEngine.Object context)
        {
            if (Enable)
            {
                Debug.Log("<color=" + FormatColor32(color) + ">" + "<size=" + FontSize + ">" + message + "</size>" + "</color>", context);
            }
        }

        /// <summary>
        /// 自定义字号输出
        /// </summary>
        /// <param name="message">输出内容</param>
        /// <param name="fontSize">字号大小,汉字上限26,大写英文上限30,小写英文上限25,仅供参考</param>
        static public void Log(object message, int fontSize)
        {
            if (Enable)
            {
                Debug.Log("<color=" + LogColor + ">" + "<size=" + FontSize + ">" + message + "</size>" + "</color>");
            }
        }

        /// <summary>
        /// 自定义字号输出
        /// </summary>
        /// <param name="message">输出内容</param>
        /// <param name="fontSize">字号</param>
        /// <param name="context">连接上下文</param>
        static public void Log(object message, int fontSize, UnityEngine.Object context)
        {
            if (Enable)
            {
                Debug.Log("<size=" + fontSize + ">" + message + "</size>", context);
            }
        }

        /// <summary>
        /// 自定义字号、颜色输出
        /// </summary>
        /// <param name="message">输出内容</param>
        /// <param name="color">颜色</param>
        /// <param name="fontsize">字号</param>
        static public void Log(object message, Color32 color, int fontsize)
        {
            if (Enable)
            {
                Debug.Log("<color=" + FormatColor32(color) + ">" + "<size=" + fontsize + ">" + message + "</size>" + "</color>");
            }
        }

        /// <summary>
        /// 自定义字号、颜色输出
        /// </summary>
        /// <param name="message">输出内容</param>
        /// <param name="color">颜色</param>
        /// <param name="fontSize">字号</param>
        /// <param name="context">连接上下文</param>
        static public void Log(object message, Color32 color, int fontSize, UnityEngine.Object context)
        {
            if (Enable)
            {
                Debug.Log("<color=" + FormatColor32(color) + ">" + "<size=" + fontSize + ">" + message + "</size>" + "</color>", context);
            }
        }

        static public void LogWarning(object message)
        {
            if (Enable)
            {
                Debug.LogWarning("<color=" + WarningColor + ">" + message + "</color>");
            }
        }

        static public void LogWarning(object message, UnityEngine.Object context)
        {
            if (Enable)
            {
                Debug.LogWarning("<color=" + WarningColor + ">" + message + "</color>", context);
            }
        }

        static public void LogError(object message)
        {
            if (Enable)
            {
                Debug.LogError("<color=" + ErrorColor + ">" + message + "</color>");
            }
        }

        static public void LogError(object message, UnityEngine.Object context)
        {
            if (Enable)
            {
                Debug.LogError("<color=" + ErrorColor + ">" + message + "</color>", context);
            }
        }

        /// <summary>
        /// 将Color32转换为#FFFFFFFF格式
        /// </summary>
        /// <param name="color"></param>
        /// <returns></returns>
        static private string FormatColor32(Color32 color)
        {
            StringBuilder sb = new StringBuilder();
            sb.Append("#");
            sb.Append(color.r.ToString("x2"));
            sb.Append(color.g.ToString("x2"));
            sb.Append(color.b.ToString("x2"));
            sb.Append(color.a.ToString("x2"));
            return sb.ToString();
        }
    }
}

以上知识分享,如有错误,欢迎指出,共同学习,共同进步。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值