Esempio n. 1
0
        /// <summary>
        /// Processes this instance.
        /// </summary>
        /// <param name="dto">The dto.</param>
        /// <param name="errorMessages">The error messages.</param>
        /// <returns></returns>
        /// <exception cref="System.SystemException"></exception>
        internal virtual bool Process(IDto dto, out List <string> errorMessages)
        {
            AddSystemLogEntry("Processing...");

            ActionComponent workflowAction = this.ActionType.WorkflowAction;

            if (workflowAction == null)
            {
                throw new SystemException(string.Format("The '{0}' component does not exist, or is not active", workflowAction));
            }

            this.ActionType.LoadAttributes();

            bool success = workflowAction.Execute(this, dto, out errorMessages);

            AddSystemLogEntry(string.Format("Processing Complete (Success:{0})", success.ToString()));

            if (success)
            {
                if (this.ActionType.IsActionCompletedOnSuccess)
                {
                    this.MarkComplete();
                }

                if (this.ActionType.IsActivityCompletedOnSuccess)
                {
                    this.Activity.MarkComplete();
                }
            }

            return(success);
        }
        public ActionComponent AddAction(Type type)
        {
            var action = new ActionComponent(type);

            _components.Add(action);
            return(action);
        }
    public Action(Dictionary<string, string> actionData, List<Dictionary<string, string>> componentData)
    {
        /*
        foreach(Dictionary<string, string> data in componentData)
        {
            foreach(KeyValuePair<string, string> e in data)
            {
                Debug.Log(e.Key.ToString() + " : " + e.Value.ToString());
            }
        }
        */

        actionName = actionData["ActionName"];
        displayName = actionData["DisplayName"];
        description = actionData["Description"];
        actionGuageUsed = float.Parse(actionData["ActionGuageUsed"]);

        ActionComponent newComponent = new ActionComponent();
        foreach(Dictionary<string,string> component in componentData)
        {
            newComponent = new ActionComponent(component);
            actionComponents.Add(newComponent);
        }

        actionComponents.Sort((a, b) => a.executionOrder.CompareTo(b.executionOrder));
    }
Esempio n. 4
0
        public TypeConvertForm()
        {
            InitializeComponent();

            var actionComponentFactory = ServiceProviderContainer.Instance.Value.Services.GetRequiredService <ActionComponentFactory>();

            actionComponent = actionComponentFactory.GetActionComponent(toolStripStatusLabel);
        }
Esempio n. 5
0
 void Start()
 {
     movement  = GetComponent <CharacterMovement>();
     animator  = GetComponent <Animator>();
     currentHP = maxHP;
     action    = GetComponent <ActionComponent>();
     UnitManager.Instance.AddUnit(this);
 }
Esempio n. 6
0
    private void AddPlayer()
    {
        playerID = Game.EntityManager.CreateEntity();

        var inputBlock = new ActionComponent();

        inputBlock.InitComponent(null);
        Game.EntityManager.AddComponent(playerID, inputBlock);

        var form = new FormComponent();

        form.InitComponent(playerID, new Vector3(0, 50, 0), "Player", "");
        Game.EntityManager.AddComponent(playerID, form);

        var animComp = new AnimationComponent();

        animComp.InitComponent(null);
        Game.EntityManager.AddComponent(playerID, animComp);

        var move = new MovementComponent();

        move.InitComponent(null);
        Game.EntityManager.AddComponent(playerID, move);

        var crouch = new CrouchComponent();

        crouch.InitComponent(null);
        Game.EntityManager.AddComponent(playerID, crouch);

        var run = new RunComponent();

        run.InitComponent(null);
        Game.EntityManager.AddComponent(playerID, run);

        var jump = new JumpComponent();

        jump.InitComponent(null);
        Game.EntityManager.AddComponent(playerID, jump);

        var skill = new SkillComponent();

        skill.InitComponent(null);
        Game.EntityManager.AddComponent(playerID, skill);

        var health = new HealthComponent()
        {
            Damage = 0, DeathType = HealthComponent.DeathTypes.LifeEnded, HP_Max = 50
        };

        health.InitComponent(null);
        Game.EntityManager.AddComponent(playerID, health);

        var menuOptions = new MenuComponent();

        menuOptions.InitComponent(null);
        menuOptions.InitComponent(playerID, "Menu");
        Game.EntityManager.AddComponent(playerID, menuOptions);
    }
