Esempio n. 1
0
 public RingleaderAttack GetRingleaderAttack()
 {
     if (this.ringleaderAttack == null)
     {
         this.ringleaderAttack = GetComponent <RingleaderAttack>();
     }
     return(this.ringleaderAttack);
 }
Esempio n. 2
0
    protected override void Init()
    {
        currentGambit             = null;
        currentRingleaderMovement = null;
        currentRingleaderHealth   = null;
        player = null;
//		playerAttack = null;
//		playerMovement = null;
        foreach (EnemyHealth ringleader in ringleaders)
        {
            ringleader.gameObject.GetComponent <RingleaderAttack> ().enabled   = false;
            ringleader.gameObject.GetComponent <RingleaderMovement> ().canMove = false;
            ringleader.gameObject.GetComponent <EnemyHealth> ().enabled        = false;
        }

        base.Init();
    }
Esempio n. 3
0
    private IEnumerator Gambit(int i)
    {
        //Insert dialogue here or whatever

        //1st dialogue: Why do you resist me when we're the same?
        //2nd dialogue: You fool! This is our way of life!
        //3rd dialogue: Very well! Its either win or lose!

//		switch (i) {
//		case 1:
//			StartCoroutine (InitialEncounter ());
//
//			break;
//		case 2:
//			StartCoroutine (MidfightDialogue ());
//
//			break;
//		case 3:
//			StartCoroutine (ConclusiveDialogue ());
//
//			break;
//		}
        if (i > 1)
        {
            gambits [i - 2].SetActive(false);
        }

        gambits [i - 1].SetActive(true);

        if (i == 2 || i == 3)
        {
//			playerMovement.GetPlayer().gameObject.transform.position = spawnPoint.position;
            GetPlayer().gameObject.transform.position = spawnPoint.position;
        }


//		playerAttack.canAttack (true);
        //		playerMovement.canMove (true);


//		if (i > 1) {
//			gambits [i - 2].SetActive (false);
//		}
//
//		gambits [i-1].SetActive (true);

        switch (i)
        {
        case 1:
            StartCoroutine(InitialEncounter());
            break;

        case 2:
//			if (ringleaders [1] != null) {
//				ringleaders [1].Death ();
//			}
            StartCoroutine(MidfightDialogue());
            break;

        case 3:
//			if (ringleaders [2] != null) {
//				ringleaders [2].Death ();
//			}
            StartCoroutine(ConclusiveDialogue());
            break;
        }
        while (isInDialogue)
        {
            yield return(null);
        }
        GetPlayer().GetPlayerAttack().canAttack(true);
        GetPlayer().GetPlayerMovement().canMove(true);
        ToggleMobileUI(true);



        ringleaders [i - 1].gameObject.SetActive(true);

        currentGambit             = ringleaders [i - 1].GetComponent <RingleaderAttack> ();
        currentRingleaderMovement = ringleaders [i - 1].GetComponent <RingleaderMovement> ();
        currentRingleaderHealth   = ringleaders [i - 1].GetComponent <EnemyHealth> ();

        currentRingleaderMovement.canMove = true;
        currentRingleaderHealth.enabled   = true;
        currentGambit.enabled             = true;


        while (ringleaders [i - 1].isAlive)
        {
            yield return(null);
        }
        if (ringleaders [i - 1] != null)
        {
            ringleaders [i - 1].CallDeath(0);
        }

//		while (ringleaders [i-1] != null) {
//			yield return null;
//		}

        if (i < gambits.Count)
        {
            StartCoroutine(Gambit(++i));
        }
        else
        {
            StartCoroutine(RingleaderDeath());
        }
    }