コード例 #1
0
 public RunCommand(DTE2 app, AddIn addin, RunAction runAction)
 {
     Name       = "SSMScripterRun";
     _app       = app;
     _addin     = addin;
     _runAction = runAction;
 }
コード例 #2
0
ファイル: StyleParser.cs プロジェクト: veboys/UIForia
        private RunNode ParseRunNode(RunCommandType cmdType, RunAction runAction)
        {
            StyleToken  runCommandToken = tokenStream.Current;
            CommandNode command;

            if (AdvanceIfTokenType(StyleTokenType.Animation))
            {
                command = StyleASTNodeFactory.AnimationCommandNode(ParseIdentifierInParentheses(), cmdType, runAction);
            }
            else if (AdvanceIfTokenType(StyleTokenType.Sound))
            {
                command = StyleASTNodeFactory.SoundCommandNode(ParseIdentifierInParentheses(), cmdType, runAction);
            }
            else
            {
                throw new ParseException(runCommandToken,
                                         $"Only animation and sound run commands are supported. Found {runCommandToken}");
            }

            command.WithLocation(tokenStream.Current);
            AssertTokenTypeAndAdvance(StyleTokenType.EndStatement);

            RunNode runNode = StyleASTNodeFactory.RunNode(command);

            runNode.WithLocation(runCommandToken);
            return(runNode);
        }
コード例 #3
0
 private TimeSpan addLinePrAction(RunAction action, TimeSpan total, StringBuilder builder)
 {
     var state = action.Succeeded ? "succeeded" : "failed";
     var project = Path.GetFileName(action.Project);
     var timeSpent = action.TimeSpent;
     return addLineByType(action, total, timeSpent, builder, state, project);
 }
コード例 #4
0
ファイル: RunGenerator.cs プロジェクト: yungtau/oea
 protected void Generate(RunAction op)
 {
     this.AddRun(new ActionMigrationRun
     {
         Action = op.Action
     });
 }
コード例 #5
0
ファイル: FileConnect.cs プロジェクト: PDC-PChan/Test
        public static RunAction generateAction(DateTime NasdaqDate, DateTime RecordDate)
        {
            RunAction action = RunAction.Unchange;

            if (NasdaqDate < DateTime.Today)
            {
                if (Math.Abs((RecordDate - NasdaqDate).Days) < NControl.separateDay ||
                    RecordDate < NasdaqDate)
                {
                    action = RunAction.ReRun;
                }
            }
            else
            {
                if ((NasdaqDate - RecordDate).Days > NControl.separateDay)
                {
                    action = RunAction.ReRun;
                }
                else
                {
                    if (NasdaqDate != RecordDate)
                    {
                        action = RunAction.Move;
                    }
                }
            }

            return(action);
        }
コード例 #6
0
    public void getGoal(GameObject gameobject)
    {
        currentAction.destory = true;

        currentAction = RunAction.GetRunAction(gameobject.transform, runSpeed, ani);
        this.runAction(this.gameObject, currentAction, this);
    }
コード例 #7
0
        private TimeSpan addLinePrAction(RunAction action, TimeSpan total, StringBuilder builder)
        {
            var state     = action.Succeeded ? "succeeded" : "failed";
            var project   = Path.GetFileName(action.Project);
            var timeSpent = action.TimeSpent;

            return(addLineByType(action, total, timeSpent, builder, state, project));
        }
コード例 #8
0
 public void FollowAction(GameObject gameobject)
 {
     currentAction.destroy = true;
     // 销毁当前动作
     currentAction = RunAction.GetRunAction(gameobject.transform, runSpeed, ani);
     this.runAction(this.gameObject, currentAction, this);
     // 跑向目标方向
 }
コード例 #9
0
ファイル: Actions.cs プロジェクト: LynnZiQi/Unity3d-HW
    public static RunAction GetRunAction(Transform target, float speed, Animator ani)
    {
        RunAction currentAction = ScriptableObject.CreateInstance <RunAction>();

        currentAction.speed  = speed;
        currentAction.target = target;
        currentAction.ani    = ani;
        return(currentAction);
    }