Esempio n. 7
0
        /// <summary>
        /// Processes this WorkflowAction.
        /// </summary>
        /// <param name="rockContext">The rock context.</param>
        /// <param name="entity">The entity that the WorkflowAction is operating against.</param>
        /// <param name="errorMessages">A <see cref="System.Collections.Generic.List{String}" /> that will contain any error messages that occur while processing the WorkflowAction.</param>
        /// <returns>
        /// A <see cref="System.Boolean" /> value that is <c>true</c> if the process completed successfully; otherwise <c>false</c>.
        /// </returns>
        /// <exception cref="System.SystemException"></exception>
        internal virtual bool Process(RockContext rockContext, Object entity, out List <string> errorMessages)
        {
            AddLogEntry("Processing...");

            var actionType = this.ActionTypeCache;

            if (actionType == null)
            {
                throw new SystemException(string.Format("ActionTypeId: {0} could not be loaded.", this.ActionTypeId));
            }

            ActionComponent workflowAction = actionType.WorkflowAction;

            if (workflowAction == null)
            {
                throw new SystemException(string.Format("The '{0}' component does not exist, or is not active", actionType.EntityType));
            }

            if (IsCriteriaValid)
            {
                bool success = workflowAction.Execute(rockContext, this, entity, out errorMessages);

                this.LastProcessedDateTime = RockDateTime.Now;

                if (errorMessages.Any())
                {
                    foreach (string errorMsg in errorMessages)
                    {
                        AddLogEntry("Error Occurred: " + errorMsg, true);
                    }
                }

                AddLogEntry(string.Format("Processing Complete (Success:{0})", success.ToString()));

                if (success)
                {
                    if (actionType.IsActionCompletedOnSuccess)
                    {
                        this.MarkComplete();
                    }

                    if (actionType.IsActivityCompletedOnSuccess)
                    {
                        this.Activity.MarkComplete();
                    }
                }

                return(success);
            }
            else
            {
                errorMessages = new List <string>();

                AddLogEntry("Criteria test failed. Action was not processed. Processing continued.");

                return(true);
            }
        }
Esempio n. 8
0
 protected override void Start()
 {
     actionComponent = GetComponent <ActionComponent>();
     unitInfo        = GetComponent <UnitInfo>();
     movement        = GetComponent <CharacterMovement>();
     ik = unitInfo.GetComponent <GenericIK>();
     unitInfo.AddDamageEvent(delegate(UnitInfo _causer, float _damage)
     {
         if (unitInfo.GetHP() <= 0)
         {
             SetState(AIState.die);
             return;
         }
         float[] roarHPs = { 75, 50, 25 };
         for (int i = 0; i < roarHPs.Length; i++)
         {
             if (unitInfo.GetLastHP() > roarHPs[i] && unitInfo.GetHP() <= roarHPs[i])
             {
                 if (unitInfo.GetCondition() >= ConditionData.UnitCondition.stuned)
                 {
                     unitInfo.GetComponent <ActionComponent>().UseSkill("WakeUp", true);
                 }
                 readyType = ActionReadyType.Roar;
                 unitInfo.RemoveCrowdControlAll();
             }
         }
     }
                             );
     unitInfo.AddStateChangeEvent(delegate(UnitInfo.UnitState _new, UnitInfo.UnitState _old)
     {
     }
                                  );
     weaknessPointObject.AddEvent(
         delegate(Transform caller)
     {
         Debug.Log(caller);
         StartCoroutine(DisappearWeakness());
         unitInfo.AddCrowdControl(ConditionData.UnitCondition.stuned, 5,
                                  delegate()
         {
             unitInfo.GetComponent <ActionComponent>().UseSkill("WakeUp", true);
             StartCoroutine(AppearWeakness(UnityEngine.Random.Range(0, weaknessPoints.Count)));
         }
                                  );
         actionComponent.StopAction();
         movement.Stop();
         movement.StopRotating();
     }
         );
     actionTarget = new GameObject(transform.name + " Action Target").transform;
     StartCoroutine(AppearWeakness(UnityEngine.Random.Range(0, weaknessPoints.Count)));
     base.Start();
     //actionTarget = pivot;
 }
