少年修仙传客户端代码仓库
client_Wu Xijin
2019-06-13 033958214c0b16d7e7b93cc821b018c295251867
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
using UnityEngine;
using System;
 
[XLua.LuaCallCSharp]
public static class MaterialUtility
{
 
    public static Material GetDefaultSpriteGrayMaterial()
    {
        return BuiltInLoader.LoadMaterial("SpriteGray");
    }
 
    public static Material GetInstantiatedSpriteGrayMaterial()
    {
        var material = new Material(GetDefaultSpriteGrayMaterial());
        return material;
    }
 
    public static Material GetSmoothMaskGrayMaterial()
    {
        return BuiltInLoader.LoadMaterial("SmoothMaskGray");
    }
 
    public static Material GetInstantiatedSpriteTwinkleMaterial()
    {
        var material = BuiltInLoader.LoadMaterial("Flash");
        return new Material(material);
    }
 
    public static Material GetUIDefaultGraphicMaterial()
    {
        return UnityEngine.UI.Image.defaultGraphicMaterial;
    }
 
    public static Material GetUIBlurMaterial()
    {
        return BuiltInLoader.LoadMaterial("GUIBlurMaterial");
    }
 
    public static Material GetGUIRenderTextureMaterial()
    {
        return BuiltInLoader.LoadMaterial("UI_RenderTexture");
    }
 
    public static void SetRenderSortingOrder(this GameObject root, int sortingOrder, bool includeChildren)
    {
 
        if (root == null)
        {
            throw new NullReferenceException();
        }
 
        if (includeChildren)
        {
            var renderers = root.GetComponentsInChildren<Renderer>();
            for (var i = 0; i < renderers.Length; i++)
            {
                var renderer = renderers[i];
                renderer.sortingOrder = sortingOrder;
            }
        }
        else
        {
            var renderer = root.GetComponent<Renderer>();
            if (renderer != null)
            {
                renderer.sortingOrder = sortingOrder;
            }
        }
 
    }
 
 
    public static Material m_HudMaterial;
    public static Material hudMaterial {
        get {
            if (m_HudMaterial == null)
            {
                m_HudMaterial = BuiltInLoader.LoadMaterial("HUD_HeadupName");
                m_HudMaterial.SetTexture("_Tex1", FontUtility.preferred.material.mainTexture);
            }
            return m_HudMaterial;
        }
    }
 
 
    static Shader m_HeroShader;
    static Shader m_PlayerShader;
    static Shader heroShader { get { return m_HeroShader ?? (m_HeroShader = Shader.Find("Character/Character, Emission,Flow_Hero")); } }
    static Shader playerShader { get { return m_PlayerShader ?? (m_PlayerShader = Shader.Find("Character/Character, Emission,Flow")); } }
 
    public static void SwitchXrayShader(Material _material, bool _isHero)
    {
        if (_material == null)
        {
            return;
        }
 
        if (_isHero)
        {
            if (_material.shader.name == "Character/Character, Emission,Flow")
            {
                _material.shader = heroShader;
                _material.SetColor("_XRayColor", new Color32(0, 107, 255, 255));
            }
        }
        else
        {
            if (_material.shader.name == "Character/Character, Emission,Flow_Hero")
            {
                _material.shader = playerShader;
            }
        }
    }
 
}