Esempio n. 1
0
 void Update()
 {
     playerHpText.text = "HP: " + (playerHpImage.fillAmount * 100).ToString("F0");
     enemyHpText.text  = "HP: " + (enemyHpImage.fillAmount * 100).ToString("F0");
     if (playerHpImage.fillAmount < 0.01f)
     {
         StartCoroutine("PlayerLost");
     }
     else if (enemyHpImage.fillAmount < 0.01f)
     {
         StartCoroutine("PlayerWins");
         if (GameManager.instance.ReturnEnemyType() == 1)
         {
             enemyAttacks = GameObject.FindGameObjectWithTag("Enemy1").GetComponent <EnemyAttacks>();
             enemyAttacks.EnemyFainted();
         }
         else if (GameManager.instance.ReturnEnemyType() == 2)
         {
             enemyAttacks = GameObject.FindGameObjectWithTag("Enemy2").GetComponent <EnemyAttacks>();
             enemyAttacks.EnemyFainted();
         }
         else if (GameManager.instance.ReturnEnemyType() == 3)
         {
             enemyAttacks = GameObject.FindGameObjectWithTag("Enemy3").GetComponent <EnemyAttacks>();
             enemyAttacks.EnemyFainted();
         }
     }
 }
Esempio n. 2
0
    private void Awake()
    {
        enemyHealth  = GetComponent <EnemyHealth>();
        enemyAttacks = GetComponent <EnemyAttacks>();
        anim         = GetComponent <Animator>();

        isFearead   = false;
        canMove     = true;
        targetFound = false;
        following   = false;

        DecisionTreeDecision playersInThreatRangeDecision = new DecisionTreeDecision(PlayersInThreatRange);

        DecisionTreeAction targetMoreThreatening = new DecisionTreeAction(TargetMoreThreatening);
        DecisionTreeAction targetMoreNear        = new DecisionTreeAction(TargetMoreNear);

        playersInThreatRangeDecision.AddLink(true, targetMoreThreatening);
        playersInThreatRangeDecision.AddLink(false, targetMoreNear);
        chasingDT = new DecisionTree(playersInThreatRangeDecision);

        BehaviourTreeCondition abilityAvaible = new BehaviourTreeCondition(AbilityAvaible);

        BehaviourTreeAction useAbility     = new BehaviourTreeAction(UseAbility);
        BehaviourTreeAction useBasicAttack = new BehaviourTreeAction(UseBasicAttack);

        BehaviourTreeSequence abilitySequence = new BehaviourTreeSequence(new BehaviourTreeTask[] { abilityAvaible, useAbility });

        BehaviourTreeDecoratorUntilFail abilityDecorator     = new BehaviourTreeDecoratorUntilFail(abilitySequence);
        BehaviourTreeDecoratorUntilFail basicAttackDecorator = new BehaviourTreeDecoratorUntilFail(useBasicAttack);

        BehaviourTreeSequence           attackSequence          = new BehaviourTreeSequence(new BehaviourTreeTask[] { abilityDecorator, basicAttackDecorator });
        BehaviourTreeDecoratorUntilFail attackSequenceDecorator = new BehaviourTreeDecoratorUntilFail(attackSequence);

        attackingBT = new BehaviourTree(attackSequenceDecorator);
    }
Esempio n. 3
0
 protected override void Start()
 {
     base.Start();
     ea = GetComponent <EnemyAttacks>();
     rb = GetComponent <Rigidbody2D>();
     eaSetUp();
 }
Esempio n. 4
0
 // Start is called before the first frame update
 protected override void Start()
 {
     base.Start();
     rb = GetComponent <Rigidbody2D>();
     ea = GetComponent <EnemyAttacks>();
     eaSetUp();
     lockedMovement = false;
     lastAttackTime = -attackCooldown;
 }
Esempio n. 5
0
//}

    void Start()
    {
        playerGameObject = GameObject.FindWithTag("Player");
        playerAttacks    = playerGameObject.GetComponent <PlayerAttacks>();
        playerTransform  = playerGameObject.GetComponent <Transform>();

        enemyMove      = GetComponent <EnemyMove>();
        enemyAttacks   = GetComponent <EnemyAttacks>();
        enemyTransform = GetComponent <Transform>();
        ToggleAI       = true;
        updateState    = true;
        canAttack      = true;
        decisionRate   = 1f;
    }
 void Start()
 {
     if (GameManager.instance.ReturnEnemyType() == 1)
     {
         enemyAttacks = GameObject.FindGameObjectWithTag("Enemy1").GetComponent <EnemyAttacks>();
     }
     else if (GameManager.instance.ReturnEnemyType() == 2)
     {
         enemyAttacks = GameObject.FindGameObjectWithTag("Enemy2").GetComponent <EnemyAttacks>();
     }
     else if (GameManager.instance.ReturnEnemyType() == 3)
     {
         enemyAttacks = GameObject.FindGameObjectWithTag("Enemy3").GetComponent <EnemyAttacks>();
     }
     currentAnimalTurn = CurrentAnimalTurn.PlayerSelection;
     StartCoroutine("TimeDelayAtStartOfBattle");
     foreach (Canvas canvas in allCanvas)
     {
         canvas.gameObject.SetActive(false);
     }
 }
Esempio n. 7
0
 void Start()
 {
     enemyAttacks = FindObjectOfType <EnemyAttacks>();
     setUp();
 }
Esempio n. 8
0
 // Start is called before the first frame update
 void Start()
 {
     isPlayerFound = false;
     ea            = this.transform.GetComponent <EnemyAttacks>();
     StartCoroutine(Attack());
 }
Esempio n. 9
0
 private void Awake()
 {
     parentController = transform.parent.GetComponent <EnemyAttacks>();
     animator         = gameObject.GetComponent <Animator>();
     spriteRenderer   = gameObject.GetComponent <SpriteRenderer>();
 }
 // Start is called before the first frame update
 void Start()
 {
     ea         = this.transform.GetComponent <EnemyAttacks>();
     seenPlayer = false;
     StartCoroutine(Attack());
 }