Esempio n. 9
0
    private void TimedActionCompleted(int entityID, ActionComponent action)
    {
        MenuSystem.ClearOptions(entityID);

        CallOnActionCompleted = ActionCompletedEvent(action.ActionType);
        if (CallOnActionCompleted != null)
        {
            CallOnActionCompleted.Invoke(new ActionCompletedData()
            {
                ActorID = entityID, TargetID = action.TargetID, ActionType = action.ActionType
            });
        }
    }
Esempio n. 10
0
        public MainForm()
        {
            InitializeComponent();
            toolStripStatusLabel.Text = string.Empty;

            var actionComponentFactory = ServiceProviderContainer.Instance.Value.Services.GetRequiredService <ActionComponentFactory>();

            actionComponent = actionComponentFactory.GetActionComponent(toolStripStatusLabel);

            typesStaticDataCache = ServiceProviderContainer.Instance.Value.Services.GetRequiredService <ITypesStaticDataCache>();
            this.assembly        = this.GetType().Assembly;

            textBoxAssemblyPath.Text = this.assembly.Location;
        }
Esempio n. 11
0
        /// <summary>
        /// Processes this WorkflowAction.
        /// </summary>
        /// <param name="rockContext">The rock context.</param>
        /// <param name="entity">The entity that the WorkflowAction is operating against.</param>
        /// <param name="errorMessages">A <see cref="System.Collections.Generic.List{String}" /> that will contain any error messages that occur while processing the WorkflowAction.</param>
        /// <returns>
        /// A <see cref="System.Boolean" /> value that is <c>true</c> if the process completed successfully; otherwise <c>false</c>.
        /// </returns>
        /// <exception cref="System.SystemException"></exception>
        internal virtual bool Process(RockContext rockContext, Object entity, out List <string> errorMessages)
        {
            AddLogEntry("Processing...");

            ActionComponent workflowAction = this.ActionType.WorkflowAction;

            if (workflowAction == null)
            {
                throw new SystemException(string.Format("The '{0}' component does not exist, or is not active", workflowAction));
            }

            this.ActionType.LoadAttributes(rockContext);

            if (IsCriteriaValid)
            {
                bool success = workflowAction.Execute(rockContext, this, entity, out errorMessages);

                this.LastProcessedDateTime = RockDateTime.Now;

                AddLogEntry(string.Format("Processing Complete (Success:{0})", success.ToString()));

                if (success && this.ActionType != null)
                {
                    if (this.ActionType.IsActionCompletedOnSuccess)
                    {
                        this.MarkComplete();
                    }

                    if (this.ActionType.IsActivityCompletedOnSuccess)
                    {
                        this.Activity.MarkComplete();
                    }
                }

                return(success);
            }
            else
            {
                errorMessages = new List <string>();

                AddLogEntry("Criteria test failed. Action was not processed. Processing continued.");

                return(true);
            }
        }
Esempio n. 12
0
 private bool CheckResourceTypes(ActionComponent component, IResourceList selectedResources,
                                 ref string[] resTypes)
 {
     if (component.ResourceType != null)
     {
         if (resTypes == null)
         {
             resTypes = (selectedResources == null)
                 ? new string[] {}
                 : selectedResources.GetAllTypes();
         }
         if (resTypes.Length != 1 || resTypes [0] != component.ResourceType)
         {
             return(false);
         }
     }
     return(true);
 }
