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


C# Action.Run方法代码示例

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


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

示例1: RunAction

        private IEnumerator RunAction(Action action)
        {
            if (useParameters)
            {
                action.AssignValues (parameters);
            }
            else
            {
                action.AssignValues (null);
            }

            if (isSkipping)
            {
                action.Skip ();
            }
            else
            {
                if (action is ActionRunActionList)
                {
                    ActionRunActionList actionRunActionList = (ActionRunActionList) action;
                    actionRunActionList.isSkippable = IsSkippable ();
                }

                action.isRunning = false;
                float waitTime = action.Run ();

                if (action is ActionParallel)
                {}
                else if (waitTime != 0f)
                {
                    while (action.isRunning)
                    {
                        if (this is RuntimeActionList && actionListType == ActionListType.PauseGameplay && !unfreezePauseMenus)
                        {
                            float endTime = Time.realtimeSinceStartup + waitTime;
                            while (Time.realtimeSinceStartup < endTime)
                            {
                                yield return null;
                            }
                        }
                        else
                        {
                            yield return new WaitForSeconds (waitTime);
                        }

                        if (!action.isRunning)
                        {
                            // In rare cases (once an actionlist is reset) isRunning may be false but this while loop will still run
                            ResetList ();
                            break;
                        }
                        waitTime = action.Run ();
                    }
                }
            }

            if (action is ActionParallel)
            {
                EndActionParallel ((ActionParallel) action);
            }
            else
            {
                EndAction (action);
            }
        }
开发者ID:mcbodge,项目名称:eidolon,代码行数:65,代码来源:ActionList.cs

示例2: RunAction

		private IEnumerator RunAction (Action action)
		{
			if (useParameters)
			{
				action.AssignValues (parameters);
			}
			else
			{
				action.AssignValues (null);
			}
			
			if (isSkipping)
			{
				action.Skip ();
			}
			else
			{
				action.isRunning = false;
				float waitTime = action.Run ();	
				if (action is ActionCheck || action is ActionCheckMultiple)
				{
					yield return new WaitForFixedUpdate ();
				}
				else if (waitTime > 0f)
				{
					while (action.isRunning)
					{
						if (this is RuntimeActionList && actionListType == ActionListType.PauseGameplay && !unfreezePauseMenus)
						{
							float endTime = Time.realtimeSinceStartup + waitTime;
							while (Time.realtimeSinceStartup < endTime)
							{
								yield return null;
							}
						}
						else
						{
							yield return new WaitForSeconds (waitTime);
						}

						waitTime = action.Run ();
					}
				}
			}

			EndAction (action);
		}
开发者ID:amutnick,项目名称:CrackTheCode_Repo,代码行数:47,代码来源:ActionList.cs

示例3: Accept

 private void Accept(Action action)
 {
     if (running.Contains(action)) return;
        // Debug.Log("Accept: " + action.name);
     if (queue.Contains(action)) queue.Remove(action);
     running.Add(action);
     action.Restart();
     action.Run();
 }
开发者ID:xCosmix,项目名称:Game,代码行数:9,代码来源:Action.cs

示例4: Deliver

 private void Deliver(Action action)
 {
     if (queue.Contains(action)) return;
     //Debug.Log("Deliver: " + action.name);
     if (running.Contains(action)) running.Remove(action);
     queue.Add(action);
     action.Queue();
     action.Run();
 }
开发者ID:xCosmix,项目名称:Game,代码行数:9,代码来源:Action.cs

示例5: PerformAction

    IEnumerator PerformAction(Battler user, ActionType ActionType, Action action, int actionIndex, Battler target, IList<Battler> allCharacters, IList<Battler> allEnemies)
    {
        switch (ActionType)
        {
            case ActionType.Attack:
                yield return user.BattleBehavior.StandardAttack(user, target);
                break;

            case ActionType.Special:
                action.UseSP(user);
                yield return action.Run(user, target, allCharacters, allEnemies, this);
                break;

            case ActionType.Item:
                user.Inventory[actionIndex].RemoveFromInventory(user);
                user.Inventory[actionIndex].Use(user, target);
                break;

            case ActionType.Defend:
                Shield shield = Shields[user.BattlerIndex];
                user.BattleBehavior.Defending = true;
                shield.StartCoroutine(shield.Enter());
                break;
        }
    }
开发者ID:jrand35,项目名称:AmazingRPG,代码行数:25,代码来源:BattleController.cs


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