コード例 #1
0
        public static List <OnlineList> GetSaleHightItemForC1Page(int diffnum, List <int> HasItemSysnolist, int C1Sysno, int C2Sysno)
        {
            List <OnlineList> onlineList = null;

            if (diffnum > 0)
            {
                if (HasItemSysnolist != null && HasItemSysnolist.Count > 0)
                {
                    if (C2Sysno != -1)
                    {
                        DataCommand command = DataCommandManager.GetDataCommand("GetSaleHightItemForC1PagebyC2sysno");
                        command.ReplaceParameterValue("@num", diffnum.ToString());
                        command.ReplaceParameterValue("@C2SysNo", C2Sysno.ToString());
                        command.ReplaceParameterValue("@ItemSysnolist", HasItemSysnolist.ToListString());
                        command.ReplaceParameterValue("@CompanyCode", ConfigurationManager.AppSettings["CompanyCode"]);
                        onlineList = command.ExecuteEntityList <OnlineList>();
                    }
                    else
                    {
                        DataCommand command = DataCommandManager.GetDataCommand("GetSaleHightItemForC1Page");
                        command.ReplaceParameterValue("@num", diffnum.ToString());
                        command.ReplaceParameterValue("@C1SysNo", C1Sysno.ToString());
                        command.ReplaceParameterValue("@ItemSysnolist", HasItemSysnolist.ToListString());
                        command.ReplaceParameterValue("@CompanyCode", ConfigurationManager.AppSettings["CompanyCode"]);
                        onlineList = command.ExecuteEntityList <OnlineList>();
                    }
                }
                else
                {
                    if (C2Sysno != -1)
                    {
                        DataCommand command = DataCommandManager.GetDataCommand("GetSaleHightItemForC1PageByC2sysnoSingle");
                        command.ReplaceParameterValue("@num", diffnum.ToString());
                        command.ReplaceParameterValue("@C2SysNo", C2Sysno.ToString());
                        command.ReplaceParameterValue("@CompanyCode", ConfigurationManager.AppSettings["CompanyCode"]);
                        onlineList = command.ExecuteEntityList <OnlineList>();
                    }
                    else
                    {
                        DataCommand command = DataCommandManager.GetDataCommand("GetSaleHightItemForC1PageSingle");
                        command.ReplaceParameterValue("@num", diffnum.ToString());
                        command.ReplaceParameterValue("@C1SysNo", C1Sysno.ToString());
                        command.ReplaceParameterValue("@CompanyCode", ConfigurationManager.AppSettings["CompanyCode"]);
                        onlineList = command.ExecuteEntityList <OnlineList>();
                    }
                }
            }
            return(onlineList);
        }
コード例 #2
0
        /// <summary>
        /// 获得对象选择列表
        /// </summary>
        /// <param name="game"></param>
        /// <returns></returns>
        public static string GetTargetListString(ActionStatus game)
        {
            List <string> Target = new List <string>();

            if (game.AllRole.MyPublicInfo.Hero.能否成为动作对象)
            {
                Target.Add(CardUtility.strMe + CardUtility.strSplitMark + BattleFieldInfo.HeroPos);
            }
            for (int i = 0; i < game.AllRole.MyPublicInfo.BattleField.MinionCount; i++)
            {
                if (game.AllRole.MyPublicInfo.BattleField.BattleMinions[i].能否成为动作对象)
                {
                    Target.Add(CardUtility.strMe + CardUtility.strSplitMark + (i + 1).ToString("D1"));
                }
            }
            if (game.AllRole.YourPublicInfo.Hero.能否成为动作对象)
            {
                Target.Add(CardUtility.strYou + CardUtility.strSplitMark + BattleFieldInfo.HeroPos);
            }
            for (int i = 0; i < game.AllRole.YourPublicInfo.BattleField.MinionCount; i++)
            {
                if (game.AllRole.YourPublicInfo.BattleField.BattleMinions[i].能否成为动作对象)
                {
                    Target.Add(CardUtility.strYou + CardUtility.strSplitMark + (i + 1).ToString("D1"));
                }
            }
            return(Target.ToListString());
        }
