void Awake()
    {
        startPoint = transform.position;
        moveAmount = movePoints.Length;
        shootPoint = transform.FindChild("shootPoint");

        //initialize array
        //get all shooting points child
        for (int i = 0; i < transform.childCount; ++i)
        {
            if(transform.GetChild(i).CompareTag("shootPoint") == true)
            {
                shootPointsAmt += 1;
            }
        }
        shootPoints = new Transform[shootPointsAmt];
        for (int i = 0; i < shootPointsAmt; ++i)
        {
            if(transform.GetChild(i).CompareTag("shootPoint") == true)
            {
                shootPoints[i] = transform.GetChild(i);
            }
        }

        longBulletPooler = GameObject.Find("LongBulletPooler");
        roundBulletPooler = GameObject.Find("RoundBulletPooler");
        player = GameObject.FindGameObjectWithTag("Player");
        attackCommand = this.GetComponent<patternList> ();
    }
    void OnEnable()
    {
        attackController = GetComponent<patternList> ();
        attackController.attack (0);

        //reposition
        transform.position = transform.parent.position + new Vector3 (0, 1.7f, 0);
        //currAnimator.SetBool ("start", true);
    }
    // Use this for initialization
    void Start()
    {
        cloneArray = new GameObject[3];

        currState = state.state_move;

        //get current position to rotate around before entering formation
        currX = this.transform.position.x;
        currY = this.transform.position.y;
        originalPos = transform.position;

        clonePooler = transform.FindChild("ClonePooler");
        bossBulletList = this.GetComponent<patternList> ();
    }
    // Use this for initialization
    void Start()
    {
        speed = 4;

        initialPos = transform.position;

        playerObj = GameObject.Find("player").transform;

        bossGeneral = GetComponent<EnemyGeneralBehaviour> ();
        attackControl = GetComponent<patternList> ();
        getPlayer = playerObj.GetComponent<PlayerController> ();
        GetComponent<bossHealthbar> ().setBossHp ();
        secretbossController = this.GetComponent<Animator> ();

        getLevel = GameObject.Find("LevelLoader").GetComponent<LevelLoader> ();

        bossState = state.state_idle;

        foreach (Transform child in transform) {
            switch (child.name) {
            case "minionParent" :
                minionParent = child.gameObject;
                break;
            case "iceChunkParent" :
                iceChunkParent = child.gameObject;
                break;
            case "lsdTurretParent" :
                lsdTurretParent = child.gameObject;
                break;
            case "ecsCloneParent" :
                ecsCloneParent = child.gameObject;
                break;
            case "iceAnim" :
                iceAnim = child.gameObject;
                break;
            case "aoeAnim" :
                homingAnim = child.gameObject;
                break;
            case "defaultAnim" :
                defaultAnim = child.gameObject;
                break;
            }
        }
    }
 // Use this for initialization
 void Start()
 {
     //cloneShooter = GetComponent<spawner>();
     clonePatternList = this.GetComponent<patternList> ();
 }
    void Start()
    {
        inhState = state.state_idle;

        /*foreach (Transform child in transform) {
            if(child.name == "(L)ConjoinedMinion")
                LeftMinion = child;

            if(child.name == "(R)ConjoinedMinion")
                RightMinion = child;
        }*/

        LeftMinion = transform.FindChild ("(L)ConjoinedMinion");
        RightMinion = transform.FindChild ("(R)ConjoinedMinion");

        inhController = GetComponent<Animator>();
        inhPatternList = GetComponent<patternList> ();
        inhHealth = this.GetComponent<EnemyGeneralBehaviour> ();

        GetComponent<bossHealthbar> ().setBossHp ();
    }
    // Use this for initialization
    void Start()
    {
        this.name = "LSD_Boss";

        lsdState = state.state_idle;
        initPos = transform.position;

        lsdController = GetComponent<Animator> ();
        lsdAttackControl = GetComponent<patternList> ();

        GetComponent<bossHealthbar> ().setBossHp ();
    }
    // Use this for initialization
    void Start()
    {
        //minionPrefab = new GameObject[3];
        maxWave = 3;
        speed = 3;

        //for(int i=0; i< minionPattern.Length; i++) {
        //	minionPattern[i].transform.position = new Vector3 (0, 2, 1);
        //}
        minionInitPos = new Vector3 (0, 2, 0);
        retractPos = new Vector3 (transform.position.x, 6, 0);
        initPos = transform.position;

        ecsState = state.state_idle;
        ecsRef = this.GetComponent<EnemyGeneralBehaviour> ();
        ecsController = GetComponent<Animator>();
        ecsAttackControl = GetComponent <patternList> ();

        GetComponent<bossHealthbar> ().setBossHp ();
    }