当前位置: 首页>>代码示例>>C#>>正文


C# Variant.GetValueOrDefault方法代码示例

本文整理汇总了C#中System.Variant.GetValueOrDefault方法的典型用法代码示例。如果您正苦于以下问题:C# Variant.GetValueOrDefault方法的具体用法?C# Variant.GetValueOrDefault怎么用?C# Variant.GetValueOrDefault使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在System.Variant的用法示例。


在下文中一共展示了Variant.GetValueOrDefault方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: BeBless

 /// <summary>
 /// 被祝福者得到的道具与数量
 /// </summary>
 /// <param name="beBless"></param>
 /// <param name="count"></param>
 /// <returns></returns>
 private static string BeBless(Variant beBless, out int count)
 {
     int min = beBless.GetIntOrDefault("Min");
     int max = beBless.GetIntOrDefault("Max");
     Variant goods = beBless.GetValueOrDefault<Variant>("GoodsID");
     int rate = NumberRandom.Next(0, 100);
     string goodsid = "";
     foreach (var k in goods)
     {
         string[] strs = k.Value.ToString().Split('-');
         int m = Convert.ToInt32(strs[0]);
         int n = Convert.ToInt32(strs[1]);
         if (rate >= m && rate <= n)
         {
             goodsid = k.Key;
             break;
         }
     }
     count = NumberRandom.Next(min, max + 1);
     return goodsid;
 }
开发者ID:abel,项目名称:sinan,代码行数:27,代码来源:FriendsBusiness.cs

示例2: checkCondition

        /// <summary>
        /// 检查对象是否满足条件
        /// </summary>
        /// <param name="f"></param>
        /// <param name="condition"></param>
        /// <returns></returns>
        static bool checkCondition(FightObject f, Variant condition, int round)
        {
            Variant caseHp = condition.GetVariantOrDefault("CaseHP");
            Variant caseMp = condition.GetVariantOrDefault("CaseMP");
            IList caseBuff = condition.GetValueOrDefault<IList>("CaseBuff");
            IList caseRound = condition.GetValueOrDefault<IList>("CaseRound");
            if (caseHp != null)
            {
                double a = caseHp.GetDoubleOrDefault("A");
                double b = caseHp.GetDoubleOrDefault("B");
                if (a > 0 && a < 1) //百分比
                {
                    double test = (f.HP * 1.0) / f.Life.ShengMing;
                    if (test <= a || test > b)
                    {
                        return false;
                    }
                }
                else
                {
                    if (f.HP <= a || f.HP > b)
                    {
                        return false;
                    }
                }
            }

            if (caseMp != null)
            {
                double a = caseMp.GetDoubleOrDefault("A");
                double b = caseMp.GetDoubleOrDefault("B");
                if (a > 0 && a < 1) //百分比
                {
                    double test = (f.MP * 1.0) / f.Life.MoFa;
                    if (test <= a || test > b)
                    {
                        return false;
                    }
                }
                else
                {
                    if (f.MP <= a || f.MP > b)
                    {
                        return false;
                    }
                }
            }

            if (caseBuff != null)
            {
                bool find = false;
                foreach (var b in f.Buffers)
                {
                    if (caseBuff.Contains(b.ID))
                    {
                        find = true;
                        break;
                    }
                }
                if (!find) return false;
            }

            if (caseRound != null && caseRound.Count > 0)
            {
                return caseRound.Contains(round);
            }
            return true;
        }
开发者ID:abel,项目名称:sinan,代码行数:74,代码来源:FightApc_AI.cs

