void Update()
    {
        for (int i = 0; i < go.Length; i++)
        {
            if (go[i].GetComponent <EnemyDetection>().possessBall == true && i != flagActive)
            {
                PlayerDetection = go[i].transform.GetChild(2).gameObject;
                possessScript   = PlayerDetection.GetComponent <BallPossesion>();
                active          = go[i];
                flagActive      = i;
            }
        }

        if (flag == 1)
        {
            gameOverTimer -= Time.deltaTime;
        }
        if (gameOverTimer <= 0f && active.GetComponent <EnemyDetection>().possessBall == false)
        {
            GameOver();
        }
        if (gameOverTimer <= 0.3f && gameOverTimer > 0f && active.GetComponent <EnemyDetection>().possessBall == true)
        {
            gameOverTimer = 0.8f;
            flag          = 0;
        }
    }
    void OnCollisionEnter(Collision other)
    {
        GameObject parent = other.gameObject;

        //  Debug.Log(this.name);
        // Debug.Log(child.name);
        if (parent.gameObject.tag == strings.Player || parent.gameObject.tag == strings.PlayerGoal)
        {
            playersFront.Add(parent.gameObject);

            proximityPlayerDetection = other.gameObject.transform.GetChild(2).gameObject;
            proximityPossessScript   = proximityPlayerDetection.GetComponent <BallPossesion>();

            proximityPossessScript.playersBack.Add(transform.parent.gameObject);
        }
    }
Beispiel #3
0
  public void OnEndDrag(PointerEventData eventData)
  {
      Vector3 dragVectorDirection = (eventData.position - eventData.pressPosition).normalized;

      for (int i = 0; i < go.Length; i++)
      {
          PlayerDetection            = go[i].transform.GetChild(2).gameObject;
          possessScript              = PlayerDetection.GetComponent <BallPossesion>();
          possessScript.swipeDir     = GetDragDirection(dragVectorDirection);
          possessScript.swipeDirBack = GetDragDirectionBack(dragVectorDirection);
          if (possessScript.goalFlag == 1 && possessScript.enemyScript.possessBall == true)
          {
              possessScript.swipeDirGoal = dragVectorDirection;
          }
      }
  }
    void FixedUpdate()
    {
        transform.position = new Vector3(transform.position.x, Mathf.Clamp(transform.position.x, 0.0f, 0.05f), transform.position.z);
        if (isActive == false)
        {
            this.gameObject.SetActive(false);
        }
        if (over == 1)
        {
            enemyAnim.SetBool("isRunning", false);
        }


        if (gameOverDisplay.activeSelf == true || levelCompleteDis.activeSelf == true)
        {
            over = 1;
        }

        for (int i = 0; i < go.Length; i++)
        {
            if (go[i].GetComponent <EnemyDetection>().possessBall == true && i != flagActive)
            {
                enemyDetectionScript = go[i].GetComponent <EnemyDetection>();
                PlayerDetection      = go[i].transform.GetChild(2).gameObject;
                possessScript        = PlayerDetection.GetComponent <BallPossesion>();
                active     = go[i];
                flagActive = i;
            }
        }

        if (enemyKickFlag == 0 && over == 0 && activeScript.activeBehaviour == 1)
        {
            enemyAnim.SetBool("isRunning", true);
            transform.LookAt(ball.transform);
            transform.Translate(Vector3.forward * enemySpeed * Time.deltaTime);
        }
    }
Beispiel #5
0
 void Start()
 {
     possessScript = GetComponentInChildren <BallPossesion>();
     ball          = GameObject.FindWithTag(strings.Ball);
     rbBall        = ball.GetComponent <Rigidbody>();
 }