コード例 #10
0
ファイル: InvoiceService.cs プロジェクト: kevin-bernard/pos
        private static void ReloadInvoiceNumbersFrom(int fromNo, RunAction callbackProgress)
        {
            var progress = new RunActionProgress()
            {
                Cursor = 0, NbData = 5, Message = "Reset invoice numbering"
            };

            callbackProgress?.Invoke(progress);

            DBManager.ExecuteQuery("TRUNCATE TABLE artrantmp");

            DBManager.ExecuteQuery(string.Format("DBCC CHECKIDENT (artrantmp, RESEED, {0})", (fromNo)));

            DBManager.ExecuteQuery(string.Format("INSERT INTO artrantmp(invno) SELECT -invno from arcash WHERE invno >={0} GROUP BY -invno order by MAX(invdate)", fromNo));
            progress.Cursor = 1;
            callbackProgress?.Invoke(progress);

            DBManager.ExecuteQuery("update ar SET ar.invno=(-ar.invno) FROM artran ar where invno in (select (invno * -1) FROM artrantmp)");
            DBManager.ExecuteQuery("update ar SET ar.invno=artrantmp.id from artran ar inner join artrantmp on ar.invno=artrantmp.invno");
            progress.Cursor = 2;
            callbackProgress?.Invoke(progress);

            DBManager.ExecuteQuery("update ar SET ar.invno=-ar.invno FROM arcash ar where invno in (select (invno * - 1) FROM artrantmp)");
            DBManager.ExecuteQuery("update ar SET ar.invno=artrantmp.id,  ponum='Payment on invoice ' + CAST(artrantmp.id AS VARCHAR), octn='R' + CAST(artrantmp.id AS VARCHAR), applyto='l' + CAST(artrantmp.id AS VARCHAR), ar.receiptno=(artrantmp.id + 1) from arcash ar inner join artrantmp on ar.invno=artrantmp.invno");
            progress.Cursor = 3;
            callbackProgress?.Invoke(progress);

            DBManager.ExecuteQuery("update ic SET ic.docno=-ic.docno FROM ictran ic WHERE docno IN (SELECT (artrantmp.invno * -1) FROM artrantmp)");
            DBManager.ExecuteQuery("update ic SET ic.docno=artrantmp.id, reference='Invoice ' + CAST(artrantmp.id AS VARCHAR) from ictran ic inner join artrantmp on ic.docno=artrantmp.invno WHERE ic.trantype='l'");

            progress.Cursor = 4;
            callbackProgress?.Invoke(progress);

            DBManager.ExecuteQuery("update ar SET ar.invno=-ar.invno from armaster ar WHERE ar.invno IN(SELECT (artrantmp.invno * -1) FROM artrantmp)");
            DBManager.ExecuteQuery("update ar SET ar.invno=artrantmp.id, octn='l' + CAST(artrantmp.id AS VARCHAR) from armaster ar inner join artrantmp on ar.invno=artrantmp.invno");

            int    total = 0;
            double ca    = 0;

            DBManager.RunQueryResults("SELECT MAX(invno) total FROM artran", (SqlDataReader reader) =>
            {
                int.TryParse(reader["total"].ToString(), out total);
            });

            DBManager.RunQueryResults("SELECT (CASE WHEN SUM(paidamt) IS NOT NULL THEN SUM(paidamt) ELSE 0 END) + (select MAX(startamt) from arshiftclose) ca FROM arcash;", (SqlDataReader r) =>
            {
                double.TryParse(r["ca"].ToString(), out ca);
            });

            //DBManager.ExecuteQuery(string.Format("update arshiftclose SET invcount={0}, totalvoucher={0}, totalamt={1};", total, ca));
            DBManager.ExecuteQuery(string.Format("update sysdata SET int1={0}, int2={1}, int3={1} WHERE sysid='AR';", total, total + 1));
            DBManager.ExecuteQuery(string.Format("update sysdata SET int1={0} WHERE sysid='GL';", total + 1));

            progress.Cursor = 5;
            callbackProgress?.Invoke(progress);
        }