コード例 #3
0
        public static List <OnlineList> GetSaleHightItem(int num, int C2Sysno, List <int> ItemSysnolist)
        {
            List <OnlineList> onlineList = null;

            if (num > 0)
            {
                if (ItemSysnolist != null && ItemSysnolist.Count > 0)
                {
                    DataCommand command = DataCommandManager.CreateCustomDataCommandFromConfig("GetSaleHightItemForHomePage");
                    command.ReplaceParameterValue("@num", num.ToString());
                    command.ReplaceParameterValue("@C2SysNo", C2Sysno.ToString());
                    command.ReplaceParameterValue("@ItemSysnolist", ItemSysnolist.ToListString());
                    command.ReplaceParameterValue("@CompanyCode", ConfigurationManager.AppSettings["CompanyCode"]);
                    onlineList = command.ExecuteEntityList <OnlineList>();
                }
                else
                {
                    DataCommand command = DataCommandManager.CreateCustomDataCommandFromConfig("GetSaleHightItemForHomePageSingle");
                    command.ReplaceParameterValue("@num", num.ToString());
                    command.ReplaceParameterValue("@CompanyCode", ConfigurationManager.AppSettings["CompanyCode"]);
                    command.ReplaceParameterValue("@C2SysNo", C2Sysno.ToString());
                    onlineList = command.ExecuteEntityList <OnlineList>();
                }
            }
            return(onlineList);
        }
コード例 #4
0
ファイル: OnlinelistDA.cs プロジェクト: sanlonezhang/ql
        public static List <OnlineList> GetNewItemForBrand(int diffnum, List <int> HasItemSysnolist, int BrandSysNo, List <int> groupSysNoList)
        {
            List <OnlineList> onlineList = null;
            DataCommand       command    = null;
            string            grouplist  = string.Empty;

            if (groupSysNoList != null)
            {
                grouplist = groupSysNoList.ToListString();
            }
            if (diffnum > 0)
            {
                if (HasItemSysnolist != null && HasItemSysnolist.Count > 0)
                {
                    command = DataCommandManager.GetDataCommand("GetNewItemForBrand");
                    command.SetParameterValue("@HasItemSysnolist", HasItemSysnolist.ToListString());
                }
                if (onlineList == null || onlineList.Count == 0)
                {
                    command = DataCommandManager.GetDataCommand("GetNewItemForBrandNoHistory");
                }
                command.SetParameterValue("@Num", diffnum);
                command.SetParameterValue("@BrandSysNo", BrandSysNo);
                command.SetParameterValue("@CompanyCode", CompanyCode);
                command.SetParameterValue("@GiftC3SysNo", GiftC3SysNo);
                command.SetParameterValue("@GroupSysNoList", grouplist);
                onlineList = command.ExecuteEntityList <OnlineList>();
            }
            return(onlineList);
        }
コード例 #5
0
        public static List <OnlineList> GetNewItemForBrand(int diffnum, List <int> HasItemSysnolist, int BrandSysNo)
        {
            List <OnlineList> onlineList = null;

            if (diffnum > 0)
            {
                if (HasItemSysnolist != null && HasItemSysnolist.Count > 0)
                {
                    DataCommand command = DataCommandManager.GetDataCommand("GetNewItemForBrand");
                    command.ReplaceParameterValue("@num", diffnum.ToString());
                    command.ReplaceParameterValue("@BrandSysNo", BrandSysNo.ToString());
                    command.ReplaceParameterValue("@HasItemSysnolist", HasItemSysnolist.ToListString());
                    command.ReplaceParameterValue("@CompanyCode", ConfigurationManager.AppSettings["CompanyCode"]);
                    onlineList = command.ExecuteEntityList <OnlineList>();
                }
                if (onlineList == null || onlineList.Count == 0)
                {
                    DataCommand command = DataCommandManager.GetDataCommand("GetNewItemForBrandSingle");
                    command.ReplaceParameterValue("@num", diffnum.ToString());
                    command.ReplaceParameterValue("@BrandSysNo", BrandSysNo.ToString());
                    command.ReplaceParameterValue("@CompanyCode", ConfigurationManager.AppSettings["CompanyCode"]);
                    onlineList = command.ExecuteEntityList <OnlineList>();
                }
            }
            return(onlineList);
        }
