Exemplo n.º 1
0
    private EnemyMeteorMovement SpawnEnemyMeteor(EnemyMeteorMovement.Path path)
    {
        var pos = path.spawnPoint.transform.position;

        pos.z = enemyMeteorPrefab.transform.position.z;
        var meteor         = Instantiate(enemyMeteorPrefab, pos, Quaternion.identity, meteorHolder.transform);
        var meteorMovement = meteor.GetComponent <EnemyMeteorMovement>();

        Debug.Assert(meteorMovement);

        meteorMovement.SetPath(path);
        var deathHandler = meteor.GetComponent <enemy_meteor>();

        deathHandler.moneyReceiver = moneyReceiver;
        return(meteorMovement);
    }
Exemplo n.º 2
0
    private EnemyMeteorMovement.Path getRandomEnemyMeteorPath(bool tutorial = false, int index = 0)
    {
        var paths = tutorial ? tutorialEnemyMeteorPaths : enemyMeteorPaths;

        Debug.Assert(paths.Count > 0);

        var random     = RandomHelper.Instance();
        var pathParams = random.GetItem(paths);

        var path = new EnemyMeteorMovement.Path();

        path.spawnPoint       = tutorial ? pathParams.spawnPoints[index] : random.GetItem(pathParams.spawnPoints);
        path.destinationPoint = tutorial ? pathParams.destinationPoints[index] : random.GetItem(pathParams.destinationPoints);

        path.speed = pathParams.speed.GetRandom();

        return(path);
    }