Esempio n. 13
0
 private static void UpdateComponentFilters(ActionComponent component, IActionContext context,
                                            ref ActionPresentation presentation, ref bool tabMatched)
 {
     if (component.Filters != null)
     {
         foreach (IActionStateFilter filter in component.Filters)
         {
             filter.Update(context, ref presentation);
             if (!presentation.Visible)
             {
                 break;
             }
             if (filter is ActiveTabFilter)
             {
                 tabMatched = true;
             }
         }
     }
 }
Esempio n. 14
0
    public Mech(Parameters inParameters)
    {
        guid  = inParameters.guid;
        owner = Program.networkManager.CurrentRoom.GetPlayer(inParameters.ownerID);

        bodyType     = new MechBodyType(inParameters.bodyTypeName);
        mobilityType = new MechMobilityType(inParameters.mobilityTypeName);
        armorType    = new MechArmorType(inParameters.armorTypeName);

        healthComponent      = new HealthComponent(this);
        utilityComponent     = new UtilityComponent(this, inParameters.equipedWeaponNames);
        movementComponent    = new MovementComponent(this, inParameters.spawnPosition);
        pathfindingComponent = new PathfindingComponent(this);
        viewComponent        = new ViewComponent(this);
        inputComponent       = new InputComponent(this);
        actionComponent      = new ActionComponent(this);
        uiComponent          = new UIComponent(this);

        OnComponentsCreated?.Invoke();
        OnComponentsInitialized?.Invoke();
    }
Esempio n. 15
0
        private void UpdateComponentPresentation(ActionComponent component, IActionContext context,
                                                 ref ActionPresentation presentation, ref string[] resTypes, ref bool tabMatched)
        {
            presentation.ResetState();

            if (!CheckResourceTypes(component, context.SelectedResources, ref resTypes))
            {
                if (resTypes != null && resTypes.Length == 0)
                {
                    // we need to get tabMatched set correctly in this case
                    UpdateComponentFilters(component, context, ref presentation, ref tabMatched);
                }
                presentation.Visible = false;
                return;
            }

            UpdateComponentFilters(component, context, ref presentation, ref tabMatched);

            if (presentation.Visible)
            {
                component.Action.Update(context, ref presentation);
            }
        }
Esempio n. 16
0
    public Effect(ActionComponent actionComponent, Character _sourceUnit, Character _targetUnit)
    {
        hitType = actionComponent.hitType;
        elementalType = actionComponent.elementalType;
        effectType = actionComponent.effectType;
        basePower = actionComponent.basePower;
        baseToHit = actionComponent.baseToHit;
        duration = actionComponent.duration;

        priPowerStat = actionComponent.priPowerStat;
        priPowerWeight = actionComponent.priPowerWeight;
        secPowerStat = actionComponent.secPowerStat;
        secPowerWeight = actionComponent.secPowerWeight;

        priResistStat = actionComponent.priResistStat;
        priResistWeight = actionComponent.priResistWeight;
        secResistStat = actionComponent.secResistStat;
        secResistWeight = actionComponent.secResistWeight;

        sourceUnit = _sourceUnit;
        targetUnit = _targetUnit;

        sourcePowerStat = GetStatPower(_sourceUnit);
    }
Esempio n. 17
0
 protected virtual void Start()
 {
     unitInfo        = transform.GetComponentInParent <UnitInfo>();
     actionComponent = unitInfo.transform.GetComponent <ActionComponent>();
     animator        = unitInfo.transform.GetComponent <Animator>();
 }