コード例 #6
0
        public static List <OnlineList> GetPriceDownPercentItemForC2(int diffnum, List <int> HasItemSysnolist, int C2Sysno)
        {
            List <OnlineList> onlineList = null;

            if (diffnum > 0)
            {
                if (HasItemSysnolist != null && HasItemSysnolist.Count > 0)
                {
                    DataCommand command = DataCommandManager.GetDataCommand("GetPriceDownPercentItemForC2");
                    command.ReplaceParameterValue("@num", diffnum.ToString());
                    command.ReplaceParameterValue("@C2SysNo", C2Sysno.ToString());
                    command.ReplaceParameterValue("@HasItemSysnolist", HasItemSysnolist.ToListString());
                    command.ReplaceParameterValue("@CompanyCode", ConfigurationManager.AppSettings["CompanyCode"]);
                    onlineList = command.ExecuteEntityList <OnlineList>();
                }
                else
                {
                    DataCommand command = DataCommandManager.GetDataCommand("GetPriceDownPercentItemForC2Single");
                    command.ReplaceParameterValue("@num", diffnum.ToString());
                    command.ReplaceParameterValue("@C2SysNo", C2Sysno.ToString());
                    command.ReplaceParameterValue("@CompanyCode", ConfigurationManager.AppSettings["CompanyCode"]);
                    onlineList = command.ExecuteEntityList <OnlineList>();
                }
            }
            return(onlineList);
        }
コード例 #7
0
ファイル: OnlinelistDA.cs プロジェクト: sanlonezhang/ql
        public static List <OnlineList> GetNewItemForHundred(int diffnum, List <int> HasItemSysnolist, int C1SysNo
                                                             , decimal itemPrice, List <int> groupSysNoList)
        {
            List <OnlineList> onlineList = null;
            DataCommand       command    = null;
            string            grouplist  = string.Empty;

            if (groupSysNoList != null)
            {
                grouplist = groupSysNoList.ToListString();
            }

            if (diffnum > 0)
            {
                if (HasItemSysnolist != null && HasItemSysnolist.Count > 0)
                {
                    command = DataCommandManager.GetDataCommand("GetNewItemForC1PageForHundred");
                    command.SetParameterValue("@HasItemSysnolist", HasItemSysnolist.ToListString());
                }
                else
                {
                    command = DataCommandManager.GetDataCommand("GetNewItemForC1PageForHundredNoHistory");
                }
                command.SetParameterValue("@Num", diffnum);
                command.SetParameterValue("@ItemPrice", itemPrice);
                command.SetParameterValue("@CategorySysNo", C1SysNo);
                command.SetParameterValue("@CompanyCode", CompanyCode);
                command.SetParameterValue("@GiftC3SysNo", GiftC3SysNo);
                command.SetParameterValue("@GroupSysNoList", grouplist);
                onlineList = command.ExecuteEntityList <OnlineList>();
            }
            return(onlineList);
        }
コード例 #8
0
        public List <BasketItemsInfo> LoadGiftItemByBasketItem(List <int> productSysNoList)
        {
            CustomDataCommand command = DataCommandManager.CreateCustomDataCommandFromConfig("QuerySaleGiftByBasketItem");

            command.CommandText = command.CommandText.Replace("@ItemList", productSysNoList.ToListString());
            return(command.ExecuteEntityList <BasketItemsInfo>());
        }
コード例 #9
0
        //Meotodo che stampa i dati del conto
        public void Statement()
        {
            Console.WriteLine("Account opened at {0}, n. {1}.", BankName, AccountNumber);
            Console.WriteLine("Last operation: {0} /// Balance: {1} euros.\n", LastOperationDate.ToShortDateString(), Balance);
            string movements = Movements.ToListString() ?? "There are no movements yet.";

            Console.WriteLine(movements);
        }
