コード例 #1
0
        /// <summary>
        /// 获取html标签内容
        /// </summary>
        /// <param name="tag">标签类型</param>
        /// <param name="param">属性</param>
        /// <param name="type">控制类型</param>
        /// <param name="hasPermission">是否有控制权限</param>
        /// <param name="text">文本[可选]:默认为空</param>
        /// <returns>返回html标签</returns>
        public string GetHtmlTag(TagEnum tag, object param, ControllType type = ControllType.Default, bool hasPermission = true, string text = "")
        {
            if (type.Equals(ControllType.Default) && !hasPermission)
            {
                return(string.Empty);
            }

            var           description  = tag.GetDescription().Split(';');
            List <string> exceptFileds = null;

            if (description.Length > 1)
            {
                exceptFileds = description[1].Split(',').ToList();
            }
            else if (description.Length == 0)
            {
                return(string.Empty);
            }

            if (description[0].Contains(@"{1}"))
            {
                return(string.Format(description[0], GetObjectPropertyString(exceptFileds, param, type, hasPermission).Join(" "), text));
            }
            else
            {
                return(string.Format(description[0], GetObjectPropertyString(exceptFileds, param, type, hasPermission).Join(" ")));
            }
        }
コード例 #2
0
ファイル: TeamInfo.cs プロジェクト: BMPixel/TankTeam
 public TeamInfo()
 {
     id           = -1;
     name         = null;
     members      = new List <Tank>();
     controllType = 0;
     color        = new Color(Random.value, Random.value, Random.value);
     centerPoint  = SceneRenderingManager.RandomPosition;
 }
コード例 #3
0
ファイル: TeamInfo.cs プロジェクト: BMPixel/TankTeam
///TODO Leader need to be made

    public TeamInfo(int _id, string _name, ControllType type)
    {
        id           = _id;
        name         = _name;
        members      = new List <Tank>();
        controllType = type;
        color        = new Color(Random.value, Random.value, Random.value);
        centerPoint  = SceneRenderingManager.RandomPosition;
    }
コード例 #4
0
        /// <summary>
        /// 获取属性列表
        /// </summary>
        /// <param name="exceptFileds">需排除,不用生成的属性</param>
        /// <param name="param">属性</param>
        /// <param name="type">控制类型</param>
        /// <param name="hasPermission">是否有权限</param>
        /// <returns>返回属性列表</returns>
        private List <string> GetObjectPropertyString(List <string> exceptFileds, object param,
                                                      ControllType type, bool hasPermission)
        {
            var key = new { ExceptFileds = exceptFileds, Param = param, ControllorType = type, HasPermission = hasPermission };

            if (!cache.ContainsKey(key))
            {
                lock (ObjLock)
                {
                    if (cache.ContainsKey(key))
                    {
                        return(cache[key] as List <string>);
                    }
                    var attrList   = new List <string>();
                    var properties = param.GetType().GetProperties();

                    if (!hasPermission && type.Equals(ControllType.Disabled))
                    {
                        attrList.Add(string.Format(@"{0}='{1}'", @"disabled", @"disabled"));
                    }

                    foreach (var property in properties)
                    {
                        if (exceptFileds != null && exceptFileds.Select(item => item.ToLower()).Contains(property.Name.ToLower()))
                        {
                            continue;
                        }
                        var valid = property.Name.ToLower() == @"style" && type.Equals(ControllType.Display) && !hasPermission;
                        attrList.Add(string.Format(@"{0}='{1}'", property.Name, property.FastGetValue(param) + (valid ? @";display:none" : string.Empty)));
                    }
                    if (!properties.Select(property => property.Name.ToLower()).Contains("style"))
                    {
                        attrList.Add((type.Equals(ControllType.Display) && !hasPermission) ? @"style='display:none'" : string.Empty);
                    }
                    cache.Add(key, attrList);
                }
            }
            return(cache[key] as List <string>);
        }
コード例 #5
0
 void Start()
 {
     controllType = GameControllerV2.s_inst.LiveDataStorage.controllType;
     ui           = AccessUI.s_inst;
     if (shrinkable)
     {
         e0 = embers.transform.localScale.y;
     }
     pocPos = transform.position;
     pocRot = transform.rotation;
     if (shrinkable)
     {
         yStartScale = transform.localScale.y;
     }
     rb = GetComponentInParent <Rigidbody2D>();
     ui.healthSlider.maxValue = Health;
     launchSlider.maxValue    = launchTime;
     cigDecrement             = 1 / (burnTime * 60 / tickEvery);
     pocetnaPozicijaX         = embers.transform.position.x;
     cntBackAfter             = 10f * CameraController.aspect_multiplier;
     cantGoBackX = transform.position.x - cntBackAfter;
     nextTick    = Time.time + tickEvery;
 }
コード例 #6
0
 public ControllerEventArgs(ControllType controllType)
 {
     ControllType = controllType;
 }
コード例 #7
0
 void RaiseControllerEvent(ControllType controllType)
 {
     ControllerEvent?.Invoke(this, new ControllerEventArgs(controllType));
 }
コード例 #8
0
 /// <summary>
 /// 生成Button标签
 /// </summary>
 /// <param name="validFunc">权限验证委托</param>
 /// <param name="param">属性对象</param>
 /// <param name="type">控制类型</param>
 /// <returns>返回标签</returns>
 public static string ButtonFor(Func <bool> validFunc, object param, ControllType type = ControllType.Default)
 {
     return(_helper.GetHtmlTag(TagEnum.Button, param, type, validFunc()));
 }
コード例 #9
0
 /// <summary>
 /// 生成Button标签
 /// </summary>
 /// <param name="functionCode">功能点</param>
 /// <param name="actionCode">动作点</param>
 /// <param name="param">属性对象</param>
 /// <param name="type">控制类型</param>
 /// <returns>返回标签</returns>
 public static string ButtonFor(string functionCode, string actionCode, object param, ControllType type = ControllType.Default)
 {
     return(_helper.GetHtmlTag(TagEnum.Button, param, type, _helper.ValidFuncPermission(_systemGuid, functionCode, actionCode)));
 }
コード例 #10
0
 /// <summary>
 /// 生成 A(Link)标签
 /// </summary>
 /// <param name="validFunc">权限验证委托</param>
 /// <param name="text">文本内容</param>
 /// <param name="param">属性对象</param>
 /// <param name="type">控制类型</param>
 /// <returns>返回标签</returns>
 public static string LinkFor(Func <bool> validFunc, string text, object param, ControllType type = ControllType.Default)
 {
     return(_helper.GetHtmlTag(TagEnum.Link, param, type, validFunc(), text));
 }