//------------------------------------------------------------------------------
// 
//     This code was generated by Entitas.CodeGeneration.Plugins.ComponentEntityApiGenerator.
//
//     Changes to this file may cause incorrect behavior and will be lost if
//     the code is regenerated.
// 
//------------------------------------------------------------------------------
public partial class GameEntity
{
    public ComboComponent combo { get { return (ComboComponent)GetComponent(GameComponentsLookup.Combo); } }
    public bool hasCombo { get { return HasComponent(GameComponentsLookup.Combo); } }
    public void AddCombo(System.Collections.Generic.List newWeaponList, Game.MetaData newWeaponNow, System.Collections.Generic.Dictionary, string> newSkillDict, System.Collections.Generic.Dictionary newSkillAnyDict, System.Collections.Generic.HashSet newSkillSet, Game.EComboStance newStance, Game.EComboStance newPreStance, System.Collections.Generic.List newInputQueue, float newTriggerCancelSafeTime, System.Collections.Generic.HashSet newKeyPressSet, Game.EMoveCommand newMoveCommand, bool newIsJumpCancelable, bool newIsGroundCancelable, bool newIsSkillCancelable, int newTargetLock, System.Collections.Generic.Dictionary newTargetLastLockTime, Game.MetaData newTargetInteract)
    {
        var index = GameComponentsLookup.Combo;
        var component = (ComboComponent)CreateComponent(index, typeof(ComboComponent));
        component.WeaponList = newWeaponList;
        component.WeaponNow = newWeaponNow;
        component.Stance = newStance;
        component.PreStance = newPreStance;
        component.InputQueue = newInputQueue;
        component.TriggerCancelSafeTime = newTriggerCancelSafeTime;
        component.KeyPressSet = newKeyPressSet;
        component.MoveCommand = newMoveCommand;
        component.IsJumpCancelable = newIsJumpCancelable;
        component.IsGroundCancelable = newIsGroundCancelable;
        component.IsSkillCancelable = newIsSkillCancelable;
        component.TargetLock = newTargetLock;
        component.TargetLastLockTime = newTargetLastLockTime;
        component.TargetInteract = newTargetInteract;
        AddComponent(index, component);
    }
    public void ReplaceCombo(System.Collections.Generic.List newWeaponList, Game.MetaData newWeaponNow, System.Collections.Generic.Dictionary, string> newSkillDict, System.Collections.Generic.Dictionary newSkillAnyDict, System.Collections.Generic.HashSet newSkillSet, Game.EComboStance newStance, Game.EComboStance newPreStance, System.Collections.Generic.List newInputQueue, float newTriggerCancelSafeTime, System.Collections.Generic.HashSet newKeyPressSet, Game.EMoveCommand newMoveCommand, bool newIsJumpCancelable, bool newIsGroundCancelable, bool newIsSkillCancelable, int newTargetLock, System.Collections.Generic.Dictionary newTargetLastLockTime, Game.MetaData newTargetInteract)
    {
        var index = GameComponentsLookup.Combo;
        var component = (ComboComponent)CreateComponent(index, typeof(ComboComponent));
        component.WeaponList = newWeaponList;
        component.WeaponNow = newWeaponNow;
        component.Stance = newStance;
        component.PreStance = newPreStance;
        component.InputQueue = newInputQueue;
        component.TriggerCancelSafeTime = newTriggerCancelSafeTime;
        component.KeyPressSet = newKeyPressSet;
        component.MoveCommand = newMoveCommand;
        component.IsJumpCancelable = newIsJumpCancelable;
        component.IsGroundCancelable = newIsGroundCancelable;
        component.IsSkillCancelable = newIsSkillCancelable;
        component.TargetLock = newTargetLock;
        component.TargetLastLockTime = newTargetLastLockTime;
        component.TargetInteract = newTargetInteract;
        ReplaceComponent(index, component);
    }
    public void RemoveCombo()
    {
        RemoveComponent(GameComponentsLookup.Combo);
    }
}
//------------------------------------------------------------------------------
// 
//     This code was generated by Entitas.CodeGeneration.Plugins.ComponentMatcherApiGenerator.
//
//     Changes to this file may cause incorrect behavior and will be lost if
//     the code is regenerated.
// 
//------------------------------------------------------------------------------
public sealed partial class GameMatcher
{
    static Entitas.IMatcher _matcherCombo;
    public static Entitas.IMatcher Combo
    {
        get
        {
            if (_matcherCombo == null)
            {
                var matcher = (Entitas.Matcher)Entitas.Matcher.AllOf(GameComponentsLookup.Combo);
                matcher.componentNames = GameComponentsLookup.componentNames;
                _matcherCombo = matcher;
            }
            return _matcherCombo;
        }
    }
}