コード例 #10
0
ファイル: OnlinelistDA.cs プロジェクト: sanlonezhang/ql
        public static List <OnlineList> GetPriceDownItemForBrand(int diffnum, List <int> HasItemSysnolist, int BrandSysNo
                                                                 , List <int> groupSysNoList)
        {
            List <OnlineList> onlineList = null;
            DataCommand       command    = null;
            string            grouplist  = string.Empty;

            if (groupSysNoList != null)
            {
                grouplist = groupSysNoList.ToListString();
            }

            if (diffnum > 0)
            {
                if (HasItemSysnolist != null && HasItemSysnolist.Count > 0)
                {
                    command = DataCommandManager.GetDataCommand("GetPriceDownItemForBrand");
                    command.SetParameterValue("@HasItemSysnolist", HasItemSysnolist.ToListString());
                }
                if (onlineList == null || onlineList.Count == 0)
                {
                    command = DataCommandManager.GetDataCommand("GetPriceDownItemForBrandNoHistory");
                }
                command.SetParameterValue("@Num", diffnum);
                command.SetParameterValue("@BrandSysNo", BrandSysNo);
                command.SetParameterValue("@CompanyCode", CompanyCode);
                command.SetParameterValue("@DateTime", DateTime.Now.AddDays(-7));
                command.SetParameterValue("@GiftC3SysNo", GiftC3SysNo);
                command.SetParameterValue("@GroupSysNoList", grouplist);
                onlineList = command.ExecuteEntityList <OnlineList>();
                DateTime day;
                int      loopNum = 0;
                while (onlineList != null && onlineList.Count < diffnum && loopNum <= 6)//取一年之内的数据
                {
                    loopNum++;
                    if (loopNum == 1)
                    {
                        day = DateTime.Now.AddMonths(-loopNum);
                    }
                    else
                    {
                        day = DateTime.Now.AddMonths(-loopNum * 2 + 1);
                    }
                    command.SetParameterValue("@Num", diffnum);
                    command.SetParameterValue("@DateTime", day);
                    command.SetParameterValue("@BrandSysNo", BrandSysNo);
                    command.SetParameterValue("@CompanyCode", CompanyCode);
                    command.SetParameterValue("@GiftC3SysNo", Convert.ToInt32(GiftC3SysNo));
                    command.SetParameterValue("@GroupSysNoList", grouplist);
                    onlineList = command.ExecuteEntityList <OnlineList>();
                }
            }
            return(onlineList);
        }
コード例 #11
0
ファイル: OnlinelistDA.cs プロジェクト: sanlonezhang/ql
        public static List <OnlineList> GetPriceDownItem(int num, int categorySysNo, List <int> HasItemSysnolist, List <int> groupSysNoList)
        {
            List <OnlineList> onlineList = null;
            DataCommand       command    = null;
            int    loopNum   = 0;
            string grouplist = string.Empty;

            if (groupSysNoList != null)
            {
                grouplist = groupSysNoList.ToListString();
            }

            if (num > 0)
            {
                if (HasItemSysnolist != null && HasItemSysnolist.Count > 0)
                {
                    command = DataCommandManager.GetDataCommand("GetPriceDownItem");
                    command.SetParameterValue("@HasItemSysnolist", HasItemSysnolist.ToListString());
                }
                else
                {
                    command = DataCommandManager.GetDataCommand("GetPriceDownItemNoHistory");
                }
                command.SetParameterValue("@Num", num);
                command.SetParameterValue("@DateTime", DateTime.Now.AddDays(-7).ToString("yyyy-MM-dd HH:mm:ss"));
                command.SetParameterValue("@CategorySysNo", categorySysNo);
                command.SetParameterValue("@CompanyCode", CompanyCode);
                command.SetParameterValue("@GiftC3SysNo", Convert.ToInt32(GiftC3SysNo));
                command.SetParameterValue("@GroupSysNoList", grouplist);
                onlineList = command.ExecuteEntityList <OnlineList>();
                DateTime day;
                while (onlineList != null && onlineList.Count < num && loopNum <= 6)//取一年之内的数据
                {
                    loopNum++;
                    if (loopNum == 1)
                    {
                        day = DateTime.Now.AddMonths(-loopNum);
                    }
                    else
                    {
                        day = DateTime.Now.AddMonths(-loopNum * 2 + 1);
                    }
                    command.SetParameterValue("@Num", num);
                    command.SetParameterValue("@DateTime", day.ToString("yyyy-MM-dd HH:mm:ss"));
                    command.SetParameterValue("@CategorySysNo", categorySysNo);
                    command.SetParameterValue("@CompanyCode", CompanyCode);
                    command.SetParameterValue("@GiftC3SysNo", Convert.ToInt32(GiftC3SysNo));
                    command.SetParameterValue("@GroupSysNoList", grouplist);
                    onlineList = command.ExecuteEntityList <OnlineList>();
                }
            }
            return(onlineList);
        }
