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; } } } }
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; } }
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; } } }