コード例 #11
0
        /// <summary>
        /// 获得一个动作
        /// </summary>
        /// <param name="gameStatus"></param>
        /// <returns></returns>
        public static void GetAction(ActionStatus gameStatus)
        {
            String        Action       = String.Empty;
            PublicInfo    PlayInfo     = gameStatus.AllRole.MyPublicInfo;
            PrivateInfo   PlaySelfInfo = gameStatus.AllRole.MyPrivateInfo;
            List <String> Result       = new List <string>();

            //优先使用技能
            if (PlayInfo.IsHeroSkillEnable(true))
            {
                //召唤
                if (PlayInfo.Hero.HeroSkill.FirstAbilityDefine.MainAbilityDefine.TrueAtomicEffect.AtomicEffectType ==
                    Effect.AtomicEffectDefine.AtomicEffectEnum.召唤 &&
                    PlayInfo.BattleField.MinionCount != SystemManager.MaxMinionCount)
                {
                    gameStatus.Interrupt.ActionCard = new MinimizeBattleInfo.HandCardInfo();
                    gameStatus.Interrupt.ActionCard.Init(PlayInfo.Hero.HeroSkill);
                    gameStatus.ActionName                = "USEHEROSKILL";
                    gameStatus.Interrupt.Step            = 1;
                    gameStatus.Interrupt.ActionName      = "SPELL";
                    PlayInfo.crystal.CurrentRemainPoint -= PlayInfo.Hero.HeroSkill.使用成本;
                    PlayInfo.Hero.IsUsedHeroAbility      = true;
                    RunAction.StartActionCS(gameStatus, PlayInfo.Hero.HeroSkill.序列号, new string[] { });
                    gameStatus.Interrupt.ActionName = "SPELL";
                    return;
                }
            }
            //能上场的随从都上场
            int HandCardIndex = HasBattleMinion(gameStatus);

            if (HandCardIndex != -1)
            {
                int newPos = PlayInfo.BattleField.MinionCount + 1;
                var card   = PlaySelfInfo.handCards[HandCardIndex];
                RunAction.StartActionCS(gameStatus, card.序列号, new string[] { newPos.ToString() });
                PlayInfo.crystal.CurrentRemainPoint -= card.使用成本;
                PlaySelfInfo.RemoveUsedCard(card.序列号);
                PlayInfo.HandCardCount          = PlaySelfInfo.handCards.Count;
                gameStatus.Interrupt.ActionCard = new MinimizeBattleInfo.HandCardInfo();
                gameStatus.Interrupt.ActionCard.Init(card);
                gameStatus.Interrupt.ActionName = "MINION";
                return;
            }
            //能攻击的随从都攻击,优先攻击英雄
            int AttackPos = HasAttackMinion(gameStatus);

            if (AttackPos != -1)
            {
                int BeAttackedPos = GetAttackTarget(gameStatus);
                RunAction.Fight(gameStatus, AttackPos, BeAttackedPos, true);
                gameStatus.Interrupt.ActionName   = "FIGHT";
                gameStatus.Interrupt.ExternalInfo = AttackPos.ToString() + BeAttackedPos.ToString();
                return;
            }
            gameStatus.Interrupt.ActionName = ActionCode.strEndTurn;
        }