コード例 #12
0
        public Output GetResult(Input input)
        {
            var combinations = new List <Combination>();

            for (int i = input.Range.Min; i <= input.Range.Max; i++)
            {
                var c = GetCombinationBrutforce(input.Words, i);
                combinations.AddRange(c);
            }
            return(new Output {
                Combinations = combinations.ToListString()
            });
        }
コード例 #13
0
 public void GetSQLServerParameterValues(out List <string> oracleValues, string storeName, List <OracleParam> oracleParams, List <ModuleFieldInfo> fields)
 {
     //List<OracleParam> oracleParams = new List<OracleParam>();
     //if (ModuleInfo.ModuleType == Core.CODES.DEFMOD.MODTYPE.MAINTAINPOS) {
     //if (App.Configs.IsPOS == CONSTANTS.Yes) {
     //    oracleParams = obj.BuildOracleParamsInfo(storeName);
     //    GetSQLServerParameterValues(oracleParams);
     //}
     //else {
     //oracleParams = ModuleUtils.GetOracleParams(storeName);
     GetSQLServerParameterValues(oracleParams, fields);
     //}
     oracleValues = oracleParams.ToListString();
 }
コード例 #14
0
ファイル: OnlinelistDA.cs プロジェクト: sanlonezhang/ql
        public static List <OnlineList> GetSaleHightItemForHomePage(int diffnum, Domain domainItem
                                                                    , List <int> itemSysNolist, List <int> groupSysNoList)
        {
            DataCommand       command    = null;
            List <OnlineList> onlineList = null;
            string            grouplist  = string.Empty;

            if (groupSysNoList != null)
            {
                grouplist = groupSysNoList.ToListString();
            }

            if (diffnum > 0)
            {
                if (itemSysNolist != null && itemSysNolist.Count > 0)
                {
                    if (groupSysNoList != null && groupSysNoList.Count > 0)
                    {
                        command = DataCommandManager.GetDataCommand("GetSaleHightItemForHomePageByGroup");
                        command.SetParameterValue("@GroupSysNoList", grouplist);
                    }
                    else
                    {
                        command = DataCommandManager.GetDataCommand("GetSaleHightItemForHomePage");
                    }
                    command.SetParameterValue("@ItemSysnolist", itemSysNolist.ToListString());
                }
                else
                {
                    if (groupSysNoList != null && groupSysNoList.Count > 0)
                    {
                        command = DataCommandManager.GetDataCommand("GetSaleHightItemForHomePageNoHistoryByGroup");
                        command.SetParameterValue("@GroupSysNoList", grouplist);
                    }
                    else
                    {
                        command = DataCommandManager.GetDataCommand("GetSaleHightItemForHomePageNoHistory");
                    }
                }
                //      DateTime day = DateTime.Now;
                command.SetParameterValue("@Num", diffnum);
                command.SetParameterValue("@C1List", domainItem.C1List);
                command.SetParameterValue("@ExceptC3List", domainItem.ExceptC3List);
                command.SetParameterValue("@GiftC3SysNo", Convert.ToInt32(GiftC3SysNo));
                command.SetParameterValue("@CompanyCode", CompanyCode);
                onlineList = command.ExecuteEntityList <OnlineList>();
            }
            return(onlineList);
        }