Esempio n. 18
0
        protected override void OnLoad(EventArgs e)
        {
            base.OnLoad(e);

            RockContext rockContext = new RockContext();

            Guid?  workflowGuid      = PageParameter("Workflow").AsGuidOrNull();
            Guid?  landingActionGuid = PageParameter("LandingAction").AsGuidOrNull();
            string documentId        = PageParameter("document_id");

            if (workflowGuid == null)
            {
                nbError.Text    = "Error: A valid workflow parameter is required.";
                nbError.Visible = true;
                return;
            }
            if (landingActionGuid == null)
            {
                nbError.Text    = "Error: A valid landing action parameter is required.";
                nbError.Visible = true;
                return;
            }
            if (string.IsNullOrWhiteSpace(documentId))
            {
                nbError.Text    = "Error: A valid DocumentId parameter is required.";
                nbError.Visible = true;
                return;
            }

            // Load the Workflow
            WorkflowService workflowService = new WorkflowService(rockContext);
            Workflow        workflow        = workflowService.Get(workflowGuid.Value);

            if (workflow == null)
            {
                nbError.Text    = "Error: A valid workflow parameter is required.";
                nbError.Visible = true;
                return;
            }

            workflow.LoadAttributes();

            WorkflowAction landingAction = workflow.Activities.SelectMany(a => a.Actions.Where(x => x.ActionType.Guid == landingActionGuid)).FirstOrDefault();

            if (landingAction == null)
            {
                nbError.Text    = "Error: A valid landing action parameter is required.";
                nbError.Visible = true;
                return;
            }
            landingAction.LoadAttributes();

            // Load the attributes from the landing action and then update them
            var documentIdAttribute = AttributeCache.Get(ActionComponent.GetActionAttributeValue(landingAction, "SignNowDocumentId").AsGuid(), rockContext);

            if (documentIdAttribute.EntityTypeId == new Workflow().TypeId)
            {
                workflow.SetAttributeValue(documentIdAttribute.Key, documentId);
            }
            else if (documentIdAttribute.EntityTypeId == new WorkflowActivity().TypeId)
            {
                landingAction.Activity.SetAttributeValue(documentIdAttribute.Key, documentId);
            }

            var pdfSignedAttribute = AttributeCache.Get(ActionComponent.GetActionAttributeValue(landingAction, "PDFSigned").AsGuid(), rockContext);

            if (pdfSignedAttribute.EntityTypeId == new Workflow().TypeId)
            {
                workflow.SetAttributeValue(pdfSignedAttribute.Key, "True");
            }
            else if (pdfSignedAttribute.EntityTypeId == new WorkflowActivity().TypeId)
            {
                landingAction.Activity.SetAttributeValue(documentIdAttribute.Key, "True");
            }

            workflow.SaveAttributeValues();
            landingAction.SaveAttributeValues();

            // Process the workflow
            List <string> errorMessages;
            var           output = workflowService.Process(workflow, out errorMessages);

            if (!HttpContext.Current.Response.IsRequestBeingRedirected)
            {
                // Redirect back to the workflow
                NavigateToLinkedPage("WorkflowEntryPage", new Dictionary <string, string>()
                {
                    { "WorkflowTypeId", workflow.TypeId.ToString() }, { "WorkflowGuid", workflowGuid.ToString() }
                });
            }
        }
Esempio n. 19
0
        public int findAction(ActionComponent action)
        {
            int index = 0;
            for (int i = 0; i < actionList.Length; i++)
            {
                if (action.curDirection == actionList[i].curDirection
                    && action.secondaryAction == actionList[i].secondaryAction
                    && action.primaryAction == actionList[i].primaryAction)
                {
                    break;
                }
                index++;
            }

            return index;
        }