コード例 #12
0
        /// <summary>
        /// 攻击
        /// </summary>
        /// <param name="MyPos"></param>
        private void Fight(int MyPos)
        {
            var           YourPos   = SelectPanel(CardUtility.TargetSelectDirectEnum.对方, CardUtility.TargetSelectRoleEnum.所有角色, true);
            List <String> actionlst = RunAction.Fight(game, MyPos, YourPos.Postion);

            actionlst.AddRange(game.奥秘计算(actionlst));
            game.MySelf.ResetHandCardCost();
            Card.Client.ClientRequest.WriteAction(game.GameId.ToString(GameServer.GameIdFormat), actionlst);
            DisplayMyInfo();
        }
コード例 #13
0
        public static void Display()
        {
            RunAction run = new RunAction();

            run.Move();
            run.Run();

            SwimAction swim = new SwimAction();

            swim.Move();
        }
コード例 #14
0
    IEnumerator InitActions()
    {
        yield return(new WaitForSeconds(0.01f));

        IdleInitAction = new IdleAction(this, "Idle", NV, mr, colliders, Ani);
        AttackAction   = new NormalAttack(this, new string[] { "劈砍1", "劈砍3" }, 0.44f, NV, Ani);
        BackAction     = new TakeBack(this, "", NV, transform);
        InjuredAction  = new InjuredAction(this, "GetHit", 1, NV, Ani);
        RunAction      = new RunAction(this, "Run", NV, Ani);
        DieAction      = new DieAction(this, "Die", mr, NV, transform, colliders, Ani, 0.2f);
    }
コード例 #15
0
        private void addTestLine(RunAction action, TimeSpan timeSpent, StringBuilder builder, string state, string project)
        {
            var assembly = Path.GetFileName(action.Assembly);

            builder.AppendLine(string.Format("Test run for assembly {1} ({2}) {0} ({3},{4} sec)",
                                             state,
                                             assembly,
                                             project,
                                             timeSpent.Seconds.ToString(),
                                             timeSpent.Milliseconds.ToString()));
        }
コード例 #16
0
 private TimeSpan addTestLine(RunAction action, TimeSpan total, TimeSpan timeSpent, StringBuilder builder, string state, string project)
 {
     total = total.Add(timeSpent);
     var assembly = Path.GetFileName(action.Assembly);
     builder.AppendLine(string.Format("Test run for assembly {1} ({2}) {0} ({3},{4} sec)",
                                      state,
                                      assembly,
                                      project,
                                      timeSpent.Seconds.ToString(),
                                      timeSpent.Milliseconds.ToString()));
     return total;
 }
コード例 #17
0
        public static void doDone(RunAction actionObject)
        {
            var actor = SceneViews.instance.getCurFBScene().getActor(actionObject.objectID);

            if (actor.animator != null)
            {
                //Debuger.LogError(actionObject.physicalFrameNumber + "   ActorAnimatorState.Run " + processor.cache.ToString());
                actor.animator.SetInteger("state", (int)ActorAnimatorState.Run);
                actor.resetAnimtorSpeed();
                actor.hideRunEffect();
            }
        }
コード例 #18
0
        private void addLineByType(RunAction action, TimeSpan timeSpent, StringBuilder builder, string state, string project)
        {
            switch (action.Type)
            {
            case InformationType.Build:
                addBuildLine(timeSpent, builder, state, project);
                break;

            case InformationType.TestRun:
                addTestLine(action, timeSpent, builder, state, project);
                break;
            }
        }
コード例 #19
0
 private TimeSpan addLineByType(RunAction action, TimeSpan total, TimeSpan timeSpent, StringBuilder builder, string state, string project)
 {
     switch (action.Type)
     {
         case InformationType.Build:
             total = addBuildLine(total, timeSpent, builder, state, project);
             break;
         case InformationType.TestRun:
             total = addTestLine(action, total, timeSpent, builder, state, project);
             break;
     }
     return total;
 }
