Пример #1
0
    public static Texture GetTextureByType(AlertAreaType _type)
    {
        if (!textureDic.ContainsKey(_type) || textureDic[_type] == null)
        {
            string path = string.Empty;
            switch (_type)
            {
            case AlertAreaType.SECTOR30:
                path = "AbilityProjector/30";
                break;

            case AlertAreaType.SECTOR45:
                path = "AbilityProjector/45";
                break;

            case AlertAreaType.SECTOR60:
                path = "AbilityProjector/60";
                break;

            case AlertAreaType.SECTOR90:
                path = "AbilityProjector/90";
                break;

            case AlertAreaType.SECTOR135:
                path = "AbilityProjector/135";
                break;

            case AlertAreaType.SECTOR180:
                path = "AbilityProjector/180";
                break;

            case AlertAreaType.SECTOR270:
                path = "AbilityProjector/270";
                break;

            case AlertAreaType.SECTOR360:
                path = "AbilityProjector/360";
                break;

            case AlertAreaType.RECT:
                path = "AbilityProjector/Arrow";
                break;

            default:
                return(null);
            }
            textureDic[_type] = exResources.GetResource(ResourceType.TEXTURE, path) as Texture;
        }
        return(textureDic[_type]);
    }
Пример #2
0
    public void OnSpawned(AlertAreaType _type, Color _color, float _rotY, float _wid, float _length, float _duration)
    {
        base.OnSpawned();
        this.gameObject.transform.eulerAngles = new Vector3(90, _rotY, 0);
        Projector pro = this.gameObject.GetComponent <Projector>();

        pro.aspectRatio      = _wid / _length;
        pro.orthographicSize = Mathf.Max(_length, _wid);
        mat = pro.material;
        if (mat != null)
        {
            mat.mainTexture = GameStageUtility.GetTextureByType(_type);
            fromColor       = new Color(_color.r, _color.g, _color.b, 0);
            mat.color       = fromColor;
            aimColor        = _color;
            startTime       = Time.time;
            shakeScale      = Mathf.Abs(startShake);
        }
        Invoke("StartReturn", _duration);
    }
Пример #3
0
    /// <summary>
    /// 从对象池中取出技能预警投射器的对象 by吴江
    /// </summary>
    /// <param name="_pos"></param>
    /// <param name="_rot"></param>
    /// <returns></returns>
    public AbilityShadowEffecter SpawnAbilityShadowEffecter(Transform _parent, float _rotY, float _wid, float _length, AlertAreaType _type, Color _color, float _duration)
    {
        AbilityShadowEffecter abilityShadowEffecter = AbilityShadowEffectorPool.Request(Vector3.zero);

        abilityShadowEffecter.transform.parent        = _parent;
        abilityShadowEffecter.transform.localPosition = new Vector3(0, 10.0f, 0);
        abilityShadowEffecter.OnSpawned(_type, _color, _rotY, _wid, _length, _duration);
        return(abilityShadowEffecter);
    }
Пример #4
0
    /// <summary>
    /// 从对象池中取出技能预警投射器的对象 by吴江
    /// </summary>
    /// <param name="_pos"></param>
    /// <param name="_rot"></param>
    /// <returns></returns>
    public AbilityShadowEffecter SpawnAbilityShadowEffecter(Vector3 _pos, float _rotY, float _wid, float _length, AlertAreaType _type, Color _color, float _duration)
    {
        AbilityShadowEffecter abilityShadowEffecter = AbilityShadowEffectorPool.Request(_pos);

        abilityShadowEffecter.OnSpawned(_type, _color, _rotY, _wid, _length, _duration);
        return(abilityShadowEffecter);
    }