示例3: ArenaLimit

        /// <summary>
        /// 竞技场创建限制
        /// </summary>
        /// <param name="note"></param>
        /// <param name="model">选择条件</param>
        /// <param name="v">限制条件</param>
        /// <returns></returns>
        private static bool ArenaLimit(UserNote note, ArenaBase model, Variant v)
        {
            int score = 0;
            int level = note.Player.Level;
            int fightvalue = 0;
            Variant gametime = v.GetValueOrDefault<Variant>("GameTime").GetValueOrDefault<Variant>(model.GameTime.ToString());
            if (gametime == null)
            {
                //请选择战斗时长
                note.Call(ArenaCommand.CreateArenaR, false, TipManager.GetMessage(ArenaReturn.ArenaLimit1));
                return false;
            }
            score += gametime.GetIntOrDefault("Score");
            fightvalue += gametime.GetIntOrDefault("FightValue");

            Variant group = v.GetValueOrDefault<Variant>("Group").GetValueOrDefault<Variant>(model.Group.ToString());
            if (group == null)
            {
                //请选择分组
                note.Call(ArenaCommand.CreateArenaR, false, TipManager.GetMessage(ArenaReturn.ArenaLimit2));
                return false;
            }
            score += group.GetIntOrDefault("Score");
            fightvalue += group.GetIntOrDefault("FightValue");

            if (!string.IsNullOrEmpty(model.PassWord))
            {
                Variant password = v.GetValueOrDefault<Variant>("PassWord").GetValueOrDefault<Variant>("1");
                if (password != null)
                {
                    score += password.GetIntOrDefault("Score");
                    fightvalue += password.GetIntOrDefault("FightValue");
                }
            }

            Variant petlevel = v.GetValueOrDefault<Variant>("PetLevel").GetValueOrDefault<Variant>(model.PetMin + "-" + model.PetMax);
            if (petlevel == null)
            {
                //请选择战宠等级
                note.Call(ArenaCommand.CreateArenaR, false, TipManager.GetMessage(ArenaReturn.ArenaLimit3));
                return false;
            }
            score += petlevel.GetIntOrDefault("Score");
            fightvalue += petlevel.GetIntOrDefault("FightValue");

            Variant petnumber = v.GetValueOrDefault<Variant>("PetNumber").GetValueOrDefault<Variant>(model.PetNumber.ToString());
            if (petnumber == null)
            {
                //请选择各组产战宠物数量
                note.Call(ArenaCommand.CreateArenaR, false, TipManager.GetMessage(ArenaReturn.ArenaLimit4));
                return false;
            }
            score += petnumber.GetIntOrDefault("Score");
            fightvalue += petnumber.GetIntOrDefault("FightValue");

            Variant preparetime = v.GetValueOrDefault<Variant>("PrepareTime").GetValueOrDefault<Variant>(model.PrepareTime.ToString());
            if (preparetime == null)
            {
                //请选择准备时间
                note.Call(ArenaCommand.CreateArenaR, false, TipManager.GetMessage(ArenaReturn.ArenaLimit5));
                return false;
            }
            score += preparetime.GetIntOrDefault("Score");
            fightvalue += preparetime.GetIntOrDefault("FightValue");

            Variant scene = v.GetValueOrDefault<Variant>("Scene").GetValueOrDefault<Variant>(model.Scene.ToString());
            if (scene == null)
            {
                //请选择竞技场
                note.Call(ArenaCommand.CreateArenaR, false, TipManager.GetMessage(ArenaReturn.ArenaLimit6));
                return false;
            }
            Variant userpets = v.GetValueOrDefault<Variant>("UserPets").GetValueOrDefault<Variant>(model.UserPets.ToString());
            if (userpets == null)
            {
                //请选择角色参战宠物数量
                note.Call(ArenaCommand.CreateArenaR, false, TipManager.GetMessage(ArenaReturn.ArenaLimit7));
                return false;
            }
            score += userpets.GetIntOrDefault("Score");
            fightvalue += userpets.GetIntOrDefault("FightValue");

            Variant fightpoor = v.GetValueOrDefault<Variant>("FightPoor").GetValueOrDefault<Variant>(model.FightPoor.ToString());
            if (fightpoor == null)
            {
                //请选择战绩差
                note.Call(ArenaCommand.CreateArenaR, false, TipManager.GetMessage(ArenaReturn.ArenaLimit8));
                return false;
            }
            score += fightpoor.GetIntOrDefault("Score");
            fightvalue += fightpoor.GetIntOrDefault("FightValue");

            //if (note.Player.FightValue< fightvalue)
//.........这里部分代码省略.........
开发者ID:abel,项目名称:sinan,代码行数:101,代码来源:ArenaInfo.cs


注:本文中的System.Variant.GetValueOrDefault方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。