コード例 #20
0
        /// <summary>
        /// 攻击
        /// </summary>
        /// <param name="MyPos"></param>
        private void Fight(int MyPos)
        {
            GameManager.MyClientManager.CurrentActiveCard = GameManager.MyClientManager.actionStatus.AllRole.MyPublicInfo.BattleField.BattleMinions[MyPos - 1];
            var           YourPos   = SelectPanel(SelectUtility.GetFightSelectOpt());
            List <string> actionlst = RunAction.Fight(GameManager.MyClientManager.actionStatus, MyPos, YourPos.位置, true);

            actionlst.AddRange(SecretCard.奥秘计算(actionlst, GameManager.MyClientManager.actionStatus, GameManager.MyClientManager.GameId));
            GameManager.MyClientManager.actionStatus.AllRole.MyPrivateInfo.ResetHandCardCost(GameManager.MyClientManager.actionStatus);
            if (SystemManager.游戏类型 != SystemManager.GameType.单机版)
            {
                ClientRequest.WriteAction(GameManager.MyClientManager.GameId.ToString(GameServer.GameIdFormat), actionlst);
            }
            DisplayMyInfo();
        }
コード例 #21
0
        /// <summary>
        /// 回合结束效果
        /// </summary>
        /// <param name="game"></param>
        /// <returns></returns>
        public List <String> 回合结束(GameManager game)
        {
            List <String> ActionCodeLst = new List <string>();

            //回合结束效果
            if (回合结束效果 != String.Empty && !Is沉默Status)
            {
                var 战吼Result = RunAction.StartAction(game, 回合结束效果);
                //第一条是使用了亡语卡牌的消息,如果不除去,对方客户端会认为使用了一张卡牌
                战吼Result.RemoveAt(0);
                ActionCodeLst.AddRange(战吼Result);
            }
            return(ActionCodeLst);
        }
コード例 #22
0
        /// <summary>
        /// 发动亡语
        /// </summary>
        /// <param name="game"></param>
        /// <returns></returns>
        public List <String> 发动亡语(GameManager game, Boolean IsNeedConvertPosDirect)
        {
            List <String> ActionCodeLst = new List <string>();

            //亡语效果
            if (亡语效果 != String.Empty && !Is沉默Status)
            {
                var 战吼Result = RunAction.StartAction(game, 亡语效果, IsNeedConvertPosDirect);
                //第一条是使用了亡语卡牌的消息,如果不除去,对方客户端会认为使用了一张卡牌
                战吼Result.RemoveAt(0);
                ActionCodeLst.AddRange(战吼Result);
            }
            return(ActionCodeLst);
        }
コード例 #23
0
        private TimeSpan addLineByType(RunAction action, TimeSpan total, TimeSpan timeSpent, StringBuilder builder, string state, string project)
        {
            switch (action.Type)
            {
            case InformationType.Build:
                total = addBuildLine(total, timeSpent, builder, state, project);
                break;

            case InformationType.TestRun:
                total = addTestLine(action, total, timeSpent, builder, state, project);
                break;
            }
            return(total);
        }
コード例 #24
0
ファイル: InvoiceService.cs プロジェクト: kevin-bernard/pos
        private static List <Artran> PrepareInvoiceNumbers(List <Artran> invoices, RunAction callbackProgress, bool rollback = true)
        {
            callbackProgress?.Invoke(new RunActionProgress()
            {
                Cursor = 0, NbData = invoices.Count, Message = "Prepare invoices"
            });

            Dictionary <string, string> numbers = new Dictionary <string, string>();

            int i          = 0,
                maxArtrand = GetMaxInvno("artrand"),
                maxArtran  = GetMaxInvno();

            int max = maxArtran > maxArtrand ? maxArtran : maxArtrand;

            Dictionary <int, int> idSwitch = new Dictionary <int, int>();

            foreach (var invoice in invoices)
            {
                int no = 0;

                if (int.TryParse(invoice.invno, out no))
                {
                    int newNo = 0;

                    if (idSwitch.ContainsKey(no))
                    {
                        newNo = idSwitch[no];
                    }
                    else
                    {
                        i++;
                        newNo = max + i;
                        idSwitch.Add(no, newNo);
                    }

                    invoice.invno = newNo.ToString();
                }
            }

            SetRemovedInvoiceNumber(idSwitch, rollback);

            callbackProgress?.Invoke(new RunActionProgress()
            {
                Cursor = i, NbData = invoices.Count, Message = "Prepare invoices"
            });

            return(invoices);
        }