Esempio n. 20
0
        public ActionList()
        {
            actionList = new ActionComponent [116];

            actionList [0] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Stand, PrimaryAction.None);
            actionList [1] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Stand, PrimaryAction.A);
            actionList [2] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Stand, PrimaryAction.B);
            actionList [3] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Stand, PrimaryAction.Forward_A); // same as above
            actionList [4] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Stand, PrimaryAction.Up_B);
            actionList [5] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Stand, PrimaryAction.Down_B);
            actionList [6] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Smash, PrimaryAction.Forward_A);
            actionList [7] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Smash, PrimaryAction.Up_A);
            actionList [8] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Smash, PrimaryAction.Down_A);
            actionList [9] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Jump, PrimaryAction.None);
            actionList [10] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Walk, PrimaryAction.None);
            actionList [11] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Walk, PrimaryAction.Forward_A);
            actionList [12] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Shield, PrimaryAction.None);
            actionList [13] =  new ActionComponent(DirectionalAction.Left, SecondaryAction.Shield, PrimaryAction.Roll_Left);
            actionList [14] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Shield, PrimaryAction.Roll_Right);
            actionList [15] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Flying, PrimaryAction.Right);
            actionList [16] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Flying, PrimaryAction.Left);
            actionList [17] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Hit, PrimaryAction.Above);
            actionList [18] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Hit, PrimaryAction.Below);
            actionList [19] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Hit, PrimaryAction.Front);
            actionList [20] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Hit, PrimaryAction.Behind);
            actionList [21] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Falling, PrimaryAction.Fall_Faster);
            actionList [22] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Falling, PrimaryAction.None);
            actionList [23] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Falling, PrimaryAction.Up_A);
            actionList [24] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Falling, PrimaryAction.Up_B);
            actionList [25] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Falling, PrimaryAction.Down_A);
            actionList [26] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Falling, PrimaryAction.Down_B);
            actionList [27] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Falling, PrimaryAction.Forward_A);
            //TODO  spriteComponent.animationFrameWork.Add(new CurrentActionComponent (obj, DirectionalAction.Left, SecondaryAction.Falling , PrimaryAction.Backward_A), new AnimationDirectory( , , ));
            actionList [28] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Falling, PrimaryAction.A);
            actionList [29] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Falling, PrimaryAction.B);
            actionList [30] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Second_Jump, PrimaryAction.None);
            actionList [31] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Second_Falling, PrimaryAction.Fall_Faster);
            actionList [32] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Second_Falling, PrimaryAction.None);
            actionList [33] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Second_Falling, PrimaryAction.Up_A);
            actionList [34] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Second_Falling, PrimaryAction.Up_B);
            actionList [35] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Second_Falling, PrimaryAction.Down_A);
            actionList [36] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Second_Falling, PrimaryAction.Down_B);
            actionList [37] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Second_Falling, PrimaryAction.Forward_A);
            //spriteComponent.animationFrameWork.Add(new CurrentActionComponent (obj, DirectionalAction.Left, SecondaryAction.Second_Falling , PrimaryAction.Backward_A), new AnimationDirectory( , , ));
            actionList [38] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Second_Falling, PrimaryAction.A);
            actionList [39] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Second_Falling, PrimaryAction.B);
            actionList [40] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Second_Hit, PrimaryAction.Above);
            actionList [41] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Second_Hit, PrimaryAction.Below);
            actionList [42] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Second_Hit, PrimaryAction.Front);
            actionList [43] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Second_Hit, PrimaryAction.Behind);
            actionList [44] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Second_Flying, PrimaryAction.Right);
            actionList [45] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Second_Flying, PrimaryAction.Left);

            actionList [46] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Stand, PrimaryAction.None);
            actionList [47] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Stand, PrimaryAction.A);
            actionList [48] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Stand, PrimaryAction.B);
            actionList [49] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Stand, PrimaryAction.Forward_A); // same as above
            actionList [50] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Stand, PrimaryAction.Up_B);
            actionList [51] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Stand, PrimaryAction.Down_B);
            actionList[52] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Smash, PrimaryAction.Forward_A);
            actionList [53] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Smash, PrimaryAction.Up_A);
            actionList [54] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Smash, PrimaryAction.Down_A);
            actionList [55] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Jump, PrimaryAction.None);
            actionList [56] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Walk, PrimaryAction.None);
            actionList [57] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Walk, PrimaryAction.Forward_A);
            actionList [58] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Shield, PrimaryAction.None);
            actionList [59] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Shield, PrimaryAction.Roll_Left);
            actionList [60] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Shield, PrimaryAction.Roll_Right);
            actionList [61] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Flying, PrimaryAction.Right);
            actionList [62] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Flying, PrimaryAction.Left);
            actionList [63] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Hit, PrimaryAction.Above);
            actionList [64] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Hit, PrimaryAction.Below);
            actionList [65] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Hit, PrimaryAction.Front);
            actionList [66] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Hit, PrimaryAction.Behind);
            actionList [67] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Falling, PrimaryAction.Fall_Faster);
            actionList [68] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Falling, PrimaryAction.None);
            actionList [69] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Falling, PrimaryAction.Up_A);
            actionList [70] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Falling, PrimaryAction.Up_B);
            actionList [71] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Falling, PrimaryAction.Down_A);
            actionList [72] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Falling, PrimaryAction.Down_B);
            actionList [73] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Falling, PrimaryAction.Forward_A);
            //TODO  spriteComponent.animationFrameWork.Add(new CurrentActionComponent (obj, DirectionalAction.Left, SecondaryAction.Falling , PrimaryAction.Backward_A), new AnimationDirectory( , , ));
            actionList [74] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Falling, PrimaryAction.A);
            actionList [75] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Falling, PrimaryAction.B);
            actionList [76] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Second_Jump, PrimaryAction.None);
            actionList [77] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Second_Falling, PrimaryAction.Fall_Faster);
            actionList [78] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Second_Falling, PrimaryAction.None);
            actionList [79] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Second_Falling, PrimaryAction.Up_A);
            actionList [80] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Second_Falling, PrimaryAction.Up_B);
            actionList [81] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Second_Falling, PrimaryAction.Down_A);
            actionList [82] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Second_Falling, PrimaryAction.Down_B);
            actionList [83] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Second_Falling, PrimaryAction.Forward_A);
            //spriteComponent.animationFrameWork.Add(new CurrentActionComponent (obj, DirectionalAction.Left, SecondaryAction.Second_Falling , PrimaryAction.Backward_A), new AnimationDirectory( , , ));
            actionList [84] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Second_Falling, PrimaryAction.A);
            actionList [85] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Second_Falling, PrimaryAction.B);
            actionList [86] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Second_Hit, PrimaryAction.Above);
            actionList [87] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Second_Hit, PrimaryAction.Below);
            actionList [88] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Second_Hit, PrimaryAction.Front);
            actionList [89] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Second_Hit, PrimaryAction.Behind);
            actionList [90] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Second_Flying, PrimaryAction.Right);
            actionList [91] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Second_Flying, PrimaryAction.Left);

            actionList[92] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Shield, PrimaryAction.Grab);
            actionList[93] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Shield, PrimaryAction.Grab);

            actionList[94] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Falling, PrimaryAction.Drift_Left);
            actionList[95] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Falling, PrimaryAction.Drift_Right);
            actionList[96] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Falling, PrimaryAction.Drift_Left);
            actionList[97] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Falling, PrimaryAction.Drift_Right);

            actionList[98] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Second_Falling, PrimaryAction.Drift_Left);
            actionList[99] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Second_Falling, PrimaryAction.Drift_Right);
            actionList[100] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Second_Falling, PrimaryAction.Drift_Left);
            actionList[101] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Second_Falling, PrimaryAction.Drift_Right);

            actionList[102] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Falling, PrimaryAction.Backward_A);
            actionList[103] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Falling, PrimaryAction.Backward_A);

            actionList[104] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Stand, PrimaryAction.Grab);
            actionList[105] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Stand, PrimaryAction.Grab);

            actionList[106] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Throw, PrimaryAction.Left);
            actionList[107] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Throw, PrimaryAction.Left);
            actionList[108] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Throw, PrimaryAction.Right);
            actionList[109] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Throw, PrimaryAction.Right);

            actionList[110] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Second_Falling, PrimaryAction.Backward_A);
            actionList[111] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Second_Falling, PrimaryAction.Backward_A);

            actionList[112] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Grab, PrimaryAction.None);
            actionList[113] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Grab, PrimaryAction.None);
            actionList[114] = new ActionComponent(DirectionalAction.Left, SecondaryAction.Grab, PrimaryAction.None);
            actionList[115] = new ActionComponent(DirectionalAction.Right, SecondaryAction.Grab, PrimaryAction.None);
        }