コード例 #15
0
        /// <summary>
        /// 字典转文字列[最后带有分隔符]
        /// </summary>
        /// <param name="Dic"></param>
        /// <returns></returns>
        public static string FromStringDictionary(this Dictionary <string, string> Dic)
        {
            string        Rtn = string.Empty;
            List <string> t   = new List <string>();

            if (t.Count != 0)
            {
                foreach (var item in Dic)
                {
                    t.Add(item.Key + strSplitKeyValueMark + item.Value);
                }
                Rtn = t.ToListString() + strSplitArrayMark;
            }
            return(Rtn);
        }
コード例 #16
0
ファイル: SelectUtility.cs プロジェクト: JulioCL/HearthStone
 /// <summary>
 /// 获得对象选择列表
 /// </summary>
 /// <param name="game"></param>
 /// <returns></returns>
 public static string GetTargetListString(ActionStatus game)
 {
     List<string> Target = new List<string>();
     if (game.AllRole.MyPublicInfo.Hero.能否成为动作对象) Target.Add(CardUtility.strMe + CardUtility.strSplitMark + BattleFieldInfo.HeroPos);
     for (int i = 0; i < game.AllRole.MyPublicInfo.BattleField.MinionCount; i++)
     {
         if (game.AllRole.MyPublicInfo.BattleField.BattleMinions[i].能否成为动作对象) Target.Add(CardUtility.strMe + CardUtility.strSplitMark + (i + 1).ToString("D1"));
     }
     if (game.AllRole.YourPublicInfo.Hero.能否成为动作对象) Target.Add(CardUtility.strYou + CardUtility.strSplitMark + BattleFieldInfo.HeroPos);
     for (int i = 0; i < game.AllRole.YourPublicInfo.BattleField.MinionCount; i++)
     {
         if (game.AllRole.YourPublicInfo.BattleField.BattleMinions[i].能否成为动作对象) Target.Add(CardUtility.strYou + CardUtility.strSplitMark + (i + 1).ToString("D1"));
     }
     return Target.ToListString();
 }
コード例 #17
0
        public void Init()
        {
            var all = GetAll();

            if (all != null && all.Count > 0)
            {
                mData = new Dictionary <string, SystemItem>(all.Count);
                foreach (var item in all)
                {
                    mData[item.ConfigKey] = item;
                }

                // 校验配置,并设置值
                var properties = SystemConfig.GetType().GetProperties();
                if (properties == null || properties.Length == 0)
                {
                    return;
                }

                List <String> errorList = new List <String>();
                foreach (var p in properties)
                {
                    if (mData.ContainsKey(p.Name) == false)
                    {
                        errorList.Add($"SystemConfig中的{p.Name}值未配置.");
                        continue;
                    }

                    try
                    {
                        object v = Convert.ChangeType(mData[p.Name].ConfigValue, p.PropertyType);
                        p.SetValue(mData, v, null);
                    }
                    catch (Exception ex)
                    {
                        errorList.Add($"SystemConfig转换出错 configKey:{p.Name} ex:{ex.ToString()}");
                    }
                }
                if (errorList.Count > 0)
                {
                    Logger.WriteErrorLog(errorList.ToListString(';'));
                }
            }
            else
            {
                mData = new Dictionary <string, SystemItem>();
            }
        }