コード例 #25
0
ファイル: LineSoliderAI.cs プロジェクト: GameObjectW/AINew
 public override void Awake()
 {
     base.Awake();
     IdleInitAction = new IdleAction(this, "Idle", NV, mr, colliders, Ani);
     AttackAction   = new NormalAttack(this, new string[] { "attack1", "attack2" }, 0.44f, NV, Ani);
     BackAction     = new TakeBack(this, "", NV, transform);
     InjuredAction  = new InjuredAction(this, "GetHit", 1, NV, Ani);
     RunAction      = new RunAction(this, "Run", NV, Ani);
     DieAction      = new DieAction(this, "Die", mr, NV, transform, colliders, Ani, 0.2f);
     //技能节点初始化(skill1Action是AI中需要cd和weight控制的技能,而skill1Action是根据相应的触发条件触发的)
     skill1Action = new SYSkillAction(this, "skill1", 0.7f, 0.7f, NV, 10, Ani);
     skill2Action = new JumpAction(this, "skill2", 1.4f, 3f, NV, 3, Ani, 1.65f);
     //将通过冷却和权值的技能添加到总技能列表中(所以仅将skill1Action进行CD和Weight的封装并添加,而skill2Action在update中根据条件来单独控制技能的触发)
     SkillList.Add(new SkillCDAndWeight_New(skill1Action, 10, 20));
 }
コード例 #26
0
        /// <summary>
        /// 使用手牌
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnUseHandCard_Click(object sender, EventArgs e)
        {
            CardBasicInfo UseHandCard;

            if ((sender.GetType()) == typeof(Button))
            {
                UseHandCard = (CardBasicInfo)((ctlHandCard)(((Button)sender).Parent)).Tag;
            }
            else
            {
                UseHandCard = (CardBasicInfo)(((ctlHeroAbility)sender).Tag);
            }
            GameManager.MyClientManager.CurrentActiveCard = UseHandCard;
            var msg = CardBasicInfo.CheckCondition(UseHandCard, GameManager.MyClientManager.actionStatus.AllRole.MyPublicInfo);

            if (!string.IsNullOrEmpty(msg))
            {
                MessageBox.Show(msg);
                return;
            }
            var actionlst = RunAction.StartAction(GameManager.MyClientManager.actionStatus, UseHandCard.序列号);

            if (actionlst.Count != 0)
            {
                if ((sender.GetType()) == typeof(Button))
                {
                    actionlst.Insert(0, ActionCode.strCard + CardUtility.strSplitMark + CardUtility.strMe);
                    GameManager.MyClientManager.actionStatus.AllRole.MyPublicInfo.crystal.CurrentRemainPoint -= UseHandCard.使用成本;
                    GameManager.MyClientManager.actionStatus.AllRole.MyPublicInfo.HandCardCount--;
                    GameManager.MyClientManager.actionStatus.AllRole.MyPrivateInfo.RemoveUsedCard(UseHandCard.序列号);
                }
                else
                {
                    GameManager.MyClientManager.actionStatus.AllRole.MyPublicInfo.crystal.CurrentRemainPoint -= UseHandCard.使用成本;
                    GameManager.MyClientManager.actionStatus.AllRole.MyPublicInfo.Hero.IsUsedHeroAbility      = true;
                }
                actionlst.Add(ActionCode.strCrystal + CardUtility.strSplitMark + CardUtility.strMe + CardUtility.strSplitMark +
                              GameManager.MyClientManager.actionStatus.AllRole.MyPublicInfo.crystal.CurrentRemainPoint + CardUtility.strSplitMark + GameManager.MyClientManager.actionStatus.AllRole.MyPublicInfo.crystal.CurrentFullPoint);
                //奥秘计算
                actionlst.AddRange(SecretCard.奥秘计算(actionlst, GameManager.MyClientManager.actionStatus, GameManager.MyClientManager.GameId));
                GameManager.MyClientManager.actionStatus.AllRole.MyPrivateInfo.ResetHandCardCost(GameManager.MyClientManager.actionStatus);
                if (SystemManager.游戏类型 != SystemManager.GameType.单机版)
                {
                    ClientRequest.WriteAction(GameManager.MyClientManager.GameId.ToString(GameServer.GameIdFormat), actionlst);
                }
                DisplayMyInfo();
            }
        }
