Example #1
0
    //Constructor
    public ECIdleState(GameObject _childCell, EnemyChildFSM _ecFSM)
    {
        m_Child = _childCell;
        m_ecFSM = _ecFSM;
        m_Main = m_ecFSM.m_EMain;
        m_EMTransform = m_Main.transform;

        m_fMaxMagnitude = 7.5f;
        m_fTimerLimit = 1.5f;

        m_fSpreadRange = m_Child.GetComponent<SpriteRenderer>().bounds.size.x/10;
        m_EMControl = m_Main.GetComponent<EMController>();
        m_EMBounds = m_Main.GetComponent<SpriteRenderer>().bounds;
        m_EMFSM = m_Main.GetComponent<EnemyMainFSM>();
        m_ChildRB = m_Child.GetComponent<Rigidbody2D>();
        m_MainRB = m_Main.GetComponent<Rigidbody2D>();

        m_Collisions = new Collider2D[m_EMFSM.ECList.Count];
        m_Neighbours = new List<GameObject>();

        m_ecFSM.rigidbody2D.drag = 0f;
        m_nIdleCount = 0;
        m_CurrentIdleState = IdleStatus.None;

        m_ShrinkRate = new Vector3(0.025f,-0.025f,0f);
    }
Example #2
0
    //Constructor
    public ECIdleState(GameObject _childCell, EnemyChildFSM _ecFSM)
    {
        m_Child       = _childCell;
        m_ecFSM       = _ecFSM;
        m_Main        = m_ecFSM.m_EMain;
        m_EMTransform = m_Main.transform;

        m_fMaxMagnitude = 7.5f;
        m_fTimerLimit   = 1.5f;

        m_fSpreadRange = m_Child.GetComponent <SpriteRenderer>().bounds.size.x / 10;
        m_EMControl    = m_Main.GetComponent <EMController>();
        m_EMBounds     = m_Main.GetComponent <SpriteRenderer>().bounds;
        m_EMFSM        = m_Main.GetComponent <EnemyMainFSM>();
        m_ChildRB      = m_Child.GetComponent <Rigidbody2D>();
        m_MainRB       = m_Main.GetComponent <Rigidbody2D>();

        m_Collisions = new Collider2D[m_EMFSM.ECList.Count];
        m_Neighbours = new List <GameObject>();

        m_ecFSM.rigidbody2D.drag = 0f;
        m_nIdleCount             = 0;
        m_CurrentIdleState       = IdleStatus.None;

        m_ShrinkRate = new Vector3(0.025f, -0.025f, 0f);
    }
    //constructor
    public ECTrickAttackState(GameObject _childCell, EnemyChildFSM _ecFSM)
    {
        m_Child = _childCell;
        m_ecFSM = _ecFSM;
        m_Main = m_ecFSM.m_EMain;

        m_Nodes = new GameObject[3];
        m_ShrinkRate = new Vector3(-0.225f, 0.225f, 0.0f);
        m_fMaxAcceleration = 40f;

        m_EMFSM = m_Main.GetComponent<EnemyMainFSM>();
        m_Nodes[0] = Node_Manager.GetNode(Node.LeftNode).gameObject;
        m_Nodes[1] = Node_Manager.GetNode(Node.RightNode).gameObject;
        m_SquadCaptain = PlayerSquadFSM.Instance.gameObject;

        BoxCollider2D[] Walls = GameObject.Find("Wall").GetComponents<BoxCollider2D>();
        for(int i = 0 ; i < Walls.Length; i++)
        {
            if(Walls[i].offset.y > 39f && Walls[i].offset.x > 7f)
            {
                m_RightWall = Walls[i];
            }
            else if(Walls[i].offset.y > 39f && Walls[i].offset.x < -7f)
            {
                m_LeftWall = Walls[i];
            }
        }
    }