コード例 #18
0
ファイル: OnlinelistDA.cs プロジェクト: sanlonezhang/ql
        public static List <OnlineList> GetSaleHightItem(int num, int categorySysNo
                                                         , List <int> ItemSysnolist, List <int> groupSysNoList)
        {
            List <OnlineList> onlineList = null;
            DataCommand       command    = null;
            string            grouplist  = string.Empty;

            if (groupSysNoList != null)
            {
                grouplist = groupSysNoList.ToListString();
            }
            if (num > 0)
            {
                if (ItemSysnolist != null && ItemSysnolist.Count > 0)
                {
                    if (groupSysNoList != null && groupSysNoList.Count > 0)
                    {
                        command = DataCommandManager.GetDataCommand("GetSaleHightItemByGroup");
                        command.SetParameterValue("@GroupSysNoList", grouplist);
                    }
                    else
                    {
                        command = DataCommandManager.GetDataCommand("GetSaleHightItem");
                    }
                    command.SetParameterValue("@ItemSysnolist", ItemSysnolist.ToListString());
                }
                else
                {
                    if (groupSysNoList != null && groupSysNoList.Count > 0)
                    {
                        command = DataCommandManager.GetDataCommand("GetSaleHightItemNoHistoryByGroup");
                        command.SetParameterValue("@GroupSysNoList", grouplist);
                    }
                    else
                    {
                        command = DataCommandManager.GetDataCommand("GetSaleHightItemNoHistory");
                    }
                }
                command.SetParameterValue("@Num", num);
                command.SetParameterValue("@CompanyCode", CompanyCode);
                command.SetParameterValue("@CategorySysNo", categorySysNo);
                command.SetParameterValue("@GiftC3SysNo", GiftC3SysNo);
                onlineList = command.ExecuteEntityList <OnlineList>();
            }
            return(onlineList);
        }
コード例 #19
0
        public void TestAttribute()
        {
            string templates =
                "t(x) ::= << <x> >>" + Environment.NewLine;

            writeFile(tmpdir, "t.stg", templates);
            TemplateGroup group = new TemplateGroupFile(Path.Combine(tmpdir, "t.stg"));

            group.Debug = true;
            DebugTemplate      st       = (DebugTemplate)group.GetInstanceOf("t");
            List <InterpEvent> events   = st.GetEvents();
            string             expected =
                "[EvalExprEvent{self=t(x), output=[0..0), expr=<x>}," +
                " EvalExprEvent{self=t(x), output=[0..1), expr= }," +
                " EvalTemplateEvent{self=t(x), output=[0..1)}]";
            string result = events.ToListString();

            Assert.AreEqual(expected, result);
        }
コード例 #20
0
        /// <summary>
        /// 是否HIT对方奥秘
        /// </summary>
        /// <param name="IsFirst">是否为先手</param>
        /// <returns></returns>
        public string SecretHitCheck(string Action, bool IsFirst, ActionStatus gameStatus)
        {
            //奥秘判断 注意:这个动作并不改变FirstSecret和SecondSecret
            //1.例如,发生战斗的时候,如果两个随从都死了,
            //同时两边都有随从死亡的奥秘,则整个动作序列可能触发两边的奥秘
            //<本方奥秘在客户端判断>注意方向
            //2.服务器端只做判断,并且返回命中奥秘的列表,不做任何其他操作!
            List <string> HITCardList = new List <string>();

            foreach (var actionDetail in Action.Split(CardUtility.strSplitArrayMark.ToCharArray()))
            {
                //检查Second
                if (IsFirst && gameStatus.AllRole.YourPrivateInfo.奥秘列表.Count != 0)
                {
                    for (int i = 0; i < gameStatus.AllRole.YourPrivateInfo.奥秘列表.Count; i++)
                    {
                        if (IsSecretHit(gameStatus.AllRole.YourPrivateInfo.奥秘列表[i].序列号, actionDetail, false))
                        {
                            HITCardList.Add(gameStatus.AllRole.YourPrivateInfo.奥秘列表[i] + CardUtility.strSplitDiffMark + actionDetail);
                        }
                    }
                }
                //检查First
                if ((!IsFirst) && gameStatus.AllRole.MyPrivateInfo.奥秘列表.Count != 0)
                {
                    for (int i = 0; i < gameStatus.AllRole.MyPrivateInfo.奥秘列表.Count; i++)
                    {
                        if (IsSecretHit(gameStatus.AllRole.MyPrivateInfo.奥秘列表[i].序列号, actionDetail, false))
                        {
                            HITCardList.Add(gameStatus.AllRole.MyPrivateInfo.奥秘列表[i] + CardUtility.strSplitDiffMark + actionDetail);
                        }
                    }
                }
            }
            return(HITCardList.ToListString());
        }