コード例 #27
0
        public void Update()
        {
            if (m_IsPause) 
                return;

            
            //计算delay 时间
            if (UnityEngine.Time.realtimeSinceStartup >=m_CurRunTime + m_DelayTime+m_LastPauseTime)
            {
                if (!IsRunning)
                {
                    m_CurRunTime = UnityEngine.Time.realtimeSinceStartup;
                    m_DelayTime = 0;
                    StartAction?.Invoke();
                }

                IsRunning = true;
            }



            if (!IsRunning)
                return;

            //计算interval
            if (UnityEngine.Time.realtimeSinceStartup >= m_CurRunTime + m_Pausetime)
            {
                m_CurRunTime = UnityEngine.Time.realtimeSinceStartup + m_Interval;
                m_Pausetime = 0;


                RunAction?.Invoke(m_Loop - m_CurLoop);
                //Loop即使为0也执行一次
                if (m_Loop != -1)
                {
                    if (m_CurLoop >= m_Loop)
                    {
                        CompleteAction?.Invoke();
                        Stop();
                    }

                    m_CurLoop++;
                }

            }

        }
コード例 #28
0
ファイル: EggCode.cs プロジェクト: DangerCow/EggCode
        public static void Run(string file, RunAction runAction)
        {
            string filePath = AppDomain.CurrentDomain.BaseDirectory + file;

            if (runAction == RunAction.RunProject)
            {
                RunProject(file, filePath);
            }
            else if (runAction == RunAction.RunFile)
            {
                RunFile(file, filePath);
            }
            else if (runAction == RunAction.ConvertProjectToFile)
            {
                ProjectToFile(file, filePath);
            }
        }
コード例 #29
0
        /// <summary>
        /// 使用手牌
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnUseHandCard_Click(object sender, EventArgs e)
        {
            if (((Button)sender).Tag == null)
            {
                return;
            }
            CardBasicInfo card;

            if (((Button)sender).Name == "btnMyHeroAblity")
            {
                card = CardUtility.GetCardInfoBySN(((Button)sender).Tag.ToString());
            }
            else
            {
                card = (CardBasicInfo)((Button)sender).Tag;
            }
            var msg = game.CheckCondition(card);

            if (!String.IsNullOrEmpty(msg))
            {
                MessageBox.Show(msg);
                return;
            }
            var actionlst = RunAction.StartAction(game, card.SN);

            if (actionlst.Count != 0)
            {
                game.MySelf.RoleInfo.crystal.CurrentRemainPoint -= card.ActualCostPoint;
                if (((Button)sender).Name != "btnMyHeroAblity")
                {
                    game.RemoveUsedCard(card.SN);
                }
                else
                {
                    game.MySelf.RoleInfo.IsUsedHeroAbility = true;
                }
                actionlst.Add(ActionCode.strCrystal + CardUtility.strSplitMark + CardUtility.strMe + CardUtility.strSplitMark +
                              game.MySelf.RoleInfo.crystal.CurrentRemainPoint + CardUtility.strSplitMark + game.MySelf.RoleInfo.crystal.CurrentFullPoint);
                //奥秘计算
                actionlst.AddRange(game.奥秘计算(actionlst));
                game.MySelf.ResetHandCardCost();
                Card.Client.ClientRequest.WriteAction(game.GameId.ToString(GameServer.GameIdFormat), actionlst);
                DisplayMyInfo();
            }
        }