Example #4
0
    //constructor
    public ECTrickAttackState(GameObject _childCell, EnemyChildFSM _ecFSM)
    {
        m_Child = _childCell;
        m_ecFSM = _ecFSM;
        m_Main  = m_ecFSM.m_EMain;

        m_Nodes            = new GameObject[3];
        m_ShrinkRate       = new Vector3(-0.225f, 0.225f, 0.0f);
        m_fMaxAcceleration = 40f;

        m_EMFSM        = m_Main.GetComponent <EnemyMainFSM>();
        m_Nodes[0]     = Node_Manager.GetNode(Node.LeftNode).gameObject;
        m_Nodes[1]     = Node_Manager.GetNode(Node.RightNode).gameObject;
        m_SquadCaptain = PlayerSquadFSM.Instance.gameObject;

        BoxCollider2D[] Walls = GameObject.Find("Wall").GetComponents <BoxCollider2D>();
        for (int i = 0; i < Walls.Length; i++)
        {
            if (Walls[i].offset.y > 39f && Walls[i].offset.x > 7f)
            {
                m_RightWall = Walls[i];
            }
            else if (Walls[i].offset.y > 39f && Walls[i].offset.x < -7f)
            {
                m_LeftWall = Walls[i];
            }
        }
    }
    //Constructor
    public ECAttackState(GameObject _childCell, EnemyChildFSM _ecFSM)
    {
        m_Child = _childCell;
        m_ecFSM = _ecFSM;
        m_Main = m_ecFSM.m_EMain;

        m_SquadCaptain = GameObject.Find("Squad_Captain_Cell");
        m_LeftNode = Node_Manager.GetNode(Node.LeftNode);
        m_RightNode = Node_Manager.GetNode(Node.RightNode);
    }
    //Constructor
    public ECChargeCState(GameObject _childCell, EnemyChildFSM _ecFSM)
    {
        m_ecFSM = _ecFSM;
        m_Main = m_ecFSM.m_EMain;
        m_Child = _childCell;

        m_fMaxAcceleration = 18f;
        m_TargetEndPos = Vector2.zero;
        m_ShrinkRate = new Vector3(-0.4f, 0.4f, 0.0f);
    }
Example #7
0
    //Constructor
    public ECChargeCState(GameObject _childCell, EnemyChildFSM _ecFSM)
    {
        m_ecFSM = _ecFSM;
        m_Main  = m_ecFSM.m_EMain;
        m_Child = _childCell;

        m_fMaxAcceleration = 18f;
        m_TargetEndPos     = Vector2.zero;
        m_ShrinkRate       = new Vector3(-0.4f, 0.4f, 0.0f);
    }
    //Constructor
    public ECAttackState(GameObject _childCell, EnemyChildFSM _ecFSM)
    {
        m_Child = _childCell;
        m_ecFSM = _ecFSM;
        m_Main  = m_ecFSM.m_EMain;

        m_SquadCaptain = GameObject.Find("Squad_Captain_Cell");
        m_LeftNode     = Node_Manager.GetNode(Node.LeftNode);
        m_RightNode    = Node_Manager.GetNode(Node.RightNode);
    }
    //Constructor
    public ECAvoidState(GameObject _childCell, EnemyChildFSM _ecFSM)
    {
        m_Child = _childCell;
        m_ecFSM = _ecFSM;
        m_Main  = m_ecFSM.m_EMain;

        m_fMaxAcceleration = 4f;
        m_fTimerLimit      = 1.5f;

        m_fDetectRange    = m_Child.GetComponent <SpriteRenderer>().bounds.size.x * 10;
        m_AttackersNearby = new List <GameObject>();
    }
Example #10
0
    //Constructor
    public ECAvoidState(GameObject _childCell, EnemyChildFSM _ecFSM)
    {
        m_Child = _childCell;
        m_ecFSM = _ecFSM;
        m_Main = m_ecFSM.m_EMain;

        m_fMaxAcceleration = 4f;
        m_fTimerLimit = 1.5f;

        m_fDetectRange = m_Child.GetComponent<SpriteRenderer>().bounds.size.x * 10;
        m_AttackersNearby = new List<GameObject>();
    }
    public ECChargeMState(GameObject _childCell, EnemyChildFSM _ecFSM)
    {
        m_Child = _childCell;
        m_ecFSM = _ecFSM;
        m_Main = m_ecFSM.m_EMain;
        m_PlayerMain = m_ecFSM.m_PMain;

        m_PathToTarget = null;
        m_CurrentTargetPoint = null;
        m_nCurrentTargetIndex = 0;

        m_fSpreadRange = m_Child.GetComponent<SpriteRenderer>().bounds.size.x * 1.75f;
        m_ShrinkRate = new Vector3(-0.4f, 0.4f, 0.0f);

        m_fMaxAcceleration = 25f;
        m_EndPos = Vector2.zero;
    }