コード例 #21
0
        public void TestTemplateCall()
        {
            string templates =
                "t(x) ::= <<[<u()>]>>\n" +
                "u() ::= << <x> >>\n";

            writeFile(tmpdir, "t.stg", templates);
            TemplateGroup group = new TemplateGroupFile(Path.Combine(tmpdir, "t.stg"));

            group.Debug = true;
            DebugTemplate      st       = (DebugTemplate)group.GetInstanceOf("t");
            List <InterpEvent> events   = st.GetEvents();
            string             expected =
                "[EvalExprEvent{self=t(x), output=[0..1), expr=[}," +
                " EvalExprEvent{self=u(), output=[1..1), expr=<x>}," +
                " EvalExprEvent{self=u(), output=[1..2), expr= }," +
                " EvalTemplateEvent{self=u(), output=[1..2)}," +
                " EvalExprEvent{self=t(x), output=[1..2), expr=<u()>}," +
                " EvalExprEvent{self=t(x), output=[2..3), expr=]}," +
                " EvalTemplateEvent{self=t(x), output=[0..3)}]";
            string result = events.ToListString();

            Assert.AreEqual(expected, result);
        }
コード例 #22
0
ファイル: SecretCard.cs プロジェクト: JulioCL/HearthStone
 /// <summary>
 /// 是否HIT对方奥秘
 /// </summary>
 /// <param name="IsFirst">是否为先手</param>
 /// <returns></returns>
 public string SecretHitCheck(string Action, bool IsFirst, ActionStatus gameStatus)
 {
     //奥秘判断 注意:这个动作并不改变FirstSecret和SecondSecret
     //1.例如,发生战斗的时候,如果两个随从都死了,
     //同时两边都有随从死亡的奥秘,则整个动作序列可能触发两边的奥秘
     //<本方奥秘在客户端判断>注意方向
     //2.服务器端只做判断,并且返回命中奥秘的列表,不做任何其他操作!
     List<string> HITCardList = new List<string>();
     foreach (var actionDetail in Action.Split(CardUtility.strSplitArrayMark.ToCharArray()))
     {
         //检查Second
         if (IsFirst && gameStatus.AllRole.YourPrivateInfo.奥秘列表.Count != 0)
         {
             for (int i = 0; i < gameStatus.AllRole.YourPrivateInfo.奥秘列表.Count; i++)
             {
                 if (IsSecretHit(gameStatus.AllRole.YourPrivateInfo.奥秘列表[i].序列号, actionDetail, false))
                 {
                     HITCardList.Add(gameStatus.AllRole.YourPrivateInfo.奥秘列表[i] + CardUtility.strSplitDiffMark + actionDetail);
                 }
             }
         }
         //检查First
         if ((!IsFirst) && gameStatus.AllRole.MyPrivateInfo.奥秘列表.Count != 0)
         {
             for (int i = 0; i < gameStatus.AllRole.MyPrivateInfo.奥秘列表.Count; i++)
             {
                 if (IsSecretHit(gameStatus.AllRole.MyPrivateInfo.奥秘列表[i].序列号, actionDetail, false))
                 {
                     HITCardList.Add(gameStatus.AllRole.MyPrivateInfo.奥秘列表[i] + CardUtility.strSplitDiffMark + actionDetail);
                 }
             }
         }
     }
     return HITCardList.ToListString();
 }
コード例 #23
0
 public override string ToString()
 {
     return("Player " + Player + " discards " + cards.ToListString());
 }
コード例 #24
0
ファイル: RoomData.cs プロジェクト: zj831007/SGF
 public override string ToString()
 {
     return(string.Format("<id:{0}, name:{1}, owner:{2}, players:{3}>", id, name, owner, players.ToListString()));
 }