Example #1
0
        public static EnemiesCreator MoveTowardsTarget(this EnemiesCreator enemiesCreator, GameObject target)
        {
            var moveTowardsTarget = enemiesCreator.Enemy.GetOrAddComponent <MoveTowardsTarget>();

            moveTowardsTarget.Target = target;

            return(enemiesCreator);
        }
Example #2
0
        public static EnemiesCreator WithRandomPosition(this EnemiesCreator enemiesCreator)
        {
            var playerPosition = enemiesCreator.Player.transform.position;

            var minX = Camera.main.ViewportToWorldPoint(new Vector3(Camera.main.rect.xMin, 0, Camera.main.transform.position.z)).x;
            var maxX = Camera.main.ViewportToWorldPoint(new Vector3(Camera.main.rect.xMax, 0, Camera.main.transform.position.z)).x;

            var enemyBounds = GetEnemyRectBounds(playerPosition.x, minX, maxX, GetPlayerWidth(enemiesCreator.Player));


            enemiesCreator.Enemy.transform.position = new Vector3()
            {
                x = Random.Range(enemyBounds.xMin, enemyBounds.xMax),
                y = 0
            };

            return(enemiesCreator);
        }
Example #3
0
        public static EnemiesCreator Activate(this EnemiesCreator enemiesCreator)
        {
            enemiesCreator.Enemy.SetActive(true);

            return(enemiesCreator);
        }
Example #4
0
        public static EnemiesCreator SetPosition(this EnemiesCreator enemiesCreator, Vector2 position)
        {
            enemiesCreator.Enemy.transform.position = position;

            return(enemiesCreator);
        }