Example #12
0
    public ECChargeMState(GameObject _childCell, EnemyChildFSM _ecFSM)
    {
        m_Child      = _childCell;
        m_ecFSM      = _ecFSM;
        m_Main       = m_ecFSM.m_EMain;
        m_PlayerMain = m_ecFSM.m_PMain;

        m_PathToTarget        = null;
        m_CurrentTargetPoint  = null;
        m_nCurrentTargetIndex = 0;

        m_fSpreadRange = m_Child.GetComponent <SpriteRenderer>().bounds.size.x * 1.75f;
        m_ShrinkRate   = new Vector3(-0.4f, 0.4f, 0.0f);

        m_fMaxAcceleration = 25f;
        m_EndPos           = Vector2.zero;
    }
Example #13
0
    //Constructor
    public ECDefendState(GameObject _childCell, EnemyChildFSM _ecFSM)
    {
        m_Child = _childCell;
        m_ecFSM = _ecFSM;
        m_Main  = _ecFSM.m_EMain;

        m_ECTransform = m_Child.transform;
        m_EMTransform = m_Main.transform;

        m_fMaxFormingAcceleration = 150f;
        m_fMaxChaseAcceleration   = 500f;
        m_fAutoDefendRange        = 7f;
        m_fDefendTime             = 0f;
        m_bReturnToMain           = false;
        m_bReachedMain            = false;
        m_CurrentFormation        = Formation.Empty;
    }
    //Constructor
    public ECDefendState(GameObject _childCell, EnemyChildFSM _ecFSM)
    {
        m_Child = _childCell;
        m_ecFSM = _ecFSM;
        m_Main = _ecFSM.m_EMain;

        m_ECTransform = m_Child.transform;
        m_EMTransform = m_Main.transform;

        m_fMaxFormingAcceleration = 150f;
        m_fMaxChaseAcceleration = 500f;
        m_fAutoDefendRange = 7f;
        m_fDefendTime = 0f;
        m_bReturnToMain = false;
        m_bReachedMain = false;
        m_CurrentFormation = Formation.Empty;
    }
Example #15
0
    //Constructor
    public ECMineState(GameObject _childCell, EnemyChildFSM _ecFSM)
    {
        m_Child = _childCell;
        m_ecFSM = _ecFSM;
        m_Main  = m_ecFSM.m_EMain;

        m_ExpansionLimit = new Vector2(1.7f, 1.7f);
        m_ShrinkLimit    = new Vector2(0.8f, 0.8f);
        m_PathToTarget   = new List <Point>();
        m_Animator       = new Animate(m_Child.transform);

        m_bExpanding           = true;
        m_Target               = null;
        m_CurrentTargetPoint   = null;
        m_bExpandContractStart = false;

        m_fExpansionSpeed  = 0.1f;
        m_fMaxAcceleration = 40f;
        m_fExplosiveRange  = 4f * m_Child.GetComponent <SpriteRenderer>().bounds.size.x;
        m_fKillRange       = 0.75f * m_fExplosiveRange;

        m_CurrentPositionType = PositionType.Empty;
    }
Example #16
0
    //Constructor
    public ECMineState(GameObject _childCell, EnemyChildFSM _ecFSM)
    {
        m_Child = _childCell;
        m_ecFSM = _ecFSM;
        m_Main = m_ecFSM.m_EMain;

        m_ExpansionLimit = new Vector2(1.7f,1.7f);
        m_ShrinkLimit = new Vector2(0.8f,0.8f);
        m_PathToTarget = new List<Point>();
        m_Animator = new Animate(m_Child.transform);

        m_bExpanding = true;
        m_Target = null;
        m_CurrentTargetPoint = null;
        m_bExpandContractStart = false;

        m_fExpansionSpeed = 0.1f;
        m_fMaxAcceleration = 40f;
        m_fExplosiveRange = 4f * m_Child.GetComponent<SpriteRenderer>().bounds.size.x;
        m_fKillRange = 0.75f * m_fExplosiveRange;

        m_CurrentPositionType = PositionType.Empty;
    }
Example #17
0
 //Contructor
 public ECDeadState(GameObject _childCell, EnemyChildFSM _ecFSM)
 {
     m_Child = _childCell;
     m_ecFSM = _ecFSM;
     m_Main = m_ecFSM.m_EMain;
 }
Example #18
0
 //Contructor
 public ECDeadState(GameObject _childCell, EnemyChildFSM _ecFSM)
 {
     m_Child = _childCell;
     m_ecFSM = _ecFSM;
     m_Main  = m_ecFSM.m_EMain;
 }