//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 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]; } } }
//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); }
//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>(); }
//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; }
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; }
//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 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; }
//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; }
//Contructor public ECDeadState(GameObject _childCell, EnemyChildFSM _ecFSM) { m_Child = _childCell; m_ecFSM = _ecFSM; m_Main = m_ecFSM.m_EMain; }