示例#1
0
 private void enemyMove()
 {
     if (enemycase == EnemyCase.SawTheCharacter)
     {
         transform.position += (differencesBetwEnemyAndCharacter).normalized * Time.fixedDeltaTime * 5;
     }
     else
     {
         if (enemycase == EnemyCase.FindPoint)
         {
             transform.position += (pointProduced - transform.position).normalized * Time.deltaTime * 3;
             distance            = Vector3.Distance(transform.position, rayFromPoint.point);
             if (distance < 0.5f)
             {
                 enemycase     = EnemyCase.Wait;
                 waitingRandom = Random.Range(0.2f, 2.0f);
             }
         }
         else if (enemycase == EnemyCase.Wait)
         {
             waitingTime += Time.fixedDeltaTime;
             if (waitingTime > waitingRandom)
             {
                 enemycase   = EnemyCase.CantFindPoint;
                 waitingTime = 0;
             }
         }
     }
 }
示例#2
0
    void drawRayFromPoint()
    {
        differencesBetwPointAndEnemy = (pointProduced - transform.position).normalized;

        rayFromPoint = Physics2D.Raycast(transform.position, differencesBetwPointAndEnemy, 1000, layermask);
        Debug.DrawLine(transform.position, rayFromPoint.point);
        if (rayFromPoint && rayFromPoint.collider.name == "BombacınınGidecegiYer")
        {
            enemycase = EnemyCase.FindPoint;
        }
    }
示例#3
0
    private void drawRayCharacter()
    {
        differencesBetwEnemyAndCharacter = (character.transform.position - transform.position);

        rayFromCharacter = Physics2D.Raycast(transform.position, differencesBetwEnemyAndCharacter, 1000, layermask);

        Debug.DrawLine(transform.position, rayFromCharacter.point, Color.black);
        if (rayFromCharacter && rayFromCharacter.collider.tag == "Player")
        {
            enemycase = EnemyCase.SawTheCharacter;
            sawTheCharacterControl = true;
        }
        else
        {
            if (sawTheCharacterControl)
            {
                enemycase = EnemyCase.CantFindPoint;
                sawTheCharacterControl = false;
            }
        }
    }