コード例 #30
0
        /// <summary>
        /// 回合开始效果
        /// </summary>
        /// <param name="game"></param>
        /// <returns></returns>
        public List <string> 回合开始(ActionStatus game)
        {
            List <string> ActionCodeLst = new List <string>();

            //回合开始效果
            if (回合开始效果 != string.Empty && !沉默状态)
            {
                var 回合开始Result = RunAction.StartAction(game, 回合开始效果);
                //第一条是使用了亡语卡牌的消息,如果不除去,对方客户端会认为使用了一张卡牌
                if (回合开始Result.Count > 0)
                {
                    回合开始Result.RemoveAt(0);
                }
                ActionCodeLst.AddRange(回合开始Result);
                潜行特性 = false;
            }
            return(ActionCodeLst);
        }
コード例 #31
0
        /// <summary>
        /// 发动战吼(默认)
        /// </summary>
        /// <param name="game"></param>
        /// <param name="SelfPosition"></param>
        /// <returns></returns>
        public List <String> 发动战吼(GameManager game)
        {
            List <String> ActionCodeLst = new List <string>();

            //战吼效果
            if (战吼效果 != String.Empty && !Is沉默Status)
            {
                var 战吼Result = RunAction.StartAction(game, 战吼效果);
                //第一条是使用了战吼卡牌的消息,如果不除去,对方客户端会认为使用了一张卡牌
                //如果战吼在召唤的时候无法成功,法术机能会误认为是取消
                if (战吼Result.Count > 0)
                {
                    战吼Result.RemoveAt(0);
                }
                ActionCodeLst.AddRange(战吼Result);
            }
            return(ActionCodeLst);
        }
コード例 #32
0
 public void Run(DateTime now)
 {
     if (IsStillRunning)
     {
         return;
     }
     LastRunTime = now;
     Task.Run(() =>
     {
         IsStillRunning = true;
         try
         {
             RunAction?.Invoke();
         }
         catch { }
         IsStillRunning = false;
     });
 }
コード例 #33
0
ファイル: InvoiceService.cs プロジェクト: kevin-bernard/pos
        private static int RemoveData(List <Artran> invoices, RunAction callbackProgress = null)
        {
            if (invoices.Count == 0)
            {
                return(0);
            }

            int fstNo = invoices.Min(i => i.GetInvnoToInt());

            foreach (var inv in invoices)
            {
                Console.WriteLine(inv.invno);
            }

            invoices = PrepareInvoiceNumbers(invoices, callbackProgress, false);

            var keys = string.Join(",", invoices.Select(invoice => invoice.invno));

            callbackProgress?.Invoke(new RunActionProgress()
            {
                Cursor = 0, NbData = keys.Length, Message = "Delete invoices"
            });

            if (SwitchDataFromTableToTable("artran", "artrand", keys))
            {
                SwitchDataFromTableToTable("arcash", "arcashd", keys);
                SwitchDataFromTableToTable("ictran", "ictrand", keys, "docno", new List <string>()
                {
                    "trantype='I'"
                });
                SwitchDataFromTableToTable("armaster", "armasterd", keys);
            }

            callbackProgress?.Invoke(new RunActionProgress()
            {
                Cursor = keys.Length, NbData = keys.Length, Message = "Delete invoices"
            });

            ReloadStockFromInvoices(invoices, false, callbackProgress);

            ReloadInvoiceNumbersFrom(fstNo, callbackProgress);

            return(invoices.Count);
        }
コード例 #34
0
ファイル: RunGenerator.cs プロジェクト: 569550384/Rafy
 protected void Generate(RunAction op)
 {
     this.AddRun(new ActionMigrationRun
     {
         Action = op.Action
     });
 }